feat(web): classify and route complete Blender inventory
This commit is contained in:
@@ -34,3 +34,65 @@ export interface BlenderOperatorInvocation {
|
||||
properties?: Record<string, BlenderOperatorPropertyValue>;
|
||||
baseRevision?: number;
|
||||
}
|
||||
|
||||
export type BlenderFeatureRoute = "WEB_MAIN" | "SERVER_NATIVE" | "BROWSER_EQUIVALENT" | "UNAVAILABLE";
|
||||
|
||||
export interface BlenderFeatureRouteLocation {
|
||||
path: string;
|
||||
line?: number;
|
||||
evidence?: string;
|
||||
}
|
||||
|
||||
/** Source-unit route metadata used by the F3 feature palette. */
|
||||
export interface BlenderFeatureRouteEntry {
|
||||
id: string;
|
||||
kind: string;
|
||||
identifier: string;
|
||||
family: string;
|
||||
route: BlenderFeatureRoute;
|
||||
reason: string;
|
||||
label?: string;
|
||||
description?: string;
|
||||
properties?: BlenderOperatorPropertySpec[];
|
||||
locations?: BlenderFeatureRouteLocation[];
|
||||
}
|
||||
|
||||
export interface BlenderFeatureRouteInvocation {
|
||||
route: BlenderFeatureRouteEntry;
|
||||
properties?: Record<string, BlenderOperatorPropertyValue>;
|
||||
baseRevision?: number;
|
||||
}
|
||||
|
||||
/** SERVER_NATIVE jobs deliberately carry only typed scalar operator properties. */
|
||||
export const BLENDER_OPERATOR_BACKGROUND_CONTEXT = "BACKGROUND" as const;
|
||||
|
||||
export type BlenderMacroStepKind = "MAIN_COMMAND" | "SERVER_NATIVE" | "CONTEXT_DEPENDENT";
|
||||
|
||||
export interface BlenderMacroStep {
|
||||
id: string;
|
||||
kind: BlenderMacroStepKind;
|
||||
context: "MAIN" | "BACKGROUND" | "UI";
|
||||
operator?: string;
|
||||
command?: Record<string, unknown>;
|
||||
source: BlenderFeatureRouteLocation[];
|
||||
}
|
||||
|
||||
/** A bounded, source-backed native plan assembled from Blender operator units. */
|
||||
export interface BlenderMacroDescriptor {
|
||||
id: string;
|
||||
label: string;
|
||||
description?: string;
|
||||
family: string;
|
||||
route: BlenderFeatureRoute;
|
||||
contextDependent: boolean;
|
||||
source: BlenderFeatureRouteLocation[];
|
||||
steps: BlenderMacroStep[];
|
||||
properties?: BlenderOperatorPropertySpec[];
|
||||
}
|
||||
|
||||
export interface BlenderMacroInvocation {
|
||||
macro: string;
|
||||
properties?: Record<string, BlenderOperatorPropertyValue>;
|
||||
baseRevision?: number;
|
||||
serverJob?: Record<string, unknown>;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user