@snaptrude/plugin-core 0.9.8 → 0.9.9

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
@@ -64,6 +64,8 @@ __export(index_exports, {
64
64
  OffsetSplitOutcome: () => OffsetSplitOutcome,
65
65
  PLUGIN_CREATE_BATCH_LIMIT: () => PLUGIN_CREATE_BATCH_LIMIT,
66
66
  PLUGIN_ERROR_CODES: () => PLUGIN_ERROR_CODES,
67
+ PLUGIN_PROGRAM_LABELS_BATCH_LIMIT: () => PLUGIN_PROGRAM_LABELS_BATCH_LIMIT,
68
+ PLUGIN_PROGRAM_METADATA_BATCH_LIMIT: () => PLUGIN_PROGRAM_METADATA_BATCH_LIMIT,
67
69
  PUnitType: () => PUnitType,
68
70
  PluginAIInspirationAppliedPreset: () => PluginAIInspirationAppliedPreset,
69
71
  PluginAIInspirationCancelJobResult: () => PluginAIInspirationCancelJobResult,
@@ -231,6 +233,7 @@ __export(index_exports, {
231
233
  PluginCoreBuildingsUpdateArgs: () => PluginCoreBuildingsUpdateArgs,
232
234
  PluginCoreBuildingsUpdateResult: () => PluginCoreBuildingsUpdateResult,
233
235
  PluginCoreComponentTag: () => PluginCoreComponentTag,
236
+ PluginCoreComponentTags: () => PluginCoreComponentTags,
234
237
  PluginCoreGroupMember: () => PluginCoreGroupMember,
235
238
  PluginCoreGroupRef: () => PluginCoreGroupRef,
236
239
  PluginCoreGroupsApi: () => PluginCoreGroupsApi,
@@ -316,6 +319,8 @@ __export(index_exports, {
316
319
  PluginCoreTagsListCategoriesResult: () => PluginCoreTagsListCategoriesResult,
317
320
  PluginCoreTagsListComponentsArgs: () => PluginCoreTagsListComponentsArgs,
318
321
  PluginCoreTagsListComponentsResult: () => PluginCoreTagsListComponentsResult,
322
+ PluginCoreTagsListForComponentsArgs: () => PluginCoreTagsListForComponentsArgs,
323
+ PluginCoreTagsListForComponentsResult: () => PluginCoreTagsListForComponentsResult,
319
324
  PluginCoreTagsListResult: () => PluginCoreTagsListResult,
320
325
  PluginCoreTagsUnassignArgs: () => PluginCoreTagsUnassignArgs,
321
326
  PluginCoreTagsUnassignResult: () => PluginCoreTagsUnassignResult,
@@ -854,10 +859,25 @@ __export(index_exports, {
854
859
  PluginProgramDepartmentsListResult: () => PluginProgramDepartmentsListResult,
855
860
  PluginProgramDepartmentsSetTargetAreaArgs: () => PluginProgramDepartmentsSetTargetAreaArgs,
856
861
  PluginProgramDepartmentsSetTargetAreaResult: () => PluginProgramDepartmentsSetTargetAreaResult,
862
+ PluginProgramDepartmentsSetTargetCountArgs: () => PluginProgramDepartmentsSetTargetCountArgs,
863
+ PluginProgramDepartmentsSetTargetCountResult: () => PluginProgramDepartmentsSetTargetCountResult,
857
864
  PluginProgramDepartmentsUnassignArgs: () => PluginProgramDepartmentsUnassignArgs,
858
865
  PluginProgramDepartmentsUnassignResult: () => PluginProgramDepartmentsUnassignResult,
859
866
  PluginProgramDepartmentsUpdateArgs: () => PluginProgramDepartmentsUpdateArgs,
860
867
  PluginProgramDepartmentsUpdateResult: () => PluginProgramDepartmentsUpdateResult,
868
+ PluginProgramLabel: () => PluginProgramLabel,
869
+ PluginProgramLabelCreateItem: () => PluginProgramLabelCreateItem,
870
+ PluginProgramLabelRecord: () => PluginProgramLabelRecord,
871
+ PluginProgramLabelsApi: () => PluginProgramLabelsApi,
872
+ PluginProgramLabelsCreateArgs: () => PluginProgramLabelsCreateArgs,
873
+ PluginProgramLabelsCreateResult: () => PluginProgramLabelsCreateResult,
874
+ PluginProgramLabelsGetArgs: () => PluginProgramLabelsGetArgs,
875
+ PluginProgramLabelsGetResult: () => PluginProgramLabelsGetResult,
876
+ PluginProgramLabelsListResult: () => PluginProgramLabelsListResult,
877
+ PluginProgramLabelsSetTargetAreaArgs: () => PluginProgramLabelsSetTargetAreaArgs,
878
+ PluginProgramLabelsSetTargetAreaResult: () => PluginProgramLabelsSetTargetAreaResult,
879
+ PluginProgramLabelsSetTargetCountArgs: () => PluginProgramLabelsSetTargetCountArgs,
880
+ PluginProgramLabelsSetTargetCountResult: () => PluginProgramLabelsSetTargetCountResult,
861
881
  PluginProgramLayoutApi: () => PluginProgramLayoutApi,
862
882
  PluginProgramLayoutApplyResult: () => PluginProgramLayoutApplyResult,
863
883
  PluginProgramLayoutApplySolutionArgs: () => PluginProgramLayoutApplySolutionArgs,
@@ -867,6 +887,21 @@ __export(index_exports, {
867
887
  PluginProgramLayoutRunResult: () => PluginProgramLayoutRunResult,
868
888
  PluginProgramLayoutStackResult: () => PluginProgramLayoutStackResult,
869
889
  PluginProgramLayoutStateResult: () => PluginProgramLayoutStateResult,
890
+ PluginProgramMetadataApi: () => PluginProgramMetadataApi,
891
+ PluginProgramMetadataCreateHeaderArgs: () => PluginProgramMetadataCreateHeaderArgs,
892
+ PluginProgramMetadataCreateHeaderResult: () => PluginProgramMetadataCreateHeaderResult,
893
+ PluginProgramMetadataGetArgs: () => PluginProgramMetadataGetArgs,
894
+ PluginProgramMetadataGetResult: () => PluginProgramMetadataGetResult,
895
+ PluginProgramMetadataHeader: () => PluginProgramMetadataHeader,
896
+ PluginProgramMetadataListArgs: () => PluginProgramMetadataListArgs,
897
+ PluginProgramMetadataListHeadersResult: () => PluginProgramMetadataListHeadersResult,
898
+ PluginProgramMetadataListResult: () => PluginProgramMetadataListResult,
899
+ PluginProgramMetadataRecord: () => PluginProgramMetadataRecord,
900
+ PluginProgramMetadataUpdateArgs: () => PluginProgramMetadataUpdateArgs,
901
+ PluginProgramMetadataUpdateItem: () => PluginProgramMetadataUpdateItem,
902
+ PluginProgramMetadataUpdateManyArgs: () => PluginProgramMetadataUpdateManyArgs,
903
+ PluginProgramMetadataUpdateManyResult: () => PluginProgramMetadataUpdateManyResult,
904
+ PluginProgramMetadataUpdateResult: () => PluginProgramMetadataUpdateResult,
870
905
  PluginProgramMetricsApi: () => PluginProgramMetricsApi,
871
906
  PluginProgramMetricsSummary: () => PluginProgramMetricsSummary,
872
907
  PluginProgramSiteAnalysisResult: () => PluginProgramSiteAnalysisResult,
@@ -901,8 +936,10 @@ __export(index_exports, {
901
936
  PluginProgramSpreadsheetBindingsListResult: () => PluginProgramSpreadsheetBindingsListResult,
902
937
  PluginProgramSpreadsheetBindingsRefreshArgs: () => PluginProgramSpreadsheetBindingsRefreshArgs,
903
938
  PluginProgramSpreadsheetBindingsRefreshResult: () => PluginProgramSpreadsheetBindingsRefreshResult,
939
+ PluginProgramSpreadsheetCreateCustomSheetArgs: () => PluginProgramSpreadsheetCreateCustomSheetArgs,
904
940
  PluginProgramSpreadsheetCreateSheetArgs: () => PluginProgramSpreadsheetCreateSheetArgs,
905
941
  PluginProgramSpreadsheetCreateSheetResult: () => PluginProgramSpreadsheetCreateSheetResult,
942
+ PluginProgramSpreadsheetCustomSheetResult: () => PluginProgramSpreadsheetCustomSheetResult,
906
943
  PluginProgramSpreadsheetDatasetsApi: () => PluginProgramSpreadsheetDatasetsApi,
907
944
  PluginProgramSpreadsheetDatasetsListResult: () => PluginProgramSpreadsheetDatasetsListResult,
908
945
  PluginProgramSpreadsheetDatasetsSetArgs: () => PluginProgramSpreadsheetDatasetsSetArgs,
@@ -911,6 +948,8 @@ __export(index_exports, {
911
948
  PluginProgramSpreadsheetExportResult: () => PluginProgramSpreadsheetExportResult,
912
949
  PluginProgramSpreadsheetGetAuditLogArgs: () => PluginProgramSpreadsheetGetAuditLogArgs,
913
950
  PluginProgramSpreadsheetGetAuditLogResult: () => PluginProgramSpreadsheetGetAuditLogResult,
951
+ PluginProgramSpreadsheetGetCustomSheetArgs: () => PluginProgramSpreadsheetGetCustomSheetArgs,
952
+ PluginProgramSpreadsheetGetCustomSheetResult: () => PluginProgramSpreadsheetGetCustomSheetResult,
914
953
  PluginProgramSpreadsheetGetMaterialTakeoffResult: () => PluginProgramSpreadsheetGetMaterialTakeoffResult,
915
954
  PluginProgramSpreadsheetGetProgramResult: () => PluginProgramSpreadsheetGetProgramResult,
916
955
  PluginProgramSpreadsheetGetSheetDataArgs: () => PluginProgramSpreadsheetGetSheetDataArgs,
@@ -918,6 +957,8 @@ __export(index_exports, {
918
957
  PluginProgramSpreadsheetGetTakeoffResult: () => PluginProgramSpreadsheetGetTakeoffResult,
919
958
  PluginProgramSpreadsheetHighlightCellsArgs: () => PluginProgramSpreadsheetHighlightCellsArgs,
920
959
  PluginProgramSpreadsheetHighlightCellsResult: () => PluginProgramSpreadsheetHighlightCellsResult,
960
+ PluginProgramSpreadsheetListCustomSheetPropertiesResult: () => PluginProgramSpreadsheetListCustomSheetPropertiesResult,
961
+ PluginProgramSpreadsheetListCustomSheetsResult: () => PluginProgramSpreadsheetListCustomSheetsResult,
921
962
  PluginProgramSpreadsheetListSheetsResult: () => PluginProgramSpreadsheetListSheetsResult,
922
963
  PluginProgramSpreadsheetMergeCellsArgs: () => PluginProgramSpreadsheetMergeCellsArgs,
923
964
  PluginProgramSpreadsheetMergeCellsResult: () => PluginProgramSpreadsheetMergeCellsResult,
@@ -942,6 +983,7 @@ __export(index_exports, {
942
983
  PluginProgramSpreadsheetTemplatesCreateResult: () => PluginProgramSpreadsheetTemplatesCreateResult,
943
984
  PluginProgramSpreadsheetTransactionArgs: () => PluginProgramSpreadsheetTransactionArgs,
944
985
  PluginProgramSpreadsheetTransactionResult: () => PluginProgramSpreadsheetTransactionResult,
986
+ PluginProgramSpreadsheetUpdateCustomSheetArgs: () => PluginProgramSpreadsheetUpdateCustomSheetArgs,
945
987
  PluginProjectApi: () => PluginProjectApi,
946
988
  PluginProjectInfo: () => PluginProjectInfo,
947
989
  PluginProjectRef: () => PluginProjectRef,
@@ -1027,6 +1069,9 @@ __export(index_exports, {
1027
1069
  PluginSpreadsheetColumn: () => PluginSpreadsheetColumn,
1028
1070
  PluginSpreadsheetConditionalRule: () => PluginSpreadsheetConditionalRule,
1029
1071
  PluginSpreadsheetConditionalRuleType: () => PluginSpreadsheetConditionalRuleType,
1072
+ PluginSpreadsheetCustomSheet: () => PluginSpreadsheetCustomSheet,
1073
+ PluginSpreadsheetCustomSheetConfig: () => PluginSpreadsheetCustomSheetConfig,
1074
+ PluginSpreadsheetCustomSheetProperty: () => PluginSpreadsheetCustomSheetProperty,
1030
1075
  PluginSpreadsheetDataset: () => PluginSpreadsheetDataset,
1031
1076
  PluginSpreadsheetExportFormat: () => PluginSpreadsheetExportFormat,
1032
1077
  PluginSpreadsheetFontStyle: () => PluginSpreadsheetFontStyle,
@@ -2421,6 +2466,16 @@ var PluginCoreTagsGetTagsForComponentArgs = z29.object({
2421
2466
  var PluginCoreTagsGetTagsForComponentResult = z29.object({
2422
2467
  tags: z29.array(PluginCoreComponentTag)
2423
2468
  });
2469
+ var PluginCoreTagsListForComponentsArgs = z29.object({
2470
+ componentIds: z29.array(ComponentHandle).optional()
2471
+ });
2472
+ var PluginCoreComponentTags = z29.object({
2473
+ componentId: ComponentHandle,
2474
+ tags: z29.array(PluginCoreComponentTag)
2475
+ });
2476
+ var PluginCoreTagsListForComponentsResult = z29.object({
2477
+ components: z29.array(PluginCoreComponentTags)
2478
+ });
2424
2479
  var PluginCoreTagsListComponentsArgs = z29.object({
2425
2480
  tagId: z29.string().optional(),
2426
2481
  categoryId: z29.string().optional(),
@@ -4291,7 +4346,8 @@ var PluginProgramDepartment = z64.object({
4291
4346
  id: z64.string(),
4292
4347
  name: z64.string(),
4293
4348
  color: z64.string(),
4294
- targetArea: z64.number().nullable()
4349
+ targetArea: z64.number().nullable(),
4350
+ targetCount: z64.number()
4295
4351
  });
4296
4352
  var PluginProgramDepartmentsListResult = z64.object({
4297
4353
  units: PluginAreaUnit,
@@ -4341,6 +4397,11 @@ var PluginProgramDepartmentsSetTargetAreaArgs = z64.object({
4341
4397
  units: PluginAreaUnit.optional()
4342
4398
  });
4343
4399
  var PluginProgramDepartmentsSetTargetAreaResult = PluginProgramDepartmentRecord;
4400
+ var PluginProgramDepartmentsSetTargetCountArgs = z64.object({
4401
+ departmentId: z64.string(),
4402
+ targetCount: z64.number().int().nonnegative()
4403
+ });
4404
+ var PluginProgramDepartmentsSetTargetCountResult = PluginProgramDepartmentRecord;
4344
4405
  var PluginProgramDepartmentsDeleteArgs = z64.object({
4345
4406
  departmentId: z64.string()
4346
4407
  });
@@ -4819,6 +4880,41 @@ var PluginProgramSpreadsheetAddImageResult = z67.object({
4819
4880
  sheetName: z67.string(),
4820
4881
  name: z67.string()
4821
4882
  });
4883
+ var PluginSpreadsheetCustomSheet = z67.object({
4884
+ sheetName: z67.string(),
4885
+ groupBy: z67.array(z67.string()),
4886
+ properties: z67.array(z67.string()),
4887
+ groupColors: z67.record(z67.string(), z67.string()),
4888
+ proposalId: z67.string().nullable()
4889
+ });
4890
+ var PluginSpreadsheetCustomSheetConfig = z67.object({
4891
+ groupBy: z67.array(z67.string().trim().min(1)).max(10).optional(),
4892
+ properties: z67.array(z67.string()).max(50).optional(),
4893
+ groupColors: z67.record(z67.string(), z67.string()).optional()
4894
+ });
4895
+ var PluginProgramSpreadsheetCreateCustomSheetArgs = PluginSpreadsheetCustomSheetConfig.extend({
4896
+ name: z67.string().trim().min(1)
4897
+ });
4898
+ var PluginProgramSpreadsheetUpdateCustomSheetArgs = PluginSpreadsheetCustomSheetConfig.extend({
4899
+ sheetName: z67.string().trim().min(1)
4900
+ });
4901
+ var PluginProgramSpreadsheetCustomSheetResult = PluginSpreadsheetCustomSheet;
4902
+ var PluginProgramSpreadsheetGetCustomSheetArgs = z67.object({
4903
+ sheetName: z67.string().trim().min(1)
4904
+ });
4905
+ var PluginProgramSpreadsheetGetCustomSheetResult = PluginSpreadsheetCustomSheet.nullable();
4906
+ var PluginProgramSpreadsheetListCustomSheetsResult = z67.object({
4907
+ sheets: z67.array(PluginSpreadsheetCustomSheet)
4908
+ });
4909
+ var PluginSpreadsheetCustomSheetProperty = z67.object({
4910
+ id: z67.string(),
4911
+ name: z67.string(),
4912
+ groupable: z67.boolean(),
4913
+ custom: z67.boolean()
4914
+ });
4915
+ var PluginProgramSpreadsheetListCustomSheetPropertiesResult = z67.object({
4916
+ properties: z67.array(PluginSpreadsheetCustomSheetProperty)
4917
+ });
4822
4918
 
4823
4919
  // src/api/program/site.ts
4824
4920
  var z68 = __toESM(require("zod"), 1);
@@ -5066,6 +5162,113 @@ var PluginProgramAreasUpdateArgs = z71.object({
5066
5162
  var PluginProgramAreasUpdateResult = PluginProgramAreaSummary;
5067
5163
  var PluginProgramAreasRefreshResult = PluginProgramAreaSummary;
5068
5164
 
5165
+ // src/api/program/metadata.ts
5166
+ var z72 = __toESM(require("zod"), 1);
5167
+ var PluginProgramMetadataApi = class {
5168
+ constructor() {
5169
+ }
5170
+ };
5171
+ var PluginProgramMetadataHeader = z72.object({
5172
+ headerId: z72.string(),
5173
+ name: z72.string(),
5174
+ description: z72.string(),
5175
+ columnIndex: z72.number()
5176
+ });
5177
+ var PluginProgramMetadataListHeadersResult = z72.object({
5178
+ headers: z72.array(PluginProgramMetadataHeader)
5179
+ });
5180
+ var PluginProgramMetadataCreateHeaderArgs = z72.object({
5181
+ name: z72.string().trim().min(1),
5182
+ description: z72.string().optional()
5183
+ });
5184
+ var PluginProgramMetadataCreateHeaderResult = PluginProgramMetadataHeader;
5185
+ var PluginProgramMetadataRecord = z72.object({
5186
+ spaceId: ComponentHandle,
5187
+ values: z72.record(z72.string(), PluginSpreadsheetCell)
5188
+ });
5189
+ var PluginProgramMetadataGetArgs = z72.object({
5190
+ spaceId: ComponentHandle
5191
+ });
5192
+ var PluginProgramMetadataGetResult = PluginProgramMetadataRecord.nullable();
5193
+ var PluginProgramMetadataListArgs = z72.object({
5194
+ spaceIds: z72.array(ComponentHandle).optional()
5195
+ });
5196
+ var PluginProgramMetadataListResult = z72.object({
5197
+ records: z72.array(PluginProgramMetadataRecord)
5198
+ });
5199
+ var PluginProgramMetadataUpdateArgs = z72.object({
5200
+ spaceId: ComponentHandle,
5201
+ values: z72.record(z72.string(), PluginSpreadsheetCell).refine((v) => Object.keys(v).length > 0, "values must not be empty")
5202
+ });
5203
+ var PluginProgramMetadataUpdateResult = PluginProgramMetadataRecord;
5204
+ var PluginProgramMetadataUpdateItem = PluginProgramMetadataUpdateArgs;
5205
+ var PLUGIN_PROGRAM_METADATA_BATCH_LIMIT = 1e3;
5206
+ var PluginProgramMetadataUpdateManyArgs = z72.object({
5207
+ items: z72.array(PluginProgramMetadataUpdateItem).min(1).max(PLUGIN_PROGRAM_METADATA_BATCH_LIMIT)
5208
+ });
5209
+ var PluginProgramMetadataUpdateManyResult = z72.object({
5210
+ records: z72.array(PluginProgramMetadataRecord)
5211
+ });
5212
+
5213
+ // src/api/program/labels.ts
5214
+ var z73 = __toESM(require("zod"), 1);
5215
+ var PluginProgramLabelsApi = class {
5216
+ constructor() {
5217
+ }
5218
+ };
5219
+ var PluginProgramLabel = z73.object({
5220
+ id: z73.string(),
5221
+ name: z73.string(),
5222
+ color: z73.string(),
5223
+ departmentId: z73.string(),
5224
+ targetArea: z73.number().nullable(),
5225
+ targetCount: z73.number(),
5226
+ storey: z73.number().nullable()
5227
+ });
5228
+ var PluginProgramLabelRecord = PluginProgramLabel.extend({
5229
+ units: PluginAreaUnit
5230
+ });
5231
+ var PluginProgramLabelsListResult = z73.object({
5232
+ units: PluginAreaUnit,
5233
+ labels: z73.array(PluginProgramLabel)
5234
+ });
5235
+ var PluginProgramLabelsGetArgs = z73.object({
5236
+ labelId: z73.string()
5237
+ });
5238
+ var PluginProgramLabelsGetResult = PluginProgramLabelRecord.nullable();
5239
+ var PluginProgramLabelCreateItem = z73.object({
5240
+ name: z73.string().trim().min(1),
5241
+ targetArea: z73.number().finite().nonnegative().optional(),
5242
+ targetCount: z73.number().int().nonnegative().optional(),
5243
+ departmentId: z73.string().optional(),
5244
+ departmentName: z73.string().optional(),
5245
+ color: z73.string().optional(),
5246
+ storey: z73.number().int().optional(),
5247
+ height: z73.number().finite().positive().optional(),
5248
+ width: z73.number().finite().positive().optional()
5249
+ });
5250
+ var PLUGIN_PROGRAM_LABELS_BATCH_LIMIT = 500;
5251
+ var PluginProgramLabelsCreateArgs = z73.object({
5252
+ items: z73.array(PluginProgramLabelCreateItem).min(1).max(PLUGIN_PROGRAM_LABELS_BATCH_LIMIT),
5253
+ units: PluginAreaUnit.optional(),
5254
+ createSpaces: z73.boolean().optional()
5255
+ });
5256
+ var PluginProgramLabelsCreateResult = z73.object({
5257
+ labelIds: z73.array(z73.string()),
5258
+ createdSpaces: z73.boolean()
5259
+ });
5260
+ var PluginProgramLabelsSetTargetAreaArgs = z73.object({
5261
+ labelId: z73.string(),
5262
+ targetArea: z73.number().finite().nonnegative(),
5263
+ units: PluginAreaUnit.optional()
5264
+ });
5265
+ var PluginProgramLabelsSetTargetAreaResult = PluginProgramLabelRecord;
5266
+ var PluginProgramLabelsSetTargetCountArgs = z73.object({
5267
+ labelId: z73.string(),
5268
+ targetCount: z73.number().int().nonnegative()
5269
+ });
5270
+ var PluginProgramLabelsSetTargetCountResult = PluginProgramLabelRecord;
5271
+
5069
5272
  // src/api/program/index.ts
5070
5273
  var PluginProgramApi = class {
5071
5274
  constructor() {
@@ -5073,72 +5276,72 @@ var PluginProgramApi = class {
5073
5276
  };
5074
5277
 
5075
5278
  // src/api/presentation/views.ts
5076
- var z72 = __toESM(require("zod"), 1);
5279
+ var z74 = __toESM(require("zod"), 1);
5077
5280
  var PluginPresentationViewsApi = class {
5078
5281
  constructor() {
5079
5282
  }
5080
5283
  };
5081
- var PluginPresentationViewType = z72.enum(["2d", "3d"]);
5082
- var PluginPresentationView = z72.object({
5083
- id: z72.string(),
5084
- name: z72.string(),
5284
+ var PluginPresentationViewType = z74.enum(["2d", "3d"]);
5285
+ var PluginPresentationView = z74.object({
5286
+ id: z74.string(),
5287
+ name: z74.string(),
5085
5288
  type: PluginPresentationViewType,
5086
- isActive: z72.boolean(),
5087
- storey: z72.number().nullable()
5289
+ isActive: z74.boolean(),
5290
+ storey: z74.number().nullable()
5088
5291
  });
5089
- var PluginPresentationViewsListResult = z72.object({
5090
- views: z72.array(PluginPresentationView)
5292
+ var PluginPresentationViewsListResult = z74.object({
5293
+ views: z74.array(PluginPresentationView)
5091
5294
  });
5092
- var PluginPresentationViewsGetArgs = z72.object({
5093
- id: z72.string()
5295
+ var PluginPresentationViewsGetArgs = z74.object({
5296
+ id: z74.string()
5094
5297
  });
5095
5298
  var PluginPresentationViewsGetResult = PluginPresentationView.nullable();
5096
- var PluginPresentationImageFormat = z72.enum(["png", "jpeg"]);
5097
- var PluginPresentationViewsCaptureArgs = z72.object({
5098
- viewId: z72.string().optional(),
5299
+ var PluginPresentationImageFormat = z74.enum(["png", "jpeg"]);
5300
+ var PluginPresentationViewsCaptureArgs = z74.object({
5301
+ viewId: z74.string().optional(),
5099
5302
  format: PluginPresentationImageFormat.optional(),
5100
- resolution: z72.string().optional()
5303
+ resolution: z74.string().optional()
5101
5304
  });
5102
- var PluginPresentationViewsCaptureResult = z72.object({
5103
- image: z72.string()
5305
+ var PluginPresentationViewsCaptureResult = z74.object({
5306
+ image: z74.string()
5104
5307
  });
5105
- var PluginPresentationViewsSetActiveArgs = z72.object({
5106
- id: z72.string()
5308
+ var PluginPresentationViewsSetActiveArgs = z74.object({
5309
+ id: z74.string()
5107
5310
  });
5108
- var PluginPresentationViewsSetActiveResult = z72.object({
5109
- id: z72.string()
5311
+ var PluginPresentationViewsSetActiveResult = z74.object({
5312
+ id: z74.string()
5110
5313
  });
5111
- var PluginPresentationViewsCreateArgs = z72.object({
5112
- name: z72.string().optional(),
5113
- kind: z72.enum(["view", "sitePlan"]).optional(),
5114
- storey: z72.number().optional()
5314
+ var PluginPresentationViewsCreateArgs = z74.object({
5315
+ name: z74.string().optional(),
5316
+ kind: z74.enum(["view", "sitePlan"]).optional(),
5317
+ storey: z74.number().optional()
5115
5318
  });
5116
5319
  var PluginPresentationViewsCreateResult = PluginPresentationView;
5117
- var PluginPresentationViewColorMode = z72.union([
5118
- z72.enum(["monochrome", "texture", "department"]),
5119
- z72.templateLiteral(["tag:", z72.string()])
5320
+ var PluginPresentationViewColorMode = z74.union([
5321
+ z74.enum(["monochrome", "texture", "department"]),
5322
+ z74.templateLiteral(["tag:", z74.string()])
5120
5323
  ]);
5121
- var PluginPresentationViewLabel = z72.enum([
5324
+ var PluginPresentationViewLabel = z74.enum([
5122
5325
  "objectLabels",
5123
5326
  "areas",
5124
5327
  "department"
5125
5328
  ]);
5126
- var PluginPresentationViewMode = z72.enum(["perspective", "isometric"]);
5127
- var PluginPresentationViewSettings = z72.object({
5128
- backgroundColor: z72.string(),
5329
+ var PluginPresentationViewMode = z74.enum(["perspective", "isometric"]);
5330
+ var PluginPresentationViewSettings = z74.object({
5331
+ backgroundColor: z74.string(),
5129
5332
  colorMode: PluginPresentationViewColorMode,
5130
5333
  viewMode: PluginPresentationViewMode,
5131
- showAxis: z72.boolean(),
5132
- showEdges: z72.boolean(),
5133
- showLabels: z72.boolean(),
5134
- labels: z72.array(PluginPresentationViewLabel)
5334
+ showAxis: z74.boolean(),
5335
+ showEdges: z74.boolean(),
5336
+ showLabels: z74.boolean(),
5337
+ labels: z74.array(PluginPresentationViewLabel)
5135
5338
  });
5136
- var PluginPresentationViewsGetSettingsArgs = z72.object({
5137
- id: z72.string()
5339
+ var PluginPresentationViewsGetSettingsArgs = z74.object({
5340
+ id: z74.string()
5138
5341
  });
5139
5342
  var PluginPresentationViewsGetSettingsResult = PluginPresentationViewSettings.nullable();
5140
- var PluginPresentationViewsUpdateSettingsArgs = z72.object({
5141
- id: z72.string(),
5343
+ var PluginPresentationViewsUpdateSettingsArgs = z74.object({
5344
+ id: z74.string(),
5142
5345
  settings: PluginPresentationViewSettings.partial()
5143
5346
  }).refine(
5144
5347
  (v) => !(v.settings.showLabels === false && (v.settings.labels?.length ?? 0) > 0),
@@ -5151,28 +5354,28 @@ var PluginPresentationViewsUpdateSettingsArgs = z72.object({
5151
5354
  message: "Contradictory patch: showLabels cannot be true with an explicitly empty labels list \u2014 pass a non-empty list, or omit labels to apply the defaults"
5152
5355
  }
5153
5356
  );
5154
- var PluginPresentationViewsUpdateSettingsResult = z72.object({
5155
- id: z72.string()
5357
+ var PluginPresentationViewsUpdateSettingsResult = z74.object({
5358
+ id: z74.string()
5156
5359
  });
5157
- var PluginPresentationViewsRenameArgs = z72.object({
5158
- id: z72.string(),
5159
- name: z72.string().trim().min(1)
5360
+ var PluginPresentationViewsRenameArgs = z74.object({
5361
+ id: z74.string(),
5362
+ name: z74.string().trim().min(1)
5160
5363
  });
5161
5364
  var PluginPresentationViewsRenameResult = PluginPresentationView;
5162
- var PluginPresentationViewsDeleteArgs = z72.object({
5163
- id: z72.string()
5365
+ var PluginPresentationViewsDeleteArgs = z74.object({
5366
+ id: z74.string()
5164
5367
  });
5165
- var PluginPresentationViewsDeleteResult = z72.object({
5166
- id: z72.string()
5368
+ var PluginPresentationViewsDeleteResult = z74.object({
5369
+ id: z74.string()
5167
5370
  });
5168
5371
 
5169
5372
  // src/api/presentation/sheets.ts
5170
- var z73 = __toESM(require("zod"), 1);
5373
+ var z75 = __toESM(require("zod"), 1);
5171
5374
  var PluginPresentationSheetsApi = class {
5172
5375
  constructor() {
5173
5376
  }
5174
5377
  };
5175
- var PluginSheetSize = z73.enum([
5378
+ var PluginSheetSize = z75.enum([
5176
5379
  "ANSI_A",
5177
5380
  "ANSI_B",
5178
5381
  "ANSI_C",
@@ -5190,140 +5393,140 @@ var PluginSheetSize = z73.enum([
5190
5393
  "ISO_A1",
5191
5394
  "ISO_A0"
5192
5395
  ]);
5193
- var PluginSheetOrientation = z73.enum(["landscape", "portrait"]);
5194
- var PluginSheetMargin = z73.union([
5195
- z73.literal(0),
5196
- z73.literal(0.25),
5197
- z73.literal(0.5),
5198
- z73.literal(0.75),
5199
- z73.literal(1)
5396
+ var PluginSheetOrientation = z75.enum(["landscape", "portrait"]);
5397
+ var PluginSheetMargin = z75.union([
5398
+ z75.literal(0),
5399
+ z75.literal(0.25),
5400
+ z75.literal(0.5),
5401
+ z75.literal(0.75),
5402
+ z75.literal(1)
5200
5403
  ]);
5201
- var PluginPresentationSheet = z73.object({
5202
- id: z73.string(),
5203
- name: z73.string(),
5404
+ var PluginPresentationSheet = z75.object({
5405
+ id: z75.string(),
5406
+ name: z75.string(),
5204
5407
  size: PluginSheetSize.nullable(),
5205
5408
  orientation: PluginSheetOrientation.nullable(),
5206
5409
  margin: PluginSheetMargin.nullable()
5207
5410
  });
5208
- var PluginSheetPosition = z73.object({
5209
- x: z73.number(),
5210
- y: z73.number()
5411
+ var PluginSheetPosition = z75.object({
5412
+ x: z75.number(),
5413
+ y: z75.number()
5211
5414
  });
5212
- var PluginPresentationSheetsListResult = z73.object({
5213
- sheets: z73.array(PluginPresentationSheet)
5415
+ var PluginPresentationSheetsListResult = z75.object({
5416
+ sheets: z75.array(PluginPresentationSheet)
5214
5417
  });
5215
- var PluginPresentationSheetsGetArgs = z73.object({
5216
- id: z73.string()
5418
+ var PluginPresentationSheetsGetArgs = z75.object({
5419
+ id: z75.string()
5217
5420
  });
5218
5421
  var PluginPresentationSheetsGetResult = PluginPresentationSheet.nullable();
5219
- var PluginPresentationSheetsCreateArgs = z73.object({
5220
- name: z73.string().optional(),
5422
+ var PluginPresentationSheetsCreateArgs = z75.object({
5423
+ name: z75.string().optional(),
5221
5424
  size: PluginSheetSize.optional(),
5222
5425
  orientation: PluginSheetOrientation.optional()
5223
5426
  });
5224
- var PluginPresentationSheetsSetSizeArgs = z73.object({
5225
- sheetId: z73.string(),
5427
+ var PluginPresentationSheetsSetSizeArgs = z75.object({
5428
+ sheetId: z75.string(),
5226
5429
  size: PluginSheetSize,
5227
5430
  orientation: PluginSheetOrientation.optional()
5228
5431
  });
5229
- var PluginPresentationSheetsSetMarginArgs = z73.object({
5230
- sheetId: z73.string(),
5432
+ var PluginPresentationSheetsSetMarginArgs = z75.object({
5433
+ sheetId: z75.string(),
5231
5434
  margin: PluginSheetMargin
5232
5435
  });
5233
- var PluginPresentationSheetsPlaceArgs = z73.object({
5234
- sheetId: z73.string(),
5235
- viewId: z73.string(),
5436
+ var PluginPresentationSheetsPlaceArgs = z75.object({
5437
+ sheetId: z75.string(),
5438
+ viewId: z75.string(),
5236
5439
  position: PluginSheetPosition.optional(),
5237
- scale: z73.number().positive().optional()
5440
+ scale: z75.number().positive().optional()
5238
5441
  });
5239
- var PluginPresentationSheetsPlaceResult = z73.object({
5240
- shapeId: z73.string()
5442
+ var PluginPresentationSheetsPlaceResult = z75.object({
5443
+ shapeId: z75.string()
5241
5444
  });
5242
- var PluginPresentationSheetsRenameArgs = z73.object({
5243
- sheetId: z73.string(),
5244
- name: z73.string().trim().min(1)
5445
+ var PluginPresentationSheetsRenameArgs = z75.object({
5446
+ sheetId: z75.string(),
5447
+ name: z75.string().trim().min(1)
5245
5448
  });
5246
- var PluginPresentationSheetsDeleteArgs = z73.object({
5247
- sheetId: z73.string()
5449
+ var PluginPresentationSheetsDeleteArgs = z75.object({
5450
+ sheetId: z75.string()
5248
5451
  });
5249
- var PluginPresentationSheetsDeleteResult = z73.object({
5250
- id: z73.string()
5452
+ var PluginPresentationSheetsDeleteResult = z75.object({
5453
+ id: z75.string()
5251
5454
  });
5252
- var PluginPresentationSheetsReorderArgs = z73.object({
5253
- sheetId: z73.string(),
5254
- index: z73.number().int().min(0)
5455
+ var PluginPresentationSheetsReorderArgs = z75.object({
5456
+ sheetId: z75.string(),
5457
+ index: z75.number().int().min(0)
5255
5458
  });
5256
- var PluginPresentationSheetsSetActiveArgs = z73.object({
5257
- sheetId: z73.string()
5459
+ var PluginPresentationSheetsSetActiveArgs = z75.object({
5460
+ sheetId: z75.string()
5258
5461
  });
5259
- var PluginPresentationSheetsUpdatePlacedViewArgs = z73.object({
5260
- sheetId: z73.string().optional()
5462
+ var PluginPresentationSheetsUpdatePlacedViewArgs = z75.object({
5463
+ sheetId: z75.string().optional()
5261
5464
  });
5262
- var PluginPresentationSheetsUpdatePlacedViewResult = z73.object({
5263
- shapeIds: z73.array(z73.string())
5465
+ var PluginPresentationSheetsUpdatePlacedViewResult = z75.object({
5466
+ shapeIds: z75.array(z75.string())
5264
5467
  });
5265
5468
 
5266
5469
  // src/api/presentation/placedViews.ts
5267
- var z74 = __toESM(require("zod"), 1);
5470
+ var z76 = __toESM(require("zod"), 1);
5268
5471
  var PluginPresentationPlacedViewsApi = class {
5269
5472
  constructor() {
5270
5473
  }
5271
5474
  };
5272
- var PluginPlacedViewCropPoint = z74.object({
5273
- x: z74.number().min(0).max(1),
5274
- y: z74.number().min(0).max(1)
5475
+ var PluginPlacedViewCropPoint = z76.object({
5476
+ x: z76.number().min(0).max(1),
5477
+ y: z76.number().min(0).max(1)
5275
5478
  });
5276
- var PluginPlacedViewCrop = z74.object({
5479
+ var PluginPlacedViewCrop = z76.object({
5277
5480
  topLeft: PluginPlacedViewCropPoint,
5278
5481
  bottomRight: PluginPlacedViewCropPoint
5279
5482
  }).refine(
5280
5483
  (c) => c.topLeft.x < c.bottomRight.x && c.topLeft.y < c.bottomRight.y,
5281
5484
  { message: "topLeft must be strictly less than bottomRight on both axes" }
5282
5485
  );
5283
- var PluginPlacedView = z74.object({
5284
- shapeId: z74.string(),
5285
- sheetId: z74.string().nullable(),
5286
- title: z74.string(),
5287
- viewId: z74.string(),
5486
+ var PluginPlacedView = z76.object({
5487
+ shapeId: z76.string(),
5488
+ sheetId: z76.string().nullable(),
5489
+ title: z76.string(),
5490
+ viewId: z76.string(),
5288
5491
  position: PluginSheetPosition,
5289
- size: z74.object({ width: z74.number(), height: z74.number() }),
5290
- scale: z74.number().nullable(),
5291
- is3d: z74.boolean(),
5292
- rotation: z74.number(),
5492
+ size: z76.object({ width: z76.number(), height: z76.number() }),
5493
+ scale: z76.number().nullable(),
5494
+ is3d: z76.boolean(),
5495
+ rotation: z76.number(),
5293
5496
  crop: PluginPlacedViewCrop.nullable(),
5294
- isUnlinked: z74.boolean()
5497
+ isUnlinked: z76.boolean()
5295
5498
  });
5296
- var PluginPresentationPlacedViewsListArgs = z74.object({
5297
- sheetId: z74.string().optional()
5499
+ var PluginPresentationPlacedViewsListArgs = z76.object({
5500
+ sheetId: z76.string().optional()
5298
5501
  });
5299
- var PluginPresentationPlacedViewsListResult = z74.object({
5300
- placedViews: z74.array(PluginPlacedView)
5502
+ var PluginPresentationPlacedViewsListResult = z76.object({
5503
+ placedViews: z76.array(PluginPlacedView)
5301
5504
  });
5302
- var PluginPresentationPlacedViewsGetArgs = z74.object({
5303
- shapeId: z74.string()
5505
+ var PluginPresentationPlacedViewsGetArgs = z76.object({
5506
+ shapeId: z76.string()
5304
5507
  });
5305
- var PluginPresentationPlacedViewsMoveArgs = z74.object({
5306
- shapeId: z74.string(),
5508
+ var PluginPresentationPlacedViewsMoveArgs = z76.object({
5509
+ shapeId: z76.string(),
5307
5510
  position: PluginSheetPosition,
5308
- sheetId: z74.string().optional()
5511
+ sheetId: z76.string().optional()
5309
5512
  });
5310
- var PluginPresentationPlacedViewsScaleArgs = z74.object({
5311
- shapeId: z74.string(),
5312
- factor: z74.number().finite().min(0.01).max(100)
5513
+ var PluginPresentationPlacedViewsScaleArgs = z76.object({
5514
+ shapeId: z76.string(),
5515
+ factor: z76.number().finite().min(0.01).max(100)
5313
5516
  });
5314
- var PluginPresentationPlacedViewsSetScaleArgs = z74.object({
5315
- shapeId: z74.string(),
5316
- scale: z74.number().positive()
5517
+ var PluginPresentationPlacedViewsSetScaleArgs = z76.object({
5518
+ shapeId: z76.string(),
5519
+ scale: z76.number().positive()
5317
5520
  });
5318
- var PluginPresentationPlacedViewsSetCropArgs = z74.object({
5319
- shapeId: z74.string(),
5521
+ var PluginPresentationPlacedViewsSetCropArgs = z76.object({
5522
+ shapeId: z76.string(),
5320
5523
  crop: PluginPlacedViewCrop.nullable()
5321
5524
  });
5322
- var PluginPresentationPlacedViewsSetRotationArgs = z74.object({
5323
- shapeId: z74.string().min(1),
5324
- rotation: z74.number().finite()
5525
+ var PluginPresentationPlacedViewsSetRotationArgs = z76.object({
5526
+ shapeId: z76.string().min(1),
5527
+ rotation: z76.number().finite()
5325
5528
  });
5326
- var PluginViewSettingCategory = z74.enum([
5529
+ var PluginViewSettingCategory = z76.enum([
5327
5530
  "Site",
5328
5531
  "Topography",
5329
5532
  "Space",
@@ -5335,7 +5538,7 @@ var PluginViewSettingCategory = z74.enum([
5335
5538
  "Adjacency Line",
5336
5539
  "Landscape elements"
5337
5540
  ]);
5338
- var PluginViewLineStyle = z74.enum([
5541
+ var PluginViewLineStyle = z76.enum([
5339
5542
  "solid",
5340
5543
  "dashed",
5341
5544
  "dashdot",
@@ -5344,62 +5547,62 @@ var PluginViewLineStyle = z74.enum([
5344
5547
  "phantom",
5345
5548
  "propertyLine"
5346
5549
  ]);
5347
- var PluginPlacedViewStylePatch = z74.object({
5348
- hide: z74.boolean().optional(),
5550
+ var PluginPlacedViewStylePatch = z76.object({
5551
+ hide: z76.boolean().optional(),
5349
5552
  lineStyle: PluginViewLineStyle.optional(),
5350
- lineColor: z74.string().regex(/^#?[0-9a-fA-F]{6}$/, "lineColor must be a 6-digit hex color").optional(),
5351
- dashLength: z74.number().finite().positive().optional(),
5352
- lineWidth: z74.number().finite().min(0).optional(),
5353
- cutWidth: z74.number().finite().min(0).optional(),
5354
- projectionWidth: z74.number().finite().min(0).optional(),
5355
- treeLineWidth: z74.number().finite().min(0).optional(),
5356
- parkingLineWidth: z74.number().finite().min(0).optional(),
5357
- colorMode: z74.string().refine(
5553
+ lineColor: z76.string().regex(/^#?[0-9a-fA-F]{6}$/, "lineColor must be a 6-digit hex color").optional(),
5554
+ dashLength: z76.number().finite().positive().optional(),
5555
+ lineWidth: z76.number().finite().min(0).optional(),
5556
+ cutWidth: z76.number().finite().min(0).optional(),
5557
+ projectionWidth: z76.number().finite().min(0).optional(),
5558
+ treeLineWidth: z76.number().finite().min(0).optional(),
5559
+ parkingLineWidth: z76.number().finite().min(0).optional(),
5560
+ colorMode: z76.string().refine(
5358
5561
  (v) => ["department", "texture", "monochrome"].includes(v) || v.startsWith("tag:"),
5359
5562
  { message: "colorMode must be department, texture, monochrome, or tag:<tagCategoryId>" }
5360
5563
  ).optional(),
5361
- opacity: z74.number().finite().min(0).max(100).optional(),
5362
- mapOpacity: z74.number().finite().min(0).max(100).optional(),
5363
- buildingOpacity: z74.number().finite().min(0).max(100).optional(),
5364
- mapHide: z74.boolean().optional(),
5365
- buildingHide: z74.boolean().optional(),
5366
- noBuilding: z74.boolean().optional(),
5367
- viewStyle: z74.enum(["NONE", "FILLET", "BUBBLE"]).optional(),
5368
- radius: z74.number().finite().min(0).optional(),
5369
- inset: z74.number().finite().min(0).optional()
5564
+ opacity: z76.number().finite().min(0).max(100).optional(),
5565
+ mapOpacity: z76.number().finite().min(0).max(100).optional(),
5566
+ buildingOpacity: z76.number().finite().min(0).max(100).optional(),
5567
+ mapHide: z76.boolean().optional(),
5568
+ buildingHide: z76.boolean().optional(),
5569
+ noBuilding: z76.boolean().optional(),
5570
+ viewStyle: z76.enum(["NONE", "FILLET", "BUBBLE"]).optional(),
5571
+ radius: z76.number().finite().min(0).optional(),
5572
+ inset: z76.number().finite().min(0).optional()
5370
5573
  }).strict().refine((p) => Object.keys(p).length > 0, { message: "patch must set at least one setting" });
5371
- var PluginViewLabelType = z74.enum(["objectLabels", "department", "areas"]);
5372
- var PluginViewFontVariantPatch = z74.object({
5373
- fontFamily: z74.string().min(1).optional(),
5374
- fontWeight: z74.string().regex(/^\d{3}$/, 'fontWeight must be a numeric string like "400" or "700"').optional(),
5375
- fontStyle: z74.enum(["normal", "italic"]).optional(),
5376
- fontSize: z74.number().finite().positive().max(200).optional()
5574
+ var PluginViewLabelType = z76.enum(["objectLabels", "department", "areas"]);
5575
+ var PluginViewFontVariantPatch = z76.object({
5576
+ fontFamily: z76.string().min(1).optional(),
5577
+ fontWeight: z76.string().regex(/^\d{3}$/, 'fontWeight must be a numeric string like "400" or "700"').optional(),
5578
+ fontStyle: z76.enum(["normal", "italic"]).optional(),
5579
+ fontSize: z76.number().finite().positive().max(200).optional()
5377
5580
  }).strict();
5378
- var PluginPlacedViewFontStylesPatch = z74.object({
5379
- visibleTypes: z74.array(PluginViewLabelType).optional(),
5581
+ var PluginPlacedViewFontStylesPatch = z76.object({
5582
+ visibleTypes: z76.array(PluginViewLabelType).optional(),
5380
5583
  objectLabels: PluginViewFontVariantPatch.optional(),
5381
5584
  department: PluginViewFontVariantPatch.optional(),
5382
5585
  areas: PluginViewFontVariantPatch.optional()
5383
5586
  }).strict().refine((p) => Object.keys(p).length > 0, { message: "patch must set at least one field" });
5384
- var PluginPlacedViewsUpdateStylesArgs = z74.object({
5385
- shapeId: z74.string().min(1),
5587
+ var PluginPlacedViewsUpdateStylesArgs = z76.object({
5588
+ shapeId: z76.string().min(1),
5386
5589
  category: PluginViewSettingCategory,
5387
5590
  patch: PluginPlacedViewStylePatch
5388
5591
  });
5389
- var PluginPlacedViewsUpdateFontStylesArgs = z74.object({
5390
- shapeId: z74.string().min(1),
5592
+ var PluginPlacedViewsUpdateFontStylesArgs = z76.object({
5593
+ shapeId: z76.string().min(1),
5391
5594
  category: PluginViewSettingCategory,
5392
5595
  patch: PluginPlacedViewFontStylesPatch
5393
5596
  });
5394
- var PluginPlacedViewsMoveLabelArgs = z74.object({
5395
- labelId: z74.string().min(1),
5597
+ var PluginPlacedViewsMoveLabelArgs = z76.object({
5598
+ labelId: z76.string().min(1),
5396
5599
  position: PluginSheetPosition
5397
5600
  });
5398
- var PluginPlacedViewsSetLabelHiddenArgs = z74.object({
5399
- labelId: z74.string().min(1),
5400
- hidden: z74.boolean()
5601
+ var PluginPlacedViewsSetLabelHiddenArgs = z76.object({
5602
+ labelId: z76.string().min(1),
5603
+ hidden: z76.boolean()
5401
5604
  });
5402
- var PluginCanvasShapeOrigin = z74.enum([
5605
+ var PluginCanvasShapeOrigin = z76.enum([
5403
5606
  "view",
5404
5607
  "aiOutput",
5405
5608
  "diagram",
@@ -5408,65 +5611,65 @@ var PluginCanvasShapeOrigin = z74.enum([
5408
5611
  "image",
5409
5612
  "other"
5410
5613
  ]);
5411
- var PluginPlacedViewsMoveShapeArgs = z74.object({
5412
- shapeId: z74.string().min(1),
5614
+ var PluginPlacedViewsMoveShapeArgs = z76.object({
5615
+ shapeId: z76.string().min(1),
5413
5616
  position: PluginSheetPosition,
5414
- sheetId: z74.string().optional()
5617
+ sheetId: z76.string().optional()
5415
5618
  });
5416
- var PluginPlacedViewsResizeShapeArgs = z74.object({
5417
- shapeId: z74.string().min(1),
5418
- factor: z74.number().finite().min(0.01).max(100)
5619
+ var PluginPlacedViewsResizeShapeArgs = z76.object({
5620
+ shapeId: z76.string().min(1),
5621
+ factor: z76.number().finite().min(0.01).max(100)
5419
5622
  });
5420
- var PluginPresentationPlacedViewsRotateShapeArgs = z74.object({
5421
- shapeId: z74.string().min(1),
5422
- rotation: z74.number().finite()
5623
+ var PluginPresentationPlacedViewsRotateShapeArgs = z76.object({
5624
+ shapeId: z76.string().min(1),
5625
+ rotation: z76.number().finite()
5423
5626
  });
5424
- var PluginPlacedViewsDeleteShapesArgs = z74.object({
5425
- shapeIds: z74.array(z74.string().min(1)).min(1).max(500)
5627
+ var PluginPlacedViewsDeleteShapesArgs = z76.object({
5628
+ shapeIds: z76.array(z76.string().min(1)).min(1).max(500)
5426
5629
  });
5427
- var PluginPlacedViewsSetOpacityArgs = z74.object({
5428
- shapeId: z74.string().min(1),
5429
- opacity: z74.number().finite().min(0).max(1)
5630
+ var PluginPlacedViewsSetOpacityArgs = z76.object({
5631
+ shapeId: z76.string().min(1),
5632
+ opacity: z76.number().finite().min(0).max(1)
5430
5633
  });
5431
- var PluginPlacedViewsSetMaskArgs = z74.object({
5432
- shapeId: z74.string().min(1),
5433
- enabled: z74.boolean()
5634
+ var PluginPlacedViewsSetMaskArgs = z76.object({
5635
+ shapeId: z76.string().min(1),
5636
+ enabled: z76.boolean()
5434
5637
  });
5435
5638
 
5436
5639
  // src/api/presentation/diagrams.ts
5437
- var z75 = __toESM(require("zod"), 1);
5640
+ var z77 = __toESM(require("zod"), 1);
5438
5641
  var PluginPresentationDiagramsApi = class {
5439
5642
  constructor() {
5440
5643
  }
5441
5644
  };
5442
- var PluginPresentationDiagramsPlaceArgs = z75.object({
5443
- sheetId: z75.string(),
5444
- urls: z75.array(z75.string()),
5445
- position: z75.object({ x: z75.number(), y: z75.number() }).optional()
5645
+ var PluginPresentationDiagramsPlaceArgs = z77.object({
5646
+ sheetId: z77.string(),
5647
+ urls: z77.array(z77.string()),
5648
+ position: z77.object({ x: z77.number(), y: z77.number() }).optional()
5446
5649
  });
5447
- var PluginPresentationDiagramsPlaceResult = z75.object({
5448
- shapeIds: z75.array(z75.string())
5650
+ var PluginPresentationDiagramsPlaceResult = z77.object({
5651
+ shapeIds: z77.array(z77.string())
5449
5652
  });
5450
- var PluginPresentationSiteDiagramType = z75.enum([
5653
+ var PluginPresentationSiteDiagramType = z77.enum([
5451
5654
  "location",
5452
5655
  "streetview",
5453
5656
  "climate"
5454
5657
  ]);
5455
- var PluginPresentationDiagramsGenerateSiteArgs = z75.object({
5456
- types: z75.array(PluginPresentationSiteDiagramType).min(1).optional()
5658
+ var PluginPresentationDiagramsGenerateSiteArgs = z77.object({
5659
+ types: z77.array(PluginPresentationSiteDiagramType).min(1).optional()
5457
5660
  });
5458
- var PluginPresentationDiagramsGenerateResult = z75.object({
5459
- sheetIds: z75.array(z75.string())
5661
+ var PluginPresentationDiagramsGenerateResult = z77.object({
5662
+ sheetIds: z77.array(z77.string())
5460
5663
  });
5461
5664
 
5462
5665
  // src/api/presentation/annotate.ts
5463
- var z76 = __toESM(require("zod"), 1);
5666
+ var z78 = __toESM(require("zod"), 1);
5464
5667
  var PluginPresentationAnnotateApi = class {
5465
5668
  constructor() {
5466
5669
  }
5467
5670
  };
5468
- var PluginAnnotateTextSize = z76.enum(["s", "m", "l", "xl"]);
5469
- var PluginAnnotateTextColor = z76.enum([
5671
+ var PluginAnnotateTextSize = z78.enum(["s", "m", "l", "xl"]);
5672
+ var PluginAnnotateTextColor = z78.enum([
5470
5673
  "black",
5471
5674
  "grey",
5472
5675
  "light-violet",
@@ -5481,23 +5684,23 @@ var PluginAnnotateTextColor = z76.enum([
5481
5684
  "red",
5482
5685
  "white"
5483
5686
  ]);
5484
- var PluginPresentationAnnotateTextArgs = z76.object({
5485
- sheetId: z76.string(),
5486
- text: z76.string(),
5487
- position: z76.object({ x: z76.number(), y: z76.number() }).optional(),
5687
+ var PluginPresentationAnnotateTextArgs = z78.object({
5688
+ sheetId: z78.string(),
5689
+ text: z78.string(),
5690
+ position: z78.object({ x: z78.number(), y: z78.number() }).optional(),
5488
5691
  size: PluginAnnotateTextSize.optional(),
5489
5692
  color: PluginAnnotateTextColor.optional(),
5490
- fontFamily: z76.string().min(1).optional(),
5491
- fontWeight: z76.string().regex(
5693
+ fontFamily: z78.string().min(1).optional(),
5694
+ fontWeight: z78.string().regex(
5492
5695
  /^\d{3}(-italic)?$/,
5493
5696
  'fontWeight must be a numeric string like "400" or "700", optionally with the "-italic" suffix'
5494
5697
  ).optional(),
5495
- fontSizePx: z76.number().finite().positive().optional()
5698
+ fontSizePx: z78.number().finite().positive().optional()
5496
5699
  });
5497
- var PluginPresentationAnnotateTextResult = z76.object({
5498
- shapeId: z76.string()
5700
+ var PluginPresentationAnnotateTextResult = z78.object({
5701
+ shapeId: z78.string()
5499
5702
  });
5500
- var PluginAnnotateGeoKind = z76.enum([
5703
+ var PluginAnnotateGeoKind = z78.enum([
5501
5704
  "rectangle",
5502
5705
  "ellipse",
5503
5706
  "triangle",
@@ -5515,358 +5718,358 @@ var PluginAnnotateGeoKind = z76.enum([
5515
5718
  "arrow-right",
5516
5719
  "arrow-down"
5517
5720
  ]);
5518
- var PluginAnnotateFill = z76.enum(["none", "semi", "solid", "pattern"]);
5519
- var PluginPresentationAnnotateArrowArgs = z76.object({
5520
- sheetId: z76.string(),
5521
- start: z76.object({ x: z76.number(), y: z76.number() }),
5522
- end: z76.object({ x: z76.number(), y: z76.number() }),
5721
+ var PluginAnnotateFill = z78.enum(["none", "semi", "solid", "pattern"]);
5722
+ var PluginPresentationAnnotateArrowArgs = z78.object({
5723
+ sheetId: z78.string(),
5724
+ start: z78.object({ x: z78.number(), y: z78.number() }),
5725
+ end: z78.object({ x: z78.number(), y: z78.number() }),
5523
5726
  color: PluginAnnotateTextColor.optional(),
5524
5727
  size: PluginAnnotateTextSize.optional()
5525
5728
  });
5526
- var PluginPresentationAnnotateNoteArgs = z76.object({
5527
- sheetId: z76.string(),
5528
- text: z76.string(),
5529
- position: z76.object({ x: z76.number(), y: z76.number() }).optional(),
5729
+ var PluginPresentationAnnotateNoteArgs = z78.object({
5730
+ sheetId: z78.string(),
5731
+ text: z78.string(),
5732
+ position: z78.object({ x: z78.number(), y: z78.number() }).optional(),
5530
5733
  color: PluginAnnotateTextColor.optional(),
5531
5734
  size: PluginAnnotateTextSize.optional()
5532
5735
  });
5533
- var PluginPresentationAnnotateShapeArgs = z76.object({
5534
- sheetId: z76.string(),
5736
+ var PluginPresentationAnnotateShapeArgs = z78.object({
5737
+ sheetId: z78.string(),
5535
5738
  kind: PluginAnnotateGeoKind,
5536
- bounds: z76.object({
5537
- x: z76.number(),
5538
- y: z76.number(),
5539
- w: z76.number().positive(),
5540
- h: z76.number().positive()
5739
+ bounds: z78.object({
5740
+ x: z78.number(),
5741
+ y: z78.number(),
5742
+ w: z78.number().positive(),
5743
+ h: z78.number().positive()
5541
5744
  }),
5542
5745
  color: PluginAnnotateTextColor.optional(),
5543
5746
  fill: PluginAnnotateFill.optional()
5544
5747
  });
5545
- var PluginPresentationAnnotateResult = z76.object({
5546
- shapeId: z76.string()
5748
+ var PluginPresentationAnnotateResult = z78.object({
5749
+ shapeId: z78.string()
5547
5750
  });
5548
5751
 
5549
5752
  // src/api/presentation/shapes.ts
5550
- var z77 = __toESM(require("zod"), 1);
5753
+ var z79 = __toESM(require("zod"), 1);
5551
5754
  var PluginPresentationShapesApi = class {
5552
5755
  constructor() {
5553
5756
  }
5554
5757
  };
5555
- var PluginPresentationShapeSpec = z77.discriminatedUnion("type", [
5556
- z77.object({
5557
- type: z77.literal("text"),
5558
- text: z77.string(),
5559
- position: z77.object({ x: z77.number(), y: z77.number() }).optional(),
5758
+ var PluginPresentationShapeSpec = z79.discriminatedUnion("type", [
5759
+ z79.object({
5760
+ type: z79.literal("text"),
5761
+ text: z79.string(),
5762
+ position: z79.object({ x: z79.number(), y: z79.number() }).optional(),
5560
5763
  size: PluginAnnotateTextSize.optional(),
5561
5764
  color: PluginAnnotateTextColor.optional()
5562
5765
  }),
5563
- z77.object({
5564
- type: z77.literal("note"),
5565
- text: z77.string(),
5566
- position: z77.object({ x: z77.number(), y: z77.number() }).optional(),
5766
+ z79.object({
5767
+ type: z79.literal("note"),
5768
+ text: z79.string(),
5769
+ position: z79.object({ x: z79.number(), y: z79.number() }).optional(),
5567
5770
  color: PluginAnnotateTextColor.optional(),
5568
5771
  size: PluginAnnotateTextSize.optional()
5569
5772
  }),
5570
- z77.object({
5571
- type: z77.literal("arrow"),
5572
- start: z77.object({ x: z77.number(), y: z77.number() }),
5573
- end: z77.object({ x: z77.number(), y: z77.number() }),
5773
+ z79.object({
5774
+ type: z79.literal("arrow"),
5775
+ start: z79.object({ x: z79.number(), y: z79.number() }),
5776
+ end: z79.object({ x: z79.number(), y: z79.number() }),
5574
5777
  color: PluginAnnotateTextColor.optional(),
5575
5778
  size: PluginAnnotateTextSize.optional()
5576
5779
  }),
5577
- z77.object({
5578
- type: z77.literal("geo"),
5780
+ z79.object({
5781
+ type: z79.literal("geo"),
5579
5782
  kind: PluginAnnotateGeoKind,
5580
- bounds: z77.object({
5581
- x: z77.number(),
5582
- y: z77.number(),
5583
- w: z77.number().positive(),
5584
- h: z77.number().positive()
5783
+ bounds: z79.object({
5784
+ x: z79.number(),
5785
+ y: z79.number(),
5786
+ w: z79.number().positive(),
5787
+ h: z79.number().positive()
5585
5788
  }),
5586
5789
  color: PluginAnnotateTextColor.optional(),
5587
5790
  fill: PluginAnnotateFill.optional()
5588
5791
  })
5589
5792
  ]);
5590
- var PluginPresentationShapeType = z77.enum([
5793
+ var PluginPresentationShapeType = z79.enum([
5591
5794
  "text",
5592
5795
  "note",
5593
5796
  "arrow",
5594
5797
  "geo"
5595
5798
  ]);
5596
- var PluginPresentationShapesUpsertArgs = z77.object({
5597
- key: z77.string().min(1),
5799
+ var PluginPresentationShapesUpsertArgs = z79.object({
5800
+ key: z79.string().min(1),
5598
5801
  shape: PluginPresentationShapeSpec,
5599
- sheetId: z77.string().optional()
5802
+ sheetId: z79.string().optional()
5600
5803
  });
5601
- var PluginPresentationShapesUpsertResult = z77.object({
5602
- shapeId: z77.string(),
5603
- created: z77.boolean()
5804
+ var PluginPresentationShapesUpsertResult = z79.object({
5805
+ shapeId: z79.string(),
5806
+ created: z79.boolean()
5604
5807
  });
5605
- var PluginPresentationShapesRemoveArgs = z77.object({
5606
- key: z77.string().min(1)
5808
+ var PluginPresentationShapesRemoveArgs = z79.object({
5809
+ key: z79.string().min(1)
5607
5810
  });
5608
- var PluginPresentationShapesListResult = z77.object({
5609
- shapes: z77.array(
5610
- z77.object({
5611
- key: z77.string(),
5612
- shapeId: z77.string(),
5811
+ var PluginPresentationShapesListResult = z79.object({
5812
+ shapes: z79.array(
5813
+ z79.object({
5814
+ key: z79.string(),
5815
+ shapeId: z79.string(),
5613
5816
  type: PluginPresentationShapeType
5614
5817
  })
5615
5818
  )
5616
5819
  });
5617
5820
 
5618
5821
  // src/api/presentation/tables.ts
5619
- var z78 = __toESM(require("zod"), 1);
5822
+ var z80 = __toESM(require("zod"), 1);
5620
5823
  var PluginPresentationTablesApi = class {
5621
5824
  constructor() {
5622
5825
  }
5623
5826
  };
5624
- var PluginPresentationTablesPlaceArgs = z78.object({
5625
- sheetId: z78.string().min(1),
5626
- rows: z78.array(z78.array(z78.string()).min(1)).min(1).refine((rows) => rows.reduce((n, r) => n + r.length, 0) <= 1e4, {
5827
+ var PluginPresentationTablesPlaceArgs = z80.object({
5828
+ sheetId: z80.string().min(1),
5829
+ rows: z80.array(z80.array(z80.string()).min(1)).min(1).refine((rows) => rows.reduce((n, r) => n + r.length, 0) <= 1e4, {
5627
5830
  message: "table exceeds the 10000-cell cap"
5628
5831
  }),
5629
- position: z78.object({ x: z78.number(), y: z78.number() }).optional()
5832
+ position: z80.object({ x: z80.number(), y: z80.number() }).optional()
5630
5833
  });
5631
5834
 
5632
5835
  // src/api/presentation/slideshow.ts
5633
- var z79 = __toESM(require("zod"), 1);
5836
+ var z81 = __toESM(require("zod"), 1);
5634
5837
  var PluginPresentationSlideshowApi = class {
5635
5838
  constructor() {
5636
5839
  }
5637
5840
  };
5638
- var PluginPresentationSlideshowStartArgs = z79.object({
5639
- sheetIds: z79.array(z79.string().min(1)).optional(),
5640
- startIndex: z79.number().int().min(0).optional()
5841
+ var PluginPresentationSlideshowStartArgs = z81.object({
5842
+ sheetIds: z81.array(z81.string().min(1)).optional(),
5843
+ startIndex: z81.number().int().min(0).optional()
5641
5844
  });
5642
- var PluginPresentationSlideshowState = z79.object({
5643
- running: z79.boolean(),
5644
- index: z79.number().int().nullable()
5845
+ var PluginPresentationSlideshowState = z81.object({
5846
+ running: z81.boolean(),
5847
+ index: z81.number().int().nullable()
5645
5848
  });
5646
5849
 
5647
5850
  // src/api/presentation/import.ts
5648
- var z80 = __toESM(require("zod"), 1);
5851
+ var z82 = __toESM(require("zod"), 1);
5649
5852
  var PluginPresentationImportApi = class {
5650
5853
  constructor() {
5651
5854
  }
5652
5855
  };
5653
- var PluginPresentationImportArgs = z80.object({
5654
- url: z80.string().optional(),
5655
- dataUrl: z80.string().optional(),
5656
- position: z80.object({ x: z80.number(), y: z80.number() }).optional()
5856
+ var PluginPresentationImportArgs = z82.object({
5857
+ url: z82.string().optional(),
5858
+ dataUrl: z82.string().optional(),
5859
+ position: z82.object({ x: z82.number(), y: z82.number() }).optional()
5657
5860
  }).refine((a) => Boolean(a.url) || Boolean(a.dataUrl), {
5658
5861
  message: "Provide a url or a dataUrl"
5659
5862
  });
5660
- var PluginPresentationImportResult = z80.object({
5661
- shapeIds: z80.array(z80.string())
5863
+ var PluginPresentationImportResult = z82.object({
5864
+ shapeIds: z82.array(z82.string())
5662
5865
  });
5663
5866
 
5664
5867
  // src/api/presentation/aiInspiration.ts
5665
- var z81 = __toESM(require("zod"), 1);
5666
- var JsonPrimitive = z81.union([z81.string(), z81.number(), z81.boolean(), z81.null()]);
5667
- var JsonValue = z81.lazy(
5668
- () => z81.union([JsonPrimitive, z81.array(JsonValue), z81.record(z81.string(), JsonValue)])
5868
+ var z83 = __toESM(require("zod"), 1);
5869
+ var JsonPrimitive = z83.union([z83.string(), z83.number(), z83.boolean(), z83.null()]);
5870
+ var JsonValue = z83.lazy(
5871
+ () => z83.union([JsonPrimitive, z83.array(JsonValue), z83.record(z83.string(), JsonValue)])
5669
5872
  );
5670
- var PluginAIInspirationRunMode = z81.enum(["blocking", "job"]);
5671
- var PluginAIInspirationOutputKind = z81.enum([
5873
+ var PluginAIInspirationRunMode = z83.enum(["blocking", "job"]);
5874
+ var PluginAIInspirationOutputKind = z83.enum([
5672
5875
  "source",
5673
5876
  "image",
5674
5877
  "video"
5675
5878
  ]);
5676
- var PluginAIInspirationModelOutput = z81.enum(["image", "video"]);
5677
- var PluginAIInspirationRuntimeProvider = z81.enum(["gpt", "fal"]);
5678
- var PluginAIInspirationPromptStrategy = z81.enum([
5879
+ var PluginAIInspirationModelOutput = z83.enum(["image", "video"]);
5880
+ var PluginAIInspirationRuntimeProvider = z83.enum(["gpt", "fal"]);
5881
+ var PluginAIInspirationPromptStrategy = z83.enum([
5679
5882
  "gpt-image",
5680
5883
  "fal-image",
5681
5884
  "fal-video"
5682
5885
  ]);
5683
- var PluginAIInspirationShapeKind = z81.enum(["image", "view", "video"]);
5684
- var PluginAIInspirationVideoMode = z81.enum([
5886
+ var PluginAIInspirationShapeKind = z83.enum(["image", "view", "video"]);
5887
+ var PluginAIInspirationVideoMode = z83.enum([
5685
5888
  "animate",
5686
5889
  "references",
5687
5890
  "keyframes"
5688
5891
  ]);
5689
- var PluginAIInspirationVideoMotion = z81.enum([
5892
+ var PluginAIInspirationVideoMotion = z83.enum([
5690
5893
  "auto",
5691
5894
  "slow-dolly",
5692
5895
  "subtle-orbit",
5693
5896
  "reveal"
5694
5897
  ]);
5695
- var PluginAIInspirationVideoDuration = z81.enum(["4s", "6s", "8s"]);
5696
- var PluginAIInspirationJobStatus = z81.enum([
5898
+ var PluginAIInspirationVideoDuration = z83.enum(["4s", "6s", "8s"]);
5899
+ var PluginAIInspirationJobStatus = z83.enum([
5697
5900
  "queued",
5698
5901
  "running",
5699
5902
  "completed",
5700
5903
  "failed",
5701
5904
  "cancelled"
5702
5905
  ]);
5703
- var PluginAIInspirationWorkflowRunState = z81.enum([
5906
+ var PluginAIInspirationWorkflowRunState = z83.enum([
5704
5907
  "current",
5705
5908
  "stale",
5706
5909
  "running",
5707
5910
  "failed",
5708
5911
  "superseded"
5709
5912
  ]);
5710
- var PluginAIInspirationRegionHint = z81.object({
5711
- x: z81.number().finite(),
5712
- y: z81.number().finite(),
5713
- w: z81.number().finite().positive(),
5714
- h: z81.number().finite().positive()
5715
- });
5716
- var PluginAIInspirationPoint = z81.object({
5717
- x: z81.number().finite(),
5718
- y: z81.number().finite()
5719
- });
5720
- var PluginAIInspirationTextAnnotation = z81.object({
5721
- text: z81.string().min(1),
5722
- x: z81.number().finite().optional(),
5723
- y: z81.number().finite().optional()
5724
- });
5725
- var PluginAIInspirationSketchGuidance = z81.object({
5726
- visualShapeIds: z81.array(z81.string()).optional(),
5727
- textAnnotations: z81.array(PluginAIInspirationTextAnnotation).optional()
5728
- });
5729
- var PluginAIInspirationSiteOptions = z81.object({
5730
- includeSatellite: z81.boolean().optional(),
5731
- includeStreetView: z81.boolean().optional(),
5732
- includeAerial: z81.boolean().optional(),
5733
- aerialBearing: z81.number().finite().optional(),
5734
- aerialPitch: z81.number().finite().optional(),
5735
- selectedDiagramIds: z81.array(z81.string()).optional(),
5736
- location: z81.object({
5737
- lat: z81.number().finite(),
5738
- lng: z81.number().finite()
5913
+ var PluginAIInspirationRegionHint = z83.object({
5914
+ x: z83.number().finite(),
5915
+ y: z83.number().finite(),
5916
+ w: z83.number().finite().positive(),
5917
+ h: z83.number().finite().positive()
5918
+ });
5919
+ var PluginAIInspirationPoint = z83.object({
5920
+ x: z83.number().finite(),
5921
+ y: z83.number().finite()
5922
+ });
5923
+ var PluginAIInspirationTextAnnotation = z83.object({
5924
+ text: z83.string().min(1),
5925
+ x: z83.number().finite().optional(),
5926
+ y: z83.number().finite().optional()
5927
+ });
5928
+ var PluginAIInspirationSketchGuidance = z83.object({
5929
+ visualShapeIds: z83.array(z83.string()).optional(),
5930
+ textAnnotations: z83.array(PluginAIInspirationTextAnnotation).optional()
5931
+ });
5932
+ var PluginAIInspirationSiteOptions = z83.object({
5933
+ includeSatellite: z83.boolean().optional(),
5934
+ includeStreetView: z83.boolean().optional(),
5935
+ includeAerial: z83.boolean().optional(),
5936
+ aerialBearing: z83.number().finite().optional(),
5937
+ aerialPitch: z83.number().finite().optional(),
5938
+ selectedDiagramIds: z83.array(z83.string()).optional(),
5939
+ location: z83.object({
5940
+ lat: z83.number().finite(),
5941
+ lng: z83.number().finite()
5739
5942
  }).optional()
5740
5943
  });
5741
- var PluginAIInspirationAppliedPreset = z81.object({
5742
- source: z81.enum(["curated", "user"]),
5743
- presetId: z81.string().min(1),
5744
- name: z81.string().min(1),
5745
- savedPresetKind: z81.enum(["prompt", "style"]).optional(),
5746
- stylePrompt: z81.string().optional(),
5747
- modelId: z81.string().optional(),
5748
- referenceImages: z81.array(
5749
- z81.object({
5750
- url: z81.string().min(1),
5751
- label: z81.string().optional(),
5752
- weight: z81.number().finite().optional()
5944
+ var PluginAIInspirationAppliedPreset = z83.object({
5945
+ source: z83.enum(["curated", "user"]),
5946
+ presetId: z83.string().min(1),
5947
+ name: z83.string().min(1),
5948
+ savedPresetKind: z83.enum(["prompt", "style"]).optional(),
5949
+ stylePrompt: z83.string().optional(),
5950
+ modelId: z83.string().optional(),
5951
+ referenceImages: z83.array(
5952
+ z83.object({
5953
+ url: z83.string().min(1),
5954
+ label: z83.string().optional(),
5955
+ weight: z83.number().finite().optional()
5753
5956
  })
5754
5957
  ).optional(),
5755
- siteDefaults: z81.object({
5756
- includeSatellite: z81.boolean().optional(),
5757
- includeStreetView: z81.boolean().optional(),
5758
- includeAerial: z81.boolean().optional()
5958
+ siteDefaults: z83.object({
5959
+ includeSatellite: z83.boolean().optional(),
5960
+ includeStreetView: z83.boolean().optional(),
5961
+ includeAerial: z83.boolean().optional()
5759
5962
  }).optional()
5760
5963
  });
5761
- var PluginAIInspirationVideoOptions = z81.object({
5964
+ var PluginAIInspirationVideoOptions = z83.object({
5762
5965
  mode: PluginAIInspirationVideoMode.optional(),
5763
- endFrameShapeId: z81.string().optional(),
5966
+ endFrameShapeId: z83.string().optional(),
5764
5967
  motion: PluginAIInspirationVideoMotion.optional(),
5765
5968
  duration: PluginAIInspirationVideoDuration.optional()
5766
5969
  });
5767
- var PluginAIInspirationModel = z81.object({
5768
- id: z81.string(),
5769
- label: z81.string(),
5770
- supportsMultiImage: z81.boolean(),
5970
+ var PluginAIInspirationModel = z83.object({
5971
+ id: z83.string(),
5972
+ label: z83.string(),
5973
+ supportsMultiImage: z83.boolean(),
5771
5974
  output: PluginAIInspirationModelOutput,
5772
- isDefault: z81.boolean().optional()
5975
+ isDefault: z83.boolean().optional()
5773
5976
  });
5774
- var PluginAIInspirationModelCapability = z81.object({
5775
- id: z81.string(),
5977
+ var PluginAIInspirationModelCapability = z83.object({
5978
+ id: z83.string(),
5776
5979
  output: PluginAIInspirationModelOutput,
5777
5980
  provider: PluginAIInspirationRuntimeProvider,
5778
- supportsRegionEdit: z81.boolean(),
5779
- supportsReferenceImages: z81.boolean(),
5780
- supportsStylePresets: z81.boolean(),
5781
- supportsSiteContext: z81.boolean(),
5782
- supportsSketchGuidance: z81.boolean(),
5783
- supportsKeyframes: z81.boolean(),
5784
- maxExtraImages: z81.number().int().nonnegative(),
5981
+ supportsRegionEdit: z83.boolean(),
5982
+ supportsReferenceImages: z83.boolean(),
5983
+ supportsStylePresets: z83.boolean(),
5984
+ supportsSiteContext: z83.boolean(),
5985
+ supportsSketchGuidance: z83.boolean(),
5986
+ supportsKeyframes: z83.boolean(),
5987
+ maxExtraImages: z83.number().int().nonnegative(),
5785
5988
  promptStrategy: PluginAIInspirationPromptStrategy
5786
5989
  });
5787
- var PluginAIInspirationListModelsResult = z81.object({
5788
- defaultModelId: z81.string(),
5789
- models: z81.array(PluginAIInspirationModel)
5990
+ var PluginAIInspirationListModelsResult = z83.object({
5991
+ defaultModelId: z83.string(),
5992
+ models: z83.array(PluginAIInspirationModel)
5790
5993
  });
5791
- var PluginAIInspirationGetModelCapabilitiesArgs = z81.object({
5792
- modelId: z81.string().min(1)
5994
+ var PluginAIInspirationGetModelCapabilitiesArgs = z83.object({
5995
+ modelId: z83.string().min(1)
5793
5996
  });
5794
- var PluginAIInspirationGetModelCapabilitiesResult = z81.object({
5997
+ var PluginAIInspirationGetModelCapabilitiesResult = z83.object({
5795
5998
  capability: PluginAIInspirationModelCapability
5796
5999
  });
5797
- var PluginAIInspirationShapeRef = z81.object({
5798
- shapeId: z81.string(),
5799
- assetId: z81.string().optional(),
6000
+ var PluginAIInspirationShapeRef = z83.object({
6001
+ shapeId: z83.string(),
6002
+ assetId: z83.string().optional(),
5800
6003
  kind: PluginAIInspirationShapeKind,
5801
- name: z81.string().optional(),
5802
- width: z81.number().finite().optional(),
5803
- height: z81.number().finite().optional(),
6004
+ name: z83.string().optional(),
6005
+ width: z83.number().finite().optional(),
6006
+ height: z83.number().finite().optional(),
5804
6007
  outputType: PluginAIInspirationOutputKind.optional(),
5805
- sourceUrl: z81.string().optional()
5806
- });
5807
- var PluginAIInspirationListSourcesArgs = z81.object({
5808
- includeGenerated: z81.boolean().optional(),
5809
- includeSourceUrl: z81.boolean().optional()
5810
- });
5811
- var PluginAIInspirationListSourcesResult = z81.object({
5812
- sources: z81.array(PluginAIInspirationShapeRef)
5813
- });
5814
- var PluginAIInspirationGetSelectionResult = z81.object({
5815
- selectedShapeIds: z81.array(z81.string()),
5816
- sources: z81.array(PluginAIInspirationShapeRef)
5817
- });
5818
- var PluginAIInspirationPresetReferenceImage = z81.object({
5819
- url: z81.string(),
5820
- label: z81.string().optional(),
5821
- weight: z81.number().finite().optional()
5822
- });
5823
- var PluginAIInspirationPreset = z81.object({
5824
- id: z81.string(),
5825
- name: z81.string(),
5826
- source: z81.enum(["curated", "user"]),
5827
- modelId: z81.string(),
5828
- categoryId: z81.string().optional(),
5829
- categoryLabel: z81.string().optional(),
5830
- description: z81.string().optional(),
5831
- previewImageUrl: z81.string().optional(),
5832
- prompt: z81.string().optional(),
5833
- stylePrompt: z81.string().optional(),
5834
- tags: z81.array(z81.string()).optional(),
5835
- referenceImages: z81.array(PluginAIInspirationPresetReferenceImage).optional(),
6008
+ sourceUrl: z83.string().optional()
6009
+ });
6010
+ var PluginAIInspirationListSourcesArgs = z83.object({
6011
+ includeGenerated: z83.boolean().optional(),
6012
+ includeSourceUrl: z83.boolean().optional()
6013
+ });
6014
+ var PluginAIInspirationListSourcesResult = z83.object({
6015
+ sources: z83.array(PluginAIInspirationShapeRef)
6016
+ });
6017
+ var PluginAIInspirationGetSelectionResult = z83.object({
6018
+ selectedShapeIds: z83.array(z83.string()),
6019
+ sources: z83.array(PluginAIInspirationShapeRef)
6020
+ });
6021
+ var PluginAIInspirationPresetReferenceImage = z83.object({
6022
+ url: z83.string(),
6023
+ label: z83.string().optional(),
6024
+ weight: z83.number().finite().optional()
6025
+ });
6026
+ var PluginAIInspirationPreset = z83.object({
6027
+ id: z83.string(),
6028
+ name: z83.string(),
6029
+ source: z83.enum(["curated", "user"]),
6030
+ modelId: z83.string(),
6031
+ categoryId: z83.string().optional(),
6032
+ categoryLabel: z83.string().optional(),
6033
+ description: z83.string().optional(),
6034
+ previewImageUrl: z83.string().optional(),
6035
+ prompt: z83.string().optional(),
6036
+ stylePrompt: z83.string().optional(),
6037
+ tags: z83.array(z83.string()).optional(),
6038
+ referenceImages: z83.array(PluginAIInspirationPresetReferenceImage).optional(),
5836
6039
  siteDefaults: PluginAIInspirationAppliedPreset.shape.siteDefaults.optional()
5837
6040
  });
5838
- var PluginAIInspirationPresetCategory = z81.object({
5839
- id: z81.string(),
5840
- label: z81.string(),
5841
- description: z81.string().optional()
6041
+ var PluginAIInspirationPresetCategory = z83.object({
6042
+ id: z83.string(),
6043
+ label: z83.string(),
6044
+ description: z83.string().optional()
5842
6045
  });
5843
- var PluginAIInspirationGetPresetCatalogResult = z81.object({
5844
- categories: z81.array(PluginAIInspirationPresetCategory),
5845
- presets: z81.array(PluginAIInspirationPreset)
6046
+ var PluginAIInspirationGetPresetCatalogResult = z83.object({
6047
+ categories: z83.array(PluginAIInspirationPresetCategory),
6048
+ presets: z83.array(PluginAIInspirationPreset)
5846
6049
  });
5847
- var PluginAIInspirationOutput = z81.object({
5848
- outputType: z81.enum(["image", "video"]),
5849
- shapeId: z81.string(),
5850
- assetId: z81.string(),
5851
- outputUrl: z81.string().optional(),
6050
+ var PluginAIInspirationOutput = z83.object({
6051
+ outputType: z83.enum(["image", "video"]),
6052
+ shapeId: z83.string(),
6053
+ assetId: z83.string(),
6054
+ outputUrl: z83.string().optional(),
5852
6055
  position: PluginAIInspirationPoint.optional()
5853
6056
  });
5854
- var PluginAIInspirationDebugSummary = z81.record(z81.string(), JsonValue);
5855
- var PluginAIInspirationRunMetadata = z81.object({
5856
- geometryFidelity: z81.string().optional(),
6057
+ var PluginAIInspirationDebugSummary = z83.record(z83.string(), JsonValue);
6058
+ var PluginAIInspirationRunMetadata = z83.object({
6059
+ geometryFidelity: z83.string().optional(),
5857
6060
  debugSummary: PluginAIInspirationDebugSummary.optional(),
5858
- streetViewComposite: z81.object({
5859
- used: z81.boolean(),
5860
- renderMode: z81.enum(["prompt_refs_default", "masked_composite_pilot"]),
5861
- backgroundLabel: z81.string().optional()
6061
+ streetViewComposite: z83.object({
6062
+ used: z83.boolean(),
6063
+ renderMode: z83.enum(["prompt_refs_default", "masked_composite_pilot"]),
6064
+ backgroundLabel: z83.string().optional()
5862
6065
  }).optional()
5863
6066
  });
5864
- var PluginAIInspirationGenerateArgs = z81.object({
5865
- sourceShapeId: z81.string().min(1),
5866
- prompt: z81.string().min(1).max(8e3),
5867
- modelId: z81.string().optional(),
5868
- referenceShapeIds: z81.array(z81.string()).max(12).optional(),
5869
- referenceStrength: z81.enum(["low", "medium", "high"]).optional(),
6067
+ var PluginAIInspirationGenerateArgs = z83.object({
6068
+ sourceShapeId: z83.string().min(1),
6069
+ prompt: z83.string().min(1).max(8e3),
6070
+ modelId: z83.string().optional(),
6071
+ referenceShapeIds: z83.array(z83.string()).max(12).optional(),
6072
+ referenceStrength: z83.enum(["low", "medium", "high"]).optional(),
5870
6073
  appliedPreset: PluginAIInspirationAppliedPreset.optional(),
5871
6074
  site: PluginAIInspirationSiteOptions.optional(),
5872
6075
  regionHint: PluginAIInspirationRegionHint.optional(),
@@ -5874,129 +6077,129 @@ var PluginAIInspirationGenerateArgs = z81.object({
5874
6077
  video: PluginAIInspirationVideoOptions.optional(),
5875
6078
  runMode: PluginAIInspirationRunMode.optional()
5876
6079
  });
5877
- var PluginAIInspirationRunResult = z81.object({
5878
- jobId: z81.string().optional(),
6080
+ var PluginAIInspirationRunResult = z83.object({
6081
+ jobId: z83.string().optional(),
5879
6082
  output: PluginAIInspirationOutput.optional(),
5880
- outputs: z81.array(PluginAIInspirationOutput).optional(),
6083
+ outputs: z83.array(PluginAIInspirationOutput).optional(),
5881
6084
  metadata: PluginAIInspirationRunMetadata.optional()
5882
6085
  });
5883
- var PluginAIInspirationRefineArgs = z81.object({
5884
- sourceShapeId: z81.string().min(1),
5885
- upscaleFactor: z81.union([z81.literal(1.5), z81.literal(2), z81.literal(4)]).optional(),
6086
+ var PluginAIInspirationRefineArgs = z83.object({
6087
+ sourceShapeId: z83.string().min(1),
6088
+ upscaleFactor: z83.union([z83.literal(1.5), z83.literal(2), z83.literal(4)]).optional(),
5886
6089
  runMode: PluginAIInspirationRunMode.optional()
5887
6090
  });
5888
- var PluginAIInspirationJobProgress = z81.object({
5889
- currentStep: z81.number().int().nonnegative().optional(),
5890
- totalSteps: z81.number().int().nonnegative().optional(),
5891
- message: z81.string().optional()
6091
+ var PluginAIInspirationJobProgress = z83.object({
6092
+ currentStep: z83.number().int().nonnegative().optional(),
6093
+ totalSteps: z83.number().int().nonnegative().optional(),
6094
+ message: z83.string().optional()
5892
6095
  });
5893
- var PluginAIInspirationJob = z81.object({
5894
- jobId: z81.string(),
6096
+ var PluginAIInspirationJob = z83.object({
6097
+ jobId: z83.string(),
5895
6098
  status: PluginAIInspirationJobStatus,
5896
- createdAt: z81.number(),
5897
- updatedAt: z81.number(),
5898
- completedAt: z81.number().optional(),
5899
- method: z81.string(),
6099
+ createdAt: z83.number(),
6100
+ updatedAt: z83.number(),
6101
+ completedAt: z83.number().optional(),
6102
+ method: z83.string(),
5900
6103
  progress: PluginAIInspirationJobProgress.optional(),
5901
6104
  result: PluginAIInspirationRunResult.optional(),
5902
- error: z81.string().optional()
6105
+ error: z83.string().optional()
5903
6106
  });
5904
- var PluginAIInspirationJobArgs = z81.object({
5905
- jobId: z81.string().min(1)
6107
+ var PluginAIInspirationJobArgs = z83.object({
6108
+ jobId: z83.string().min(1)
5906
6109
  });
5907
- var PluginAIInspirationGetJobResult = z81.object({
6110
+ var PluginAIInspirationGetJobResult = z83.object({
5908
6111
  job: PluginAIInspirationJob
5909
6112
  });
5910
- var PluginAIInspirationCancelJobResult = z81.object({
6113
+ var PluginAIInspirationCancelJobResult = z83.object({
5911
6114
  job: PluginAIInspirationJob
5912
6115
  });
5913
- var PluginAIInspirationListJobsResult = z81.object({
5914
- jobs: z81.array(PluginAIInspirationJob)
6116
+ var PluginAIInspirationListJobsResult = z83.object({
6117
+ jobs: z83.array(PluginAIInspirationJob)
5915
6118
  });
5916
- var PluginAIInspirationWorkflowVideoConfig = z81.object({
5917
- mode: z81.string().optional(),
5918
- motion: z81.string().optional(),
5919
- duration: z81.string().optional(),
5920
- endFrameShapeId: z81.string().optional()
6119
+ var PluginAIInspirationWorkflowVideoConfig = z83.object({
6120
+ mode: z83.string().optional(),
6121
+ motion: z83.string().optional(),
6122
+ duration: z83.string().optional(),
6123
+ endFrameShapeId: z83.string().optional()
5921
6124
  });
5922
- var PluginAIInspirationGenerationInputSnapshot = z81.object({
5923
- version: z81.literal(1),
5924
- meta: z81.record(z81.string(), JsonValue),
6125
+ var PluginAIInspirationGenerationInputSnapshot = z83.object({
6126
+ version: z83.literal(1),
6127
+ meta: z83.record(z83.string(), JsonValue),
5925
6128
  regionHint: PluginAIInspirationRegionHint.optional(),
5926
- sketchGuidance: z81.record(z81.string(), JsonValue).optional(),
5927
- sourceCameraHeading: z81.number().finite().optional()
5928
- });
5929
- var PluginAIInspirationWorkflowOperation = z81.object({
5930
- type: z81.enum(["generate-image", "refine", "generate-video"]),
5931
- label: z81.string(),
5932
- prompt: z81.string().optional(),
5933
- modelId: z81.string().optional(),
5934
- presetId: z81.string().optional(),
5935
- presetName: z81.string().optional(),
5936
- refineFactor: z81.number().finite().optional(),
5937
- sourceRole: z81.enum(["primary", "end-frame"]).optional(),
6129
+ sketchGuidance: z83.record(z83.string(), JsonValue).optional(),
6130
+ sourceCameraHeading: z83.number().finite().optional()
6131
+ });
6132
+ var PluginAIInspirationWorkflowOperation = z83.object({
6133
+ type: z83.enum(["generate-image", "refine", "generate-video"]),
6134
+ label: z83.string(),
6135
+ prompt: z83.string().optional(),
6136
+ modelId: z83.string().optional(),
6137
+ presetId: z83.string().optional(),
6138
+ presetName: z83.string().optional(),
6139
+ refineFactor: z83.number().finite().optional(),
6140
+ sourceRole: z83.enum(["primary", "end-frame"]).optional(),
5938
6141
  video: PluginAIInspirationWorkflowVideoConfig.optional(),
5939
6142
  generationInput: PluginAIInspirationGenerationInputSnapshot.optional()
5940
6143
  });
5941
- var PluginAIInspirationWorkflowNode = z81.object({
5942
- id: z81.string(),
5943
- shapeId: z81.string(),
5944
- assetId: z81.string().optional(),
6144
+ var PluginAIInspirationWorkflowNode = z83.object({
6145
+ id: z83.string(),
6146
+ shapeId: z83.string(),
6147
+ assetId: z83.string().optional(),
5945
6148
  kind: PluginAIInspirationOutputKind,
5946
- state: z81.string(),
6149
+ state: z83.string(),
5947
6150
  runState: PluginAIInspirationWorkflowRunState.optional(),
5948
- staleReason: z81.string().optional(),
5949
- incomingEdgeIds: z81.array(z81.string()),
5950
- outgoingEdgeIds: z81.array(z81.string()),
5951
- createdAt: z81.number(),
5952
- updatedAt: z81.number()
5953
- });
5954
- var PluginAIInspirationWorkflowEdge = z81.object({
5955
- id: z81.string(),
5956
- sourceNodeId: z81.string(),
5957
- targetNodeId: z81.string(),
5958
- arrowShapeId: z81.string().optional(),
6151
+ staleReason: z83.string().optional(),
6152
+ incomingEdgeIds: z83.array(z83.string()),
6153
+ outgoingEdgeIds: z83.array(z83.string()),
6154
+ createdAt: z83.number(),
6155
+ updatedAt: z83.number()
6156
+ });
6157
+ var PluginAIInspirationWorkflowEdge = z83.object({
6158
+ id: z83.string(),
6159
+ sourceNodeId: z83.string(),
6160
+ targetNodeId: z83.string(),
6161
+ arrowShapeId: z83.string().optional(),
5959
6162
  operation: PluginAIInspirationWorkflowOperation,
5960
- state: z81.string(),
6163
+ state: z83.string(),
5961
6164
  runState: PluginAIInspirationWorkflowRunState.optional(),
5962
- staleReason: z81.string().optional(),
5963
- supersededByEdgeId: z81.string().optional(),
5964
- createdAt: z81.number(),
5965
- updatedAt: z81.number()
5966
- });
5967
- var PluginAIInspirationWorkflow = z81.object({
5968
- id: z81.string(),
5969
- rootNodeIds: z81.array(z81.string()),
5970
- nodeIds: z81.array(z81.string()),
5971
- edgeIds: z81.array(z81.string()),
5972
- nodes: z81.record(z81.string(), PluginAIInspirationWorkflowNode),
5973
- edges: z81.record(z81.string(), PluginAIInspirationWorkflowEdge),
5974
- createdAt: z81.number(),
5975
- updatedAt: z81.number()
5976
- });
5977
- var PluginAIInspirationGetWorkflowForShapeArgs = z81.object({
5978
- shapeId: z81.string().min(1)
5979
- });
5980
- var PluginAIInspirationGetWorkflowForShapeResult = z81.object({
6165
+ staleReason: z83.string().optional(),
6166
+ supersededByEdgeId: z83.string().optional(),
6167
+ createdAt: z83.number(),
6168
+ updatedAt: z83.number()
6169
+ });
6170
+ var PluginAIInspirationWorkflow = z83.object({
6171
+ id: z83.string(),
6172
+ rootNodeIds: z83.array(z83.string()),
6173
+ nodeIds: z83.array(z83.string()),
6174
+ edgeIds: z83.array(z83.string()),
6175
+ nodes: z83.record(z83.string(), PluginAIInspirationWorkflowNode),
6176
+ edges: z83.record(z83.string(), PluginAIInspirationWorkflowEdge),
6177
+ createdAt: z83.number(),
6178
+ updatedAt: z83.number()
6179
+ });
6180
+ var PluginAIInspirationGetWorkflowForShapeArgs = z83.object({
6181
+ shapeId: z83.string().min(1)
6182
+ });
6183
+ var PluginAIInspirationGetWorkflowForShapeResult = z83.object({
5981
6184
  workflow: PluginAIInspirationWorkflow.nullable(),
5982
6185
  node: PluginAIInspirationWorkflowNode.nullable()
5983
6186
  });
5984
- var PluginAIInspirationRerunPlanResult = z81.discriminatedUnion(
6187
+ var PluginAIInspirationRerunPlanResult = z83.discriminatedUnion(
5985
6188
  "status",
5986
6189
  [
5987
- z81.object({
5988
- status: z81.literal("ready"),
5989
- workflowId: z81.string(),
6190
+ z83.object({
6191
+ status: z83.literal("ready"),
6192
+ workflowId: z83.string(),
5990
6193
  sourceNode: PluginAIInspirationWorkflowNode,
5991
- edgeIds: z81.array(z81.string()),
5992
- edges: z81.array(PluginAIInspirationWorkflowEdge),
5993
- recipe: z81.lazy(() => PluginAIInspirationRecipe),
5994
- needsEndFrame: z81.boolean(),
5995
- defaultEndFrameShapeId: z81.string().nullable()
6194
+ edgeIds: z83.array(z83.string()),
6195
+ edges: z83.array(PluginAIInspirationWorkflowEdge),
6196
+ recipe: z83.lazy(() => PluginAIInspirationRecipe),
6197
+ needsEndFrame: z83.boolean(),
6198
+ defaultEndFrameShapeId: z83.string().nullable()
5996
6199
  }),
5997
- z81.object({
5998
- status: z81.literal("unavailable"),
5999
- reason: z81.enum([
6200
+ z83.object({
6201
+ status: z83.literal("unavailable"),
6202
+ reason: z83.enum([
6000
6203
  "not-in-workflow",
6001
6204
  "source-only",
6002
6205
  "running",
@@ -6005,47 +6208,47 @@ var PluginAIInspirationRerunPlanResult = z81.discriminatedUnion(
6005
6208
  })
6006
6209
  ]
6007
6210
  );
6008
- var PluginAIInspirationRerunSelectedBranchArgs = z81.object({
6009
- shapeId: z81.string().min(1),
6010
- endFrameShapeId: z81.string().optional(),
6211
+ var PluginAIInspirationRerunSelectedBranchArgs = z83.object({
6212
+ shapeId: z83.string().min(1),
6213
+ endFrameShapeId: z83.string().optional(),
6011
6214
  runMode: PluginAIInspirationRunMode.optional()
6012
6215
  });
6013
- var PluginAIInspirationRecipeSlot = z81.object({
6014
- id: z81.string(),
6015
- type: z81.enum(["source-image", "end-frame"]),
6016
- label: z81.string(),
6017
- required: z81.boolean()
6216
+ var PluginAIInspirationRecipeSlot = z83.object({
6217
+ id: z83.string(),
6218
+ type: z83.enum(["source-image", "end-frame"]),
6219
+ label: z83.string(),
6220
+ required: z83.boolean()
6018
6221
  });
6019
- var PluginAIInspirationRecipeStep = z81.object({
6020
- id: z81.string(),
6222
+ var PluginAIInspirationRecipeStep = z83.object({
6223
+ id: z83.string(),
6021
6224
  operation: PluginAIInspirationWorkflowOperation,
6022
- outputKind: z81.enum(["image", "video"])
6225
+ outputKind: z83.enum(["image", "video"])
6023
6226
  });
6024
- var PluginAIInspirationRecipeDraft = z81.object({
6025
- name: z81.string(),
6026
- summary: z81.string(),
6027
- slots: z81.array(PluginAIInspirationRecipeSlot),
6028
- steps: z81.array(PluginAIInspirationRecipeStep).min(1).max(20),
6029
- outputKind: z81.enum(["image", "video"]),
6030
- thumbnailUrl: z81.string().optional()
6227
+ var PluginAIInspirationRecipeDraft = z83.object({
6228
+ name: z83.string(),
6229
+ summary: z83.string(),
6230
+ slots: z83.array(PluginAIInspirationRecipeSlot),
6231
+ steps: z83.array(PluginAIInspirationRecipeStep).min(1).max(20),
6232
+ outputKind: z83.enum(["image", "video"]),
6233
+ thumbnailUrl: z83.string().optional()
6031
6234
  });
6032
6235
  var PluginAIInspirationRecipe = PluginAIInspirationRecipeDraft.extend({
6033
- version: z81.literal(1),
6034
- id: z81.string(),
6035
- fingerprint: z81.string().optional(),
6036
- createdAt: z81.number(),
6037
- updatedAt: z81.number()
6236
+ version: z83.literal(1),
6237
+ id: z83.string(),
6238
+ fingerprint: z83.string().optional(),
6239
+ createdAt: z83.number(),
6240
+ updatedAt: z83.number()
6038
6241
  });
6039
- var PluginAIInspirationExtractionResult = z81.discriminatedUnion(
6242
+ var PluginAIInspirationExtractionResult = z83.discriminatedUnion(
6040
6243
  "status",
6041
6244
  [
6042
- z81.object({
6043
- status: z81.literal("ready"),
6245
+ z83.object({
6246
+ status: z83.literal("ready"),
6044
6247
  draft: PluginAIInspirationRecipeDraft
6045
6248
  }),
6046
- z81.object({
6047
- status: z81.literal("unavailable"),
6048
- reason: z81.enum([
6249
+ z83.object({
6250
+ status: z83.literal("unavailable"),
6251
+ reason: z83.enum([
6049
6252
  "not-in-workflow",
6050
6253
  "source-only",
6051
6254
  "missing-workflow",
@@ -6056,38 +6259,38 @@ var PluginAIInspirationExtractionResult = z81.discriminatedUnion(
6056
6259
  })
6057
6260
  ]
6058
6261
  );
6059
- var PluginAIInspirationListRecipesResult = z81.object({
6060
- recipes: z81.array(PluginAIInspirationRecipe)
6262
+ var PluginAIInspirationListRecipesResult = z83.object({
6263
+ recipes: z83.array(PluginAIInspirationRecipe)
6061
6264
  });
6062
- var PluginAIInspirationSaveRecipeArgs = z81.object({
6265
+ var PluginAIInspirationSaveRecipeArgs = z83.object({
6063
6266
  draft: PluginAIInspirationRecipeDraft,
6064
- name: z81.string().min(1)
6267
+ name: z83.string().min(1)
6065
6268
  });
6066
- var PluginAIInspirationSaveRecipeResult = z81.discriminatedUnion(
6269
+ var PluginAIInspirationSaveRecipeResult = z83.discriminatedUnion(
6067
6270
  "status",
6068
6271
  [
6069
- z81.object({ status: z81.literal("saved"), recipe: PluginAIInspirationRecipe }),
6070
- z81.object({
6071
- status: z81.literal("duplicate"),
6272
+ z83.object({ status: z83.literal("saved"), recipe: PluginAIInspirationRecipe }),
6273
+ z83.object({
6274
+ status: z83.literal("duplicate"),
6072
6275
  recipe: PluginAIInspirationRecipe
6073
6276
  }),
6074
- z81.object({ status: z81.literal("invalid-name"), recipe: z81.null() }),
6075
- z81.object({ status: z81.literal("failed"), recipe: z81.null() })
6277
+ z83.object({ status: z83.literal("invalid-name"), recipe: z83.null() }),
6278
+ z83.object({ status: z83.literal("failed"), recipe: z83.null() })
6076
6279
  ]
6077
6280
  );
6078
- var PluginAIInspirationDeleteRecipeArgs = z81.object({
6079
- recipeId: z81.string().min(1)
6281
+ var PluginAIInspirationDeleteRecipeArgs = z83.object({
6282
+ recipeId: z83.string().min(1)
6080
6283
  });
6081
- var PluginAIInspirationDeleteRecipeResult = z81.object({
6082
- deleted: z81.boolean()
6284
+ var PluginAIInspirationDeleteRecipeResult = z83.object({
6285
+ deleted: z83.boolean()
6083
6286
  });
6084
- var PluginAIInspirationExtractRecipeFromShapeArgs = z81.object({
6085
- shapeId: z81.string().min(1)
6287
+ var PluginAIInspirationExtractRecipeFromShapeArgs = z83.object({
6288
+ shapeId: z83.string().min(1)
6086
6289
  });
6087
- var PluginAIInspirationRunRecipeArgs = z81.object({
6088
- recipeId: z81.string().optional(),
6290
+ var PluginAIInspirationRunRecipeArgs = z83.object({
6291
+ recipeId: z83.string().optional(),
6089
6292
  recipe: PluginAIInspirationRecipe.optional(),
6090
- slotShapeIds: z81.record(z81.string(), z81.string()),
6293
+ slotShapeIds: z83.record(z83.string(), z83.string()),
6091
6294
  runMode: PluginAIInspirationRunMode.optional()
6092
6295
  });
6093
6296
  var PluginPresentationAIInspirationApi = class {
@@ -6096,26 +6299,26 @@ var PluginPresentationAIInspirationApi = class {
6096
6299
  };
6097
6300
 
6098
6301
  // src/api/presentation/export.ts
6099
- var z82 = __toESM(require("zod"), 1);
6100
- var PluginPresentationExportFormat = z82.enum(["pdf", "png", "jpg"]);
6101
- var PluginPresentationExportResolution = z82.object({
6102
- width: z82.number().positive(),
6103
- height: z82.number().positive()
6302
+ var z84 = __toESM(require("zod"), 1);
6303
+ var PluginPresentationExportFormat = z84.enum(["pdf", "png", "jpg"]);
6304
+ var PluginPresentationExportResolution = z84.object({
6305
+ width: z84.number().positive(),
6306
+ height: z84.number().positive()
6104
6307
  });
6105
- var PluginPresentationExportArgs = z82.object({
6308
+ var PluginPresentationExportArgs = z84.object({
6106
6309
  format: PluginPresentationExportFormat,
6107
- sheetIds: z82.array(z82.string()).optional(),
6108
- combine: z82.boolean().optional(),
6310
+ sheetIds: z84.array(z84.string()).optional(),
6311
+ combine: z84.boolean().optional(),
6109
6312
  resolution: PluginPresentationExportResolution.optional(),
6110
- fileName: z82.string().optional()
6313
+ fileName: z84.string().optional()
6111
6314
  });
6112
- var PluginPresentationExportFile = z82.object({
6113
- fileName: z82.string(),
6114
- mimeType: z82.string(),
6115
- dataBase64: z82.string()
6315
+ var PluginPresentationExportFile = z84.object({
6316
+ fileName: z84.string(),
6317
+ mimeType: z84.string(),
6318
+ dataBase64: z84.string()
6116
6319
  });
6117
- var PluginPresentationExportResult = z82.object({
6118
- files: z82.array(PluginPresentationExportFile)
6320
+ var PluginPresentationExportResult = z84.object({
6321
+ files: z84.array(PluginPresentationExportFile)
6119
6322
  });
6120
6323
 
6121
6324
  // src/api/presentation/index.ts
@@ -6131,38 +6334,38 @@ var PluginAnalysisSunpathApi = class {
6131
6334
  };
6132
6335
 
6133
6336
  // src/api/analysis/shadows.ts
6134
- var z83 = __toESM(require("zod"), 1);
6337
+ var z85 = __toESM(require("zod"), 1);
6135
6338
  var PluginAnalysisShadowsApi = class {
6136
6339
  constructor() {
6137
6340
  }
6138
6341
  };
6139
- var PluginAnalysisShadowsEnableOptions = z83.object({
6140
- dateTime: z83.string().optional()
6342
+ var PluginAnalysisShadowsEnableOptions = z85.object({
6343
+ dateTime: z85.string().optional()
6141
6344
  });
6142
- var PluginAnalysisShadowsSetDateTimeArgs = z83.object({
6143
- dateTime: z83.string()
6345
+ var PluginAnalysisShadowsSetDateTimeArgs = z85.object({
6346
+ dateTime: z85.string()
6144
6347
  });
6145
- var PluginAnalysisShadowsDateTimeResult = z83.string();
6348
+ var PluginAnalysisShadowsDateTimeResult = z85.string();
6146
6349
 
6147
6350
  // src/api/analysis/sunlightHours.ts
6148
- var z84 = __toESM(require("zod"), 1);
6351
+ var z86 = __toESM(require("zod"), 1);
6149
6352
  var PluginAnalysisSunlightHoursApi = class {
6150
6353
  constructor() {
6151
6354
  }
6152
6355
  };
6153
- var PluginAnalysisComputeResult = z84.object({
6154
- success: z84.boolean(),
6155
- error: z84.string().optional()
6356
+ var PluginAnalysisComputeResult = z86.object({
6357
+ success: z86.boolean(),
6358
+ error: z86.string().optional()
6156
6359
  });
6157
- var PluginAnalysisJobStatus = z84.enum([
6360
+ var PluginAnalysisJobStatus = z86.enum([
6158
6361
  "running",
6159
6362
  "active",
6160
6363
  "inactive"
6161
6364
  ]);
6162
- var PluginAnalysisJobState = z84.object({
6365
+ var PluginAnalysisJobState = z86.object({
6163
6366
  status: PluginAnalysisJobStatus,
6164
- startDate: z84.string(),
6165
- endDate: z84.string()
6367
+ startDate: z86.string(),
6368
+ endDate: z86.string()
6166
6369
  });
6167
6370
  var PluginAnalysisJobStateResult = PluginAnalysisJobState.nullable();
6168
6371
 
@@ -6173,7 +6376,7 @@ var PluginAnalysisIlluminanceApi = class {
6173
6376
  };
6174
6377
 
6175
6378
  // src/api/analysis/heatmaps.ts
6176
- var z85 = __toESM(require("zod"), 1);
6379
+ var z87 = __toESM(require("zod"), 1);
6177
6380
  var PluginAnalysisHeatmapsApi = class {
6178
6381
  constructor() {
6179
6382
  }
@@ -6182,149 +6385,149 @@ var PluginAnalysisHeatmapOverlaysApi = class {
6182
6385
  constructor() {
6183
6386
  }
6184
6387
  };
6185
- var PluginAnalysisHeatmapSpaceEntry = z85.object({
6388
+ var PluginAnalysisHeatmapSpaceEntry = z87.object({
6186
6389
  space: ComponentHandle,
6187
- value: z85.number().finite()
6390
+ value: z87.number().finite()
6188
6391
  });
6189
- var PluginAnalysisHeatmapGridCell = z85.object({
6392
+ var PluginAnalysisHeatmapGridCell = z87.object({
6190
6393
  position: Vec3Components,
6191
- value: z85.number().finite(),
6192
- meta: z85.unknown().optional()
6193
- });
6194
- var HexColor = z85.string().regex(/^#?[0-9a-fA-F]{6}$/, 'expected a 6-digit hex colour like "#0000ff"');
6195
- var PluginAnalysisHeatmapFieldCell = z85.union([
6196
- z85.object({
6197
- polygon: z85.array(Vec3Components).min(3),
6198
- value: z85.number().finite(),
6199
- meta: z85.unknown().optional()
6394
+ value: z87.number().finite(),
6395
+ meta: z87.unknown().optional()
6396
+ });
6397
+ var HexColor = z87.string().regex(/^#?[0-9a-fA-F]{6}$/, 'expected a 6-digit hex colour like "#0000ff"');
6398
+ var PluginAnalysisHeatmapFieldCell = z87.union([
6399
+ z87.object({
6400
+ polygon: z87.array(Vec3Components).min(3),
6401
+ value: z87.number().finite(),
6402
+ meta: z87.unknown().optional()
6200
6403
  }),
6201
- z85.object({
6202
- vertices: z85.array(Vec3Components).min(3),
6203
- indices: z85.array(z85.number().int().nonnegative()).min(3),
6204
- value: z85.number().finite(),
6205
- meta: z85.unknown().optional()
6404
+ z87.object({
6405
+ vertices: z87.array(Vec3Components).min(3),
6406
+ indices: z87.array(z87.number().int().nonnegative()).min(3),
6407
+ value: z87.number().finite(),
6408
+ meta: z87.unknown().optional()
6206
6409
  })
6207
6410
  ]);
6208
- var PluginAnalysisHeatmapScale = z85.discriminatedUnion("type", [
6209
- z85.object({
6210
- type: z85.literal("bands"),
6211
- count: z85.number().int().min(2).max(64).optional()
6411
+ var PluginAnalysisHeatmapScale = z87.discriminatedUnion("type", [
6412
+ z87.object({
6413
+ type: z87.literal("bands"),
6414
+ count: z87.number().int().min(2).max(64).optional()
6212
6415
  }),
6213
- z85.object({
6214
- type: z85.literal("threshold"),
6215
- threshold: z85.number().finite(),
6416
+ z87.object({
6417
+ type: z87.literal("threshold"),
6418
+ threshold: z87.number().finite(),
6216
6419
  passColor: HexColor.optional(),
6217
6420
  failColor: HexColor.optional(),
6218
- passLabel: z85.string().optional(),
6219
- failLabel: z85.string().optional()
6421
+ passLabel: z87.string().optional(),
6422
+ failLabel: z87.string().optional()
6220
6423
  }),
6221
- z85.object({
6222
- type: z85.literal("categorical"),
6223
- classes: z85.array(
6224
- z85.object({
6225
- value: z85.number().finite(),
6226
- label: z85.string(),
6424
+ z87.object({
6425
+ type: z87.literal("categorical"),
6426
+ classes: z87.array(
6427
+ z87.object({
6428
+ value: z87.number().finite(),
6429
+ label: z87.string(),
6227
6430
  color: HexColor
6228
6431
  })
6229
6432
  ).min(1)
6230
6433
  })
6231
6434
  ]);
6232
- var PluginAnalysisHeatmapOptions = z85.object({
6233
- name: z85.string().min(1).max(64).optional(),
6234
- title: z85.string().optional(),
6235
- unit: z85.string().optional(),
6236
- min: z85.number().finite().optional(),
6237
- max: z85.number().finite().optional(),
6238
- colors: z85.array(HexColor).min(1).optional(),
6435
+ var PluginAnalysisHeatmapOptions = z87.object({
6436
+ name: z87.string().min(1).max(64).optional(),
6437
+ title: z87.string().optional(),
6438
+ unit: z87.string().optional(),
6439
+ min: z87.number().finite().optional(),
6440
+ max: z87.number().finite().optional(),
6441
+ colors: z87.array(HexColor).min(1).optional(),
6239
6442
  scale: PluginAnalysisHeatmapScale.optional(),
6240
- hover: z85.boolean().optional()
6443
+ hover: z87.boolean().optional()
6241
6444
  });
6242
- var PluginAnalysisHeatmapsRenderResult = z85.object({
6243
- success: z85.literal(true)
6445
+ var PluginAnalysisHeatmapsRenderResult = z87.object({
6446
+ success: z87.literal(true)
6244
6447
  });
6245
- var PluginAnalysisHeatmapOverlayInfo = z85.object({
6246
- name: z85.string(),
6247
- visible: z85.boolean(),
6248
- kind: z85.enum(["spaces", "grid", "surfaceGrid", "field"])
6448
+ var PluginAnalysisHeatmapOverlayInfo = z87.object({
6449
+ name: z87.string(),
6450
+ visible: z87.boolean(),
6451
+ kind: z87.enum(["spaces", "grid", "surfaceGrid", "field"])
6249
6452
  });
6250
- var PluginAnalysisHeatmapOverlaysListResult = z85.object({
6251
- overlays: z85.array(PluginAnalysisHeatmapOverlayInfo)
6453
+ var PluginAnalysisHeatmapOverlaysListResult = z87.object({
6454
+ overlays: z87.array(PluginAnalysisHeatmapOverlayInfo)
6252
6455
  });
6253
6456
 
6254
6457
  // src/api/analysis/weather.ts
6255
- var z86 = __toESM(require("zod"), 1);
6458
+ var z88 = __toESM(require("zod"), 1);
6256
6459
  var PluginAnalysisWeatherApi = class {
6257
6460
  constructor() {
6258
6461
  }
6259
6462
  };
6260
- var PluginWeatherSelectionMethod = z86.enum([
6463
+ var PluginWeatherSelectionMethod = z88.enum([
6261
6464
  "nearest-station",
6262
6465
  "user-upload",
6263
6466
  "project-override"
6264
6467
  ]);
6265
- var PluginWeatherSourceMeta = z86.object({
6266
- weatherFileId: z86.string(),
6267
- station: z86.string(),
6268
- sourceId: z86.string(),
6269
- distanceKm: z86.number().nullable(),
6468
+ var PluginWeatherSourceMeta = z88.object({
6469
+ weatherFileId: z88.string(),
6470
+ station: z88.string(),
6471
+ sourceId: z88.string(),
6472
+ distanceKm: z88.number().nullable(),
6270
6473
  selectionMethod: PluginWeatherSelectionMethod,
6271
- checksum: z86.string(),
6272
- windReferenceHeightM: z86.number()
6273
- });
6274
- var PluginWeatherRow = z86.object({
6275
- timestamp: z86.string(),
6276
- utcOffsetMinutes: z86.number(),
6277
- dryBulbC: z86.number(),
6278
- relativeHumidityPercent: z86.number(),
6279
- windSpeedMps: z86.number(),
6280
- ghiWm2: z86.number(),
6281
- dniWm2: z86.number(),
6282
- dhiWm2: z86.number(),
6283
- flags: z86.array(z86.string())
6284
- });
6285
- var PluginWeatherGetSeriesArgs = z86.object({
6286
- startDate: z86.string(),
6287
- endDate: z86.string(),
6288
- interval: z86.enum(["hourly"]).optional(),
6289
- cursor: z86.string().optional()
6474
+ checksum: z88.string(),
6475
+ windReferenceHeightM: z88.number()
6476
+ });
6477
+ var PluginWeatherRow = z88.object({
6478
+ timestamp: z88.string(),
6479
+ utcOffsetMinutes: z88.number(),
6480
+ dryBulbC: z88.number(),
6481
+ relativeHumidityPercent: z88.number(),
6482
+ windSpeedMps: z88.number(),
6483
+ ghiWm2: z88.number(),
6484
+ dniWm2: z88.number(),
6485
+ dhiWm2: z88.number(),
6486
+ flags: z88.array(z88.string())
6487
+ });
6488
+ var PluginWeatherGetSeriesArgs = z88.object({
6489
+ startDate: z88.string(),
6490
+ endDate: z88.string(),
6491
+ interval: z88.enum(["hourly"]).optional(),
6492
+ cursor: z88.string().optional()
6290
6493
  });
6291
- var PluginWeatherSeriesResult = z86.object({
6494
+ var PluginWeatherSeriesResult = z88.object({
6292
6495
  source: PluginWeatherSourceMeta,
6293
- rows: z86.array(PluginWeatherRow),
6294
- nextCursor: z86.string().nullable(),
6295
- warnings: z86.array(z86.string()).optional()
6496
+ rows: z88.array(PluginWeatherRow),
6497
+ nextCursor: z88.string().nullable(),
6498
+ warnings: z88.array(z88.string()).optional()
6296
6499
  });
6297
6500
 
6298
6501
  // src/api/analysis/solar.ts
6299
- var z87 = __toESM(require("zod"), 1);
6502
+ var z89 = __toESM(require("zod"), 1);
6300
6503
  var PluginAnalysisSolarApi = class {
6301
6504
  constructor() {
6302
6505
  }
6303
6506
  };
6304
- var PluginSolarRunStatus = z87.enum([
6507
+ var PluginSolarRunStatus = z89.enum([
6305
6508
  "running",
6306
6509
  "complete",
6307
6510
  "cancelled",
6308
6511
  "failed"
6309
6512
  ]);
6310
- var PluginSolarSampleMode = z87.enum(["instant", "range"]);
6311
- var PluginSolarUnits = z87.enum(["W/m2", "kWh/m2"]);
6312
- var PluginSolarHourlyArtifact = z87.object({
6313
- url: z87.string(),
6314
- format: z87.enum(["parquet", "csv-gz"]),
6315
- expiresAt: z87.string()
6316
- });
6317
- var PluginSolarSamplePoint = z87.object({
6318
- id: z87.string(),
6319
- position: z87.tuple([z87.number(), z87.number(), z87.number()]),
6320
- normal: z87.tuple([z87.number(), z87.number(), z87.number()]).optional()
6321
- });
6322
- var PluginSolarSampleGridArgs = z87.object({
6323
- points: z87.array(PluginSolarSamplePoint),
6324
- dateTime: z87.string().optional(),
6325
- startDate: z87.string().optional(),
6326
- endDate: z87.string().optional(),
6327
- includeHourlyArtifact: z87.boolean().optional()
6513
+ var PluginSolarSampleMode = z89.enum(["instant", "range"]);
6514
+ var PluginSolarUnits = z89.enum(["W/m2", "kWh/m2"]);
6515
+ var PluginSolarHourlyArtifact = z89.object({
6516
+ url: z89.string(),
6517
+ format: z89.enum(["parquet", "csv-gz"]),
6518
+ expiresAt: z89.string()
6519
+ });
6520
+ var PluginSolarSamplePoint = z89.object({
6521
+ id: z89.string(),
6522
+ position: z89.tuple([z89.number(), z89.number(), z89.number()]),
6523
+ normal: z89.tuple([z89.number(), z89.number(), z89.number()]).optional()
6524
+ });
6525
+ var PluginSolarSampleGridArgs = z89.object({
6526
+ points: z89.array(PluginSolarSamplePoint),
6527
+ dateTime: z89.string().optional(),
6528
+ startDate: z89.string().optional(),
6529
+ endDate: z89.string().optional(),
6530
+ includeHourlyArtifact: z89.boolean().optional()
6328
6531
  }).superRefine((a, ctx) => {
6329
6532
  const hasInstant = a.dateTime !== void 0;
6330
6533
  const hasStart = a.startDate !== void 0;
@@ -6332,73 +6535,73 @@ var PluginSolarSampleGridArgs = z87.object({
6332
6535
  const hasRange = hasStart || hasEnd;
6333
6536
  if (hasInstant === hasRange) {
6334
6537
  ctx.addIssue({
6335
- code: z87.ZodIssueCode.custom,
6538
+ code: z89.ZodIssueCode.custom,
6336
6539
  message: "provide exactly one timing mode: dateTime (instant), or startDate+endDate (range)"
6337
6540
  });
6338
6541
  }
6339
6542
  if (hasRange && !(hasStart && hasEnd)) {
6340
6543
  ctx.addIssue({
6341
- code: z87.ZodIssueCode.custom,
6544
+ code: z89.ZodIssueCode.custom,
6342
6545
  message: "range mode requires both startDate and endDate"
6343
6546
  });
6344
6547
  }
6345
6548
  });
6346
- var PluginSolarSampleResult = z87.object({
6347
- id: z87.string(),
6348
- directSunVisible: z87.boolean(),
6349
- shadeFraction: z87.number(),
6350
- directIrradiance: z87.number().optional(),
6351
- diffuseIrradiance: z87.number().optional(),
6352
- totalIrradiance: z87.number().optional()
6549
+ var PluginSolarSampleResult = z89.object({
6550
+ id: z89.string(),
6551
+ directSunVisible: z89.boolean(),
6552
+ shadeFraction: z89.number(),
6553
+ directIrradiance: z89.number().optional(),
6554
+ diffuseIrradiance: z89.number().optional(),
6555
+ totalIrradiance: z89.number().optional()
6353
6556
  });
6354
- var PluginSolarSampleGridResult = z87.object({
6557
+ var PluginSolarSampleGridResult = z89.object({
6355
6558
  status: PluginSolarRunStatus,
6356
6559
  mode: PluginSolarSampleMode,
6357
- coordinateSystem: z87.literal("world-plan-space"),
6358
- modelRevision: z87.string(),
6359
- inputHash: z87.string(),
6560
+ coordinateSystem: z89.literal("world-plan-space"),
6561
+ modelRevision: z89.string(),
6562
+ inputHash: z89.string(),
6360
6563
  units: PluginSolarUnits,
6361
- sunUpHours: z87.number(),
6564
+ sunUpHours: z89.number(),
6362
6565
  weather: PluginWeatherSourceMeta.nullable(),
6363
- weatherQuality: z87.array(z87.string()),
6364
- results: z87.array(PluginSolarSampleResult),
6566
+ weatherQuality: z89.array(z89.string()),
6567
+ results: z89.array(PluginSolarSampleResult),
6365
6568
  hourlyArtifact: PluginSolarHourlyArtifact.nullable(),
6366
- nextCursor: z87.string().nullable()
6569
+ nextCursor: z89.string().nullable()
6367
6570
  });
6368
6571
 
6369
6572
  // src/api/analysis/daylight.ts
6370
- var z88 = __toESM(require("zod"), 1);
6573
+ var z90 = __toESM(require("zod"), 1);
6371
6574
  var PluginAnalysisDaylightApi = class {
6372
6575
  constructor() {
6373
6576
  }
6374
6577
  };
6375
- var PluginDaylightMetric = z88.enum(["ASE", "sDA"]);
6376
- var PluginDaylightRunStatus = z88.enum([
6578
+ var PluginDaylightMetric = z90.enum(["ASE", "sDA"]);
6579
+ var PluginDaylightRunStatus = z90.enum([
6377
6580
  "running",
6378
6581
  "complete",
6379
6582
  "cancelled",
6380
6583
  "failed"
6381
6584
  ]);
6382
- var PluginDaylightGrid = z88.object({
6383
- spacingM: z88.number(),
6384
- workplaneHeightM: z88.number(),
6385
- boundaryOffsetM: z88.number()
6585
+ var PluginDaylightGrid = z90.object({
6586
+ spacingM: z90.number(),
6587
+ workplaneHeightM: z90.number(),
6588
+ boundaryOffsetM: z90.number()
6386
6589
  });
6387
- var PluginDaylightSchedule = z88.object({
6388
- startHour: z88.number(),
6389
- endHour: z88.number()
6590
+ var PluginDaylightSchedule = z90.object({
6591
+ startHour: z90.number(),
6592
+ endHour: z90.number()
6390
6593
  });
6391
- var PluginDaylightOpaqueOptics = z88.object({
6392
- reflectance: z88.number().min(0).max(1)
6594
+ var PluginDaylightOpaqueOptics = z90.object({
6595
+ reflectance: z90.number().min(0).max(1)
6393
6596
  });
6394
- var PluginDaylightGlazingOptics = z88.object({
6395
- transmittance: z88.number().min(0).max(1)
6597
+ var PluginDaylightGlazingOptics = z90.object({
6598
+ transmittance: z90.number().min(0).max(1)
6396
6599
  });
6397
- var PluginDaylightMaterialOptics = z88.union([
6600
+ var PluginDaylightMaterialOptics = z90.union([
6398
6601
  PluginDaylightOpaqueOptics,
6399
6602
  PluginDaylightGlazingOptics
6400
6603
  ]);
6401
- var PluginDaylightCategoryDefaults = z88.object({
6604
+ var PluginDaylightCategoryDefaults = z90.object({
6402
6605
  wall: PluginDaylightOpaqueOptics.optional(),
6403
6606
  ceiling: PluginDaylightOpaqueOptics.optional(),
6404
6607
  floor: PluginDaylightOpaqueOptics.optional(),
@@ -6406,81 +6609,81 @@ var PluginDaylightCategoryDefaults = z88.object({
6406
6609
  glazing: PluginDaylightGlazingOptics.optional(),
6407
6610
  context: PluginDaylightOpaqueOptics.optional()
6408
6611
  });
6409
- var PluginDaylightBlindsOptics = z88.object({
6410
- transmittance: z88.number().min(0).max(1)
6612
+ var PluginDaylightBlindsOptics = z90.object({
6613
+ transmittance: z90.number().min(0).max(1)
6411
6614
  });
6412
- var PluginDaylightOptics = z88.object({
6413
- materials: z88.record(z88.string(), PluginDaylightMaterialOptics).optional(),
6615
+ var PluginDaylightOptics = z90.object({
6616
+ materials: z90.record(z90.string(), PluginDaylightMaterialOptics).optional(),
6414
6617
  categories: PluginDaylightCategoryDefaults.optional(),
6415
6618
  blinds: PluginDaylightBlindsOptics.optional()
6416
6619
  });
6417
- var PluginDaylightComputeArgs = z88.object({
6418
- standard: z88.literal("IES-LM-83-23"),
6419
- metrics: z88.array(PluginDaylightMetric).min(1),
6620
+ var PluginDaylightComputeArgs = z90.object({
6621
+ standard: z90.literal("IES-LM-83-23"),
6622
+ metrics: z90.array(PluginDaylightMetric).min(1),
6420
6623
  schedule: PluginDaylightSchedule.optional(),
6421
6624
  grid: PluginDaylightGrid,
6422
6625
  optics: PluginDaylightOptics.optional()
6423
6626
  });
6424
- var PluginDaylightPollArgs = z88.object({
6425
- runId: z88.string(),
6426
- cursor: z88.string().optional()
6427
- });
6428
- var PluginDaylightSensorRecord = z88.object({
6429
- sensorId: z88.string(),
6430
- position: z88.tuple([z88.number(), z88.number(), z88.number()]),
6431
- spaceId: z88.string(),
6432
- storeyId: z88.string(),
6433
- areaWeightM2: z88.number(),
6434
- occupiedHours: z88.number(),
6435
- directSunHoursAtOrAbove1000Lux: z88.number().optional(),
6436
- aseFail: z88.boolean().optional(),
6437
- da300Percent: z88.number().optional(),
6438
- sdaPass: z88.boolean().optional()
6439
- });
6440
- var PluginDaylightAggregateScope = z88.enum([
6627
+ var PluginDaylightPollArgs = z90.object({
6628
+ runId: z90.string(),
6629
+ cursor: z90.string().optional()
6630
+ });
6631
+ var PluginDaylightSensorRecord = z90.object({
6632
+ sensorId: z90.string(),
6633
+ position: z90.tuple([z90.number(), z90.number(), z90.number()]),
6634
+ spaceId: z90.string(),
6635
+ storeyId: z90.string(),
6636
+ areaWeightM2: z90.number(),
6637
+ occupiedHours: z90.number(),
6638
+ directSunHoursAtOrAbove1000Lux: z90.number().optional(),
6639
+ aseFail: z90.boolean().optional(),
6640
+ da300Percent: z90.number().optional(),
6641
+ sdaPass: z90.boolean().optional()
6642
+ });
6643
+ var PluginDaylightAggregateScope = z90.enum([
6441
6644
  "project",
6442
6645
  "storey",
6443
6646
  "space"
6444
6647
  ]);
6445
- var PluginDaylightAggregate = z88.object({
6648
+ var PluginDaylightAggregate = z90.object({
6446
6649
  scope: PluginDaylightAggregateScope,
6447
- id: z88.string().nullable(),
6448
- analysisAreaM2: z88.number(),
6449
- asePercent: z88.number().optional(),
6450
- sdaPercent: z88.number().optional()
6451
- });
6452
- var PluginDaylightProvenance = z88.object({
6453
- engine: z88.string(),
6454
- engineVersion: z88.string(),
6455
- standardProfile: z88.string(),
6456
- thresholds: z88.object({ aseLux: z88.number(), aseHours: z88.number() }).passthrough(),
6650
+ id: z90.string().nullable(),
6651
+ analysisAreaM2: z90.number(),
6652
+ asePercent: z90.number().optional(),
6653
+ sdaPercent: z90.number().optional()
6654
+ });
6655
+ var PluginDaylightProvenance = z90.object({
6656
+ engine: z90.string(),
6657
+ engineVersion: z90.string(),
6658
+ standardProfile: z90.string(),
6659
+ thresholds: z90.object({ aseLux: z90.number(), aseHours: z90.number() }).passthrough(),
6457
6660
  weather: PluginWeatherSourceMeta.nullable(),
6458
- occupancySchedule: z88.object({ id: z88.string(), hoursPerYear: z88.number() }).passthrough(),
6661
+ occupancySchedule: z90.object({ id: z90.string(), hoursPerYear: z90.number() }).passthrough(),
6459
6662
  grid: PluginDaylightGrid,
6460
- location: z88.object({
6461
- latitude: z88.number(),
6462
- longitude: z88.number(),
6463
- timezone: z88.string(),
6464
- trueNorthDeg: z88.number()
6663
+ location: z90.object({
6664
+ latitude: z90.number(),
6665
+ longitude: z90.number(),
6666
+ timezone: z90.string(),
6667
+ trueNorthDeg: z90.number()
6465
6668
  }).passthrough(),
6466
- surfaceReflectances: z88.record(z88.string(), z88.number()),
6467
- modelRevision: z88.string(),
6468
- inputHash: z88.string(),
6469
- warnings: z88.array(z88.string()),
6470
- excludedSpaces: z88.array(
6471
- z88.object({ spaceId: z88.string(), reason: z88.string() })
6669
+ surfaceReflectances: z90.record(z90.string(), z90.number()),
6670
+ modelRevision: z90.string(),
6671
+ inputHash: z90.string(),
6672
+ warnings: z90.array(z90.string()),
6673
+ excludedSpaces: z90.array(
6674
+ z90.object({ spaceId: z90.string(), reason: z90.string() })
6472
6675
  ),
6473
- failedGeometry: z88.array(
6474
- z88.object({ componentId: z88.string(), reason: z88.string() })
6676
+ failedGeometry: z90.array(
6677
+ z90.object({ componentId: z90.string(), reason: z90.string() })
6475
6678
  )
6476
6679
  }).partial().passthrough();
6477
- var PluginDaylightResults = z88.object({
6680
+ var PluginDaylightResults = z90.object({
6478
6681
  status: PluginDaylightRunStatus,
6479
- runId: z88.string().optional(),
6480
- sensors: z88.array(PluginDaylightSensorRecord),
6481
- aggregates: z88.array(PluginDaylightAggregate),
6682
+ runId: z90.string().optional(),
6683
+ sensors: z90.array(PluginDaylightSensorRecord),
6684
+ aggregates: z90.array(PluginDaylightAggregate),
6482
6685
  provenance: PluginDaylightProvenance,
6483
- nextCursor: z88.string().nullable()
6686
+ nextCursor: z90.string().nullable()
6484
6687
  });
6485
6688
 
6486
6689
  // src/api/analysis/index.ts
@@ -6490,7 +6693,7 @@ var PluginAnalysisApi = class {
6490
6693
  };
6491
6694
 
6492
6695
  // src/api/workspace/index.ts
6493
- var z89 = __toESM(require("zod"), 1);
6696
+ var z91 = __toESM(require("zod"), 1);
6494
6697
  var PluginWorkspaceApi = class {
6495
6698
  constructor() {
6496
6699
  }
@@ -6503,68 +6706,68 @@ var PluginWorkspaceTeamsApi = class {
6503
6706
  constructor() {
6504
6707
  }
6505
6708
  };
6506
- var PluginProjectRef = z89.object({
6507
- id: z89.string(),
6508
- name: z89.string(),
6509
- teamId: z89.string().optional(),
6510
- createdAt: z89.string().optional(),
6511
- modifiedAt: z89.string().optional()
6709
+ var PluginProjectRef = z91.object({
6710
+ id: z91.string(),
6711
+ name: z91.string(),
6712
+ teamId: z91.string().optional(),
6713
+ createdAt: z91.string().optional(),
6714
+ modifiedAt: z91.string().optional()
6512
6715
  });
6513
- var PluginTeamRef = z89.object({
6514
- id: z89.string(),
6515
- name: z89.string(),
6516
- role: z89.string().optional()
6716
+ var PluginTeamRef = z91.object({
6717
+ id: z91.string(),
6718
+ name: z91.string(),
6719
+ role: z91.string().optional()
6517
6720
  });
6518
- var PluginTeamMemberRef = z89.object({
6519
- id: z89.string(),
6520
- name: z89.string(),
6521
- email: z89.string().optional(),
6522
- role: z89.string().optional()
6721
+ var PluginTeamMemberRef = z91.object({
6722
+ id: z91.string(),
6723
+ name: z91.string(),
6724
+ email: z91.string().optional(),
6725
+ role: z91.string().optional()
6523
6726
  });
6524
- var PluginWorkspaceProjectsCreateArgs = z89.object({
6525
- name: z89.string(),
6526
- unit: z89.string().optional(),
6527
- teamId: z89.string().optional()
6727
+ var PluginWorkspaceProjectsCreateArgs = z91.object({
6728
+ name: z91.string(),
6729
+ unit: z91.string().optional(),
6730
+ teamId: z91.string().optional()
6528
6731
  });
6529
- var PluginWorkspaceProjectsCreateResult = z89.object({
6530
- projectId: z89.string()
6732
+ var PluginWorkspaceProjectsCreateResult = z91.object({
6733
+ projectId: z91.string()
6531
6734
  });
6532
- var PluginWorkspaceProjectsCopyArgs = z89.object({
6533
- name: z89.string(),
6534
- teamId: z89.string().optional()
6735
+ var PluginWorkspaceProjectsCopyArgs = z91.object({
6736
+ name: z91.string(),
6737
+ teamId: z91.string().optional()
6535
6738
  });
6536
- var PluginWorkspaceProjectsCopyResult = z89.object({
6537
- projectId: z89.string()
6739
+ var PluginWorkspaceProjectsCopyResult = z91.object({
6740
+ projectId: z91.string()
6538
6741
  });
6539
- var PluginWorkspaceProjectsListArgs = z89.object({
6540
- teamId: z89.string().optional()
6742
+ var PluginWorkspaceProjectsListArgs = z91.object({
6743
+ teamId: z91.string().optional()
6541
6744
  });
6542
- var PluginWorkspaceProjectsListResult = z89.object({
6543
- projects: z89.array(PluginProjectRef)
6745
+ var PluginWorkspaceProjectsListResult = z91.object({
6746
+ projects: z91.array(PluginProjectRef)
6544
6747
  });
6545
- var PluginWorkspaceProjectsGetArgs = z89.object({
6546
- projectId: z89.string()
6748
+ var PluginWorkspaceProjectsGetArgs = z91.object({
6749
+ projectId: z91.string()
6547
6750
  });
6548
6751
  var PluginWorkspaceProjectsGetResult = PluginProjectRef.nullable();
6549
- var PluginWorkspaceProjectsRenameArgs = z89.object({
6550
- projectId: z89.string(),
6551
- name: z89.string()
6752
+ var PluginWorkspaceProjectsRenameArgs = z91.object({
6753
+ projectId: z91.string(),
6754
+ name: z91.string()
6552
6755
  });
6553
- var PluginWorkspaceProjectsRenameResult = z89.object({
6554
- projectId: z89.string()
6756
+ var PluginWorkspaceProjectsRenameResult = z91.object({
6757
+ projectId: z91.string()
6555
6758
  });
6556
- var PluginWorkspaceTeamsListResult = z89.object({
6557
- teams: z89.array(PluginTeamRef)
6759
+ var PluginWorkspaceTeamsListResult = z91.object({
6760
+ teams: z91.array(PluginTeamRef)
6558
6761
  });
6559
- var PluginWorkspaceTeamsGetArgs = z89.object({
6560
- teamId: z89.string()
6762
+ var PluginWorkspaceTeamsGetArgs = z91.object({
6763
+ teamId: z91.string()
6561
6764
  });
6562
6765
  var PluginWorkspaceTeamsGetResult = PluginTeamRef.nullable();
6563
- var PluginWorkspaceTeamsListMembersArgs = z89.object({
6564
- teamId: z89.string()
6766
+ var PluginWorkspaceTeamsListMembersArgs = z91.object({
6767
+ teamId: z91.string()
6565
6768
  });
6566
- var PluginWorkspaceTeamsListMembersResult = z89.object({
6567
- members: z89.array(PluginTeamMemberRef)
6769
+ var PluginWorkspaceTeamsListMembersResult = z91.object({
6770
+ members: z91.array(PluginTeamMemberRef)
6568
6771
  });
6569
6772
 
6570
6773
  // src/api/index.ts
@@ -6669,8 +6872,8 @@ function isPluginErrorCode(value) {
6669
6872
  var ERROR_ENVELOPE_VERSION = 1;
6670
6873
  function isErrorEnvelope(value) {
6671
6874
  if (typeof value !== "object" || value === null) return false;
6672
- const record6 = value;
6673
- return record6.envelopeVersion === ERROR_ENVELOPE_VERSION && typeof record6.code === "string" && typeof record6.message === "string" && typeof record6.errorId === "string";
6875
+ const record7 = value;
6876
+ return record7.envelopeVersion === ERROR_ENVELOPE_VERSION && typeof record7.code === "string" && typeof record7.message === "string" && typeof record7.errorId === "string";
6674
6877
  }
6675
6878
  var idCounter = 0;
6676
6879
  function newErrorId(prefix = "") {
@@ -6788,6 +6991,8 @@ function makeClientEnvelope(code, message, extra) {
6788
6991
  OffsetSplitOutcome,
6789
6992
  PLUGIN_CREATE_BATCH_LIMIT,
6790
6993
  PLUGIN_ERROR_CODES,
6994
+ PLUGIN_PROGRAM_LABELS_BATCH_LIMIT,
6995
+ PLUGIN_PROGRAM_METADATA_BATCH_LIMIT,
6791
6996
  PUnitType,
6792
6997
  PluginAIInspirationAppliedPreset,
6793
6998
  PluginAIInspirationCancelJobResult,
@@ -6955,6 +7160,7 @@ function makeClientEnvelope(code, message, extra) {
6955
7160
  PluginCoreBuildingsUpdateArgs,
6956
7161
  PluginCoreBuildingsUpdateResult,
6957
7162
  PluginCoreComponentTag,
7163
+ PluginCoreComponentTags,
6958
7164
  PluginCoreGroupMember,
6959
7165
  PluginCoreGroupRef,
6960
7166
  PluginCoreGroupsApi,
@@ -7040,6 +7246,8 @@ function makeClientEnvelope(code, message, extra) {
7040
7246
  PluginCoreTagsListCategoriesResult,
7041
7247
  PluginCoreTagsListComponentsArgs,
7042
7248
  PluginCoreTagsListComponentsResult,
7249
+ PluginCoreTagsListForComponentsArgs,
7250
+ PluginCoreTagsListForComponentsResult,
7043
7251
  PluginCoreTagsListResult,
7044
7252
  PluginCoreTagsUnassignArgs,
7045
7253
  PluginCoreTagsUnassignResult,
@@ -7578,10 +7786,25 @@ function makeClientEnvelope(code, message, extra) {
7578
7786
  PluginProgramDepartmentsListResult,
7579
7787
  PluginProgramDepartmentsSetTargetAreaArgs,
7580
7788
  PluginProgramDepartmentsSetTargetAreaResult,
7789
+ PluginProgramDepartmentsSetTargetCountArgs,
7790
+ PluginProgramDepartmentsSetTargetCountResult,
7581
7791
  PluginProgramDepartmentsUnassignArgs,
7582
7792
  PluginProgramDepartmentsUnassignResult,
7583
7793
  PluginProgramDepartmentsUpdateArgs,
7584
7794
  PluginProgramDepartmentsUpdateResult,
7795
+ PluginProgramLabel,
7796
+ PluginProgramLabelCreateItem,
7797
+ PluginProgramLabelRecord,
7798
+ PluginProgramLabelsApi,
7799
+ PluginProgramLabelsCreateArgs,
7800
+ PluginProgramLabelsCreateResult,
7801
+ PluginProgramLabelsGetArgs,
7802
+ PluginProgramLabelsGetResult,
7803
+ PluginProgramLabelsListResult,
7804
+ PluginProgramLabelsSetTargetAreaArgs,
7805
+ PluginProgramLabelsSetTargetAreaResult,
7806
+ PluginProgramLabelsSetTargetCountArgs,
7807
+ PluginProgramLabelsSetTargetCountResult,
7585
7808
  PluginProgramLayoutApi,
7586
7809
  PluginProgramLayoutApplyResult,
7587
7810
  PluginProgramLayoutApplySolutionArgs,
@@ -7591,6 +7814,21 @@ function makeClientEnvelope(code, message, extra) {
7591
7814
  PluginProgramLayoutRunResult,
7592
7815
  PluginProgramLayoutStackResult,
7593
7816
  PluginProgramLayoutStateResult,
7817
+ PluginProgramMetadataApi,
7818
+ PluginProgramMetadataCreateHeaderArgs,
7819
+ PluginProgramMetadataCreateHeaderResult,
7820
+ PluginProgramMetadataGetArgs,
7821
+ PluginProgramMetadataGetResult,
7822
+ PluginProgramMetadataHeader,
7823
+ PluginProgramMetadataListArgs,
7824
+ PluginProgramMetadataListHeadersResult,
7825
+ PluginProgramMetadataListResult,
7826
+ PluginProgramMetadataRecord,
7827
+ PluginProgramMetadataUpdateArgs,
7828
+ PluginProgramMetadataUpdateItem,
7829
+ PluginProgramMetadataUpdateManyArgs,
7830
+ PluginProgramMetadataUpdateManyResult,
7831
+ PluginProgramMetadataUpdateResult,
7594
7832
  PluginProgramMetricsApi,
7595
7833
  PluginProgramMetricsSummary,
7596
7834
  PluginProgramSiteAnalysisResult,
@@ -7625,8 +7863,10 @@ function makeClientEnvelope(code, message, extra) {
7625
7863
  PluginProgramSpreadsheetBindingsListResult,
7626
7864
  PluginProgramSpreadsheetBindingsRefreshArgs,
7627
7865
  PluginProgramSpreadsheetBindingsRefreshResult,
7866
+ PluginProgramSpreadsheetCreateCustomSheetArgs,
7628
7867
  PluginProgramSpreadsheetCreateSheetArgs,
7629
7868
  PluginProgramSpreadsheetCreateSheetResult,
7869
+ PluginProgramSpreadsheetCustomSheetResult,
7630
7870
  PluginProgramSpreadsheetDatasetsApi,
7631
7871
  PluginProgramSpreadsheetDatasetsListResult,
7632
7872
  PluginProgramSpreadsheetDatasetsSetArgs,
@@ -7635,6 +7875,8 @@ function makeClientEnvelope(code, message, extra) {
7635
7875
  PluginProgramSpreadsheetExportResult,
7636
7876
  PluginProgramSpreadsheetGetAuditLogArgs,
7637
7877
  PluginProgramSpreadsheetGetAuditLogResult,
7878
+ PluginProgramSpreadsheetGetCustomSheetArgs,
7879
+ PluginProgramSpreadsheetGetCustomSheetResult,
7638
7880
  PluginProgramSpreadsheetGetMaterialTakeoffResult,
7639
7881
  PluginProgramSpreadsheetGetProgramResult,
7640
7882
  PluginProgramSpreadsheetGetSheetDataArgs,
@@ -7642,6 +7884,8 @@ function makeClientEnvelope(code, message, extra) {
7642
7884
  PluginProgramSpreadsheetGetTakeoffResult,
7643
7885
  PluginProgramSpreadsheetHighlightCellsArgs,
7644
7886
  PluginProgramSpreadsheetHighlightCellsResult,
7887
+ PluginProgramSpreadsheetListCustomSheetPropertiesResult,
7888
+ PluginProgramSpreadsheetListCustomSheetsResult,
7645
7889
  PluginProgramSpreadsheetListSheetsResult,
7646
7890
  PluginProgramSpreadsheetMergeCellsArgs,
7647
7891
  PluginProgramSpreadsheetMergeCellsResult,
@@ -7666,6 +7910,7 @@ function makeClientEnvelope(code, message, extra) {
7666
7910
  PluginProgramSpreadsheetTemplatesCreateResult,
7667
7911
  PluginProgramSpreadsheetTransactionArgs,
7668
7912
  PluginProgramSpreadsheetTransactionResult,
7913
+ PluginProgramSpreadsheetUpdateCustomSheetArgs,
7669
7914
  PluginProjectApi,
7670
7915
  PluginProjectInfo,
7671
7916
  PluginProjectRef,
@@ -7751,6 +7996,9 @@ function makeClientEnvelope(code, message, extra) {
7751
7996
  PluginSpreadsheetColumn,
7752
7997
  PluginSpreadsheetConditionalRule,
7753
7998
  PluginSpreadsheetConditionalRuleType,
7999
+ PluginSpreadsheetCustomSheet,
8000
+ PluginSpreadsheetCustomSheetConfig,
8001
+ PluginSpreadsheetCustomSheetProperty,
7754
8002
  PluginSpreadsheetDataset,
7755
8003
  PluginSpreadsheetExportFormat,
7756
8004
  PluginSpreadsheetFontStyle,