@snaptrude/plugin-core 0.7.1 → 0.8.0
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/CHANGELOG.md +14 -0
- package/api-manifest.full.json +6442 -0
- package/api-manifest.json +2029 -128
- package/dist/api/core/camera/index.d.ts +208 -0
- package/dist/api/core/camera/index.d.ts.map +1 -0
- package/dist/api/core/comment/index.d.ts +105 -2
- package/dist/api/core/comment/index.d.ts.map +1 -1
- package/dist/api/core/geom/create/index.d.ts +13 -13
- package/dist/api/core/geom/delete/index.d.ts +8 -2
- package/dist/api/core/geom/delete/index.d.ts.map +1 -1
- package/dist/api/core/geom/query/arc.d.ts +5 -5
- package/dist/api/core/geom/query/brep.d.ts +18 -18
- package/dist/api/core/geom/query/circle.d.ts +18 -18
- package/dist/api/core/geom/query/contour.d.ts +20 -20
- package/dist/api/core/geom/query/curve.d.ts +49 -49
- package/dist/api/core/geom/query/edge.d.ts +5 -5
- package/dist/api/core/geom/query/face.d.ts +16 -16
- package/dist/api/core/geom/query/halfedge.d.ts +8 -8
- package/dist/api/core/geom/query/profile.d.ts +19 -19
- package/dist/api/core/geom/query/vertex.d.ts +8 -8
- package/dist/api/core/geom/update/contour.d.ts +14 -14
- package/dist/api/core/geom/update/curve.d.ts +7 -7
- package/dist/api/core/geom/update/profile.d.ts +16 -16
- package/dist/api/core/handles/index.d.ts +210 -0
- package/dist/api/core/handles/index.d.ts.map +1 -0
- package/dist/api/core/index.d.ts +15 -0
- package/dist/api/core/index.d.ts.map +1 -1
- package/dist/api/core/io/export/index.d.ts +132 -0
- package/dist/api/core/io/export/index.d.ts.map +1 -0
- package/dist/api/core/io/import/index.d.ts +1 -1
- package/dist/api/core/io/index.d.ts +5 -0
- package/dist/api/core/io/index.d.ts.map +1 -1
- package/dist/api/core/layers.d.ts +7 -7
- package/dist/api/core/proposals/index.d.ts +65 -9
- package/dist/api/core/proposals/index.d.ts.map +1 -1
- package/dist/api/core/user.d.ts +44 -0
- package/dist/api/core/user.d.ts.map +1 -0
- package/dist/api/design/boolean/index.d.ts +4 -4
- package/dist/api/design/create/index.d.ts +139 -44
- package/dist/api/design/create/index.d.ts.map +1 -1
- package/dist/api/design/doors/index.d.ts +36 -0
- package/dist/api/design/doors/index.d.ts.map +1 -1
- package/dist/api/design/edit/index.d.ts +1 -1
- package/dist/api/design/erase/index.d.ts +2 -2
- package/dist/api/design/furniture/index.d.ts +114 -3
- package/dist/api/design/furniture/index.d.ts.map +1 -1
- package/dist/api/design/index.d.ts +10 -0
- package/dist/api/design/index.d.ts.map +1 -1
- package/dist/api/design/materials/index.d.ts +111 -14
- package/dist/api/design/materials/index.d.ts.map +1 -1
- package/dist/api/design/query/index.d.ts +31 -1
- package/dist/api/design/query/index.d.ts.map +1 -1
- package/dist/api/design/query/spaces.d.ts +5 -5
- package/dist/api/design/transform/index.d.ts +83 -14
- package/dist/api/design/transform/index.d.ts.map +1 -1
- package/dist/api/design/types/index.d.ts +181 -0
- package/dist/api/design/types/index.d.ts.map +1 -0
- package/dist/api/design/update/index.d.ts +335 -2
- package/dist/api/design/update/index.d.ts.map +1 -1
- package/dist/api/design/visibility.d.ts +98 -0
- package/dist/api/design/visibility.d.ts.map +1 -0
- package/dist/api/entity/referenceLine.d.ts +2 -2
- package/dist/api/entity/space.d.ts +19 -19
- package/dist/api/entity/story.d.ts +128 -15
- package/dist/api/entity/story.d.ts.map +1 -1
- package/dist/api/presentation/annotate.d.ts +448 -0
- package/dist/api/presentation/annotate.d.ts.map +1 -0
- package/dist/api/presentation/diagrams.d.ts +49 -8
- package/dist/api/presentation/diagrams.d.ts.map +1 -1
- package/dist/api/presentation/export.d.ts +104 -0
- package/dist/api/presentation/export.d.ts.map +1 -0
- package/dist/api/presentation/index.d.ts +38 -0
- package/dist/api/presentation/index.d.ts.map +1 -1
- package/dist/api/presentation/sheets.d.ts +410 -13
- package/dist/api/presentation/sheets.d.ts.map +1 -1
- package/dist/api/presentation/views.d.ts +165 -10
- package/dist/api/presentation/views.d.ts.map +1 -1
- package/dist/api/program/areas.d.ts +63 -3
- package/dist/api/program/areas.d.ts.map +1 -1
- package/dist/api/program/cores.d.ts +3 -99
- package/dist/api/program/cores.d.ts.map +1 -1
- package/dist/api/program/index.d.ts +2 -2
- package/dist/api/program/index.d.ts.map +1 -1
- package/dist/api/program/layout.d.ts +172 -12
- package/dist/api/program/layout.d.ts.map +1 -1
- package/dist/api/program/site.d.ts +11 -8
- package/dist/api/program/site.d.ts.map +1 -1
- package/dist/api/program/spreadsheet.d.ts +105 -13
- package/dist/api/program/spreadsheet.d.ts.map +1 -1
- package/dist/handles.d.ts +64 -25
- package/dist/handles.d.ts.map +1 -1
- package/dist/index.cjs +2316 -1644
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +2224 -1639
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/api/core/camera/index.ts +212 -0
- package/src/api/core/comment/index.ts +120 -2
- package/src/api/core/geom/delete/index.ts +6 -0
- package/src/api/core/handles/index.ts +233 -0
- package/src/api/core/index.ts +15 -0
- package/src/api/core/io/export/index.ts +124 -0
- package/src/api/core/io/index.ts +5 -0
- package/src/api/core/proposals/index.ts +71 -11
- package/src/api/core/user.ts +46 -0
- package/src/api/design/create/index.ts +166 -36
- package/src/api/design/doors/index.ts +40 -0
- package/src/api/design/furniture/index.ts +127 -3
- package/src/api/design/index.ts +10 -0
- package/src/api/design/materials/index.ts +157 -30
- package/src/api/design/query/index.ts +33 -7
- package/src/api/design/transform/index.ts +89 -12
- package/src/api/design/types/index.ts +156 -0
- package/src/api/design/update/index.ts +402 -6
- package/src/api/design/visibility.ts +109 -0
- package/src/api/entity/story.ts +141 -15
- package/src/api/presentation/annotate.ts +360 -0
- package/src/api/presentation/diagrams.ts +53 -8
- package/src/api/presentation/export.ts +104 -0
- package/src/api/presentation/index.ts +46 -0
- package/src/api/presentation/sheets.ts +346 -13
- package/src/api/presentation/views.ts +164 -12
- package/src/api/program/areas.ts +57 -6
- package/src/api/program/cores.ts +3 -91
- package/src/api/program/index.ts +2 -2
- package/src/api/program/layout.ts +182 -12
- package/src/api/program/site.ts +11 -8
- package/src/api/program/spreadsheet.ts +125 -29
- package/src/handles.ts +77 -13
- package/tsconfig.json +7 -2
|
@@ -57,7 +57,7 @@ export declare const PluginSpacePropertyUpdates: z.ZodObject<{
|
|
|
57
57
|
export type PluginSpacePropertyUpdates = z.infer<typeof PluginSpacePropertyUpdates>;
|
|
58
58
|
/** Geometry replacement for a space — re-extrude a profile. */
|
|
59
59
|
export declare const PluginSpaceGeometryUpdate: z.ZodObject<{
|
|
60
|
-
profile: z.ZodPipe<z.
|
|
60
|
+
profile: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../../..").Handle<"profile">, string>>;
|
|
61
61
|
extrudeHeight: z.ZodNumber;
|
|
62
62
|
}, z.core.$strip>;
|
|
63
63
|
export type PluginSpaceGeometryUpdate = z.infer<typeof PluginSpaceGeometryUpdate>;
|
|
@@ -105,7 +105,7 @@ export declare const PluginUpdateSpaceItem: z.ZodObject<{
|
|
|
105
105
|
}>, z.ZodUUID]>>;
|
|
106
106
|
}, z.core.$strip>>;
|
|
107
107
|
geometry: z.ZodOptional<z.ZodObject<{
|
|
108
|
-
profile: z.ZodPipe<z.
|
|
108
|
+
profile: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../../..").Handle<"profile">, string>>;
|
|
109
109
|
extrudeHeight: z.ZodNumber;
|
|
110
110
|
}, z.core.$strip>>;
|
|
111
111
|
}, z.core.$strip>;
|
|
@@ -193,6 +193,90 @@ export declare const PluginDesignUpdateStaircaseArgs: z.ZodObject<{
|
|
|
193
193
|
}, z.core.$strip>;
|
|
194
194
|
}, z.core.$strip>;
|
|
195
195
|
export type PluginDesignUpdateStaircaseArgs = z.infer<typeof PluginDesignUpdateStaircaseArgs>;
|
|
196
|
+
/**
|
|
197
|
+
* Sparse edits for a wall (all optional; at least one required). Only the
|
|
198
|
+
* fields you provide change. Dimensions are in **engine units** (the same
|
|
199
|
+
* convention as `design.doors.setWidth`). Consumed by
|
|
200
|
+
* {@linkcode PluginDesignUpdateApi.wall}.
|
|
201
|
+
*
|
|
202
|
+
* | Property | Type | Description |
|
|
203
|
+
* |---|---|---|
|
|
204
|
+
* | `thickness` | `number`? | Wall thickness, engine units (> 0) |
|
|
205
|
+
* | `height` | `number`? | Wall height, engine units (> 0) |
|
|
206
|
+
* | `type` | `string`? | Convert the wall to another wall type — a name (or `wall:`-prefixed id) from `design.types.list("wall")` |
|
|
207
|
+
*/
|
|
208
|
+
export declare const PluginWallUpdates: z.ZodObject<{
|
|
209
|
+
thickness: z.ZodOptional<z.ZodNumber>;
|
|
210
|
+
height: z.ZodOptional<z.ZodNumber>;
|
|
211
|
+
type: z.ZodOptional<z.ZodString>;
|
|
212
|
+
}, z.core.$strip>;
|
|
213
|
+
export type PluginWallUpdates = z.infer<typeof PluginWallUpdates>;
|
|
214
|
+
/**
|
|
215
|
+
* Sparse dimension edits for a slab-family element (slab / floor / roof /
|
|
216
|
+
* ceiling). All values are engine units, the same convention as
|
|
217
|
+
* `design.doors.setWidth`. Consumed by {@linkcode PluginDesignUpdateApi.slab},
|
|
218
|
+
* `floor`, `roof`, and `ceiling`.
|
|
219
|
+
*
|
|
220
|
+
* `overhang` is only available on **slabs and roofs** (the panel's Overhang
|
|
221
|
+
* slider) — floors and ceilings reject it with `PRECONDITION_FAILED`.
|
|
222
|
+
*
|
|
223
|
+
* | Property | Type | Description |
|
|
224
|
+
* |---|---|---|
|
|
225
|
+
* | `thickness` | `number`? | Element thickness, engine units (> 0) |
|
|
226
|
+
* | `overhang` | `number`? | Absolute overhang offset, engine units (slab / roof only) |
|
|
227
|
+
*/
|
|
228
|
+
export declare const PluginSlabUpdates: z.ZodObject<{
|
|
229
|
+
thickness: z.ZodOptional<z.ZodNumber>;
|
|
230
|
+
overhang: z.ZodOptional<z.ZodNumber>;
|
|
231
|
+
}, z.core.$strip>;
|
|
232
|
+
export type PluginSlabUpdates = z.infer<typeof PluginSlabUpdates>;
|
|
233
|
+
/** Arguments for {@linkcode PluginDesignUpdateApi.wall}. */
|
|
234
|
+
export declare const PluginDesignUpdateWallArgs: z.ZodObject<{
|
|
235
|
+
component: z.ZodPipe<z.ZodString, z.ZodTransform<ComponentHandle, string>>;
|
|
236
|
+
updates: z.ZodObject<{
|
|
237
|
+
thickness: z.ZodOptional<z.ZodNumber>;
|
|
238
|
+
height: z.ZodOptional<z.ZodNumber>;
|
|
239
|
+
type: z.ZodOptional<z.ZodString>;
|
|
240
|
+
}, z.core.$strip>;
|
|
241
|
+
}, z.core.$strip>;
|
|
242
|
+
export type PluginDesignUpdateWallArgs = z.infer<typeof PluginDesignUpdateWallArgs>;
|
|
243
|
+
/**
|
|
244
|
+
* Arguments for the slab-family updaters —
|
|
245
|
+
* {@linkcode PluginDesignUpdateApi.slab}, `floor`, `roof`, `ceiling`.
|
|
246
|
+
*/
|
|
247
|
+
export declare const PluginDesignUpdateSlabArgs: z.ZodObject<{
|
|
248
|
+
component: z.ZodPipe<z.ZodString, z.ZodTransform<ComponentHandle, string>>;
|
|
249
|
+
updates: z.ZodObject<{
|
|
250
|
+
thickness: z.ZodOptional<z.ZodNumber>;
|
|
251
|
+
overhang: z.ZodOptional<z.ZodNumber>;
|
|
252
|
+
}, z.core.$strip>;
|
|
253
|
+
}, z.core.$strip>;
|
|
254
|
+
export type PluginDesignUpdateSlabArgs = z.infer<typeof PluginDesignUpdateSlabArgs>;
|
|
255
|
+
/** Arguments for {@linkcode PluginDesignUpdateApi.setElevation}. */
|
|
256
|
+
export declare const PluginDesignSetElevationArgs: z.ZodObject<{
|
|
257
|
+
component: z.ZodPipe<z.ZodString, z.ZodTransform<ComponentHandle, string>>;
|
|
258
|
+
elevation: z.ZodNumber;
|
|
259
|
+
}, z.core.$strip>;
|
|
260
|
+
export type PluginDesignSetElevationArgs = z.infer<typeof PluginDesignSetElevationArgs>;
|
|
261
|
+
/** Arguments for {@linkcode PluginDesignUpdateApi.setBaseOffset}. */
|
|
262
|
+
export declare const PluginDesignSetBaseOffsetArgs: z.ZodObject<{
|
|
263
|
+
component: z.ZodPipe<z.ZodString, z.ZodTransform<ComponentHandle, string>>;
|
|
264
|
+
offset: z.ZodNumber;
|
|
265
|
+
}, z.core.$strip>;
|
|
266
|
+
export type PluginDesignSetBaseOffsetArgs = z.infer<typeof PluginDesignSetBaseOffsetArgs>;
|
|
267
|
+
/**
|
|
268
|
+
* Arguments for {@linkcode PluginDesignUpdateApi.setStorey}.
|
|
269
|
+
*
|
|
270
|
+
* | Property | Type | Description |
|
|
271
|
+
* |---|---|---|
|
|
272
|
+
* | `components` | {@linkcode ComponentHandle}`[]` | The components to reassign |
|
|
273
|
+
* | `storey` | `number` | Target integer storey number (`entity.story` convention; must exist) |
|
|
274
|
+
*/
|
|
275
|
+
export declare const PluginDesignSetStoreyArgs: z.ZodObject<{
|
|
276
|
+
components: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<ComponentHandle, string>>>;
|
|
277
|
+
storey: z.ZodNumber;
|
|
278
|
+
}, z.core.$strip>;
|
|
279
|
+
export type PluginDesignSetStoreyArgs = z.infer<typeof PluginDesignSetStoreyArgs>;
|
|
196
280
|
/**
|
|
197
281
|
* `snaptrude.design.update` — edit existing scene entities (properties + geometry).
|
|
198
282
|
*
|
|
@@ -342,5 +426,254 @@ export declare abstract class PluginDesignUpdateApi {
|
|
|
342
426
|
* ```
|
|
343
427
|
*/
|
|
344
428
|
abstract staircase(staircases: ComponentHandle[], params: PluginStaircaseParamUpdates): PluginApiReturn<PluginDesignChangeResult>;
|
|
429
|
+
/**
|
|
430
|
+
* Edit a **wall** — its thickness and/or height (the same command the
|
|
431
|
+
* properties panel's Thickness/Height fields drive) and/or its **wall type**
|
|
432
|
+
* (the panel's Wall Types dropdown: converts the wall to another type,
|
|
433
|
+
* rebuilding its layer stack and materials). Sparse: only the fields you
|
|
434
|
+
* provide change. Undoable; the geometry rebuilds and any dimension lines
|
|
435
|
+
* refresh. Stacked-wall companions and hosted fenestration are handled
|
|
436
|
+
* exactly as the panel does.
|
|
437
|
+
*
|
|
438
|
+
* Thickness/height are in **engine units** (the same convention as
|
|
439
|
+
* `design.doors.setWidth`) and must be `> 0`. Shrinking a wall past its
|
|
440
|
+
* openings is rejected by the engine (the wall is skipped with no change).
|
|
441
|
+
* `type` accepts a type name from `design.types.list("wall")` (or its
|
|
442
|
+
* `wall:`-prefixed id); when combined with dimensions, the type conversion
|
|
443
|
+
* is applied first so an explicit thickness/height wins over the type's
|
|
444
|
+
* defaults. Re-applying the wall's current type is a no-op.
|
|
445
|
+
*
|
|
446
|
+
* Throws when the handle is not a wall, when the wall is locked, when the
|
|
447
|
+
* handle is gone/forged, when `type` names an unknown wall type, when the
|
|
448
|
+
* engine rejects the conversion (e.g. a curved wall thinner than the new
|
|
449
|
+
* type's minimum thickness), or when no field is provided.
|
|
450
|
+
*
|
|
451
|
+
* A type conversion (and a thickness edit on a parametric wall) REBUILDS the
|
|
452
|
+
* wall, replacing it with a new component: the input handle is then dead
|
|
453
|
+
* (further calls throw HANDLE_INVALID) and `affected[0]` carries the
|
|
454
|
+
* replacement's handle — use it for any follow-up calls.
|
|
455
|
+
*
|
|
456
|
+
* @param component - The wall to edit
|
|
457
|
+
* @param updates - Sparse {@linkcode PluginWallUpdates} (at least one field)
|
|
458
|
+
* @returns the affected wall — after a rebuild, the REPLACEMENT wall's handle
|
|
459
|
+
*
|
|
460
|
+
* @examplePrompt Make this wall 230mm thick
|
|
461
|
+
* @examplePrompt Set the selected wall's height to 3 metres
|
|
462
|
+
* @examplePrompt Thicken every exterior wall to 300
|
|
463
|
+
* @examplePrompt Change this wall to a Glass Wall
|
|
464
|
+
* @examplePrompt Convert all the partitions on this floor to Brick Wall
|
|
465
|
+
*
|
|
466
|
+
* # Example
|
|
467
|
+
* ```ts
|
|
468
|
+
* // Convert every wall on storey 1 to the first listed wall type
|
|
469
|
+
* const [wallType] = await snaptrude.design.types.list("wall")
|
|
470
|
+
* const walls = await snaptrude.design.query.listWalls({ storeys: [1] })
|
|
471
|
+
* for (const wall of walls) {
|
|
472
|
+
* await snaptrude.design.update.wall(wall, { type: wallType.id })
|
|
473
|
+
* }
|
|
474
|
+
* ```
|
|
475
|
+
*/
|
|
476
|
+
abstract wall(component: ComponentHandle, updates: PluginWallUpdates): PluginApiReturn<PluginDesignChangeResult>;
|
|
477
|
+
/**
|
|
478
|
+
* Edit a **slab's** thickness and/or overhang — the same commands the
|
|
479
|
+
* properties panel's Thickness field and Overhang slider drive. Sparse: only
|
|
480
|
+
* the fields you provide change. Undoable; the slab rebuilds and dimension
|
|
481
|
+
* lines refresh. Both values are in **engine units** (the same convention as
|
|
482
|
+
* `design.doors.setWidth`); thickness must be `> 0`, overhang is an absolute
|
|
483
|
+
* offset (negative insets the slab) and re-applying the current overhang is
|
|
484
|
+
* a no-op.
|
|
485
|
+
*
|
|
486
|
+
* Throws when the handle is not a slab, when it is locked, when the handle is
|
|
487
|
+
* gone/forged, when `overhang` is set on a slab that has no overhang (plinth /
|
|
488
|
+
* basement slabs, or overhang disabled), or when no field is provided.
|
|
489
|
+
*
|
|
490
|
+
* @param component - The slab to edit
|
|
491
|
+
* @param updates - Sparse {@linkcode PluginSlabUpdates} (at least one field)
|
|
492
|
+
* @returns the affected slab
|
|
493
|
+
*
|
|
494
|
+
* @examplePrompt Set this slab's thickness to 250mm
|
|
495
|
+
* @examplePrompt Make the floor slab 300 thick
|
|
496
|
+
* @examplePrompt Give this slab a 200 overhang
|
|
497
|
+
* @examplePrompt Remove the overhang on every slab on level 2
|
|
498
|
+
*
|
|
499
|
+
* # Example
|
|
500
|
+
* ```ts
|
|
501
|
+
* const [slab] = await snaptrude.design.query.listSlabs()
|
|
502
|
+
* await snaptrude.design.update.slab(slab, { thickness: 250, overhang: 200 })
|
|
503
|
+
* ```
|
|
504
|
+
*/
|
|
505
|
+
abstract slab(component: ComponentHandle, updates: PluginSlabUpdates): PluginApiReturn<PluginDesignChangeResult>;
|
|
506
|
+
/**
|
|
507
|
+
* Edit a **floor's** thickness — the slab-family updater for floors (shares
|
|
508
|
+
* the slab thickness command). Undoable. Thickness is in **engine units**
|
|
509
|
+
* (the `design.doors.setWidth` convention) and must be `> 0`. Floors have no
|
|
510
|
+
* Overhang control, so `overhang` is rejected with `PRECONDITION_FAILED`.
|
|
511
|
+
*
|
|
512
|
+
* Throws when the handle is not a floor, when it is locked, when the handle
|
|
513
|
+
* is gone/forged, when `overhang` is provided, or when no field is provided.
|
|
514
|
+
*
|
|
515
|
+
* @param component - The floor to edit
|
|
516
|
+
* @param updates - {@linkcode PluginSlabUpdates} (a `thickness`)
|
|
517
|
+
* @returns the affected floor
|
|
518
|
+
*
|
|
519
|
+
* @examplePrompt Make this floor 200mm thick
|
|
520
|
+
* @examplePrompt Set every floor to a 250 thickness
|
|
521
|
+
* @examplePrompt Thicken the ground floor slab to 300
|
|
522
|
+
*
|
|
523
|
+
* # Example
|
|
524
|
+
* ```ts
|
|
525
|
+
* const [floor] = await snaptrude.design.query.listFloors()
|
|
526
|
+
* await snaptrude.design.update.floor(floor, { thickness: 200 })
|
|
527
|
+
* ```
|
|
528
|
+
*/
|
|
529
|
+
abstract floor(component: ComponentHandle, updates: PluginSlabUpdates): PluginApiReturn<PluginDesignChangeResult>;
|
|
530
|
+
/**
|
|
531
|
+
* Edit a **roof's** thickness and/or overhang — the same commands the roof
|
|
532
|
+
* panel's Thickness field and Overhang slider drive (shares the slab-family
|
|
533
|
+
* machinery). Sparse: only the fields you provide change. Undoable. Both
|
|
534
|
+
* values are in **engine units** (the `design.doors.setWidth` convention);
|
|
535
|
+
* thickness must be `> 0`, overhang is an absolute offset (negative insets
|
|
536
|
+
* the roof) and re-applying the current overhang is a no-op.
|
|
537
|
+
*
|
|
538
|
+
* Throws when the handle is not a roof, when it is locked, when the handle is
|
|
539
|
+
* gone/forged, when `overhang` is set on a roof whose overhang is disabled,
|
|
540
|
+
* or when no field is provided.
|
|
541
|
+
*
|
|
542
|
+
* @param component - The roof to edit
|
|
543
|
+
* @param updates - Sparse {@linkcode PluginSlabUpdates} (at least one field)
|
|
544
|
+
* @returns the affected roof
|
|
545
|
+
*
|
|
546
|
+
* @examplePrompt Make this roof 300mm thick
|
|
547
|
+
* @examplePrompt Set the roof slab thickness to 250
|
|
548
|
+
* @examplePrompt Give the roof a 600 overhang
|
|
549
|
+
* @examplePrompt Pull the roof overhang back to 0
|
|
550
|
+
*
|
|
551
|
+
* # Example
|
|
552
|
+
* ```ts
|
|
553
|
+
* const [roof] = await snaptrude.design.query.listRoofs()
|
|
554
|
+
* await snaptrude.design.update.roof(roof, { overhang: 600 })
|
|
555
|
+
* ```
|
|
556
|
+
*/
|
|
557
|
+
abstract roof(component: ComponentHandle, updates: PluginSlabUpdates): PluginApiReturn<PluginDesignChangeResult>;
|
|
558
|
+
/**
|
|
559
|
+
* Edit a **ceiling's** thickness — the slab-family updater for ceilings
|
|
560
|
+
* (shares the slab thickness command). Undoable. Thickness is in **engine
|
|
561
|
+
* units** (the `design.doors.setWidth` convention) and must be `> 0`.
|
|
562
|
+
* Ceilings have no Overhang control, so `overhang` is rejected with
|
|
563
|
+
* `PRECONDITION_FAILED`.
|
|
564
|
+
*
|
|
565
|
+
* Throws when the handle is not a ceiling, when it is locked, when the handle
|
|
566
|
+
* is gone/forged, when `overhang` is provided, or when no field is provided.
|
|
567
|
+
*
|
|
568
|
+
* @param component - The ceiling to edit
|
|
569
|
+
* @param updates - {@linkcode PluginSlabUpdates} (a `thickness`)
|
|
570
|
+
* @returns the affected ceiling
|
|
571
|
+
*
|
|
572
|
+
* @examplePrompt Make this ceiling 150mm thick
|
|
573
|
+
* @examplePrompt Set every ceiling to a 100 thickness
|
|
574
|
+
* @examplePrompt Thicken the ceiling to 200
|
|
575
|
+
*
|
|
576
|
+
* # Example
|
|
577
|
+
* ```ts
|
|
578
|
+
* const [ceiling] = await snaptrude.design.query.listCeilings()
|
|
579
|
+
* await snaptrude.design.update.ceiling(ceiling, { thickness: 150 })
|
|
580
|
+
* ```
|
|
581
|
+
*/
|
|
582
|
+
abstract ceiling(component: ComponentHandle, updates: PluginSlabUpdates): PluginApiReturn<PluginDesignChangeResult>;
|
|
583
|
+
/**
|
|
584
|
+
* Set a component's **absolute world elevation** — moves it vertically so its
|
|
585
|
+
* base (the bounding-box bottom, world Y) lands at `elevation`. Composed over
|
|
586
|
+
* the canonical command-backed move machinery, so it is undoable and persisted
|
|
587
|
+
* exactly like dragging the element up or down; per-type invariants (e.g. a
|
|
588
|
+
* staircase's base offset) stay in sync. `elevation` is in **engine units**
|
|
589
|
+
* (the `design.doors.setWidth` convention). Re-applying the current elevation
|
|
590
|
+
* is a no-op.
|
|
591
|
+
*
|
|
592
|
+
* Throws when the component is locked or the handle is gone/forged.
|
|
593
|
+
*
|
|
594
|
+
* @param component - The component to move vertically
|
|
595
|
+
* @param elevation - Target world elevation of the component's base (engine units)
|
|
596
|
+
* @returns the affected component
|
|
597
|
+
*
|
|
598
|
+
* @examplePrompt Set this element's elevation to 3000
|
|
599
|
+
* @examplePrompt Raise this mass so its base sits at 3 metres
|
|
600
|
+
* @examplePrompt Drop the selected slab to elevation 0
|
|
601
|
+
* @examplePrompt Put this staircase's base at 3200
|
|
602
|
+
*
|
|
603
|
+
* # Example
|
|
604
|
+
* ```ts
|
|
605
|
+
* // Sit the roof slab exactly at the top of a 3m storey
|
|
606
|
+
* const [roof] = await snaptrude.design.query.listRoofs()
|
|
607
|
+
* await snaptrude.design.update.setElevation(roof, 3000)
|
|
608
|
+
* ```
|
|
609
|
+
*/
|
|
610
|
+
abstract setElevation(component: ComponentHandle, elevation: number): PluginApiReturn<PluginDesignChangeResult>;
|
|
611
|
+
/**
|
|
612
|
+
* Set a component's **base offset** — its vertical distance above its own
|
|
613
|
+
* storey's base level. Moves the component so its base lands at
|
|
614
|
+
* `storeyBase + offset`, composed over the same command-backed move machinery
|
|
615
|
+
* as {@linkcode setElevation} (undoable, persisted, per-type invariants kept
|
|
616
|
+
* in sync). Use this instead of {@linkcode setElevation} when you want an
|
|
617
|
+
* offset relative to the storey rather than an absolute world height.
|
|
618
|
+
* `offset` is in **engine units** (the `design.doors.setWidth` convention);
|
|
619
|
+
* `0` sits the base flush with the storey base. Re-applying the current
|
|
620
|
+
* offset is a no-op.
|
|
621
|
+
*
|
|
622
|
+
* Throws when the component is locked, when it has no storey to offset from,
|
|
623
|
+
* or when the handle is gone/forged.
|
|
624
|
+
*
|
|
625
|
+
* @param component - The component to offset
|
|
626
|
+
* @param offset - Distance of the component's base above its storey base (engine units)
|
|
627
|
+
* @returns the affected component
|
|
628
|
+
*
|
|
629
|
+
* @examplePrompt Lift this element 300 above its floor
|
|
630
|
+
* @examplePrompt Set this staircase's base offset to 0
|
|
631
|
+
* @examplePrompt Raise the selected mass 500 off the storey base
|
|
632
|
+
* @examplePrompt Offset this slab 150 above the floor level
|
|
633
|
+
*
|
|
634
|
+
* # Example
|
|
635
|
+
* ```ts
|
|
636
|
+
* const [stair] = await snaptrude.design.query.listStaircases()
|
|
637
|
+
* await snaptrude.design.update.setBaseOffset(stair, 0)
|
|
638
|
+
* ```
|
|
639
|
+
*/
|
|
640
|
+
abstract setBaseOffset(component: ComponentHandle, offset: number): PluginApiReturn<PluginDesignChangeResult>;
|
|
641
|
+
/**
|
|
642
|
+
* Reassign one or more components to another **storey** — the same operation
|
|
643
|
+
* as the properties panel's Story dropdown, and it works across element kinds
|
|
644
|
+
* exactly like the panel (walls, slabs, masses, furniture, staircases, ...).
|
|
645
|
+
* Each component is moved vertically to the target storey's level (per-kind
|
|
646
|
+
* placement rules — e.g. a slab sits at the storey base, a wall on it) and
|
|
647
|
+
* its storey assignment, children, and dimension lines update together as
|
|
648
|
+
* **one undoable operation**.
|
|
649
|
+
*
|
|
650
|
+
* `storey` is an integer storey number in the `entity.story` convention
|
|
651
|
+
* (`1` is the ground storey, `-1` the first basement; `0` does not exist)
|
|
652
|
+
* and **must already exist** in each component's building — this call never
|
|
653
|
+
* creates storeys (use `entity.story.create` first). Components already on
|
|
654
|
+
* the target storey are skipped (no-op) and are not echoed in `affected`.
|
|
655
|
+
*
|
|
656
|
+
* Throws when the target storey does not exist, when any component is
|
|
657
|
+
* locked, or when a handle is gone/forged — all before anything moves
|
|
658
|
+
* (all-or-nothing).
|
|
659
|
+
*
|
|
660
|
+
* @param components - The components to reassign
|
|
661
|
+
* @param storey - Target storey number (integer, `entity.story` convention)
|
|
662
|
+
* @returns the components actually reassigned
|
|
663
|
+
*
|
|
664
|
+
* @examplePrompt Move this sofa to storey 2
|
|
665
|
+
* @examplePrompt Put the selected walls on the first basement level
|
|
666
|
+
* @examplePrompt Send everything on this storey up one level
|
|
667
|
+
* @examplePrompt Reassign these slabs to storey 3
|
|
668
|
+
*
|
|
669
|
+
* # Example
|
|
670
|
+
* ```ts
|
|
671
|
+
* // Move the current selection up to storey 2
|
|
672
|
+
* const selection = await snaptrude.design.selection.get()
|
|
673
|
+
* const { affected } = await snaptrude.design.update.setStorey(selection, 2)
|
|
674
|
+
* console.log("moved", affected.length, "components")
|
|
675
|
+
* ```
|
|
676
|
+
*/
|
|
677
|
+
abstract setStorey(components: ComponentHandle[], storey: number): PluginApiReturn<PluginDesignChangeResult>;
|
|
345
678
|
}
|
|
346
679
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/design/update/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,eAAe,EAAiB,MAAM,kBAAkB,CAAA;AACjE,OAAO,EAKL,uBAAuB,EACxB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAElD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMrC,CAAA;AACF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/design/update/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import * as z from "zod";
|
|
2
|
+
import { PluginApiReturn } from "../../types";
|
|
3
|
+
import { ComponentHandle } from "../../handles";
|
|
4
|
+
import { PluginDesignChangeResult } from "./lock";
|
|
5
|
+
/**
|
|
6
|
+
* `snaptrude.design.visibility.*` — hide, isolate, and reveal scene entities.
|
|
7
|
+
*
|
|
8
|
+
* Visibility is a per-component user flag (the same one the "Hide" / "Isolate" /
|
|
9
|
+
* "Show All" toolbar and right-click actions toggle). Every method here commits
|
|
10
|
+
* an undoable command and echoes the affected entities as
|
|
11
|
+
* {@linkcode PluginDesignChangeResult}.
|
|
12
|
+
*
|
|
13
|
+
* Accessed via `snaptrude.design.visibility`.
|
|
14
|
+
*/
|
|
15
|
+
export declare abstract class PluginDesignVisibilityApi {
|
|
16
|
+
constructor();
|
|
17
|
+
/**
|
|
18
|
+
* Hide entities from the viewport — the same as the "Hide" action. Undoable.
|
|
19
|
+
* Hosted door/window/void children ride along with their wall. Already-hidden
|
|
20
|
+
* entities stay hidden.
|
|
21
|
+
*
|
|
22
|
+
* @param components Entities to hide
|
|
23
|
+
* @returns The affected entities (echoing the input handles)
|
|
24
|
+
*
|
|
25
|
+
* @examplePrompt Hide the selected walls
|
|
26
|
+
* @examplePrompt Conceal these masses so I can see behind them
|
|
27
|
+
* @examplePrompt Hide every column on this floor
|
|
28
|
+
* @examplePrompt Make this furniture disappear from view
|
|
29
|
+
*
|
|
30
|
+
* # Example
|
|
31
|
+
* ```ts
|
|
32
|
+
* const walls = await snaptrude.design.query.listWalls({ storeys: [1] })
|
|
33
|
+
* const { affected } = await snaptrude.design.visibility.hide(walls)
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
abstract hide(components: ComponentHandle[]): PluginApiReturn<PluginDesignChangeResult>;
|
|
37
|
+
/**
|
|
38
|
+
* Isolate entities — hide everything else so only the given entities remain
|
|
39
|
+
* visible (the "Isolate" / solo action). Undoable. Reverse it with
|
|
40
|
+
* {@linkcode PluginDesignVisibilityApi.showAll}.
|
|
41
|
+
*
|
|
42
|
+
* @param components Entities to keep visible; everything else is hidden
|
|
43
|
+
* @returns The isolated entities (echoing the input handles)
|
|
44
|
+
*
|
|
45
|
+
* @examplePrompt Isolate the selected room so I can focus on it
|
|
46
|
+
* @examplePrompt Show only these walls and hide the rest
|
|
47
|
+
* @examplePrompt Solo this mass
|
|
48
|
+
* @examplePrompt Hide everything except the staircase
|
|
49
|
+
*
|
|
50
|
+
* # Example
|
|
51
|
+
* ```ts
|
|
52
|
+
* const [room] = await snaptrude.design.selection.get()
|
|
53
|
+
* await snaptrude.design.visibility.isolate([room])
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
abstract isolate(components: ComponentHandle[]): PluginApiReturn<PluginDesignChangeResult>;
|
|
57
|
+
/**
|
|
58
|
+
* Reveal everything hidden on the active story — the "Show All" action, which
|
|
59
|
+
* also exits an isolate. Undoable.
|
|
60
|
+
*
|
|
61
|
+
* @returns The entities that were made visible
|
|
62
|
+
*
|
|
63
|
+
* @examplePrompt Show everything again
|
|
64
|
+
* @examplePrompt Unhide all the hidden objects
|
|
65
|
+
* @examplePrompt Exit isolate mode
|
|
66
|
+
* @examplePrompt Reveal everything I hid earlier
|
|
67
|
+
*
|
|
68
|
+
* # Example
|
|
69
|
+
* ```ts
|
|
70
|
+
* const { affected } = await snaptrude.design.visibility.showAll()
|
|
71
|
+
* console.log(`Revealed ${affected.length} entities`)
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
abstract showAll(): PluginApiReturn<PluginDesignChangeResult>;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Arguments for {@linkcode PluginDesignVisibilityApi.hide}.
|
|
78
|
+
*
|
|
79
|
+
* | Property | Type | Description |
|
|
80
|
+
* |---|---|---|
|
|
81
|
+
* | `components` | {@linkcode ComponentHandle}`[]` | Entities to hide |
|
|
82
|
+
*/
|
|
83
|
+
export declare const PluginDesignVisibilityHideArgs: z.ZodObject<{
|
|
84
|
+
components: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<ComponentHandle, string>>>;
|
|
85
|
+
}, z.core.$strip>;
|
|
86
|
+
export type PluginDesignVisibilityHideArgs = z.infer<typeof PluginDesignVisibilityHideArgs>;
|
|
87
|
+
/**
|
|
88
|
+
* Arguments for {@linkcode PluginDesignVisibilityApi.isolate}.
|
|
89
|
+
*
|
|
90
|
+
* | Property | Type | Description |
|
|
91
|
+
* |---|---|---|
|
|
92
|
+
* | `components` | {@linkcode ComponentHandle}`[]` | Entities to keep visible |
|
|
93
|
+
*/
|
|
94
|
+
export declare const PluginDesignVisibilityIsolateArgs: z.ZodObject<{
|
|
95
|
+
components: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<ComponentHandle, string>>>;
|
|
96
|
+
}, z.core.$strip>;
|
|
97
|
+
export type PluginDesignVisibilityIsolateArgs = z.infer<typeof PluginDesignVisibilityIsolateArgs>;
|
|
98
|
+
//# sourceMappingURL=visibility.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"visibility.d.ts","sourceRoot":"","sources":["../../../src/api/design/visibility.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,wBAAwB,EAAE,MAAM,QAAQ,CAAA;AAEjD;;;;;;;;;GASG;AACH,8BAAsB,yBAAyB;;IAG7C;;;;;;;;;;;;;;;;;;OAkBG;aACa,IAAI,CAClB,UAAU,EAAE,eAAe,EAAE,GAC5B,eAAe,CAAC,wBAAwB,CAAC;IAE5C;;;;;;;;;;;;;;;;;;OAkBG;aACa,OAAO,CACrB,UAAU,EAAE,eAAe,EAAE,GAC5B,eAAe,CAAC,wBAAwB,CAAC;IAE5C;;;;;;;;;;;;;;;;OAgBG;aACa,OAAO,IAAI,eAAe,CAAC,wBAAwB,CAAC;CACrE;AAED;;;;;;GAMG;AACH,eAAO,MAAM,8BAA8B;;iBAEzC,CAAA;AACF,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAA;AAE3F;;;;;;GAMG;AACH,eAAO,MAAM,iCAAiC;;iBAE5C,CAAA;AACF,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CACrD,OAAO,iCAAiC,CACzC,CAAA"}
|
|
@@ -126,7 +126,7 @@ export declare abstract class PluginReferenceLineApi {
|
|
|
126
126
|
* | `profile` | {@linkcode ProfileHandle} | Profile handle whose curves define reference lines |
|
|
127
127
|
*/
|
|
128
128
|
export declare const PluginReferenceLineCreateMultiArgs: z.ZodObject<{
|
|
129
|
-
profile: z.ZodPipe<z.
|
|
129
|
+
profile: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"profile">, string>>;
|
|
130
130
|
}, z.core.$strip>;
|
|
131
131
|
export type PluginReferenceLineCreateMultiArgs = z.infer<typeof PluginReferenceLineCreateMultiArgs>;
|
|
132
132
|
/**
|
|
@@ -172,7 +172,7 @@ export type PluginReferenceLineGetArgs = z.infer<typeof PluginReferenceLineGetAr
|
|
|
172
172
|
* {@linkcode PluginReferenceLineGetArgs.properties} will be present.
|
|
173
173
|
*/
|
|
174
174
|
export declare const PluginReferenceLineGetResult: z.ZodObject<{
|
|
175
|
-
curve: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.
|
|
175
|
+
curve: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"line">, string>>, z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"arc">, string>>]>>;
|
|
176
176
|
}, z.core.$strip>;
|
|
177
177
|
export type PluginReferenceLineGetResult = z.infer<typeof PluginReferenceLineGetResult>;
|
|
178
178
|
/**
|
|
@@ -8,7 +8,7 @@ import * as z from "zod";
|
|
|
8
8
|
* | `dimensions` | `{ width, height, depth }` | Box dimensions in Babylon units |
|
|
9
9
|
*/
|
|
10
10
|
export declare const PluginSpaceCreateRectangularArgs: z.ZodObject<{
|
|
11
|
-
position: z.ZodPipe<z.
|
|
11
|
+
position: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"vec3">, string>>;
|
|
12
12
|
dimensions: z.ZodObject<{
|
|
13
13
|
width: z.ZodNumber;
|
|
14
14
|
height: z.ZodNumber;
|
|
@@ -38,10 +38,10 @@ export type PluginSpaceCreateRectangularResult = z.infer<typeof PluginSpaceCreat
|
|
|
38
38
|
* | `position` | {@linkcode Vec3Handle} | Offset position in Babylon units |
|
|
39
39
|
*/
|
|
40
40
|
export declare const PluginSpaceCreateFromProfileArgs: z.ZodObject<{
|
|
41
|
-
profile: z.ZodPipe<z.
|
|
42
|
-
innerProfiles: z.ZodOptional<z.ZodArray<z.ZodPipe<z.
|
|
41
|
+
profile: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"profile">, string>>;
|
|
42
|
+
innerProfiles: z.ZodOptional<z.ZodArray<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"profile">, string>>>>;
|
|
43
43
|
extrudeHeight: z.ZodNumber;
|
|
44
|
-
position: z.ZodPipe<z.
|
|
44
|
+
position: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"vec3">, string>>;
|
|
45
45
|
}, z.core.$strip>;
|
|
46
46
|
export type PluginSpaceCreateFromProfileArgs = z.infer<typeof PluginSpaceCreateFromProfileArgs>;
|
|
47
47
|
/**
|
|
@@ -66,7 +66,7 @@ export type PluginSpaceCreateFromProfileResult = z.infer<typeof PluginSpaceCreat
|
|
|
66
66
|
*/
|
|
67
67
|
export declare const PluginSpaceUpdateGeometryFromProfileArgs: z.ZodObject<{
|
|
68
68
|
spaceId: z.ZodString;
|
|
69
|
-
profile: z.ZodPipe<z.
|
|
69
|
+
profile: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"profile">, string>>;
|
|
70
70
|
extrudeHeight: z.ZodNumber;
|
|
71
71
|
}, z.core.$strip>;
|
|
72
72
|
export type PluginSpaceUpdateGeometryFromProfileArgs = z.infer<typeof PluginSpaceUpdateGeometryFromProfileArgs>;
|
|
@@ -130,8 +130,8 @@ export type PluginSpaceUpdateGeometryFromProfileResult = z.infer<typeof PluginSp
|
|
|
130
130
|
export declare const PluginSpaceGetProperty: z.ZodEnum<{
|
|
131
131
|
profile: "profile";
|
|
132
132
|
type: "type";
|
|
133
|
-
position: "position";
|
|
134
133
|
id: "id";
|
|
134
|
+
position: "position";
|
|
135
135
|
name: "name";
|
|
136
136
|
storey: "storey";
|
|
137
137
|
height: "height";
|
|
@@ -166,8 +166,8 @@ export declare const PluginSpaceGetArgs: z.ZodObject<{
|
|
|
166
166
|
properties: z.ZodArray<z.ZodEnum<{
|
|
167
167
|
profile: "profile";
|
|
168
168
|
type: "type";
|
|
169
|
-
position: "position";
|
|
170
169
|
id: "id";
|
|
170
|
+
position: "position";
|
|
171
171
|
name: "name";
|
|
172
172
|
storey: "storey";
|
|
173
173
|
height: "height";
|
|
@@ -300,8 +300,8 @@ export declare const PluginSpaceGetResult: z.ZodObject<{
|
|
|
300
300
|
y: z.ZodNumber;
|
|
301
301
|
z: z.ZodNumber;
|
|
302
302
|
}, z.core.$strip>>>;
|
|
303
|
-
profile: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodPipe<z.
|
|
304
|
-
innerProfiles: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodPipe<z.
|
|
303
|
+
profile: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"line">, string>>, z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"arc">, string>>]>>>;
|
|
304
|
+
innerProfiles: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodUnion<readonly [z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"line">, string>>, z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"arc">, string>>]>>>>;
|
|
305
305
|
innerPlanPoints: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodObject<{
|
|
306
306
|
x: z.ZodNumber;
|
|
307
307
|
y: z.ZodNumber;
|
|
@@ -498,7 +498,7 @@ export type PluginSpaceUpdateResult = z.infer<typeof PluginSpaceUpdateResult>;
|
|
|
498
498
|
*/
|
|
499
499
|
export declare const PluginSpaceBulkCreateItem: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
500
500
|
kind: z.ZodLiteral<"rectangular">;
|
|
501
|
-
position: z.ZodPipe<z.
|
|
501
|
+
position: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"vec3">, string>>;
|
|
502
502
|
dimensions: z.ZodObject<{
|
|
503
503
|
width: z.ZodNumber;
|
|
504
504
|
height: z.ZodNumber;
|
|
@@ -539,10 +539,10 @@ export declare const PluginSpaceBulkCreateItem: z.ZodDiscriminatedUnion<[z.ZodOb
|
|
|
539
539
|
}>, z.ZodUUID]>>;
|
|
540
540
|
}, z.core.$strip>, z.ZodObject<{
|
|
541
541
|
kind: z.ZodLiteral<"profile">;
|
|
542
|
-
profile: z.ZodPipe<z.
|
|
543
|
-
innerProfiles: z.ZodOptional<z.ZodArray<z.ZodPipe<z.
|
|
542
|
+
profile: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"profile">, string>>;
|
|
543
|
+
innerProfiles: z.ZodOptional<z.ZodArray<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"profile">, string>>>>;
|
|
544
544
|
extrudeHeight: z.ZodNumber;
|
|
545
|
-
position: z.ZodPipe<z.
|
|
545
|
+
position: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"vec3">, string>>;
|
|
546
546
|
room_type: z.ZodOptional<z.ZodString>;
|
|
547
547
|
spaceType: z.ZodOptional<z.ZodEnum<{
|
|
548
548
|
Room: "Room";
|
|
@@ -588,7 +588,7 @@ export type PluginSpaceBulkCreateItem = z.infer<typeof PluginSpaceBulkCreateItem
|
|
|
588
588
|
export declare const PluginSpaceBulkCreateArgs: z.ZodObject<{
|
|
589
589
|
items: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
590
590
|
kind: z.ZodLiteral<"rectangular">;
|
|
591
|
-
position: z.ZodPipe<z.
|
|
591
|
+
position: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"vec3">, string>>;
|
|
592
592
|
dimensions: z.ZodObject<{
|
|
593
593
|
width: z.ZodNumber;
|
|
594
594
|
height: z.ZodNumber;
|
|
@@ -629,10 +629,10 @@ export declare const PluginSpaceBulkCreateArgs: z.ZodObject<{
|
|
|
629
629
|
}>, z.ZodUUID]>>;
|
|
630
630
|
}, z.core.$strip>, z.ZodObject<{
|
|
631
631
|
kind: z.ZodLiteral<"profile">;
|
|
632
|
-
profile: z.ZodPipe<z.
|
|
633
|
-
innerProfiles: z.ZodOptional<z.ZodArray<z.ZodPipe<z.
|
|
632
|
+
profile: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"profile">, string>>;
|
|
633
|
+
innerProfiles: z.ZodOptional<z.ZodArray<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"profile">, string>>>>;
|
|
634
634
|
extrudeHeight: z.ZodNumber;
|
|
635
|
-
position: z.ZodPipe<z.
|
|
635
|
+
position: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"vec3">, string>>;
|
|
636
636
|
room_type: z.ZodOptional<z.ZodString>;
|
|
637
637
|
spaceType: z.ZodOptional<z.ZodEnum<{
|
|
638
638
|
Room: "Room";
|
|
@@ -697,7 +697,7 @@ export type PluginSpaceBulkCreateResult = z.infer<typeof PluginSpaceBulkCreateRe
|
|
|
697
697
|
*/
|
|
698
698
|
export declare const PluginSpaceBulkUpdateItem: z.ZodObject<{
|
|
699
699
|
spaceId: z.ZodString;
|
|
700
|
-
profile: z.ZodOptional<z.ZodPipe<z.
|
|
700
|
+
profile: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"profile">, string>>>;
|
|
701
701
|
extrudeHeight: z.ZodOptional<z.ZodNumber>;
|
|
702
702
|
properties: z.ZodOptional<z.ZodObject<{
|
|
703
703
|
room_type: z.ZodOptional<z.ZodString>;
|
|
@@ -751,7 +751,7 @@ export type PluginSpaceBulkUpdateItem = z.infer<typeof PluginSpaceBulkUpdateItem
|
|
|
751
751
|
export declare const PluginSpaceBulkUpdateArgs: z.ZodObject<{
|
|
752
752
|
items: z.ZodArray<z.ZodObject<{
|
|
753
753
|
spaceId: z.ZodString;
|
|
754
|
-
profile: z.ZodOptional<z.ZodPipe<z.
|
|
754
|
+
profile: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodString>, z.ZodTransform<import("../..").Handle<"profile">, string>>>;
|
|
755
755
|
extrudeHeight: z.ZodOptional<z.ZodNumber>;
|
|
756
756
|
properties: z.ZodOptional<z.ZodObject<{
|
|
757
757
|
room_type: z.ZodOptional<z.ZodString>;
|