@snaptrude/plugin-core 0.2.6 → 0.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -37,6 +37,71 @@ __export(index_exports, {
37
37
  PQuat: () => PQuat,
38
38
  PUnitType: () => PUnitType,
39
39
  PVec3: () => PVec3,
40
+ PluginAIInspirationAppliedPreset: () => PluginAIInspirationAppliedPreset,
41
+ PluginAIInspirationCancelJobResult: () => PluginAIInspirationCancelJobResult,
42
+ PluginAIInspirationDebugSummary: () => PluginAIInspirationDebugSummary,
43
+ PluginAIInspirationDeleteRecipeArgs: () => PluginAIInspirationDeleteRecipeArgs,
44
+ PluginAIInspirationDeleteRecipeResult: () => PluginAIInspirationDeleteRecipeResult,
45
+ PluginAIInspirationExtractRecipeFromShapeArgs: () => PluginAIInspirationExtractRecipeFromShapeArgs,
46
+ PluginAIInspirationExtractionResult: () => PluginAIInspirationExtractionResult,
47
+ PluginAIInspirationGenerateArgs: () => PluginAIInspirationGenerateArgs,
48
+ PluginAIInspirationGenerationInputSnapshot: () => PluginAIInspirationGenerationInputSnapshot,
49
+ PluginAIInspirationGetJobResult: () => PluginAIInspirationGetJobResult,
50
+ PluginAIInspirationGetModelCapabilitiesArgs: () => PluginAIInspirationGetModelCapabilitiesArgs,
51
+ PluginAIInspirationGetModelCapabilitiesResult: () => PluginAIInspirationGetModelCapabilitiesResult,
52
+ PluginAIInspirationGetPresetCatalogResult: () => PluginAIInspirationGetPresetCatalogResult,
53
+ PluginAIInspirationGetSelectionResult: () => PluginAIInspirationGetSelectionResult,
54
+ PluginAIInspirationGetWorkflowForShapeArgs: () => PluginAIInspirationGetWorkflowForShapeArgs,
55
+ PluginAIInspirationGetWorkflowForShapeResult: () => PluginAIInspirationGetWorkflowForShapeResult,
56
+ PluginAIInspirationJob: () => PluginAIInspirationJob,
57
+ PluginAIInspirationJobArgs: () => PluginAIInspirationJobArgs,
58
+ PluginAIInspirationJobProgress: () => PluginAIInspirationJobProgress,
59
+ PluginAIInspirationJobStatus: () => PluginAIInspirationJobStatus,
60
+ PluginAIInspirationListJobsResult: () => PluginAIInspirationListJobsResult,
61
+ PluginAIInspirationListModelsResult: () => PluginAIInspirationListModelsResult,
62
+ PluginAIInspirationListRecipesResult: () => PluginAIInspirationListRecipesResult,
63
+ PluginAIInspirationListSourcesArgs: () => PluginAIInspirationListSourcesArgs,
64
+ PluginAIInspirationListSourcesResult: () => PluginAIInspirationListSourcesResult,
65
+ PluginAIInspirationModel: () => PluginAIInspirationModel,
66
+ PluginAIInspirationModelCapability: () => PluginAIInspirationModelCapability,
67
+ PluginAIInspirationModelOutput: () => PluginAIInspirationModelOutput,
68
+ PluginAIInspirationOutput: () => PluginAIInspirationOutput,
69
+ PluginAIInspirationOutputKind: () => PluginAIInspirationOutputKind,
70
+ PluginAIInspirationPoint: () => PluginAIInspirationPoint,
71
+ PluginAIInspirationPreset: () => PluginAIInspirationPreset,
72
+ PluginAIInspirationPresetCategory: () => PluginAIInspirationPresetCategory,
73
+ PluginAIInspirationPresetReferenceImage: () => PluginAIInspirationPresetReferenceImage,
74
+ PluginAIInspirationPromptStrategy: () => PluginAIInspirationPromptStrategy,
75
+ PluginAIInspirationRecipe: () => PluginAIInspirationRecipe,
76
+ PluginAIInspirationRecipeDraft: () => PluginAIInspirationRecipeDraft,
77
+ PluginAIInspirationRecipeSlot: () => PluginAIInspirationRecipeSlot,
78
+ PluginAIInspirationRecipeStep: () => PluginAIInspirationRecipeStep,
79
+ PluginAIInspirationRefineArgs: () => PluginAIInspirationRefineArgs,
80
+ PluginAIInspirationRegionHint: () => PluginAIInspirationRegionHint,
81
+ PluginAIInspirationRerunPlanResult: () => PluginAIInspirationRerunPlanResult,
82
+ PluginAIInspirationRerunSelectedBranchArgs: () => PluginAIInspirationRerunSelectedBranchArgs,
83
+ PluginAIInspirationRunMetadata: () => PluginAIInspirationRunMetadata,
84
+ PluginAIInspirationRunMode: () => PluginAIInspirationRunMode,
85
+ PluginAIInspirationRunRecipeArgs: () => PluginAIInspirationRunRecipeArgs,
86
+ PluginAIInspirationRunResult: () => PluginAIInspirationRunResult,
87
+ PluginAIInspirationRuntimeProvider: () => PluginAIInspirationRuntimeProvider,
88
+ PluginAIInspirationSaveRecipeArgs: () => PluginAIInspirationSaveRecipeArgs,
89
+ PluginAIInspirationSaveRecipeResult: () => PluginAIInspirationSaveRecipeResult,
90
+ PluginAIInspirationShapeKind: () => PluginAIInspirationShapeKind,
91
+ PluginAIInspirationShapeRef: () => PluginAIInspirationShapeRef,
92
+ PluginAIInspirationSiteOptions: () => PluginAIInspirationSiteOptions,
93
+ PluginAIInspirationSketchGuidance: () => PluginAIInspirationSketchGuidance,
94
+ PluginAIInspirationTextAnnotation: () => PluginAIInspirationTextAnnotation,
95
+ PluginAIInspirationVideoDuration: () => PluginAIInspirationVideoDuration,
96
+ PluginAIInspirationVideoMode: () => PluginAIInspirationVideoMode,
97
+ PluginAIInspirationVideoMotion: () => PluginAIInspirationVideoMotion,
98
+ PluginAIInspirationVideoOptions: () => PluginAIInspirationVideoOptions,
99
+ PluginAIInspirationWorkflow: () => PluginAIInspirationWorkflow,
100
+ PluginAIInspirationWorkflowEdge: () => PluginAIInspirationWorkflowEdge,
101
+ PluginAIInspirationWorkflowNode: () => PluginAIInspirationWorkflowNode,
102
+ PluginAIInspirationWorkflowOperation: () => PluginAIInspirationWorkflowOperation,
103
+ PluginAIInspirationWorkflowRunState: () => PluginAIInspirationWorkflowRunState,
104
+ PluginAIInspirationWorkflowVideoConfig: () => PluginAIInspirationWorkflowVideoConfig,
40
105
  PluginApi: () => PluginApi,
41
106
  PluginArcApi: () => PluginArcApi,
42
107
  PluginBuildableEnvelopeApi: () => PluginBuildableEnvelopeApi,
@@ -58,6 +123,8 @@ __export(index_exports, {
58
123
  PluginDepartmentEntry: () => PluginDepartmentEntry,
59
124
  PluginDepartmentGetAllResult: () => PluginDepartmentGetAllResult,
60
125
  PluginDepartmentId: () => PluginDepartmentId,
126
+ PluginDocumentationAIInspirationApi: () => PluginDocumentationAIInspirationApi,
127
+ PluginDocumentationApi: () => PluginDocumentationApi,
61
128
  PluginEntityApi: () => PluginEntityApi,
62
129
  PluginGeomApi: () => PluginGeomApi,
63
130
  PluginLineApi: () => PluginLineApi,
@@ -143,8 +210,8 @@ var PluginVec3Api = class {
143
210
  * // { x: 1, y: 2, z: 3 }
144
211
  * ```
145
212
  */
146
- new(x, y, z17) {
147
- return { x, y, z: z17 };
213
+ new(x, y, z18) {
214
+ return { x, y, z: z18 };
148
215
  }
149
216
  /**
150
217
  * Add two vectors component-wise.
@@ -322,8 +389,8 @@ var PluginQuatApi = class {
322
389
  * @param w - The W (scalar) component
323
390
  * @returns A new {@linkcode PQuat}
324
391
  */
325
- new(x, y, z17, w) {
326
- return { x, y, z: z17, w };
392
+ new(x, y, z18, w) {
393
+ return { x, y, z: z18, w };
327
394
  }
328
395
  /**
329
396
  * Create an identity quaternion representing no rotation.
@@ -367,13 +434,13 @@ var PluginQuatApi = class {
367
434
  * @param z - Rotation around Z axis in **radians**
368
435
  * @returns A new {@linkcode PQuat}
369
436
  */
370
- fromEuler(x, y, z17) {
437
+ fromEuler(x, y, z18) {
371
438
  const cx = Math.cos(x / 2);
372
439
  const sx = Math.sin(x / 2);
373
440
  const cy = Math.cos(y / 2);
374
441
  const sy = Math.sin(y / 2);
375
- const cz = Math.cos(z17 / 2);
376
- const sz = Math.sin(z17 / 2);
442
+ const cz = Math.cos(z18 / 2);
443
+ const sz = Math.sin(z18 / 2);
377
444
  return {
378
445
  x: sx * cy * cz + cx * sy * sz,
379
446
  y: cx * sy * cz - sx * cy * sz,
@@ -704,38 +771,478 @@ var PluginCoreApi = class {
704
771
  }
705
772
  };
706
773
 
707
- // src/api/entity/buildableEnvelope.ts
774
+ // src/api/documentation/aiInspiration.ts
708
775
  var z7 = __toESM(require("zod"), 1);
776
+ var JsonPrimitive = z7.union([z7.string(), z7.number(), z7.boolean(), z7.null()]);
777
+ var JsonValue = z7.lazy(
778
+ () => z7.union([JsonPrimitive, z7.array(JsonValue), z7.record(z7.string(), JsonValue)])
779
+ );
780
+ var PluginAIInspirationRunMode = z7.enum(["blocking", "job"]);
781
+ var PluginAIInspirationOutputKind = z7.enum([
782
+ "source",
783
+ "image",
784
+ "video"
785
+ ]);
786
+ var PluginAIInspirationModelOutput = z7.enum(["image", "video"]);
787
+ var PluginAIInspirationRuntimeProvider = z7.enum(["gpt", "fal"]);
788
+ var PluginAIInspirationPromptStrategy = z7.enum([
789
+ "gpt-image",
790
+ "fal-image",
791
+ "fal-video"
792
+ ]);
793
+ var PluginAIInspirationShapeKind = z7.enum(["image", "view", "video"]);
794
+ var PluginAIInspirationVideoMode = z7.enum([
795
+ "animate",
796
+ "references",
797
+ "keyframes"
798
+ ]);
799
+ var PluginAIInspirationVideoMotion = z7.enum([
800
+ "auto",
801
+ "slow-dolly",
802
+ "subtle-orbit",
803
+ "reveal"
804
+ ]);
805
+ var PluginAIInspirationVideoDuration = z7.enum(["4s", "6s", "8s"]);
806
+ var PluginAIInspirationJobStatus = z7.enum([
807
+ "queued",
808
+ "running",
809
+ "completed",
810
+ "failed",
811
+ "cancelled"
812
+ ]);
813
+ var PluginAIInspirationWorkflowRunState = z7.enum([
814
+ "current",
815
+ "stale",
816
+ "running",
817
+ "failed",
818
+ "superseded"
819
+ ]);
820
+ var PluginAIInspirationRegionHint = z7.object({
821
+ x: z7.number().finite(),
822
+ y: z7.number().finite(),
823
+ w: z7.number().finite().positive(),
824
+ h: z7.number().finite().positive()
825
+ });
826
+ var PluginAIInspirationPoint = z7.object({
827
+ x: z7.number().finite(),
828
+ y: z7.number().finite()
829
+ });
830
+ var PluginAIInspirationTextAnnotation = z7.object({
831
+ text: z7.string().min(1),
832
+ x: z7.number().finite().optional(),
833
+ y: z7.number().finite().optional()
834
+ });
835
+ var PluginAIInspirationSketchGuidance = z7.object({
836
+ visualShapeIds: z7.array(z7.string()).optional(),
837
+ textAnnotations: z7.array(PluginAIInspirationTextAnnotation).optional()
838
+ });
839
+ var PluginAIInspirationSiteOptions = z7.object({
840
+ includeSatellite: z7.boolean().optional(),
841
+ includeStreetView: z7.boolean().optional(),
842
+ includeAerial: z7.boolean().optional(),
843
+ aerialBearing: z7.number().finite().optional(),
844
+ aerialPitch: z7.number().finite().optional(),
845
+ selectedDiagramIds: z7.array(z7.string()).optional(),
846
+ location: z7.object({
847
+ lat: z7.number().finite(),
848
+ lng: z7.number().finite()
849
+ }).optional()
850
+ });
851
+ var PluginAIInspirationAppliedPreset = z7.object({
852
+ source: z7.enum(["curated", "user"]),
853
+ presetId: z7.string().min(1),
854
+ name: z7.string().min(1),
855
+ savedPresetKind: z7.enum(["prompt", "style"]).optional(),
856
+ stylePrompt: z7.string().optional(),
857
+ modelId: z7.string().optional(),
858
+ referenceImages: z7.array(
859
+ z7.object({
860
+ url: z7.string().min(1),
861
+ label: z7.string().optional(),
862
+ weight: z7.number().finite().optional()
863
+ })
864
+ ).optional(),
865
+ siteDefaults: z7.object({
866
+ includeSatellite: z7.boolean().optional(),
867
+ includeStreetView: z7.boolean().optional(),
868
+ includeAerial: z7.boolean().optional()
869
+ }).optional()
870
+ });
871
+ var PluginAIInspirationVideoOptions = z7.object({
872
+ mode: PluginAIInspirationVideoMode.optional(),
873
+ endFrameShapeId: z7.string().optional(),
874
+ motion: PluginAIInspirationVideoMotion.optional(),
875
+ duration: PluginAIInspirationVideoDuration.optional()
876
+ });
877
+ var PluginAIInspirationModel = z7.object({
878
+ id: z7.string(),
879
+ label: z7.string(),
880
+ supportsMultiImage: z7.boolean(),
881
+ output: PluginAIInspirationModelOutput,
882
+ isDefault: z7.boolean().optional()
883
+ });
884
+ var PluginAIInspirationModelCapability = z7.object({
885
+ id: z7.string(),
886
+ output: PluginAIInspirationModelOutput,
887
+ provider: PluginAIInspirationRuntimeProvider,
888
+ supportsRegionEdit: z7.boolean(),
889
+ supportsReferenceImages: z7.boolean(),
890
+ supportsStylePresets: z7.boolean(),
891
+ supportsSiteContext: z7.boolean(),
892
+ supportsSketchGuidance: z7.boolean(),
893
+ supportsKeyframes: z7.boolean(),
894
+ maxExtraImages: z7.number().int().nonnegative(),
895
+ promptStrategy: PluginAIInspirationPromptStrategy
896
+ });
897
+ var PluginAIInspirationListModelsResult = z7.object({
898
+ defaultModelId: z7.string(),
899
+ models: z7.array(PluginAIInspirationModel)
900
+ });
901
+ var PluginAIInspirationGetModelCapabilitiesArgs = z7.object({
902
+ modelId: z7.string().min(1)
903
+ });
904
+ var PluginAIInspirationGetModelCapabilitiesResult = z7.object({
905
+ capability: PluginAIInspirationModelCapability
906
+ });
907
+ var PluginAIInspirationShapeRef = z7.object({
908
+ shapeId: z7.string(),
909
+ assetId: z7.string().optional(),
910
+ kind: PluginAIInspirationShapeKind,
911
+ name: z7.string().optional(),
912
+ width: z7.number().finite().optional(),
913
+ height: z7.number().finite().optional(),
914
+ outputType: PluginAIInspirationOutputKind.optional(),
915
+ sourceUrl: z7.string().optional()
916
+ });
917
+ var PluginAIInspirationListSourcesArgs = z7.object({
918
+ includeGenerated: z7.boolean().optional(),
919
+ includeSourceUrl: z7.boolean().optional()
920
+ });
921
+ var PluginAIInspirationListSourcesResult = z7.object({
922
+ sources: z7.array(PluginAIInspirationShapeRef)
923
+ });
924
+ var PluginAIInspirationGetSelectionResult = z7.object({
925
+ selectedShapeIds: z7.array(z7.string()),
926
+ sources: z7.array(PluginAIInspirationShapeRef)
927
+ });
928
+ var PluginAIInspirationPresetReferenceImage = z7.object({
929
+ url: z7.string(),
930
+ label: z7.string().optional(),
931
+ weight: z7.number().finite().optional()
932
+ });
933
+ var PluginAIInspirationPreset = z7.object({
934
+ id: z7.string(),
935
+ name: z7.string(),
936
+ source: z7.enum(["curated", "user"]),
937
+ modelId: z7.string(),
938
+ categoryId: z7.string().optional(),
939
+ categoryLabel: z7.string().optional(),
940
+ description: z7.string().optional(),
941
+ previewImageUrl: z7.string().optional(),
942
+ prompt: z7.string().optional(),
943
+ stylePrompt: z7.string().optional(),
944
+ tags: z7.array(z7.string()).optional(),
945
+ referenceImages: z7.array(PluginAIInspirationPresetReferenceImage).optional(),
946
+ siteDefaults: PluginAIInspirationAppliedPreset.shape.siteDefaults.optional()
947
+ });
948
+ var PluginAIInspirationPresetCategory = z7.object({
949
+ id: z7.string(),
950
+ label: z7.string(),
951
+ description: z7.string().optional()
952
+ });
953
+ var PluginAIInspirationGetPresetCatalogResult = z7.object({
954
+ categories: z7.array(PluginAIInspirationPresetCategory),
955
+ presets: z7.array(PluginAIInspirationPreset)
956
+ });
957
+ var PluginAIInspirationOutput = z7.object({
958
+ outputType: z7.enum(["image", "video"]),
959
+ shapeId: z7.string(),
960
+ assetId: z7.string(),
961
+ outputUrl: z7.string().optional(),
962
+ position: PluginAIInspirationPoint.optional()
963
+ });
964
+ var PluginAIInspirationDebugSummary = z7.record(z7.string(), JsonValue);
965
+ var PluginAIInspirationRunMetadata = z7.object({
966
+ geometryFidelity: z7.string().optional(),
967
+ debugSummary: PluginAIInspirationDebugSummary.optional(),
968
+ streetViewComposite: z7.object({
969
+ used: z7.boolean(),
970
+ renderMode: z7.enum(["prompt_refs_default", "masked_composite_pilot"]),
971
+ backgroundLabel: z7.string().optional()
972
+ }).optional()
973
+ });
974
+ var PluginAIInspirationGenerateArgs = z7.object({
975
+ sourceShapeId: z7.string().min(1),
976
+ prompt: z7.string().min(1).max(8e3),
977
+ modelId: z7.string().optional(),
978
+ referenceShapeIds: z7.array(z7.string()).max(12).optional(),
979
+ referenceStrength: z7.enum(["low", "medium", "high"]).optional(),
980
+ appliedPreset: PluginAIInspirationAppliedPreset.optional(),
981
+ site: PluginAIInspirationSiteOptions.optional(),
982
+ regionHint: PluginAIInspirationRegionHint.optional(),
983
+ sketchGuidance: PluginAIInspirationSketchGuidance.optional(),
984
+ video: PluginAIInspirationVideoOptions.optional(),
985
+ runMode: PluginAIInspirationRunMode.optional()
986
+ });
987
+ var PluginAIInspirationRunResult = z7.object({
988
+ jobId: z7.string().optional(),
989
+ output: PluginAIInspirationOutput.optional(),
990
+ outputs: z7.array(PluginAIInspirationOutput).optional(),
991
+ metadata: PluginAIInspirationRunMetadata.optional()
992
+ });
993
+ var PluginAIInspirationRefineArgs = z7.object({
994
+ sourceShapeId: z7.string().min(1),
995
+ upscaleFactor: z7.union([z7.literal(1.5), z7.literal(2), z7.literal(4)]).optional(),
996
+ runMode: PluginAIInspirationRunMode.optional()
997
+ });
998
+ var PluginAIInspirationJobProgress = z7.object({
999
+ currentStep: z7.number().int().nonnegative().optional(),
1000
+ totalSteps: z7.number().int().nonnegative().optional(),
1001
+ message: z7.string().optional()
1002
+ });
1003
+ var PluginAIInspirationJob = z7.object({
1004
+ jobId: z7.string(),
1005
+ status: PluginAIInspirationJobStatus,
1006
+ createdAt: z7.number(),
1007
+ updatedAt: z7.number(),
1008
+ completedAt: z7.number().optional(),
1009
+ method: z7.string(),
1010
+ progress: PluginAIInspirationJobProgress.optional(),
1011
+ result: PluginAIInspirationRunResult.optional(),
1012
+ error: z7.string().optional()
1013
+ });
1014
+ var PluginAIInspirationJobArgs = z7.object({
1015
+ jobId: z7.string().min(1)
1016
+ });
1017
+ var PluginAIInspirationGetJobResult = z7.object({
1018
+ job: PluginAIInspirationJob
1019
+ });
1020
+ var PluginAIInspirationCancelJobResult = z7.object({
1021
+ job: PluginAIInspirationJob
1022
+ });
1023
+ var PluginAIInspirationListJobsResult = z7.object({
1024
+ jobs: z7.array(PluginAIInspirationJob)
1025
+ });
1026
+ var PluginAIInspirationWorkflowVideoConfig = z7.object({
1027
+ mode: z7.string().optional(),
1028
+ motion: z7.string().optional(),
1029
+ duration: z7.string().optional(),
1030
+ endFrameShapeId: z7.string().optional()
1031
+ });
1032
+ var PluginAIInspirationGenerationInputSnapshot = z7.object({
1033
+ version: z7.literal(1),
1034
+ meta: z7.record(z7.string(), JsonValue),
1035
+ regionHint: PluginAIInspirationRegionHint.optional(),
1036
+ sketchGuidance: z7.record(z7.string(), JsonValue).optional(),
1037
+ sourceCameraHeading: z7.number().finite().optional()
1038
+ });
1039
+ var PluginAIInspirationWorkflowOperation = z7.object({
1040
+ type: z7.enum(["generate-image", "refine", "generate-video"]),
1041
+ label: z7.string(),
1042
+ prompt: z7.string().optional(),
1043
+ modelId: z7.string().optional(),
1044
+ presetId: z7.string().optional(),
1045
+ presetName: z7.string().optional(),
1046
+ refineFactor: z7.number().finite().optional(),
1047
+ sourceRole: z7.enum(["primary", "end-frame"]).optional(),
1048
+ video: PluginAIInspirationWorkflowVideoConfig.optional(),
1049
+ generationInput: PluginAIInspirationGenerationInputSnapshot.optional()
1050
+ });
1051
+ var PluginAIInspirationWorkflowNode = z7.object({
1052
+ id: z7.string(),
1053
+ shapeId: z7.string(),
1054
+ assetId: z7.string().optional(),
1055
+ kind: PluginAIInspirationOutputKind,
1056
+ state: z7.string(),
1057
+ runState: PluginAIInspirationWorkflowRunState.optional(),
1058
+ staleReason: z7.string().optional(),
1059
+ incomingEdgeIds: z7.array(z7.string()),
1060
+ outgoingEdgeIds: z7.array(z7.string()),
1061
+ createdAt: z7.number(),
1062
+ updatedAt: z7.number()
1063
+ });
1064
+ var PluginAIInspirationWorkflowEdge = z7.object({
1065
+ id: z7.string(),
1066
+ sourceNodeId: z7.string(),
1067
+ targetNodeId: z7.string(),
1068
+ arrowShapeId: z7.string().optional(),
1069
+ operation: PluginAIInspirationWorkflowOperation,
1070
+ state: z7.string(),
1071
+ runState: PluginAIInspirationWorkflowRunState.optional(),
1072
+ staleReason: z7.string().optional(),
1073
+ supersededByEdgeId: z7.string().optional(),
1074
+ createdAt: z7.number(),
1075
+ updatedAt: z7.number()
1076
+ });
1077
+ var PluginAIInspirationWorkflow = z7.object({
1078
+ id: z7.string(),
1079
+ rootNodeIds: z7.array(z7.string()),
1080
+ nodeIds: z7.array(z7.string()),
1081
+ edgeIds: z7.array(z7.string()),
1082
+ nodes: z7.record(z7.string(), PluginAIInspirationWorkflowNode),
1083
+ edges: z7.record(z7.string(), PluginAIInspirationWorkflowEdge),
1084
+ createdAt: z7.number(),
1085
+ updatedAt: z7.number()
1086
+ });
1087
+ var PluginAIInspirationGetWorkflowForShapeArgs = z7.object({
1088
+ shapeId: z7.string().min(1)
1089
+ });
1090
+ var PluginAIInspirationGetWorkflowForShapeResult = z7.object({
1091
+ workflow: PluginAIInspirationWorkflow.nullable(),
1092
+ node: PluginAIInspirationWorkflowNode.nullable()
1093
+ });
1094
+ var PluginAIInspirationRerunPlanResult = z7.discriminatedUnion(
1095
+ "status",
1096
+ [
1097
+ z7.object({
1098
+ status: z7.literal("ready"),
1099
+ workflowId: z7.string(),
1100
+ sourceNode: PluginAIInspirationWorkflowNode,
1101
+ edgeIds: z7.array(z7.string()),
1102
+ edges: z7.array(PluginAIInspirationWorkflowEdge),
1103
+ recipe: z7.lazy(() => PluginAIInspirationRecipe),
1104
+ needsEndFrame: z7.boolean(),
1105
+ defaultEndFrameShapeId: z7.string().nullable()
1106
+ }),
1107
+ z7.object({
1108
+ status: z7.literal("unavailable"),
1109
+ reason: z7.enum([
1110
+ "not-in-workflow",
1111
+ "source-only",
1112
+ "running",
1113
+ "missing-input"
1114
+ ])
1115
+ })
1116
+ ]
1117
+ );
1118
+ var PluginAIInspirationRerunSelectedBranchArgs = z7.object({
1119
+ shapeId: z7.string().min(1),
1120
+ endFrameShapeId: z7.string().optional(),
1121
+ runMode: PluginAIInspirationRunMode.optional()
1122
+ });
1123
+ var PluginAIInspirationRecipeSlot = z7.object({
1124
+ id: z7.string(),
1125
+ type: z7.enum(["source-image", "end-frame"]),
1126
+ label: z7.string(),
1127
+ required: z7.boolean()
1128
+ });
1129
+ var PluginAIInspirationRecipeStep = z7.object({
1130
+ id: z7.string(),
1131
+ operation: PluginAIInspirationWorkflowOperation,
1132
+ outputKind: z7.enum(["image", "video"])
1133
+ });
1134
+ var PluginAIInspirationRecipeDraft = z7.object({
1135
+ name: z7.string(),
1136
+ summary: z7.string(),
1137
+ slots: z7.array(PluginAIInspirationRecipeSlot),
1138
+ steps: z7.array(PluginAIInspirationRecipeStep).min(1).max(20),
1139
+ outputKind: z7.enum(["image", "video"]),
1140
+ thumbnailUrl: z7.string().optional()
1141
+ });
1142
+ var PluginAIInspirationRecipe = PluginAIInspirationRecipeDraft.extend({
1143
+ version: z7.literal(1),
1144
+ id: z7.string(),
1145
+ fingerprint: z7.string().optional(),
1146
+ createdAt: z7.number(),
1147
+ updatedAt: z7.number()
1148
+ });
1149
+ var PluginAIInspirationExtractionResult = z7.discriminatedUnion(
1150
+ "status",
1151
+ [
1152
+ z7.object({
1153
+ status: z7.literal("ready"),
1154
+ draft: PluginAIInspirationRecipeDraft
1155
+ }),
1156
+ z7.object({
1157
+ status: z7.literal("unavailable"),
1158
+ reason: z7.enum([
1159
+ "not-in-workflow",
1160
+ "source-only",
1161
+ "missing-workflow",
1162
+ "missing-node",
1163
+ "missing-input",
1164
+ "invalid-workflow"
1165
+ ])
1166
+ })
1167
+ ]
1168
+ );
1169
+ var PluginAIInspirationListRecipesResult = z7.object({
1170
+ recipes: z7.array(PluginAIInspirationRecipe)
1171
+ });
1172
+ var PluginAIInspirationSaveRecipeArgs = z7.object({
1173
+ draft: PluginAIInspirationRecipeDraft,
1174
+ name: z7.string().min(1)
1175
+ });
1176
+ var PluginAIInspirationSaveRecipeResult = z7.discriminatedUnion(
1177
+ "status",
1178
+ [
1179
+ z7.object({ status: z7.literal("saved"), recipe: PluginAIInspirationRecipe }),
1180
+ z7.object({
1181
+ status: z7.literal("duplicate"),
1182
+ recipe: PluginAIInspirationRecipe
1183
+ }),
1184
+ z7.object({ status: z7.literal("invalid-name"), recipe: z7.null() }),
1185
+ z7.object({ status: z7.literal("failed"), recipe: z7.null() })
1186
+ ]
1187
+ );
1188
+ var PluginAIInspirationDeleteRecipeArgs = z7.object({
1189
+ recipeId: z7.string().min(1)
1190
+ });
1191
+ var PluginAIInspirationDeleteRecipeResult = z7.object({
1192
+ deleted: z7.boolean()
1193
+ });
1194
+ var PluginAIInspirationExtractRecipeFromShapeArgs = z7.object({
1195
+ shapeId: z7.string().min(1)
1196
+ });
1197
+ var PluginAIInspirationRunRecipeArgs = z7.object({
1198
+ recipeId: z7.string().optional(),
1199
+ recipe: PluginAIInspirationRecipe.optional(),
1200
+ slotShapeIds: z7.record(z7.string(), z7.string()),
1201
+ runMode: PluginAIInspirationRunMode.optional()
1202
+ });
1203
+ var PluginDocumentationAIInspirationApi = class {
1204
+ constructor() {
1205
+ }
1206
+ };
1207
+
1208
+ // src/api/documentation/index.ts
1209
+ var PluginDocumentationApi = class {
1210
+ constructor() {
1211
+ }
1212
+ };
1213
+
1214
+ // src/api/entity/buildableEnvelope.ts
1215
+ var z8 = __toESM(require("zod"), 1);
709
1216
  var PluginBuildableEnvelopeApi = class {
710
1217
  constructor() {
711
1218
  }
712
1219
  };
713
- var PluginBuildableEnvelopePolygonVertex = z7.union([
714
- z7.object({ x: z7.number().finite(), z: z7.number().finite() }).strict(),
715
- z7.tuple([z7.number().finite(), z7.number().finite()])
1220
+ var PluginBuildableEnvelopePolygonVertex = z8.union([
1221
+ z8.object({ x: z8.number().finite(), z: z8.number().finite() }).strict(),
1222
+ z8.tuple([z8.number().finite(), z8.number().finite()])
716
1223
  ]);
717
- var PluginBuildableEnvelopeVerticalCap = z7.discriminatedUnion("kind", [
718
- z7.object({
719
- kind: z7.literal("max_height"),
720
- maxHeight: z7.number().finite().positive()
1224
+ var PluginBuildableEnvelopeVerticalCap = z8.discriminatedUnion("kind", [
1225
+ z8.object({
1226
+ kind: z8.literal("max_height"),
1227
+ maxHeight: z8.number().finite().positive()
721
1228
  }).strict(),
722
- z7.object({
723
- kind: z7.literal("max_floors"),
724
- maxFloors: z7.number().finite().int().positive()
1229
+ z8.object({
1230
+ kind: z8.literal("max_floors"),
1231
+ maxFloors: z8.number().finite().int().positive()
725
1232
  }).strict()
726
1233
  ]);
727
- var PluginBuildableEnvelopeSetbackTier = z7.object({
728
- aboveHeight: z7.number().finite().nonnegative(),
729
- front: z7.number().finite().nonnegative(),
730
- side: z7.number().finite().nonnegative(),
731
- rear: z7.number().finite().nonnegative()
1234
+ var PluginBuildableEnvelopeSetbackTier = z8.object({
1235
+ aboveHeight: z8.number().finite().nonnegative(),
1236
+ front: z8.number().finite().nonnegative(),
1237
+ side: z8.number().finite().nonnegative(),
1238
+ rear: z8.number().finite().nonnegative()
732
1239
  }).strict();
733
1240
  function refineSetbackTiers(args, ctx) {
734
1241
  const tiers = args.setbacks;
735
1242
  if (tiers.length === 0) return;
736
1243
  if (tiers[0].aboveHeight !== 0) {
737
1244
  ctx.addIssue({
738
- code: z7.ZodIssueCode.custom,
1245
+ code: z8.ZodIssueCode.custom,
739
1246
  path: ["setbacks", 0, "aboveHeight"],
740
1247
  message: "Ground tier required: setbacks[0].aboveHeight must be 0."
741
1248
  });
@@ -743,125 +1250,125 @@ function refineSetbackTiers(args, ctx) {
743
1250
  for (let i = 1; i < tiers.length; i++) {
744
1251
  if (!(tiers[i].aboveHeight > tiers[i - 1].aboveHeight)) {
745
1252
  ctx.addIssue({
746
- code: z7.ZodIssueCode.custom,
1253
+ code: z8.ZodIssueCode.custom,
747
1254
  path: ["setbacks", i, "aboveHeight"],
748
1255
  message: "Setback tiers must be ordered by strictly increasing aboveHeight."
749
1256
  });
750
1257
  }
751
1258
  }
752
1259
  }
753
- var PluginBuildableEnvelopeCreateArgs = z7.object({
754
- sitePolygon: z7.array(PluginBuildableEnvelopePolygonVertex).min(3),
755
- lengthUnit: z7.union([z7.literal("ft"), z7.literal("m")]),
756
- setbacks: z7.array(PluginBuildableEnvelopeSetbackTier).min(1),
1260
+ var PluginBuildableEnvelopeCreateArgs = z8.object({
1261
+ sitePolygon: z8.array(PluginBuildableEnvelopePolygonVertex).min(3),
1262
+ lengthUnit: z8.union([z8.literal("ft"), z8.literal("m")]),
1263
+ setbacks: z8.array(PluginBuildableEnvelopeSetbackTier).min(1),
757
1264
  verticalCap: PluginBuildableEnvelopeVerticalCap,
758
- floorToFloor: z7.number().finite().positive(),
759
- farRatio: z7.number().finite().positive().optional(),
760
- lotCoverageMaxPct: z7.number().finite().min(0).max(100).optional()
1265
+ floorToFloor: z8.number().finite().positive(),
1266
+ farRatio: z8.number().finite().positive().optional(),
1267
+ lotCoverageMaxPct: z8.number().finite().min(0).max(100).optional()
761
1268
  }).strict().superRefine(refineSetbackTiers);
762
- var PluginBuildableEnvelopeCreateResult = z7.object({
763
- buildableEnvelopeId: z7.string().min(1)
1269
+ var PluginBuildableEnvelopeCreateResult = z8.object({
1270
+ buildableEnvelopeId: z8.string().min(1)
764
1271
  }).strict();
765
- var PluginBuildableEnvelopeUpdateArgs = z7.object({
766
- buildableEnvelopeId: z7.string().min(1),
767
- sitePolygon: z7.array(PluginBuildableEnvelopePolygonVertex).min(3),
768
- lengthUnit: z7.union([z7.literal("ft"), z7.literal("m")]),
769
- setbacks: z7.array(PluginBuildableEnvelopeSetbackTier).min(1),
1272
+ var PluginBuildableEnvelopeUpdateArgs = z8.object({
1273
+ buildableEnvelopeId: z8.string().min(1),
1274
+ sitePolygon: z8.array(PluginBuildableEnvelopePolygonVertex).min(3),
1275
+ lengthUnit: z8.union([z8.literal("ft"), z8.literal("m")]),
1276
+ setbacks: z8.array(PluginBuildableEnvelopeSetbackTier).min(1),
770
1277
  verticalCap: PluginBuildableEnvelopeVerticalCap,
771
- floorToFloor: z7.number().finite().positive(),
772
- farRatio: z7.number().finite().positive().optional(),
773
- lotCoverageMaxPct: z7.number().finite().min(0).max(100).optional()
1278
+ floorToFloor: z8.number().finite().positive(),
1279
+ farRatio: z8.number().finite().positive().optional(),
1280
+ lotCoverageMaxPct: z8.number().finite().min(0).max(100).optional()
774
1281
  }).strict().superRefine(refineSetbackTiers);
775
- var PluginBuildableEnvelopeUpdateResult = z7.object({
776
- buildableEnvelopeId: z7.string().min(1)
1282
+ var PluginBuildableEnvelopeUpdateResult = z8.object({
1283
+ buildableEnvelopeId: z8.string().min(1)
777
1284
  }).strict();
778
1285
 
779
1286
  // src/api/entity/department.ts
780
- var z8 = __toESM(require("zod"), 1);
1287
+ var z9 = __toESM(require("zod"), 1);
781
1288
  var PluginDepartmentApi = class {
782
1289
  constructor() {
783
1290
  }
784
1291
  };
785
- var PluginDepartmentCreateArgs = z8.object({
786
- name: z8.string(),
787
- color: z8.string()
1292
+ var PluginDepartmentCreateArgs = z9.object({
1293
+ name: z9.string(),
1294
+ color: z9.string()
788
1295
  });
789
- var PluginDepartmentCreateResult = z8.object({
790
- departmentId: z8.string()
1296
+ var PluginDepartmentCreateResult = z9.object({
1297
+ departmentId: z9.string()
791
1298
  });
792
- var PluginDepartmentEntry = z8.object({
793
- id: z8.string(),
794
- name: z8.string(),
795
- color: z8.string()
1299
+ var PluginDepartmentEntry = z9.object({
1300
+ id: z9.string(),
1301
+ name: z9.string(),
1302
+ color: z9.string()
796
1303
  });
797
- var PluginDepartmentGetAllResult = z8.object({
798
- departments: z8.array(PluginDepartmentEntry)
1304
+ var PluginDepartmentGetAllResult = z9.object({
1305
+ departments: z9.array(PluginDepartmentEntry)
799
1306
  });
800
1307
 
801
1308
  // src/api/entity/referenceLine.ts
802
- var z9 = __toESM(require("zod"), 1);
1309
+ var z10 = __toESM(require("zod"), 1);
803
1310
  var PluginReferenceLineApi = class {
804
1311
  constructor() {
805
1312
  }
806
1313
  };
807
- var PluginReferenceLineCreateMultiArgs = z9.object({
1314
+ var PluginReferenceLineCreateMultiArgs = z10.object({
808
1315
  profile: PProfile
809
1316
  });
810
- var PluginReferenceLineCreateMultiResult = z9.object({
811
- referenceLineIds: z9.array(z9.string())
1317
+ var PluginReferenceLineCreateMultiResult = z10.object({
1318
+ referenceLineIds: z10.array(z10.string())
812
1319
  });
813
- var PluginReferenceLineGetProperty = z9.enum([
1320
+ var PluginReferenceLineGetProperty = z10.enum([
814
1321
  "curve"
815
1322
  ]);
816
- var PluginReferenceLineGetArgs = z9.object({
817
- referenceLineId: z9.string(),
818
- properties: z9.array(PluginReferenceLineGetProperty)
1323
+ var PluginReferenceLineGetArgs = z10.object({
1324
+ referenceLineId: z10.string(),
1325
+ properties: z10.array(PluginReferenceLineGetProperty)
819
1326
  });
820
- var PluginReferenceLineGetResult = z9.object({
1327
+ var PluginReferenceLineGetResult = z10.object({
821
1328
  curve: PCurve
822
1329
  }).partial();
823
- var PluginReferenceLineGetAllResult = z9.object({
824
- referenceLineIds: z9.array(z9.string())
1330
+ var PluginReferenceLineGetAllResult = z10.object({
1331
+ referenceLineIds: z10.array(z10.string())
825
1332
  });
826
- var PluginReferenceLineDeleteArgs = z9.object({
827
- referenceLineId: z9.string()
1333
+ var PluginReferenceLineDeleteArgs = z10.object({
1334
+ referenceLineId: z10.string()
828
1335
  });
829
1336
 
830
1337
  // src/api/entity/space.ts
831
- var z10 = __toESM(require("zod"), 1);
1338
+ var z11 = __toESM(require("zod"), 1);
832
1339
  var PluginSpaceApi = class {
833
1340
  constructor() {
834
1341
  }
835
1342
  };
836
- var PluginSpaceCreateRectangularArgs = z10.object({
1343
+ var PluginSpaceCreateRectangularArgs = z11.object({
837
1344
  position: PVec3,
838
- dimensions: z10.object({
839
- width: z10.number(),
840
- height: z10.number(),
841
- depth: z10.number()
1345
+ dimensions: z11.object({
1346
+ width: z11.number(),
1347
+ height: z11.number(),
1348
+ depth: z11.number()
842
1349
  })
843
1350
  });
844
- var PluginSpaceCreateRectangularResult = z10.object({
845
- spaceId: z10.string()
1351
+ var PluginSpaceCreateRectangularResult = z11.object({
1352
+ spaceId: z11.string()
846
1353
  });
847
- var PluginSpaceCreateFromProfileArgs = z10.object({
1354
+ var PluginSpaceCreateFromProfileArgs = z11.object({
848
1355
  profile: PProfile,
849
- innerProfiles: z10.array(PProfile).optional(),
850
- extrudeHeight: z10.number(),
1356
+ innerProfiles: z11.array(PProfile).optional(),
1357
+ extrudeHeight: z11.number(),
851
1358
  position: PVec3
852
1359
  });
853
- var PluginSpaceCreateFromProfileResult = z10.object({
854
- spaceId: z10.string()
1360
+ var PluginSpaceCreateFromProfileResult = z11.object({
1361
+ spaceId: z11.string()
855
1362
  });
856
- var PluginSpaceUpdateGeometryFromProfileArgs = z10.object({
857
- spaceId: z10.string(),
1363
+ var PluginSpaceUpdateGeometryFromProfileArgs = z11.object({
1364
+ spaceId: z11.string(),
858
1365
  profile: PProfile,
859
- extrudeHeight: z10.number()
1366
+ extrudeHeight: z11.number()
860
1367
  });
861
- var PluginSpaceUpdateGeometryFromProfileResult = z10.object({
862
- spaceId: z10.string()
1368
+ var PluginSpaceUpdateGeometryFromProfileResult = z11.object({
1369
+ spaceId: z11.string()
863
1370
  });
864
- var PluginSpaceGetProperty = z10.enum([
1371
+ var PluginSpaceGetProperty = z11.enum([
865
1372
  // Basic
866
1373
  "id",
867
1374
  "type",
@@ -885,13 +1392,15 @@ var PluginSpaceGetProperty = z10.enum([
885
1392
  "rotationQuaternion",
886
1393
  // Derived from brep
887
1394
  "planPoints",
888
- "profile"
1395
+ "profile",
1396
+ // Derived from adjacency manager
1397
+ "adjacency"
889
1398
  ]);
890
- var PluginSpaceGetArgs = z10.object({
891
- spaceId: z10.string(),
892
- properties: z10.array(PluginSpaceGetProperty)
1399
+ var PluginSpaceGetArgs = z11.object({
1400
+ spaceId: z11.string(),
1401
+ properties: z11.array(PluginSpaceGetProperty)
893
1402
  });
894
- var PluginSpaceType = z10.enum([
1403
+ var PluginSpaceType = z11.enum([
895
1404
  "Room",
896
1405
  "Program Block",
897
1406
  "Balcony",
@@ -903,39 +1412,44 @@ var PluginSpaceType = z10.enum([
903
1412
  "Envelope",
904
1413
  "Parking"
905
1414
  ]);
906
- var PluginSpaceGetResult = z10.object({
1415
+ var PluginSpaceGetResult = z11.object({
907
1416
  // Basic
908
- id: z10.string(),
909
- type: z10.string(),
910
- room_type: z10.string(),
911
- name: z10.string(),
1417
+ id: z11.string(),
1418
+ type: z11.string(),
1419
+ room_type: z11.string(),
1420
+ name: z11.string(),
912
1421
  // Derived from parametric data
913
- area: z10.number(),
914
- breadth: z10.number(),
915
- depth: z10.number(),
916
- height: z10.number(),
917
- massType: z10.string().nullable(),
1422
+ area: z11.number(),
1423
+ breadth: z11.number(),
1424
+ depth: z11.number(),
1425
+ height: z11.number(),
1426
+ massType: z11.string().nullable(),
918
1427
  spaceType: PluginSpaceType.nullable(),
919
- storey: z10.number().nullable(),
920
- departmentId: z10.string().nullable(),
921
- departmentName: z10.string(),
922
- departmentColor: z10.string(),
1428
+ storey: z11.number().nullable(),
1429
+ departmentId: z11.string().nullable(),
1430
+ departmentName: z11.string(),
1431
+ departmentColor: z11.string(),
923
1432
  // Derived from mesh
924
1433
  position: PVec3,
925
1434
  absolutePosition: PVec3,
926
1435
  rotation: PVec3,
927
1436
  rotationQuaternion: PQuat.nullable(),
928
1437
  // Derived from brep
929
- planPoints: z10.array(PVec3),
930
- profile: PProfile
1438
+ planPoints: z11.array(PVec3),
1439
+ profile: PProfile,
1440
+ // Derived from adjacency manager
1441
+ adjacency: z11.array(z11.object({
1442
+ spaceId: z11.string(),
1443
+ value: z11.number()
1444
+ }))
931
1445
  }).partial();
932
- var PluginSpaceGetAllResult = z10.object({
933
- spacesIds: z10.array(z10.string())
1446
+ var PluginSpaceGetAllResult = z11.object({
1447
+ spacesIds: z11.array(z11.string())
934
1448
  });
935
- var PluginSpaceDeleteArgs = z10.object({
936
- spaceId: z10.string()
1449
+ var PluginSpaceDeleteArgs = z11.object({
1450
+ spaceId: z11.string()
937
1451
  });
938
- var PluginMassType = z10.enum([
1452
+ var PluginMassType = z11.enum([
939
1453
  "Plinth",
940
1454
  "Void",
941
1455
  "Pergola",
@@ -949,95 +1463,95 @@ var PluginMassType = z10.enum([
949
1463
  "Mass",
950
1464
  "Site"
951
1465
  ]);
952
- var PluginWellKnownDepartmentId = z10.enum([
1466
+ var PluginWellKnownDepartmentId = z11.enum([
953
1467
  "DEFAULT",
954
1468
  "SITE",
955
1469
  "ENVELOPE",
956
1470
  "CORE"
957
1471
  ]);
958
- var PluginDepartmentId = z10.union([
1472
+ var PluginDepartmentId = z11.union([
959
1473
  PluginWellKnownDepartmentId,
960
- z10.uuid()
1474
+ z11.uuid()
961
1475
  ]);
962
- var PluginSpaceUpdateArgs = z10.object({
963
- spaceId: z10.string(),
964
- properties: z10.object({
965
- room_type: z10.string().optional(),
1476
+ var PluginSpaceUpdateArgs = z11.object({
1477
+ spaceId: z11.string(),
1478
+ properties: z11.object({
1479
+ room_type: z11.string().optional(),
966
1480
  massType: PluginMassType.optional(),
967
1481
  spaceType: PluginSpaceType.optional(),
968
1482
  departmentId: PluginDepartmentId.optional()
969
1483
  })
970
1484
  });
971
- var PluginSpaceUpdateResult = z10.object({
972
- spaceId: z10.string(),
973
- room_type: z10.string().optional(),
974
- massType: z10.string().optional(),
975
- spaceType: z10.string().optional(),
976
- departmentId: z10.string().nullable().optional()
1485
+ var PluginSpaceUpdateResult = z11.object({
1486
+ spaceId: z11.string(),
1487
+ room_type: z11.string().optional(),
1488
+ massType: z11.string().optional(),
1489
+ spaceType: z11.string().optional(),
1490
+ departmentId: z11.string().nullable().optional()
977
1491
  });
978
- var PluginSpaceBulkCreateItem = z10.discriminatedUnion("kind", [
979
- z10.object({
980
- kind: z10.literal("rectangular"),
1492
+ var PluginSpaceBulkCreateItem = z11.discriminatedUnion("kind", [
1493
+ z11.object({
1494
+ kind: z11.literal("rectangular"),
981
1495
  position: PVec3,
982
- dimensions: z10.object({
983
- width: z10.number(),
984
- height: z10.number(),
985
- depth: z10.number()
1496
+ dimensions: z11.object({
1497
+ width: z11.number(),
1498
+ height: z11.number(),
1499
+ depth: z11.number()
986
1500
  }),
987
- room_type: z10.string().optional(),
1501
+ room_type: z11.string().optional(),
988
1502
  spaceType: PluginSpaceType.optional(),
989
1503
  massType: PluginMassType.optional(),
990
1504
  departmentId: PluginDepartmentId.optional()
991
1505
  }),
992
- z10.object({
993
- kind: z10.literal("profile"),
1506
+ z11.object({
1507
+ kind: z11.literal("profile"),
994
1508
  profile: PProfile,
995
- innerProfiles: z10.array(PProfile).optional(),
996
- extrudeHeight: z10.number(),
1509
+ innerProfiles: z11.array(PProfile).optional(),
1510
+ extrudeHeight: z11.number(),
997
1511
  position: PVec3,
998
- room_type: z10.string().optional(),
1512
+ room_type: z11.string().optional(),
999
1513
  spaceType: PluginSpaceType.optional(),
1000
1514
  massType: PluginMassType.optional(),
1001
1515
  departmentId: PluginDepartmentId.optional()
1002
1516
  })
1003
1517
  ]);
1004
- var PluginSpaceBulkCreateArgs = z10.object({
1005
- items: z10.array(PluginSpaceBulkCreateItem)
1518
+ var PluginSpaceBulkCreateArgs = z11.object({
1519
+ items: z11.array(PluginSpaceBulkCreateItem)
1006
1520
  });
1007
- var PluginSpaceBulkCreateResult = z10.object({
1008
- spaceIds: z10.array(z10.string())
1521
+ var PluginSpaceBulkCreateResult = z11.object({
1522
+ spaceIds: z11.array(z11.string())
1009
1523
  });
1010
- var PluginSpaceBulkUpdateItem = z10.object({
1011
- spaceId: z10.string(),
1524
+ var PluginSpaceBulkUpdateItem = z11.object({
1525
+ spaceId: z11.string(),
1012
1526
  profile: PProfile.optional(),
1013
- extrudeHeight: z10.number().optional(),
1014
- properties: z10.object({
1015
- room_type: z10.string().optional(),
1527
+ extrudeHeight: z11.number().optional(),
1528
+ properties: z11.object({
1529
+ room_type: z11.string().optional(),
1016
1530
  massType: PluginMassType.optional(),
1017
1531
  spaceType: PluginSpaceType.optional(),
1018
1532
  departmentId: PluginDepartmentId.optional()
1019
1533
  }).optional()
1020
1534
  });
1021
- var PluginSpaceBulkUpdateArgs = z10.object({
1022
- items: z10.array(PluginSpaceBulkUpdateItem)
1535
+ var PluginSpaceBulkUpdateArgs = z11.object({
1536
+ items: z11.array(PluginSpaceBulkUpdateItem)
1023
1537
  });
1024
- var PluginSpaceBulkUpdateResult = z10.object({
1025
- spaces: z10.array(PluginSpaceUpdateResult)
1538
+ var PluginSpaceBulkUpdateResult = z11.object({
1539
+ spaces: z11.array(PluginSpaceUpdateResult)
1026
1540
  });
1027
- var PluginSpaceBulkDeleteArgs = z10.object({
1028
- spaceIds: z10.array(z10.string())
1541
+ var PluginSpaceBulkDeleteArgs = z11.object({
1542
+ spaceIds: z11.array(z11.string())
1029
1543
  });
1030
- var PluginSpaceBulkDeleteResult = z10.object({
1031
- deletedSpaceIds: z10.array(z10.string())
1544
+ var PluginSpaceBulkDeleteResult = z11.object({
1545
+ deletedSpaceIds: z11.array(z11.string())
1032
1546
  });
1033
1547
 
1034
1548
  // src/api/entity/story.ts
1035
- var z11 = __toESM(require("zod"), 1);
1549
+ var z12 = __toESM(require("zod"), 1);
1036
1550
  var PluginStoryApi = class {
1037
1551
  constructor() {
1038
1552
  }
1039
1553
  };
1040
- var PluginStoryGetProperty = z11.enum([
1554
+ var PluginStoryGetProperty = z12.enum([
1041
1555
  "value",
1042
1556
  "id",
1043
1557
  "name",
@@ -1047,44 +1561,44 @@ var PluginStoryGetProperty = z11.enum([
1047
1561
  "spacesCount",
1048
1562
  "totalArea"
1049
1563
  ]);
1050
- var PluginStoryGetArgs = z11.object({
1051
- storyValue: z11.number().int(),
1052
- properties: z11.array(PluginStoryGetProperty)
1564
+ var PluginStoryGetArgs = z12.object({
1565
+ storyValue: z12.number().int(),
1566
+ properties: z12.array(PluginStoryGetProperty)
1053
1567
  });
1054
- var PluginStoryGetResult = z11.object({
1055
- value: z11.number(),
1056
- id: z11.string(),
1057
- name: z11.string(),
1058
- height: z11.number(),
1059
- base: z11.number(),
1060
- hidden: z11.boolean(),
1061
- spacesCount: z11.number(),
1062
- totalArea: z11.number()
1568
+ var PluginStoryGetResult = z12.object({
1569
+ value: z12.number(),
1570
+ id: z12.string(),
1571
+ name: z12.string(),
1572
+ height: z12.number(),
1573
+ base: z12.number(),
1574
+ hidden: z12.boolean(),
1575
+ spacesCount: z12.number(),
1576
+ totalArea: z12.number()
1063
1577
  }).partial();
1064
- var PluginStoryGetAllResult = z11.object({
1065
- stories: z11.array(
1066
- z11.object({
1067
- value: z11.number(),
1068
- id: z11.string(),
1069
- name: z11.string()
1578
+ var PluginStoryGetAllResult = z12.object({
1579
+ stories: z12.array(
1580
+ z12.object({
1581
+ value: z12.number(),
1582
+ id: z12.string(),
1583
+ name: z12.string()
1070
1584
  })
1071
1585
  )
1072
1586
  });
1073
- var PluginStoryCreateArgs = z11.object({
1074
- storyValue: z11.number().int(),
1075
- height: z11.number().optional()
1587
+ var PluginStoryCreateArgs = z12.object({
1588
+ storyValue: z12.number().int(),
1589
+ height: z12.number().optional()
1076
1590
  });
1077
- var PluginStoryCreateResult = z11.object({
1078
- storyId: z11.string(),
1079
- storyValue: z11.number()
1591
+ var PluginStoryCreateResult = z12.object({
1592
+ storyId: z12.string(),
1593
+ storyValue: z12.number()
1080
1594
  });
1081
- var PluginStoryUpdateArgs = z11.object({
1082
- storyValue: z11.number().int(),
1083
- height: z11.number()
1595
+ var PluginStoryUpdateArgs = z12.object({
1596
+ storyValue: z12.number().int(),
1597
+ height: z12.number()
1084
1598
  });
1085
- var PluginStoryUpdateResult = z11.object({
1086
- storyValue: z11.number(),
1087
- height: z11.number()
1599
+ var PluginStoryUpdateResult = z12.object({
1600
+ storyValue: z12.number(),
1601
+ height: z12.number()
1088
1602
  });
1089
1603
 
1090
1604
  // src/api/entity/index.ts
@@ -1094,53 +1608,53 @@ var PluginEntityApi = class {
1094
1608
  };
1095
1609
 
1096
1610
  // src/api/tools/copy.ts
1097
- var z12 = __toESM(require("zod"), 1);
1098
- var PluginCopyMode = z12.enum(["instance", "unique"]);
1099
- var PluginCopyArgs = z12.object({
1100
- componentIds: z12.array(z12.string()).min(1),
1611
+ var z13 = __toESM(require("zod"), 1);
1612
+ var PluginCopyMode = z13.enum(["instance", "unique"]);
1613
+ var PluginCopyArgs = z13.object({
1614
+ componentIds: z13.array(z13.string()).min(1),
1101
1615
  displacement: PVec3,
1102
- count: z12.number().int().positive().optional(),
1616
+ count: z13.number().int().positive().optional(),
1103
1617
  copyMode: PluginCopyMode.optional()
1104
1618
  });
1105
- var PluginCopyResult = z12.object({
1106
- copiedIds: z12.array(z12.string())
1619
+ var PluginCopyResult = z13.object({
1620
+ copiedIds: z13.array(z13.string())
1107
1621
  });
1108
1622
 
1109
1623
  // src/api/tools/offset.ts
1110
- var z13 = __toESM(require("zod"), 1);
1111
- var PluginOffsetArgs = z13.object({
1112
- componentId: z13.string().min(1),
1113
- distance: z13.number(),
1624
+ var z14 = __toESM(require("zod"), 1);
1625
+ var PluginOffsetArgs = z14.object({
1626
+ componentId: z14.string().min(1),
1627
+ distance: z14.number(),
1114
1628
  profilePickPoint: PVec3.optional()
1115
1629
  });
1116
- var PluginOffsetResult = z13.object({
1117
- createdIds: z13.array(z13.string()),
1118
- deletedIds: z13.array(z13.string())
1630
+ var PluginOffsetResult = z14.object({
1631
+ createdIds: z14.array(z14.string()),
1632
+ deletedIds: z14.array(z14.string())
1119
1633
  });
1120
1634
 
1121
1635
  // src/api/tools/selection.ts
1122
- var z14 = __toESM(require("zod"), 1);
1636
+ var z15 = __toESM(require("zod"), 1);
1123
1637
  var PluginSelectionApi = class {
1124
1638
  constructor() {
1125
1639
  }
1126
1640
  };
1127
- var PluginSelectionGetResult = z14.object({
1128
- selected: z14.array(z14.string())
1641
+ var PluginSelectionGetResult = z15.object({
1642
+ selected: z15.array(z15.string())
1129
1643
  });
1130
1644
 
1131
1645
  // src/api/tools/transform.ts
1132
- var z15 = __toESM(require("zod"), 1);
1646
+ var z16 = __toESM(require("zod"), 1);
1133
1647
  var PluginTransformApi = class {
1134
1648
  constructor() {
1135
1649
  }
1136
1650
  };
1137
- var PluginMoveArgs = z15.object({
1138
- componentIds: z15.array(z15.string()),
1651
+ var PluginMoveArgs = z16.object({
1652
+ componentIds: z16.array(z16.string()),
1139
1653
  displacement: PVec3
1140
1654
  });
1141
- var PluginRotateArgs = z15.object({
1142
- componentIds: z15.array(z15.string()),
1143
- angle: z15.number(),
1655
+ var PluginRotateArgs = z16.object({
1656
+ componentIds: z16.array(z16.string()),
1657
+ angle: z16.number(),
1144
1658
  axis: PVec3,
1145
1659
  pivot: PVec3
1146
1660
  });
@@ -1152,12 +1666,12 @@ var PluginToolsApi = class {
1152
1666
  };
1153
1667
 
1154
1668
  // src/api/units/index.ts
1155
- var z16 = __toESM(require("zod"), 1);
1669
+ var z17 = __toESM(require("zod"), 1);
1156
1670
  var PluginUnitsApi = class {
1157
1671
  constructor() {
1158
1672
  }
1159
1673
  };
1160
- var PUnitType = z16.enum([
1674
+ var PUnitType = z17.enum([
1161
1675
  "meters",
1162
1676
  "feet-inches",
1163
1677
  "inches",
@@ -1166,21 +1680,21 @@ var PUnitType = z16.enum([
1166
1680
  "kilometers",
1167
1681
  "miles"
1168
1682
  ]);
1169
- var PluginUnitsConvertFromArgs = z16.object({
1683
+ var PluginUnitsConvertFromArgs = z17.object({
1170
1684
  unit: PUnitType,
1171
- value: z16.number(),
1172
- degree: z16.number().int().min(1).max(3).optional()
1685
+ value: z17.number(),
1686
+ degree: z17.number().int().min(1).max(3).optional()
1173
1687
  });
1174
- var PluginUnitsConvertFromResult = z16.object({
1175
- value: z16.number()
1688
+ var PluginUnitsConvertFromResult = z17.object({
1689
+ value: z17.number()
1176
1690
  });
1177
- var PluginUnitsConvertToArgs = z16.object({
1691
+ var PluginUnitsConvertToArgs = z17.object({
1178
1692
  unit: PUnitType,
1179
- value: z16.number(),
1180
- degree: z16.number().int().min(1).max(3).optional()
1693
+ value: z17.number(),
1694
+ degree: z17.number().int().min(1).max(3).optional()
1181
1695
  });
1182
- var PluginUnitsConvertToResult = z16.object({
1183
- value: z16.number()
1696
+ var PluginUnitsConvertToResult = z17.object({
1697
+ value: z17.number()
1184
1698
  });
1185
1699
 
1186
1700
  // src/api/index.ts
@@ -1197,6 +1711,71 @@ var PluginApi = class {
1197
1711
  PQuat,
1198
1712
  PUnitType,
1199
1713
  PVec3,
1714
+ PluginAIInspirationAppliedPreset,
1715
+ PluginAIInspirationCancelJobResult,
1716
+ PluginAIInspirationDebugSummary,
1717
+ PluginAIInspirationDeleteRecipeArgs,
1718
+ PluginAIInspirationDeleteRecipeResult,
1719
+ PluginAIInspirationExtractRecipeFromShapeArgs,
1720
+ PluginAIInspirationExtractionResult,
1721
+ PluginAIInspirationGenerateArgs,
1722
+ PluginAIInspirationGenerationInputSnapshot,
1723
+ PluginAIInspirationGetJobResult,
1724
+ PluginAIInspirationGetModelCapabilitiesArgs,
1725
+ PluginAIInspirationGetModelCapabilitiesResult,
1726
+ PluginAIInspirationGetPresetCatalogResult,
1727
+ PluginAIInspirationGetSelectionResult,
1728
+ PluginAIInspirationGetWorkflowForShapeArgs,
1729
+ PluginAIInspirationGetWorkflowForShapeResult,
1730
+ PluginAIInspirationJob,
1731
+ PluginAIInspirationJobArgs,
1732
+ PluginAIInspirationJobProgress,
1733
+ PluginAIInspirationJobStatus,
1734
+ PluginAIInspirationListJobsResult,
1735
+ PluginAIInspirationListModelsResult,
1736
+ PluginAIInspirationListRecipesResult,
1737
+ PluginAIInspirationListSourcesArgs,
1738
+ PluginAIInspirationListSourcesResult,
1739
+ PluginAIInspirationModel,
1740
+ PluginAIInspirationModelCapability,
1741
+ PluginAIInspirationModelOutput,
1742
+ PluginAIInspirationOutput,
1743
+ PluginAIInspirationOutputKind,
1744
+ PluginAIInspirationPoint,
1745
+ PluginAIInspirationPreset,
1746
+ PluginAIInspirationPresetCategory,
1747
+ PluginAIInspirationPresetReferenceImage,
1748
+ PluginAIInspirationPromptStrategy,
1749
+ PluginAIInspirationRecipe,
1750
+ PluginAIInspirationRecipeDraft,
1751
+ PluginAIInspirationRecipeSlot,
1752
+ PluginAIInspirationRecipeStep,
1753
+ PluginAIInspirationRefineArgs,
1754
+ PluginAIInspirationRegionHint,
1755
+ PluginAIInspirationRerunPlanResult,
1756
+ PluginAIInspirationRerunSelectedBranchArgs,
1757
+ PluginAIInspirationRunMetadata,
1758
+ PluginAIInspirationRunMode,
1759
+ PluginAIInspirationRunRecipeArgs,
1760
+ PluginAIInspirationRunResult,
1761
+ PluginAIInspirationRuntimeProvider,
1762
+ PluginAIInspirationSaveRecipeArgs,
1763
+ PluginAIInspirationSaveRecipeResult,
1764
+ PluginAIInspirationShapeKind,
1765
+ PluginAIInspirationShapeRef,
1766
+ PluginAIInspirationSiteOptions,
1767
+ PluginAIInspirationSketchGuidance,
1768
+ PluginAIInspirationTextAnnotation,
1769
+ PluginAIInspirationVideoDuration,
1770
+ PluginAIInspirationVideoMode,
1771
+ PluginAIInspirationVideoMotion,
1772
+ PluginAIInspirationVideoOptions,
1773
+ PluginAIInspirationWorkflow,
1774
+ PluginAIInspirationWorkflowEdge,
1775
+ PluginAIInspirationWorkflowNode,
1776
+ PluginAIInspirationWorkflowOperation,
1777
+ PluginAIInspirationWorkflowRunState,
1778
+ PluginAIInspirationWorkflowVideoConfig,
1200
1779
  PluginApi,
1201
1780
  PluginArcApi,
1202
1781
  PluginBuildableEnvelopeApi,
@@ -1218,6 +1797,8 @@ var PluginApi = class {
1218
1797
  PluginDepartmentEntry,
1219
1798
  PluginDepartmentGetAllResult,
1220
1799
  PluginDepartmentId,
1800
+ PluginDocumentationAIInspirationApi,
1801
+ PluginDocumentationApi,
1221
1802
  PluginEntityApi,
1222
1803
  PluginGeomApi,
1223
1804
  PluginLineApi,