@snaptrude/plugin-core 0.9.11 → 0.9.12

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
@@ -407,6 +407,13 @@ __export(index_exports, {
407
407
  PluginDesignEraseApi: () => PluginDesignEraseApi,
408
408
  PluginDesignEraseEdgeArgs: () => PluginDesignEraseEdgeArgs,
409
409
  PluginDesignEraseEdgeResult: () => PluginDesignEraseEdgeResult,
410
+ PluginDesignFamilyApi: () => PluginDesignFamilyApi,
411
+ PluginDesignFamilyCreateArgs: () => PluginDesignFamilyCreateArgs,
412
+ PluginDesignFamilyFlexArgs: () => PluginDesignFamilyFlexArgs,
413
+ PluginDesignFamilyGetParametersArgs: () => PluginDesignFamilyGetParametersArgs,
414
+ PluginDesignFamilyPlaceArgs: () => PluginDesignFamilyPlaceArgs,
415
+ PluginDesignFamilyPrepareArgs: () => PluginDesignFamilyPrepareArgs,
416
+ PluginDesignFamilySetParametersArgs: () => PluginDesignFamilySetParametersArgs,
410
417
  PluginDesignFurnitureApi: () => PluginDesignFurnitureApi,
411
418
  PluginDesignFurnitureExistsArgs: () => PluginDesignFurnitureExistsArgs,
412
419
  PluginDesignFurnitureGetCatalogItemArgs: () => PluginDesignFurnitureGetCatalogItemArgs,
@@ -503,6 +510,8 @@ __export(index_exports, {
503
510
  PluginExecutionError: () => PluginExecutionError,
504
511
  PluginExportModelArgs: () => PluginExportModelArgs,
505
512
  PluginFaceMaterial: () => PluginFaceMaterial,
513
+ PluginFamilyBundleSchema: () => PluginFamilyBundleSchema,
514
+ PluginFamilySnapshotOption: () => PluginFamilySnapshotOption,
506
515
  PluginFurnitureCatalogItem: () => PluginFurnitureCatalogItem,
507
516
  PluginFurnitureDimensionUpdates: () => PluginFurnitureDimensionUpdates,
508
517
  PluginFurnitureDimensions: () => PluginFurnitureDimensions,
@@ -3628,6 +3637,7 @@ var PluginEntityType = z46.enum([
3628
3637
  "curtainWall",
3629
3638
  "mullion",
3630
3639
  "panel",
3640
+ "parametricComponent",
3631
3641
  "grid"
3632
3642
  ]);
3633
3643
  var PluginEntityFilter = z46.object({
@@ -4308,52 +4318,101 @@ var PluginDesignTypesGetArgs = z62.object({
4308
4318
  typeId: z62.string()
4309
4319
  });
4310
4320
 
4311
- // src/api/design/grids.ts
4321
+ // src/api/design/family.ts
4312
4322
  var z63 = __toESM(require("zod"), 1);
4313
- var PluginGridLineTagPolicy = z63.enum(["rewrite", "preserve"]);
4314
- var PluginGridLineAddress = z63.object({
4315
- wing: z63.number().int().nonnegative(),
4316
- line: z63.number().int().nonnegative()
4317
- });
4318
- var PluginGridWingEntry = z63.object({
4319
- wing: z63.number().int().nonnegative(),
4320
- spacing: z63.number().positive().finite().optional(),
4321
- count: z63.number().int().min(1).optional(),
4322
- spanMin: z63.number().finite().optional(),
4323
- spanMax: z63.number().finite().optional()
4324
- });
4325
- var PluginDesignGridsUpdateWingsArgs = z63.object({
4323
+ var PluginDesignFamilyApi = class {
4324
+ constructor() {
4325
+ }
4326
+ };
4327
+ var PluginFamilyBundleSchema = z63.object({
4328
+ root: z63.record(z63.string(), z63.unknown()),
4329
+ deps: z63.record(z63.string(), z63.record(z63.string(), z63.unknown())).optional()
4330
+ });
4331
+ var PluginFamilySnapshotOption = z63.union([
4332
+ z63.boolean(),
4333
+ z63.object({
4334
+ views: z63.array(z63.enum(["iso", "front", "right", "top"])).optional(),
4335
+ /** Pixels per tile (square), 64–2048; default 512. */
4336
+ tileSize: z63.number().optional()
4337
+ })
4338
+ ]);
4339
+ var PluginDesignFamilyPrepareArgs = z63.object({
4340
+ bundle: PluginFamilyBundleSchema.optional(),
4341
+ spec: PluginFamilyBundleSchema.optional(),
4342
+ snapshot: PluginFamilySnapshotOption.optional()
4343
+ });
4344
+ var PluginDesignFamilyFlexArgs = z63.object({
4345
+ values: z63.record(z63.string(), z63.union([z63.number(), z63.string()])),
4346
+ snapshot: PluginFamilySnapshotOption.optional()
4347
+ });
4348
+ var PluginDesignFamilyCreateArgs = z63.object({
4349
+ name: z63.string().optional(),
4350
+ teamId: z63.string().optional()
4351
+ });
4352
+ var PluginDesignFamilyPlaceArgs = z63.object({
4353
+ id: z63.string().optional(),
4354
+ version: z63.number().int().positive().optional(),
4355
+ position: Vec3Components.optional(),
4356
+ rotation: z63.number().optional(),
4357
+ values: z63.record(z63.string(), z63.union([z63.number(), z63.string()])).optional(),
4358
+ storey: z63.number().int().optional()
4359
+ });
4360
+ var PluginDesignFamilyGetParametersArgs = z63.object({
4361
+ component: ComponentHandle,
4362
+ /** Also return a picture of this instance (its recipe re-run at its values, with its paint). */
4363
+ snapshot: PluginFamilySnapshotOption.optional()
4364
+ });
4365
+ var PluginDesignFamilySetParametersArgs = z63.object({
4366
+ component: ComponentHandle,
4367
+ values: z63.record(z63.string(), z63.union([z63.number(), z63.string()]))
4368
+ });
4369
+
4370
+ // src/api/design/grids.ts
4371
+ var z64 = __toESM(require("zod"), 1);
4372
+ var PluginGridLineTagPolicy = z64.enum(["rewrite", "preserve"]);
4373
+ var PluginGridLineAddress = z64.object({
4374
+ wing: z64.number().int().nonnegative(),
4375
+ line: z64.number().int().nonnegative()
4376
+ });
4377
+ var PluginGridWingEntry = z64.object({
4378
+ wing: z64.number().int().nonnegative(),
4379
+ spacing: z64.number().positive().finite().optional(),
4380
+ count: z64.number().int().min(1).optional(),
4381
+ spanMin: z64.number().finite().optional(),
4382
+ spanMax: z64.number().finite().optional()
4383
+ });
4384
+ var PluginDesignGridsUpdateWingsArgs = z64.object({
4326
4385
  grid: ComponentHandle,
4327
- wings: z63.array(PluginGridWingEntry).min(1)
4328
- });
4329
- var PluginGridLineEntry = z63.object({
4330
- wing: z63.number().int().nonnegative(),
4331
- line: z63.number().int().nonnegative(),
4332
- tag: z63.string().min(1).optional(),
4333
- distanceToPrevious: z63.number().positive().finite().optional(),
4334
- distanceToNext: z63.number().positive().finite().optional(),
4386
+ wings: z64.array(PluginGridWingEntry).min(1)
4387
+ });
4388
+ var PluginGridLineEntry = z64.object({
4389
+ wing: z64.number().int().nonnegative(),
4390
+ line: z64.number().int().nonnegative(),
4391
+ tag: z64.string().min(1).optional(),
4392
+ distanceToPrevious: z64.number().positive().finite().optional(),
4393
+ distanceToNext: z64.number().positive().finite().optional(),
4335
4394
  props: PluginGridStyleOptions.optional(),
4336
- visible: z63.literal(false).optional()
4395
+ visible: z64.literal(false).optional()
4337
4396
  }).superRefine((entry, ctx) => {
4338
4397
  if (entry.distanceToPrevious !== void 0 && entry.distanceToNext !== void 0) {
4339
4398
  ctx.addIssue({
4340
- code: z63.ZodIssueCode.custom,
4399
+ code: z64.ZodIssueCode.custom,
4341
4400
  message: "distanceToPrevious and distanceToNext are mutually exclusive on one line entry"
4342
4401
  });
4343
4402
  }
4344
4403
  });
4345
- var PluginDesignGridsUpdateLinesArgs = z63.object({
4404
+ var PluginDesignGridsUpdateLinesArgs = z64.object({
4346
4405
  grid: ComponentHandle,
4347
- lines: z63.array(PluginGridLineEntry).min(1)
4406
+ lines: z64.array(PluginGridLineEntry).min(1)
4348
4407
  });
4349
- var PluginDesignGridsAddLineArgs = z63.object({
4408
+ var PluginDesignGridsAddLineArgs = z64.object({
4350
4409
  grid: ComponentHandle,
4351
- wing: z63.number().int().nonnegative(),
4352
- position: z63.number().finite()
4410
+ wing: z64.number().int().nonnegative(),
4411
+ position: z64.number().finite()
4353
4412
  });
4354
- var PluginDesignGridsRemoveLinesArgs = z63.object({
4413
+ var PluginDesignGridsRemoveLinesArgs = z64.object({
4355
4414
  grid: ComponentHandle,
4356
- lines: z63.array(PluginGridLineAddress).min(1),
4415
+ lines: z64.array(PluginGridLineAddress).min(1),
4357
4416
  tagPolicy: PluginGridLineTagPolicy.optional()
4358
4417
  });
4359
4418
  var PluginDesignGridsApi = class {
@@ -4368,37 +4427,37 @@ var PluginDesignApi = class {
4368
4427
  };
4369
4428
 
4370
4429
  // src/api/entity/buildableEnvelope.ts
4371
- var z64 = __toESM(require("zod"), 1);
4430
+ var z65 = __toESM(require("zod"), 1);
4372
4431
  var PluginBuildableEnvelopeApi = class {
4373
4432
  constructor() {
4374
4433
  }
4375
4434
  };
4376
- var PluginBuildableEnvelopePolygonVertex = z64.union([
4377
- z64.object({ x: z64.number().finite(), z: z64.number().finite() }).strict(),
4378
- z64.tuple([z64.number().finite(), z64.number().finite()])
4435
+ var PluginBuildableEnvelopePolygonVertex = z65.union([
4436
+ z65.object({ x: z65.number().finite(), z: z65.number().finite() }).strict(),
4437
+ z65.tuple([z65.number().finite(), z65.number().finite()])
4379
4438
  ]);
4380
- var PluginBuildableEnvelopeVerticalCap = z64.discriminatedUnion("kind", [
4381
- z64.object({
4382
- kind: z64.literal("max_height"),
4383
- maxHeight: z64.number().finite().positive()
4439
+ var PluginBuildableEnvelopeVerticalCap = z65.discriminatedUnion("kind", [
4440
+ z65.object({
4441
+ kind: z65.literal("max_height"),
4442
+ maxHeight: z65.number().finite().positive()
4384
4443
  }).strict(),
4385
- z64.object({
4386
- kind: z64.literal("max_floors"),
4387
- maxFloors: z64.number().finite().int().positive()
4444
+ z65.object({
4445
+ kind: z65.literal("max_floors"),
4446
+ maxFloors: z65.number().finite().int().positive()
4388
4447
  }).strict()
4389
4448
  ]);
4390
- var PluginBuildableEnvelopeSetbackTier = z64.object({
4391
- aboveHeight: z64.number().finite().nonnegative(),
4392
- front: z64.number().finite().nonnegative(),
4393
- side: z64.number().finite().nonnegative(),
4394
- rear: z64.number().finite().nonnegative()
4449
+ var PluginBuildableEnvelopeSetbackTier = z65.object({
4450
+ aboveHeight: z65.number().finite().nonnegative(),
4451
+ front: z65.number().finite().nonnegative(),
4452
+ side: z65.number().finite().nonnegative(),
4453
+ rear: z65.number().finite().nonnegative()
4395
4454
  }).strict();
4396
4455
  function refineSetbackTiers(args, ctx) {
4397
4456
  const tiers = args.setbacks;
4398
4457
  if (tiers.length === 0) return;
4399
4458
  if (tiers[0].aboveHeight !== 0) {
4400
4459
  ctx.addIssue({
4401
- code: z64.ZodIssueCode.custom,
4460
+ code: z65.ZodIssueCode.custom,
4402
4461
  path: ["setbacks", 0, "aboveHeight"],
4403
4462
  message: "Ground tier required: setbacks[0].aboveHeight must be 0."
4404
4463
  });
@@ -4406,66 +4465,66 @@ function refineSetbackTiers(args, ctx) {
4406
4465
  for (let i = 1; i < tiers.length; i++) {
4407
4466
  if (!(tiers[i].aboveHeight > tiers[i - 1].aboveHeight)) {
4408
4467
  ctx.addIssue({
4409
- code: z64.ZodIssueCode.custom,
4468
+ code: z65.ZodIssueCode.custom,
4410
4469
  path: ["setbacks", i, "aboveHeight"],
4411
4470
  message: "Setback tiers must be ordered by strictly increasing aboveHeight."
4412
4471
  });
4413
4472
  }
4414
4473
  }
4415
4474
  }
4416
- var PluginBuildableEnvelopeCreateArgs = z64.object({
4417
- sitePolygon: z64.array(PluginBuildableEnvelopePolygonVertex).min(3),
4418
- lengthUnit: z64.union([z64.literal("ft"), z64.literal("m")]),
4419
- setbacks: z64.array(PluginBuildableEnvelopeSetbackTier).min(1),
4475
+ var PluginBuildableEnvelopeCreateArgs = z65.object({
4476
+ sitePolygon: z65.array(PluginBuildableEnvelopePolygonVertex).min(3),
4477
+ lengthUnit: z65.union([z65.literal("ft"), z65.literal("m")]),
4478
+ setbacks: z65.array(PluginBuildableEnvelopeSetbackTier).min(1),
4420
4479
  verticalCap: PluginBuildableEnvelopeVerticalCap,
4421
- floorToFloor: z64.number().finite().positive(),
4422
- farRatio: z64.number().finite().positive().optional(),
4423
- lotCoverageMaxPct: z64.number().finite().min(0).max(100).optional()
4480
+ floorToFloor: z65.number().finite().positive(),
4481
+ farRatio: z65.number().finite().positive().optional(),
4482
+ lotCoverageMaxPct: z65.number().finite().min(0).max(100).optional()
4424
4483
  }).strict().superRefine(refineSetbackTiers);
4425
- var PluginBuildableEnvelopeCreateResult = z64.object({
4426
- buildableEnvelopeId: z64.string().min(1)
4484
+ var PluginBuildableEnvelopeCreateResult = z65.object({
4485
+ buildableEnvelopeId: z65.string().min(1)
4427
4486
  }).strict();
4428
- var PluginBuildableEnvelopeUpdateArgs = z64.object({
4429
- buildableEnvelopeId: z64.string().min(1),
4430
- sitePolygon: z64.array(PluginBuildableEnvelopePolygonVertex).min(3),
4431
- lengthUnit: z64.union([z64.literal("ft"), z64.literal("m")]),
4432
- setbacks: z64.array(PluginBuildableEnvelopeSetbackTier).min(1),
4487
+ var PluginBuildableEnvelopeUpdateArgs = z65.object({
4488
+ buildableEnvelopeId: z65.string().min(1),
4489
+ sitePolygon: z65.array(PluginBuildableEnvelopePolygonVertex).min(3),
4490
+ lengthUnit: z65.union([z65.literal("ft"), z65.literal("m")]),
4491
+ setbacks: z65.array(PluginBuildableEnvelopeSetbackTier).min(1),
4433
4492
  verticalCap: PluginBuildableEnvelopeVerticalCap,
4434
- floorToFloor: z64.number().finite().positive(),
4435
- farRatio: z64.number().finite().positive().optional(),
4436
- lotCoverageMaxPct: z64.number().finite().min(0).max(100).optional()
4493
+ floorToFloor: z65.number().finite().positive(),
4494
+ farRatio: z65.number().finite().positive().optional(),
4495
+ lotCoverageMaxPct: z65.number().finite().min(0).max(100).optional()
4437
4496
  }).strict().superRefine(refineSetbackTiers);
4438
- var PluginBuildableEnvelopeUpdateResult = z64.object({
4439
- buildableEnvelopeId: z64.string().min(1)
4497
+ var PluginBuildableEnvelopeUpdateResult = z65.object({
4498
+ buildableEnvelopeId: z65.string().min(1)
4440
4499
  }).strict();
4441
4500
 
4442
4501
  // src/api/entity/referenceLine.ts
4443
- var z65 = __toESM(require("zod"), 1);
4502
+ var z66 = __toESM(require("zod"), 1);
4444
4503
  var PluginReferenceLineApi = class {
4445
4504
  constructor() {
4446
4505
  }
4447
4506
  };
4448
- var PluginReferenceLineCreateMultiArgs = z65.object({
4507
+ var PluginReferenceLineCreateMultiArgs = z66.object({
4449
4508
  profile: ProfileHandle
4450
4509
  });
4451
- var PluginReferenceLineCreateMultiResult = z65.object({
4452
- referenceLineIds: z65.array(z65.string())
4510
+ var PluginReferenceLineCreateMultiResult = z66.object({
4511
+ referenceLineIds: z66.array(z66.string())
4453
4512
  });
4454
- var PluginReferenceLineGetProperty = z65.enum([
4513
+ var PluginReferenceLineGetProperty = z66.enum([
4455
4514
  "curve"
4456
4515
  ]);
4457
- var PluginReferenceLineGetArgs = z65.object({
4458
- referenceLineId: z65.string(),
4459
- properties: z65.array(PluginReferenceLineGetProperty)
4516
+ var PluginReferenceLineGetArgs = z66.object({
4517
+ referenceLineId: z66.string(),
4518
+ properties: z66.array(PluginReferenceLineGetProperty)
4460
4519
  });
4461
- var PluginReferenceLineGetResult = z65.object({
4520
+ var PluginReferenceLineGetResult = z66.object({
4462
4521
  curve: CurveHandle
4463
4522
  }).partial();
4464
- var PluginReferenceLineGetAllResult = z65.object({
4465
- referenceLineIds: z65.array(z65.string())
4523
+ var PluginReferenceLineGetAllResult = z66.object({
4524
+ referenceLineIds: z66.array(z66.string())
4466
4525
  });
4467
- var PluginReferenceLineDeleteArgs = z65.object({
4468
- referenceLineId: z65.string()
4526
+ var PluginReferenceLineDeleteArgs = z66.object({
4527
+ referenceLineId: z66.string()
4469
4528
  });
4470
4529
 
4471
4530
  // src/api/entity/index.ts
@@ -4475,27 +4534,27 @@ var PluginEntityApi = class {
4475
4534
  };
4476
4535
 
4477
4536
  // src/api/program/departments.ts
4478
- var z67 = __toESM(require("zod"), 1);
4537
+ var z68 = __toESM(require("zod"), 1);
4479
4538
 
4480
4539
  // src/api/program/metrics.ts
4481
- var z66 = __toESM(require("zod"), 1);
4540
+ var z67 = __toESM(require("zod"), 1);
4482
4541
  var PluginProgramMetricsApi = class {
4483
4542
  constructor() {
4484
4543
  }
4485
4544
  };
4486
- var PluginAreaUnit = z66.enum(["ft2", "m2"]);
4487
- var PluginProgramDepartmentMetric = z66.object({
4488
- departmentId: z66.string(),
4489
- name: z66.string(),
4490
- targetArea: z66.number().nullable(),
4491
- allocatedArea: z66.number()
4545
+ var PluginAreaUnit = z67.enum(["ft2", "m2"]);
4546
+ var PluginProgramDepartmentMetric = z67.object({
4547
+ departmentId: z67.string(),
4548
+ name: z67.string(),
4549
+ targetArea: z67.number().nullable(),
4550
+ allocatedArea: z67.number()
4492
4551
  });
4493
- var PluginProgramMetricsSummary = z66.object({
4552
+ var PluginProgramMetricsSummary = z67.object({
4494
4553
  units: PluginAreaUnit,
4495
- totalTargetArea: z66.number(),
4496
- totalAllocatedArea: z66.number(),
4497
- unassignedArea: z66.number(),
4498
- departments: z66.array(PluginProgramDepartmentMetric)
4554
+ totalTargetArea: z67.number(),
4555
+ totalAllocatedArea: z67.number(),
4556
+ unassignedArea: z67.number(),
4557
+ departments: z67.array(PluginProgramDepartmentMetric)
4499
4558
  }).refine(
4500
4559
  (s) => {
4501
4560
  const summed = s.unassignedArea + s.departments.reduce((acc, d) => acc + d.allocatedArea, 0);
@@ -4512,19 +4571,19 @@ var PluginProgramDepartmentsApi = class {
4512
4571
  constructor() {
4513
4572
  }
4514
4573
  };
4515
- var PluginProgramDepartment = z67.object({
4516
- id: z67.string(),
4517
- name: z67.string(),
4518
- color: z67.string(),
4519
- targetArea: z67.number().nullable(),
4520
- targetCount: z67.number()
4574
+ var PluginProgramDepartment = z68.object({
4575
+ id: z68.string(),
4576
+ name: z68.string(),
4577
+ color: z68.string(),
4578
+ targetArea: z68.number().nullable(),
4579
+ targetCount: z68.number()
4521
4580
  });
4522
- var PluginProgramDepartmentsListResult = z67.object({
4581
+ var PluginProgramDepartmentsListResult = z68.object({
4523
4582
  units: PluginAreaUnit,
4524
- departments: z67.array(PluginProgramDepartment)
4583
+ departments: z68.array(PluginProgramDepartment)
4525
4584
  });
4526
- var PluginProgramDepartmentsGetArgs = z67.object({
4527
- departmentId: z67.string()
4585
+ var PluginProgramDepartmentsGetArgs = z68.object({
4586
+ departmentId: z68.string()
4528
4587
  });
4529
4588
  var PluginProgramDepartmentsGetResult = PluginProgramDepartment.extend(
4530
4589
  {
@@ -4534,115 +4593,115 @@ var PluginProgramDepartmentsGetResult = PluginProgramDepartment.extend(
4534
4593
  var PluginProgramDepartmentRecord = PluginProgramDepartment.extend({
4535
4594
  units: PluginAreaUnit
4536
4595
  });
4537
- var PluginProgramDepartmentsCreateArgs = z67.object({
4538
- name: z67.string(),
4539
- color: z67.string()
4596
+ var PluginProgramDepartmentsCreateArgs = z68.object({
4597
+ name: z68.string(),
4598
+ color: z68.string()
4540
4599
  });
4541
- var PluginProgramDepartmentsCreateResult = z67.object({
4542
- departmentId: z67.string()
4600
+ var PluginProgramDepartmentsCreateResult = z68.object({
4601
+ departmentId: z68.string()
4543
4602
  });
4544
- var PluginProgramDepartmentsUpdateArgs = z67.object({
4545
- departmentId: z67.string(),
4546
- name: z67.string().optional(),
4547
- color: z67.string().optional()
4603
+ var PluginProgramDepartmentsUpdateArgs = z68.object({
4604
+ departmentId: z68.string(),
4605
+ name: z68.string().optional(),
4606
+ color: z68.string().optional()
4548
4607
  });
4549
4608
  var PluginProgramDepartmentsUpdateResult = PluginProgramDepartmentRecord;
4550
- var PluginProgramDepartmentsAssignArgs = z67.object({
4551
- departmentId: z67.string(),
4552
- spaceIds: z67.array(ComponentHandle).min(1)
4609
+ var PluginProgramDepartmentsAssignArgs = z68.object({
4610
+ departmentId: z68.string(),
4611
+ spaceIds: z68.array(ComponentHandle).min(1)
4553
4612
  });
4554
- var PluginProgramDepartmentsAssignResult = z67.object({
4555
- departmentId: z67.string(),
4556
- spaceIds: z67.array(ComponentHandle)
4613
+ var PluginProgramDepartmentsAssignResult = z68.object({
4614
+ departmentId: z68.string(),
4615
+ spaceIds: z68.array(ComponentHandle)
4557
4616
  });
4558
- var PluginProgramDepartmentsUnassignArgs = z67.object({
4559
- spaceIds: z67.array(ComponentHandle).min(1)
4617
+ var PluginProgramDepartmentsUnassignArgs = z68.object({
4618
+ spaceIds: z68.array(ComponentHandle).min(1)
4560
4619
  });
4561
- var PluginProgramDepartmentsUnassignResult = z67.object({
4562
- spaceIds: z67.array(ComponentHandle)
4620
+ var PluginProgramDepartmentsUnassignResult = z68.object({
4621
+ spaceIds: z68.array(ComponentHandle)
4563
4622
  });
4564
- var PluginProgramDepartmentsSetTargetAreaArgs = z67.object({
4565
- departmentId: z67.string(),
4566
- targetArea: z67.number(),
4623
+ var PluginProgramDepartmentsSetTargetAreaArgs = z68.object({
4624
+ departmentId: z68.string(),
4625
+ targetArea: z68.number(),
4567
4626
  units: PluginAreaUnit.optional()
4568
4627
  });
4569
4628
  var PluginProgramDepartmentsSetTargetAreaResult = PluginProgramDepartmentRecord;
4570
- var PluginProgramDepartmentsSetTargetCountArgs = z67.object({
4571
- departmentId: z67.string(),
4572
- targetCount: z67.number().int().nonnegative()
4629
+ var PluginProgramDepartmentsSetTargetCountArgs = z68.object({
4630
+ departmentId: z68.string(),
4631
+ targetCount: z68.number().int().nonnegative()
4573
4632
  });
4574
4633
  var PluginProgramDepartmentsSetTargetCountResult = PluginProgramDepartmentRecord;
4575
- var PluginProgramDepartmentsDeleteArgs = z67.object({
4576
- departmentId: z67.string()
4634
+ var PluginProgramDepartmentsDeleteArgs = z68.object({
4635
+ departmentId: z68.string()
4577
4636
  });
4578
- var PluginProgramDepartmentsDeleteResult = z67.object({
4579
- departmentId: z67.string(),
4580
- reassignedSpaceIds: z67.array(ComponentHandle)
4637
+ var PluginProgramDepartmentsDeleteResult = z68.object({
4638
+ departmentId: z68.string(),
4639
+ reassignedSpaceIds: z68.array(ComponentHandle)
4581
4640
  });
4582
4641
 
4583
4642
  // src/api/program/adjacency.ts
4584
- var z68 = __toESM(require("zod"), 1);
4643
+ var z69 = __toESM(require("zod"), 1);
4585
4644
  var PluginProgramAdjacencyApi = class {
4586
4645
  constructor() {
4587
4646
  }
4588
4647
  };
4589
- var PluginAdjacencyLevel = z68.enum(["department", "space"]);
4590
- var PluginProgramAdjacencyGetMatrixArgs = z68.object({
4648
+ var PluginAdjacencyLevel = z69.enum(["department", "space"]);
4649
+ var PluginProgramAdjacencyGetMatrixArgs = z69.object({
4591
4650
  level: PluginAdjacencyLevel,
4592
- ids: z68.array(z68.string()).optional()
4651
+ ids: z69.array(z69.string()).optional()
4593
4652
  });
4594
- var PluginProgramAdjacencyGetMatrixResult = z68.object({
4595
- ids: z68.array(z68.string()),
4596
- departmentIds: z68.array(z68.string().nullable()).optional(),
4597
- matrix: z68.array(z68.array(z68.number()))
4653
+ var PluginProgramAdjacencyGetMatrixResult = z69.object({
4654
+ ids: z69.array(z69.string()),
4655
+ departmentIds: z69.array(z69.string().nullable()).optional(),
4656
+ matrix: z69.array(z69.array(z69.number()))
4598
4657
  });
4599
- var PluginProgramAdjacencyComputeResult = z68.object({
4600
- success: z68.boolean(),
4601
- error: z68.string().optional()
4658
+ var PluginProgramAdjacencyComputeResult = z69.object({
4659
+ success: z69.boolean(),
4660
+ error: z69.string().optional()
4602
4661
  });
4603
4662
 
4604
4663
  // src/api/program/layout.ts
4605
- var z69 = __toESM(require("zod"), 1);
4664
+ var z70 = __toESM(require("zod"), 1);
4606
4665
  var PluginProgramLayoutApi = class {
4607
4666
  constructor() {
4608
4667
  }
4609
4668
  };
4610
- var PluginProgramLayoutRunArgs = z69.object({
4611
- spaceIds: z69.array(z69.string()).optional(),
4612
- departmentIds: z69.array(z69.string()).optional(),
4613
- envelopeId: z69.string().optional(),
4614
- autoCommit: z69.boolean().optional()
4669
+ var PluginProgramLayoutRunArgs = z70.object({
4670
+ spaceIds: z70.array(z70.string()).optional(),
4671
+ departmentIds: z70.array(z70.string()).optional(),
4672
+ envelopeId: z70.string().optional(),
4673
+ autoCommit: z70.boolean().optional()
4615
4674
  });
4616
- var PluginProgramLayoutRunResult = z69.object({
4617
- success: z69.boolean(),
4618
- error: z69.string().optional()
4675
+ var PluginProgramLayoutRunResult = z70.object({
4676
+ success: z70.boolean(),
4677
+ error: z70.string().optional()
4619
4678
  });
4620
- var PluginProgramLayoutJobStatus = z69.enum([
4679
+ var PluginProgramLayoutJobStatus = z70.enum([
4621
4680
  "running",
4622
4681
  "active",
4623
4682
  "inactive",
4624
4683
  "pendingReview"
4625
4684
  ]);
4626
- var PluginProgramLayoutJobState = z69.object({
4685
+ var PluginProgramLayoutJobState = z70.object({
4627
4686
  status: PluginProgramLayoutJobStatus,
4628
- totalSolutions: z69.number().int().optional()
4687
+ totalSolutions: z70.number().int().optional()
4629
4688
  });
4630
4689
  var PluginProgramLayoutStateResult = PluginProgramLayoutJobState.nullable();
4631
- var PluginProgramLayoutApplySolutionArgs = z69.object({
4632
- index: z69.number().int().min(0)
4690
+ var PluginProgramLayoutApplySolutionArgs = z70.object({
4691
+ index: z70.number().int().min(0)
4633
4692
  });
4634
- var PluginProgramLayoutApplyResult = z69.object({
4635
- success: z69.boolean(),
4636
- error: z69.string().optional()
4693
+ var PluginProgramLayoutApplyResult = z70.object({
4694
+ success: z70.boolean(),
4695
+ error: z70.string().optional()
4637
4696
  });
4638
- var PluginProgramLayoutStackResult = z69.object({
4639
- success: z69.boolean(),
4640
- skippedStoreys: z69.array(z69.number()),
4641
- error: z69.string().optional()
4697
+ var PluginProgramLayoutStackResult = z70.object({
4698
+ success: z70.boolean(),
4699
+ skippedStoreys: z70.array(z70.number()),
4700
+ error: z70.string().optional()
4642
4701
  });
4643
4702
 
4644
4703
  // src/api/program/spreadsheet.ts
4645
- var z70 = __toESM(require("zod"), 1);
4704
+ var z71 = __toESM(require("zod"), 1);
4646
4705
  var PluginProgramSpreadsheetApi = class {
4647
4706
  constructor() {
4648
4707
  }
@@ -4659,85 +4718,85 @@ var PluginProgramSpreadsheetDatasetsApi = class {
4659
4718
  constructor() {
4660
4719
  }
4661
4720
  };
4662
- var PluginSpreadsheetCell = z70.union([
4663
- z70.string(),
4664
- z70.number(),
4665
- z70.boolean(),
4666
- z70.null()
4721
+ var PluginSpreadsheetCell = z71.union([
4722
+ z71.string(),
4723
+ z71.number(),
4724
+ z71.boolean(),
4725
+ z71.null()
4667
4726
  ]);
4668
- var PluginSpreadsheetAlign = z70.enum(["left", "center", "right"]);
4669
- var PluginSpreadsheetColumn = z70.object({
4670
- key: z70.string(),
4671
- header: z70.string(),
4672
- width: z70.number().optional(),
4673
- format: z70.string().optional(),
4727
+ var PluginSpreadsheetAlign = z71.enum(["left", "center", "right"]);
4728
+ var PluginSpreadsheetColumn = z71.object({
4729
+ key: z71.string(),
4730
+ header: z71.string(),
4731
+ width: z71.number().optional(),
4732
+ format: z71.string().optional(),
4674
4733
  align: PluginSpreadsheetAlign.optional()
4675
4734
  });
4676
- var PluginSpreadsheetTotal = z70.object({
4677
- column: z70.string(),
4678
- fn: z70.enum(["sum", "avg", "count", "min", "max"]),
4679
- label: z70.string().optional()
4680
- });
4681
- var PluginProgramSpreadsheetRenderArgs = z70.object({
4682
- sheetName: z70.string(),
4683
- columns: z70.array(PluginSpreadsheetColumn),
4684
- rows: z70.array(z70.record(z70.string(), PluginSpreadsheetCell)),
4685
- title: z70.string().optional(),
4686
- startCell: z70.string().optional(),
4687
- whenExists: z70.enum(["replace", "error"]).optional(),
4688
- asTable: z70.boolean().optional(),
4689
- freezeHeader: z70.boolean().optional(),
4690
- totals: z70.array(PluginSpreadsheetTotal).optional()
4691
- });
4692
- var PluginProgramSpreadsheetRenderResult = z70.object({
4693
- sheetName: z70.string(),
4694
- range: z70.string(),
4695
- headerRange: z70.string(),
4696
- rowCount: z70.number(),
4697
- colCount: z70.number(),
4698
- tableName: z70.string().nullable(),
4699
- replaced: z70.boolean()
4700
- });
4701
- var PluginProgramSpreadsheetRenderDatasetArgs = z70.object({
4702
- sheetName: z70.string().optional(),
4703
- title: z70.string().optional(),
4704
- filter: z70.string().optional()
4705
- });
4706
- var PluginSpreadsheetExportFormat = z70.enum(["xlsx", "pdf", "csv"]);
4707
- var PluginProgramSpreadsheetExportArgs = z70.object({
4735
+ var PluginSpreadsheetTotal = z71.object({
4736
+ column: z71.string(),
4737
+ fn: z71.enum(["sum", "avg", "count", "min", "max"]),
4738
+ label: z71.string().optional()
4739
+ });
4740
+ var PluginProgramSpreadsheetRenderArgs = z71.object({
4741
+ sheetName: z71.string(),
4742
+ columns: z71.array(PluginSpreadsheetColumn),
4743
+ rows: z71.array(z71.record(z71.string(), PluginSpreadsheetCell)),
4744
+ title: z71.string().optional(),
4745
+ startCell: z71.string().optional(),
4746
+ whenExists: z71.enum(["replace", "error"]).optional(),
4747
+ asTable: z71.boolean().optional(),
4748
+ freezeHeader: z71.boolean().optional(),
4749
+ totals: z71.array(PluginSpreadsheetTotal).optional()
4750
+ });
4751
+ var PluginProgramSpreadsheetRenderResult = z71.object({
4752
+ sheetName: z71.string(),
4753
+ range: z71.string(),
4754
+ headerRange: z71.string(),
4755
+ rowCount: z71.number(),
4756
+ colCount: z71.number(),
4757
+ tableName: z71.string().nullable(),
4758
+ replaced: z71.boolean()
4759
+ });
4760
+ var PluginProgramSpreadsheetRenderDatasetArgs = z71.object({
4761
+ sheetName: z71.string().optional(),
4762
+ title: z71.string().optional(),
4763
+ filter: z71.string().optional()
4764
+ });
4765
+ var PluginSpreadsheetExportFormat = z71.enum(["xlsx", "pdf", "csv"]);
4766
+ var PluginProgramSpreadsheetExportArgs = z71.object({
4708
4767
  format: PluginSpreadsheetExportFormat,
4709
- fileName: z70.string().optional(),
4710
- sheetName: z70.string().optional()
4768
+ fileName: z71.string().optional(),
4769
+ sheetName: z71.string().optional()
4711
4770
  });
4712
- var PluginProgramSpreadsheetExportResult = z70.object({
4771
+ var PluginProgramSpreadsheetExportResult = z71.object({
4713
4772
  format: PluginSpreadsheetExportFormat,
4714
- fileName: z70.string(),
4715
- mimeType: z70.string(),
4716
- dataBase64: z70.string()
4717
- });
4718
- var PluginSpreadsheetSheetInfo = z70.object({
4719
- name: z70.string(),
4720
- index: z70.number(),
4721
- visible: z70.boolean(),
4722
- rowCount: z70.number(),
4723
- colCount: z70.number()
4724
- });
4725
- var PluginProgramSpreadsheetListSheetsResult = z70.object({
4726
- sheets: z70.array(PluginSpreadsheetSheetInfo),
4727
- activeSheet: z70.string().nullable()
4728
- });
4729
- var PluginProgramSpreadsheetGetSheetDataArgs = z70.object({
4730
- sheetName: z70.string(),
4731
- range: z70.string().optional(),
4732
- header: z70.boolean().optional()
4733
- });
4734
- var PluginProgramSpreadsheetGetSheetDataResult = z70.object({
4735
- sheetName: z70.string(),
4736
- range: z70.string(),
4737
- values: z70.array(z70.array(PluginSpreadsheetCell)),
4738
- records: z70.array(z70.record(z70.string(), PluginSpreadsheetCell)).optional()
4739
- });
4740
- var PluginSpreadsheetChartType = z70.enum([
4773
+ fileName: z71.string(),
4774
+ mimeType: z71.string(),
4775
+ dataBase64: z71.string()
4776
+ });
4777
+ var PluginSpreadsheetSheetInfo = z71.object({
4778
+ name: z71.string(),
4779
+ index: z71.number(),
4780
+ visible: z71.boolean(),
4781
+ rowCount: z71.number(),
4782
+ colCount: z71.number()
4783
+ });
4784
+ var PluginProgramSpreadsheetListSheetsResult = z71.object({
4785
+ sheets: z71.array(PluginSpreadsheetSheetInfo),
4786
+ activeSheet: z71.string().nullable()
4787
+ });
4788
+ var PluginProgramSpreadsheetGetSheetDataArgs = z71.object({
4789
+ sheetName: z71.string(),
4790
+ range: z71.string().optional(),
4791
+ header: z71.boolean().optional()
4792
+ });
4793
+ var PluginProgramSpreadsheetGetSheetDataResult = z71.object({
4794
+ sheetName: z71.string(),
4795
+ range: z71.string(),
4796
+ values: z71.array(z71.array(PluginSpreadsheetCell)),
4797
+ records: z71.array(z71.record(z71.string(), PluginSpreadsheetCell)).optional()
4798
+ });
4799
+ var PluginSpreadsheetChartType = z71.enum([
4741
4800
  "column",
4742
4801
  "bar",
4743
4802
  "line",
@@ -4745,262 +4804,262 @@ var PluginSpreadsheetChartType = z70.enum([
4745
4804
  "area",
4746
4805
  "scatter"
4747
4806
  ]);
4748
- var PluginProgramSpreadsheetAddChartArgs = z70.object({
4749
- sheetName: z70.string(),
4807
+ var PluginProgramSpreadsheetAddChartArgs = z71.object({
4808
+ sheetName: z71.string(),
4750
4809
  chartType: PluginSpreadsheetChartType,
4751
- dataRange: z70.string(),
4752
- title: z70.string().optional(),
4753
- position: z70.object({ x: z70.number(), y: z70.number() }).optional(),
4754
- size: z70.object({ width: z70.number(), height: z70.number() }).optional()
4755
- });
4756
- var PluginProgramSpreadsheetAddChartResult = z70.object({
4757
- chartId: z70.string()
4758
- });
4759
- var PluginProgramSpreadsheetHighlightCellsArgs = z70.object({
4760
- sheetName: z70.string(),
4761
- range: z70.string(),
4762
- color: z70.string().optional(),
4763
- bold: z70.boolean().optional()
4764
- });
4765
- var PluginProgramSpreadsheetHighlightCellsResult = z70.object({
4766
- sheetName: z70.string(),
4767
- range: z70.string()
4768
- });
4769
- var PluginSpreadsheetProgramRow = z70.object({
4770
- departmentId: z70.string(),
4771
- name: z70.string(),
4772
- targetArea: z70.number().nullable(),
4773
- allocatedArea: z70.number(),
4774
- variance: z70.number().nullable()
4775
- });
4776
- var PluginProgramSpreadsheetGetProgramResult = z70.object({
4810
+ dataRange: z71.string(),
4811
+ title: z71.string().optional(),
4812
+ position: z71.object({ x: z71.number(), y: z71.number() }).optional(),
4813
+ size: z71.object({ width: z71.number(), height: z71.number() }).optional()
4814
+ });
4815
+ var PluginProgramSpreadsheetAddChartResult = z71.object({
4816
+ chartId: z71.string()
4817
+ });
4818
+ var PluginProgramSpreadsheetHighlightCellsArgs = z71.object({
4819
+ sheetName: z71.string(),
4820
+ range: z71.string(),
4821
+ color: z71.string().optional(),
4822
+ bold: z71.boolean().optional()
4823
+ });
4824
+ var PluginProgramSpreadsheetHighlightCellsResult = z71.object({
4825
+ sheetName: z71.string(),
4826
+ range: z71.string()
4827
+ });
4828
+ var PluginSpreadsheetProgramRow = z71.object({
4829
+ departmentId: z71.string(),
4830
+ name: z71.string(),
4831
+ targetArea: z71.number().nullable(),
4832
+ allocatedArea: z71.number(),
4833
+ variance: z71.number().nullable()
4834
+ });
4835
+ var PluginProgramSpreadsheetGetProgramResult = z71.object({
4777
4836
  units: PluginAreaUnit,
4778
- rows: z70.array(PluginSpreadsheetProgramRow),
4779
- totalTargetArea: z70.number(),
4780
- totalAllocatedArea: z70.number(),
4781
- generatedAt: z70.string()
4782
- });
4783
- var PluginSpreadsheetTakeoffRow = z70.object({
4784
- objectType: z70.string(),
4785
- category: z70.string(),
4786
- family: z70.string(),
4787
- quantity: z70.number(),
4788
- unit: z70.string()
4789
- });
4790
- var PluginProgramSpreadsheetGetTakeoffResult = z70.object({
4791
- rows: z70.array(PluginSpreadsheetTakeoffRow),
4792
- rowCount: z70.number(),
4793
- generatedAt: z70.string()
4794
- });
4795
- var PluginSpreadsheetMaterialTakeoffRow = z70.object({
4796
- objectType: z70.string(),
4797
- family: z70.string(),
4798
- material: z70.string(),
4799
- quantity: z70.number(),
4800
- unit: z70.string()
4801
- });
4802
- var PluginProgramSpreadsheetGetMaterialTakeoffResult = z70.object({
4803
- rows: z70.array(PluginSpreadsheetMaterialTakeoffRow),
4804
- rowCount: z70.number(),
4805
- generatedAt: z70.string()
4806
- });
4807
- var PluginSpreadsheetWhenExists = z70.enum(["reuse", "replace", "error"]);
4808
- var PluginProgramSpreadsheetCreateSheetArgs = z70.object({
4809
- name: z70.string(),
4837
+ rows: z71.array(PluginSpreadsheetProgramRow),
4838
+ totalTargetArea: z71.number(),
4839
+ totalAllocatedArea: z71.number(),
4840
+ generatedAt: z71.string()
4841
+ });
4842
+ var PluginSpreadsheetTakeoffRow = z71.object({
4843
+ objectType: z71.string(),
4844
+ category: z71.string(),
4845
+ family: z71.string(),
4846
+ quantity: z71.number(),
4847
+ unit: z71.string()
4848
+ });
4849
+ var PluginProgramSpreadsheetGetTakeoffResult = z71.object({
4850
+ rows: z71.array(PluginSpreadsheetTakeoffRow),
4851
+ rowCount: z71.number(),
4852
+ generatedAt: z71.string()
4853
+ });
4854
+ var PluginSpreadsheetMaterialTakeoffRow = z71.object({
4855
+ objectType: z71.string(),
4856
+ family: z71.string(),
4857
+ material: z71.string(),
4858
+ quantity: z71.number(),
4859
+ unit: z71.string()
4860
+ });
4861
+ var PluginProgramSpreadsheetGetMaterialTakeoffResult = z71.object({
4862
+ rows: z71.array(PluginSpreadsheetMaterialTakeoffRow),
4863
+ rowCount: z71.number(),
4864
+ generatedAt: z71.string()
4865
+ });
4866
+ var PluginSpreadsheetWhenExists = z71.enum(["reuse", "replace", "error"]);
4867
+ var PluginProgramSpreadsheetCreateSheetArgs = z71.object({
4868
+ name: z71.string(),
4810
4869
  whenExists: PluginSpreadsheetWhenExists.optional()
4811
4870
  });
4812
- var PluginProgramSpreadsheetCreateSheetResult = z70.object({
4813
- sheetName: z70.string(),
4814
- replaced: z70.boolean(),
4815
- sheetIndex: z70.number().nullable()
4816
- });
4817
- var PluginProgramSpreadsheetSetValuesArgs = z70.object({
4818
- sheetName: z70.string(),
4819
- values: z70.array(z70.array(PluginSpreadsheetCell)),
4820
- startCell: z70.string().optional()
4821
- });
4822
- var PluginProgramSpreadsheetSetValuesResult = z70.object({
4823
- sheetName: z70.string(),
4824
- startCell: z70.string(),
4825
- rowCount: z70.number(),
4826
- colCount: z70.number()
4827
- });
4828
- var PluginSpreadsheetFormula = z70.object({
4829
- cell: z70.string(),
4830
- formula: z70.string()
4831
- });
4832
- var PluginProgramSpreadsheetSetFormulasArgs = z70.object({
4833
- sheetName: z70.string(),
4834
- formulas: z70.array(PluginSpreadsheetFormula)
4835
- });
4836
- var PluginProgramSpreadsheetSetFormulasResult = z70.object({
4837
- sheetName: z70.string(),
4838
- count: z70.number()
4839
- });
4840
- var PluginSpreadsheetFontWeight = z70.enum(["normal", "bold"]);
4841
- var PluginSpreadsheetFontStyle = z70.enum(["normal", "italic"]);
4842
- var PluginSpreadsheetHorizontalAlign = z70.enum([
4871
+ var PluginProgramSpreadsheetCreateSheetResult = z71.object({
4872
+ sheetName: z71.string(),
4873
+ replaced: z71.boolean(),
4874
+ sheetIndex: z71.number().nullable()
4875
+ });
4876
+ var PluginProgramSpreadsheetSetValuesArgs = z71.object({
4877
+ sheetName: z71.string(),
4878
+ values: z71.array(z71.array(PluginSpreadsheetCell)),
4879
+ startCell: z71.string().optional()
4880
+ });
4881
+ var PluginProgramSpreadsheetSetValuesResult = z71.object({
4882
+ sheetName: z71.string(),
4883
+ startCell: z71.string(),
4884
+ rowCount: z71.number(),
4885
+ colCount: z71.number()
4886
+ });
4887
+ var PluginSpreadsheetFormula = z71.object({
4888
+ cell: z71.string(),
4889
+ formula: z71.string()
4890
+ });
4891
+ var PluginProgramSpreadsheetSetFormulasArgs = z71.object({
4892
+ sheetName: z71.string(),
4893
+ formulas: z71.array(PluginSpreadsheetFormula)
4894
+ });
4895
+ var PluginProgramSpreadsheetSetFormulasResult = z71.object({
4896
+ sheetName: z71.string(),
4897
+ count: z71.number()
4898
+ });
4899
+ var PluginSpreadsheetFontWeight = z71.enum(["normal", "bold"]);
4900
+ var PluginSpreadsheetFontStyle = z71.enum(["normal", "italic"]);
4901
+ var PluginSpreadsheetHorizontalAlign = z71.enum([
4843
4902
  "left",
4844
4903
  "center",
4845
4904
  "right",
4846
4905
  "general"
4847
4906
  ]);
4848
- var PluginSpreadsheetVerticalAlign = z70.enum([
4907
+ var PluginSpreadsheetVerticalAlign = z71.enum([
4849
4908
  "top",
4850
4909
  "center",
4851
4910
  "bottom"
4852
4911
  ]);
4853
- var PluginSpreadsheetCellStyle = z70.object({
4854
- backColor: z70.string().optional(),
4855
- foreColor: z70.string().optional(),
4856
- font: z70.string().optional(),
4857
- fontFamily: z70.string().optional(),
4858
- fontSize: z70.number().optional(),
4912
+ var PluginSpreadsheetCellStyle = z71.object({
4913
+ backColor: z71.string().optional(),
4914
+ foreColor: z71.string().optional(),
4915
+ font: z71.string().optional(),
4916
+ fontFamily: z71.string().optional(),
4917
+ fontSize: z71.number().optional(),
4859
4918
  fontWeight: PluginSpreadsheetFontWeight.optional(),
4860
4919
  fontStyle: PluginSpreadsheetFontStyle.optional(),
4861
- formatter: z70.string().optional(),
4920
+ formatter: z71.string().optional(),
4862
4921
  horizontalAlign: PluginSpreadsheetHorizontalAlign.optional(),
4863
4922
  verticalAlign: PluginSpreadsheetVerticalAlign.optional()
4864
4923
  });
4865
- var PluginSpreadsheetRangeStyle = z70.object({
4866
- range: z70.string(),
4924
+ var PluginSpreadsheetRangeStyle = z71.object({
4925
+ range: z71.string(),
4867
4926
  style: PluginSpreadsheetCellStyle
4868
4927
  });
4869
- var PluginProgramSpreadsheetSetStylesArgs = z70.object({
4870
- sheetName: z70.string(),
4871
- ranges: z70.array(PluginSpreadsheetRangeStyle)
4928
+ var PluginProgramSpreadsheetSetStylesArgs = z71.object({
4929
+ sheetName: z71.string(),
4930
+ ranges: z71.array(PluginSpreadsheetRangeStyle)
4872
4931
  });
4873
- var PluginProgramSpreadsheetSetStylesResult = z70.object({
4874
- sheetName: z70.string(),
4875
- count: z70.number()
4932
+ var PluginProgramSpreadsheetSetStylesResult = z71.object({
4933
+ sheetName: z71.string(),
4934
+ count: z71.number()
4876
4935
  });
4877
- var PluginProgramSpreadsheetMergeCellsArgs = z70.object({
4878
- sheetName: z70.string(),
4879
- range: z70.string(),
4936
+ var PluginProgramSpreadsheetMergeCellsArgs = z71.object({
4937
+ sheetName: z71.string(),
4938
+ range: z71.string(),
4880
4939
  value: PluginSpreadsheetCell.optional()
4881
4940
  });
4882
- var PluginProgramSpreadsheetMergeCellsResult = z70.object({
4883
- sheetName: z70.string(),
4884
- range: z70.string()
4941
+ var PluginProgramSpreadsheetMergeCellsResult = z71.object({
4942
+ sheetName: z71.string(),
4943
+ range: z71.string()
4885
4944
  });
4886
- var PluginSpreadsheetConditionalRuleType = z70.enum(["dataBar"]);
4887
- var PluginSpreadsheetConditionalRule = z70.object({
4945
+ var PluginSpreadsheetConditionalRuleType = z71.enum(["dataBar"]);
4946
+ var PluginSpreadsheetConditionalRule = z71.object({
4888
4947
  type: PluginSpreadsheetConditionalRuleType,
4889
- color: z70.string().optional()
4948
+ color: z71.string().optional()
4890
4949
  });
4891
- var PluginProgramSpreadsheetAddConditionalFormattingArgs = z70.object({
4892
- sheetName: z70.string(),
4893
- range: z70.string(),
4950
+ var PluginProgramSpreadsheetAddConditionalFormattingArgs = z71.object({
4951
+ sheetName: z71.string(),
4952
+ range: z71.string(),
4894
4953
  rule: PluginSpreadsheetConditionalRule
4895
4954
  });
4896
- var PluginProgramSpreadsheetAddConditionalFormattingResult = z70.object({
4897
- sheetName: z70.string(),
4898
- range: z70.string(),
4899
- created: z70.boolean()
4955
+ var PluginProgramSpreadsheetAddConditionalFormattingResult = z71.object({
4956
+ sheetName: z71.string(),
4957
+ range: z71.string(),
4958
+ created: z71.boolean()
4900
4959
  });
4901
- var PluginProgramSpreadsheetRecalculateArgs = z70.object({
4902
- sheetName: z70.string().optional()
4960
+ var PluginProgramSpreadsheetRecalculateArgs = z71.object({
4961
+ sheetName: z71.string().optional()
4903
4962
  });
4904
- var PluginProgramSpreadsheetRecalculateResult = z70.object({
4905
- scope: z70.enum(["sheet", "workbook"]),
4906
- sheetName: z70.string().nullable()
4963
+ var PluginProgramSpreadsheetRecalculateResult = z71.object({
4964
+ scope: z71.enum(["sheet", "workbook"]),
4965
+ sheetName: z71.string().nullable()
4907
4966
  });
4908
- var PluginSpreadsheetTransactionMethod = z70.enum([
4967
+ var PluginSpreadsheetTransactionMethod = z71.enum([
4909
4968
  "createSheet",
4910
4969
  "setValues",
4911
4970
  "setFormulas",
4912
4971
  "setStyles",
4913
4972
  "mergeCells"
4914
4973
  ]);
4915
- var PluginSpreadsheetTransactionOp = z70.object({
4974
+ var PluginSpreadsheetTransactionOp = z71.object({
4916
4975
  method: PluginSpreadsheetTransactionMethod,
4917
- args: z70.unknown()
4918
- });
4919
- var PluginProgramSpreadsheetTransactionArgs = z70.object({
4920
- operations: z70.array(PluginSpreadsheetTransactionOp),
4921
- label: z70.string().optional()
4922
- });
4923
- var PluginProgramSpreadsheetTransactionResult = z70.object({
4924
- label: z70.string(),
4925
- operationCount: z70.number(),
4926
- results: z70.array(z70.unknown())
4927
- });
4928
- var PluginProgramSpreadsheetRunScriptArgs = z70.object({
4929
- script: z70.string()
4930
- });
4931
- var PluginProgramSpreadsheetRunScriptResult = z70.object({
4932
- result: z70.unknown()
4933
- });
4934
- var PluginSpreadsheetAuditStatus = z70.enum(["success", "error"]);
4935
- var PluginSpreadsheetAuditEntry = z70.object({
4936
- id: z70.string(),
4937
- pluginId: z70.string(),
4938
- method: z70.string(),
4939
- label: z70.string().optional(),
4940
- sheetName: z70.string().optional(),
4941
- timestamp: z70.string(),
4976
+ args: z71.unknown()
4977
+ });
4978
+ var PluginProgramSpreadsheetTransactionArgs = z71.object({
4979
+ operations: z71.array(PluginSpreadsheetTransactionOp),
4980
+ label: z71.string().optional()
4981
+ });
4982
+ var PluginProgramSpreadsheetTransactionResult = z71.object({
4983
+ label: z71.string(),
4984
+ operationCount: z71.number(),
4985
+ results: z71.array(z71.unknown())
4986
+ });
4987
+ var PluginProgramSpreadsheetRunScriptArgs = z71.object({
4988
+ script: z71.string()
4989
+ });
4990
+ var PluginProgramSpreadsheetRunScriptResult = z71.object({
4991
+ result: z71.unknown()
4992
+ });
4993
+ var PluginSpreadsheetAuditStatus = z71.enum(["success", "error"]);
4994
+ var PluginSpreadsheetAuditEntry = z71.object({
4995
+ id: z71.string(),
4996
+ pluginId: z71.string(),
4997
+ method: z71.string(),
4998
+ label: z71.string().optional(),
4999
+ sheetName: z71.string().optional(),
5000
+ timestamp: z71.string(),
4942
5001
  status: PluginSpreadsheetAuditStatus,
4943
- summary: z70.string().optional()
5002
+ summary: z71.string().optional()
4944
5003
  });
4945
- var PluginProgramSpreadsheetGetAuditLogArgs = z70.object({
4946
- limit: z70.number().optional()
5004
+ var PluginProgramSpreadsheetGetAuditLogArgs = z71.object({
5005
+ limit: z71.number().optional()
4947
5006
  });
4948
- var PluginProgramSpreadsheetGetAuditLogResult = z70.object({
4949
- entries: z70.array(PluginSpreadsheetAuditEntry)
5007
+ var PluginProgramSpreadsheetGetAuditLogResult = z71.object({
5008
+ entries: z71.array(PluginSpreadsheetAuditEntry)
4950
5009
  });
4951
- var PluginProgramSpreadsheetPingResult = z70.object({
4952
- pong: z70.boolean()
5010
+ var PluginProgramSpreadsheetPingResult = z71.object({
5011
+ pong: z71.boolean()
4953
5012
  });
4954
- var PluginSpreadsheetTemplateScope = z70.enum(["project", "global"]);
4955
- var PluginProgramSpreadsheetTemplatesCreateArgs = z70.object({
4956
- name: z70.string(),
4957
- sheetName: z70.string(),
5013
+ var PluginSpreadsheetTemplateScope = z71.enum(["project", "global"]);
5014
+ var PluginProgramSpreadsheetTemplatesCreateArgs = z71.object({
5015
+ name: z71.string(),
5016
+ sheetName: z71.string(),
4958
5017
  scope: PluginSpreadsheetTemplateScope.optional()
4959
5018
  });
4960
- var PluginProgramSpreadsheetTemplatesCreateResult = z70.object({
4961
- id: z70.string(),
4962
- name: z70.string(),
5019
+ var PluginProgramSpreadsheetTemplatesCreateResult = z71.object({
5020
+ id: z71.string(),
5021
+ name: z71.string(),
4963
5022
  scope: PluginSpreadsheetTemplateScope,
4964
- sheetName: z70.string()
5023
+ sheetName: z71.string()
4965
5024
  });
4966
- var PluginProgramSpreadsheetTemplatesApplyArgs = z70.object({
4967
- name: z70.string(),
4968
- targetSheetName: z70.string()
5025
+ var PluginProgramSpreadsheetTemplatesApplyArgs = z71.object({
5026
+ name: z71.string(),
5027
+ targetSheetName: z71.string()
4969
5028
  });
4970
- var PluginProgramSpreadsheetTemplatesApplyResult = z70.object({
4971
- name: z70.string(),
4972
- targetSheetName: z70.string()
5029
+ var PluginProgramSpreadsheetTemplatesApplyResult = z71.object({
5030
+ name: z71.string(),
5031
+ targetSheetName: z71.string()
4973
5032
  });
4974
- var PluginSpreadsheetBindingSource = z70.discriminatedUnion("dataset", [
4975
- z70.object({ dataset: z70.literal("takeoff") }),
4976
- z70.object({ dataset: z70.literal("plugin"), name: z70.string() })
5033
+ var PluginSpreadsheetBindingSource = z71.discriminatedUnion("dataset", [
5034
+ z71.object({ dataset: z71.literal("takeoff") }),
5035
+ z71.object({ dataset: z71.literal("plugin"), name: z71.string() })
4977
5036
  ]);
4978
- var PluginSpreadsheetBindingMode = z70.enum(["replaceRange"]);
4979
- var PluginSpreadsheetBindingTarget = z70.object({
4980
- sheetName: z70.string(),
4981
- startCell: z70.string().optional()
4982
- });
4983
- var PluginSpreadsheetBinding = z70.object({
4984
- id: z70.string(),
4985
- name: z70.string(),
4986
- pluginId: z70.string(),
5037
+ var PluginSpreadsheetBindingMode = z71.enum(["replaceRange"]);
5038
+ var PluginSpreadsheetBindingTarget = z71.object({
5039
+ sheetName: z71.string(),
5040
+ startCell: z71.string().optional()
5041
+ });
5042
+ var PluginSpreadsheetBinding = z71.object({
5043
+ id: z71.string(),
5044
+ name: z71.string(),
5045
+ pluginId: z71.string(),
4987
5046
  source: PluginSpreadsheetBindingSource,
4988
- target: z70.object({
4989
- sheetName: z70.string(),
4990
- startCell: z70.string()
5047
+ target: z71.object({
5048
+ sheetName: z71.string(),
5049
+ startCell: z71.string()
4991
5050
  }),
4992
5051
  mode: PluginSpreadsheetBindingMode,
4993
- createdAt: z70.string(),
4994
- updatedAt: z70.string()
5052
+ createdAt: z71.string(),
5053
+ updatedAt: z71.string()
4995
5054
  });
4996
- var PluginSpreadsheetBindingRefresh = z70.object({
4997
- id: z70.string(),
4998
- name: z70.string(),
4999
- sheetName: z70.string(),
5000
- rowCount: z70.number()
5055
+ var PluginSpreadsheetBindingRefresh = z71.object({
5056
+ id: z71.string(),
5057
+ name: z71.string(),
5058
+ sheetName: z71.string(),
5059
+ rowCount: z71.number()
5001
5060
  });
5002
- var PluginProgramSpreadsheetBindingsCreateArgs = z70.object({
5003
- name: z70.string(),
5061
+ var PluginProgramSpreadsheetBindingsCreateArgs = z71.object({
5062
+ name: z71.string(),
5004
5063
  source: PluginSpreadsheetBindingSource,
5005
5064
  target: PluginSpreadsheetBindingTarget,
5006
5065
  mode: PluginSpreadsheetBindingMode.optional()
@@ -5008,296 +5067,296 @@ var PluginProgramSpreadsheetBindingsCreateArgs = z70.object({
5008
5067
  var PluginProgramSpreadsheetBindingsCreateResult = PluginSpreadsheetBinding.extend({
5009
5068
  refresh: PluginSpreadsheetBindingRefresh
5010
5069
  });
5011
- var PluginProgramSpreadsheetBindingsRefreshArgs = z70.object({
5012
- name: z70.string().optional()
5070
+ var PluginProgramSpreadsheetBindingsRefreshArgs = z71.object({
5071
+ name: z71.string().optional()
5013
5072
  });
5014
- var PluginProgramSpreadsheetBindingsRefreshResult = z70.object({
5015
- refreshed: z70.array(PluginSpreadsheetBindingRefresh)
5073
+ var PluginProgramSpreadsheetBindingsRefreshResult = z71.object({
5074
+ refreshed: z71.array(PluginSpreadsheetBindingRefresh)
5016
5075
  });
5017
- var PluginProgramSpreadsheetBindingsListResult = z70.object({
5018
- bindings: z70.array(PluginSpreadsheetBinding)
5076
+ var PluginProgramSpreadsheetBindingsListResult = z71.object({
5077
+ bindings: z71.array(PluginSpreadsheetBinding)
5019
5078
  });
5020
- var PluginProgramSpreadsheetDatasetsSetArgs = z70.object({
5021
- name: z70.string(),
5022
- columns: z70.array(PluginSpreadsheetColumn).min(1),
5023
- rows: z70.array(z70.record(z70.string(), PluginSpreadsheetCell)).max(1e4)
5079
+ var PluginProgramSpreadsheetDatasetsSetArgs = z71.object({
5080
+ name: z71.string(),
5081
+ columns: z71.array(PluginSpreadsheetColumn).min(1),
5082
+ rows: z71.array(z71.record(z71.string(), PluginSpreadsheetCell)).max(1e4)
5024
5083
  });
5025
- var PluginProgramSpreadsheetDatasetsSetResult = z70.object({
5026
- name: z70.string(),
5027
- rowCount: z70.number()
5084
+ var PluginProgramSpreadsheetDatasetsSetResult = z71.object({
5085
+ name: z71.string(),
5086
+ rowCount: z71.number()
5028
5087
  });
5029
- var PluginSpreadsheetDataset = z70.object({
5030
- name: z70.string(),
5031
- rowCount: z70.number(),
5032
- updatedAt: z70.string()
5088
+ var PluginSpreadsheetDataset = z71.object({
5089
+ name: z71.string(),
5090
+ rowCount: z71.number(),
5091
+ updatedAt: z71.string()
5033
5092
  });
5034
- var PluginProgramSpreadsheetDatasetsListResult = z70.object({
5035
- datasets: z70.array(PluginSpreadsheetDataset)
5093
+ var PluginProgramSpreadsheetDatasetsListResult = z71.object({
5094
+ datasets: z71.array(PluginSpreadsheetDataset)
5036
5095
  });
5037
- var PluginProgramSpreadsheetAddImageArgs = z70.object({
5038
- sheetName: z70.string(),
5039
- image: z70.object({
5040
- dataUri: z70.string().max(2097152, "image.dataUri exceeds the 2 MB limit").regex(
5096
+ var PluginProgramSpreadsheetAddImageArgs = z71.object({
5097
+ sheetName: z71.string(),
5098
+ image: z71.object({
5099
+ dataUri: z71.string().max(2097152, "image.dataUri exceeds the 2 MB limit").regex(
5041
5100
  /^data:image\/(png|jpeg|svg\+xml);base64,/,
5042
5101
  "image.dataUri must be a base64 data:image/png, jpeg, or svg+xml URI"
5043
5102
  )
5044
5103
  }),
5045
- anchorCell: z70.string().optional(),
5046
- size: z70.object({ width: z70.number(), height: z70.number() }).optional(),
5047
- name: z70.string().optional()
5048
- });
5049
- var PluginProgramSpreadsheetAddImageResult = z70.object({
5050
- sheetName: z70.string(),
5051
- name: z70.string()
5052
- });
5053
- var PluginSpreadsheetCustomSheet = z70.object({
5054
- sheetName: z70.string(),
5055
- groupBy: z70.array(z70.string()),
5056
- properties: z70.array(z70.string()),
5057
- groupColors: z70.record(z70.string(), z70.string()),
5058
- proposalId: z70.string().nullable()
5059
- });
5060
- var PluginSpreadsheetCustomSheetConfig = z70.object({
5061
- groupBy: z70.array(z70.string().trim().min(1)).max(10).optional(),
5062
- properties: z70.array(z70.string()).max(50).optional(),
5063
- groupColors: z70.record(z70.string(), z70.string()).optional()
5104
+ anchorCell: z71.string().optional(),
5105
+ size: z71.object({ width: z71.number(), height: z71.number() }).optional(),
5106
+ name: z71.string().optional()
5107
+ });
5108
+ var PluginProgramSpreadsheetAddImageResult = z71.object({
5109
+ sheetName: z71.string(),
5110
+ name: z71.string()
5111
+ });
5112
+ var PluginSpreadsheetCustomSheet = z71.object({
5113
+ sheetName: z71.string(),
5114
+ groupBy: z71.array(z71.string()),
5115
+ properties: z71.array(z71.string()),
5116
+ groupColors: z71.record(z71.string(), z71.string()),
5117
+ proposalId: z71.string().nullable()
5118
+ });
5119
+ var PluginSpreadsheetCustomSheetConfig = z71.object({
5120
+ groupBy: z71.array(z71.string().trim().min(1)).max(10).optional(),
5121
+ properties: z71.array(z71.string()).max(50).optional(),
5122
+ groupColors: z71.record(z71.string(), z71.string()).optional()
5064
5123
  });
5065
5124
  var PluginProgramSpreadsheetCreateCustomSheetArgs = PluginSpreadsheetCustomSheetConfig.extend({
5066
- name: z70.string().trim().min(1)
5125
+ name: z71.string().trim().min(1)
5067
5126
  });
5068
5127
  var PluginProgramSpreadsheetUpdateCustomSheetArgs = PluginSpreadsheetCustomSheetConfig.extend({
5069
- sheetName: z70.string().trim().min(1)
5128
+ sheetName: z71.string().trim().min(1)
5070
5129
  });
5071
5130
  var PluginProgramSpreadsheetCustomSheetResult = PluginSpreadsheetCustomSheet;
5072
- var PluginProgramSpreadsheetGetCustomSheetArgs = z70.object({
5073
- sheetName: z70.string().trim().min(1)
5131
+ var PluginProgramSpreadsheetGetCustomSheetArgs = z71.object({
5132
+ sheetName: z71.string().trim().min(1)
5074
5133
  });
5075
5134
  var PluginProgramSpreadsheetGetCustomSheetResult = PluginSpreadsheetCustomSheet.nullable();
5076
- var PluginProgramSpreadsheetListCustomSheetsResult = z70.object({
5077
- sheets: z70.array(PluginSpreadsheetCustomSheet)
5135
+ var PluginProgramSpreadsheetListCustomSheetsResult = z71.object({
5136
+ sheets: z71.array(PluginSpreadsheetCustomSheet)
5078
5137
  });
5079
- var PluginSpreadsheetCustomSheetProperty = z70.object({
5080
- id: z70.string(),
5081
- name: z70.string(),
5082
- groupable: z70.boolean(),
5083
- custom: z70.boolean()
5138
+ var PluginSpreadsheetCustomSheetProperty = z71.object({
5139
+ id: z71.string(),
5140
+ name: z71.string(),
5141
+ groupable: z71.boolean(),
5142
+ custom: z71.boolean()
5084
5143
  });
5085
- var PluginProgramSpreadsheetListCustomSheetPropertiesResult = z70.object({
5086
- properties: z70.array(PluginSpreadsheetCustomSheetProperty)
5144
+ var PluginProgramSpreadsheetListCustomSheetPropertiesResult = z71.object({
5145
+ properties: z71.array(PluginSpreadsheetCustomSheetProperty)
5087
5146
  });
5088
5147
 
5089
5148
  // src/api/program/site.ts
5090
- var z71 = __toESM(require("zod"), 1);
5149
+ var z72 = __toESM(require("zod"), 1);
5091
5150
  var PluginProgramSiteApi = class {
5092
5151
  constructor() {
5093
5152
  }
5094
5153
  };
5095
- var PluginSiteAnalysisRow = z71.object({
5096
- category: z71.string().min(1),
5097
- description: z71.string(),
5098
- quantity: z71.union([z71.string(), z71.number()]),
5099
- unit: z71.string()
5154
+ var PluginSiteAnalysisRow = z72.object({
5155
+ category: z72.string().min(1),
5156
+ description: z72.string(),
5157
+ quantity: z72.union([z72.string(), z72.number()]),
5158
+ unit: z72.string()
5100
5159
  });
5101
- var PluginSiteAnalysisUpdateOptions = z71.object({
5102
- siteLocation: z71.object({ lat: z71.number(), lng: z71.number() }).optional(),
5160
+ var PluginSiteAnalysisUpdateOptions = z72.object({
5161
+ siteLocation: z72.object({ lat: z72.number(), lng: z72.number() }).optional(),
5103
5162
  /** JSON-encoded polygon string written to the Site Polygon row. */
5104
- sitePolygon: z71.string().optional()
5163
+ sitePolygon: z72.string().optional()
5105
5164
  }).nullish();
5106
- var PluginProgramSiteAnalysisResult = z71.object({
5107
- sheetName: z71.string(),
5108
- siteLocation: z71.object({ lat: z71.number(), lng: z71.number() }).nullable(),
5109
- sitePolygon: z71.string().nullable(),
5110
- rows: z71.array(PluginSiteAnalysisRow)
5165
+ var PluginProgramSiteAnalysisResult = z72.object({
5166
+ sheetName: z72.string(),
5167
+ siteLocation: z72.object({ lat: z72.number(), lng: z72.number() }).nullable(),
5168
+ sitePolygon: z72.string().nullable(),
5169
+ rows: z72.array(PluginSiteAnalysisRow)
5111
5170
  }).nullable();
5112
- var PluginProgramSiteAnalysisUpdateResult = z71.object({
5113
- sheetName: z71.string(),
5171
+ var PluginProgramSiteAnalysisUpdateResult = z72.object({
5172
+ sheetName: z72.string(),
5114
5173
  /** Constraint rows on the sheet after the write. */
5115
- rowCount: z71.number(),
5116
- updatedRows: z71.number(),
5117
- appendedRows: z71.number()
5174
+ rowCount: z72.number(),
5175
+ updatedRows: z72.number(),
5176
+ appendedRows: z72.number()
5118
5177
  });
5119
- var PluginSiteFootprintPoint = z71.object({
5120
- x: z71.number(),
5121
- z: z71.number()
5178
+ var PluginSiteFootprintPoint = z72.object({
5179
+ x: z72.number(),
5180
+ z: z72.number()
5122
5181
  });
5123
- var PluginSiteGeoPoint = z71.object({
5124
- lat: z71.number(),
5125
- lng: z71.number(),
5126
- alt: z71.number()
5182
+ var PluginSiteGeoPoint = z72.object({
5183
+ lat: z72.number(),
5184
+ lng: z72.number(),
5185
+ alt: z72.number()
5127
5186
  });
5128
- var PluginSitePolygon = z71.object({
5129
- id: z71.string(),
5130
- area: z71.number(),
5131
- label: z71.string(),
5132
- footprint: z71.array(PluginSiteFootprintPoint)
5187
+ var PluginSitePolygon = z72.object({
5188
+ id: z72.string(),
5189
+ area: z72.number(),
5190
+ label: z72.string(),
5191
+ footprint: z72.array(PluginSiteFootprintPoint)
5133
5192
  });
5134
- var PluginProgramSiteSnapshot = z71.object({
5193
+ var PluginProgramSiteSnapshot = z72.object({
5135
5194
  units: PluginAreaUnit,
5136
- totalArea: z71.number(),
5137
- polygonCount: z71.number(),
5138
- polygons: z71.array(PluginSitePolygon)
5195
+ totalArea: z72.number(),
5196
+ polygonCount: z72.number(),
5197
+ polygons: z72.array(PluginSitePolygon)
5139
5198
  });
5140
- var PluginProgramSiteAreaResult = z71.object({
5199
+ var PluginProgramSiteAreaResult = z72.object({
5141
5200
  units: PluginAreaUnit,
5142
- area: z71.number()
5201
+ area: z72.number()
5143
5202
  });
5144
- var PluginProgramSiteListPolygonsResult = z71.object({
5203
+ var PluginProgramSiteListPolygonsResult = z72.object({
5145
5204
  units: PluginAreaUnit,
5146
- polygons: z71.array(PluginSitePolygon)
5205
+ polygons: z72.array(PluginSitePolygon)
5147
5206
  });
5148
- var PluginProgramSiteListGeoPolygonsResult = z71.object({
5149
- polygons: z71.array(z71.array(PluginSiteGeoPoint))
5207
+ var PluginProgramSiteListGeoPolygonsResult = z72.object({
5208
+ polygons: z72.array(z72.array(PluginSiteGeoPoint))
5150
5209
  });
5151
- var PluginSiteLatLng = z71.object({
5152
- lat: z71.number(),
5153
- lng: z71.number()
5210
+ var PluginSiteLatLng = z72.object({
5211
+ lat: z72.number(),
5212
+ lng: z72.number()
5154
5213
  });
5155
- var PluginSiteBounds = z71.object({
5156
- north: z71.number(),
5157
- south: z71.number(),
5158
- east: z71.number(),
5159
- west: z71.number()
5214
+ var PluginSiteBounds = z72.object({
5215
+ north: z72.number(),
5216
+ south: z72.number(),
5217
+ east: z72.number(),
5218
+ west: z72.number()
5160
5219
  });
5161
- var PluginSiteContextParcel = z71.object({
5162
- footprint: z71.array(PluginSiteLatLng),
5163
- area: z71.number()
5220
+ var PluginSiteContextParcel = z72.object({
5221
+ footprint: z72.array(PluginSiteLatLng),
5222
+ area: z72.number()
5164
5223
  });
5165
- var PluginProgramSiteContext = z71.object({
5224
+ var PluginProgramSiteContext = z72.object({
5166
5225
  center: PluginSiteLatLng,
5167
5226
  bounds: PluginSiteBounds,
5168
- widthInM: z71.number(),
5169
- heightInM: z71.number(),
5170
- zoom: z71.number(),
5171
- parcels: z71.array(PluginSiteContextParcel)
5227
+ widthInM: z72.number(),
5228
+ heightInM: z72.number(),
5229
+ zoom: z72.number(),
5230
+ parcels: z72.array(PluginSiteContextParcel)
5172
5231
  });
5173
5232
  var PluginProgramSiteContextResult = PluginProgramSiteContext.nullable();
5174
- var PluginProgramSiteLocation = z71.object({
5175
- latitude: z71.number(),
5176
- longitude: z71.number()
5233
+ var PluginProgramSiteLocation = z72.object({
5234
+ latitude: z72.number(),
5235
+ longitude: z72.number()
5177
5236
  });
5178
5237
  var PluginProgramSiteLocationResult = PluginProgramSiteLocation.nullable();
5179
- var PluginProgramSiteNorthAngleResult = z71.number().nullable();
5180
- var PluginProgramSiteTimezoneResult = z71.string().nullable();
5181
- var PluginProgramSiteWeather = z71.object({
5182
- weatherFileId: z71.string(),
5183
- station: z71.string(),
5184
- checksum: z71.string(),
5185
- selectionMethod: z71.enum([
5238
+ var PluginProgramSiteNorthAngleResult = z72.number().nullable();
5239
+ var PluginProgramSiteTimezoneResult = z72.string().nullable();
5240
+ var PluginProgramSiteWeather = z72.object({
5241
+ weatherFileId: z72.string(),
5242
+ station: z72.string(),
5243
+ checksum: z72.string(),
5244
+ selectionMethod: z72.enum([
5186
5245
  "nearest-station",
5187
5246
  "user-upload",
5188
5247
  "project-override"
5189
5248
  ])
5190
5249
  });
5191
5250
  var PluginProgramSiteWeatherResult = PluginProgramSiteWeather.nullable();
5192
- var PluginProgramSiteEdgeRole = z71.enum(["front", "side", "rear"]);
5193
- var PluginProgramSiteEdge = z71.object({
5194
- edgeIndex: z71.number().int().nonnegative(),
5195
- start: z71.object({ x: z71.number(), z: z71.number() }),
5196
- end: z71.object({ x: z71.number(), z: z71.number() }),
5197
- lengthMeters: z71.number(),
5251
+ var PluginProgramSiteEdgeRole = z72.enum(["front", "side", "rear"]);
5252
+ var PluginProgramSiteEdge = z72.object({
5253
+ edgeIndex: z72.number().int().nonnegative(),
5254
+ start: z72.object({ x: z72.number(), z: z72.number() }),
5255
+ end: z72.object({ x: z72.number(), z: z72.number() }),
5256
+ lengthMeters: z72.number(),
5198
5257
  role: PluginProgramSiteEdgeRole,
5199
- roleSource: z71.enum(["override", "heuristic"]),
5200
- setbackMeters: z71.number().nullable()
5258
+ roleSource: z72.enum(["override", "heuristic"]),
5259
+ setbackMeters: z72.number().nullable()
5201
5260
  });
5202
- var PluginProgramSiteEdgesEntry = z71.object({
5203
- siteId: z71.string(),
5204
- buildableEnvelopeId: z71.string().nullable(),
5205
- usingLiveSiteBoundary: z71.boolean(),
5206
- staleOverridesDropped: z71.boolean(),
5207
- edges: z71.array(PluginProgramSiteEdge)
5261
+ var PluginProgramSiteEdgesEntry = z72.object({
5262
+ siteId: z72.string(),
5263
+ buildableEnvelopeId: z72.string().nullable(),
5264
+ usingLiveSiteBoundary: z72.boolean(),
5265
+ staleOverridesDropped: z72.boolean(),
5266
+ edges: z72.array(PluginProgramSiteEdge)
5208
5267
  });
5209
- var PluginProgramSiteListEdgesResult = z71.object({
5210
- lengthUnit: z71.literal("m"),
5211
- sites: z71.array(PluginProgramSiteEdgesEntry)
5268
+ var PluginProgramSiteListEdgesResult = z72.object({
5269
+ lengthUnit: z72.literal("m"),
5270
+ sites: z72.array(PluginProgramSiteEdgesEntry)
5212
5271
  });
5213
5272
 
5214
5273
  // src/api/program/cores.ts
5215
- var z72 = __toESM(require("zod"), 1);
5274
+ var z73 = __toESM(require("zod"), 1);
5216
5275
  var PluginProgramCoresApi = class {
5217
5276
  constructor() {
5218
5277
  }
5219
5278
  };
5220
- var PluginProgramCore = z72.object({
5221
- id: z72.string(),
5222
- groupId: z72.string(),
5223
- storey: z72.number()
5279
+ var PluginProgramCore = z73.object({
5280
+ id: z73.string(),
5281
+ groupId: z73.string(),
5282
+ storey: z73.number()
5224
5283
  });
5225
- var PluginProgramCoresListResult = z72.object({
5226
- cores: z72.array(PluginProgramCore)
5284
+ var PluginProgramCoresListResult = z73.object({
5285
+ cores: z73.array(PluginProgramCore)
5227
5286
  });
5228
- var PluginProgramCoresIsCoreArgs = z72.object({
5229
- id: z72.string()
5287
+ var PluginProgramCoresIsCoreArgs = z73.object({
5288
+ id: z73.string()
5230
5289
  });
5231
5290
 
5232
5291
  // src/api/program/classification.ts
5233
- var z73 = __toESM(require("zod"), 1);
5292
+ var z74 = __toESM(require("zod"), 1);
5234
5293
  var PluginProgramClassificationApi = class {
5235
5294
  constructor() {
5236
5295
  }
5237
5296
  };
5238
- var PluginClassificationOption = z73.object({
5239
- value: z73.string(),
5240
- label: z73.string()
5297
+ var PluginClassificationOption = z74.object({
5298
+ value: z74.string(),
5299
+ label: z74.string()
5241
5300
  });
5242
- var PluginProgramClassificationTypesResult = z73.object({
5243
- spaceTypes: z73.array(PluginClassificationOption),
5244
- areaClasses: z73.array(PluginClassificationOption),
5245
- massTypes: z73.array(PluginClassificationOption)
5301
+ var PluginProgramClassificationTypesResult = z74.object({
5302
+ spaceTypes: z74.array(PluginClassificationOption),
5303
+ areaClasses: z74.array(PluginClassificationOption),
5304
+ massTypes: z74.array(PluginClassificationOption)
5246
5305
  });
5247
- var PluginProgramClassificationListTagsArgs = z73.object({
5248
- id: z73.string()
5306
+ var PluginProgramClassificationListTagsArgs = z74.object({
5307
+ id: z74.string()
5249
5308
  });
5250
- var PluginSpaceTag = z73.object({
5251
- tagId: z73.string(),
5252
- tagName: z73.string(),
5253
- color: z73.string(),
5254
- categoryId: z73.string()
5309
+ var PluginSpaceTag = z74.object({
5310
+ tagId: z74.string(),
5311
+ tagName: z74.string(),
5312
+ color: z74.string(),
5313
+ categoryId: z74.string()
5255
5314
  });
5256
- var PluginProgramClassificationTagsResult = z73.object({
5257
- tagIds: z73.array(z73.string()),
5258
- tagsByCategory: z73.record(z73.string(), PluginSpaceTag)
5315
+ var PluginProgramClassificationTagsResult = z74.object({
5316
+ tagIds: z74.array(z74.string()),
5317
+ tagsByCategory: z74.record(z74.string(), PluginSpaceTag)
5259
5318
  });
5260
5319
 
5261
5320
  // src/api/program/areas.ts
5262
- var z74 = __toESM(require("zod"), 1);
5321
+ var z75 = __toESM(require("zod"), 1);
5263
5322
  var PluginProgramAreasApi = class {
5264
5323
  constructor() {
5265
5324
  }
5266
5325
  };
5267
- var PluginProgramAreaSummary = z74.object({
5268
- count: z74.number().int(),
5269
- hiddenCount: z74.number().int(),
5270
- carpet: z74.number(),
5271
- builtUp: z74.number(),
5272
- excluded: z74.number(),
5273
- farBuiltUp: z74.number(),
5274
- siteArea: z74.number(),
5275
- achievedFar: z74.number().nullable(),
5276
- targetFar: z74.number(),
5277
- deviation: z74.number(),
5326
+ var PluginProgramAreaSummary = z75.object({
5327
+ count: z75.number().int(),
5328
+ hiddenCount: z75.number().int(),
5329
+ carpet: z75.number(),
5330
+ builtUp: z75.number(),
5331
+ excluded: z75.number(),
5332
+ farBuiltUp: z75.number(),
5333
+ siteArea: z75.number(),
5334
+ achievedFar: z75.number().nullable(),
5335
+ targetFar: z75.number(),
5336
+ deviation: z75.number(),
5278
5337
  areaUnit: PluginAreaUnit
5279
5338
  });
5280
- var PluginProgramAreaGroup = z74.object({
5281
- groupId: z74.string(),
5282
- name: z74.string(),
5283
- color: z74.string(),
5284
- carpet: z74.number(),
5285
- builtUp: z74.number(),
5286
- excluded: z74.number(),
5287
- count: z74.number().int(),
5288
- targetArea: z74.number(),
5339
+ var PluginProgramAreaGroup = z75.object({
5340
+ groupId: z75.string(),
5341
+ name: z75.string(),
5342
+ color: z75.string(),
5343
+ carpet: z75.number(),
5344
+ builtUp: z75.number(),
5345
+ excluded: z75.number(),
5346
+ count: z75.number().int(),
5347
+ targetArea: z75.number(),
5289
5348
  targetUnit: PluginAreaUnit
5290
5349
  });
5291
- var PluginProgramAreaMember = z74.object({
5350
+ var PluginProgramAreaMember = z75.object({
5292
5351
  id: ComponentHandle,
5293
- label: z74.string(),
5352
+ label: z75.string(),
5294
5353
  areaClass: PluginAreaClass,
5295
- carpet: z74.number(),
5296
- builtUp: z74.number(),
5297
- excluded: z74.number(),
5298
- isVisible: z74.boolean()
5354
+ carpet: z75.number(),
5355
+ builtUp: z75.number(),
5356
+ excluded: z75.number(),
5357
+ isVisible: z75.boolean()
5299
5358
  });
5300
- var PluginProgramAreaGroupBy = z74.enum([
5359
+ var PluginProgramAreaGroupBy = z75.enum([
5301
5360
  "labels",
5302
5361
  "storeys",
5303
5362
  "buildings",
@@ -5305,137 +5364,137 @@ var PluginProgramAreaGroupBy = z74.enum([
5305
5364
  "tagCategories"
5306
5365
  ]);
5307
5366
  var PluginProgramAreasGetResult = PluginProgramAreaSummary;
5308
- var PluginProgramAreasListArgs = z74.object({
5367
+ var PluginProgramAreasListArgs = z75.object({
5309
5368
  groupBy: PluginProgramAreaGroupBy,
5310
- categoryId: z74.string().optional()
5369
+ categoryId: z75.string().optional()
5311
5370
  }).refine((v) => v.groupBy !== "tagCategories" || v.categoryId != null, {
5312
5371
  message: 'categoryId is required when groupBy is "tagCategories"'
5313
5372
  });
5314
- var PluginProgramAreasListResult = z74.object({
5315
- groups: z74.array(PluginProgramAreaGroup)
5373
+ var PluginProgramAreasListResult = z75.object({
5374
+ groups: z75.array(PluginProgramAreaGroup)
5316
5375
  });
5317
- var PluginProgramAreasListMembersArgs = z74.object({
5376
+ var PluginProgramAreasListMembersArgs = z75.object({
5318
5377
  groupBy: PluginProgramAreaGroupBy,
5319
- groupId: z74.string(),
5320
- categoryId: z74.string().optional()
5378
+ groupId: z75.string(),
5379
+ categoryId: z75.string().optional()
5321
5380
  }).refine((v) => v.groupBy !== "tagCategories" || v.categoryId != null, {
5322
5381
  message: 'categoryId is required when groupBy is "tagCategories"'
5323
5382
  });
5324
- var PluginProgramAreasListMembersResult = z74.object({
5325
- members: z74.array(PluginProgramAreaMember)
5383
+ var PluginProgramAreasListMembersResult = z75.object({
5384
+ members: z75.array(PluginProgramAreaMember)
5326
5385
  });
5327
- var PluginProgramAreasUpdateArgs = z74.object({
5328
- targetFar: z74.number().min(0).optional(),
5329
- siteArea: z74.number().positive().optional(),
5330
- deviation: z74.number().min(0).max(100).optional()
5386
+ var PluginProgramAreasUpdateArgs = z75.object({
5387
+ targetFar: z75.number().min(0).optional(),
5388
+ siteArea: z75.number().positive().optional(),
5389
+ deviation: z75.number().min(0).max(100).optional()
5331
5390
  });
5332
5391
  var PluginProgramAreasUpdateResult = PluginProgramAreaSummary;
5333
5392
  var PluginProgramAreasRefreshResult = PluginProgramAreaSummary;
5334
5393
 
5335
5394
  // src/api/program/metadata.ts
5336
- var z75 = __toESM(require("zod"), 1);
5395
+ var z76 = __toESM(require("zod"), 1);
5337
5396
  var PluginProgramMetadataApi = class {
5338
5397
  constructor() {
5339
5398
  }
5340
5399
  };
5341
- var PluginProgramMetadataHeader = z75.object({
5342
- headerId: z75.string(),
5343
- name: z75.string(),
5344
- description: z75.string(),
5345
- columnIndex: z75.number()
5400
+ var PluginProgramMetadataHeader = z76.object({
5401
+ headerId: z76.string(),
5402
+ name: z76.string(),
5403
+ description: z76.string(),
5404
+ columnIndex: z76.number()
5346
5405
  });
5347
- var PluginProgramMetadataListHeadersResult = z75.object({
5348
- headers: z75.array(PluginProgramMetadataHeader)
5406
+ var PluginProgramMetadataListHeadersResult = z76.object({
5407
+ headers: z76.array(PluginProgramMetadataHeader)
5349
5408
  });
5350
- var PluginProgramMetadataCreateHeaderArgs = z75.object({
5351
- name: z75.string().trim().min(1),
5352
- description: z75.string().optional()
5409
+ var PluginProgramMetadataCreateHeaderArgs = z76.object({
5410
+ name: z76.string().trim().min(1),
5411
+ description: z76.string().optional()
5353
5412
  });
5354
5413
  var PluginProgramMetadataCreateHeaderResult = PluginProgramMetadataHeader;
5355
- var PluginProgramMetadataRecord = z75.object({
5414
+ var PluginProgramMetadataRecord = z76.object({
5356
5415
  spaceId: ComponentHandle,
5357
- values: z75.record(z75.string(), PluginSpreadsheetCell)
5416
+ values: z76.record(z76.string(), PluginSpreadsheetCell)
5358
5417
  });
5359
- var PluginProgramMetadataGetArgs = z75.object({
5418
+ var PluginProgramMetadataGetArgs = z76.object({
5360
5419
  spaceId: ComponentHandle
5361
5420
  });
5362
5421
  var PluginProgramMetadataGetResult = PluginProgramMetadataRecord.nullable();
5363
- var PluginProgramMetadataListArgs = z75.object({
5364
- spaceIds: z75.array(ComponentHandle).optional()
5422
+ var PluginProgramMetadataListArgs = z76.object({
5423
+ spaceIds: z76.array(ComponentHandle).optional()
5365
5424
  });
5366
- var PluginProgramMetadataListResult = z75.object({
5367
- records: z75.array(PluginProgramMetadataRecord)
5425
+ var PluginProgramMetadataListResult = z76.object({
5426
+ records: z76.array(PluginProgramMetadataRecord)
5368
5427
  });
5369
- var PluginProgramMetadataUpdateArgs = z75.object({
5428
+ var PluginProgramMetadataUpdateArgs = z76.object({
5370
5429
  spaceId: ComponentHandle,
5371
- values: z75.record(z75.string(), PluginSpreadsheetCell).refine((v) => Object.keys(v).length > 0, "values must not be empty")
5430
+ values: z76.record(z76.string(), PluginSpreadsheetCell).refine((v) => Object.keys(v).length > 0, "values must not be empty")
5372
5431
  });
5373
5432
  var PluginProgramMetadataUpdateResult = PluginProgramMetadataRecord;
5374
5433
  var PluginProgramMetadataUpdateItem = PluginProgramMetadataUpdateArgs;
5375
5434
  var PLUGIN_PROGRAM_METADATA_BATCH_LIMIT = 1e3;
5376
- var PluginProgramMetadataUpdateManyArgs = z75.object({
5377
- items: z75.array(PluginProgramMetadataUpdateItem).min(1).max(PLUGIN_PROGRAM_METADATA_BATCH_LIMIT)
5435
+ var PluginProgramMetadataUpdateManyArgs = z76.object({
5436
+ items: z76.array(PluginProgramMetadataUpdateItem).min(1).max(PLUGIN_PROGRAM_METADATA_BATCH_LIMIT)
5378
5437
  });
5379
- var PluginProgramMetadataUpdateManyResult = z75.object({
5380
- records: z75.array(PluginProgramMetadataRecord)
5438
+ var PluginProgramMetadataUpdateManyResult = z76.object({
5439
+ records: z76.array(PluginProgramMetadataRecord)
5381
5440
  });
5382
5441
 
5383
5442
  // src/api/program/labels.ts
5384
- var z76 = __toESM(require("zod"), 1);
5443
+ var z77 = __toESM(require("zod"), 1);
5385
5444
  var PluginProgramLabelsApi = class {
5386
5445
  constructor() {
5387
5446
  }
5388
5447
  };
5389
- var PluginProgramLabel = z76.object({
5390
- id: z76.string(),
5391
- name: z76.string(),
5392
- color: z76.string(),
5393
- departmentId: z76.string(),
5394
- targetArea: z76.number().nullable(),
5395
- targetCount: z76.number(),
5396
- storey: z76.number().nullable()
5448
+ var PluginProgramLabel = z77.object({
5449
+ id: z77.string(),
5450
+ name: z77.string(),
5451
+ color: z77.string(),
5452
+ departmentId: z77.string(),
5453
+ targetArea: z77.number().nullable(),
5454
+ targetCount: z77.number(),
5455
+ storey: z77.number().nullable()
5397
5456
  });
5398
5457
  var PluginProgramLabelRecord = PluginProgramLabel.extend({
5399
5458
  units: PluginAreaUnit
5400
5459
  });
5401
- var PluginProgramLabelsListResult = z76.object({
5460
+ var PluginProgramLabelsListResult = z77.object({
5402
5461
  units: PluginAreaUnit,
5403
- labels: z76.array(PluginProgramLabel)
5462
+ labels: z77.array(PluginProgramLabel)
5404
5463
  });
5405
- var PluginProgramLabelsGetArgs = z76.object({
5406
- labelId: z76.string()
5464
+ var PluginProgramLabelsGetArgs = z77.object({
5465
+ labelId: z77.string()
5407
5466
  });
5408
5467
  var PluginProgramLabelsGetResult = PluginProgramLabelRecord.nullable();
5409
- var PluginProgramLabelCreateItem = z76.object({
5410
- name: z76.string().trim().min(1),
5411
- targetArea: z76.number().finite().nonnegative().optional(),
5412
- targetCount: z76.number().int().nonnegative().optional(),
5413
- departmentId: z76.string().optional(),
5414
- departmentName: z76.string().optional(),
5415
- color: z76.string().optional(),
5416
- storey: z76.number().int().optional(),
5417
- height: z76.number().finite().positive().optional(),
5418
- width: z76.number().finite().positive().optional()
5468
+ var PluginProgramLabelCreateItem = z77.object({
5469
+ name: z77.string().trim().min(1),
5470
+ targetArea: z77.number().finite().nonnegative().optional(),
5471
+ targetCount: z77.number().int().nonnegative().optional(),
5472
+ departmentId: z77.string().optional(),
5473
+ departmentName: z77.string().optional(),
5474
+ color: z77.string().optional(),
5475
+ storey: z77.number().int().optional(),
5476
+ height: z77.number().finite().positive().optional(),
5477
+ width: z77.number().finite().positive().optional()
5419
5478
  });
5420
5479
  var PLUGIN_PROGRAM_LABELS_BATCH_LIMIT = 500;
5421
- var PluginProgramLabelsCreateArgs = z76.object({
5422
- items: z76.array(PluginProgramLabelCreateItem).min(1).max(PLUGIN_PROGRAM_LABELS_BATCH_LIMIT),
5480
+ var PluginProgramLabelsCreateArgs = z77.object({
5481
+ items: z77.array(PluginProgramLabelCreateItem).min(1).max(PLUGIN_PROGRAM_LABELS_BATCH_LIMIT),
5423
5482
  units: PluginAreaUnit.optional(),
5424
- createSpaces: z76.boolean().optional()
5483
+ createSpaces: z77.boolean().optional()
5425
5484
  });
5426
- var PluginProgramLabelsCreateResult = z76.object({
5427
- labelIds: z76.array(z76.string()),
5428
- createdSpaces: z76.boolean()
5485
+ var PluginProgramLabelsCreateResult = z77.object({
5486
+ labelIds: z77.array(z77.string()),
5487
+ createdSpaces: z77.boolean()
5429
5488
  });
5430
- var PluginProgramLabelsSetTargetAreaArgs = z76.object({
5431
- labelId: z76.string(),
5432
- targetArea: z76.number().finite().nonnegative(),
5489
+ var PluginProgramLabelsSetTargetAreaArgs = z77.object({
5490
+ labelId: z77.string(),
5491
+ targetArea: z77.number().finite().nonnegative(),
5433
5492
  units: PluginAreaUnit.optional()
5434
5493
  });
5435
5494
  var PluginProgramLabelsSetTargetAreaResult = PluginProgramLabelRecord;
5436
- var PluginProgramLabelsSetTargetCountArgs = z76.object({
5437
- labelId: z76.string(),
5438
- targetCount: z76.number().int().nonnegative()
5495
+ var PluginProgramLabelsSetTargetCountArgs = z77.object({
5496
+ labelId: z77.string(),
5497
+ targetCount: z77.number().int().nonnegative()
5439
5498
  });
5440
5499
  var PluginProgramLabelsSetTargetCountResult = PluginProgramLabelRecord;
5441
5500
 
@@ -5446,72 +5505,72 @@ var PluginProgramApi = class {
5446
5505
  };
5447
5506
 
5448
5507
  // src/api/presentation/views.ts
5449
- var z77 = __toESM(require("zod"), 1);
5508
+ var z78 = __toESM(require("zod"), 1);
5450
5509
  var PluginPresentationViewsApi = class {
5451
5510
  constructor() {
5452
5511
  }
5453
5512
  };
5454
- var PluginPresentationViewType = z77.enum(["2d", "3d"]);
5455
- var PluginPresentationView = z77.object({
5456
- id: z77.string(),
5457
- name: z77.string(),
5513
+ var PluginPresentationViewType = z78.enum(["2d", "3d"]);
5514
+ var PluginPresentationView = z78.object({
5515
+ id: z78.string(),
5516
+ name: z78.string(),
5458
5517
  type: PluginPresentationViewType,
5459
- isActive: z77.boolean(),
5460
- storey: z77.number().nullable()
5518
+ isActive: z78.boolean(),
5519
+ storey: z78.number().nullable()
5461
5520
  });
5462
- var PluginPresentationViewsListResult = z77.object({
5463
- views: z77.array(PluginPresentationView)
5521
+ var PluginPresentationViewsListResult = z78.object({
5522
+ views: z78.array(PluginPresentationView)
5464
5523
  });
5465
- var PluginPresentationViewsGetArgs = z77.object({
5466
- id: z77.string()
5524
+ var PluginPresentationViewsGetArgs = z78.object({
5525
+ id: z78.string()
5467
5526
  });
5468
5527
  var PluginPresentationViewsGetResult = PluginPresentationView.nullable();
5469
- var PluginPresentationImageFormat = z77.enum(["png", "jpeg"]);
5470
- var PluginPresentationViewsCaptureArgs = z77.object({
5471
- viewId: z77.string().optional(),
5528
+ var PluginPresentationImageFormat = z78.enum(["png", "jpeg"]);
5529
+ var PluginPresentationViewsCaptureArgs = z78.object({
5530
+ viewId: z78.string().optional(),
5472
5531
  format: PluginPresentationImageFormat.optional(),
5473
- resolution: z77.string().optional()
5532
+ resolution: z78.string().optional()
5474
5533
  });
5475
- var PluginPresentationViewsCaptureResult = z77.object({
5476
- image: z77.string()
5534
+ var PluginPresentationViewsCaptureResult = z78.object({
5535
+ image: z78.string()
5477
5536
  });
5478
- var PluginPresentationViewsSetActiveArgs = z77.object({
5479
- id: z77.string()
5537
+ var PluginPresentationViewsSetActiveArgs = z78.object({
5538
+ id: z78.string()
5480
5539
  });
5481
- var PluginPresentationViewsSetActiveResult = z77.object({
5482
- id: z77.string()
5540
+ var PluginPresentationViewsSetActiveResult = z78.object({
5541
+ id: z78.string()
5483
5542
  });
5484
- var PluginPresentationViewsCreateArgs = z77.object({
5485
- name: z77.string().optional(),
5486
- kind: z77.enum(["view", "sitePlan"]).optional(),
5487
- storey: z77.number().optional()
5543
+ var PluginPresentationViewsCreateArgs = z78.object({
5544
+ name: z78.string().optional(),
5545
+ kind: z78.enum(["view", "sitePlan"]).optional(),
5546
+ storey: z78.number().optional()
5488
5547
  });
5489
5548
  var PluginPresentationViewsCreateResult = PluginPresentationView;
5490
- var PluginPresentationViewColorMode = z77.union([
5491
- z77.enum(["monochrome", "texture", "department"]),
5492
- z77.templateLiteral(["tag:", z77.string()])
5549
+ var PluginPresentationViewColorMode = z78.union([
5550
+ z78.enum(["monochrome", "texture", "department"]),
5551
+ z78.templateLiteral(["tag:", z78.string()])
5493
5552
  ]);
5494
- var PluginPresentationViewLabel = z77.enum([
5553
+ var PluginPresentationViewLabel = z78.enum([
5495
5554
  "objectLabels",
5496
5555
  "areas",
5497
5556
  "department"
5498
5557
  ]);
5499
- var PluginPresentationViewMode = z77.enum(["perspective", "isometric"]);
5500
- var PluginPresentationViewSettings = z77.object({
5501
- backgroundColor: z77.string(),
5558
+ var PluginPresentationViewMode = z78.enum(["perspective", "isometric"]);
5559
+ var PluginPresentationViewSettings = z78.object({
5560
+ backgroundColor: z78.string(),
5502
5561
  colorMode: PluginPresentationViewColorMode,
5503
5562
  viewMode: PluginPresentationViewMode,
5504
- showAxis: z77.boolean(),
5505
- showEdges: z77.boolean(),
5506
- showLabels: z77.boolean(),
5507
- labels: z77.array(PluginPresentationViewLabel)
5563
+ showAxis: z78.boolean(),
5564
+ showEdges: z78.boolean(),
5565
+ showLabels: z78.boolean(),
5566
+ labels: z78.array(PluginPresentationViewLabel)
5508
5567
  });
5509
- var PluginPresentationViewsGetSettingsArgs = z77.object({
5510
- id: z77.string()
5568
+ var PluginPresentationViewsGetSettingsArgs = z78.object({
5569
+ id: z78.string()
5511
5570
  });
5512
5571
  var PluginPresentationViewsGetSettingsResult = PluginPresentationViewSettings.nullable();
5513
- var PluginPresentationViewsUpdateSettingsArgs = z77.object({
5514
- id: z77.string(),
5572
+ var PluginPresentationViewsUpdateSettingsArgs = z78.object({
5573
+ id: z78.string(),
5515
5574
  settings: PluginPresentationViewSettings.partial()
5516
5575
  }).refine(
5517
5576
  (v) => !(v.settings.showLabels === false && (v.settings.labels?.length ?? 0) > 0),
@@ -5524,28 +5583,28 @@ var PluginPresentationViewsUpdateSettingsArgs = z77.object({
5524
5583
  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"
5525
5584
  }
5526
5585
  );
5527
- var PluginPresentationViewsUpdateSettingsResult = z77.object({
5528
- id: z77.string()
5586
+ var PluginPresentationViewsUpdateSettingsResult = z78.object({
5587
+ id: z78.string()
5529
5588
  });
5530
- var PluginPresentationViewsRenameArgs = z77.object({
5531
- id: z77.string(),
5532
- name: z77.string().trim().min(1)
5589
+ var PluginPresentationViewsRenameArgs = z78.object({
5590
+ id: z78.string(),
5591
+ name: z78.string().trim().min(1)
5533
5592
  });
5534
5593
  var PluginPresentationViewsRenameResult = PluginPresentationView;
5535
- var PluginPresentationViewsDeleteArgs = z77.object({
5536
- id: z77.string()
5594
+ var PluginPresentationViewsDeleteArgs = z78.object({
5595
+ id: z78.string()
5537
5596
  });
5538
- var PluginPresentationViewsDeleteResult = z77.object({
5539
- id: z77.string()
5597
+ var PluginPresentationViewsDeleteResult = z78.object({
5598
+ id: z78.string()
5540
5599
  });
5541
5600
 
5542
5601
  // src/api/presentation/sheets.ts
5543
- var z78 = __toESM(require("zod"), 1);
5602
+ var z79 = __toESM(require("zod"), 1);
5544
5603
  var PluginPresentationSheetsApi = class {
5545
5604
  constructor() {
5546
5605
  }
5547
5606
  };
5548
- var PluginSheetSize = z78.enum([
5607
+ var PluginSheetSize = z79.enum([
5549
5608
  "ANSI_A",
5550
5609
  "ANSI_B",
5551
5610
  "ANSI_C",
@@ -5563,140 +5622,140 @@ var PluginSheetSize = z78.enum([
5563
5622
  "ISO_A1",
5564
5623
  "ISO_A0"
5565
5624
  ]);
5566
- var PluginSheetOrientation = z78.enum(["landscape", "portrait"]);
5567
- var PluginSheetMargin = z78.union([
5568
- z78.literal(0),
5569
- z78.literal(0.25),
5570
- z78.literal(0.5),
5571
- z78.literal(0.75),
5572
- z78.literal(1)
5625
+ var PluginSheetOrientation = z79.enum(["landscape", "portrait"]);
5626
+ var PluginSheetMargin = z79.union([
5627
+ z79.literal(0),
5628
+ z79.literal(0.25),
5629
+ z79.literal(0.5),
5630
+ z79.literal(0.75),
5631
+ z79.literal(1)
5573
5632
  ]);
5574
- var PluginPresentationSheet = z78.object({
5575
- id: z78.string(),
5576
- name: z78.string(),
5633
+ var PluginPresentationSheet = z79.object({
5634
+ id: z79.string(),
5635
+ name: z79.string(),
5577
5636
  size: PluginSheetSize.nullable(),
5578
5637
  orientation: PluginSheetOrientation.nullable(),
5579
5638
  margin: PluginSheetMargin.nullable()
5580
5639
  });
5581
- var PluginSheetPosition = z78.object({
5582
- x: z78.number(),
5583
- y: z78.number()
5640
+ var PluginSheetPosition = z79.object({
5641
+ x: z79.number(),
5642
+ y: z79.number()
5584
5643
  });
5585
- var PluginPresentationSheetsListResult = z78.object({
5586
- sheets: z78.array(PluginPresentationSheet)
5644
+ var PluginPresentationSheetsListResult = z79.object({
5645
+ sheets: z79.array(PluginPresentationSheet)
5587
5646
  });
5588
- var PluginPresentationSheetsGetArgs = z78.object({
5589
- id: z78.string()
5647
+ var PluginPresentationSheetsGetArgs = z79.object({
5648
+ id: z79.string()
5590
5649
  });
5591
5650
  var PluginPresentationSheetsGetResult = PluginPresentationSheet.nullable();
5592
- var PluginPresentationSheetsCreateArgs = z78.object({
5593
- name: z78.string().optional(),
5651
+ var PluginPresentationSheetsCreateArgs = z79.object({
5652
+ name: z79.string().optional(),
5594
5653
  size: PluginSheetSize.optional(),
5595
5654
  orientation: PluginSheetOrientation.optional()
5596
5655
  });
5597
- var PluginPresentationSheetsSetSizeArgs = z78.object({
5598
- sheetId: z78.string(),
5656
+ var PluginPresentationSheetsSetSizeArgs = z79.object({
5657
+ sheetId: z79.string(),
5599
5658
  size: PluginSheetSize,
5600
5659
  orientation: PluginSheetOrientation.optional()
5601
5660
  });
5602
- var PluginPresentationSheetsSetMarginArgs = z78.object({
5603
- sheetId: z78.string(),
5661
+ var PluginPresentationSheetsSetMarginArgs = z79.object({
5662
+ sheetId: z79.string(),
5604
5663
  margin: PluginSheetMargin
5605
5664
  });
5606
- var PluginPresentationSheetsPlaceArgs = z78.object({
5607
- sheetId: z78.string(),
5608
- viewId: z78.string(),
5665
+ var PluginPresentationSheetsPlaceArgs = z79.object({
5666
+ sheetId: z79.string(),
5667
+ viewId: z79.string(),
5609
5668
  position: PluginSheetPosition.optional(),
5610
- scale: z78.number().positive().optional()
5669
+ scale: z79.number().positive().optional()
5611
5670
  });
5612
- var PluginPresentationSheetsPlaceResult = z78.object({
5613
- shapeId: z78.string()
5671
+ var PluginPresentationSheetsPlaceResult = z79.object({
5672
+ shapeId: z79.string()
5614
5673
  });
5615
- var PluginPresentationSheetsRenameArgs = z78.object({
5616
- sheetId: z78.string(),
5617
- name: z78.string().trim().min(1)
5674
+ var PluginPresentationSheetsRenameArgs = z79.object({
5675
+ sheetId: z79.string(),
5676
+ name: z79.string().trim().min(1)
5618
5677
  });
5619
- var PluginPresentationSheetsDeleteArgs = z78.object({
5620
- sheetId: z78.string()
5678
+ var PluginPresentationSheetsDeleteArgs = z79.object({
5679
+ sheetId: z79.string()
5621
5680
  });
5622
- var PluginPresentationSheetsDeleteResult = z78.object({
5623
- id: z78.string()
5681
+ var PluginPresentationSheetsDeleteResult = z79.object({
5682
+ id: z79.string()
5624
5683
  });
5625
- var PluginPresentationSheetsReorderArgs = z78.object({
5626
- sheetId: z78.string(),
5627
- index: z78.number().int().min(0)
5684
+ var PluginPresentationSheetsReorderArgs = z79.object({
5685
+ sheetId: z79.string(),
5686
+ index: z79.number().int().min(0)
5628
5687
  });
5629
- var PluginPresentationSheetsSetActiveArgs = z78.object({
5630
- sheetId: z78.string()
5688
+ var PluginPresentationSheetsSetActiveArgs = z79.object({
5689
+ sheetId: z79.string()
5631
5690
  });
5632
- var PluginPresentationSheetsUpdatePlacedViewArgs = z78.object({
5633
- sheetId: z78.string().optional()
5691
+ var PluginPresentationSheetsUpdatePlacedViewArgs = z79.object({
5692
+ sheetId: z79.string().optional()
5634
5693
  });
5635
- var PluginPresentationSheetsUpdatePlacedViewResult = z78.object({
5636
- shapeIds: z78.array(z78.string())
5694
+ var PluginPresentationSheetsUpdatePlacedViewResult = z79.object({
5695
+ shapeIds: z79.array(z79.string())
5637
5696
  });
5638
5697
 
5639
5698
  // src/api/presentation/placedViews.ts
5640
- var z79 = __toESM(require("zod"), 1);
5699
+ var z80 = __toESM(require("zod"), 1);
5641
5700
  var PluginPresentationPlacedViewsApi = class {
5642
5701
  constructor() {
5643
5702
  }
5644
5703
  };
5645
- var PluginPlacedViewCropPoint = z79.object({
5646
- x: z79.number().min(0).max(1),
5647
- y: z79.number().min(0).max(1)
5704
+ var PluginPlacedViewCropPoint = z80.object({
5705
+ x: z80.number().min(0).max(1),
5706
+ y: z80.number().min(0).max(1)
5648
5707
  });
5649
- var PluginPlacedViewCrop = z79.object({
5708
+ var PluginPlacedViewCrop = z80.object({
5650
5709
  topLeft: PluginPlacedViewCropPoint,
5651
5710
  bottomRight: PluginPlacedViewCropPoint
5652
5711
  }).refine(
5653
5712
  (c) => c.topLeft.x < c.bottomRight.x && c.topLeft.y < c.bottomRight.y,
5654
5713
  { message: "topLeft must be strictly less than bottomRight on both axes" }
5655
5714
  );
5656
- var PluginPlacedView = z79.object({
5657
- shapeId: z79.string(),
5658
- sheetId: z79.string().nullable(),
5659
- title: z79.string(),
5660
- viewId: z79.string(),
5715
+ var PluginPlacedView = z80.object({
5716
+ shapeId: z80.string(),
5717
+ sheetId: z80.string().nullable(),
5718
+ title: z80.string(),
5719
+ viewId: z80.string(),
5661
5720
  position: PluginSheetPosition,
5662
- size: z79.object({ width: z79.number(), height: z79.number() }),
5663
- scale: z79.number().nullable(),
5664
- is3d: z79.boolean(),
5665
- rotation: z79.number(),
5721
+ size: z80.object({ width: z80.number(), height: z80.number() }),
5722
+ scale: z80.number().nullable(),
5723
+ is3d: z80.boolean(),
5724
+ rotation: z80.number(),
5666
5725
  crop: PluginPlacedViewCrop.nullable(),
5667
- isUnlinked: z79.boolean()
5726
+ isUnlinked: z80.boolean()
5668
5727
  });
5669
- var PluginPresentationPlacedViewsListArgs = z79.object({
5670
- sheetId: z79.string().optional()
5728
+ var PluginPresentationPlacedViewsListArgs = z80.object({
5729
+ sheetId: z80.string().optional()
5671
5730
  });
5672
- var PluginPresentationPlacedViewsListResult = z79.object({
5673
- placedViews: z79.array(PluginPlacedView)
5731
+ var PluginPresentationPlacedViewsListResult = z80.object({
5732
+ placedViews: z80.array(PluginPlacedView)
5674
5733
  });
5675
- var PluginPresentationPlacedViewsGetArgs = z79.object({
5676
- shapeId: z79.string()
5734
+ var PluginPresentationPlacedViewsGetArgs = z80.object({
5735
+ shapeId: z80.string()
5677
5736
  });
5678
- var PluginPresentationPlacedViewsMoveArgs = z79.object({
5679
- shapeId: z79.string(),
5737
+ var PluginPresentationPlacedViewsMoveArgs = z80.object({
5738
+ shapeId: z80.string(),
5680
5739
  position: PluginSheetPosition,
5681
- sheetId: z79.string().optional()
5740
+ sheetId: z80.string().optional()
5682
5741
  });
5683
- var PluginPresentationPlacedViewsScaleArgs = z79.object({
5684
- shapeId: z79.string(),
5685
- factor: z79.number().finite().min(0.01).max(100)
5742
+ var PluginPresentationPlacedViewsScaleArgs = z80.object({
5743
+ shapeId: z80.string(),
5744
+ factor: z80.number().finite().min(0.01).max(100)
5686
5745
  });
5687
- var PluginPresentationPlacedViewsSetScaleArgs = z79.object({
5688
- shapeId: z79.string(),
5689
- scale: z79.number().positive()
5746
+ var PluginPresentationPlacedViewsSetScaleArgs = z80.object({
5747
+ shapeId: z80.string(),
5748
+ scale: z80.number().positive()
5690
5749
  });
5691
- var PluginPresentationPlacedViewsSetCropArgs = z79.object({
5692
- shapeId: z79.string(),
5750
+ var PluginPresentationPlacedViewsSetCropArgs = z80.object({
5751
+ shapeId: z80.string(),
5693
5752
  crop: PluginPlacedViewCrop.nullable()
5694
5753
  });
5695
- var PluginPresentationPlacedViewsSetRotationArgs = z79.object({
5696
- shapeId: z79.string().min(1),
5697
- rotation: z79.number().finite()
5754
+ var PluginPresentationPlacedViewsSetRotationArgs = z80.object({
5755
+ shapeId: z80.string().min(1),
5756
+ rotation: z80.number().finite()
5698
5757
  });
5699
- var PluginViewSettingCategory = z79.enum([
5758
+ var PluginViewSettingCategory = z80.enum([
5700
5759
  "Site",
5701
5760
  "Topography",
5702
5761
  "Space",
@@ -5708,7 +5767,7 @@ var PluginViewSettingCategory = z79.enum([
5708
5767
  "Adjacency Line",
5709
5768
  "Landscape elements"
5710
5769
  ]);
5711
- var PluginViewLineStyle = z79.enum([
5770
+ var PluginViewLineStyle = z80.enum([
5712
5771
  "solid",
5713
5772
  "dashed",
5714
5773
  "dashdot",
@@ -5717,62 +5776,62 @@ var PluginViewLineStyle = z79.enum([
5717
5776
  "phantom",
5718
5777
  "propertyLine"
5719
5778
  ]);
5720
- var PluginPlacedViewStylePatch = z79.object({
5721
- hide: z79.boolean().optional(),
5779
+ var PluginPlacedViewStylePatch = z80.object({
5780
+ hide: z80.boolean().optional(),
5722
5781
  lineStyle: PluginViewLineStyle.optional(),
5723
- lineColor: z79.string().regex(/^#?[0-9a-fA-F]{6}$/, "lineColor must be a 6-digit hex color").optional(),
5724
- dashLength: z79.number().finite().positive().optional(),
5725
- lineWidth: z79.number().finite().min(0).optional(),
5726
- cutWidth: z79.number().finite().min(0).optional(),
5727
- projectionWidth: z79.number().finite().min(0).optional(),
5728
- treeLineWidth: z79.number().finite().min(0).optional(),
5729
- parkingLineWidth: z79.number().finite().min(0).optional(),
5730
- colorMode: z79.string().refine(
5782
+ lineColor: z80.string().regex(/^#?[0-9a-fA-F]{6}$/, "lineColor must be a 6-digit hex color").optional(),
5783
+ dashLength: z80.number().finite().positive().optional(),
5784
+ lineWidth: z80.number().finite().min(0).optional(),
5785
+ cutWidth: z80.number().finite().min(0).optional(),
5786
+ projectionWidth: z80.number().finite().min(0).optional(),
5787
+ treeLineWidth: z80.number().finite().min(0).optional(),
5788
+ parkingLineWidth: z80.number().finite().min(0).optional(),
5789
+ colorMode: z80.string().refine(
5731
5790
  (v) => ["department", "texture", "monochrome"].includes(v) || v.startsWith("tag:"),
5732
5791
  { message: "colorMode must be department, texture, monochrome, or tag:<tagCategoryId>" }
5733
5792
  ).optional(),
5734
- opacity: z79.number().finite().min(0).max(100).optional(),
5735
- mapOpacity: z79.number().finite().min(0).max(100).optional(),
5736
- buildingOpacity: z79.number().finite().min(0).max(100).optional(),
5737
- mapHide: z79.boolean().optional(),
5738
- buildingHide: z79.boolean().optional(),
5739
- noBuilding: z79.boolean().optional(),
5740
- viewStyle: z79.enum(["NONE", "FILLET", "BUBBLE"]).optional(),
5741
- radius: z79.number().finite().min(0).optional(),
5742
- inset: z79.number().finite().min(0).optional()
5793
+ opacity: z80.number().finite().min(0).max(100).optional(),
5794
+ mapOpacity: z80.number().finite().min(0).max(100).optional(),
5795
+ buildingOpacity: z80.number().finite().min(0).max(100).optional(),
5796
+ mapHide: z80.boolean().optional(),
5797
+ buildingHide: z80.boolean().optional(),
5798
+ noBuilding: z80.boolean().optional(),
5799
+ viewStyle: z80.enum(["NONE", "FILLET", "BUBBLE"]).optional(),
5800
+ radius: z80.number().finite().min(0).optional(),
5801
+ inset: z80.number().finite().min(0).optional()
5743
5802
  }).strict().refine((p) => Object.keys(p).length > 0, { message: "patch must set at least one setting" });
5744
- var PluginViewLabelType = z79.enum(["objectLabels", "department", "areas"]);
5745
- var PluginViewFontVariantPatch = z79.object({
5746
- fontFamily: z79.string().min(1).optional(),
5747
- fontWeight: z79.string().regex(/^\d{3}$/, 'fontWeight must be a numeric string like "400" or "700"').optional(),
5748
- fontStyle: z79.enum(["normal", "italic"]).optional(),
5749
- fontSize: z79.number().finite().positive().max(200).optional()
5803
+ var PluginViewLabelType = z80.enum(["objectLabels", "department", "areas"]);
5804
+ var PluginViewFontVariantPatch = z80.object({
5805
+ fontFamily: z80.string().min(1).optional(),
5806
+ fontWeight: z80.string().regex(/^\d{3}$/, 'fontWeight must be a numeric string like "400" or "700"').optional(),
5807
+ fontStyle: z80.enum(["normal", "italic"]).optional(),
5808
+ fontSize: z80.number().finite().positive().max(200).optional()
5750
5809
  }).strict();
5751
- var PluginPlacedViewFontStylesPatch = z79.object({
5752
- visibleTypes: z79.array(PluginViewLabelType).optional(),
5810
+ var PluginPlacedViewFontStylesPatch = z80.object({
5811
+ visibleTypes: z80.array(PluginViewLabelType).optional(),
5753
5812
  objectLabels: PluginViewFontVariantPatch.optional(),
5754
5813
  department: PluginViewFontVariantPatch.optional(),
5755
5814
  areas: PluginViewFontVariantPatch.optional()
5756
5815
  }).strict().refine((p) => Object.keys(p).length > 0, { message: "patch must set at least one field" });
5757
- var PluginPlacedViewsUpdateStylesArgs = z79.object({
5758
- shapeId: z79.string().min(1),
5816
+ var PluginPlacedViewsUpdateStylesArgs = z80.object({
5817
+ shapeId: z80.string().min(1),
5759
5818
  category: PluginViewSettingCategory,
5760
5819
  patch: PluginPlacedViewStylePatch
5761
5820
  });
5762
- var PluginPlacedViewsUpdateFontStylesArgs = z79.object({
5763
- shapeId: z79.string().min(1),
5821
+ var PluginPlacedViewsUpdateFontStylesArgs = z80.object({
5822
+ shapeId: z80.string().min(1),
5764
5823
  category: PluginViewSettingCategory,
5765
5824
  patch: PluginPlacedViewFontStylesPatch
5766
5825
  });
5767
- var PluginPlacedViewsMoveLabelArgs = z79.object({
5768
- labelId: z79.string().min(1),
5826
+ var PluginPlacedViewsMoveLabelArgs = z80.object({
5827
+ labelId: z80.string().min(1),
5769
5828
  position: PluginSheetPosition
5770
5829
  });
5771
- var PluginPlacedViewsSetLabelHiddenArgs = z79.object({
5772
- labelId: z79.string().min(1),
5773
- hidden: z79.boolean()
5830
+ var PluginPlacedViewsSetLabelHiddenArgs = z80.object({
5831
+ labelId: z80.string().min(1),
5832
+ hidden: z80.boolean()
5774
5833
  });
5775
- var PluginCanvasShapeOrigin = z79.enum([
5834
+ var PluginCanvasShapeOrigin = z80.enum([
5776
5835
  "view",
5777
5836
  "aiOutput",
5778
5837
  "diagram",
@@ -5781,65 +5840,65 @@ var PluginCanvasShapeOrigin = z79.enum([
5781
5840
  "image",
5782
5841
  "other"
5783
5842
  ]);
5784
- var PluginPlacedViewsMoveShapeArgs = z79.object({
5785
- shapeId: z79.string().min(1),
5843
+ var PluginPlacedViewsMoveShapeArgs = z80.object({
5844
+ shapeId: z80.string().min(1),
5786
5845
  position: PluginSheetPosition,
5787
- sheetId: z79.string().optional()
5846
+ sheetId: z80.string().optional()
5788
5847
  });
5789
- var PluginPlacedViewsResizeShapeArgs = z79.object({
5790
- shapeId: z79.string().min(1),
5791
- factor: z79.number().finite().min(0.01).max(100)
5848
+ var PluginPlacedViewsResizeShapeArgs = z80.object({
5849
+ shapeId: z80.string().min(1),
5850
+ factor: z80.number().finite().min(0.01).max(100)
5792
5851
  });
5793
- var PluginPresentationPlacedViewsRotateShapeArgs = z79.object({
5794
- shapeId: z79.string().min(1),
5795
- rotation: z79.number().finite()
5852
+ var PluginPresentationPlacedViewsRotateShapeArgs = z80.object({
5853
+ shapeId: z80.string().min(1),
5854
+ rotation: z80.number().finite()
5796
5855
  });
5797
- var PluginPlacedViewsDeleteShapesArgs = z79.object({
5798
- shapeIds: z79.array(z79.string().min(1)).min(1).max(500)
5856
+ var PluginPlacedViewsDeleteShapesArgs = z80.object({
5857
+ shapeIds: z80.array(z80.string().min(1)).min(1).max(500)
5799
5858
  });
5800
- var PluginPlacedViewsSetOpacityArgs = z79.object({
5801
- shapeId: z79.string().min(1),
5802
- opacity: z79.number().finite().min(0).max(1)
5859
+ var PluginPlacedViewsSetOpacityArgs = z80.object({
5860
+ shapeId: z80.string().min(1),
5861
+ opacity: z80.number().finite().min(0).max(1)
5803
5862
  });
5804
- var PluginPlacedViewsSetMaskArgs = z79.object({
5805
- shapeId: z79.string().min(1),
5806
- enabled: z79.boolean()
5863
+ var PluginPlacedViewsSetMaskArgs = z80.object({
5864
+ shapeId: z80.string().min(1),
5865
+ enabled: z80.boolean()
5807
5866
  });
5808
5867
 
5809
5868
  // src/api/presentation/diagrams.ts
5810
- var z80 = __toESM(require("zod"), 1);
5869
+ var z81 = __toESM(require("zod"), 1);
5811
5870
  var PluginPresentationDiagramsApi = class {
5812
5871
  constructor() {
5813
5872
  }
5814
5873
  };
5815
- var PluginPresentationDiagramsPlaceArgs = z80.object({
5816
- sheetId: z80.string(),
5817
- urls: z80.array(z80.string()),
5818
- position: z80.object({ x: z80.number(), y: z80.number() }).optional()
5874
+ var PluginPresentationDiagramsPlaceArgs = z81.object({
5875
+ sheetId: z81.string(),
5876
+ urls: z81.array(z81.string()),
5877
+ position: z81.object({ x: z81.number(), y: z81.number() }).optional()
5819
5878
  });
5820
- var PluginPresentationDiagramsPlaceResult = z80.object({
5821
- shapeIds: z80.array(z80.string())
5879
+ var PluginPresentationDiagramsPlaceResult = z81.object({
5880
+ shapeIds: z81.array(z81.string())
5822
5881
  });
5823
- var PluginPresentationSiteDiagramType = z80.enum([
5882
+ var PluginPresentationSiteDiagramType = z81.enum([
5824
5883
  "location",
5825
5884
  "streetview",
5826
5885
  "climate"
5827
5886
  ]);
5828
- var PluginPresentationDiagramsGenerateSiteArgs = z80.object({
5829
- types: z80.array(PluginPresentationSiteDiagramType).min(1).optional()
5887
+ var PluginPresentationDiagramsGenerateSiteArgs = z81.object({
5888
+ types: z81.array(PluginPresentationSiteDiagramType).min(1).optional()
5830
5889
  });
5831
- var PluginPresentationDiagramsGenerateResult = z80.object({
5832
- sheetIds: z80.array(z80.string())
5890
+ var PluginPresentationDiagramsGenerateResult = z81.object({
5891
+ sheetIds: z81.array(z81.string())
5833
5892
  });
5834
5893
 
5835
5894
  // src/api/presentation/annotate.ts
5836
- var z81 = __toESM(require("zod"), 1);
5895
+ var z82 = __toESM(require("zod"), 1);
5837
5896
  var PluginPresentationAnnotateApi = class {
5838
5897
  constructor() {
5839
5898
  }
5840
5899
  };
5841
- var PluginAnnotateTextSize = z81.enum(["s", "m", "l", "xl"]);
5842
- var PluginAnnotateTextColor = z81.enum([
5900
+ var PluginAnnotateTextSize = z82.enum(["s", "m", "l", "xl"]);
5901
+ var PluginAnnotateTextColor = z82.enum([
5843
5902
  "black",
5844
5903
  "grey",
5845
5904
  "light-violet",
@@ -5854,23 +5913,23 @@ var PluginAnnotateTextColor = z81.enum([
5854
5913
  "red",
5855
5914
  "white"
5856
5915
  ]);
5857
- var PluginPresentationAnnotateTextArgs = z81.object({
5858
- sheetId: z81.string(),
5859
- text: z81.string(),
5860
- position: z81.object({ x: z81.number(), y: z81.number() }).optional(),
5916
+ var PluginPresentationAnnotateTextArgs = z82.object({
5917
+ sheetId: z82.string(),
5918
+ text: z82.string(),
5919
+ position: z82.object({ x: z82.number(), y: z82.number() }).optional(),
5861
5920
  size: PluginAnnotateTextSize.optional(),
5862
5921
  color: PluginAnnotateTextColor.optional(),
5863
- fontFamily: z81.string().min(1).optional(),
5864
- fontWeight: z81.string().regex(
5922
+ fontFamily: z82.string().min(1).optional(),
5923
+ fontWeight: z82.string().regex(
5865
5924
  /^\d{3}(-italic)?$/,
5866
5925
  'fontWeight must be a numeric string like "400" or "700", optionally with the "-italic" suffix'
5867
5926
  ).optional(),
5868
- fontSizePx: z81.number().finite().positive().optional()
5927
+ fontSizePx: z82.number().finite().positive().optional()
5869
5928
  });
5870
- var PluginPresentationAnnotateTextResult = z81.object({
5871
- shapeId: z81.string()
5929
+ var PluginPresentationAnnotateTextResult = z82.object({
5930
+ shapeId: z82.string()
5872
5931
  });
5873
- var PluginAnnotateGeoKind = z81.enum([
5932
+ var PluginAnnotateGeoKind = z82.enum([
5874
5933
  "rectangle",
5875
5934
  "ellipse",
5876
5935
  "triangle",
@@ -5888,358 +5947,358 @@ var PluginAnnotateGeoKind = z81.enum([
5888
5947
  "arrow-right",
5889
5948
  "arrow-down"
5890
5949
  ]);
5891
- var PluginAnnotateFill = z81.enum(["none", "semi", "solid", "pattern"]);
5892
- var PluginPresentationAnnotateArrowArgs = z81.object({
5893
- sheetId: z81.string(),
5894
- start: z81.object({ x: z81.number(), y: z81.number() }),
5895
- end: z81.object({ x: z81.number(), y: z81.number() }),
5950
+ var PluginAnnotateFill = z82.enum(["none", "semi", "solid", "pattern"]);
5951
+ var PluginPresentationAnnotateArrowArgs = z82.object({
5952
+ sheetId: z82.string(),
5953
+ start: z82.object({ x: z82.number(), y: z82.number() }),
5954
+ end: z82.object({ x: z82.number(), y: z82.number() }),
5896
5955
  color: PluginAnnotateTextColor.optional(),
5897
5956
  size: PluginAnnotateTextSize.optional()
5898
5957
  });
5899
- var PluginPresentationAnnotateNoteArgs = z81.object({
5900
- sheetId: z81.string(),
5901
- text: z81.string(),
5902
- position: z81.object({ x: z81.number(), y: z81.number() }).optional(),
5958
+ var PluginPresentationAnnotateNoteArgs = z82.object({
5959
+ sheetId: z82.string(),
5960
+ text: z82.string(),
5961
+ position: z82.object({ x: z82.number(), y: z82.number() }).optional(),
5903
5962
  color: PluginAnnotateTextColor.optional(),
5904
5963
  size: PluginAnnotateTextSize.optional()
5905
5964
  });
5906
- var PluginPresentationAnnotateShapeArgs = z81.object({
5907
- sheetId: z81.string(),
5965
+ var PluginPresentationAnnotateShapeArgs = z82.object({
5966
+ sheetId: z82.string(),
5908
5967
  kind: PluginAnnotateGeoKind,
5909
- bounds: z81.object({
5910
- x: z81.number(),
5911
- y: z81.number(),
5912
- w: z81.number().positive(),
5913
- h: z81.number().positive()
5968
+ bounds: z82.object({
5969
+ x: z82.number(),
5970
+ y: z82.number(),
5971
+ w: z82.number().positive(),
5972
+ h: z82.number().positive()
5914
5973
  }),
5915
5974
  color: PluginAnnotateTextColor.optional(),
5916
5975
  fill: PluginAnnotateFill.optional()
5917
5976
  });
5918
- var PluginPresentationAnnotateResult = z81.object({
5919
- shapeId: z81.string()
5977
+ var PluginPresentationAnnotateResult = z82.object({
5978
+ shapeId: z82.string()
5920
5979
  });
5921
5980
 
5922
5981
  // src/api/presentation/shapes.ts
5923
- var z82 = __toESM(require("zod"), 1);
5982
+ var z83 = __toESM(require("zod"), 1);
5924
5983
  var PluginPresentationShapesApi = class {
5925
5984
  constructor() {
5926
5985
  }
5927
5986
  };
5928
- var PluginPresentationShapeSpec = z82.discriminatedUnion("type", [
5929
- z82.object({
5930
- type: z82.literal("text"),
5931
- text: z82.string(),
5932
- position: z82.object({ x: z82.number(), y: z82.number() }).optional(),
5987
+ var PluginPresentationShapeSpec = z83.discriminatedUnion("type", [
5988
+ z83.object({
5989
+ type: z83.literal("text"),
5990
+ text: z83.string(),
5991
+ position: z83.object({ x: z83.number(), y: z83.number() }).optional(),
5933
5992
  size: PluginAnnotateTextSize.optional(),
5934
5993
  color: PluginAnnotateTextColor.optional()
5935
5994
  }),
5936
- z82.object({
5937
- type: z82.literal("note"),
5938
- text: z82.string(),
5939
- position: z82.object({ x: z82.number(), y: z82.number() }).optional(),
5995
+ z83.object({
5996
+ type: z83.literal("note"),
5997
+ text: z83.string(),
5998
+ position: z83.object({ x: z83.number(), y: z83.number() }).optional(),
5940
5999
  color: PluginAnnotateTextColor.optional(),
5941
6000
  size: PluginAnnotateTextSize.optional()
5942
6001
  }),
5943
- z82.object({
5944
- type: z82.literal("arrow"),
5945
- start: z82.object({ x: z82.number(), y: z82.number() }),
5946
- end: z82.object({ x: z82.number(), y: z82.number() }),
6002
+ z83.object({
6003
+ type: z83.literal("arrow"),
6004
+ start: z83.object({ x: z83.number(), y: z83.number() }),
6005
+ end: z83.object({ x: z83.number(), y: z83.number() }),
5947
6006
  color: PluginAnnotateTextColor.optional(),
5948
6007
  size: PluginAnnotateTextSize.optional()
5949
6008
  }),
5950
- z82.object({
5951
- type: z82.literal("geo"),
6009
+ z83.object({
6010
+ type: z83.literal("geo"),
5952
6011
  kind: PluginAnnotateGeoKind,
5953
- bounds: z82.object({
5954
- x: z82.number(),
5955
- y: z82.number(),
5956
- w: z82.number().positive(),
5957
- h: z82.number().positive()
6012
+ bounds: z83.object({
6013
+ x: z83.number(),
6014
+ y: z83.number(),
6015
+ w: z83.number().positive(),
6016
+ h: z83.number().positive()
5958
6017
  }),
5959
6018
  color: PluginAnnotateTextColor.optional(),
5960
6019
  fill: PluginAnnotateFill.optional()
5961
6020
  })
5962
6021
  ]);
5963
- var PluginPresentationShapeType = z82.enum([
6022
+ var PluginPresentationShapeType = z83.enum([
5964
6023
  "text",
5965
6024
  "note",
5966
6025
  "arrow",
5967
6026
  "geo"
5968
6027
  ]);
5969
- var PluginPresentationShapesUpsertArgs = z82.object({
5970
- key: z82.string().min(1),
6028
+ var PluginPresentationShapesUpsertArgs = z83.object({
6029
+ key: z83.string().min(1),
5971
6030
  shape: PluginPresentationShapeSpec,
5972
- sheetId: z82.string().optional()
6031
+ sheetId: z83.string().optional()
5973
6032
  });
5974
- var PluginPresentationShapesUpsertResult = z82.object({
5975
- shapeId: z82.string(),
5976
- created: z82.boolean()
6033
+ var PluginPresentationShapesUpsertResult = z83.object({
6034
+ shapeId: z83.string(),
6035
+ created: z83.boolean()
5977
6036
  });
5978
- var PluginPresentationShapesRemoveArgs = z82.object({
5979
- key: z82.string().min(1)
6037
+ var PluginPresentationShapesRemoveArgs = z83.object({
6038
+ key: z83.string().min(1)
5980
6039
  });
5981
- var PluginPresentationShapesListResult = z82.object({
5982
- shapes: z82.array(
5983
- z82.object({
5984
- key: z82.string(),
5985
- shapeId: z82.string(),
6040
+ var PluginPresentationShapesListResult = z83.object({
6041
+ shapes: z83.array(
6042
+ z83.object({
6043
+ key: z83.string(),
6044
+ shapeId: z83.string(),
5986
6045
  type: PluginPresentationShapeType
5987
6046
  })
5988
6047
  )
5989
6048
  });
5990
6049
 
5991
6050
  // src/api/presentation/tables.ts
5992
- var z83 = __toESM(require("zod"), 1);
6051
+ var z84 = __toESM(require("zod"), 1);
5993
6052
  var PluginPresentationTablesApi = class {
5994
6053
  constructor() {
5995
6054
  }
5996
6055
  };
5997
- var PluginPresentationTablesPlaceArgs = z83.object({
5998
- sheetId: z83.string().min(1),
5999
- rows: z83.array(z83.array(z83.string()).min(1)).min(1).refine((rows) => rows.reduce((n, r) => n + r.length, 0) <= 1e4, {
6056
+ var PluginPresentationTablesPlaceArgs = z84.object({
6057
+ sheetId: z84.string().min(1),
6058
+ rows: z84.array(z84.array(z84.string()).min(1)).min(1).refine((rows) => rows.reduce((n, r) => n + r.length, 0) <= 1e4, {
6000
6059
  message: "table exceeds the 10000-cell cap"
6001
6060
  }),
6002
- position: z83.object({ x: z83.number(), y: z83.number() }).optional()
6061
+ position: z84.object({ x: z84.number(), y: z84.number() }).optional()
6003
6062
  });
6004
6063
 
6005
6064
  // src/api/presentation/slideshow.ts
6006
- var z84 = __toESM(require("zod"), 1);
6065
+ var z85 = __toESM(require("zod"), 1);
6007
6066
  var PluginPresentationSlideshowApi = class {
6008
6067
  constructor() {
6009
6068
  }
6010
6069
  };
6011
- var PluginPresentationSlideshowStartArgs = z84.object({
6012
- sheetIds: z84.array(z84.string().min(1)).optional(),
6013
- startIndex: z84.number().int().min(0).optional()
6070
+ var PluginPresentationSlideshowStartArgs = z85.object({
6071
+ sheetIds: z85.array(z85.string().min(1)).optional(),
6072
+ startIndex: z85.number().int().min(0).optional()
6014
6073
  });
6015
- var PluginPresentationSlideshowState = z84.object({
6016
- running: z84.boolean(),
6017
- index: z84.number().int().nullable()
6074
+ var PluginPresentationSlideshowState = z85.object({
6075
+ running: z85.boolean(),
6076
+ index: z85.number().int().nullable()
6018
6077
  });
6019
6078
 
6020
6079
  // src/api/presentation/import.ts
6021
- var z85 = __toESM(require("zod"), 1);
6080
+ var z86 = __toESM(require("zod"), 1);
6022
6081
  var PluginPresentationImportApi = class {
6023
6082
  constructor() {
6024
6083
  }
6025
6084
  };
6026
- var PluginPresentationImportArgs = z85.object({
6027
- url: z85.string().optional(),
6028
- dataUrl: z85.string().optional(),
6029
- position: z85.object({ x: z85.number(), y: z85.number() }).optional()
6085
+ var PluginPresentationImportArgs = z86.object({
6086
+ url: z86.string().optional(),
6087
+ dataUrl: z86.string().optional(),
6088
+ position: z86.object({ x: z86.number(), y: z86.number() }).optional()
6030
6089
  }).refine((a) => Boolean(a.url) || Boolean(a.dataUrl), {
6031
6090
  message: "Provide a url or a dataUrl"
6032
6091
  });
6033
- var PluginPresentationImportResult = z85.object({
6034
- shapeIds: z85.array(z85.string())
6092
+ var PluginPresentationImportResult = z86.object({
6093
+ shapeIds: z86.array(z86.string())
6035
6094
  });
6036
6095
 
6037
6096
  // src/api/presentation/aiInspiration.ts
6038
- var z86 = __toESM(require("zod"), 1);
6039
- var JsonPrimitive = z86.union([z86.string(), z86.number(), z86.boolean(), z86.null()]);
6040
- var JsonValue = z86.lazy(
6041
- () => z86.union([JsonPrimitive, z86.array(JsonValue), z86.record(z86.string(), JsonValue)])
6097
+ var z87 = __toESM(require("zod"), 1);
6098
+ var JsonPrimitive = z87.union([z87.string(), z87.number(), z87.boolean(), z87.null()]);
6099
+ var JsonValue = z87.lazy(
6100
+ () => z87.union([JsonPrimitive, z87.array(JsonValue), z87.record(z87.string(), JsonValue)])
6042
6101
  );
6043
- var PluginAIInspirationRunMode = z86.enum(["blocking", "job"]);
6044
- var PluginAIInspirationOutputKind = z86.enum([
6102
+ var PluginAIInspirationRunMode = z87.enum(["blocking", "job"]);
6103
+ var PluginAIInspirationOutputKind = z87.enum([
6045
6104
  "source",
6046
6105
  "image",
6047
6106
  "video"
6048
6107
  ]);
6049
- var PluginAIInspirationModelOutput = z86.enum(["image", "video"]);
6050
- var PluginAIInspirationRuntimeProvider = z86.enum(["gpt", "fal"]);
6051
- var PluginAIInspirationPromptStrategy = z86.enum([
6108
+ var PluginAIInspirationModelOutput = z87.enum(["image", "video"]);
6109
+ var PluginAIInspirationRuntimeProvider = z87.enum(["gpt", "fal"]);
6110
+ var PluginAIInspirationPromptStrategy = z87.enum([
6052
6111
  "gpt-image",
6053
6112
  "fal-image",
6054
6113
  "fal-video"
6055
6114
  ]);
6056
- var PluginAIInspirationShapeKind = z86.enum(["image", "view", "video"]);
6057
- var PluginAIInspirationVideoMode = z86.enum([
6115
+ var PluginAIInspirationShapeKind = z87.enum(["image", "view", "video"]);
6116
+ var PluginAIInspirationVideoMode = z87.enum([
6058
6117
  "animate",
6059
6118
  "references",
6060
6119
  "keyframes"
6061
6120
  ]);
6062
- var PluginAIInspirationVideoMotion = z86.enum([
6121
+ var PluginAIInspirationVideoMotion = z87.enum([
6063
6122
  "auto",
6064
6123
  "slow-dolly",
6065
6124
  "subtle-orbit",
6066
6125
  "reveal"
6067
6126
  ]);
6068
- var PluginAIInspirationVideoDuration = z86.enum(["4s", "6s", "8s"]);
6069
- var PluginAIInspirationJobStatus = z86.enum([
6127
+ var PluginAIInspirationVideoDuration = z87.enum(["4s", "6s", "8s"]);
6128
+ var PluginAIInspirationJobStatus = z87.enum([
6070
6129
  "queued",
6071
6130
  "running",
6072
6131
  "completed",
6073
6132
  "failed",
6074
6133
  "cancelled"
6075
6134
  ]);
6076
- var PluginAIInspirationWorkflowRunState = z86.enum([
6135
+ var PluginAIInspirationWorkflowRunState = z87.enum([
6077
6136
  "current",
6078
6137
  "stale",
6079
6138
  "running",
6080
6139
  "failed",
6081
6140
  "superseded"
6082
6141
  ]);
6083
- var PluginAIInspirationRegionHint = z86.object({
6084
- x: z86.number().finite(),
6085
- y: z86.number().finite(),
6086
- w: z86.number().finite().positive(),
6087
- h: z86.number().finite().positive()
6088
- });
6089
- var PluginAIInspirationPoint = z86.object({
6090
- x: z86.number().finite(),
6091
- y: z86.number().finite()
6092
- });
6093
- var PluginAIInspirationTextAnnotation = z86.object({
6094
- text: z86.string().min(1),
6095
- x: z86.number().finite().optional(),
6096
- y: z86.number().finite().optional()
6097
- });
6098
- var PluginAIInspirationSketchGuidance = z86.object({
6099
- visualShapeIds: z86.array(z86.string()).optional(),
6100
- textAnnotations: z86.array(PluginAIInspirationTextAnnotation).optional()
6101
- });
6102
- var PluginAIInspirationSiteOptions = z86.object({
6103
- includeSatellite: z86.boolean().optional(),
6104
- includeStreetView: z86.boolean().optional(),
6105
- includeAerial: z86.boolean().optional(),
6106
- aerialBearing: z86.number().finite().optional(),
6107
- aerialPitch: z86.number().finite().optional(),
6108
- selectedDiagramIds: z86.array(z86.string()).optional(),
6109
- location: z86.object({
6110
- lat: z86.number().finite(),
6111
- lng: z86.number().finite()
6142
+ var PluginAIInspirationRegionHint = z87.object({
6143
+ x: z87.number().finite(),
6144
+ y: z87.number().finite(),
6145
+ w: z87.number().finite().positive(),
6146
+ h: z87.number().finite().positive()
6147
+ });
6148
+ var PluginAIInspirationPoint = z87.object({
6149
+ x: z87.number().finite(),
6150
+ y: z87.number().finite()
6151
+ });
6152
+ var PluginAIInspirationTextAnnotation = z87.object({
6153
+ text: z87.string().min(1),
6154
+ x: z87.number().finite().optional(),
6155
+ y: z87.number().finite().optional()
6156
+ });
6157
+ var PluginAIInspirationSketchGuidance = z87.object({
6158
+ visualShapeIds: z87.array(z87.string()).optional(),
6159
+ textAnnotations: z87.array(PluginAIInspirationTextAnnotation).optional()
6160
+ });
6161
+ var PluginAIInspirationSiteOptions = z87.object({
6162
+ includeSatellite: z87.boolean().optional(),
6163
+ includeStreetView: z87.boolean().optional(),
6164
+ includeAerial: z87.boolean().optional(),
6165
+ aerialBearing: z87.number().finite().optional(),
6166
+ aerialPitch: z87.number().finite().optional(),
6167
+ selectedDiagramIds: z87.array(z87.string()).optional(),
6168
+ location: z87.object({
6169
+ lat: z87.number().finite(),
6170
+ lng: z87.number().finite()
6112
6171
  }).optional()
6113
6172
  });
6114
- var PluginAIInspirationAppliedPreset = z86.object({
6115
- source: z86.enum(["curated", "user"]),
6116
- presetId: z86.string().min(1),
6117
- name: z86.string().min(1),
6118
- savedPresetKind: z86.enum(["prompt", "style"]).optional(),
6119
- stylePrompt: z86.string().optional(),
6120
- modelId: z86.string().optional(),
6121
- referenceImages: z86.array(
6122
- z86.object({
6123
- url: z86.string().min(1),
6124
- label: z86.string().optional(),
6125
- weight: z86.number().finite().optional()
6173
+ var PluginAIInspirationAppliedPreset = z87.object({
6174
+ source: z87.enum(["curated", "user"]),
6175
+ presetId: z87.string().min(1),
6176
+ name: z87.string().min(1),
6177
+ savedPresetKind: z87.enum(["prompt", "style"]).optional(),
6178
+ stylePrompt: z87.string().optional(),
6179
+ modelId: z87.string().optional(),
6180
+ referenceImages: z87.array(
6181
+ z87.object({
6182
+ url: z87.string().min(1),
6183
+ label: z87.string().optional(),
6184
+ weight: z87.number().finite().optional()
6126
6185
  })
6127
6186
  ).optional(),
6128
- siteDefaults: z86.object({
6129
- includeSatellite: z86.boolean().optional(),
6130
- includeStreetView: z86.boolean().optional(),
6131
- includeAerial: z86.boolean().optional()
6187
+ siteDefaults: z87.object({
6188
+ includeSatellite: z87.boolean().optional(),
6189
+ includeStreetView: z87.boolean().optional(),
6190
+ includeAerial: z87.boolean().optional()
6132
6191
  }).optional()
6133
6192
  });
6134
- var PluginAIInspirationVideoOptions = z86.object({
6193
+ var PluginAIInspirationVideoOptions = z87.object({
6135
6194
  mode: PluginAIInspirationVideoMode.optional(),
6136
- endFrameShapeId: z86.string().optional(),
6195
+ endFrameShapeId: z87.string().optional(),
6137
6196
  motion: PluginAIInspirationVideoMotion.optional(),
6138
6197
  duration: PluginAIInspirationVideoDuration.optional()
6139
6198
  });
6140
- var PluginAIInspirationModel = z86.object({
6141
- id: z86.string(),
6142
- label: z86.string(),
6143
- supportsMultiImage: z86.boolean(),
6199
+ var PluginAIInspirationModel = z87.object({
6200
+ id: z87.string(),
6201
+ label: z87.string(),
6202
+ supportsMultiImage: z87.boolean(),
6144
6203
  output: PluginAIInspirationModelOutput,
6145
- isDefault: z86.boolean().optional()
6204
+ isDefault: z87.boolean().optional()
6146
6205
  });
6147
- var PluginAIInspirationModelCapability = z86.object({
6148
- id: z86.string(),
6206
+ var PluginAIInspirationModelCapability = z87.object({
6207
+ id: z87.string(),
6149
6208
  output: PluginAIInspirationModelOutput,
6150
6209
  provider: PluginAIInspirationRuntimeProvider,
6151
- supportsRegionEdit: z86.boolean(),
6152
- supportsReferenceImages: z86.boolean(),
6153
- supportsStylePresets: z86.boolean(),
6154
- supportsSiteContext: z86.boolean(),
6155
- supportsSketchGuidance: z86.boolean(),
6156
- supportsKeyframes: z86.boolean(),
6157
- maxExtraImages: z86.number().int().nonnegative(),
6210
+ supportsRegionEdit: z87.boolean(),
6211
+ supportsReferenceImages: z87.boolean(),
6212
+ supportsStylePresets: z87.boolean(),
6213
+ supportsSiteContext: z87.boolean(),
6214
+ supportsSketchGuidance: z87.boolean(),
6215
+ supportsKeyframes: z87.boolean(),
6216
+ maxExtraImages: z87.number().int().nonnegative(),
6158
6217
  promptStrategy: PluginAIInspirationPromptStrategy
6159
6218
  });
6160
- var PluginAIInspirationListModelsResult = z86.object({
6161
- defaultModelId: z86.string(),
6162
- models: z86.array(PluginAIInspirationModel)
6219
+ var PluginAIInspirationListModelsResult = z87.object({
6220
+ defaultModelId: z87.string(),
6221
+ models: z87.array(PluginAIInspirationModel)
6163
6222
  });
6164
- var PluginAIInspirationGetModelCapabilitiesArgs = z86.object({
6165
- modelId: z86.string().min(1)
6223
+ var PluginAIInspirationGetModelCapabilitiesArgs = z87.object({
6224
+ modelId: z87.string().min(1)
6166
6225
  });
6167
- var PluginAIInspirationGetModelCapabilitiesResult = z86.object({
6226
+ var PluginAIInspirationGetModelCapabilitiesResult = z87.object({
6168
6227
  capability: PluginAIInspirationModelCapability
6169
6228
  });
6170
- var PluginAIInspirationShapeRef = z86.object({
6171
- shapeId: z86.string(),
6172
- assetId: z86.string().optional(),
6229
+ var PluginAIInspirationShapeRef = z87.object({
6230
+ shapeId: z87.string(),
6231
+ assetId: z87.string().optional(),
6173
6232
  kind: PluginAIInspirationShapeKind,
6174
- name: z86.string().optional(),
6175
- width: z86.number().finite().optional(),
6176
- height: z86.number().finite().optional(),
6233
+ name: z87.string().optional(),
6234
+ width: z87.number().finite().optional(),
6235
+ height: z87.number().finite().optional(),
6177
6236
  outputType: PluginAIInspirationOutputKind.optional(),
6178
- sourceUrl: z86.string().optional()
6179
- });
6180
- var PluginAIInspirationListSourcesArgs = z86.object({
6181
- includeGenerated: z86.boolean().optional(),
6182
- includeSourceUrl: z86.boolean().optional()
6183
- });
6184
- var PluginAIInspirationListSourcesResult = z86.object({
6185
- sources: z86.array(PluginAIInspirationShapeRef)
6186
- });
6187
- var PluginAIInspirationGetSelectionResult = z86.object({
6188
- selectedShapeIds: z86.array(z86.string()),
6189
- sources: z86.array(PluginAIInspirationShapeRef)
6190
- });
6191
- var PluginAIInspirationPresetReferenceImage = z86.object({
6192
- url: z86.string(),
6193
- label: z86.string().optional(),
6194
- weight: z86.number().finite().optional()
6195
- });
6196
- var PluginAIInspirationPreset = z86.object({
6197
- id: z86.string(),
6198
- name: z86.string(),
6199
- source: z86.enum(["curated", "user"]),
6200
- modelId: z86.string(),
6201
- categoryId: z86.string().optional(),
6202
- categoryLabel: z86.string().optional(),
6203
- description: z86.string().optional(),
6204
- previewImageUrl: z86.string().optional(),
6205
- prompt: z86.string().optional(),
6206
- stylePrompt: z86.string().optional(),
6207
- tags: z86.array(z86.string()).optional(),
6208
- referenceImages: z86.array(PluginAIInspirationPresetReferenceImage).optional(),
6237
+ sourceUrl: z87.string().optional()
6238
+ });
6239
+ var PluginAIInspirationListSourcesArgs = z87.object({
6240
+ includeGenerated: z87.boolean().optional(),
6241
+ includeSourceUrl: z87.boolean().optional()
6242
+ });
6243
+ var PluginAIInspirationListSourcesResult = z87.object({
6244
+ sources: z87.array(PluginAIInspirationShapeRef)
6245
+ });
6246
+ var PluginAIInspirationGetSelectionResult = z87.object({
6247
+ selectedShapeIds: z87.array(z87.string()),
6248
+ sources: z87.array(PluginAIInspirationShapeRef)
6249
+ });
6250
+ var PluginAIInspirationPresetReferenceImage = z87.object({
6251
+ url: z87.string(),
6252
+ label: z87.string().optional(),
6253
+ weight: z87.number().finite().optional()
6254
+ });
6255
+ var PluginAIInspirationPreset = z87.object({
6256
+ id: z87.string(),
6257
+ name: z87.string(),
6258
+ source: z87.enum(["curated", "user"]),
6259
+ modelId: z87.string(),
6260
+ categoryId: z87.string().optional(),
6261
+ categoryLabel: z87.string().optional(),
6262
+ description: z87.string().optional(),
6263
+ previewImageUrl: z87.string().optional(),
6264
+ prompt: z87.string().optional(),
6265
+ stylePrompt: z87.string().optional(),
6266
+ tags: z87.array(z87.string()).optional(),
6267
+ referenceImages: z87.array(PluginAIInspirationPresetReferenceImage).optional(),
6209
6268
  siteDefaults: PluginAIInspirationAppliedPreset.shape.siteDefaults.optional()
6210
6269
  });
6211
- var PluginAIInspirationPresetCategory = z86.object({
6212
- id: z86.string(),
6213
- label: z86.string(),
6214
- description: z86.string().optional()
6270
+ var PluginAIInspirationPresetCategory = z87.object({
6271
+ id: z87.string(),
6272
+ label: z87.string(),
6273
+ description: z87.string().optional()
6215
6274
  });
6216
- var PluginAIInspirationGetPresetCatalogResult = z86.object({
6217
- categories: z86.array(PluginAIInspirationPresetCategory),
6218
- presets: z86.array(PluginAIInspirationPreset)
6275
+ var PluginAIInspirationGetPresetCatalogResult = z87.object({
6276
+ categories: z87.array(PluginAIInspirationPresetCategory),
6277
+ presets: z87.array(PluginAIInspirationPreset)
6219
6278
  });
6220
- var PluginAIInspirationOutput = z86.object({
6221
- outputType: z86.enum(["image", "video"]),
6222
- shapeId: z86.string(),
6223
- assetId: z86.string(),
6224
- outputUrl: z86.string().optional(),
6279
+ var PluginAIInspirationOutput = z87.object({
6280
+ outputType: z87.enum(["image", "video"]),
6281
+ shapeId: z87.string(),
6282
+ assetId: z87.string(),
6283
+ outputUrl: z87.string().optional(),
6225
6284
  position: PluginAIInspirationPoint.optional()
6226
6285
  });
6227
- var PluginAIInspirationDebugSummary = z86.record(z86.string(), JsonValue);
6228
- var PluginAIInspirationRunMetadata = z86.object({
6229
- geometryFidelity: z86.string().optional(),
6286
+ var PluginAIInspirationDebugSummary = z87.record(z87.string(), JsonValue);
6287
+ var PluginAIInspirationRunMetadata = z87.object({
6288
+ geometryFidelity: z87.string().optional(),
6230
6289
  debugSummary: PluginAIInspirationDebugSummary.optional(),
6231
- streetViewComposite: z86.object({
6232
- used: z86.boolean(),
6233
- renderMode: z86.enum(["prompt_refs_default", "masked_composite_pilot"]),
6234
- backgroundLabel: z86.string().optional()
6290
+ streetViewComposite: z87.object({
6291
+ used: z87.boolean(),
6292
+ renderMode: z87.enum(["prompt_refs_default", "masked_composite_pilot"]),
6293
+ backgroundLabel: z87.string().optional()
6235
6294
  }).optional()
6236
6295
  });
6237
- var PluginAIInspirationGenerateArgs = z86.object({
6238
- sourceShapeId: z86.string().min(1),
6239
- prompt: z86.string().min(1).max(8e3),
6240
- modelId: z86.string().optional(),
6241
- referenceShapeIds: z86.array(z86.string()).max(12).optional(),
6242
- referenceStrength: z86.enum(["low", "medium", "high"]).optional(),
6296
+ var PluginAIInspirationGenerateArgs = z87.object({
6297
+ sourceShapeId: z87.string().min(1),
6298
+ prompt: z87.string().min(1).max(8e3),
6299
+ modelId: z87.string().optional(),
6300
+ referenceShapeIds: z87.array(z87.string()).max(12).optional(),
6301
+ referenceStrength: z87.enum(["low", "medium", "high"]).optional(),
6243
6302
  appliedPreset: PluginAIInspirationAppliedPreset.optional(),
6244
6303
  site: PluginAIInspirationSiteOptions.optional(),
6245
6304
  regionHint: PluginAIInspirationRegionHint.optional(),
@@ -6247,129 +6306,129 @@ var PluginAIInspirationGenerateArgs = z86.object({
6247
6306
  video: PluginAIInspirationVideoOptions.optional(),
6248
6307
  runMode: PluginAIInspirationRunMode.optional()
6249
6308
  });
6250
- var PluginAIInspirationRunResult = z86.object({
6251
- jobId: z86.string().optional(),
6309
+ var PluginAIInspirationRunResult = z87.object({
6310
+ jobId: z87.string().optional(),
6252
6311
  output: PluginAIInspirationOutput.optional(),
6253
- outputs: z86.array(PluginAIInspirationOutput).optional(),
6312
+ outputs: z87.array(PluginAIInspirationOutput).optional(),
6254
6313
  metadata: PluginAIInspirationRunMetadata.optional()
6255
6314
  });
6256
- var PluginAIInspirationRefineArgs = z86.object({
6257
- sourceShapeId: z86.string().min(1),
6258
- upscaleFactor: z86.union([z86.literal(1.5), z86.literal(2), z86.literal(4)]).optional(),
6315
+ var PluginAIInspirationRefineArgs = z87.object({
6316
+ sourceShapeId: z87.string().min(1),
6317
+ upscaleFactor: z87.union([z87.literal(1.5), z87.literal(2), z87.literal(4)]).optional(),
6259
6318
  runMode: PluginAIInspirationRunMode.optional()
6260
6319
  });
6261
- var PluginAIInspirationJobProgress = z86.object({
6262
- currentStep: z86.number().int().nonnegative().optional(),
6263
- totalSteps: z86.number().int().nonnegative().optional(),
6264
- message: z86.string().optional()
6320
+ var PluginAIInspirationJobProgress = z87.object({
6321
+ currentStep: z87.number().int().nonnegative().optional(),
6322
+ totalSteps: z87.number().int().nonnegative().optional(),
6323
+ message: z87.string().optional()
6265
6324
  });
6266
- var PluginAIInspirationJob = z86.object({
6267
- jobId: z86.string(),
6325
+ var PluginAIInspirationJob = z87.object({
6326
+ jobId: z87.string(),
6268
6327
  status: PluginAIInspirationJobStatus,
6269
- createdAt: z86.number(),
6270
- updatedAt: z86.number(),
6271
- completedAt: z86.number().optional(),
6272
- method: z86.string(),
6328
+ createdAt: z87.number(),
6329
+ updatedAt: z87.number(),
6330
+ completedAt: z87.number().optional(),
6331
+ method: z87.string(),
6273
6332
  progress: PluginAIInspirationJobProgress.optional(),
6274
6333
  result: PluginAIInspirationRunResult.optional(),
6275
- error: z86.string().optional()
6334
+ error: z87.string().optional()
6276
6335
  });
6277
- var PluginAIInspirationJobArgs = z86.object({
6278
- jobId: z86.string().min(1)
6336
+ var PluginAIInspirationJobArgs = z87.object({
6337
+ jobId: z87.string().min(1)
6279
6338
  });
6280
- var PluginAIInspirationGetJobResult = z86.object({
6339
+ var PluginAIInspirationGetJobResult = z87.object({
6281
6340
  job: PluginAIInspirationJob
6282
6341
  });
6283
- var PluginAIInspirationCancelJobResult = z86.object({
6342
+ var PluginAIInspirationCancelJobResult = z87.object({
6284
6343
  job: PluginAIInspirationJob
6285
6344
  });
6286
- var PluginAIInspirationListJobsResult = z86.object({
6287
- jobs: z86.array(PluginAIInspirationJob)
6345
+ var PluginAIInspirationListJobsResult = z87.object({
6346
+ jobs: z87.array(PluginAIInspirationJob)
6288
6347
  });
6289
- var PluginAIInspirationWorkflowVideoConfig = z86.object({
6290
- mode: z86.string().optional(),
6291
- motion: z86.string().optional(),
6292
- duration: z86.string().optional(),
6293
- endFrameShapeId: z86.string().optional()
6348
+ var PluginAIInspirationWorkflowVideoConfig = z87.object({
6349
+ mode: z87.string().optional(),
6350
+ motion: z87.string().optional(),
6351
+ duration: z87.string().optional(),
6352
+ endFrameShapeId: z87.string().optional()
6294
6353
  });
6295
- var PluginAIInspirationGenerationInputSnapshot = z86.object({
6296
- version: z86.literal(1),
6297
- meta: z86.record(z86.string(), JsonValue),
6354
+ var PluginAIInspirationGenerationInputSnapshot = z87.object({
6355
+ version: z87.literal(1),
6356
+ meta: z87.record(z87.string(), JsonValue),
6298
6357
  regionHint: PluginAIInspirationRegionHint.optional(),
6299
- sketchGuidance: z86.record(z86.string(), JsonValue).optional(),
6300
- sourceCameraHeading: z86.number().finite().optional()
6301
- });
6302
- var PluginAIInspirationWorkflowOperation = z86.object({
6303
- type: z86.enum(["generate-image", "refine", "generate-video"]),
6304
- label: z86.string(),
6305
- prompt: z86.string().optional(),
6306
- modelId: z86.string().optional(),
6307
- presetId: z86.string().optional(),
6308
- presetName: z86.string().optional(),
6309
- refineFactor: z86.number().finite().optional(),
6310
- sourceRole: z86.enum(["primary", "end-frame"]).optional(),
6358
+ sketchGuidance: z87.record(z87.string(), JsonValue).optional(),
6359
+ sourceCameraHeading: z87.number().finite().optional()
6360
+ });
6361
+ var PluginAIInspirationWorkflowOperation = z87.object({
6362
+ type: z87.enum(["generate-image", "refine", "generate-video"]),
6363
+ label: z87.string(),
6364
+ prompt: z87.string().optional(),
6365
+ modelId: z87.string().optional(),
6366
+ presetId: z87.string().optional(),
6367
+ presetName: z87.string().optional(),
6368
+ refineFactor: z87.number().finite().optional(),
6369
+ sourceRole: z87.enum(["primary", "end-frame"]).optional(),
6311
6370
  video: PluginAIInspirationWorkflowVideoConfig.optional(),
6312
6371
  generationInput: PluginAIInspirationGenerationInputSnapshot.optional()
6313
6372
  });
6314
- var PluginAIInspirationWorkflowNode = z86.object({
6315
- id: z86.string(),
6316
- shapeId: z86.string(),
6317
- assetId: z86.string().optional(),
6373
+ var PluginAIInspirationWorkflowNode = z87.object({
6374
+ id: z87.string(),
6375
+ shapeId: z87.string(),
6376
+ assetId: z87.string().optional(),
6318
6377
  kind: PluginAIInspirationOutputKind,
6319
- state: z86.string(),
6378
+ state: z87.string(),
6320
6379
  runState: PluginAIInspirationWorkflowRunState.optional(),
6321
- staleReason: z86.string().optional(),
6322
- incomingEdgeIds: z86.array(z86.string()),
6323
- outgoingEdgeIds: z86.array(z86.string()),
6324
- createdAt: z86.number(),
6325
- updatedAt: z86.number()
6326
- });
6327
- var PluginAIInspirationWorkflowEdge = z86.object({
6328
- id: z86.string(),
6329
- sourceNodeId: z86.string(),
6330
- targetNodeId: z86.string(),
6331
- arrowShapeId: z86.string().optional(),
6380
+ staleReason: z87.string().optional(),
6381
+ incomingEdgeIds: z87.array(z87.string()),
6382
+ outgoingEdgeIds: z87.array(z87.string()),
6383
+ createdAt: z87.number(),
6384
+ updatedAt: z87.number()
6385
+ });
6386
+ var PluginAIInspirationWorkflowEdge = z87.object({
6387
+ id: z87.string(),
6388
+ sourceNodeId: z87.string(),
6389
+ targetNodeId: z87.string(),
6390
+ arrowShapeId: z87.string().optional(),
6332
6391
  operation: PluginAIInspirationWorkflowOperation,
6333
- state: z86.string(),
6392
+ state: z87.string(),
6334
6393
  runState: PluginAIInspirationWorkflowRunState.optional(),
6335
- staleReason: z86.string().optional(),
6336
- supersededByEdgeId: z86.string().optional(),
6337
- createdAt: z86.number(),
6338
- updatedAt: z86.number()
6339
- });
6340
- var PluginAIInspirationWorkflow = z86.object({
6341
- id: z86.string(),
6342
- rootNodeIds: z86.array(z86.string()),
6343
- nodeIds: z86.array(z86.string()),
6344
- edgeIds: z86.array(z86.string()),
6345
- nodes: z86.record(z86.string(), PluginAIInspirationWorkflowNode),
6346
- edges: z86.record(z86.string(), PluginAIInspirationWorkflowEdge),
6347
- createdAt: z86.number(),
6348
- updatedAt: z86.number()
6349
- });
6350
- var PluginAIInspirationGetWorkflowForShapeArgs = z86.object({
6351
- shapeId: z86.string().min(1)
6352
- });
6353
- var PluginAIInspirationGetWorkflowForShapeResult = z86.object({
6394
+ staleReason: z87.string().optional(),
6395
+ supersededByEdgeId: z87.string().optional(),
6396
+ createdAt: z87.number(),
6397
+ updatedAt: z87.number()
6398
+ });
6399
+ var PluginAIInspirationWorkflow = z87.object({
6400
+ id: z87.string(),
6401
+ rootNodeIds: z87.array(z87.string()),
6402
+ nodeIds: z87.array(z87.string()),
6403
+ edgeIds: z87.array(z87.string()),
6404
+ nodes: z87.record(z87.string(), PluginAIInspirationWorkflowNode),
6405
+ edges: z87.record(z87.string(), PluginAIInspirationWorkflowEdge),
6406
+ createdAt: z87.number(),
6407
+ updatedAt: z87.number()
6408
+ });
6409
+ var PluginAIInspirationGetWorkflowForShapeArgs = z87.object({
6410
+ shapeId: z87.string().min(1)
6411
+ });
6412
+ var PluginAIInspirationGetWorkflowForShapeResult = z87.object({
6354
6413
  workflow: PluginAIInspirationWorkflow.nullable(),
6355
6414
  node: PluginAIInspirationWorkflowNode.nullable()
6356
6415
  });
6357
- var PluginAIInspirationRerunPlanResult = z86.discriminatedUnion(
6416
+ var PluginAIInspirationRerunPlanResult = z87.discriminatedUnion(
6358
6417
  "status",
6359
6418
  [
6360
- z86.object({
6361
- status: z86.literal("ready"),
6362
- workflowId: z86.string(),
6419
+ z87.object({
6420
+ status: z87.literal("ready"),
6421
+ workflowId: z87.string(),
6363
6422
  sourceNode: PluginAIInspirationWorkflowNode,
6364
- edgeIds: z86.array(z86.string()),
6365
- edges: z86.array(PluginAIInspirationWorkflowEdge),
6366
- recipe: z86.lazy(() => PluginAIInspirationRecipe),
6367
- needsEndFrame: z86.boolean(),
6368
- defaultEndFrameShapeId: z86.string().nullable()
6423
+ edgeIds: z87.array(z87.string()),
6424
+ edges: z87.array(PluginAIInspirationWorkflowEdge),
6425
+ recipe: z87.lazy(() => PluginAIInspirationRecipe),
6426
+ needsEndFrame: z87.boolean(),
6427
+ defaultEndFrameShapeId: z87.string().nullable()
6369
6428
  }),
6370
- z86.object({
6371
- status: z86.literal("unavailable"),
6372
- reason: z86.enum([
6429
+ z87.object({
6430
+ status: z87.literal("unavailable"),
6431
+ reason: z87.enum([
6373
6432
  "not-in-workflow",
6374
6433
  "source-only",
6375
6434
  "running",
@@ -6378,47 +6437,47 @@ var PluginAIInspirationRerunPlanResult = z86.discriminatedUnion(
6378
6437
  })
6379
6438
  ]
6380
6439
  );
6381
- var PluginAIInspirationRerunSelectedBranchArgs = z86.object({
6382
- shapeId: z86.string().min(1),
6383
- endFrameShapeId: z86.string().optional(),
6440
+ var PluginAIInspirationRerunSelectedBranchArgs = z87.object({
6441
+ shapeId: z87.string().min(1),
6442
+ endFrameShapeId: z87.string().optional(),
6384
6443
  runMode: PluginAIInspirationRunMode.optional()
6385
6444
  });
6386
- var PluginAIInspirationRecipeSlot = z86.object({
6387
- id: z86.string(),
6388
- type: z86.enum(["source-image", "end-frame"]),
6389
- label: z86.string(),
6390
- required: z86.boolean()
6445
+ var PluginAIInspirationRecipeSlot = z87.object({
6446
+ id: z87.string(),
6447
+ type: z87.enum(["source-image", "end-frame"]),
6448
+ label: z87.string(),
6449
+ required: z87.boolean()
6391
6450
  });
6392
- var PluginAIInspirationRecipeStep = z86.object({
6393
- id: z86.string(),
6451
+ var PluginAIInspirationRecipeStep = z87.object({
6452
+ id: z87.string(),
6394
6453
  operation: PluginAIInspirationWorkflowOperation,
6395
- outputKind: z86.enum(["image", "video"])
6454
+ outputKind: z87.enum(["image", "video"])
6396
6455
  });
6397
- var PluginAIInspirationRecipeDraft = z86.object({
6398
- name: z86.string(),
6399
- summary: z86.string(),
6400
- slots: z86.array(PluginAIInspirationRecipeSlot),
6401
- steps: z86.array(PluginAIInspirationRecipeStep).min(1).max(20),
6402
- outputKind: z86.enum(["image", "video"]),
6403
- thumbnailUrl: z86.string().optional()
6456
+ var PluginAIInspirationRecipeDraft = z87.object({
6457
+ name: z87.string(),
6458
+ summary: z87.string(),
6459
+ slots: z87.array(PluginAIInspirationRecipeSlot),
6460
+ steps: z87.array(PluginAIInspirationRecipeStep).min(1).max(20),
6461
+ outputKind: z87.enum(["image", "video"]),
6462
+ thumbnailUrl: z87.string().optional()
6404
6463
  });
6405
6464
  var PluginAIInspirationRecipe = PluginAIInspirationRecipeDraft.extend({
6406
- version: z86.literal(1),
6407
- id: z86.string(),
6408
- fingerprint: z86.string().optional(),
6409
- createdAt: z86.number(),
6410
- updatedAt: z86.number()
6465
+ version: z87.literal(1),
6466
+ id: z87.string(),
6467
+ fingerprint: z87.string().optional(),
6468
+ createdAt: z87.number(),
6469
+ updatedAt: z87.number()
6411
6470
  });
6412
- var PluginAIInspirationExtractionResult = z86.discriminatedUnion(
6471
+ var PluginAIInspirationExtractionResult = z87.discriminatedUnion(
6413
6472
  "status",
6414
6473
  [
6415
- z86.object({
6416
- status: z86.literal("ready"),
6474
+ z87.object({
6475
+ status: z87.literal("ready"),
6417
6476
  draft: PluginAIInspirationRecipeDraft
6418
6477
  }),
6419
- z86.object({
6420
- status: z86.literal("unavailable"),
6421
- reason: z86.enum([
6478
+ z87.object({
6479
+ status: z87.literal("unavailable"),
6480
+ reason: z87.enum([
6422
6481
  "not-in-workflow",
6423
6482
  "source-only",
6424
6483
  "missing-workflow",
@@ -6429,38 +6488,38 @@ var PluginAIInspirationExtractionResult = z86.discriminatedUnion(
6429
6488
  })
6430
6489
  ]
6431
6490
  );
6432
- var PluginAIInspirationListRecipesResult = z86.object({
6433
- recipes: z86.array(PluginAIInspirationRecipe)
6491
+ var PluginAIInspirationListRecipesResult = z87.object({
6492
+ recipes: z87.array(PluginAIInspirationRecipe)
6434
6493
  });
6435
- var PluginAIInspirationSaveRecipeArgs = z86.object({
6494
+ var PluginAIInspirationSaveRecipeArgs = z87.object({
6436
6495
  draft: PluginAIInspirationRecipeDraft,
6437
- name: z86.string().min(1)
6496
+ name: z87.string().min(1)
6438
6497
  });
6439
- var PluginAIInspirationSaveRecipeResult = z86.discriminatedUnion(
6498
+ var PluginAIInspirationSaveRecipeResult = z87.discriminatedUnion(
6440
6499
  "status",
6441
6500
  [
6442
- z86.object({ status: z86.literal("saved"), recipe: PluginAIInspirationRecipe }),
6443
- z86.object({
6444
- status: z86.literal("duplicate"),
6501
+ z87.object({ status: z87.literal("saved"), recipe: PluginAIInspirationRecipe }),
6502
+ z87.object({
6503
+ status: z87.literal("duplicate"),
6445
6504
  recipe: PluginAIInspirationRecipe
6446
6505
  }),
6447
- z86.object({ status: z86.literal("invalid-name"), recipe: z86.null() }),
6448
- z86.object({ status: z86.literal("failed"), recipe: z86.null() })
6506
+ z87.object({ status: z87.literal("invalid-name"), recipe: z87.null() }),
6507
+ z87.object({ status: z87.literal("failed"), recipe: z87.null() })
6449
6508
  ]
6450
6509
  );
6451
- var PluginAIInspirationDeleteRecipeArgs = z86.object({
6452
- recipeId: z86.string().min(1)
6510
+ var PluginAIInspirationDeleteRecipeArgs = z87.object({
6511
+ recipeId: z87.string().min(1)
6453
6512
  });
6454
- var PluginAIInspirationDeleteRecipeResult = z86.object({
6455
- deleted: z86.boolean()
6513
+ var PluginAIInspirationDeleteRecipeResult = z87.object({
6514
+ deleted: z87.boolean()
6456
6515
  });
6457
- var PluginAIInspirationExtractRecipeFromShapeArgs = z86.object({
6458
- shapeId: z86.string().min(1)
6516
+ var PluginAIInspirationExtractRecipeFromShapeArgs = z87.object({
6517
+ shapeId: z87.string().min(1)
6459
6518
  });
6460
- var PluginAIInspirationRunRecipeArgs = z86.object({
6461
- recipeId: z86.string().optional(),
6519
+ var PluginAIInspirationRunRecipeArgs = z87.object({
6520
+ recipeId: z87.string().optional(),
6462
6521
  recipe: PluginAIInspirationRecipe.optional(),
6463
- slotShapeIds: z86.record(z86.string(), z86.string()),
6522
+ slotShapeIds: z87.record(z87.string(), z87.string()),
6464
6523
  runMode: PluginAIInspirationRunMode.optional()
6465
6524
  });
6466
6525
  var PluginPresentationAIInspirationApi = class {
@@ -6469,26 +6528,26 @@ var PluginPresentationAIInspirationApi = class {
6469
6528
  };
6470
6529
 
6471
6530
  // src/api/presentation/export.ts
6472
- var z87 = __toESM(require("zod"), 1);
6473
- var PluginPresentationExportFormat = z87.enum(["pdf", "png", "jpg"]);
6474
- var PluginPresentationExportResolution = z87.object({
6475
- width: z87.number().positive(),
6476
- height: z87.number().positive()
6531
+ var z88 = __toESM(require("zod"), 1);
6532
+ var PluginPresentationExportFormat = z88.enum(["pdf", "png", "jpg"]);
6533
+ var PluginPresentationExportResolution = z88.object({
6534
+ width: z88.number().positive(),
6535
+ height: z88.number().positive()
6477
6536
  });
6478
- var PluginPresentationExportArgs = z87.object({
6537
+ var PluginPresentationExportArgs = z88.object({
6479
6538
  format: PluginPresentationExportFormat,
6480
- sheetIds: z87.array(z87.string()).optional(),
6481
- combine: z87.boolean().optional(),
6539
+ sheetIds: z88.array(z88.string()).optional(),
6540
+ combine: z88.boolean().optional(),
6482
6541
  resolution: PluginPresentationExportResolution.optional(),
6483
- fileName: z87.string().optional()
6542
+ fileName: z88.string().optional()
6484
6543
  });
6485
- var PluginPresentationExportFile = z87.object({
6486
- fileName: z87.string(),
6487
- mimeType: z87.string(),
6488
- dataBase64: z87.string()
6544
+ var PluginPresentationExportFile = z88.object({
6545
+ fileName: z88.string(),
6546
+ mimeType: z88.string(),
6547
+ dataBase64: z88.string()
6489
6548
  });
6490
- var PluginPresentationExportResult = z87.object({
6491
- files: z87.array(PluginPresentationExportFile)
6549
+ var PluginPresentationExportResult = z88.object({
6550
+ files: z88.array(PluginPresentationExportFile)
6492
6551
  });
6493
6552
 
6494
6553
  // src/api/presentation/index.ts
@@ -6504,38 +6563,38 @@ var PluginAnalysisSunpathApi = class {
6504
6563
  };
6505
6564
 
6506
6565
  // src/api/analysis/shadows.ts
6507
- var z88 = __toESM(require("zod"), 1);
6566
+ var z89 = __toESM(require("zod"), 1);
6508
6567
  var PluginAnalysisShadowsApi = class {
6509
6568
  constructor() {
6510
6569
  }
6511
6570
  };
6512
- var PluginAnalysisShadowsEnableOptions = z88.object({
6513
- dateTime: z88.string().optional()
6571
+ var PluginAnalysisShadowsEnableOptions = z89.object({
6572
+ dateTime: z89.string().optional()
6514
6573
  });
6515
- var PluginAnalysisShadowsSetDateTimeArgs = z88.object({
6516
- dateTime: z88.string()
6574
+ var PluginAnalysisShadowsSetDateTimeArgs = z89.object({
6575
+ dateTime: z89.string()
6517
6576
  });
6518
- var PluginAnalysisShadowsDateTimeResult = z88.string();
6577
+ var PluginAnalysisShadowsDateTimeResult = z89.string();
6519
6578
 
6520
6579
  // src/api/analysis/sunlightHours.ts
6521
- var z89 = __toESM(require("zod"), 1);
6580
+ var z90 = __toESM(require("zod"), 1);
6522
6581
  var PluginAnalysisSunlightHoursApi = class {
6523
6582
  constructor() {
6524
6583
  }
6525
6584
  };
6526
- var PluginAnalysisComputeResult = z89.object({
6527
- success: z89.boolean(),
6528
- error: z89.string().optional()
6585
+ var PluginAnalysisComputeResult = z90.object({
6586
+ success: z90.boolean(),
6587
+ error: z90.string().optional()
6529
6588
  });
6530
- var PluginAnalysisJobStatus = z89.enum([
6589
+ var PluginAnalysisJobStatus = z90.enum([
6531
6590
  "running",
6532
6591
  "active",
6533
6592
  "inactive"
6534
6593
  ]);
6535
- var PluginAnalysisJobState = z89.object({
6594
+ var PluginAnalysisJobState = z90.object({
6536
6595
  status: PluginAnalysisJobStatus,
6537
- startDate: z89.string(),
6538
- endDate: z89.string()
6596
+ startDate: z90.string(),
6597
+ endDate: z90.string()
6539
6598
  });
6540
6599
  var PluginAnalysisJobStateResult = PluginAnalysisJobState.nullable();
6541
6600
 
@@ -6546,7 +6605,7 @@ var PluginAnalysisIlluminanceApi = class {
6546
6605
  };
6547
6606
 
6548
6607
  // src/api/analysis/heatmaps.ts
6549
- var z90 = __toESM(require("zod"), 1);
6608
+ var z91 = __toESM(require("zod"), 1);
6550
6609
  var PluginAnalysisHeatmapsApi = class {
6551
6610
  constructor() {
6552
6611
  }
@@ -6555,149 +6614,149 @@ var PluginAnalysisHeatmapOverlaysApi = class {
6555
6614
  constructor() {
6556
6615
  }
6557
6616
  };
6558
- var PluginAnalysisHeatmapSpaceEntry = z90.object({
6617
+ var PluginAnalysisHeatmapSpaceEntry = z91.object({
6559
6618
  space: ComponentHandle,
6560
- value: z90.number().finite()
6619
+ value: z91.number().finite()
6561
6620
  });
6562
- var PluginAnalysisHeatmapGridCell = z90.object({
6621
+ var PluginAnalysisHeatmapGridCell = z91.object({
6563
6622
  position: Vec3Components,
6564
- value: z90.number().finite(),
6565
- meta: z90.unknown().optional()
6566
- });
6567
- var HexColor = z90.string().regex(/^#?[0-9a-fA-F]{6}$/, 'expected a 6-digit hex colour like "#0000ff"');
6568
- var PluginAnalysisHeatmapFieldCell = z90.union([
6569
- z90.object({
6570
- polygon: z90.array(Vec3Components).min(3),
6571
- value: z90.number().finite(),
6572
- meta: z90.unknown().optional()
6623
+ value: z91.number().finite(),
6624
+ meta: z91.unknown().optional()
6625
+ });
6626
+ var HexColor = z91.string().regex(/^#?[0-9a-fA-F]{6}$/, 'expected a 6-digit hex colour like "#0000ff"');
6627
+ var PluginAnalysisHeatmapFieldCell = z91.union([
6628
+ z91.object({
6629
+ polygon: z91.array(Vec3Components).min(3),
6630
+ value: z91.number().finite(),
6631
+ meta: z91.unknown().optional()
6573
6632
  }),
6574
- z90.object({
6575
- vertices: z90.array(Vec3Components).min(3),
6576
- indices: z90.array(z90.number().int().nonnegative()).min(3),
6577
- value: z90.number().finite(),
6578
- meta: z90.unknown().optional()
6633
+ z91.object({
6634
+ vertices: z91.array(Vec3Components).min(3),
6635
+ indices: z91.array(z91.number().int().nonnegative()).min(3),
6636
+ value: z91.number().finite(),
6637
+ meta: z91.unknown().optional()
6579
6638
  })
6580
6639
  ]);
6581
- var PluginAnalysisHeatmapScale = z90.discriminatedUnion("type", [
6582
- z90.object({
6583
- type: z90.literal("bands"),
6584
- count: z90.number().int().min(2).max(64).optional()
6640
+ var PluginAnalysisHeatmapScale = z91.discriminatedUnion("type", [
6641
+ z91.object({
6642
+ type: z91.literal("bands"),
6643
+ count: z91.number().int().min(2).max(64).optional()
6585
6644
  }),
6586
- z90.object({
6587
- type: z90.literal("threshold"),
6588
- threshold: z90.number().finite(),
6645
+ z91.object({
6646
+ type: z91.literal("threshold"),
6647
+ threshold: z91.number().finite(),
6589
6648
  passColor: HexColor.optional(),
6590
6649
  failColor: HexColor.optional(),
6591
- passLabel: z90.string().optional(),
6592
- failLabel: z90.string().optional()
6650
+ passLabel: z91.string().optional(),
6651
+ failLabel: z91.string().optional()
6593
6652
  }),
6594
- z90.object({
6595
- type: z90.literal("categorical"),
6596
- classes: z90.array(
6597
- z90.object({
6598
- value: z90.number().finite(),
6599
- label: z90.string(),
6653
+ z91.object({
6654
+ type: z91.literal("categorical"),
6655
+ classes: z91.array(
6656
+ z91.object({
6657
+ value: z91.number().finite(),
6658
+ label: z91.string(),
6600
6659
  color: HexColor
6601
6660
  })
6602
6661
  ).min(1)
6603
6662
  })
6604
6663
  ]);
6605
- var PluginAnalysisHeatmapOptions = z90.object({
6606
- name: z90.string().min(1).max(64).optional(),
6607
- title: z90.string().optional(),
6608
- unit: z90.string().optional(),
6609
- min: z90.number().finite().optional(),
6610
- max: z90.number().finite().optional(),
6611
- colors: z90.array(HexColor).min(1).optional(),
6664
+ var PluginAnalysisHeatmapOptions = z91.object({
6665
+ name: z91.string().min(1).max(64).optional(),
6666
+ title: z91.string().optional(),
6667
+ unit: z91.string().optional(),
6668
+ min: z91.number().finite().optional(),
6669
+ max: z91.number().finite().optional(),
6670
+ colors: z91.array(HexColor).min(1).optional(),
6612
6671
  scale: PluginAnalysisHeatmapScale.optional(),
6613
- hover: z90.boolean().optional()
6672
+ hover: z91.boolean().optional()
6614
6673
  });
6615
- var PluginAnalysisHeatmapsRenderResult = z90.object({
6616
- success: z90.literal(true)
6674
+ var PluginAnalysisHeatmapsRenderResult = z91.object({
6675
+ success: z91.literal(true)
6617
6676
  });
6618
- var PluginAnalysisHeatmapOverlayInfo = z90.object({
6619
- name: z90.string(),
6620
- visible: z90.boolean(),
6621
- kind: z90.enum(["spaces", "grid", "surfaceGrid", "field"])
6677
+ var PluginAnalysisHeatmapOverlayInfo = z91.object({
6678
+ name: z91.string(),
6679
+ visible: z91.boolean(),
6680
+ kind: z91.enum(["spaces", "grid", "surfaceGrid", "field"])
6622
6681
  });
6623
- var PluginAnalysisHeatmapOverlaysListResult = z90.object({
6624
- overlays: z90.array(PluginAnalysisHeatmapOverlayInfo)
6682
+ var PluginAnalysisHeatmapOverlaysListResult = z91.object({
6683
+ overlays: z91.array(PluginAnalysisHeatmapOverlayInfo)
6625
6684
  });
6626
6685
 
6627
6686
  // src/api/analysis/weather.ts
6628
- var z91 = __toESM(require("zod"), 1);
6687
+ var z92 = __toESM(require("zod"), 1);
6629
6688
  var PluginAnalysisWeatherApi = class {
6630
6689
  constructor() {
6631
6690
  }
6632
6691
  };
6633
- var PluginWeatherSelectionMethod = z91.enum([
6692
+ var PluginWeatherSelectionMethod = z92.enum([
6634
6693
  "nearest-station",
6635
6694
  "user-upload",
6636
6695
  "project-override"
6637
6696
  ]);
6638
- var PluginWeatherSourceMeta = z91.object({
6639
- weatherFileId: z91.string(),
6640
- station: z91.string(),
6641
- sourceId: z91.string(),
6642
- distanceKm: z91.number().nullable(),
6697
+ var PluginWeatherSourceMeta = z92.object({
6698
+ weatherFileId: z92.string(),
6699
+ station: z92.string(),
6700
+ sourceId: z92.string(),
6701
+ distanceKm: z92.number().nullable(),
6643
6702
  selectionMethod: PluginWeatherSelectionMethod,
6644
- checksum: z91.string(),
6645
- windReferenceHeightM: z91.number()
6646
- });
6647
- var PluginWeatherRow = z91.object({
6648
- timestamp: z91.string(),
6649
- utcOffsetMinutes: z91.number(),
6650
- dryBulbC: z91.number(),
6651
- relativeHumidityPercent: z91.number(),
6652
- windSpeedMps: z91.number(),
6653
- ghiWm2: z91.number(),
6654
- dniWm2: z91.number(),
6655
- dhiWm2: z91.number(),
6656
- flags: z91.array(z91.string())
6657
- });
6658
- var PluginWeatherGetSeriesArgs = z91.object({
6659
- startDate: z91.string(),
6660
- endDate: z91.string(),
6661
- interval: z91.enum(["hourly"]).optional(),
6662
- cursor: z91.string().optional()
6663
- });
6664
- var PluginWeatherSeriesResult = z91.object({
6703
+ checksum: z92.string(),
6704
+ windReferenceHeightM: z92.number()
6705
+ });
6706
+ var PluginWeatherRow = z92.object({
6707
+ timestamp: z92.string(),
6708
+ utcOffsetMinutes: z92.number(),
6709
+ dryBulbC: z92.number(),
6710
+ relativeHumidityPercent: z92.number(),
6711
+ windSpeedMps: z92.number(),
6712
+ ghiWm2: z92.number(),
6713
+ dniWm2: z92.number(),
6714
+ dhiWm2: z92.number(),
6715
+ flags: z92.array(z92.string())
6716
+ });
6717
+ var PluginWeatherGetSeriesArgs = z92.object({
6718
+ startDate: z92.string(),
6719
+ endDate: z92.string(),
6720
+ interval: z92.enum(["hourly"]).optional(),
6721
+ cursor: z92.string().optional()
6722
+ });
6723
+ var PluginWeatherSeriesResult = z92.object({
6665
6724
  source: PluginWeatherSourceMeta,
6666
- rows: z91.array(PluginWeatherRow),
6667
- nextCursor: z91.string().nullable(),
6668
- warnings: z91.array(z91.string()).optional()
6725
+ rows: z92.array(PluginWeatherRow),
6726
+ nextCursor: z92.string().nullable(),
6727
+ warnings: z92.array(z92.string()).optional()
6669
6728
  });
6670
6729
 
6671
6730
  // src/api/analysis/solar.ts
6672
- var z92 = __toESM(require("zod"), 1);
6731
+ var z93 = __toESM(require("zod"), 1);
6673
6732
  var PluginAnalysisSolarApi = class {
6674
6733
  constructor() {
6675
6734
  }
6676
6735
  };
6677
- var PluginSolarRunStatus = z92.enum([
6736
+ var PluginSolarRunStatus = z93.enum([
6678
6737
  "running",
6679
6738
  "complete",
6680
6739
  "cancelled",
6681
6740
  "failed"
6682
6741
  ]);
6683
- var PluginSolarSampleMode = z92.enum(["instant", "range"]);
6684
- var PluginSolarUnits = z92.enum(["W/m2", "kWh/m2"]);
6685
- var PluginSolarHourlyArtifact = z92.object({
6686
- url: z92.string(),
6687
- format: z92.enum(["parquet", "csv-gz"]),
6688
- expiresAt: z92.string()
6689
- });
6690
- var PluginSolarSamplePoint = z92.object({
6691
- id: z92.string(),
6692
- position: z92.tuple([z92.number(), z92.number(), z92.number()]),
6693
- normal: z92.tuple([z92.number(), z92.number(), z92.number()]).optional()
6694
- });
6695
- var PluginSolarSampleGridArgs = z92.object({
6696
- points: z92.array(PluginSolarSamplePoint),
6697
- dateTime: z92.string().optional(),
6698
- startDate: z92.string().optional(),
6699
- endDate: z92.string().optional(),
6700
- includeHourlyArtifact: z92.boolean().optional()
6742
+ var PluginSolarSampleMode = z93.enum(["instant", "range"]);
6743
+ var PluginSolarUnits = z93.enum(["W/m2", "kWh/m2"]);
6744
+ var PluginSolarHourlyArtifact = z93.object({
6745
+ url: z93.string(),
6746
+ format: z93.enum(["parquet", "csv-gz"]),
6747
+ expiresAt: z93.string()
6748
+ });
6749
+ var PluginSolarSamplePoint = z93.object({
6750
+ id: z93.string(),
6751
+ position: z93.tuple([z93.number(), z93.number(), z93.number()]),
6752
+ normal: z93.tuple([z93.number(), z93.number(), z93.number()]).optional()
6753
+ });
6754
+ var PluginSolarSampleGridArgs = z93.object({
6755
+ points: z93.array(PluginSolarSamplePoint),
6756
+ dateTime: z93.string().optional(),
6757
+ startDate: z93.string().optional(),
6758
+ endDate: z93.string().optional(),
6759
+ includeHourlyArtifact: z93.boolean().optional()
6701
6760
  }).superRefine((a, ctx) => {
6702
6761
  const hasInstant = a.dateTime !== void 0;
6703
6762
  const hasStart = a.startDate !== void 0;
@@ -6705,73 +6764,73 @@ var PluginSolarSampleGridArgs = z92.object({
6705
6764
  const hasRange = hasStart || hasEnd;
6706
6765
  if (hasInstant === hasRange) {
6707
6766
  ctx.addIssue({
6708
- code: z92.ZodIssueCode.custom,
6767
+ code: z93.ZodIssueCode.custom,
6709
6768
  message: "provide exactly one timing mode: dateTime (instant), or startDate+endDate (range)"
6710
6769
  });
6711
6770
  }
6712
6771
  if (hasRange && !(hasStart && hasEnd)) {
6713
6772
  ctx.addIssue({
6714
- code: z92.ZodIssueCode.custom,
6773
+ code: z93.ZodIssueCode.custom,
6715
6774
  message: "range mode requires both startDate and endDate"
6716
6775
  });
6717
6776
  }
6718
6777
  });
6719
- var PluginSolarSampleResult = z92.object({
6720
- id: z92.string(),
6721
- directSunVisible: z92.boolean(),
6722
- shadeFraction: z92.number(),
6723
- directIrradiance: z92.number().optional(),
6724
- diffuseIrradiance: z92.number().optional(),
6725
- totalIrradiance: z92.number().optional()
6778
+ var PluginSolarSampleResult = z93.object({
6779
+ id: z93.string(),
6780
+ directSunVisible: z93.boolean(),
6781
+ shadeFraction: z93.number(),
6782
+ directIrradiance: z93.number().optional(),
6783
+ diffuseIrradiance: z93.number().optional(),
6784
+ totalIrradiance: z93.number().optional()
6726
6785
  });
6727
- var PluginSolarSampleGridResult = z92.object({
6786
+ var PluginSolarSampleGridResult = z93.object({
6728
6787
  status: PluginSolarRunStatus,
6729
6788
  mode: PluginSolarSampleMode,
6730
- coordinateSystem: z92.literal("world-plan-space"),
6731
- modelRevision: z92.string(),
6732
- inputHash: z92.string(),
6789
+ coordinateSystem: z93.literal("world-plan-space"),
6790
+ modelRevision: z93.string(),
6791
+ inputHash: z93.string(),
6733
6792
  units: PluginSolarUnits,
6734
- sunUpHours: z92.number(),
6793
+ sunUpHours: z93.number(),
6735
6794
  weather: PluginWeatherSourceMeta.nullable(),
6736
- weatherQuality: z92.array(z92.string()),
6737
- results: z92.array(PluginSolarSampleResult),
6795
+ weatherQuality: z93.array(z93.string()),
6796
+ results: z93.array(PluginSolarSampleResult),
6738
6797
  hourlyArtifact: PluginSolarHourlyArtifact.nullable(),
6739
- nextCursor: z92.string().nullable()
6798
+ nextCursor: z93.string().nullable()
6740
6799
  });
6741
6800
 
6742
6801
  // src/api/analysis/daylight.ts
6743
- var z93 = __toESM(require("zod"), 1);
6802
+ var z94 = __toESM(require("zod"), 1);
6744
6803
  var PluginAnalysisDaylightApi = class {
6745
6804
  constructor() {
6746
6805
  }
6747
6806
  };
6748
- var PluginDaylightMetric = z93.enum(["ASE", "sDA"]);
6749
- var PluginDaylightRunStatus = z93.enum([
6807
+ var PluginDaylightMetric = z94.enum(["ASE", "sDA"]);
6808
+ var PluginDaylightRunStatus = z94.enum([
6750
6809
  "running",
6751
6810
  "complete",
6752
6811
  "cancelled",
6753
6812
  "failed"
6754
6813
  ]);
6755
- var PluginDaylightGrid = z93.object({
6756
- spacingM: z93.number(),
6757
- workplaneHeightM: z93.number(),
6758
- boundaryOffsetM: z93.number()
6814
+ var PluginDaylightGrid = z94.object({
6815
+ spacingM: z94.number(),
6816
+ workplaneHeightM: z94.number(),
6817
+ boundaryOffsetM: z94.number()
6759
6818
  });
6760
- var PluginDaylightSchedule = z93.object({
6761
- startHour: z93.number(),
6762
- endHour: z93.number()
6819
+ var PluginDaylightSchedule = z94.object({
6820
+ startHour: z94.number(),
6821
+ endHour: z94.number()
6763
6822
  });
6764
- var PluginDaylightOpaqueOptics = z93.object({
6765
- reflectance: z93.number().min(0).max(1)
6823
+ var PluginDaylightOpaqueOptics = z94.object({
6824
+ reflectance: z94.number().min(0).max(1)
6766
6825
  });
6767
- var PluginDaylightGlazingOptics = z93.object({
6768
- transmittance: z93.number().min(0).max(1)
6826
+ var PluginDaylightGlazingOptics = z94.object({
6827
+ transmittance: z94.number().min(0).max(1)
6769
6828
  });
6770
- var PluginDaylightMaterialOptics = z93.union([
6829
+ var PluginDaylightMaterialOptics = z94.union([
6771
6830
  PluginDaylightOpaqueOptics,
6772
6831
  PluginDaylightGlazingOptics
6773
6832
  ]);
6774
- var PluginDaylightCategoryDefaults = z93.object({
6833
+ var PluginDaylightCategoryDefaults = z94.object({
6775
6834
  wall: PluginDaylightOpaqueOptics.optional(),
6776
6835
  ceiling: PluginDaylightOpaqueOptics.optional(),
6777
6836
  floor: PluginDaylightOpaqueOptics.optional(),
@@ -6779,81 +6838,81 @@ var PluginDaylightCategoryDefaults = z93.object({
6779
6838
  glazing: PluginDaylightGlazingOptics.optional(),
6780
6839
  context: PluginDaylightOpaqueOptics.optional()
6781
6840
  });
6782
- var PluginDaylightBlindsOptics = z93.object({
6783
- transmittance: z93.number().min(0).max(1)
6841
+ var PluginDaylightBlindsOptics = z94.object({
6842
+ transmittance: z94.number().min(0).max(1)
6784
6843
  });
6785
- var PluginDaylightOptics = z93.object({
6786
- materials: z93.record(z93.string(), PluginDaylightMaterialOptics).optional(),
6844
+ var PluginDaylightOptics = z94.object({
6845
+ materials: z94.record(z94.string(), PluginDaylightMaterialOptics).optional(),
6787
6846
  categories: PluginDaylightCategoryDefaults.optional(),
6788
6847
  blinds: PluginDaylightBlindsOptics.optional()
6789
6848
  });
6790
- var PluginDaylightComputeArgs = z93.object({
6791
- standard: z93.literal("IES-LM-83-23"),
6792
- metrics: z93.array(PluginDaylightMetric).min(1),
6849
+ var PluginDaylightComputeArgs = z94.object({
6850
+ standard: z94.literal("IES-LM-83-23"),
6851
+ metrics: z94.array(PluginDaylightMetric).min(1),
6793
6852
  schedule: PluginDaylightSchedule.optional(),
6794
6853
  grid: PluginDaylightGrid,
6795
6854
  optics: PluginDaylightOptics.optional()
6796
6855
  });
6797
- var PluginDaylightPollArgs = z93.object({
6798
- runId: z93.string(),
6799
- cursor: z93.string().optional()
6800
- });
6801
- var PluginDaylightSensorRecord = z93.object({
6802
- sensorId: z93.string(),
6803
- position: z93.tuple([z93.number(), z93.number(), z93.number()]),
6804
- spaceId: z93.string(),
6805
- storeyId: z93.string(),
6806
- areaWeightM2: z93.number(),
6807
- occupiedHours: z93.number(),
6808
- directSunHoursAtOrAbove1000Lux: z93.number().optional(),
6809
- aseFail: z93.boolean().optional(),
6810
- da300Percent: z93.number().optional(),
6811
- sdaPass: z93.boolean().optional()
6812
- });
6813
- var PluginDaylightAggregateScope = z93.enum([
6856
+ var PluginDaylightPollArgs = z94.object({
6857
+ runId: z94.string(),
6858
+ cursor: z94.string().optional()
6859
+ });
6860
+ var PluginDaylightSensorRecord = z94.object({
6861
+ sensorId: z94.string(),
6862
+ position: z94.tuple([z94.number(), z94.number(), z94.number()]),
6863
+ spaceId: z94.string(),
6864
+ storeyId: z94.string(),
6865
+ areaWeightM2: z94.number(),
6866
+ occupiedHours: z94.number(),
6867
+ directSunHoursAtOrAbove1000Lux: z94.number().optional(),
6868
+ aseFail: z94.boolean().optional(),
6869
+ da300Percent: z94.number().optional(),
6870
+ sdaPass: z94.boolean().optional()
6871
+ });
6872
+ var PluginDaylightAggregateScope = z94.enum([
6814
6873
  "project",
6815
6874
  "storey",
6816
6875
  "space"
6817
6876
  ]);
6818
- var PluginDaylightAggregate = z93.object({
6877
+ var PluginDaylightAggregate = z94.object({
6819
6878
  scope: PluginDaylightAggregateScope,
6820
- id: z93.string().nullable(),
6821
- analysisAreaM2: z93.number(),
6822
- asePercent: z93.number().optional(),
6823
- sdaPercent: z93.number().optional()
6824
- });
6825
- var PluginDaylightProvenance = z93.object({
6826
- engine: z93.string(),
6827
- engineVersion: z93.string(),
6828
- standardProfile: z93.string(),
6829
- thresholds: z93.object({ aseLux: z93.number(), aseHours: z93.number() }).passthrough(),
6879
+ id: z94.string().nullable(),
6880
+ analysisAreaM2: z94.number(),
6881
+ asePercent: z94.number().optional(),
6882
+ sdaPercent: z94.number().optional()
6883
+ });
6884
+ var PluginDaylightProvenance = z94.object({
6885
+ engine: z94.string(),
6886
+ engineVersion: z94.string(),
6887
+ standardProfile: z94.string(),
6888
+ thresholds: z94.object({ aseLux: z94.number(), aseHours: z94.number() }).passthrough(),
6830
6889
  weather: PluginWeatherSourceMeta.nullable(),
6831
- occupancySchedule: z93.object({ id: z93.string(), hoursPerYear: z93.number() }).passthrough(),
6890
+ occupancySchedule: z94.object({ id: z94.string(), hoursPerYear: z94.number() }).passthrough(),
6832
6891
  grid: PluginDaylightGrid,
6833
- location: z93.object({
6834
- latitude: z93.number(),
6835
- longitude: z93.number(),
6836
- timezone: z93.string(),
6837
- trueNorthDeg: z93.number()
6892
+ location: z94.object({
6893
+ latitude: z94.number(),
6894
+ longitude: z94.number(),
6895
+ timezone: z94.string(),
6896
+ trueNorthDeg: z94.number()
6838
6897
  }).passthrough(),
6839
- surfaceReflectances: z93.record(z93.string(), z93.number()),
6840
- modelRevision: z93.string(),
6841
- inputHash: z93.string(),
6842
- warnings: z93.array(z93.string()),
6843
- excludedSpaces: z93.array(
6844
- z93.object({ spaceId: z93.string(), reason: z93.string() })
6898
+ surfaceReflectances: z94.record(z94.string(), z94.number()),
6899
+ modelRevision: z94.string(),
6900
+ inputHash: z94.string(),
6901
+ warnings: z94.array(z94.string()),
6902
+ excludedSpaces: z94.array(
6903
+ z94.object({ spaceId: z94.string(), reason: z94.string() })
6845
6904
  ),
6846
- failedGeometry: z93.array(
6847
- z93.object({ componentId: z93.string(), reason: z93.string() })
6905
+ failedGeometry: z94.array(
6906
+ z94.object({ componentId: z94.string(), reason: z94.string() })
6848
6907
  )
6849
6908
  }).partial().passthrough();
6850
- var PluginDaylightResults = z93.object({
6909
+ var PluginDaylightResults = z94.object({
6851
6910
  status: PluginDaylightRunStatus,
6852
- runId: z93.string().optional(),
6853
- sensors: z93.array(PluginDaylightSensorRecord),
6854
- aggregates: z93.array(PluginDaylightAggregate),
6911
+ runId: z94.string().optional(),
6912
+ sensors: z94.array(PluginDaylightSensorRecord),
6913
+ aggregates: z94.array(PluginDaylightAggregate),
6855
6914
  provenance: PluginDaylightProvenance,
6856
- nextCursor: z93.string().nullable()
6915
+ nextCursor: z94.string().nullable()
6857
6916
  });
6858
6917
 
6859
6918
  // src/api/analysis/index.ts
@@ -6863,7 +6922,7 @@ var PluginAnalysisApi = class {
6863
6922
  };
6864
6923
 
6865
6924
  // src/api/workspace/index.ts
6866
- var z94 = __toESM(require("zod"), 1);
6925
+ var z95 = __toESM(require("zod"), 1);
6867
6926
  var PluginWorkspaceApi = class {
6868
6927
  constructor() {
6869
6928
  }
@@ -6876,68 +6935,68 @@ var PluginWorkspaceTeamsApi = class {
6876
6935
  constructor() {
6877
6936
  }
6878
6937
  };
6879
- var PluginProjectRef = z94.object({
6880
- id: z94.string(),
6881
- name: z94.string(),
6882
- teamId: z94.string().optional(),
6883
- createdAt: z94.string().optional(),
6884
- modifiedAt: z94.string().optional()
6938
+ var PluginProjectRef = z95.object({
6939
+ id: z95.string(),
6940
+ name: z95.string(),
6941
+ teamId: z95.string().optional(),
6942
+ createdAt: z95.string().optional(),
6943
+ modifiedAt: z95.string().optional()
6885
6944
  });
6886
- var PluginTeamRef = z94.object({
6887
- id: z94.string(),
6888
- name: z94.string(),
6889
- role: z94.string().optional()
6945
+ var PluginTeamRef = z95.object({
6946
+ id: z95.string(),
6947
+ name: z95.string(),
6948
+ role: z95.string().optional()
6890
6949
  });
6891
- var PluginTeamMemberRef = z94.object({
6892
- id: z94.string(),
6893
- name: z94.string(),
6894
- email: z94.string().optional(),
6895
- role: z94.string().optional()
6950
+ var PluginTeamMemberRef = z95.object({
6951
+ id: z95.string(),
6952
+ name: z95.string(),
6953
+ email: z95.string().optional(),
6954
+ role: z95.string().optional()
6896
6955
  });
6897
- var PluginWorkspaceProjectsCreateArgs = z94.object({
6898
- name: z94.string(),
6899
- unit: z94.string().optional(),
6900
- teamId: z94.string().optional()
6956
+ var PluginWorkspaceProjectsCreateArgs = z95.object({
6957
+ name: z95.string(),
6958
+ unit: z95.string().optional(),
6959
+ teamId: z95.string().optional()
6901
6960
  });
6902
- var PluginWorkspaceProjectsCreateResult = z94.object({
6903
- projectId: z94.string()
6961
+ var PluginWorkspaceProjectsCreateResult = z95.object({
6962
+ projectId: z95.string()
6904
6963
  });
6905
- var PluginWorkspaceProjectsCopyArgs = z94.object({
6906
- name: z94.string(),
6907
- teamId: z94.string().optional()
6964
+ var PluginWorkspaceProjectsCopyArgs = z95.object({
6965
+ name: z95.string(),
6966
+ teamId: z95.string().optional()
6908
6967
  });
6909
- var PluginWorkspaceProjectsCopyResult = z94.object({
6910
- projectId: z94.string()
6968
+ var PluginWorkspaceProjectsCopyResult = z95.object({
6969
+ projectId: z95.string()
6911
6970
  });
6912
- var PluginWorkspaceProjectsListArgs = z94.object({
6913
- teamId: z94.string().optional()
6971
+ var PluginWorkspaceProjectsListArgs = z95.object({
6972
+ teamId: z95.string().optional()
6914
6973
  });
6915
- var PluginWorkspaceProjectsListResult = z94.object({
6916
- projects: z94.array(PluginProjectRef)
6974
+ var PluginWorkspaceProjectsListResult = z95.object({
6975
+ projects: z95.array(PluginProjectRef)
6917
6976
  });
6918
- var PluginWorkspaceProjectsGetArgs = z94.object({
6919
- projectId: z94.string()
6977
+ var PluginWorkspaceProjectsGetArgs = z95.object({
6978
+ projectId: z95.string()
6920
6979
  });
6921
6980
  var PluginWorkspaceProjectsGetResult = PluginProjectRef.nullable();
6922
- var PluginWorkspaceProjectsRenameArgs = z94.object({
6923
- projectId: z94.string(),
6924
- name: z94.string()
6981
+ var PluginWorkspaceProjectsRenameArgs = z95.object({
6982
+ projectId: z95.string(),
6983
+ name: z95.string()
6925
6984
  });
6926
- var PluginWorkspaceProjectsRenameResult = z94.object({
6927
- projectId: z94.string()
6985
+ var PluginWorkspaceProjectsRenameResult = z95.object({
6986
+ projectId: z95.string()
6928
6987
  });
6929
- var PluginWorkspaceTeamsListResult = z94.object({
6930
- teams: z94.array(PluginTeamRef)
6988
+ var PluginWorkspaceTeamsListResult = z95.object({
6989
+ teams: z95.array(PluginTeamRef)
6931
6990
  });
6932
- var PluginWorkspaceTeamsGetArgs = z94.object({
6933
- teamId: z94.string()
6991
+ var PluginWorkspaceTeamsGetArgs = z95.object({
6992
+ teamId: z95.string()
6934
6993
  });
6935
6994
  var PluginWorkspaceTeamsGetResult = PluginTeamRef.nullable();
6936
- var PluginWorkspaceTeamsListMembersArgs = z94.object({
6937
- teamId: z94.string()
6995
+ var PluginWorkspaceTeamsListMembersArgs = z95.object({
6996
+ teamId: z95.string()
6938
6997
  });
6939
- var PluginWorkspaceTeamsListMembersResult = z94.object({
6940
- members: z94.array(PluginTeamMemberRef)
6998
+ var PluginWorkspaceTeamsListMembersResult = z95.object({
6999
+ members: z95.array(PluginTeamMemberRef)
6941
7000
  });
6942
7001
 
6943
7002
  // src/api/index.ts
@@ -7042,8 +7101,8 @@ function isPluginErrorCode(value) {
7042
7101
  var ERROR_ENVELOPE_VERSION = 1;
7043
7102
  function isErrorEnvelope(value) {
7044
7103
  if (typeof value !== "object" || value === null) return false;
7045
- const record7 = value;
7046
- return record7.envelopeVersion === ERROR_ENVELOPE_VERSION && typeof record7.code === "string" && typeof record7.message === "string" && typeof record7.errorId === "string";
7104
+ const record8 = value;
7105
+ return record8.envelopeVersion === ERROR_ENVELOPE_VERSION && typeof record8.code === "string" && typeof record8.message === "string" && typeof record8.errorId === "string";
7047
7106
  }
7048
7107
  var idCounter = 0;
7049
7108
  function newErrorId(prefix = "") {
@@ -7504,6 +7563,13 @@ function makeClientEnvelope(code, message, extra) {
7504
7563
  PluginDesignEraseApi,
7505
7564
  PluginDesignEraseEdgeArgs,
7506
7565
  PluginDesignEraseEdgeResult,
7566
+ PluginDesignFamilyApi,
7567
+ PluginDesignFamilyCreateArgs,
7568
+ PluginDesignFamilyFlexArgs,
7569
+ PluginDesignFamilyGetParametersArgs,
7570
+ PluginDesignFamilyPlaceArgs,
7571
+ PluginDesignFamilyPrepareArgs,
7572
+ PluginDesignFamilySetParametersArgs,
7507
7573
  PluginDesignFurnitureApi,
7508
7574
  PluginDesignFurnitureExistsArgs,
7509
7575
  PluginDesignFurnitureGetCatalogItemArgs,
@@ -7600,6 +7666,8 @@ function makeClientEnvelope(code, message, extra) {
7600
7666
  PluginExecutionError,
7601
7667
  PluginExportModelArgs,
7602
7668
  PluginFaceMaterial,
7669
+ PluginFamilyBundleSchema,
7670
+ PluginFamilySnapshotOption,
7603
7671
  PluginFurnitureCatalogItem,
7604
7672
  PluginFurnitureDimensionUpdates,
7605
7673
  PluginFurnitureDimensions,