@pascal-app/core 1.0.4 → 1.0.6
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/agent-operations/__fixtures__/add-object-cases.d.ts +102 -90
- package/dist/agent-operations/__fixtures__/add-object-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/add-object-cases.js +301 -1
- package/dist/agent-operations/__fixtures__/add-stair-cases.d.ts +3 -0
- package/dist/agent-operations/__fixtures__/add-stair-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/add-stair-cases.js +176 -0
- package/dist/agent-operations/__fixtures__/build-room-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/build-room-cases.js +410 -40
- package/dist/agent-operations/__fixtures__/cases.d.ts +18 -3
- package/dist/agent-operations/__fixtures__/cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/cases.js +183 -4
- package/dist/agent-operations/__fixtures__/corner-window-cases.d.ts +3 -0
- package/dist/agent-operations/__fixtures__/corner-window-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/corner-window-cases.js +155 -0
- package/dist/agent-operations/__fixtures__/design-brief-cases.d.ts +14 -0
- package/dist/agent-operations/__fixtures__/design-brief-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/design-brief-cases.js +709 -0
- package/dist/agent-operations/__fixtures__/finish-cases.d.ts +7 -0
- package/dist/agent-operations/__fixtures__/finish-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/finish-cases.js +758 -0
- package/dist/agent-operations/__fixtures__/lot-info-cases.d.ts +3 -0
- package/dist/agent-operations/__fixtures__/lot-info-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/lot-info-cases.js +370 -0
- package/dist/agent-operations/__fixtures__/merge-windows-cases.d.ts +3 -0
- package/dist/agent-operations/__fixtures__/merge-windows-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/merge-windows-cases.js +321 -0
- package/dist/agent-operations/__fixtures__/native-materials.d.ts +2237 -0
- package/dist/agent-operations/__fixtures__/native-materials.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/native-materials.js +82 -0
- package/dist/agent-operations/__fixtures__/node-read-cases.d.ts +4 -0
- package/dist/agent-operations/__fixtures__/node-read-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/node-read-cases.js +639 -0
- package/dist/agent-operations/__fixtures__/notation-cases.d.ts +24 -0
- package/dist/agent-operations/__fixtures__/notation-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/notation-cases.js +356 -0
- package/dist/agent-operations/__fixtures__/place-items-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/place-items-cases.js +80 -2
- package/dist/agent-operations/__fixtures__/roof-bearing-cases.d.ts +19726 -0
- package/dist/agent-operations/__fixtures__/roof-bearing-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/roof-bearing-cases.js +106 -0
- package/dist/agent-operations/__fixtures__/roof-cases.d.ts +9 -0
- package/dist/agent-operations/__fixtures__/roof-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/roof-cases.js +382 -0
- package/dist/agent-operations/__fixtures__/room-cases.d.ts +2 -1
- package/dist/agent-operations/__fixtures__/room-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/room-cases.js +136 -1
- package/dist/agent-operations/__fixtures__/scene-check-cases.d.ts +4 -0
- package/dist/agent-operations/__fixtures__/scene-check-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/scene-check-cases.js +417 -0
- package/dist/agent-operations/__fixtures__/search-assets-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/search-assets-cases.js +15 -3
- package/dist/agent-operations/__fixtures__/site-cases.d.ts +290 -0
- package/dist/agent-operations/__fixtures__/site-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/site-cases.js +780 -0
- package/dist/agent-operations/__fixtures__/structure-cases.d.ts +1 -0
- package/dist/agent-operations/__fixtures__/structure-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/structure-cases.js +630 -3
- package/dist/agent-operations/__fixtures__/verify-scene-cases.d.ts +311 -1
- package/dist/agent-operations/__fixtures__/verify-scene-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/verify-scene-cases.js +59 -11
- package/dist/agent-operations/__fixtures__/view-assets-cases.d.ts +3 -0
- package/dist/agent-operations/__fixtures__/view-assets-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/view-assets-cases.js +155 -0
- package/dist/agent-operations/__fixtures__/view-scene-cases.d.ts +50 -0
- package/dist/agent-operations/__fixtures__/view-scene-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/view-scene-cases.js +425 -0
- package/dist/agent-operations/achieved.d.ts +5 -0
- package/dist/agent-operations/achieved.d.ts.map +1 -1
- package/dist/agent-operations/achieved.js +21 -1
- package/dist/agent-operations/add-column.d.ts.map +1 -1
- package/dist/agent-operations/add-column.js +3 -1
- package/dist/agent-operations/add-fence.d.ts +18 -0
- package/dist/agent-operations/add-fence.d.ts.map +1 -0
- package/dist/agent-operations/add-fence.js +48 -0
- package/dist/agent-operations/add-level.d.ts +4 -1
- package/dist/agent-operations/add-level.d.ts.map +1 -1
- package/dist/agent-operations/add-level.js +48 -12
- package/dist/agent-operations/add-object.d.ts +38 -9
- package/dist/agent-operations/add-object.d.ts.map +1 -1
- package/dist/agent-operations/add-object.js +172 -11
- package/dist/agent-operations/add-wall.d.ts +1 -3
- package/dist/agent-operations/add-wall.d.ts.map +1 -1
- package/dist/agent-operations/add-wall.js +35 -9
- package/dist/agent-operations/apply-changes.d.ts +7 -1
- package/dist/agent-operations/apply-changes.d.ts.map +1 -1
- package/dist/agent-operations/apply-changes.js +54 -22
- package/dist/agent-operations/apply-outcome.d.ts +6 -0
- package/dist/agent-operations/apply-outcome.d.ts.map +1 -1
- package/dist/agent-operations/apply-outcome.js +23 -8
- package/dist/agent-operations/asset-views.d.ts +75 -0
- package/dist/agent-operations/asset-views.d.ts.map +1 -0
- package/dist/agent-operations/asset-views.js +234 -0
- package/dist/agent-operations/author-scene.d.ts +157 -0
- package/dist/agent-operations/author-scene.d.ts.map +1 -0
- package/dist/agent-operations/author-scene.js +1076 -0
- package/dist/agent-operations/authored-scene-merge.d.ts +4 -0
- package/dist/agent-operations/authored-scene-merge.d.ts.map +1 -0
- package/dist/agent-operations/authored-scene-merge.js +96 -0
- package/dist/agent-operations/batch.d.ts +22 -0
- package/dist/agent-operations/batch.d.ts.map +1 -0
- package/dist/agent-operations/batch.js +104 -0
- package/dist/agent-operations/ceiling-object-observations.d.ts +31 -0
- package/dist/agent-operations/ceiling-object-observations.d.ts.map +1 -0
- package/dist/agent-operations/ceiling-object-observations.js +111 -0
- package/dist/agent-operations/corner-window.d.ts +19 -0
- package/dist/agent-operations/corner-window.d.ts.map +1 -0
- package/dist/agent-operations/corner-window.js +84 -0
- package/dist/agent-operations/create-roof.d.ts +32 -0
- package/dist/agent-operations/create-roof.d.ts.map +1 -0
- package/dist/agent-operations/create-roof.js +304 -0
- package/dist/agent-operations/create-room.d.ts +2 -0
- package/dist/agent-operations/create-room.d.ts.map +1 -1
- package/dist/agent-operations/create-room.js +73 -5
- package/dist/agent-operations/create-stair.d.ts +6 -28
- package/dist/agent-operations/create-stair.d.ts.map +1 -1
- package/dist/agent-operations/create-stair.js +187 -104
- package/dist/agent-operations/design-brief.d.ts +38 -0
- package/dist/agent-operations/design-brief.d.ts.map +1 -0
- package/dist/agent-operations/design-brief.js +300 -0
- package/dist/agent-operations/designs.d.ts +24 -0
- package/dist/agent-operations/designs.d.ts.map +1 -0
- package/dist/agent-operations/designs.js +48 -0
- package/dist/agent-operations/door-clearance.d.ts +16 -1
- package/dist/agent-operations/door-clearance.d.ts.map +1 -1
- package/dist/agent-operations/door-clearance.js +61 -4
- package/dist/agent-operations/duplicate-level.d.ts.map +1 -1
- package/dist/agent-operations/duplicate-level.js +2 -1
- package/dist/agent-operations/find-by-type.d.ts +14 -7
- package/dist/agent-operations/find-by-type.d.ts.map +1 -1
- package/dist/agent-operations/find-by-type.js +266 -43
- package/dist/agent-operations/furnish-room.d.ts +22 -1
- package/dist/agent-operations/furnish-room.d.ts.map +1 -1
- package/dist/agent-operations/furnish-room.js +66 -19
- package/dist/agent-operations/furniture-kind.d.ts +22 -0
- package/dist/agent-operations/furniture-kind.d.ts.map +1 -0
- package/dist/agent-operations/furniture-kind.js +69 -0
- package/dist/agent-operations/get-node.d.ts +5 -2
- package/dist/agent-operations/get-node.d.ts.map +1 -1
- package/dist/agent-operations/get-node.js +82 -10
- package/dist/agent-operations/hosted-services.d.ts +2 -1
- package/dist/agent-operations/hosted-services.d.ts.map +1 -1
- package/dist/agent-operations/index.d.ts +281 -69
- package/dist/agent-operations/index.d.ts.map +1 -1
- package/dist/agent-operations/index.js +66 -5
- package/dist/agent-operations/item-space.d.ts +22 -0
- package/dist/agent-operations/item-space.d.ts.map +1 -0
- package/dist/agent-operations/item-space.js +69 -0
- package/dist/agent-operations/layout-clearance.d.ts +52 -3
- package/dist/agent-operations/layout-clearance.d.ts.map +1 -1
- package/dist/agent-operations/layout-clearance.js +340 -30
- package/dist/agent-operations/level-height-fill.d.ts +12 -0
- package/dist/agent-operations/level-height-fill.d.ts.map +1 -0
- package/dist/agent-operations/level-height-fill.js +59 -0
- package/dist/agent-operations/level-reads.d.ts +5 -1
- package/dist/agent-operations/level-reads.d.ts.map +1 -1
- package/dist/agent-operations/level-reads.js +10 -3
- package/dist/agent-operations/list-levels.d.ts.map +1 -1
- package/dist/agent-operations/list-levels.js +23 -0
- package/dist/agent-operations/material-preset.d.ts.map +1 -1
- package/dist/agent-operations/material-preset.js +3 -9
- package/dist/agent-operations/material-refs.d.ts +7 -1
- package/dist/agent-operations/material-refs.d.ts.map +1 -1
- package/dist/agent-operations/material-refs.js +10 -5
- package/dist/agent-operations/merge-windows.d.ts +6 -0
- package/dist/agent-operations/merge-windows.d.ts.map +1 -0
- package/dist/agent-operations/merge-windows.js +27 -0
- package/dist/agent-operations/move-roofs.d.ts +9 -0
- package/dist/agent-operations/move-roofs.d.ts.map +1 -0
- package/dist/agent-operations/move-roofs.js +29 -0
- package/dist/agent-operations/paint.d.ts +2 -1
- package/dist/agent-operations/paint.d.ts.map +1 -1
- package/dist/agent-operations/paint.js +163 -53
- package/dist/agent-operations/photo-elevation.d.ts +155 -0
- package/dist/agent-operations/photo-elevation.d.ts.map +1 -0
- package/dist/agent-operations/photo-elevation.js +761 -0
- package/dist/agent-operations/place-in-room.d.ts +29 -0
- package/dist/agent-operations/place-in-room.d.ts.map +1 -0
- package/dist/agent-operations/place-in-room.js +403 -0
- package/dist/agent-operations/place-items.d.ts.map +1 -1
- package/dist/agent-operations/place-items.js +15 -2
- package/dist/agent-operations/plan-geometry.d.ts.map +1 -1
- package/dist/agent-operations/plan-geometry.js +3 -0
- package/dist/agent-operations/point-context.d.ts +139 -0
- package/dist/agent-operations/point-context.d.ts.map +1 -0
- package/dist/agent-operations/point-context.js +1 -0
- package/dist/agent-operations/project-files.d.ts +9 -0
- package/dist/agent-operations/project-files.d.ts.map +1 -0
- package/dist/agent-operations/project-files.js +25 -0
- package/dist/agent-operations/record-made.d.ts +18 -0
- package/dist/agent-operations/record-made.d.ts.map +1 -0
- package/dist/agent-operations/record-made.js +28 -0
- package/dist/agent-operations/roof-footprint.d.ts +24 -0
- package/dist/agent-operations/roof-footprint.d.ts.map +1 -0
- package/dist/agent-operations/roof-footprint.js +242 -0
- package/dist/agent-operations/roof-writes.d.ts +20 -0
- package/dist/agent-operations/roof-writes.d.ts.map +1 -0
- package/dist/agent-operations/roof-writes.js +165 -0
- package/dist/agent-operations/room-findings.d.ts +54 -0
- package/dist/agent-operations/room-findings.d.ts.map +1 -0
- package/dist/agent-operations/room-findings.js +143 -0
- package/dist/agent-operations/room-floor-script.d.ts +23 -0
- package/dist/agent-operations/room-floor-script.d.ts.map +1 -0
- package/dist/agent-operations/room-floor-script.js +54 -0
- package/dist/agent-operations/room-structure.d.ts +2 -2
- package/dist/agent-operations/room-structure.d.ts.map +1 -1
- package/dist/agent-operations/scene-checkpoint.d.ts +94 -0
- package/dist/agent-operations/scene-checkpoint.d.ts.map +1 -0
- package/dist/agent-operations/scene-checkpoint.js +176 -0
- package/dist/agent-operations/scene-queries.d.ts +3750 -3319
- package/dist/agent-operations/scene-queries.d.ts.map +1 -1
- package/dist/agent-operations/scene-queries.js +13 -23
- package/dist/agent-operations/scene-review.d.ts +52 -0
- package/dist/agent-operations/scene-review.d.ts.map +1 -0
- package/dist/agent-operations/scene-review.js +106 -0
- package/dist/agent-operations/scene-view.d.ts +82 -15
- package/dist/agent-operations/scene-view.d.ts.map +1 -1
- package/dist/agent-operations/scene-view.js +408 -51
- package/dist/agent-operations/search-assets.d.ts +2 -2
- package/dist/agent-operations/search-assets.d.ts.map +1 -1
- package/dist/agent-operations/search-assets.js +4 -3
- package/dist/agent-operations/search-materials.d.ts +9 -3
- package/dist/agent-operations/search-materials.d.ts.map +1 -1
- package/dist/agent-operations/search-materials.js +83 -29
- package/dist/agent-operations/set-checkpoint.d.ts +9 -0
- package/dist/agent-operations/set-checkpoint.d.ts.map +1 -0
- package/dist/agent-operations/set-checkpoint.js +31 -0
- package/dist/agent-operations/set-ground-level.d.ts +12 -0
- package/dist/agent-operations/set-ground-level.d.ts.map +1 -0
- package/dist/agent-operations/set-ground-level.js +61 -0
- package/dist/agent-operations/site.d.ts +21 -0
- package/dist/agent-operations/site.d.ts.map +1 -0
- package/dist/agent-operations/site.js +123 -0
- package/dist/agent-operations/types.d.ts +66 -7
- package/dist/agent-operations/types.d.ts.map +1 -1
- package/dist/agent-operations/verify-scene.d.ts +39 -5
- package/dist/agent-operations/verify-scene.d.ts.map +1 -1
- package/dist/agent-operations/verify-scene.js +223 -44
- package/dist/agent-operations/wall-face-script.d.ts +28 -0
- package/dist/agent-operations/wall-face-script.d.ts.map +1 -0
- package/dist/agent-operations/wall-face-script.js +62 -0
- package/dist/agent-operations/wall-object-observations.d.ts +41 -0
- package/dist/agent-operations/wall-object-observations.d.ts.map +1 -0
- package/dist/agent-operations/wall-object-observations.js +249 -0
- package/dist/agent-operations/wall-opening.d.ts +23 -23
- package/dist/agent-operations/wall-opening.d.ts.map +1 -1
- package/dist/agent-operations/wall-skirting.d.ts +24 -0
- package/dist/agent-operations/wall-skirting.d.ts.map +1 -0
- package/dist/agent-operations/wall-skirting.js +85 -0
- package/dist/agent-tools/add-object.d.ts +11 -7
- package/dist/agent-tools/add-object.d.ts.map +1 -1
- package/dist/agent-tools/add-object.js +17 -11
- package/dist/agent-tools/assets.d.ts +8 -0
- package/dist/agent-tools/assets.d.ts.map +1 -1
- package/dist/agent-tools/assets.js +13 -1
- package/dist/agent-tools/author-scene.d.ts +651 -0
- package/dist/agent-tools/author-scene.d.ts.map +1 -0
- package/dist/agent-tools/author-scene.js +252 -0
- package/dist/agent-tools/batch.d.ts +25 -0
- package/dist/agent-tools/batch.d.ts.map +1 -0
- package/dist/agent-tools/batch.js +61 -0
- package/dist/agent-tools/checkpoints.d.ts +13 -0
- package/dist/agent-tools/checkpoints.d.ts.map +1 -0
- package/dist/agent-tools/checkpoints.js +16 -0
- package/dist/agent-tools/clear-scene.d.ts.map +1 -1
- package/dist/agent-tools/collections.d.ts +6 -6
- package/dist/agent-tools/collections.d.ts.map +1 -1
- package/dist/agent-tools/columns.d.ts +18 -18
- package/dist/agent-tools/columns.js +2 -2
- package/dist/agent-tools/corner-window.d.ts +46 -0
- package/dist/agent-tools/corner-window.d.ts.map +1 -0
- package/dist/agent-tools/corner-window.js +47 -0
- package/dist/agent-tools/create-room.d.ts +26 -25
- package/dist/agent-tools/create-room.d.ts.map +1 -1
- package/dist/agent-tools/create-room.js +11 -4
- package/dist/agent-tools/design-brief.d.ts +408 -0
- package/dist/agent-tools/design-brief.d.ts.map +1 -0
- package/dist/agent-tools/design-brief.js +149 -0
- package/dist/agent-tools/designs.d.ts +34 -0
- package/dist/agent-tools/designs.d.ts.map +1 -0
- package/dist/agent-tools/designs.js +50 -0
- package/dist/agent-tools/fences.d.ts +28 -0
- package/dist/agent-tools/fences.d.ts.map +1 -0
- package/dist/agent-tools/fences.js +31 -0
- package/dist/agent-tools/find-by-type.d.ts +8 -1
- package/dist/agent-tools/find-by-type.d.ts.map +1 -1
- package/dist/agent-tools/find-by-type.js +23 -2
- package/dist/agent-tools/furnish-room.d.ts +10 -8
- package/dist/agent-tools/furnish-room.d.ts.map +1 -1
- package/dist/agent-tools/furnish-room.js +3 -1
- package/dist/agent-tools/hosted-services.d.ts +177 -141
- package/dist/agent-tools/hosted-services.d.ts.map +1 -1
- package/dist/agent-tools/hosted-services.js +47 -14
- package/dist/agent-tools/index.d.ts +894 -215
- package/dist/agent-tools/index.d.ts.map +1 -1
- package/dist/agent-tools/index.js +47 -3
- package/dist/agent-tools/levels.d.ts +11 -3
- package/dist/agent-tools/levels.d.ts.map +1 -1
- package/dist/agent-tools/levels.js +16 -5
- package/dist/agent-tools/measurement.d.ts +38 -20
- package/dist/agent-tools/measurement.d.ts.map +1 -1
- package/dist/agent-tools/measurement.js +117 -67
- package/dist/agent-tools/merge-windows.d.ts +10 -0
- package/dist/agent-tools/merge-windows.d.ts.map +1 -0
- package/dist/agent-tools/merge-windows.js +12 -0
- package/dist/agent-tools/nodes.d.ts.map +1 -1
- package/dist/agent-tools/nodes.js +1 -1
- package/dist/agent-tools/notation-inventory.d.ts +16 -0
- package/dist/agent-tools/notation-inventory.d.ts.map +1 -0
- package/dist/agent-tools/notation-inventory.js +105 -0
- package/dist/agent-tools/paint.d.ts +5 -5
- package/dist/agent-tools/paint.d.ts.map +1 -1
- package/dist/agent-tools/paint.js +1 -1
- package/dist/agent-tools/photo-elevation.d.ts +32 -0
- package/dist/agent-tools/photo-elevation.d.ts.map +1 -0
- package/dist/agent-tools/photo-elevation.js +73 -0
- package/dist/agent-tools/place-in-room.d.ts +35 -0
- package/dist/agent-tools/place-in-room.d.ts.map +1 -0
- package/dist/agent-tools/place-in-room.js +61 -0
- package/dist/agent-tools/place-items.d.ts +1 -1
- package/dist/agent-tools/place-items.js +2 -2
- package/dist/agent-tools/project-files.d.ts +189 -0
- package/dist/agent-tools/project-files.d.ts.map +1 -0
- package/dist/agent-tools/project-files.js +99 -0
- package/dist/agent-tools/refusal.d.ts.map +1 -1
- package/dist/agent-tools/retired.d.ts +21 -0
- package/dist/agent-tools/retired.d.ts.map +1 -0
- package/dist/agent-tools/retired.js +29 -0
- package/dist/agent-tools/roofs.d.ts +100 -0
- package/dist/agent-tools/roofs.d.ts.map +1 -0
- package/dist/agent-tools/roofs.js +96 -0
- package/dist/agent-tools/room-structure.d.ts +46 -38
- package/dist/agent-tools/room-structure.d.ts.map +1 -1
- package/dist/agent-tools/room-structure.js +30 -27
- package/dist/agent-tools/search-materials.d.ts +22 -3
- package/dist/agent-tools/search-materials.d.ts.map +1 -1
- package/dist/agent-tools/search-materials.js +13 -14
- package/dist/agent-tools/site.d.ts +27 -0
- package/dist/agent-tools/site.d.ts.map +1 -0
- package/dist/agent-tools/site.js +40 -0
- package/dist/agent-tools/sources.d.ts +12 -0
- package/dist/agent-tools/sources.d.ts.map +1 -0
- package/dist/agent-tools/sources.js +11 -0
- package/dist/agent-tools/stairs.d.ts +48 -28
- package/dist/agent-tools/stairs.d.ts.map +1 -1
- package/dist/agent-tools/stairs.js +65 -22
- package/dist/agent-tools/verify-scene.d.ts.map +1 -1
- package/dist/agent-tools/verify-scene.js +1 -1
- package/dist/agent-tools/view-scene.d.ts +50 -12
- package/dist/agent-tools/view-scene.d.ts.map +1 -1
- package/dist/agent-tools/view-scene.js +74 -31
- package/dist/agent-tools/wall-openings.d.ts +77 -73
- package/dist/agent-tools/wall-openings.d.ts.map +1 -1
- package/dist/agent-tools/wall-openings.js +9 -5
- package/dist/agent-tools/walls.d.ts +4 -4
- package/dist/agent-tools/walls.d.ts.map +1 -1
- package/dist/agent-tools/walls.js +7 -2
- package/dist/building/__fixtures__/wall-opening-cases.d.ts +454 -250
- package/dist/building/__fixtures__/wall-opening-cases.d.ts.map +1 -1
- package/dist/building/__fixtures__/wall-opening-cases.js +62 -2
- package/dist/building/corner-window.d.ts +56 -0
- package/dist/building/corner-window.d.ts.map +1 -0
- package/dist/building/corner-window.js +179 -0
- package/dist/building/ground-level.d.ts +26 -0
- package/dist/building/ground-level.d.ts.map +1 -0
- package/dist/building/ground-level.js +58 -0
- package/dist/building/index.d.ts +5 -0
- package/dist/building/index.d.ts.map +1 -1
- package/dist/building/index.js +5 -0
- package/dist/building/level-duplication.d.ts +7472 -6613
- package/dist/building/level-duplication.d.ts.map +1 -1
- package/dist/building/level-duplication.js +18 -4
- package/dist/building/level-insertion.d.ts +55 -0
- package/dist/building/level-insertion.d.ts.map +1 -0
- package/dist/building/level-insertion.js +35 -0
- package/dist/building/merge-windows.d.ts +58 -0
- package/dist/building/merge-windows.d.ts.map +1 -0
- package/dist/building/merge-windows.js +189 -0
- package/dist/building/opening-style-presets.d.ts +2 -2
- package/dist/building/opening-style-presets.d.ts.map +1 -1
- package/dist/building/photo-elevation.d.ts +125 -0
- package/dist/building/photo-elevation.d.ts.map +1 -0
- package/dist/building/photo-elevation.js +404 -0
- package/dist/building/wall-gaps.d.ts +13 -0
- package/dist/building/wall-gaps.d.ts.map +1 -0
- package/dist/building/wall-gaps.js +158 -0
- package/dist/building/wall-openings.d.ts +154 -119
- package/dist/building/wall-openings.d.ts.map +1 -1
- package/dist/building/wall-openings.js +37 -9
- package/dist/capture/schema.d.ts +22 -22
- package/dist/capture/source.d.ts.map +1 -1
- package/dist/capture/source.js +1 -1
- package/dist/commands/structure/create-zone.d.ts +12 -1
- package/dist/commands/structure/create-zone.d.ts.map +1 -1
- package/dist/commands/structure/create-zone.js +49 -0
- package/dist/commands/structure/divide-zone.d.ts +3 -3
- package/dist/commands/structure/index.d.ts +1 -1
- package/dist/commands/structure/index.d.ts.map +1 -1
- package/dist/commands/structure/index.js +1 -1
- package/dist/commands/structure/set-floor-foundation.d.ts +6 -6
- package/dist/commands/structure/set-zone-intent.d.ts +4 -0
- package/dist/commands/structure/set-zone-intent.d.ts.map +1 -1
- package/dist/commands/structure/set-zone-intent.js +19 -0
- package/dist/commands/structure/shared.d.ts +3642 -3213
- package/dist/commands/structure/shared.d.ts.map +1 -1
- package/dist/commands/structure/zone-wall-merge.d.ts +4149 -3334
- package/dist/commands/structure/zone-wall-merge.d.ts.map +1 -1
- package/dist/contracts/reference-inventory.d.ts.map +1 -1
- package/dist/contracts/reference-inventory.js +106 -26
- package/dist/events/bus.d.ts +22 -3
- package/dist/events/bus.d.ts.map +1 -1
- package/dist/events/capture-sessions.d.ts +5 -0
- package/dist/events/capture-sessions.d.ts.map +1 -0
- package/dist/events/capture-sessions.js +31 -0
- package/dist/hooks/scene-registry/scene-registry.d.ts.map +1 -1
- package/dist/hooks/spatial-grid/spatial-grid-manager.d.ts +1 -2
- package/dist/hooks/spatial-grid/spatial-grid-manager.d.ts.map +1 -1
- package/dist/hooks/spatial-grid/spatial-grid-manager.js +4 -6
- package/dist/hooks/spatial-grid/spatial-grid-sync.d.ts +3608 -3179
- package/dist/hooks/spatial-grid/spatial-grid-sync.d.ts.map +1 -1
- package/dist/hooks/spatial-grid/spatial-grid.d.ts.map +1 -1
- package/dist/hooks/spatial-grid/support-host-patch.d.ts.map +1 -1
- package/dist/hooks/spatial-grid/support-host-patch.js +11 -2
- package/dist/hooks/spatial-grid/use-spatial-query.d.ts +3 -3
- package/dist/hooks/spatial-grid/wall-spatial-grid.d.ts.map +1 -1
- package/dist/index.d.ts +37 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +36 -9
- package/dist/lib/__fixtures__/mezzanine.d.ts +11800 -10132
- package/dist/lib/__fixtures__/mezzanine.d.ts.map +1 -1
- package/dist/lib/absorb-wall-separators.d.ts +3642 -3213
- package/dist/lib/absorb-wall-separators.d.ts.map +1 -1
- package/dist/lib/angle-accumulator.d.ts.map +1 -1
- package/dist/lib/artifact-store.d.ts.map +1 -1
- package/dist/lib/below-grade-footprints.d.ts +65 -0
- package/dist/lib/below-grade-footprints.d.ts.map +1 -0
- package/dist/lib/below-grade-footprints.js +181 -0
- package/dist/lib/building-footprint.d.ts +33 -0
- package/dist/lib/building-footprint.d.ts.map +1 -0
- package/dist/lib/building-footprint.js +89 -0
- package/dist/lib/corner-pair.d.ts +1129 -0
- package/dist/lib/corner-pair.d.ts.map +1 -0
- package/dist/lib/corner-pair.js +130 -0
- package/dist/lib/corner-snap.d.ts +54 -0
- package/dist/lib/corner-snap.d.ts.map +1 -0
- package/dist/lib/corner-snap.js +125 -0
- package/dist/lib/critically-damped.d.ts +11 -0
- package/dist/lib/critically-damped.d.ts.map +1 -0
- package/dist/lib/critically-damped.js +14 -0
- package/dist/lib/deepest-drawn.d.ts +18 -0
- package/dist/lib/deepest-drawn.d.ts.map +1 -0
- package/dist/lib/deepest-drawn.js +65 -0
- package/dist/lib/door-operation.d.ts +1 -1
- package/dist/lib/exterior-wall-loops.d.ts +17 -0
- package/dist/lib/exterior-wall-loops.d.ts.map +1 -0
- package/dist/lib/exterior-wall-loops.js +334 -0
- package/dist/lib/finish-script.d.ts +61 -0
- package/dist/lib/finish-script.d.ts.map +1 -0
- package/dist/lib/finish-script.js +86 -0
- package/dist/lib/floor-intent-changes.d.ts.map +1 -1
- package/dist/lib/floor-intent-changes.js +4 -4
- package/dist/lib/floor-plate-paint.d.ts +3 -1
- package/dist/lib/floor-plate-paint.d.ts.map +1 -1
- package/dist/lib/floor-plate-paint.js +24 -4
- package/dist/lib/floor-plates.d.ts +50 -50
- package/dist/lib/floor-script.d.ts +24 -0
- package/dist/lib/floor-script.d.ts.map +1 -0
- package/dist/lib/floor-script.js +51 -0
- package/dist/lib/foundation-construction.d.ts +73 -0
- package/dist/lib/foundation-construction.d.ts.map +1 -0
- package/dist/lib/foundation-construction.js +242 -0
- package/dist/lib/foundation-standard.d.ts +30 -0
- package/dist/lib/foundation-standard.d.ts.map +1 -0
- package/dist/lib/foundation-standard.js +30 -0
- package/dist/lib/foundation-wall.d.ts +36 -0
- package/dist/lib/foundation-wall.d.ts.map +1 -0
- package/dist/lib/foundation-wall.js +66 -0
- package/dist/lib/generic-foundation.d.ts +40 -0
- package/dist/lib/generic-foundation.d.ts.map +1 -0
- package/dist/lib/generic-foundation.js +200 -0
- package/dist/lib/geometry-script-node.d.ts +32 -3
- package/dist/lib/geometry-script-node.d.ts.map +1 -1
- package/dist/lib/geometry-script-node.js +26 -0
- package/dist/lib/grade-standing.d.ts +38 -0
- package/dist/lib/grade-standing.d.ts.map +1 -0
- package/dist/lib/grade-standing.js +137 -0
- package/dist/lib/ground-level.d.ts +20 -0
- package/dist/lib/ground-level.d.ts.map +1 -0
- package/dist/lib/ground-level.js +49 -0
- package/dist/lib/ground-over-part.d.ts +13 -0
- package/dist/lib/ground-over-part.d.ts.map +1 -0
- package/dist/lib/ground-over-part.js +94 -0
- package/dist/lib/ground-seat.d.ts +47 -0
- package/dist/lib/ground-seat.d.ts.map +1 -0
- package/dist/lib/ground-seat.js +61 -0
- package/dist/lib/ground-window.d.ts +39 -0
- package/dist/lib/ground-window.d.ts.map +1 -0
- package/dist/lib/ground-window.js +147 -0
- package/dist/lib/opening-floor-datum.d.ts.map +1 -1
- package/dist/lib/opening-floor-datum.js +2 -3
- package/dist/lib/own-floor-intent.d.ts.map +1 -1
- package/dist/lib/own-floor-intent.js +4 -4
- package/dist/lib/plate-surface.d.ts.map +1 -1
- package/dist/lib/plate-surface.js +3 -1
- package/dist/lib/point-ask.d.ts +9 -0
- package/dist/lib/point-ask.d.ts.map +1 -0
- package/dist/lib/point-ask.js +36 -0
- package/dist/lib/room-drawn-floor.d.ts +1 -1
- package/dist/lib/room-drawn-floor.d.ts.map +1 -1
- package/dist/lib/room-floor-feasibility.d.ts.map +1 -1
- package/dist/lib/room-floor-feasibility.js +3 -3
- package/dist/lib/room-graph.d.ts.map +1 -1
- package/dist/lib/room-graph.js +2 -0
- package/dist/lib/room-name.d.ts +2 -0
- package/dist/lib/room-name.d.ts.map +1 -1
- package/dist/lib/room-name.js +2 -0
- package/dist/lib/room-topology-index.d.ts.map +1 -1
- package/dist/lib/room-topology-index.js +1 -1
- package/dist/lib/room-zone-adoption.d.ts.map +1 -1
- package/dist/lib/script-inputs-key.d.ts +3 -0
- package/dist/lib/script-inputs-key.d.ts.map +1 -0
- package/dist/lib/script-inputs-key.js +13 -0
- package/dist/lib/setback-envelope.d.ts +95 -5
- package/dist/lib/setback-envelope.d.ts.map +1 -1
- package/dist/lib/setback-envelope.js +351 -35
- package/dist/lib/site-flatwork.d.ts +11 -0
- package/dist/lib/site-flatwork.d.ts.map +1 -0
- package/dist/lib/site-flatwork.js +11 -0
- package/dist/lib/site-ground-height.d.ts +13 -0
- package/dist/lib/site-ground-height.d.ts.map +1 -0
- package/dist/lib/site-ground-height.js +16 -0
- package/dist/lib/site-placement.d.ts +362 -0
- package/dist/lib/site-placement.d.ts.map +1 -0
- package/dist/lib/site-placement.js +942 -0
- package/dist/lib/snap-ease.d.ts +20 -0
- package/dist/lib/snap-ease.d.ts.map +1 -0
- package/dist/lib/snap-ease.js +50 -0
- package/dist/lib/structure-kernel.d.ts +1 -1
- package/dist/lib/structure-kernel.d.ts.map +1 -1
- package/dist/lib/structure-kernel.js +2 -0
- package/dist/lib/surface-support-references.d.ts +4 -0
- package/dist/lib/surface-support-references.d.ts.map +1 -0
- package/dist/lib/surface-support-references.js +19 -0
- package/dist/lib/terrain-support-query.d.ts +10 -0
- package/dist/lib/terrain-support-query.d.ts.map +1 -1
- package/dist/lib/terrain-support-query.js +1 -1
- package/dist/lib/wall-face-script.d.ts +66 -0
- package/dist/lib/wall-face-script.d.ts.map +1 -0
- package/dist/lib/wall-face-script.js +235 -0
- package/dist/lib/zone-colors.d.ts +1 -1
- package/dist/lib/zone-colors.d.ts.map +1 -1
- package/dist/lib/zone-quantities.d.ts.map +1 -1
- package/dist/lib/zone-quantities.js +4 -5
- package/dist/material-kinds.d.ts +9 -0
- package/dist/material-kinds.d.ts.map +1 -0
- package/dist/material-kinds.js +30 -0
- package/dist/material-library.d.ts +4 -4
- package/dist/material-library.d.ts.map +1 -1
- package/dist/material-library.js +72 -26
- package/dist/node-slots/index.d.ts +1 -0
- package/dist/node-slots/index.d.ts.map +1 -1
- package/dist/node-slots/index.js +7 -1
- package/dist/node-slots/roof.d.ts +5 -0
- package/dist/node-slots/roof.d.ts.map +1 -0
- package/dist/node-slots/roof.js +12 -0
- package/dist/node-slots/stair.d.ts +2 -0
- package/dist/node-slots/stair.d.ts.map +1 -1
- package/dist/node-slots/stair.js +6 -2
- package/dist/procedural-items/design-placement.d.ts.map +1 -1
- package/dist/procedural-items/design.d.ts +19 -19
- package/dist/procedural-items/fixtures.d.ts +297 -297
- package/dist/procedural-items/fixtures.d.ts.map +1 -1
- package/dist/procedural-items/integration.d.ts +106 -106
- package/dist/procedural-items/joints.d.ts +4 -4
- package/dist/procedural-items/library-colors.d.ts +22 -22
- package/dist/procedural-items/library-colors.d.ts.map +1 -1
- package/dist/procedural-items/motion-controller.d.ts.map +1 -1
- package/dist/procedural-items/node.d.ts +291 -291
- package/dist/procedural-items/query.d.ts +1 -1
- package/dist/procedural-items/query.d.ts.map +1 -1
- package/dist/procedural-items/recipe.d.ts +11 -11
- package/dist/procedural-items/recipe.d.ts.map +1 -1
- package/dist/procedural-items/section.d.ts.map +1 -1
- package/dist/registry/index.d.ts +1 -1
- package/dist/registry/index.d.ts.map +1 -1
- package/dist/registry/scene-api.d.ts +1 -0
- package/dist/registry/scene-api.d.ts.map +1 -1
- package/dist/registry/scene-api.js +3 -0
- package/dist/registry/subtree.d.ts.map +1 -1
- package/dist/registry/subtree.js +2 -0
- package/dist/registry/types.d.ts +120 -1
- package/dist/registry/types.d.ts.map +1 -1
- package/dist/schema/assembly.d.ts +41 -41
- package/dist/schema/asset-url.d.ts +1 -1
- package/dist/schema/asset-url.d.ts.map +1 -1
- package/dist/schema/base.d.ts +9 -9
- package/dist/schema/base.d.ts.map +1 -1
- package/dist/schema/camera.d.ts +1 -1
- package/dist/schema/collection-templates.d.ts +20 -20
- package/dist/schema/collection-templates.d.ts.map +1 -1
- package/dist/schema/geometry-metadata.d.ts +7 -7
- package/dist/schema/geometry-metadata.d.ts.map +1 -1
- package/dist/schema/geometry-source.d.ts +26 -16
- package/dist/schema/geometry-source.d.ts.map +1 -1
- package/dist/schema/geometry-source.js +14 -0
- package/dist/schema/index.d.ts +10 -7
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +10 -7
- package/dist/schema/material.d.ts +33 -33
- package/dist/schema/nodes/barrel-roof.d.ts +3 -0
- package/dist/schema/nodes/barrel-roof.d.ts.map +1 -0
- package/dist/schema/nodes/barrel-roof.js +11 -0
- package/dist/schema/nodes/block.d.ts +8 -8
- package/dist/schema/nodes/box-vent.d.ts +13 -13
- package/dist/schema/nodes/building.d.ts +9 -8
- package/dist/schema/nodes/building.d.ts.map +1 -1
- package/dist/schema/nodes/building.js +2 -0
- package/dist/schema/nodes/cabinet.d.ts +130 -129
- package/dist/schema/nodes/cabinet.d.ts.map +1 -1
- package/dist/schema/nodes/cabinet.js +1 -1
- package/dist/schema/nodes/ceiling.d.ts +15 -15
- package/dist/schema/nodes/chimney.d.ts +23 -23
- package/dist/schema/nodes/column.d.ts +207 -199
- package/dist/schema/nodes/column.d.ts.map +1 -1
- package/dist/schema/nodes/column.js +2 -0
- package/dist/schema/nodes/construction-dimension.d.ts +34 -34
- package/dist/schema/nodes/cupola.d.ts +15 -15
- package/dist/schema/nodes/curtain-wall.d.ts +21 -20
- package/dist/schema/nodes/curtain-wall.d.ts.map +1 -1
- package/dist/schema/nodes/curtain-wall.js +23 -0
- package/dist/schema/nodes/door.d.ts +50 -43
- package/dist/schema/nodes/door.d.ts.map +1 -1
- package/dist/schema/nodes/door.js +19 -0
- package/dist/schema/nodes/dormer.d.ts +37 -36
- package/dist/schema/nodes/dormer.d.ts.map +1 -1
- package/dist/schema/nodes/downspout.d.ts +17 -17
- package/dist/schema/nodes/duct-fitting.d.ts +24 -24
- package/dist/schema/nodes/duct-segment.d.ts +14 -14
- package/dist/schema/nodes/duct-terminal.d.ts +12 -12
- package/dist/schema/nodes/elevator.d.ts +15 -15
- package/dist/schema/nodes/eyebrow-vent.d.ts +13 -13
- package/dist/schema/nodes/fence-feature.d.ts +37 -37
- package/dist/schema/nodes/fence-types.d.ts +32 -0
- package/dist/schema/nodes/fence-types.d.ts.map +1 -0
- package/dist/schema/nodes/fence-types.js +22 -0
- package/dist/schema/nodes/fence.d.ts +43 -72
- package/dist/schema/nodes/fence.d.ts.map +1 -1
- package/dist/schema/nodes/fence.js +4 -20
- package/dist/schema/nodes/floor-opening.d.ts +8 -8
- package/dist/schema/nodes/guide.d.ts +8 -8
- package/dist/schema/nodes/gutter.d.ts +14 -14
- package/dist/schema/nodes/gutter.d.ts.map +1 -1
- package/dist/schema/nodes/gutter.js +6 -5
- package/dist/schema/nodes/hvac-equipment.d.ts +13 -13
- package/dist/schema/nodes/imported-mesh.d.ts +8 -8
- package/dist/schema/nodes/item.d.ts +30 -25
- package/dist/schema/nodes/item.d.ts.map +1 -1
- package/dist/schema/nodes/lean-to-extension.d.ts +36 -36
- package/dist/schema/nodes/level.d.ts +9 -9
- package/dist/schema/nodes/lineset.d.ts +8 -8
- package/dist/schema/nodes/liquid-line.d.ts +8 -8
- package/dist/schema/nodes/measurement.d.ts +8 -8
- package/dist/schema/nodes/opening-types.d.ts +13 -13
- package/dist/schema/nodes/opening-types.d.ts.map +1 -1
- package/dist/schema/nodes/pipe-fitting.d.ts +15 -15
- package/dist/schema/nodes/pipe-segment.d.ts +11 -11
- package/dist/schema/nodes/pipe-trap.d.ts +9 -9
- package/dist/schema/nodes/ridge-vent.d.ts +14 -14
- package/dist/schema/nodes/ridge-vent.d.ts.map +1 -1
- package/dist/schema/nodes/ridge-vent.js +3 -1
- package/dist/schema/nodes/roof-glazing-config.d.ts +90 -0
- package/dist/schema/nodes/roof-glazing-config.d.ts.map +1 -0
- package/dist/schema/nodes/roof-glazing-config.js +34 -0
- package/dist/schema/nodes/roof-glazing.d.ts +57 -0
- package/dist/schema/nodes/roof-glazing.d.ts.map +1 -0
- package/dist/schema/nodes/roof-glazing.js +514 -0
- package/dist/schema/nodes/roof-segment-resize.d.ts +4 -0
- package/dist/schema/nodes/roof-segment-resize.d.ts.map +1 -0
- package/dist/schema/nodes/roof-segment-resize.js +21 -0
- package/dist/schema/nodes/roof-segment-shape.d.ts +5 -0
- package/dist/schema/nodes/roof-segment-shape.d.ts.map +1 -1
- package/dist/schema/nodes/roof-segment-shape.js +44 -0
- package/dist/schema/nodes/roof-segment-walls.d.ts +1 -1
- package/dist/schema/nodes/roof-segment-walls.d.ts.map +1 -1
- package/dist/schema/nodes/roof-segment-walls.js +24 -0
- package/dist/schema/nodes/roof-segment.d.ts +153 -46
- package/dist/schema/nodes/roof-segment.d.ts.map +1 -1
- package/dist/schema/nodes/roof-segment.js +91 -20
- package/dist/schema/nodes/roof-types.d.ts +14 -0
- package/dist/schema/nodes/roof-types.d.ts.map +1 -0
- package/dist/schema/nodes/roof-types.js +14 -0
- package/dist/schema/nodes/roof.d.ts +49 -49
- package/dist/schema/nodes/scan.d.ts +8 -8
- package/dist/schema/nodes/separator.d.ts +8 -8
- package/dist/schema/nodes/shelf.d.ts +16 -16
- package/dist/schema/nodes/site-facts.d.ts +64 -0
- package/dist/schema/nodes/site-facts.d.ts.map +1 -0
- package/dist/schema/nodes/site-facts.js +73 -0
- package/dist/schema/nodes/site.d.ts +105 -63
- package/dist/schema/nodes/site.d.ts.map +1 -1
- package/dist/schema/nodes/site.js +7 -70
- package/dist/schema/nodes/skylight.d.ts +41 -41
- package/dist/schema/nodes/skylight.d.ts.map +1 -1
- package/dist/schema/nodes/slab.d.ts +21 -21
- package/dist/schema/nodes/solar-panel.d.ts +21 -21
- package/dist/schema/nodes/spawn.d.ts +8 -8
- package/dist/schema/nodes/stair-construction.d.ts +3 -3
- package/dist/schema/nodes/stair-defaults.d.ts +16 -0
- package/dist/schema/nodes/stair-defaults.d.ts.map +1 -0
- package/dist/schema/nodes/stair-defaults.js +15 -0
- package/dist/schema/nodes/stair-segment.d.ts +22 -22
- package/dist/schema/nodes/stair-types.d.ts +29 -0
- package/dist/schema/nodes/stair-types.d.ts.map +1 -0
- package/dist/schema/nodes/stair-types.js +23 -0
- package/dist/schema/nodes/stair.d.ts +51 -75
- package/dist/schema/nodes/stair.d.ts.map +1 -1
- package/dist/schema/nodes/stair.js +6 -20
- package/dist/schema/nodes/structural-grid.d.ts +8 -8
- package/dist/schema/nodes/surface-hole-metadata.d.ts +2 -2
- package/dist/schema/nodes/turbine-vent.d.ts +13 -13
- package/dist/schema/nodes/unit.d.ts +10 -10
- package/dist/schema/nodes/unit.d.ts.map +1 -1
- package/dist/schema/nodes/wall.d.ts +479 -146
- package/dist/schema/nodes/wall.d.ts.map +1 -1
- package/dist/schema/nodes/wall.js +19 -0
- package/dist/schema/nodes/window.d.ts +55 -39
- package/dist/schema/nodes/window.d.ts.map +1 -1
- package/dist/schema/nodes/window.js +10 -0
- package/dist/schema/nodes/zone.d.ts +231 -12
- package/dist/schema/nodes/zone.d.ts.map +1 -1
- package/dist/schema/nodes/zone.js +10 -0
- package/dist/schema/provenance.d.ts +21 -21
- package/dist/schema/scene-material.d.ts +5 -5
- package/dist/schema/site-presentation.d.ts +100 -0
- package/dist/schema/site-presentation.d.ts.map +1 -0
- package/dist/schema/site-presentation.js +83 -0
- package/dist/schema/types.d.ts +1954 -1414
- package/dist/schema/types.d.ts.map +1 -1
- package/dist/services/__fixtures__/wall-plane-top-boundary-repro.d.ts.map +1 -1
- package/dist/services/index.d.ts +5 -1
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +5 -1
- package/dist/services/level-height.d.ts.map +1 -1
- package/dist/services/level-height.js +7 -3
- package/dist/services/port-connectivity.d.ts +4 -0
- package/dist/services/port-connectivity.d.ts.map +1 -1
- package/dist/services/port-connectivity.js +35 -0
- package/dist/services/project-file-sink.d.ts +9 -0
- package/dist/services/project-file-sink.d.ts.map +1 -0
- package/dist/services/project-file-sink.js +13 -0
- package/dist/services/roof-bearing.d.ts +62 -0
- package/dist/services/roof-bearing.d.ts.map +1 -0
- package/dist/services/roof-bearing.js +234 -0
- package/dist/services/roof-level.d.ts +121 -0
- package/dist/services/roof-level.d.ts.map +1 -0
- package/dist/services/roof-level.js +280 -0
- package/dist/services/roof-move.d.ts +83 -0
- package/dist/services/roof-move.d.ts.map +1 -0
- package/dist/services/roof-move.js +316 -0
- package/dist/services/stair-surface-snap.d.ts +14 -0
- package/dist/services/stair-surface-snap.d.ts.map +1 -0
- package/dist/services/stair-surface-snap.js +116 -0
- package/dist/services/storey-datum.d.ts +12 -0
- package/dist/services/storey-datum.d.ts.map +1 -0
- package/dist/services/storey-datum.js +18 -0
- package/dist/services/storey.d.ts +51 -5
- package/dist/services/storey.d.ts.map +1 -1
- package/dist/services/storey.js +125 -8
- package/dist/solar-panel-presets.d.ts +2 -2
- package/dist/store/actions/node-actions.d.ts +3613 -3182
- package/dist/store/actions/node-actions.d.ts.map +1 -1
- package/dist/store/actions/node-actions.js +46 -1
- package/dist/store/derived-node-guard.d.ts.map +1 -1
- package/dist/store/history-control.d.ts +39 -0
- package/dist/store/history-control.d.ts.map +1 -1
- package/dist/store/history-control.js +84 -4
- package/dist/store/scene-annotations.d.ts +7267 -6409
- package/dist/store/scene-annotations.d.ts.map +1 -1
- package/dist/store/scene-preview.d.ts +16 -0
- package/dist/store/scene-preview.d.ts.map +1 -0
- package/dist/store/scene-preview.js +144 -0
- package/dist/store/use-live-node-overrides.d.ts.map +1 -1
- package/dist/store/use-live-terrain.d.ts.map +1 -1
- package/dist/store/use-live-transforms.d.ts.map +1 -1
- package/dist/store/use-scene.d.ts.map +1 -1
- package/dist/store/use-scene.js +37 -4
- package/dist/systems/elevator/elevator-dispatch.js +1 -1
- package/dist/systems/fence/fence-features.d.ts.map +1 -1
- package/dist/systems/owned-floor-openings.d.ts.map +1 -1
- package/dist/systems/owned-floor-openings.js +24 -3
- package/dist/systems/roof/roof-elevation-system.d.ts.map +1 -1
- package/dist/systems/roof/roof-elevation-system.js +9 -3
- package/dist/systems/roof/roof-elevation.d.ts +5 -0
- package/dist/systems/roof/roof-elevation.d.ts.map +1 -1
- package/dist/systems/roof/roof-elevation.js +91 -62
- package/dist/systems/slab/__fixtures__/floor-step.d.ts +4623 -3516
- package/dist/systems/slab/__fixtures__/floor-step.d.ts.map +1 -1
- package/dist/systems/slab/__fixtures__/raised-room.d.ts +5149 -4076
- package/dist/systems/slab/__fixtures__/raised-room.d.ts.map +1 -1
- package/dist/systems/slab/slab-support.d.ts +6 -3
- package/dist/systems/slab/slab-support.d.ts.map +1 -1
- package/dist/systems/slab/slab-support.js +78 -10
- package/dist/systems/stair/stair-detail-budget.d.ts +2 -2
- package/dist/systems/stair/stair-detail-budget.d.ts.map +1 -1
- package/dist/systems/stair/stair-footprint.d.ts +6 -0
- package/dist/systems/stair/stair-footprint.d.ts.map +1 -1
- package/dist/systems/stair/stair-footprint.js +27 -14
- package/dist/systems/stair/stair-layout.d.ts +2 -2
- package/dist/systems/stair/stair-opening-preview.d.ts +3643 -3214
- package/dist/systems/stair/stair-opening-preview.d.ts.map +1 -1
- package/dist/systems/stair/stair-presets.d.ts +73 -65
- package/dist/systems/stair/stair-presets.d.ts.map +1 -1
- package/dist/systems/stair/stair-presets.js +16 -9
- package/dist/systems/stair/stair-rail-path.d.ts +1 -1
- package/dist/systems/stair/stair-rise-query.d.ts +16 -0
- package/dist/systems/stair/stair-rise-query.d.ts.map +1 -1
- package/dist/systems/stair/stair-rise-query.js +57 -7
- package/dist/systems/stair/stair-sizing.d.ts +101 -99
- package/dist/systems/stair/stair-sizing.d.ts.map +1 -1
- package/dist/systems/wall/wall-assembly.d.ts +11 -0
- package/dist/systems/wall/wall-assembly.d.ts.map +1 -1
- package/dist/systems/wall/wall-assembly.js +21 -0
- package/dist/systems/wall/wall-curve.d.ts +5 -0
- package/dist/systems/wall/wall-curve.d.ts.map +1 -1
- package/dist/systems/wall/wall-curve.js +13 -0
- package/dist/systems/wall/wall-frame.d.ts.map +1 -1
- package/dist/systems/wall/wall-frame.js +8 -0
- package/dist/systems/wall/wall-room-sides.d.ts +8 -0
- package/dist/systems/wall/wall-room-sides.d.ts.map +1 -1
- package/dist/systems/wall/wall-room-sides.js +60 -7
- package/dist/systems/wall/wall-top.d.ts +7 -4
- package/dist/systems/wall/wall-top.d.ts.map +1 -1
- package/dist/systems/wall/wall-top.js +14 -6
- package/dist/systems/wall/wall-topology.d.ts +4 -0
- package/dist/systems/wall/wall-topology.d.ts.map +1 -1
- package/dist/systems/wall/wall-topology.js +4 -2
- package/dist/systems/wall/wall-trim.d.ts +7 -0
- package/dist/systems/wall/wall-trim.d.ts.map +1 -0
- package/dist/systems/wall/wall-trim.js +10 -0
- package/dist/utils/clone-scene-graph.d.ts.map +1 -1
- package/dist/utils/clone-scene-graph.js +8 -0
- package/dist/utils/ensure-scene-openings.d.ts +7420 -6562
- package/dist/utils/ensure-scene-openings.d.ts.map +1 -1
- package/dist/utils/floor-piece-adoption.d.ts +2 -2
- package/dist/utils/floor-plate-migration.d.ts +3746 -3317
- package/dist/utils/floor-plate-migration.d.ts.map +1 -1
- package/dist/utils/floor-plate-migration.js +2 -2
- package/dist/utils/heal-scene-graph.d.ts +12 -0
- package/dist/utils/heal-scene-graph.d.ts.map +1 -1
- package/dist/utils/heal-scene-graph.js +40 -23
- package/dist/utils/legacy-wall-datums.d.ts.map +1 -1
- package/dist/utils/legacy-wall-datums.js +2 -2
- package/dist/utils/owned-floor-opening-migration.d.ts +3642 -3213
- package/dist/utils/owned-floor-opening-migration.d.ts.map +1 -1
- package/dist/utils/reconcile-structure-on-load.d.ts +3730 -7777
- package/dist/utils/reconcile-structure-on-load.d.ts.map +1 -1
- package/dist/utils/scene-migrations.d.ts +1 -1
- package/dist/utils/scene-migrations.d.ts.map +1 -1
- package/dist/utils/scene-migrations.js +1 -1
- package/dist/utils/semantic-equal.d.ts +3 -0
- package/dist/utils/semantic-equal.d.ts.map +1 -0
- package/dist/utils/semantic-equal.js +26 -0
- package/dist/utils/structure-id.d.ts.map +1 -1
- package/dist/utils/types.d.ts.map +1 -1
- package/dist/utils/wall-face-migration.d.ts +1 -1
- package/dist/utils/wall-face-migration.d.ts.map +1 -1
- package/package.json +36 -10
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { BuildingNode, DoorNode, ItemNode, LevelNode, WallNode, WindowNode, ZoneNode, } from '../../schema/index.js';
|
|
2
2
|
import { doorFacing } from '../../building/wall-openings.js';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { area as clippedArea, difference } from '../../lib/polygon-boolean.js';
|
|
4
|
+
import { reconcileSceneStructure } from '../../lib/structure-reconcile.js';
|
|
5
|
+
import { findBlockedDoors, itemNodePlanCorners } from '../door-clearance.js';
|
|
6
|
+
import { findItemItemCollisions, findItemsMidRoom } from '../layout-clearance.js';
|
|
5
7
|
const graph = (...nodes) => ({
|
|
6
8
|
nodes: Object.fromEntries(nodes.map((node) => [node.id, node])),
|
|
7
9
|
rootNodeIds: nodes
|
|
@@ -87,6 +89,31 @@ function roomsScene() {
|
|
|
87
89
|
});
|
|
88
90
|
return graph(building, ground, upper, roof, wallG, door, window, kitchen, wallU);
|
|
89
91
|
}
|
|
92
|
+
/**
|
|
93
|
+
* Run 6's order: walls drawn first, one add_wall each, round CLEAR (and `extra` inside it), then the
|
|
94
|
+
* rooms the reconciler made of them, "Room 1" first; `renamed` is a name a person gave it since.
|
|
95
|
+
*/
|
|
96
|
+
function walledScene({ extra = [], renamed } = {}) {
|
|
97
|
+
return () => {
|
|
98
|
+
const base = roomsScene().nodes;
|
|
99
|
+
const walls = [...CLEAR.map((point, i) => [point, CLEAR[(i + 1) % 4]]), ...extra].map(([start, end], i) => WallNode.parse({ id: `wall_c${i}`, parentId: 'level_g', start, end, height: 2.5 }));
|
|
100
|
+
const level = base.level_g;
|
|
101
|
+
let nodes = {
|
|
102
|
+
...base,
|
|
103
|
+
level_g: { ...level, children: [...level.children, ...walls.map((wall) => wall.id)] },
|
|
104
|
+
...Object.fromEntries(walls.map((wall) => [wall.id, wall])),
|
|
105
|
+
};
|
|
106
|
+
const names = { zone: ['zone_walled', 'zone_side'] };
|
|
107
|
+
let count = 0;
|
|
108
|
+
nodes = reconcileSceneStructure({
|
|
109
|
+
nodes,
|
|
110
|
+
mintId: (kind) => names[kind]?.shift() ?? `${kind}_walled${++count}`,
|
|
111
|
+
}).nodes;
|
|
112
|
+
if (renamed)
|
|
113
|
+
nodes.zone_walled = { ...nodes.zone_walled, name: renamed };
|
|
114
|
+
return graph(...Object.values(nodes));
|
|
115
|
+
};
|
|
116
|
+
}
|
|
90
117
|
// ─── Checks the table cannot state: minted ids and derived construction ───────────────────────
|
|
91
118
|
const problems = (...entries) => entries.flatMap(([ok, problem]) => (ok ? [] : [problem]));
|
|
92
119
|
const wallsOn = (nodes, levelId) => Object.values(nodes).filter((node) => node.type === 'wall' && node.parentId === levelId);
|
|
@@ -141,6 +168,15 @@ function roomBuilt(levelId, name, edges) {
|
|
|
141
168
|
]);
|
|
142
169
|
};
|
|
143
170
|
}
|
|
171
|
+
/** The room zones of the ground floor inside CLEAR's box: the one per walled space there. */
|
|
172
|
+
const roomsInClear = (nodes) => Object.values(nodes).filter((node) => node.type === 'zone' &&
|
|
173
|
+
node.parentId === 'level_g' &&
|
|
174
|
+
node.spaceRole === 'room' &&
|
|
175
|
+
node.polygon.every(([x, z]) => x >= -0.01 && x <= 4.01 && z >= 4.99 && z <= 8.01));
|
|
176
|
+
const area = (polygon) => Math.abs(polygon.reduce((sum, [x, z], i) => {
|
|
177
|
+
const [nx, nz] = polygon[(i + 1) % polygon.length];
|
|
178
|
+
return sum + x * nz - nx * z;
|
|
179
|
+
}, 0) / 2);
|
|
144
180
|
const roomOn = (levelId) => (result, nodes) => problems([
|
|
145
181
|
nodes[result.zoneId]?.parentId === levelId,
|
|
146
182
|
`the room is on ${String(nodes[result.zoneId]?.parentId)}, not ${levelId}`,
|
|
@@ -315,7 +351,7 @@ export const CREATE_ROOM_CASES = [
|
|
|
315
351
|
},
|
|
316
352
|
},
|
|
317
353
|
{
|
|
318
|
-
name:
|
|
354
|
+
name: 'a window is centred on its wall, as add_window places it; a door takes its size, hinge, swing and style',
|
|
319
355
|
tool: 'create_room',
|
|
320
356
|
scene: roomsScene,
|
|
321
357
|
input: room({
|
|
@@ -336,11 +372,16 @@ export const CREATE_ROOM_CASES = [
|
|
|
336
372
|
check: (result, nodes) => {
|
|
337
373
|
const window = nodes[result.windowIds[0]];
|
|
338
374
|
const door = nodes[result.doorIds[0]];
|
|
375
|
+
// Centred on the wall as it stands when the room is made, the storey's 2.8 m: the floor plate
|
|
376
|
+
// is derived afterwards, and a later add_window sees the slab (a window 2.5 cm lower).
|
|
377
|
+
const wall = window?.type === 'window' && window.wallId ? nodes[window.wallId] : undefined;
|
|
378
|
+
const level = wall?.parentId ? nodes[wall.parentId] : undefined;
|
|
379
|
+
const ceiling = level?.type === 'level' ? (level.height ?? Number.NaN) : Number.NaN;
|
|
339
380
|
return problems([
|
|
340
381
|
window?.type === 'window' &&
|
|
341
|
-
near(window.position[1]
|
|
382
|
+
near(window.position[1], ceiling / 2) &&
|
|
342
383
|
window.width === 1.5,
|
|
343
|
-
`window ${JSON.stringify(window)} is not 1.5 m wide on
|
|
384
|
+
`window ${JSON.stringify(window)} is not 1.5 m wide and centred on its ${ceiling} m wall`,
|
|
344
385
|
], [
|
|
345
386
|
door?.type === 'door' &&
|
|
346
387
|
Math.abs(door.width - 0.9144) < 1e-4 &&
|
|
@@ -364,7 +405,6 @@ export const CREATE_ROOM_CASES = [
|
|
|
364
405
|
scene: roomsScene,
|
|
365
406
|
input: room({}),
|
|
366
407
|
context: { activeLevelId: 'level_u' },
|
|
367
|
-
surfaces: ['core', 'chat'],
|
|
368
408
|
expect: { result: { ok: true }, check: roomOn('level_u') },
|
|
369
409
|
},
|
|
370
410
|
{
|
|
@@ -418,6 +458,112 @@ export const CREATE_ROOM_CASES = [
|
|
|
418
458
|
},
|
|
419
459
|
expect: { refusal: 'outdoor_room_overlap', mentions: ['Kitchen'] },
|
|
420
460
|
},
|
|
461
|
+
// Run 6: 54 walls drawn first, then 14 create_room calls, each stacking its named zone on the
|
|
462
|
+
// "Room N" the walls had made: 16 twins.
|
|
463
|
+
{
|
|
464
|
+
name: 'a room over walls that already enclose it names the room they made, never a second zone',
|
|
465
|
+
tool: 'create_room',
|
|
466
|
+
scene: walledScene(),
|
|
467
|
+
input: room({ levelId: 'level_g' }),
|
|
468
|
+
expect: {
|
|
469
|
+
result: { ok: true, reusedWalls: 4, zoneId: 'zone_walled' },
|
|
470
|
+
after: { zone_walled: { name: 'Bedroom' } },
|
|
471
|
+
check: (result, nodes) => [
|
|
472
|
+
...roomBuilt('level_g', 'Bedroom', 4)(result, nodes),
|
|
473
|
+
...problems([
|
|
474
|
+
roomsInClear(nodes).length === 1,
|
|
475
|
+
`${roomsInClear(nodes).map((zone) => zone.name).join(', ')} stand over one walled room`,
|
|
476
|
+
]),
|
|
477
|
+
],
|
|
478
|
+
},
|
|
479
|
+
},
|
|
480
|
+
{
|
|
481
|
+
name: 'the walled room is named whichever way round and from whichever corner the polygon runs',
|
|
482
|
+
tool: 'create_room',
|
|
483
|
+
scene: walledScene(),
|
|
484
|
+
input: {
|
|
485
|
+
levelId: 'level_g',
|
|
486
|
+
name: 'Study',
|
|
487
|
+
polygon: [
|
|
488
|
+
[4, 8],
|
|
489
|
+
[4, 5],
|
|
490
|
+
[0, 5],
|
|
491
|
+
[0, 8],
|
|
492
|
+
],
|
|
493
|
+
},
|
|
494
|
+
expect: {
|
|
495
|
+
result: { ok: true, zoneId: 'zone_walled' },
|
|
496
|
+
check: (_, nodes) => problems([
|
|
497
|
+
roomsInClear(nodes).map((zone) => zone.name).join() === 'Study',
|
|
498
|
+
`${roomsInClear(nodes).map((zone) => zone.name).join(', ')} stand there, not Study alone`,
|
|
499
|
+
]),
|
|
500
|
+
},
|
|
501
|
+
},
|
|
502
|
+
{
|
|
503
|
+
name: 'a polygon over two walled spaces names the one holding most of it; the other keeps its name',
|
|
504
|
+
tool: 'create_room',
|
|
505
|
+
scene: walledScene({
|
|
506
|
+
extra: [
|
|
507
|
+
[
|
|
508
|
+
[3, 5],
|
|
509
|
+
[3, 8],
|
|
510
|
+
],
|
|
511
|
+
],
|
|
512
|
+
}),
|
|
513
|
+
input: room({ levelId: 'level_g', name: 'Master Bedroom' }),
|
|
514
|
+
expect: {
|
|
515
|
+
result: { ok: true },
|
|
516
|
+
check: (result, nodes) => {
|
|
517
|
+
const rooms = roomsInClear(nodes);
|
|
518
|
+
const master = nodes[result.zoneId];
|
|
519
|
+
return problems([rooms.length === 2, `${rooms.length} rooms over two walled spaces`], [
|
|
520
|
+
master?.name === 'Master Bedroom' && Math.abs(area(master.polygon) - 9) < 0.05,
|
|
521
|
+
`the named room is ${master?.name} over ${master && area(master.polygon)} m², not the 9 m² space`,
|
|
522
|
+
], [
|
|
523
|
+
rooms.some((zone) => /^Room \d+$/.test(zone.name ?? '')),
|
|
524
|
+
'the smaller space lost its own name',
|
|
525
|
+
]);
|
|
526
|
+
},
|
|
527
|
+
},
|
|
528
|
+
},
|
|
529
|
+
// A room a person named is never renamed silently, and never twinned: the refusal names it, and
|
|
530
|
+
// the agent either passes rename: true or asks the person.
|
|
531
|
+
{
|
|
532
|
+
name: 'a room a person named is refused with a choice, never twinned or renamed silently',
|
|
533
|
+
tool: 'create_room',
|
|
534
|
+
scene: walledScene({ renamed: 'Library' }),
|
|
535
|
+
input: room({ levelId: 'level_g' }),
|
|
536
|
+
expect: { refusal: 'room_named_by_person', mentions: ['Library', 'rename: true only if the person asked', 'ask them'] },
|
|
537
|
+
},
|
|
538
|
+
{
|
|
539
|
+
name: 'rename: true names the room a person named, in place, with no second zone',
|
|
540
|
+
tool: 'create_room',
|
|
541
|
+
scene: walledScene({ renamed: 'Library' }),
|
|
542
|
+
input: room({ levelId: 'level_g', rename: true }),
|
|
543
|
+
expect: {
|
|
544
|
+
result: { ok: true, zoneId: 'zone_walled' },
|
|
545
|
+
after: { zone_walled: { name: 'Bedroom' } },
|
|
546
|
+
check: (_, nodes) => problems([roomsInClear(nodes).length === 1, 'a second zone stands beside the renamed room']),
|
|
547
|
+
},
|
|
548
|
+
},
|
|
549
|
+
{
|
|
550
|
+
name: 'the same name over a room a person named has nothing to create',
|
|
551
|
+
tool: 'create_room',
|
|
552
|
+
scene: walledScene({ renamed: 'Bedroom' }),
|
|
553
|
+
input: room({ levelId: 'level_g' }),
|
|
554
|
+
expect: { refusal: 'room_named_by_person', mentions: ['already', 'Bedroom'] },
|
|
555
|
+
},
|
|
556
|
+
{
|
|
557
|
+
name: 'outdoor over a space walls already enclose names that room and drops its ceiling',
|
|
558
|
+
tool: 'create_room',
|
|
559
|
+
scene: walledScene(),
|
|
560
|
+
input: room({ levelId: 'level_g', name: 'Courtyard', outdoor: true }),
|
|
561
|
+
expect: {
|
|
562
|
+
result: { ok: true, zoneId: 'zone_walled', ceilingId: null },
|
|
563
|
+
after: { zone_walled: { name: 'Courtyard', hasCeiling: false } },
|
|
564
|
+
check: (_, nodes) => problems([roomsInClear(nodes).length === 1, 'the courtyard stands beside its room']),
|
|
565
|
+
},
|
|
566
|
+
},
|
|
421
567
|
{
|
|
422
568
|
name: 'a roof level takes no room',
|
|
423
569
|
tool: 'create_room',
|
|
@@ -463,32 +609,86 @@ const CATALOG = [
|
|
|
463
609
|
item('bedside-table', [0.5, 0.5, 0.4]),
|
|
464
610
|
item('dresser', [1.2, 0.8, 0.5]),
|
|
465
611
|
item('closet', [1.5, 2, 0.6]),
|
|
612
|
+
// The MCP's built-in sizes (asset-catalog.ts).
|
|
613
|
+
item('sofa', [2.5, 0.8, 1.5]),
|
|
614
|
+
item('coffee-table', [2, 0.4, 1.5]),
|
|
615
|
+
item('livingroom-chair', [1.5, 0.8, 1.5]),
|
|
616
|
+
item('tv-stand', [2, 0.4, 0.5]),
|
|
617
|
+
item('toilet', [1, 0.9, 1]),
|
|
618
|
+
item('bathroom-sink', [2, 1, 1.5]),
|
|
619
|
+
item('shower-square', [1, 2, 1]),
|
|
620
|
+
item('bathtub', [1.7, 0.6, 0.8]),
|
|
621
|
+
];
|
|
622
|
+
const ROOM_WALLS = ['wall_s', 'wall_e', 'wall_n', 'wall_w'];
|
|
623
|
+
/** A `width` × `depth` m room: walls south (edge 0), east, north (edge 2), west. */
|
|
624
|
+
const roomOutline = (width, depth) => [
|
|
625
|
+
[0, 0],
|
|
626
|
+
[width, 0],
|
|
627
|
+
[width, depth],
|
|
628
|
+
[0, depth],
|
|
629
|
+
];
|
|
630
|
+
/** A 5 × 4 m bedroom. */
|
|
631
|
+
const BEDROOM = roomOutline(5, 4);
|
|
632
|
+
/** An L: 10 m along the south, 5 m deep, and a 4 × 5 m wing to the north-west. */
|
|
633
|
+
const L_ROOM = [
|
|
634
|
+
[0, 0],
|
|
635
|
+
[10, 0],
|
|
636
|
+
[10, 5],
|
|
637
|
+
[4, 5],
|
|
638
|
+
[4, 10],
|
|
639
|
+
[0, 10],
|
|
466
640
|
];
|
|
467
|
-
/** A
|
|
468
|
-
const
|
|
641
|
+
/** A U: two 4 m arms, 6 m deep, round a 2 × 4 m notch to the north. */
|
|
642
|
+
const U_ROOM = [
|
|
469
643
|
[0, 0],
|
|
470
|
-
[
|
|
471
|
-
[
|
|
472
|
-
[
|
|
644
|
+
[10, 0],
|
|
645
|
+
[10, 10],
|
|
646
|
+
[6, 10],
|
|
647
|
+
[6, 6],
|
|
648
|
+
[4, 6],
|
|
649
|
+
[4, 10],
|
|
650
|
+
[0, 10],
|
|
473
651
|
];
|
|
474
|
-
|
|
475
|
-
|
|
652
|
+
/** A 6√2 × 4√2 m room turned 45°. */
|
|
653
|
+
const DIAMOND_ROOM = [
|
|
654
|
+
[0, 0],
|
|
655
|
+
[6, 6],
|
|
656
|
+
[2, 10],
|
|
657
|
+
[-4, 4],
|
|
658
|
+
];
|
|
659
|
+
/**
|
|
660
|
+
* A room of `outline`, a wall on each edge (`wall_s`, `wall_e`, `wall_n`, `wall_w` round a
|
|
661
|
+
* rectangle, `wall_<edge>` round any other outline) but the `open` ones and a repeated corner's,
|
|
662
|
+
* a door in the middle of each wall in `doorsOn`, and a desk if asked.
|
|
663
|
+
*/
|
|
664
|
+
function roomScene({ outline = BEDROOM, name = 'Bedroom', doorsOn = [], open = [], desk, } = {}) {
|
|
665
|
+
const wallIds = outline.map((_, i) => (outline.length === 4 ? ROOM_WALLS[i] : `wall_${i}`));
|
|
476
666
|
return () => {
|
|
477
|
-
const
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
667
|
+
const doors = doorsOn.map((wallId) => {
|
|
668
|
+
const i = wallIds.indexOf(wallId);
|
|
669
|
+
const [a, b] = [outline[i], outline[(i + 1) % outline.length]];
|
|
670
|
+
const middle = Math.hypot(b[0] - a[0], b[1] - a[1]) / 2;
|
|
671
|
+
return DoorNode.parse({
|
|
672
|
+
id: `door_${wallId.slice(5)}`,
|
|
673
|
+
parentId: wallId,
|
|
674
|
+
wallId,
|
|
675
|
+
position: [middle, 1.05, 0],
|
|
676
|
+
});
|
|
677
|
+
});
|
|
678
|
+
const walls = outline.flatMap((start, i) => open.includes(wallIds[i]) || `${start}` === `${outline[(i + 1) % outline.length]}`
|
|
679
|
+
? []
|
|
680
|
+
: WallNode.parse({
|
|
681
|
+
id: wallIds[i],
|
|
682
|
+
parentId: 'level_f',
|
|
683
|
+
start,
|
|
684
|
+
end: outline[(i + 1) % outline.length],
|
|
685
|
+
children: doors.filter((door) => door.parentId === wallIds[i]).map((door) => door.id),
|
|
686
|
+
}));
|
|
487
687
|
const zone = ZoneNode.parse({
|
|
488
688
|
id: 'zone_bed',
|
|
489
689
|
parentId: 'level_f',
|
|
490
|
-
name
|
|
491
|
-
polygon:
|
|
690
|
+
name,
|
|
691
|
+
polygon: outline,
|
|
492
692
|
spaceRole: 'room',
|
|
493
693
|
});
|
|
494
694
|
// Where the bed would stand against the north wall.
|
|
@@ -508,26 +708,54 @@ function bedroomScene({ doorOn, desk } = {}) {
|
|
|
508
708
|
children: [...walls.map((wall) => wall.id), zone.id, ...(deskItem ? [deskItem.id] : [])],
|
|
509
709
|
});
|
|
510
710
|
const building = BuildingNode.parse({ id: 'building_f', children: [level.id] });
|
|
511
|
-
return graph(building, level, ...walls, zone, ...
|
|
711
|
+
return graph(building, level, ...walls, zone, ...doors, ...(deskItem ? [deskItem] : []));
|
|
512
712
|
};
|
|
513
713
|
}
|
|
714
|
+
/**
|
|
715
|
+
* The piece's turned footprint inside the room, read by clipping it against the outline (not the
|
|
716
|
+
* operation's own test): what stands outside, under a square centimetre of rounding.
|
|
717
|
+
*/
|
|
718
|
+
const standsIn = (item, outline) => {
|
|
719
|
+
const corners = itemNodePlanCorners(item);
|
|
720
|
+
const [cx, cz] = [0, 1].map((axis) => corners.reduce((sum, c) => sum + c[axis], 0) / 4);
|
|
721
|
+
// Round the footprint, not across it: itemNodePlanCorners lists its corners by side.
|
|
722
|
+
const ring = corners.sort((a, b) => Math.atan2(a[1] - cz, a[0] - cx) - Math.atan2(b[1] - cz, b[0] - cx));
|
|
723
|
+
return clippedArea(difference(ring, outline)) < 1e-4;
|
|
724
|
+
};
|
|
514
725
|
const furnished = (result, nodes) => {
|
|
515
726
|
const items = Object.values(nodes);
|
|
516
727
|
const itemIds = result.itemIds;
|
|
517
728
|
return problems([itemIds.length > 0, 'nothing placed'], [
|
|
518
729
|
itemIds.every((id) => nodes[id]?.type === 'item' && nodes[id]?.parentId === 'level_f'),
|
|
519
730
|
'an item is not on the room level',
|
|
520
|
-
], [findBlockedDoors({ nodes: items }).length === 0, 'an item blocks a door'], [findItemItemCollisions({ nodes: items }).length === 0, 'two items overlap']
|
|
731
|
+
], [findBlockedDoors({ nodes: items }).length === 0, 'an item blocks a door'], [findItemItemCollisions({ nodes: items }).length === 0, 'two items overlap'], [
|
|
732
|
+
findItemsMidRoom({ nodes: items, levelId: 'level_f' }).length === 0,
|
|
733
|
+
'a wall-bound piece stands in the middle of the room',
|
|
734
|
+
], [
|
|
735
|
+
itemIds.every((id) => {
|
|
736
|
+
const [item, zone] = [nodes[id], nodes.zone_bed];
|
|
737
|
+
return (item?.type === 'item' && zone?.type === 'zone' && standsIn(item, zone.polygon));
|
|
738
|
+
}),
|
|
739
|
+
'an item stands outside the room',
|
|
740
|
+
]);
|
|
521
741
|
};
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
742
|
+
/** Where the piece of `assetId` stands, null when it was not placed. */
|
|
743
|
+
const positionOf = (nodes, assetId) => {
|
|
744
|
+
const piece = Object.values(nodes).find((node) => node.type === 'item' && node.asset.id === assetId);
|
|
745
|
+
return piece?.type === 'item' ? piece.position : null;
|
|
746
|
+
};
|
|
747
|
+
const bedPosition = (nodes) => positionOf(nodes, 'double-bed');
|
|
748
|
+
/** The sofa and the TV placed, the coffee table and the TV straight across from the sofa. */
|
|
749
|
+
const livingGroupKept = (nodes) => {
|
|
750
|
+
const [sofa, table, tv] = ['sofa', 'coffee-table', 'tv-stand'].map((id) => positionOf(nodes, id));
|
|
751
|
+
const across = (piece) => !!sofa && !!piece && Math.abs(piece[0] - sofa[0]) < 0.01;
|
|
752
|
+
return problems([sofa !== null, 'the sofa was skipped'], [tv !== null, 'the TV stand was skipped'], [across(table) && across(tv), 'the coffee table and the TV are not across from the sofa']);
|
|
525
753
|
};
|
|
526
754
|
export const FURNISH_ROOM_CASES = [
|
|
527
755
|
{
|
|
528
756
|
name: 'a room named by its zone: its level and outline; the bed faces the door from the far wall',
|
|
529
757
|
tool: 'furnish_room',
|
|
530
|
-
scene:
|
|
758
|
+
scene: roomScene({ doorsOn: ['wall_s'] }),
|
|
531
759
|
input: { zoneId: 'zone_bed', roomType: 'bedroom' },
|
|
532
760
|
context: { catalog: CATALOG },
|
|
533
761
|
expect: {
|
|
@@ -541,7 +769,7 @@ export const FURNISH_ROOM_CASES = [
|
|
|
541
769
|
{
|
|
542
770
|
name: 'the door it finds sets the furniture wall, whichever edge it is on',
|
|
543
771
|
tool: 'furnish_room',
|
|
544
|
-
scene:
|
|
772
|
+
scene: roomScene({ doorsOn: ['wall_n'] }),
|
|
545
773
|
input: { zoneId: 'zone_bed', roomType: 'bedroom' },
|
|
546
774
|
context: { catalog: CATALOG },
|
|
547
775
|
expect: {
|
|
@@ -555,7 +783,7 @@ export const FURNISH_ROOM_CASES = [
|
|
|
555
783
|
{
|
|
556
784
|
name: 'doorWallIndex names the door wall of a room with no door yet, and keeps it clear',
|
|
557
785
|
tool: 'furnish_room',
|
|
558
|
-
scene:
|
|
786
|
+
scene: roomScene(),
|
|
559
787
|
input: { zoneId: 'zone_bed', roomType: 'bedroom', doorWallIndex: 1 },
|
|
560
788
|
context: { catalog: CATALOG },
|
|
561
789
|
expect: {
|
|
@@ -569,7 +797,7 @@ export const FURNISH_ROOM_CASES = [
|
|
|
569
797
|
{
|
|
570
798
|
name: 'a polygon instead of a zone, on the lowest storey when no level is named',
|
|
571
799
|
tool: 'furnish_room',
|
|
572
|
-
scene:
|
|
800
|
+
scene: roomScene({ doorsOn: ['wall_s'] }),
|
|
573
801
|
input: { polygon: BEDROOM, roomType: 'bedroom' },
|
|
574
802
|
context: { catalog: CATALOG },
|
|
575
803
|
expect: { result: { ok: true, doorWallIndex: 0 }, check: furnished },
|
|
@@ -577,15 +805,157 @@ export const FURNISH_ROOM_CASES = [
|
|
|
577
805
|
{
|
|
578
806
|
name: 'an item already in the room is never overlapped',
|
|
579
807
|
tool: 'furnish_room',
|
|
580
|
-
scene:
|
|
808
|
+
scene: roomScene({ doorsOn: ['wall_s'], desk: true }),
|
|
581
809
|
input: { zoneId: 'zone_bed', roomType: 'bedroom' },
|
|
582
810
|
context: { catalog: CATALOG },
|
|
583
811
|
expect: { result: { ok: true }, check: furnished },
|
|
584
812
|
},
|
|
813
|
+
{
|
|
814
|
+
name: 'a door in the sofa wall and in the TV wall: the sofa slides along its wall, the table and the TV with it, nothing into the room',
|
|
815
|
+
tool: 'furnish_room',
|
|
816
|
+
scene: roomScene({
|
|
817
|
+
outline: roomOutline(7, 4.5),
|
|
818
|
+
name: 'Living room',
|
|
819
|
+
doorsOn: ['wall_s', 'wall_n'],
|
|
820
|
+
}),
|
|
821
|
+
input: { zoneId: 'zone_bed', roomType: 'living' },
|
|
822
|
+
context: { catalog: CATALOG },
|
|
823
|
+
expect: {
|
|
824
|
+
result: { ok: true, doorWallIndex: 0, doorsDetected: 2 },
|
|
825
|
+
check: (result, nodes) => [...furnished(result, nodes), ...livingGroupKept(nodes)],
|
|
826
|
+
},
|
|
827
|
+
},
|
|
828
|
+
{
|
|
829
|
+
name: 'a skip names the other sources, and a set with no skip does not',
|
|
830
|
+
tool: 'furnish_room',
|
|
831
|
+
scene: roomScene({
|
|
832
|
+
outline: roomOutline(7, 4.5),
|
|
833
|
+
name: 'Living room',
|
|
834
|
+
open: ['wall_s', 'wall_e', 'wall_w'],
|
|
835
|
+
}),
|
|
836
|
+
input: { zoneId: 'zone_bed', roomType: 'living', doorWallIndex: 0 },
|
|
837
|
+
context: { catalog: CATALOG },
|
|
838
|
+
expect: {
|
|
839
|
+
result: { ok: true },
|
|
840
|
+
check: (result) => problems([result.skipped.length > 0, 'nothing was skipped: no case here'], [
|
|
841
|
+
String(result.message).includes('For what was skipped: add_object builds an object of any shape and size'),
|
|
842
|
+
'a skip does not name the sources',
|
|
843
|
+
]),
|
|
844
|
+
},
|
|
845
|
+
},
|
|
846
|
+
{
|
|
847
|
+
name: 'every piece placed comes with its name, size and id',
|
|
848
|
+
tool: 'furnish_room',
|
|
849
|
+
scene: roomScene({ outline: roomOutline(7, 4.5), name: 'Living room', doorsOn: ['wall_s'] }),
|
|
850
|
+
input: { zoneId: 'zone_bed', roomType: 'living' },
|
|
851
|
+
context: { catalog: CATALOG },
|
|
852
|
+
expect: {
|
|
853
|
+
result: { ok: true, skipped: [] },
|
|
854
|
+
mentions: ['sofa (2.5 × 1.5 m): item_'],
|
|
855
|
+
check: (result) => {
|
|
856
|
+
const pieces = result.pieces;
|
|
857
|
+
const ids = result.itemIds;
|
|
858
|
+
return problems([pieces.length === ids.length && ids.length > 0, 'pieces and ids differ'], [
|
|
859
|
+
pieces.every((piece, i) => piece.endsWith(`: ${ids[i]}`) && / \(\d[\d.]* × \d[\d.]* m\): /.test(piece)),
|
|
860
|
+
`a piece lacks its size or its id: ${pieces}`,
|
|
861
|
+
], [!String(result.message).includes('add_object'), 'a set with no skip names the sources']);
|
|
862
|
+
},
|
|
863
|
+
},
|
|
864
|
+
},
|
|
865
|
+
{
|
|
866
|
+
name: 'a wall-bound piece where no wall stands is skipped, and says so: the TV of a living room open to the south',
|
|
867
|
+
tool: 'furnish_room',
|
|
868
|
+
scene: roomScene({
|
|
869
|
+
outline: roomOutline(7, 4.5),
|
|
870
|
+
name: 'Living room',
|
|
871
|
+
open: ['wall_s', 'wall_e', 'wall_w'],
|
|
872
|
+
}),
|
|
873
|
+
input: { zoneId: 'zone_bed', roomType: 'living', doorWallIndex: 0 },
|
|
874
|
+
context: { catalog: CATALOG },
|
|
875
|
+
expect: {
|
|
876
|
+
result: { ok: true },
|
|
877
|
+
mentions: ['tv-stand (2 × 0.5 m): no wall to stand against there'],
|
|
878
|
+
check: (result, nodes) => [
|
|
879
|
+
...furnished(result, nodes),
|
|
880
|
+
...problems([positionOf(nodes, 'sofa') !== null, 'the sofa was skipped']),
|
|
881
|
+
],
|
|
882
|
+
},
|
|
883
|
+
},
|
|
884
|
+
{
|
|
885
|
+
name: 'an L-shaped bedroom: nothing lands in the corner the L leaves out',
|
|
886
|
+
tool: 'furnish_room',
|
|
887
|
+
scene: roomScene({ outline: L_ROOM, doorsOn: ['wall_0'] }),
|
|
888
|
+
input: { zoneId: 'zone_bed', roomType: 'bedroom' },
|
|
889
|
+
context: { catalog: CATALOG },
|
|
890
|
+
expect: { result: { ok: true, doorWallIndex: 0 }, check: furnished },
|
|
891
|
+
},
|
|
892
|
+
{
|
|
893
|
+
name: 'an outline drawn closed (its first corner repeated) is the same room: the closet stands against its far wall',
|
|
894
|
+
tool: 'furnish_room',
|
|
895
|
+
scene: roomScene({ outline: [...roomOutline(6, 4), [0, 0]], name: 'Storage' }),
|
|
896
|
+
input: { zoneId: 'zone_bed', roomType: 'storage', doorWallIndex: 0 },
|
|
897
|
+
context: { catalog: CATALOG },
|
|
898
|
+
expect: {
|
|
899
|
+
result: { ok: true, placed: 1 },
|
|
900
|
+
check: (result, nodes) => [
|
|
901
|
+
...furnished(result, nodes),
|
|
902
|
+
...problems([
|
|
903
|
+
(positionOf(nodes, 'closet')?.[2] ?? 0) > 3,
|
|
904
|
+
'the closet is not against the far wall',
|
|
905
|
+
]),
|
|
906
|
+
],
|
|
907
|
+
},
|
|
908
|
+
},
|
|
909
|
+
{
|
|
910
|
+
name: 'a U-shaped room: nothing stands in the notch between its arms, though its corners touch the outline',
|
|
911
|
+
tool: 'furnish_room',
|
|
912
|
+
scene: roomScene({ outline: U_ROOM, name: 'Dining room' }),
|
|
913
|
+
input: { zoneId: 'zone_bed', roomType: 'dining', doorWallIndex: 0 },
|
|
914
|
+
context: {
|
|
915
|
+
catalog: [
|
|
916
|
+
...CATALOG,
|
|
917
|
+
item('dining-table', [2, 0.75, 4]),
|
|
918
|
+
item('dining-chair', [0.5, 0.9, 0.5]),
|
|
919
|
+
],
|
|
920
|
+
},
|
|
921
|
+
expect: {
|
|
922
|
+
result: { ok: true },
|
|
923
|
+
mentions: ['dining-table (2 × 4 m): outside the room'],
|
|
924
|
+
check: furnished,
|
|
925
|
+
},
|
|
926
|
+
},
|
|
927
|
+
{
|
|
928
|
+
name: 'a room turned 45°: the closet stands inside it, against a wall',
|
|
929
|
+
tool: 'furnish_room',
|
|
930
|
+
scene: roomScene({ outline: DIAMOND_ROOM, name: 'Storage', doorsOn: [] }),
|
|
931
|
+
input: { zoneId: 'zone_bed', roomType: 'storage', doorWallIndex: 0 },
|
|
932
|
+
context: { catalog: CATALOG },
|
|
933
|
+
expect: {
|
|
934
|
+
result: { ok: true, placed: 1 },
|
|
935
|
+
check: (result, nodes) => [
|
|
936
|
+
...furnished(result, nodes),
|
|
937
|
+
...problems([positionOf(nodes, 'closet') !== null, 'the closet was skipped']),
|
|
938
|
+
],
|
|
939
|
+
},
|
|
940
|
+
},
|
|
941
|
+
{
|
|
942
|
+
name: 'a bathroom under 6.5 m², which takes a shower and no tub: the shower stands against a wall, not in the middle',
|
|
943
|
+
tool: 'furnish_room',
|
|
944
|
+
scene: roomScene({ outline: roomOutline(2.4, 2.6), name: 'Bathroom', doorsOn: ['wall_s'] }),
|
|
945
|
+
input: { zoneId: 'zone_bed', roomType: 'bathroom' },
|
|
946
|
+
context: { catalog: CATALOG },
|
|
947
|
+
expect: {
|
|
948
|
+
result: { ok: true },
|
|
949
|
+
check: (result, nodes) => [
|
|
950
|
+
...furnished(result, nodes),
|
|
951
|
+
...problems([positionOf(nodes, 'shower-square') !== null, 'the shower was skipped'], [positionOf(nodes, 'bathtub') === null, 'a tub was placed']),
|
|
952
|
+
],
|
|
953
|
+
},
|
|
954
|
+
},
|
|
585
955
|
{
|
|
586
956
|
name: 'a piece the catalog lacks is skipped and named',
|
|
587
957
|
tool: 'furnish_room',
|
|
588
|
-
scene:
|
|
958
|
+
scene: roomScene({ doorsOn: ['wall_s'] }),
|
|
589
959
|
input: { zoneId: 'zone_bed', roomType: 'bedroom' },
|
|
590
960
|
context: { catalog: CATALOG.filter((entry) => entry.id !== 'bedside-table') },
|
|
591
961
|
expect: { result: { ok: true }, mentions: ['bedside-table: not in the catalog'] },
|
|
@@ -593,7 +963,7 @@ export const FURNISH_ROOM_CASES = [
|
|
|
593
963
|
{
|
|
594
964
|
name: 'no room named: room_required',
|
|
595
965
|
tool: 'furnish_room',
|
|
596
|
-
scene:
|
|
966
|
+
scene: roomScene(),
|
|
597
967
|
input: { roomType: 'bedroom' },
|
|
598
968
|
context: { catalog: CATALOG },
|
|
599
969
|
expect: { refusal: 'room_required' },
|
|
@@ -601,7 +971,7 @@ export const FURNISH_ROOM_CASES = [
|
|
|
601
971
|
{
|
|
602
972
|
name: 'a wall id for the room: not_a_zone',
|
|
603
973
|
tool: 'furnish_room',
|
|
604
|
-
scene:
|
|
974
|
+
scene: roomScene(),
|
|
605
975
|
input: { zoneId: 'wall_s', roomType: 'bedroom' },
|
|
606
976
|
context: { catalog: CATALOG },
|
|
607
977
|
expect: { refusal: 'not_a_zone', mentions: ['wall_s'] },
|
|
@@ -609,7 +979,7 @@ export const FURNISH_ROOM_CASES = [
|
|
|
609
979
|
{
|
|
610
980
|
name: 'a zone id that does not exist: zone_not_found',
|
|
611
981
|
tool: 'furnish_room',
|
|
612
|
-
scene:
|
|
982
|
+
scene: roomScene(),
|
|
613
983
|
input: { zoneId: 'zone_nope', roomType: 'bedroom' },
|
|
614
984
|
context: { catalog: CATALOG },
|
|
615
985
|
expect: { refusal: 'zone_not_found' },
|
|
@@ -627,7 +997,7 @@ export const FURNISH_ROOM_CASES = [
|
|
|
627
997
|
{
|
|
628
998
|
name: 'a host without a catalog: no_catalog',
|
|
629
999
|
tool: 'furnish_room',
|
|
630
|
-
scene:
|
|
1000
|
+
scene: roomScene(),
|
|
631
1001
|
input: { zoneId: 'zone_bed', roomType: 'bedroom' },
|
|
632
1002
|
surfaces: ['core', 'chat'],
|
|
633
1003
|
expect: { refusal: 'no_catalog' },
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import { type AnyNode, type AssetInput } from '../../schema/index.js';
|
|
2
|
+
import type { AgentContext } from '../types.js';
|
|
3
|
+
import type { SessionRecord } from '../scene-checkpoint.js';
|
|
4
|
+
import type { AssetViewFacts } from '../asset-views.js';
|
|
2
5
|
/**
|
|
3
6
|
* Edge cases of the agent tools that run as core operations, written before the operations. One
|
|
4
7
|
* declarative table per tool; the core, MCP and chat runners each run every table, so the three
|
|
5
|
-
* layers cannot disagree. `surfaces` narrows a case whose setup only one surface has (the
|
|
6
|
-
*
|
|
8
|
+
* layers cannot disagree. `surfaces` narrows a case whose setup only one surface has (the live
|
|
9
|
+
* stores close level gaps when a scene loads). `context.activeLevelId` is the floor the host's
|
|
10
|
+
* person views: the chat's, or an in-page MCP host's; a remote MCP has none, so the lowest storey.
|
|
7
11
|
* `after` lists fields some nodes must have once the operation's changes are applied.
|
|
8
12
|
*/
|
|
9
13
|
export type AgentSurface = 'core' | 'mcp' | 'chat';
|
|
@@ -16,12 +20,17 @@ export type AgentToolCase = {
|
|
|
16
20
|
tool: string;
|
|
17
21
|
scene: () => SceneGraph;
|
|
18
22
|
input: Record<string, unknown>;
|
|
19
|
-
/** `catalog`: the item library the host hands search_assets. */
|
|
20
23
|
context?: {
|
|
21
24
|
activeLevelId?: string | null;
|
|
22
25
|
catalog?: AssetInput[];
|
|
26
|
+
assetViews?: Record<string, AssetViewFacts>;
|
|
27
|
+
session?: () => SessionRecord;
|
|
28
|
+
designBrief?: AgentContext['designBrief'];
|
|
29
|
+
/** The person's words of the turn, where the host has a person (core and chat; not MCP). */
|
|
30
|
+
requestText?: string;
|
|
23
31
|
};
|
|
24
32
|
surfaces?: AgentSurface[];
|
|
33
|
+
readOnly?: boolean;
|
|
25
34
|
expect: {
|
|
26
35
|
refusal: string;
|
|
27
36
|
mentions?: string[];
|
|
@@ -36,14 +45,20 @@ export type AgentToolCase = {
|
|
|
36
45
|
/** Text the result must include. */
|
|
37
46
|
mentions?: string[];
|
|
38
47
|
/** What the table cannot state (minted ids, derived construction): the problems, if any. */
|
|
48
|
+
session?: (session: SessionRecord) => string[];
|
|
39
49
|
check?: (result: Record<string, unknown>, nodes: Readonly<Record<string, AnyNode>>) => string[];
|
|
40
50
|
};
|
|
41
51
|
};
|
|
52
|
+
/** Base chains are not the room/region finish, nor a promise that a ref renders. */
|
|
53
|
+
export declare function finishReadbackScene(): SceneGraph;
|
|
54
|
+
/** Reject non-finite layout endpoints before JSON can silently turn them into null. */
|
|
55
|
+
export declare function finiteReadbackProblems(value: unknown, path?: string): string[];
|
|
42
56
|
export declare const LIST_LEVELS_CASES: AgentToolCase[];
|
|
43
57
|
export declare const GET_NODE_CASES: AgentToolCase[];
|
|
44
58
|
export declare const LEVEL_TARGET_CASES: AgentToolCase[];
|
|
45
59
|
export declare const GET_WALLS_CASES: AgentToolCase[];
|
|
46
60
|
export declare const GET_ZONES_CASES: AgentToolCase[];
|
|
61
|
+
export declare const FINISH_READBACK_CASES: AgentToolCase[];
|
|
47
62
|
export declare const GET_LEVEL_SUMMARY_CASES: AgentToolCase[];
|
|
48
63
|
export declare const DUPLICATE_LEVEL_CASES: AgentToolCase[];
|
|
49
64
|
export declare const DELETE_NODE_CASES: AgentToolCase[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cases.d.ts","sourceRoot":"","sources":["../../../src/agent-operations/__fixtures__/cases.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,UAAU,EAgBhB,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"cases.d.ts","sourceRoot":"","sources":["../../../src/agent-operations/__fixtures__/cases.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,UAAU,EAgBhB,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AA8BpD;;;;;;;GAOG;AAEH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,CAAA;AAClD,MAAM,MAAM,UAAU,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,WAAW,EAAE,MAAM,EAAE,CAAA;CAAE,CAAA;AAElF,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,UAAU,CAAA;IACvB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC9B,OAAO,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QAC7B,OAAO,CAAC,EAAE,UAAU,EAAE,CAAA;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;QAC3C,OAAO,CAAC,EAAE,MAAM,aAAa,CAAA;QAC7B,WAAW,CAAC,EAAE,YAAY,CAAC,aAAa,CAAC,CAAA;QACzC,4FAA4F;QAC5F,WAAW,CAAC,EAAE,MAAM,CAAA;KACrB,CAAA;IACD,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAA;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,EACF;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GACxC;QACE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC/B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;QAClB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;QAC/C,sFAAsF;QACtF,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;QACpD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;QACjD,oCAAoC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;QACnB,4FAA4F;QAC5F,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,MAAM,EAAE,CAAA;QAC9C,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,MAAM,EAAE,CAAA;KAChG,CAAA;CACN,CAAA;AAmLD,oFAAoF;AACpF,wBAAgB,mBAAmB,IAAI,UAAU,CAsBhD;AAED,uFAAuF;AACvF,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,SAAW,GAAG,MAAM,EAAE,CAMhF;AAQD,eAAO,MAAM,iBAAiB,EAAE,aAAa,EAyE5C,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,aAAa,EAgCzC,CAAA;AAID,eAAO,MAAM,kBAAkB,EAAE,aAAa,EAiE7C,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,aAAa,EA0C1C,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,aAAa,EA4B1C,CAAA;AAID,eAAO,MAAM,qBAAqB,EAAE,aAAa,EAoEhD,CAAA;AAED,eAAO,MAAM,uBAAuB,EAAE,aAAa,EA8ElD,CAAA;AAiBD,eAAO,MAAM,qBAAqB,EAAE,aAAa,EAwGhD,CAAA;AAID,eAAO,MAAM,iBAAiB,EAAE,aAAa,EAiE5C,CAAA;AA0CD,yCAAyC;AACzC,eAAO,MAAM,gBAAgB,EAAE,SAAS,aAAa,EAuCpD,CAAA"}
|