@pascal-app/core 1.0.5 → 1.0.7
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 +31 -0
- package/dist/agent-operations/__fixtures__/add-object-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/build-room-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/build-room-cases.js +27 -0
- package/dist/agent-operations/__fixtures__/cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/cases.js +19 -11
- package/dist/agent-operations/__fixtures__/design-brief-cases.d.ts +25 -2
- package/dist/agent-operations/__fixtures__/design-brief-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/design-brief-cases.js +509 -66
- package/dist/agent-operations/__fixtures__/dressing-scenes.d.ts +30 -0
- package/dist/agent-operations/__fixtures__/dressing-scenes.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/dressing-scenes.js +82 -0
- package/dist/agent-operations/__fixtures__/native-materials.d.ts +407 -9
- package/dist/agent-operations/__fixtures__/native-materials.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/notation-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/notation-cases.js +14 -0
- package/dist/agent-operations/__fixtures__/roof-bearing-cases.d.ts +7253 -4053
- package/dist/agent-operations/__fixtures__/roof-bearing-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/room-cases.d.ts +1 -0
- package/dist/agent-operations/__fixtures__/room-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/room-cases.js +57 -1
- package/dist/agent-operations/__fixtures__/room-check-scenes.d.ts +51 -0
- package/dist/agent-operations/__fixtures__/room-check-scenes.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/room-check-scenes.js +121 -0
- package/dist/agent-operations/__fixtures__/scene-check-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/scene-check-cases.js +152 -18
- package/dist/agent-operations/__fixtures__/search-assets-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/search-assets-cases.js +91 -0
- package/dist/agent-operations/__fixtures__/site-cases.d.ts +40 -1
- package/dist/agent-operations/__fixtures__/site-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/structure-cases.d.ts +3 -0
- package/dist/agent-operations/__fixtures__/structure-cases.d.ts.map +1 -1
- package/dist/agent-operations/__fixtures__/structure-cases.js +199 -18
- package/dist/agent-operations/__fixtures__/unit-cases.d.ts +6 -0
- package/dist/agent-operations/__fixtures__/unit-cases.d.ts.map +1 -0
- package/dist/agent-operations/__fixtures__/unit-cases.js +266 -0
- package/dist/agent-operations/__fixtures__/verify-scene-cases.d.ts +109 -73
- package/dist/agent-operations/__fixtures__/verify-scene-cases.d.ts.map +1 -1
- package/dist/agent-operations/add-column.d.ts.map +1 -1
- package/dist/agent-operations/add-column.js +32 -3
- package/dist/agent-operations/add-fence.d.ts.map +1 -1
- package/dist/agent-operations/add-fence.js +2 -1
- package/dist/agent-operations/add-level.d.ts.map +1 -1
- package/dist/agent-operations/add-level.js +4 -4
- package/dist/agent-operations/add-object.d.ts +32 -6
- package/dist/agent-operations/add-object.d.ts.map +1 -1
- package/dist/agent-operations/add-object.js +59 -12
- package/dist/agent-operations/add-wall.d.ts +3 -8
- package/dist/agent-operations/add-wall.d.ts.map +1 -1
- package/dist/agent-operations/add-wall.js +31 -8
- package/dist/agent-operations/apply-changes.d.ts.map +1 -1
- package/dist/agent-operations/apply-changes.js +2 -1
- package/dist/agent-operations/asset-catalog.d.ts +63 -0
- package/dist/agent-operations/asset-catalog.d.ts.map +1 -0
- package/dist/agent-operations/asset-catalog.js +182 -0
- package/dist/agent-operations/asset-views.d.ts +4 -2
- package/dist/agent-operations/asset-views.d.ts.map +1 -1
- package/dist/agent-operations/asset-views.js +1 -3
- package/dist/agent-operations/author-scene-checks.d.ts +38 -0
- package/dist/agent-operations/author-scene-checks.d.ts.map +1 -0
- package/dist/agent-operations/author-scene-checks.js +266 -0
- package/dist/agent-operations/author-scene.d.ts +54 -20
- package/dist/agent-operations/author-scene.d.ts.map +1 -1
- package/dist/agent-operations/author-scene.js +1164 -196
- package/dist/agent-operations/authored-scene-merge.d.ts.map +1 -1
- package/dist/agent-operations/authored-scene-merge.js +61 -3
- package/dist/agent-operations/batch.d.ts +1 -1
- package/dist/agent-operations/batch.d.ts.map +1 -1
- package/dist/agent-operations/batch.js +38 -39
- package/dist/agent-operations/ceiling-object-observations.d.ts.map +1 -1
- package/dist/agent-operations/ceiling-object-observations.js +5 -4
- package/dist/agent-operations/circulation-geometry.d.ts +14 -0
- package/dist/agent-operations/circulation-geometry.d.ts.map +1 -0
- package/dist/agent-operations/circulation-geometry.js +151 -0
- package/dist/agent-operations/circulation-graph.d.ts +72 -0
- package/dist/agent-operations/circulation-graph.d.ts.map +1 -0
- package/dist/agent-operations/circulation-graph.js +713 -0
- package/dist/agent-operations/circulation-non-spaces.d.ts +10 -0
- package/dist/agent-operations/circulation-non-spaces.d.ts.map +1 -0
- package/dist/agent-operations/circulation-non-spaces.js +88 -0
- package/dist/agent-operations/circulation-spaces.d.ts +5880 -0
- package/dist/agent-operations/circulation-spaces.d.ts.map +1 -0
- package/dist/agent-operations/circulation-spaces.js +368 -0
- package/dist/agent-operations/collections.d.ts.map +1 -1
- package/dist/agent-operations/collections.js +9 -7
- package/dist/agent-operations/corner-window.d.ts.map +1 -1
- package/dist/agent-operations/corner-window.js +2 -4
- package/dist/agent-operations/create-roof.d.ts.map +1 -1
- package/dist/agent-operations/create-roof.js +5 -7
- package/dist/agent-operations/create-room.d.ts +4 -1
- package/dist/agent-operations/create-room.d.ts.map +1 -1
- package/dist/agent-operations/create-room.js +7 -4
- package/dist/agent-operations/create-stair.js +2 -2
- package/dist/agent-operations/design-brief.d.ts +13 -7
- package/dist/agent-operations/design-brief.d.ts.map +1 -1
- package/dist/agent-operations/design-brief.js +172 -92
- package/dist/agent-operations/door-clearance.d.ts +68 -8
- package/dist/agent-operations/door-clearance.d.ts.map +1 -1
- package/dist/agent-operations/door-clearance.js +127 -20
- package/dist/agent-operations/dress-targets.d.ts +23 -0
- package/dist/agent-operations/dress-targets.d.ts.map +1 -0
- package/dist/agent-operations/dress-targets.js +34 -0
- package/dist/agent-operations/duplicate-node.d.ts +14 -0
- package/dist/agent-operations/duplicate-node.d.ts.map +1 -0
- package/dist/agent-operations/duplicate-node.js +173 -0
- package/dist/agent-operations/find-by-type.d.ts.map +1 -1
- package/dist/agent-operations/find-by-type.js +3 -0
- package/dist/agent-operations/furnish-room.d.ts +2 -0
- package/dist/agent-operations/furnish-room.d.ts.map +1 -1
- package/dist/agent-operations/furnish-room.js +15 -4
- package/dist/agent-operations/furniture-kind.d.ts +28 -1
- package/dist/agent-operations/furniture-kind.d.ts.map +1 -1
- package/dist/agent-operations/furniture-kind.js +105 -6
- package/dist/agent-operations/ground-reader.d.ts +10 -0
- package/dist/agent-operations/ground-reader.d.ts.map +1 -0
- package/dist/agent-operations/ground-reader.js +25 -0
- package/dist/agent-operations/index.d.ts +118 -12
- package/dist/agent-operations/index.d.ts.map +1 -1
- package/dist/agent-operations/index.js +26 -1
- package/dist/agent-operations/item-solids.d.ts +39 -0
- package/dist/agent-operations/item-solids.d.ts.map +1 -0
- package/dist/agent-operations/item-solids.js +128 -0
- package/dist/agent-operations/layout-clearance.d.ts +91 -11
- package/dist/agent-operations/layout-clearance.d.ts.map +1 -1
- package/dist/agent-operations/layout-clearance.js +280 -73
- package/dist/agent-operations/level-height-fill.d.ts.map +1 -1
- package/dist/agent-operations/level-height-fill.js +7 -1
- package/dist/agent-operations/level-reads.d.ts +5 -0
- package/dist/agent-operations/level-reads.d.ts.map +1 -1
- package/dist/agent-operations/level-reads.js +38 -2
- package/dist/agent-operations/list-levels.d.ts.map +1 -1
- package/dist/agent-operations/list-levels.js +2 -4
- package/dist/agent-operations/move-node.d.ts +12 -0
- package/dist/agent-operations/move-node.d.ts.map +1 -0
- package/dist/agent-operations/move-node.js +28 -0
- package/dist/agent-operations/move-plan.d.ts +28 -0
- package/dist/agent-operations/move-plan.d.ts.map +1 -0
- package/dist/agent-operations/move-plan.js +257 -0
- package/dist/agent-operations/node-patch.d.ts.map +1 -1
- package/dist/agent-operations/node-patch.js +15 -0
- package/dist/agent-operations/paint.d.ts +3 -1
- package/dist/agent-operations/paint.d.ts.map +1 -1
- package/dist/agent-operations/paint.js +14 -1
- package/dist/agent-operations/photo-elevation.d.ts.map +1 -1
- package/dist/agent-operations/photo-elevation.js +2 -1
- package/dist/agent-operations/place-in-room.d.ts.map +1 -1
- package/dist/agent-operations/place-in-room.js +1 -0
- package/dist/agent-operations/place-items.d.ts.map +1 -1
- package/dist/agent-operations/place-items.js +3 -4
- package/dist/agent-operations/plan-clearance.d.ts +28 -0
- package/dist/agent-operations/plan-clearance.d.ts.map +1 -0
- package/dist/agent-operations/plan-clearance.js +47 -0
- package/dist/agent-operations/plan-geometry.d.ts +2 -0
- package/dist/agent-operations/plan-geometry.d.ts.map +1 -1
- package/dist/agent-operations/plan-geometry.js +10 -0
- package/dist/agent-operations/project-files.d.ts +10 -0
- package/dist/agent-operations/project-files.d.ts.map +1 -1
- package/dist/agent-operations/reachability.d.ts +41 -0
- package/dist/agent-operations/reachability.d.ts.map +1 -0
- package/dist/agent-operations/reachability.js +199 -0
- package/dist/agent-operations/room-checks.d.ts +60 -0
- package/dist/agent-operations/room-checks.d.ts.map +1 -0
- package/dist/agent-operations/room-checks.js +226 -0
- package/dist/agent-operations/room-faces.d.ts +30 -0
- package/dist/agent-operations/room-faces.d.ts.map +1 -0
- package/dist/agent-operations/room-faces.js +31 -0
- package/dist/agent-operations/room-findings.d.ts +5 -2
- package/dist/agent-operations/room-findings.d.ts.map +1 -1
- package/dist/agent-operations/room-findings.js +30 -0
- package/dist/agent-operations/room-finishes.d.ts +87 -0
- package/dist/agent-operations/room-finishes.d.ts.map +1 -0
- package/dist/agent-operations/room-finishes.js +193 -0
- package/dist/agent-operations/room-floor-script.d.ts +3 -3
- package/dist/agent-operations/room-floor-script.js +3 -3
- package/dist/agent-operations/room-readings.d.ts +90 -0
- package/dist/agent-operations/room-readings.d.ts.map +1 -0
- package/dist/agent-operations/room-readings.js +369 -0
- package/dist/agent-operations/room-tile.d.ts +15 -0
- package/dist/agent-operations/room-tile.d.ts.map +1 -0
- package/dist/agent-operations/room-tile.js +30 -0
- package/dist/agent-operations/room-wet.d.ts +55 -0
- package/dist/agent-operations/room-wet.d.ts.map +1 -0
- package/dist/agent-operations/room-wet.js +203 -0
- package/dist/agent-operations/scene-check-policy.d.ts +5 -0
- package/dist/agent-operations/scene-check-policy.d.ts.map +1 -0
- package/dist/agent-operations/scene-check-policy.js +24 -0
- package/dist/agent-operations/scene-checkpoint.d.ts +10 -0
- package/dist/agent-operations/scene-checkpoint.d.ts.map +1 -1
- package/dist/agent-operations/scene-checkpoint.js +31 -0
- package/dist/agent-operations/scene-issue-groups.d.ts +17 -0
- package/dist/agent-operations/scene-issue-groups.d.ts.map +1 -0
- package/dist/agent-operations/scene-issue-groups.js +71 -0
- package/dist/agent-operations/scene-materials.d.ts +23 -0
- package/dist/agent-operations/scene-materials.d.ts.map +1 -1
- package/dist/agent-operations/scene-materials.js +41 -0
- package/dist/agent-operations/scene-queries.d.ts +1667 -866
- package/dist/agent-operations/scene-queries.d.ts.map +1 -1
- package/dist/agent-operations/scene-queries.js +3 -3
- package/dist/agent-operations/scene-review.d.ts.map +1 -1
- package/dist/agent-operations/scene-review.js +3 -2
- package/dist/agent-operations/scene-view.d.ts.map +1 -1
- package/dist/agent-operations/scene-view.js +91 -21
- package/dist/agent-operations/search-assets.d.ts +10 -6
- package/dist/agent-operations/search-assets.d.ts.map +1 -1
- package/dist/agent-operations/search-assets.js +37 -22
- package/dist/agent-operations/set-checkpoint.d.ts.map +1 -1
- package/dist/agent-operations/set-checkpoint.js +1 -0
- package/dist/agent-operations/set-ground-level.d.ts +1 -1
- package/dist/agent-operations/set-ground-level.d.ts.map +1 -1
- package/dist/agent-operations/set-ground-level.js +3 -14
- package/dist/agent-operations/site.js +3 -2
- package/dist/agent-operations/slab-surface-script.d.ts +25 -0
- package/dist/agent-operations/slab-surface-script.d.ts.map +1 -0
- package/dist/agent-operations/slab-surface-script.js +60 -0
- package/dist/agent-operations/stair-plan-footprint.d.ts +9 -0
- package/dist/agent-operations/stair-plan-footprint.d.ts.map +1 -0
- package/dist/agent-operations/stair-plan-footprint.js +50 -0
- package/dist/agent-operations/types.d.ts +10 -5
- package/dist/agent-operations/types.d.ts.map +1 -1
- package/dist/agent-operations/units.d.ts +26 -0
- package/dist/agent-operations/units.d.ts.map +1 -0
- package/dist/agent-operations/units.js +110 -0
- package/dist/agent-operations/unreachable-rooms-check.d.ts +17 -0
- package/dist/agent-operations/unreachable-rooms-check.d.ts.map +1 -0
- package/dist/agent-operations/unreachable-rooms-check.js +35 -0
- package/dist/agent-operations/usage-checks.d.ts +2 -0
- package/dist/agent-operations/usage-checks.d.ts.map +1 -0
- package/dist/agent-operations/usage-checks.js +12 -0
- package/dist/agent-operations/verify-scene.d.ts +8 -11
- package/dist/agent-operations/verify-scene.d.ts.map +1 -1
- package/dist/agent-operations/verify-scene.js +55 -11
- package/dist/agent-operations/wall-face-defaults.d.ts +44 -0
- package/dist/agent-operations/wall-face-defaults.d.ts.map +1 -0
- package/dist/agent-operations/wall-face-defaults.js +229 -0
- package/dist/agent-operations/wall-joins.d.ts +119 -0
- package/dist/agent-operations/wall-joins.d.ts.map +1 -0
- package/dist/agent-operations/wall-joins.js +308 -0
- package/dist/agent-operations/wall-object-observations.d.ts.map +1 -1
- package/dist/agent-operations/wall-object-observations.js +4 -6
- package/dist/agent-operations/wall-skirting.d.ts.map +1 -1
- package/dist/agent-operations/wall-skirting.js +2 -0
- package/dist/agent-operations/wall-type.d.ts +49 -0
- package/dist/agent-operations/wall-type.d.ts.map +1 -0
- package/dist/agent-operations/wall-type.js +31 -0
- package/dist/agent-operations/zone-coverage.d.ts +85 -0
- package/dist/agent-operations/zone-coverage.d.ts.map +1 -0
- package/dist/agent-operations/zone-coverage.js +208 -0
- package/dist/agent-tools/add-object.d.ts +31 -0
- package/dist/agent-tools/add-object.d.ts.map +1 -1
- package/dist/agent-tools/add-object.js +44 -7
- package/dist/agent-tools/assets.d.ts +4 -0
- package/dist/agent-tools/assets.d.ts.map +1 -1
- package/dist/agent-tools/assets.js +11 -1
- package/dist/agent-tools/author-scene.d.ts +810 -15
- package/dist/agent-tools/author-scene.d.ts.map +1 -1
- package/dist/agent-tools/author-scene.js +275 -34
- package/dist/agent-tools/batch.d.ts +1 -1
- package/dist/agent-tools/batch.d.ts.map +1 -1
- package/dist/agent-tools/batch.js +5 -1
- package/dist/agent-tools/checkpoints.js +1 -1
- package/dist/agent-tools/columns.d.ts +14 -0
- package/dist/agent-tools/columns.d.ts.map +1 -1
- package/dist/agent-tools/columns.js +14 -2
- package/dist/agent-tools/contract.d.ts +10 -0
- package/dist/agent-tools/contract.d.ts.map +1 -1
- package/dist/agent-tools/contract.js +5 -1
- package/dist/agent-tools/corner-window.d.ts +1 -0
- package/dist/agent-tools/corner-window.d.ts.map +1 -1
- package/dist/agent-tools/corner-window.js +1 -1
- package/dist/agent-tools/create-room.d.ts +85 -0
- package/dist/agent-tools/create-room.d.ts.map +1 -1
- package/dist/agent-tools/create-room.js +8 -1
- package/dist/agent-tools/design-brief.d.ts +513 -7
- package/dist/agent-tools/design-brief.d.ts.map +1 -1
- package/dist/agent-tools/design-brief.js +192 -14
- package/dist/agent-tools/designs.js +1 -1
- package/dist/agent-tools/find-by-type.js +1 -1
- package/dist/agent-tools/index.d.ts +658 -10
- package/dist/agent-tools/index.d.ts.map +1 -1
- package/dist/agent-tools/index.js +9 -1
- package/dist/agent-tools/levels.js +4 -4
- package/dist/agent-tools/move-duplicate.d.ts +65 -0
- package/dist/agent-tools/move-duplicate.d.ts.map +1 -0
- package/dist/agent-tools/move-duplicate.js +68 -0
- package/dist/agent-tools/paint.d.ts +6 -0
- package/dist/agent-tools/paint.d.ts.map +1 -1
- package/dist/agent-tools/paint.js +7 -3
- package/dist/agent-tools/photo-elevation.js +1 -1
- package/dist/agent-tools/project-files.d.ts +2 -2
- package/dist/agent-tools/project-files.d.ts.map +1 -1
- package/dist/agent-tools/project-files.js +1 -1
- package/dist/agent-tools/refusal.d.ts +9 -1
- package/dist/agent-tools/refusal.d.ts.map +1 -1
- package/dist/agent-tools/refusal.js +5 -1
- package/dist/agent-tools/roofs.js +1 -1
- package/dist/agent-tools/room-structure.d.ts +60 -0
- package/dist/agent-tools/room-structure.d.ts.map +1 -1
- package/dist/agent-tools/room-structure.js +20 -1
- package/dist/agent-tools/search-materials.d.ts +1 -0
- package/dist/agent-tools/search-materials.d.ts.map +1 -1
- package/dist/agent-tools/site.js +1 -1
- package/dist/agent-tools/stairs.js +1 -1
- package/dist/agent-tools/units.d.ts +84 -0
- package/dist/agent-tools/units.d.ts.map +1 -0
- package/dist/agent-tools/units.js +54 -0
- package/dist/agent-tools/verify-scene-usage.d.ts +44 -0
- package/dist/agent-tools/verify-scene-usage.d.ts.map +1 -0
- package/dist/agent-tools/verify-scene-usage.js +146 -0
- package/dist/agent-tools/verify-scene.d.ts +12 -1
- package/dist/agent-tools/verify-scene.d.ts.map +1 -1
- package/dist/agent-tools/verify-scene.js +183 -3
- package/dist/agent-tools/view-scene.d.ts +3 -0
- package/dist/agent-tools/view-scene.d.ts.map +1 -1
- package/dist/agent-tools/view-scene.js +4 -1
- package/dist/agent-tools/wall-openings.d.ts +121 -2
- package/dist/agent-tools/wall-openings.d.ts.map +1 -1
- package/dist/agent-tools/wall-openings.js +123 -18
- package/dist/agent-tools/walls.d.ts +30 -0
- package/dist/agent-tools/walls.d.ts.map +1 -1
- package/dist/agent-tools/walls.js +54 -2
- package/dist/building/__fixtures__/wall-opening-cases.d.ts +340 -195
- package/dist/building/__fixtures__/wall-opening-cases.d.ts.map +1 -1
- package/dist/building/__fixtures__/wall-opening-cases.js +13 -0
- package/dist/building/code-profile.d.ts +231 -0
- package/dist/building/code-profile.d.ts.map +1 -0
- package/dist/building/code-profile.js +208 -0
- package/dist/building/corner-window.d.ts +2 -2
- package/dist/building/corner-window.d.ts.map +1 -1
- package/dist/building/corner-window.js +11 -2
- package/dist/building/door-types.d.ts +1 -0
- package/dist/building/door-types.d.ts.map +1 -1
- package/dist/building/door-types.js +2 -0
- package/dist/building/floor-item-fit.d.ts.map +1 -1
- package/dist/building/floor-item-fit.js +2 -4
- package/dist/building/ground-level.d.ts +1 -3
- package/dist/building/ground-level.d.ts.map +1 -1
- package/dist/building/ground-level.js +3 -5
- package/dist/building/index.d.ts +2 -0
- package/dist/building/index.d.ts.map +1 -1
- package/dist/building/index.js +2 -0
- package/dist/building/level-duplication.d.ts +5951 -4351
- package/dist/building/level-duplication.d.ts.map +1 -1
- package/dist/building/level-insertion.d.ts +1 -1
- package/dist/building/level-wall-copy.d.ts +24 -0
- package/dist/building/level-wall-copy.d.ts.map +1 -0
- package/dist/building/level-wall-copy.js +53 -0
- package/dist/building/merge-windows.d.ts.map +1 -1
- package/dist/building/merge-windows.js +1 -0
- package/dist/building/opening-style-presets.d.ts +2 -0
- package/dist/building/opening-style-presets.d.ts.map +1 -1
- package/dist/building/opening-style-presets.js +26 -5
- package/dist/building/room-use.d.ts +26 -0
- package/dist/building/room-use.d.ts.map +1 -0
- package/dist/building/room-use.js +102 -0
- package/dist/building/wall-openings.d.ts +115 -7
- package/dist/building/wall-openings.d.ts.map +1 -1
- package/dist/building/wall-openings.js +121 -29
- package/dist/building/window-types.d.ts +1 -0
- package/dist/building/window-types.d.ts.map +1 -1
- package/dist/building/window-types.js +3 -0
- package/dist/coherence/__fixtures__/enclosure-scenes.d.ts +84 -0
- package/dist/coherence/__fixtures__/enclosure-scenes.d.ts.map +1 -0
- package/dist/coherence/__fixtures__/enclosure-scenes.js +44 -0
- package/dist/commands/structure/attached-walls.d.ts +16 -0
- package/dist/commands/structure/attached-walls.d.ts.map +1 -0
- package/dist/commands/structure/attached-walls.js +53 -0
- package/dist/commands/structure/index.d.ts +3 -0
- package/dist/commands/structure/index.d.ts.map +1 -1
- package/dist/commands/structure/index.js +3 -0
- package/dist/commands/structure/move-separators.d.ts +62 -0
- package/dist/commands/structure/move-separators.d.ts.map +1 -0
- package/dist/commands/structure/move-separators.js +346 -0
- package/dist/commands/structure/set-floor-foundation.d.ts +5 -0
- package/dist/commands/structure/set-floor-foundation.d.ts.map +1 -1
- package/dist/commands/structure/set-wall-geometry.d.ts.map +1 -1
- package/dist/commands/structure/set-wall-geometry.js +44 -11
- package/dist/commands/structure/set-zone-intent.d.ts +26 -0
- package/dist/commands/structure/set-zone-intent.d.ts.map +1 -1
- package/dist/commands/structure/set-zone-intent.js +107 -2
- package/dist/commands/structure/shared.d.ts +888 -88
- package/dist/commands/structure/shared.d.ts.map +1 -1
- package/dist/commands/structure/wall-overlap.d.ts +45 -0
- package/dist/commands/structure/wall-overlap.d.ts.map +1 -0
- package/dist/commands/structure/wall-overlap.js +289 -0
- package/dist/commands/structure/zone-wall-merge.d.ts +3326 -2370
- package/dist/commands/structure/zone-wall-merge.d.ts.map +1 -1
- package/dist/contracts/reference-discovery.d.ts +2 -2
- package/dist/contracts/reference-discovery.d.ts.map +1 -1
- package/dist/contracts/reference-discovery.js +5 -3
- package/dist/contracts/reference-inventory.d.ts.map +1 -1
- package/dist/contracts/reference-inventory.js +75 -24
- package/dist/events/bus.d.ts +15 -2
- package/dist/events/bus.d.ts.map +1 -1
- package/dist/hooks/spatial-grid/built-in-floor-placed.d.ts +40 -0
- package/dist/hooks/spatial-grid/built-in-floor-placed.d.ts.map +1 -0
- package/dist/hooks/spatial-grid/built-in-floor-placed.js +220 -0
- package/dist/hooks/spatial-grid/floor-placed-elevation.d.ts.map +1 -1
- package/dist/hooks/spatial-grid/floor-placed-elevation.js +13 -7
- package/dist/hooks/spatial-grid/spatial-grid-manager.d.ts +56 -1
- package/dist/hooks/spatial-grid/spatial-grid-manager.d.ts.map +1 -1
- package/dist/hooks/spatial-grid/spatial-grid-manager.js +177 -27
- package/dist/hooks/spatial-grid/spatial-grid-sync.d.ts +1631 -831
- package/dist/hooks/spatial-grid/spatial-grid-sync.d.ts.map +1 -1
- package/dist/hooks/spatial-grid/spatial-grid-sync.js +24 -1
- package/dist/hooks/spatial-grid/support-host-patch.js +10 -10
- package/dist/i18n/format.d.ts +41 -0
- package/dist/i18n/format.d.ts.map +1 -0
- package/dist/i18n/format.js +124 -0
- package/dist/i18n/index.d.ts +5 -0
- package/dist/i18n/index.d.ts.map +1 -0
- package/dist/i18n/index.js +3 -0
- package/dist/i18n/registry.d.ts +78 -0
- package/dist/i18n/registry.d.ts.map +1 -0
- package/dist/i18n/registry.js +252 -0
- package/dist/i18n/use-translate.d.ts +16 -0
- package/dist/i18n/use-translate.d.ts.map +1 -0
- package/dist/i18n/use-translate.js +23 -0
- package/dist/index.d.ts +32 -16
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +31 -15
- package/dist/lib/__fixtures__/mezzanine.d.ts +6840 -4169
- package/dist/lib/__fixtures__/mezzanine.d.ts.map +1 -1
- package/dist/lib/absorb-wall-separators.d.ts +2128 -1328
- package/dist/lib/absorb-wall-separators.d.ts.map +1 -1
- package/dist/lib/beam.d.ts +137 -0
- package/dist/lib/beam.d.ts.map +1 -0
- package/dist/lib/beam.js +297 -0
- package/dist/lib/below-grade-footprints.d.ts +13 -5
- package/dist/lib/below-grade-footprints.d.ts.map +1 -1
- package/dist/lib/below-grade-footprints.js +53 -10
- package/dist/lib/build-up.d.ts +89 -0
- package/dist/lib/build-up.d.ts.map +1 -0
- package/dist/lib/build-up.js +216 -0
- package/dist/lib/corner-pair.d.ts +205 -4
- package/dist/lib/corner-pair.d.ts.map +1 -1
- package/dist/lib/deck-boards.d.ts +80 -0
- package/dist/lib/deck-boards.d.ts.map +1 -0
- package/dist/lib/deck-boards.js +184 -0
- package/dist/lib/deck-framing.d.ts +150 -0
- package/dist/lib/deck-framing.d.ts.map +1 -0
- package/dist/lib/deck-framing.js +515 -0
- package/dist/lib/deepest-drawn.d.ts +3 -6
- package/dist/lib/deepest-drawn.d.ts.map +1 -1
- package/dist/lib/deepest-drawn.js +4 -8
- package/dist/lib/door-opening.d.ts +19 -0
- package/dist/lib/door-opening.d.ts.map +1 -0
- package/dist/lib/door-opening.js +27 -0
- package/dist/lib/door-operation.d.ts +2 -0
- package/dist/lib/door-operation.d.ts.map +1 -1
- package/dist/lib/door-operation.js +4 -0
- package/dist/lib/exterior-wall-loops.d.ts.map +1 -1
- package/dist/lib/exterior-wall-loops.js +2 -1
- package/dist/lib/finish-script.d.ts +5 -5
- package/dist/lib/finish-script.d.ts.map +1 -1
- package/dist/lib/finish-script.js +12 -5
- package/dist/lib/floor-footprint-name.d.ts +17 -0
- package/dist/lib/floor-footprint-name.d.ts.map +1 -1
- package/dist/lib/floor-footprint-name.js +17 -4
- package/dist/lib/floor-intent-changes.d.ts.map +1 -1
- package/dist/lib/floor-intent-changes.js +60 -35
- package/dist/lib/floor-opening-footprints.d.ts +1 -1
- package/dist/lib/floor-opening-footprints.d.ts.map +1 -1
- package/dist/lib/floor-opening-footprints.js +10 -4
- package/dist/lib/floor-plate-paint.d.ts +2 -0
- package/dist/lib/floor-plate-paint.d.ts.map +1 -1
- package/dist/lib/floor-plate-paint.js +12 -0
- package/dist/lib/floor-plates.d.ts +250 -0
- package/dist/lib/floor-plates.d.ts.map +1 -1
- package/dist/lib/floor-plates.js +43 -4
- package/dist/lib/floor-script.d.ts +35 -6
- package/dist/lib/floor-script.d.ts.map +1 -1
- package/dist/lib/floor-script.js +96 -16
- package/dist/lib/foundation-construction.d.ts +4 -13
- package/dist/lib/foundation-construction.d.ts.map +1 -1
- package/dist/lib/foundation-construction.js +4 -14
- package/dist/lib/foundation-standard.d.ts +2 -3
- package/dist/lib/foundation-standard.d.ts.map +1 -1
- package/dist/lib/foundation-standard.js +2 -3
- package/dist/lib/foundation-wall.d.ts +1 -2
- package/dist/lib/foundation-wall.d.ts.map +1 -1
- package/dist/lib/foundation-wall.js +1 -2
- package/dist/lib/framing-post.d.ts +91 -0
- package/dist/lib/framing-post.d.ts.map +1 -0
- package/dist/lib/framing-post.js +174 -0
- package/dist/lib/geometry-script-node.d.ts +11 -0
- package/dist/lib/geometry-script-node.d.ts.map +1 -1
- package/dist/lib/geometry-script-node.js +35 -0
- package/dist/lib/grade-standing.d.ts +16 -2
- package/dist/lib/grade-standing.d.ts.map +1 -1
- package/dist/lib/grade-standing.js +129 -9
- package/dist/lib/ground-seat.d.ts +2 -22
- package/dist/lib/ground-seat.d.ts.map +1 -1
- package/dist/lib/ground-seat.js +2 -17
- package/dist/lib/ground-window.d.ts +2 -1
- package/dist/lib/ground-window.d.ts.map +1 -1
- package/dist/lib/ground-window.js +5 -2
- package/dist/lib/level-footprints.d.ts +2 -0
- package/dist/lib/level-footprints.d.ts.map +1 -1
- package/dist/lib/level-footprints.js +7 -0
- package/dist/lib/opening-casing.d.ts +67 -0
- package/dist/lib/opening-casing.d.ts.map +1 -0
- package/dist/lib/opening-casing.js +131 -0
- package/dist/lib/opening-exterior-face.d.ts +6 -0
- package/dist/lib/opening-exterior-face.d.ts.map +1 -0
- package/dist/lib/opening-exterior-face.js +15 -0
- package/dist/lib/opening-floor-datum.d.ts +11 -5
- package/dist/lib/opening-floor-datum.d.ts.map +1 -1
- package/dist/lib/opening-floor-datum.js +38 -6
- package/dist/lib/opening-frame-depth.d.ts +18 -0
- package/dist/lib/opening-frame-depth.d.ts.map +1 -0
- package/dist/lib/opening-frame-depth.js +22 -0
- package/dist/lib/outdoor-room.d.ts +32 -0
- package/dist/lib/outdoor-room.d.ts.map +1 -0
- package/dist/lib/outdoor-room.js +66 -0
- package/dist/lib/plate-surface.d.ts +8 -0
- package/dist/lib/plate-surface.d.ts.map +1 -1
- package/dist/lib/plate-surface.js +53 -3
- package/dist/lib/porch-framing-sync.d.ts +46 -0
- package/dist/lib/porch-framing-sync.d.ts.map +1 -0
- package/dist/lib/porch-framing-sync.js +206 -0
- package/dist/lib/porch-framing.d.ts +44 -0
- package/dist/lib/porch-framing.d.ts.map +1 -0
- package/dist/lib/porch-framing.js +159 -0
- package/dist/lib/railing-rooms.d.ts +13 -0
- package/dist/lib/railing-rooms.d.ts.map +1 -0
- package/dist/lib/railing-rooms.js +37 -0
- package/dist/lib/roof-eave.d.ts +135 -0
- package/dist/lib/roof-eave.d.ts.map +1 -0
- package/dist/lib/roof-eave.js +186 -0
- package/dist/lib/room-floor-plate.d.ts +3 -1
- package/dist/lib/room-floor-plate.d.ts.map +1 -1
- package/dist/lib/room-floor-plate.js +7 -0
- package/dist/lib/space-detection.d.ts +13 -0
- package/dist/lib/space-detection.d.ts.map +1 -1
- package/dist/lib/space-detection.js +112 -24
- package/dist/lib/structure-kernel.d.ts +22 -9
- package/dist/lib/structure-kernel.d.ts.map +1 -1
- package/dist/lib/structure-kernel.js +146 -28
- package/dist/lib/structure-reconcile.d.ts +1 -1
- package/dist/lib/structure-reconcile.d.ts.map +1 -1
- package/dist/lib/structure-reconcile.js +7 -4
- package/dist/lib/surface-intent.d.ts +10 -0
- package/dist/lib/surface-intent.d.ts.map +1 -0
- package/dist/lib/surface-intent.js +18 -0
- package/dist/lib/terrain-source.d.ts.map +1 -1
- package/dist/lib/terrain-source.js +2 -1
- package/dist/lib/wall-face-script.d.ts.map +1 -1
- package/dist/lib/wall-face-script.js +5 -2
- package/dist/material-kinds.d.ts +1 -1
- package/dist/material-kinds.d.ts.map +1 -1
- package/dist/material-kinds.js +1 -0
- package/dist/material-library.d.ts +15 -0
- package/dist/material-library.d.ts.map +1 -1
- package/dist/material-library.js +458 -59
- package/dist/node-slots/door.d.ts +3 -4
- package/dist/node-slots/door.d.ts.map +1 -1
- package/dist/node-slots/door.js +4 -3
- package/dist/node-slots/wall.d.ts.map +1 -1
- package/dist/node-slots/wall.js +21 -3
- package/dist/node-slots/window.d.ts +2 -2
- package/dist/node-slots/window.d.ts.map +1 -1
- package/dist/node-slots/window.js +6 -1
- package/dist/procedural-items/design.d.ts +8 -0
- package/dist/procedural-items/design.d.ts.map +1 -1
- package/dist/procedural-items/design.js +169 -21
- package/dist/procedural-items/motion-controller.d.ts +2 -0
- package/dist/procedural-items/motion-controller.d.ts.map +1 -1
- package/dist/procedural-items/motion-controller.js +2 -1
- package/dist/registry/index.d.ts +2 -2
- package/dist/registry/index.d.ts.map +1 -1
- package/dist/registry/index.js +1 -1
- package/dist/registry/mechanism.d.ts +4 -1
- package/dist/registry/mechanism.d.ts.map +1 -1
- package/dist/registry/mechanism.js +10 -0
- package/dist/registry/types.d.ts +65 -23
- package/dist/registry/types.d.ts.map +1 -1
- package/dist/runtime/__fixtures__/live-scene.d.ts +14 -0
- package/dist/runtime/__fixtures__/live-scene.d.ts.map +1 -0
- package/dist/runtime/__fixtures__/live-scene.js +64 -0
- package/dist/runtime/apply.d.ts +42 -0
- package/dist/runtime/apply.d.ts.map +1 -0
- package/dist/runtime/apply.js +274 -0
- package/dist/runtime/dependencies.d.ts +97 -0
- package/dist/runtime/dependencies.d.ts.map +1 -0
- package/dist/runtime/dependencies.js +42 -0
- package/dist/runtime/ids.d.ts +11 -0
- package/dist/runtime/ids.d.ts.map +1 -0
- package/dist/runtime/ids.js +80 -0
- package/dist/runtime/index.d.ts +14 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +11 -0
- package/dist/runtime/node-queries.d.ts +16 -0
- package/dist/runtime/node-queries.d.ts.map +1 -0
- package/dist/runtime/node-queries.js +30 -0
- package/dist/runtime/patch.d.ts +26 -0
- package/dist/runtime/patch.d.ts.map +1 -0
- package/dist/runtime/patch.js +165 -0
- package/dist/runtime/reader.d.ts +104 -0
- package/dist/runtime/reader.d.ts.map +1 -0
- package/dist/runtime/reader.js +455 -0
- package/dist/runtime/scene-runtime.d.ts +112 -0
- package/dist/runtime/scene-runtime.d.ts.map +1 -0
- package/dist/runtime/scene-runtime.js +302 -0
- package/dist/schema/__fixtures__/node-fixtures.d.ts.map +1 -1
- package/dist/schema/__fixtures__/node-fixtures.js +1 -0
- package/dist/schema/assembly.d.ts +3 -0
- package/dist/schema/assembly.d.ts.map +1 -1
- package/dist/schema/assembly.js +13 -0
- package/dist/schema/asset-url.d.ts +37 -2
- package/dist/schema/asset-url.d.ts.map +1 -1
- package/dist/schema/asset-url.js +80 -11
- package/dist/schema/base.d.ts +8 -0
- package/dist/schema/base.d.ts.map +1 -1
- package/dist/schema/base.js +19 -1
- package/dist/schema/build-up.d.ts +247 -0
- package/dist/schema/build-up.d.ts.map +1 -0
- package/dist/schema/build-up.js +83 -0
- package/dist/schema/geometry-source.d.ts +80 -0
- package/dist/schema/geometry-source.d.ts.map +1 -1
- package/dist/schema/geometry-source.js +38 -0
- package/dist/schema/index.d.ts +12 -7
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +12 -6
- package/dist/schema/material.d.ts +5 -0
- package/dist/schema/material.d.ts.map +1 -1
- package/dist/schema/material.js +6 -0
- package/dist/schema/nodes/beam.d.ts +264 -0
- package/dist/schema/nodes/beam.d.ts.map +1 -0
- package/dist/schema/nodes/beam.js +139 -0
- package/dist/schema/nodes/box-vent.d.ts +5 -0
- package/dist/schema/nodes/box-vent.d.ts.map +1 -1
- package/dist/schema/nodes/cabinet.d.ts +10 -0
- package/dist/schema/nodes/cabinet.d.ts.map +1 -1
- package/dist/schema/nodes/ceiling.d.ts +48 -0
- package/dist/schema/nodes/ceiling.d.ts.map +1 -1
- package/dist/schema/nodes/ceiling.js +5 -0
- package/dist/schema/nodes/chimney.d.ts +10 -0
- package/dist/schema/nodes/chimney.d.ts.map +1 -1
- package/dist/schema/nodes/column.d.ts +42 -0
- package/dist/schema/nodes/column.d.ts.map +1 -1
- package/dist/schema/nodes/column.js +11 -1
- package/dist/schema/nodes/cupola.d.ts +5 -0
- package/dist/schema/nodes/cupola.d.ts.map +1 -1
- package/dist/schema/nodes/door.d.ts +54 -3
- package/dist/schema/nodes/door.d.ts.map +1 -1
- package/dist/schema/nodes/door.js +41 -7
- package/dist/schema/nodes/dormer.d.ts +20 -0
- package/dist/schema/nodes/dormer.d.ts.map +1 -1
- package/dist/schema/nodes/downspout.d.ts +5 -0
- package/dist/schema/nodes/downspout.d.ts.map +1 -1
- package/dist/schema/nodes/elevator.d.ts +5 -0
- package/dist/schema/nodes/elevator.d.ts.map +1 -1
- package/dist/schema/nodes/eyebrow-vent.d.ts +5 -0
- package/dist/schema/nodes/eyebrow-vent.d.ts.map +1 -1
- package/dist/schema/nodes/fence.d.ts +5 -0
- package/dist/schema/nodes/fence.d.ts.map +1 -1
- package/dist/schema/nodes/guide.d.ts +14 -0
- package/dist/schema/nodes/guide.d.ts.map +1 -1
- package/dist/schema/nodes/guide.js +2 -0
- package/dist/schema/nodes/gutter.d.ts +5 -0
- package/dist/schema/nodes/gutter.d.ts.map +1 -1
- package/dist/schema/nodes/item.d.ts +71 -0
- package/dist/schema/nodes/item.d.ts.map +1 -1
- package/dist/schema/nodes/item.js +5 -1
- package/dist/schema/nodes/level.d.ts +1 -1
- package/dist/schema/nodes/level.d.ts.map +1 -1
- package/dist/schema/nodes/opening-types.d.ts +13 -0
- package/dist/schema/nodes/opening-types.d.ts.map +1 -1
- package/dist/schema/nodes/opening-types.js +8 -1
- package/dist/schema/nodes/railing-wall.d.ts +112 -0
- package/dist/schema/nodes/railing-wall.d.ts.map +1 -0
- package/dist/schema/nodes/railing-wall.js +160 -0
- package/dist/schema/nodes/ridge-vent.d.ts +5 -0
- package/dist/schema/nodes/ridge-vent.d.ts.map +1 -1
- package/dist/schema/nodes/roof-segment.d.ts +224 -1
- package/dist/schema/nodes/roof-segment.d.ts.map +1 -1
- package/dist/schema/nodes/roof-segment.js +57 -10
- package/dist/schema/nodes/roof-types.d.ts +11 -0
- package/dist/schema/nodes/roof-types.d.ts.map +1 -1
- package/dist/schema/nodes/roof-types.js +6 -0
- package/dist/schema/nodes/roof.d.ts +60 -0
- package/dist/schema/nodes/roof.d.ts.map +1 -1
- package/dist/schema/nodes/roof.js +4 -0
- package/dist/schema/nodes/shelf.d.ts +5 -0
- package/dist/schema/nodes/shelf.d.ts.map +1 -1
- package/dist/schema/nodes/site.d.ts +80 -0
- package/dist/schema/nodes/site.d.ts.map +1 -1
- package/dist/schema/nodes/site.js +7 -0
- package/dist/schema/nodes/skylight.d.ts +10 -0
- package/dist/schema/nodes/skylight.d.ts.map +1 -1
- package/dist/schema/nodes/slab.d.ts +137 -0
- package/dist/schema/nodes/slab.d.ts.map +1 -1
- package/dist/schema/nodes/slab.js +3 -0
- package/dist/schema/nodes/solar-panel.d.ts +10 -0
- package/dist/schema/nodes/solar-panel.d.ts.map +1 -1
- package/dist/schema/nodes/stair-segment.d.ts +5 -0
- package/dist/schema/nodes/stair-segment.d.ts.map +1 -1
- package/dist/schema/nodes/stair-structure.d.ts +69 -0
- package/dist/schema/nodes/stair-structure.d.ts.map +1 -0
- package/dist/schema/nodes/stair-structure.js +39 -0
- package/dist/schema/nodes/stair.d.ts +46 -0
- package/dist/schema/nodes/stair.d.ts.map +1 -1
- package/dist/schema/nodes/stair.js +3 -0
- package/dist/schema/nodes/turbine-vent.d.ts +5 -0
- package/dist/schema/nodes/turbine-vent.d.ts.map +1 -1
- package/dist/schema/nodes/wall.d.ts +135 -2
- package/dist/schema/nodes/wall.d.ts.map +1 -1
- package/dist/schema/nodes/wall.js +42 -6
- package/dist/schema/nodes/window.d.ts +66 -1
- package/dist/schema/nodes/window.d.ts.map +1 -1
- package/dist/schema/nodes/window.js +50 -5
- package/dist/schema/nodes/zone.d.ts +68 -0
- package/dist/schema/nodes/zone.d.ts.map +1 -1
- package/dist/schema/nodes/zone.js +32 -0
- package/dist/schema/scene-material.d.ts +5 -0
- package/dist/schema/scene-material.d.ts.map +1 -1
- package/dist/schema/types.d.ts +1079 -4
- package/dist/schema/types.d.ts.map +1 -1
- package/dist/schema/types.js +2 -0
- package/dist/schema/wall-type.d.ts +95 -0
- package/dist/schema/wall-type.d.ts.map +1 -0
- package/dist/schema/wall-type.js +32 -0
- package/dist/services/roof-bearing.d.ts.map +1 -1
- package/dist/services/roof-bearing.js +6 -3
- package/dist/services/roof-level.d.ts.map +1 -1
- package/dist/services/roof-level.js +4 -3
- package/dist/services/roof-move.d.ts.map +1 -1
- package/dist/services/roof-move.js +13 -7
- package/dist/services/storey.d.ts.map +1 -1
- package/dist/services/storey.js +13 -8
- package/dist/spatial/usage-field/beds.d.ts +51 -0
- package/dist/spatial/usage-field/beds.d.ts.map +1 -0
- package/dist/spatial/usage-field/beds.js +346 -0
- package/dist/spatial/usage-field/blocked.d.ts +28 -0
- package/dist/spatial/usage-field/blocked.d.ts.map +1 -0
- package/dist/spatial/usage-field/blocked.js +185 -0
- package/dist/spatial/usage-field/boxes.d.ts +17 -0
- package/dist/spatial/usage-field/boxes.d.ts.map +1 -0
- package/dist/spatial/usage-field/boxes.js +82 -0
- package/dist/spatial/usage-field/catalogue-shapes.d.ts +3 -0
- package/dist/spatial/usage-field/catalogue-shapes.d.ts.map +1 -0
- package/dist/spatial/usage-field/catalogue-shapes.js +257 -0
- package/dist/spatial/usage-field/catalogue.d.ts +6 -0
- package/dist/spatial/usage-field/catalogue.d.ts.map +1 -0
- package/dist/spatial/usage-field/catalogue.js +11 -0
- package/dist/spatial/usage-field/clash.d.ts +40 -0
- package/dist/spatial/usage-field/clash.d.ts.map +1 -0
- package/dist/spatial/usage-field/clash.js +187 -0
- package/dist/spatial/usage-field/door-stairs.d.ts +18 -0
- package/dist/spatial/usage-field/door-stairs.d.ts.map +1 -0
- package/dist/spatial/usage-field/door-stairs.js +129 -0
- package/dist/spatial/usage-field/entry-way.d.ts +14 -0
- package/dist/spatial/usage-field/entry-way.d.ts.map +1 -0
- package/dist/spatial/usage-field/entry-way.js +219 -0
- package/dist/spatial/usage-field/fences.d.ts +18 -0
- package/dist/spatial/usage-field/fences.d.ts.map +1 -0
- package/dist/spatial/usage-field/fences.js +253 -0
- package/dist/spatial/usage-field/field.d.ts +44 -0
- package/dist/spatial/usage-field/field.d.ts.map +1 -0
- package/dist/spatial/usage-field/field.js +145 -0
- package/dist/spatial/usage-field/findings.d.ts +76 -0
- package/dist/spatial/usage-field/findings.d.ts.map +1 -0
- package/dist/spatial/usage-field/findings.js +252 -0
- package/dist/spatial/usage-field/fixtures.d.ts +18 -0
- package/dist/spatial/usage-field/fixtures.d.ts.map +1 -0
- package/dist/spatial/usage-field/fixtures.js +160 -0
- package/dist/spatial/usage-field/flag.d.ts +10 -0
- package/dist/spatial/usage-field/flag.d.ts.map +1 -0
- package/dist/spatial/usage-field/flag.js +12 -0
- package/dist/spatial/usage-field/floors.d.ts +13 -0
- package/dist/spatial/usage-field/floors.d.ts.map +1 -0
- package/dist/spatial/usage-field/floors.js +36 -0
- package/dist/spatial/usage-field/index.d.ts +7 -0
- package/dist/spatial/usage-field/index.d.ts.map +1 -0
- package/dist/spatial/usage-field/index.js +5 -0
- package/dist/spatial/usage-field/items.d.ts +38 -0
- package/dist/spatial/usage-field/items.d.ts.map +1 -0
- package/dist/spatial/usage-field/items.js +261 -0
- package/dist/spatial/usage-field/labels.d.ts +8 -0
- package/dist/spatial/usage-field/labels.d.ts.map +1 -0
- package/dist/spatial/usage-field/labels.js +14 -0
- package/dist/spatial/usage-field/level-field.d.ts +47 -0
- package/dist/spatial/usage-field/level-field.d.ts.map +1 -0
- package/dist/spatial/usage-field/level-field.js +96 -0
- package/dist/spatial/usage-field/measure.d.ts +324 -0
- package/dist/spatial/usage-field/measure.d.ts.map +1 -0
- package/dist/spatial/usage-field/measure.js +458 -0
- package/dist/spatial/usage-field/obstacles.d.ts +63 -0
- package/dist/spatial/usage-field/obstacles.d.ts.map +1 -0
- package/dist/spatial/usage-field/obstacles.js +215 -0
- package/dist/spatial/usage-field/openings.d.ts +12 -0
- package/dist/spatial/usage-field/openings.d.ts.map +1 -0
- package/dist/spatial/usage-field/openings.js +162 -0
- package/dist/spatial/usage-field/path.d.ts +48 -0
- package/dist/spatial/usage-field/path.d.ts.map +1 -0
- package/dist/spatial/usage-field/path.js +354 -0
- package/dist/spatial/usage-field/pieces.d.ts +27 -0
- package/dist/spatial/usage-field/pieces.d.ts.map +1 -0
- package/dist/spatial/usage-field/pieces.js +89 -0
- package/dist/spatial/usage-field/shapes.d.ts +18 -0
- package/dist/spatial/usage-field/shapes.d.ts.map +1 -0
- package/dist/spatial/usage-field/shapes.js +92 -0
- package/dist/spatial/usage-field/stairs.d.ts +23 -0
- package/dist/spatial/usage-field/stairs.d.ts.map +1 -0
- package/dist/spatial/usage-field/stairs.js +163 -0
- package/dist/spatial/usage-field/support.d.ts +24 -0
- package/dist/spatial/usage-field/support.d.ts.map +1 -0
- package/dist/spatial/usage-field/support.js +46 -0
- package/dist/spatial/usage-field/swings.d.ts +846 -0
- package/dist/spatial/usage-field/swings.d.ts.map +1 -0
- package/dist/spatial/usage-field/swings.js +427 -0
- package/dist/spatial/usage-field/types.d.ts +65 -0
- package/dist/spatial/usage-field/types.d.ts.map +1 -0
- package/dist/spatial/usage-field/types.js +1 -0
- package/dist/spatial/usage-field/walls.d.ts +1057 -0
- package/dist/spatial/usage-field/walls.d.ts.map +1 -0
- package/dist/spatial/usage-field/walls.js +166 -0
- package/dist/spatial/usage-field/way-in.d.ts +26 -0
- package/dist/spatial/usage-field/way-in.d.ts.map +1 -0
- package/dist/spatial/usage-field/way-in.js +113 -0
- package/dist/store/actions/node-actions.d.ts +2124 -1322
- package/dist/store/actions/node-actions.d.ts.map +1 -1
- package/dist/store/actions/node-actions.js +42 -16
- package/dist/store/derived-node-guard.d.ts +10 -2
- package/dist/store/derived-node-guard.d.ts.map +1 -1
- package/dist/store/derived-node-guard.js +31 -11
- package/dist/store/document-settling.d.ts +9 -0
- package/dist/store/document-settling.d.ts.map +1 -0
- package/dist/store/document-settling.js +22 -0
- package/dist/store/history-control.d.ts +19 -10
- package/dist/store/history-control.d.ts.map +1 -1
- package/dist/store/history-control.js +176 -127
- package/dist/store/history-drafts.d.ts.map +1 -1
- package/dist/store/history-drafts.js +21 -17
- package/dist/store/live-previews.d.ts +9 -0
- package/dist/store/live-previews.d.ts.map +1 -0
- package/dist/store/live-previews.js +19 -0
- package/dist/store/scene-annotations.d.ts +6751 -5151
- package/dist/store/scene-annotations.d.ts.map +1 -1
- package/dist/store/scene-environment.d.ts +33 -0
- package/dist/store/scene-environment.d.ts.map +1 -0
- package/dist/store/scene-environment.js +54 -0
- package/dist/store/scene-hydration.d.ts.map +1 -1
- package/dist/store/scene-hydration.js +41 -30
- package/dist/store/use-interactive.d.ts +9 -3
- package/dist/store/use-interactive.d.ts.map +1 -1
- package/dist/store/use-interactive.js +43 -11
- package/dist/store/use-live-node-overrides.d.ts.map +1 -1
- package/dist/store/use-live-node-overrides.js +3 -0
- package/dist/store/use-scene.d.ts +25 -0
- package/dist/store/use-scene.d.ts.map +1 -1
- package/dist/store/use-scene.js +408 -336
- package/dist/systems/document-reconcile.d.ts +40 -0
- package/dist/systems/document-reconcile.d.ts.map +1 -0
- package/dist/systems/document-reconcile.js +159 -0
- package/dist/systems/elevator/elevator-opening-system.d.ts.map +1 -1
- package/dist/systems/elevator/elevator-opening-system.js +9 -24
- package/dist/systems/fence/guard-layout.d.ts +69 -0
- package/dist/systems/fence/guard-layout.d.ts.map +1 -0
- package/dist/systems/fence/guard-layout.js +194 -0
- package/dist/systems/owned-floor-openings.d.ts +13 -1
- package/dist/systems/owned-floor-openings.d.ts.map +1 -1
- package/dist/systems/owned-floor-openings.js +58 -2
- package/dist/systems/reconcile-owned-floor-openings.d.ts +3 -1
- package/dist/systems/reconcile-owned-floor-openings.d.ts.map +1 -1
- package/dist/systems/reconcile-owned-floor-openings.js +4 -4
- package/dist/systems/roof/roof-elevation-system.d.ts.map +1 -1
- package/dist/systems/roof/roof-elevation-system.js +8 -26
- package/dist/systems/roof/roof-elevation.d.ts +16 -1
- package/dist/systems/roof/roof-elevation.d.ts.map +1 -1
- package/dist/systems/roof/roof-elevation.js +85 -4
- package/dist/systems/roof/roof-footprint.d.ts +42 -1
- package/dist/systems/roof/roof-footprint.d.ts.map +1 -1
- package/dist/systems/roof/roof-footprint.js +160 -4
- package/dist/systems/slab/__fixtures__/floor-step.d.ts +3163 -1934
- package/dist/systems/slab/__fixtures__/floor-step.d.ts.map +1 -1
- package/dist/systems/slab/__fixtures__/raised-room.d.ts +2495 -1249
- package/dist/systems/slab/__fixtures__/raised-room.d.ts.map +1 -1
- package/dist/systems/stair/stair-clearance.d.ts +7 -0
- package/dist/systems/stair/stair-clearance.d.ts.map +1 -1
- package/dist/systems/stair/stair-clearance.js +31 -11
- package/dist/systems/stair/stair-construction.d.ts +8 -3
- package/dist/systems/stair/stair-construction.d.ts.map +1 -1
- package/dist/systems/stair/stair-construction.js +55 -4
- package/dist/systems/stair/stair-opening-preview.d.ts +889 -89
- package/dist/systems/stair/stair-opening-preview.d.ts.map +1 -1
- package/dist/systems/stair/stair-opening-system.d.ts.map +1 -1
- package/dist/systems/stair/stair-opening-system.js +18 -34
- package/dist/systems/stair/stair-presets.d.ts +36 -0
- package/dist/systems/stair/stair-presets.d.ts.map +1 -1
- package/dist/systems/stair/stair-rise-query.d.ts.map +1 -1
- package/dist/systems/stair/stair-rise-query.js +3 -2
- package/dist/systems/stair/stair-rise.d.ts.map +1 -1
- package/dist/systems/stair/stair-rise.js +6 -0
- package/dist/systems/stair/stair-sizing.d.ts +42 -11
- package/dist/systems/stair/stair-sizing.d.ts.map +1 -1
- package/dist/systems/stair/stair-sizing.js +10 -1
- package/dist/systems/stair/stair-structure.d.ts +277 -0
- package/dist/systems/stair/stair-structure.d.ts.map +1 -0
- package/dist/systems/stair/stair-structure.js +496 -0
- package/dist/systems/wall/wall-assembly.d.ts +84 -6
- package/dist/systems/wall/wall-assembly.d.ts.map +1 -1
- package/dist/systems/wall/wall-assembly.js +204 -5
- package/dist/systems/wall/wall-finish.d.ts +38 -2
- package/dist/systems/wall/wall-finish.d.ts.map +1 -1
- package/dist/systems/wall/wall-finish.js +70 -2
- package/dist/systems/wall/wall-footprint.js +2 -2
- package/dist/systems/wall/wall-merge.d.ts.map +1 -1
- package/dist/systems/wall/wall-merge.js +28 -7
- package/dist/systems/wall/wall-mitering.d.ts +1 -0
- package/dist/systems/wall/wall-mitering.d.ts.map +1 -1
- package/dist/systems/wall/wall-mitering.js +152 -52
- package/dist/systems/wall/wall-move.d.ts +23 -6
- package/dist/systems/wall/wall-move.d.ts.map +1 -1
- package/dist/systems/wall/wall-move.js +65 -0
- package/dist/systems/wall/wall-top.d.ts +2 -2
- package/dist/systems/wall/wall-top.d.ts.map +1 -1
- package/dist/systems/wall/wall-top.js +6 -1
- package/dist/systems/wall/wall-topology.d.ts +32 -1
- package/dist/systems/wall/wall-topology.d.ts.map +1 -1
- package/dist/systems/wall/wall-topology.js +118 -10
- package/dist/systems/wall/wall-trim-profiles.d.ts +12 -0
- package/dist/systems/wall/wall-trim-profiles.d.ts.map +1 -0
- package/dist/systems/wall/wall-trim-profiles.js +191 -0
- package/dist/utils/ensure-scene-openings.d.ts +6523 -4923
- package/dist/utils/ensure-scene-openings.d.ts.map +1 -1
- package/dist/utils/floor-piece-adoption.d.ts +5 -0
- package/dist/utils/floor-piece-adoption.d.ts.map +1 -1
- package/dist/utils/floor-plate-migration.d.ts +1930 -1130
- package/dist/utils/floor-plate-migration.d.ts.map +1 -1
- package/dist/utils/owned-floor-opening-migration.d.ts +888 -88
- package/dist/utils/owned-floor-opening-migration.d.ts.map +1 -1
- package/dist/utils/reconcile-structure-on-load.d.ts +1930 -1130
- package/dist/utils/reconcile-structure-on-load.d.ts.map +1 -1
- package/dist/utils/structure-id.d.ts.map +1 -1
- package/dist/utils/structure-id.js +4 -0
- package/package.json +22 -5
- package/dist/lib/generic-foundation.d.ts +0 -40
- package/dist/lib/generic-foundation.d.ts.map +0 -1
- package/dist/lib/generic-foundation.js +0 -200
|
@@ -21,7 +21,10 @@ const CATALOG = [
|
|
|
21
21
|
piece('double-bed', 'Double bed', 'double-beds'),
|
|
22
22
|
piece('bedside-table', 'Bedside table', 'coffee-tables'),
|
|
23
23
|
piece('closet', 'Closet', 'wardrobes'),
|
|
24
|
+
piece('sofa', 'Sofa', 'sofas'),
|
|
24
25
|
piece('toilet', 'Toilet', 'toilets'),
|
|
26
|
+
piece('fridge', 'Fridge', 'kitchen-appliances'),
|
|
27
|
+
{ ...piece('palm', 'Palm', 'outdoor'), tags: ['tree', 'plant', 'garden'] },
|
|
25
28
|
];
|
|
26
29
|
const seen = (...ids) => () => ({ checkpoints: {}, made: [], viewed: ids });
|
|
27
30
|
const library = { activeLevelId: null, catalog: CATALOG };
|
|
@@ -55,11 +58,49 @@ const bounded = (quote, reading, extent) => ({
|
|
|
55
58
|
...(extent ? { extent } : {}),
|
|
56
59
|
});
|
|
57
60
|
const openAxis = (design) => ({ kind: 'open', design });
|
|
61
|
+
/** An open facade states its treatment: what it is clad in or carries, and the rhythm of its openings. */
|
|
62
|
+
export const openFacade = (design, treatment) => ({
|
|
63
|
+
kind: 'open',
|
|
64
|
+
design,
|
|
65
|
+
treatment,
|
|
66
|
+
});
|
|
67
|
+
/** The rooms of the house an open brief designs: two of one use, each with its own line. */
|
|
68
|
+
export const HOUSE_ROOMS = [
|
|
69
|
+
{
|
|
70
|
+
name: 'Master bedroom',
|
|
71
|
+
use: 'bedroom',
|
|
72
|
+
distinct: 'the parents’ room, calm and oak, the largest, with its own bathroom',
|
|
73
|
+
finishes: { floor: 'oak parquet', walls: 'limewashed white', tiled: false, skirting: true },
|
|
74
|
+
pieces: ['a king bed', 'two nightstands', 'a wardrobe'],
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
name: 'Children’s bedroom',
|
|
78
|
+
use: 'bedroom',
|
|
79
|
+
distinct: 'the children’s room, bright, with a desk by the window and bunk beds',
|
|
80
|
+
finishes: { floor: 'cork', walls: 'pale green', tiled: false, skirting: true },
|
|
81
|
+
pieces: ['bunk beds', 'a desk', 'a toy chest'],
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
name: 'Bathroom',
|
|
85
|
+
use: 'bathroom',
|
|
86
|
+
distinct: 'the family bathroom, tiled floor to ceiling, a bath under the window',
|
|
87
|
+
finishes: { floor: 'terrazzo tiles', walls: 'white zellige tiles', tiled: true, skirting: false },
|
|
88
|
+
pieces: ['a bath', 'a double basin', 'a toilet'],
|
|
89
|
+
},
|
|
90
|
+
];
|
|
91
|
+
/** An open form states its massing: the plan, the volumes, whether they stand at one height. */
|
|
92
|
+
export const openForm = (design, massing) => ({
|
|
93
|
+
kind: 'open',
|
|
94
|
+
design,
|
|
95
|
+
massing,
|
|
96
|
+
});
|
|
58
97
|
const BEDROOM_REQUEST = 'a 4 by 5 m bedroom with a double bed, two nightstands, a wardrobe, one window, one door';
|
|
59
98
|
/** The owner's bedroom, read axis by axis: action, size, pieces (a minimum) and openings bounded; style, materials and dressing open. */
|
|
60
99
|
export const BEDROOM_AXES = {
|
|
61
100
|
action: bounded('a 4 by 5 m bedroom', 'one bedroom, not a house; inside it, making it is the job'),
|
|
62
101
|
size: bounded('4 by 5 m', 'the room is 4 by 5 m'),
|
|
102
|
+
form: bounded('a 4 by 5 m bedroom', 'one room of 4 by 5 m, a rectangle; no building is designed'),
|
|
103
|
+
facade: bounded('a 4 by 5 m bedroom', 'one room: no building exterior is designed'),
|
|
63
104
|
pieces: bounded('a double bed, two nightstands, a wardrobe', 'those pieces must be there; nothing says only, so more may come', 'minimum'),
|
|
64
105
|
openings: bounded('one window, one door', 'exactly one window and one door'),
|
|
65
106
|
style: openAxis('each piece designed in a calm oak and linen character, not defaulted'),
|
|
@@ -70,6 +111,8 @@ export const BEDROOM_AXES = {
|
|
|
70
111
|
export const LAMP_AXES = {
|
|
71
112
|
action: bounded('add a lamp', 'one object added to a room that exists; no redecoration'),
|
|
72
113
|
size: openAxis('the lamp sized to the sofa it stands beside'),
|
|
114
|
+
form: bounded('add a lamp', 'one object in a room that exists; the building stands as it is'),
|
|
115
|
+
facade: bounded('add a lamp', 'one object in a room that exists; the exterior stands as it is'),
|
|
73
116
|
pieces: bounded('a lamp', 'the one lamp the request names', 'exact'),
|
|
74
117
|
openings: openAxis('no openings are touched by this addition'),
|
|
75
118
|
style: openAxis('a sculptural paper lamp echoing the oak sofa'),
|
|
@@ -80,16 +123,27 @@ export const LAMP_AXES = {
|
|
|
80
123
|
const LAMP_AXES_FR = {
|
|
81
124
|
action: bounded('Ajoute une lampe', 'un seul objet ajouté à une pièce qui existe; aucune redécoration'),
|
|
82
125
|
size: openAxis('la lampe dimensionnée selon le canapé près duquel elle se tient'),
|
|
126
|
+
form: bounded('Ajoute une lampe', 'un objet dans une pièce qui existe; le bâtiment reste tel qu’il est'),
|
|
127
|
+
facade: bounded('Ajoute une lampe', 'un objet dans une pièce qui existe; l’extérieur reste tel qu’il est'),
|
|
83
128
|
pieces: bounded('une lampe', 'la seule lampe que la demande nomme', 'exact'),
|
|
84
129
|
openings: openAxis('aucune ouverture n’est touchée par cet ajout'),
|
|
85
130
|
style: openAxis('une lampe en papier sculpturale qui répond au canapé en chêne'),
|
|
86
131
|
materials: openAxis('abat-jour en papier et pied en chêne, chauds contre le canapé'),
|
|
87
132
|
dressing: bounded('Ajoute une lampe', 'la demande ajoute une lampe; la pièce n’est pas habillée davantage'),
|
|
88
133
|
};
|
|
89
|
-
/** Every axis open, for the briefs whose subject is the source or the gate, not the reading. */
|
|
134
|
+
/** Every axis open, for the briefs whose subject is the source or the gate, not the reading. Its open form owes `rooms`: HOUSE_ROOMS. */
|
|
90
135
|
export const OPEN_AXES = {
|
|
91
136
|
action: openAxis('the work the request calls for, designed as a whole'),
|
|
92
137
|
size: openAxis('sizes chosen to fit the rooms they serve'),
|
|
138
|
+
form: openForm('a single block composed to fit the rooms it holds', {
|
|
139
|
+
plan: 'rectangle',
|
|
140
|
+
volumes: 1,
|
|
141
|
+
heights: 'one',
|
|
142
|
+
}),
|
|
143
|
+
facade: openFacade('a plain render facade with a free rhythm of windows', {
|
|
144
|
+
cladding: ['render'],
|
|
145
|
+
rhythm: 'free',
|
|
146
|
+
}),
|
|
93
147
|
pieces: openAxis('the pieces each room needs, designed one by one'),
|
|
94
148
|
openings: openAxis('openings placed for light and passage room by room'),
|
|
95
149
|
style: openAxis('each piece designed in one calm character throughout'),
|
|
@@ -102,10 +156,6 @@ const OPEN = {
|
|
|
102
156
|
vision: 'A calm room of oak and linen, low furniture, the bed under the window wall.',
|
|
103
157
|
beyond: DRESSED,
|
|
104
158
|
};
|
|
105
|
-
const OPEN_AS_IS = {
|
|
106
|
-
...OPEN,
|
|
107
|
-
asIs: [{ assetId: 'toilet', reason: 'technical equipment, as drawn in the catalog' }],
|
|
108
|
-
};
|
|
109
159
|
const IKEA = {
|
|
110
160
|
axes: {
|
|
111
161
|
...OPEN_AXES,
|
|
@@ -131,9 +181,22 @@ export const CATALOG_BRIEF = {
|
|
|
131
181
|
const ground = { levelId: 'level_ground' };
|
|
132
182
|
const sofa = { design: DESIGN_EXAMPLE, hostId: 'level_ground', position: [3, 0, 2] };
|
|
133
183
|
const bed = { items: [{ assetId: 'double-bed', x: 2, z: 2 }], ...ground };
|
|
134
|
-
const
|
|
184
|
+
const fridge = { items: [{ assetId: 'fridge', x: 2, z: 2 }], ...ground };
|
|
185
|
+
const palm = { items: [{ assetId: 'palm', x: 2, z: 2 }], ...ground };
|
|
186
|
+
const couch = { items: [{ assetId: 'sofa', x: 2, z: 2 }], ...ground };
|
|
135
187
|
const BEFORE = ['design_brief records what the request fixes', 'searched and viewed, not placed'];
|
|
136
|
-
const OPEN_SOURCE = (pieceNamed) => `The brief left the source open: ${pieceNamed}
|
|
188
|
+
const OPEN_SOURCE = (pieceNamed) => `The brief left the source open: ${pieceNamed} cannot be placed from the catalog, pieces are made.`;
|
|
189
|
+
/** The facts the first refusal states about the making tools: which tool, with which input. */
|
|
190
|
+
const MAKING_TOOLS = [
|
|
191
|
+
'add_object makes a piece (code, or piece for the object in words; parentId and position say where it goes)',
|
|
192
|
+
'place_design places a designed piece (design, hostId, position)',
|
|
193
|
+
];
|
|
194
|
+
/** What the session holds after a refusal: the pieces already refused, read back by the next call. */
|
|
195
|
+
const refusedBefore = (...pieces) => () => ({
|
|
196
|
+
checkpoints: {},
|
|
197
|
+
made: [],
|
|
198
|
+
readings: { 'brief.refusedPieces': pieces },
|
|
199
|
+
});
|
|
137
200
|
export const DESIGN_BRIEF_CASES = [
|
|
138
201
|
{
|
|
139
202
|
name: 'a brief is recorded as the turn’s design record, with what it unlocks',
|
|
@@ -144,13 +207,16 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
144
207
|
source: 'open',
|
|
145
208
|
vision: OPEN.vision,
|
|
146
209
|
beyond: OPEN.beyond,
|
|
147
|
-
asIs: OPEN_AS_IS.asIs,
|
|
148
210
|
},
|
|
149
|
-
context:
|
|
211
|
+
context: library,
|
|
150
212
|
readOnly: true,
|
|
151
213
|
expect: {
|
|
152
|
-
result: { status: 'recorded', brief:
|
|
153
|
-
mentions: [
|
|
214
|
+
result: { status: 'recorded', brief: OPEN },
|
|
215
|
+
mentions: [
|
|
216
|
+
'add_object, place_design make the pieces',
|
|
217
|
+
'furnish_room places a whole stock set',
|
|
218
|
+
'place_items and place_in_room place technical equipment and plants from the catalog',
|
|
219
|
+
],
|
|
154
220
|
session: (session) => (session.designBrief?.vision === OPEN.vision ? [] : ['not kept']),
|
|
155
221
|
},
|
|
156
222
|
},
|
|
@@ -160,6 +226,7 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
160
226
|
scene: storeysScene,
|
|
161
227
|
input: {
|
|
162
228
|
axes: IKEA.axes,
|
|
229
|
+
rooms: HOUSE_ROOMS,
|
|
163
230
|
source: 'brand',
|
|
164
231
|
sourceQuote: IKEA.sourceQuote,
|
|
165
232
|
brand: 'IKEA',
|
|
@@ -178,6 +245,7 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
178
245
|
scene: storeysScene,
|
|
179
246
|
input: {
|
|
180
247
|
axes: IKEA.axes,
|
|
248
|
+
rooms: HOUSE_ROOMS,
|
|
181
249
|
source: 'brand',
|
|
182
250
|
sourceQuote: IKEA.sourceQuote,
|
|
183
251
|
vision: IKEA.vision,
|
|
@@ -191,6 +259,7 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
191
259
|
scene: storeysScene,
|
|
192
260
|
input: {
|
|
193
261
|
axes: OPEN_AXES,
|
|
262
|
+
rooms: HOUSE_ROOMS,
|
|
194
263
|
source: 'catalog',
|
|
195
264
|
vision: 'Furnished from the catalog.',
|
|
196
265
|
beyond: nothing('catalog'),
|
|
@@ -203,6 +272,7 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
203
272
|
scene: storeysScene,
|
|
204
273
|
input: {
|
|
205
274
|
axes: OPEN_AXES,
|
|
275
|
+
rooms: HOUSE_ROOMS,
|
|
206
276
|
source: 'catalog',
|
|
207
277
|
sourceQuote: 'Furnished from the catalog',
|
|
208
278
|
vision: 'Furnished from the catalog.',
|
|
@@ -221,6 +291,7 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
221
291
|
scene: storeysScene,
|
|
222
292
|
input: {
|
|
223
293
|
axes: IKEA.axes,
|
|
294
|
+
rooms: HOUSE_ROOMS,
|
|
224
295
|
source: 'brand',
|
|
225
296
|
sourceQuote: 'IKEA furniture only',
|
|
226
297
|
brand: 'IKEA',
|
|
@@ -233,7 +304,7 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
233
304
|
expect: { result: { status: 'recorded', brief: { source: 'brand', sourceQuote: 'IKEA furniture only' } } },
|
|
234
305
|
},
|
|
235
306
|
{
|
|
236
|
-
name: 'view_assets records what it showed
|
|
307
|
+
name: 'view_assets records what it showed in the session',
|
|
237
308
|
tool: 'view_assets',
|
|
238
309
|
scene: storeysScene,
|
|
239
310
|
input: { ids: ['toilet'] },
|
|
@@ -244,47 +315,6 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
244
315
|
session: (session) => (session.viewed?.includes('toilet') ? [] : ['not kept']),
|
|
245
316
|
},
|
|
246
317
|
},
|
|
247
|
-
{
|
|
248
|
-
name: 'an open brief naming a double bed, a bedside table and a closet as they are is refused: furniture is made',
|
|
249
|
-
tool: 'design_brief',
|
|
250
|
-
scene: storeysScene,
|
|
251
|
-
input: {
|
|
252
|
-
axes: OPEN.axes,
|
|
253
|
-
source: 'open',
|
|
254
|
-
vision: OPEN.vision,
|
|
255
|
-
beyond: OPEN.beyond,
|
|
256
|
-
asIs: ['double-bed', 'bedside-table', 'closet'].map((assetId) => ({
|
|
257
|
-
assetId,
|
|
258
|
-
reason: 'fits the room',
|
|
259
|
-
})),
|
|
260
|
-
},
|
|
261
|
-
context: { ...library, session: seen('double-bed', 'bedside-table', 'closet') },
|
|
262
|
-
expect: {
|
|
263
|
-
refusal: 'brief_as_is_furniture',
|
|
264
|
-
mentions: [
|
|
265
|
-
'Double bed is furniture: in an open brief furniture is made (add_object, place_design) or the request names a catalog source; asIs keeps technical equipment (sanitaryware, appliances).',
|
|
266
|
-
'Bedside table is furniture',
|
|
267
|
-
'Closet is furniture',
|
|
268
|
-
],
|
|
269
|
-
},
|
|
270
|
-
},
|
|
271
|
-
{
|
|
272
|
-
name: 'an open brief keeping a toilet not viewed is refused: look first',
|
|
273
|
-
tool: 'design_brief',
|
|
274
|
-
scene: storeysScene,
|
|
275
|
-
input: {
|
|
276
|
-
axes: OPEN.axes,
|
|
277
|
-
source: 'open',
|
|
278
|
-
vision: OPEN.vision,
|
|
279
|
-
beyond: OPEN.beyond,
|
|
280
|
-
asIs: OPEN_AS_IS.asIs,
|
|
281
|
-
},
|
|
282
|
-
context: library,
|
|
283
|
-
expect: {
|
|
284
|
-
refusal: 'brief_as_is_not_viewed',
|
|
285
|
-
mentions: ['toilet was not viewed', 'view_assets'],
|
|
286
|
-
},
|
|
287
|
-
},
|
|
288
318
|
{
|
|
289
319
|
name: 'a brief that adds nothing says so and why',
|
|
290
320
|
tool: 'design_brief',
|
|
@@ -294,6 +324,7 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
294
324
|
...OPEN_AXES,
|
|
295
325
|
dressing: bounded('catalog only', 'the request limits the pieces to the catalog'),
|
|
296
326
|
},
|
|
327
|
+
rooms: HOUSE_ROOMS,
|
|
297
328
|
source: 'catalog',
|
|
298
329
|
sourceQuote: 'catalog only',
|
|
299
330
|
vision: 'The catalog as it is.',
|
|
@@ -353,6 +384,7 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
353
384
|
style: openAxis('the bed and the lamp designed plainly in oak and paper'),
|
|
354
385
|
materials: openAxis('oak, paper and plain cotton chosen for the two pieces'),
|
|
355
386
|
},
|
|
387
|
+
rooms: HOUSE_ROOMS,
|
|
356
388
|
source: 'open',
|
|
357
389
|
vision: 'A bed and a lamp in a plain room, both designed.',
|
|
358
390
|
beyond: nothing('the request says only a bed and a lamp'),
|
|
@@ -385,6 +417,7 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
385
417
|
pieces: bounded('only a bed and a lamp', 'a bed and a lamp'),
|
|
386
418
|
dressing: bounded('only a bed and a lamp', 'the request limits the pieces to those two'),
|
|
387
419
|
},
|
|
420
|
+
rooms: HOUSE_ROOMS,
|
|
388
421
|
source: 'open',
|
|
389
422
|
vision: 'A bed and a lamp in a plain room, both designed.',
|
|
390
423
|
beyond: nothing('the request says only a bed and a lamp'),
|
|
@@ -402,6 +435,7 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
402
435
|
pieces: bounded('un lit, rien d’autre', 'a bed and nothing else', 'exact'),
|
|
403
436
|
dressing: bounded('rien d’autre', 'the request limits the pieces to the bed'),
|
|
404
437
|
},
|
|
438
|
+
rooms: HOUSE_ROOMS,
|
|
405
439
|
source: 'open',
|
|
406
440
|
vision: 'A bed in a plain room.',
|
|
407
441
|
beyond: nothing('the request says nothing else'),
|
|
@@ -534,6 +568,7 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
534
568
|
action: bounded('a house', 'one house'),
|
|
535
569
|
dressing: bounded('a house', 'read as the house alone, undressed'),
|
|
536
570
|
},
|
|
571
|
+
rooms: HOUSE_ROOMS,
|
|
537
572
|
source: 'open',
|
|
538
573
|
vision: 'A house, plainly built.',
|
|
539
574
|
beyond: nothing('read as the house alone'),
|
|
@@ -606,7 +641,7 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
606
641
|
expect: { result: {} },
|
|
607
642
|
},
|
|
608
643
|
{
|
|
609
|
-
name: 'a
|
|
644
|
+
name: 'skip reports a missing brief per call while the batch reads still run',
|
|
610
645
|
tool: 'run_batch',
|
|
611
646
|
scene: storeysScene,
|
|
612
647
|
input: {
|
|
@@ -618,8 +653,9 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
618
653
|
},
|
|
619
654
|
context: { designBrief: null },
|
|
620
655
|
expect: {
|
|
621
|
-
|
|
622
|
-
|
|
656
|
+
result: { applied: 1, refused: 1 },
|
|
657
|
+
contains: { calls: [{ index: 1, tool: 'place_design', status: 'refused', code: 'design_brief_required' }] },
|
|
658
|
+
mentions: BEFORE,
|
|
623
659
|
},
|
|
624
660
|
},
|
|
625
661
|
{
|
|
@@ -638,6 +674,36 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
638
674
|
context: { ...library, designBrief: OPEN },
|
|
639
675
|
expect: { refusal: 'brief_source_open', mentions: [OPEN_SOURCE('double-bed')] },
|
|
640
676
|
},
|
|
677
|
+
{
|
|
678
|
+
name: 'an open brief: the first refusal says which tools make the piece and with which input',
|
|
679
|
+
tool: 'place_items',
|
|
680
|
+
scene: storeysScene,
|
|
681
|
+
input: bed,
|
|
682
|
+
context: { ...library, designBrief: OPEN },
|
|
683
|
+
expect: { refusal: 'brief_source_open', mentions: MAKING_TOOLS },
|
|
684
|
+
},
|
|
685
|
+
{
|
|
686
|
+
name: 'an open brief: the same piece refused again is answered briefly, by any placing tool',
|
|
687
|
+
tool: 'place_in_room',
|
|
688
|
+
scene: storeysScene,
|
|
689
|
+
input: { assetId: 'double-bed', ...ground },
|
|
690
|
+
context: { ...library, designBrief: OPEN, session: refusedBefore('double-bed') },
|
|
691
|
+
expect: {
|
|
692
|
+
refusal: 'brief_source_open',
|
|
693
|
+
mentions: ["Already refused, the brief's source is open: double-bed."],
|
|
694
|
+
},
|
|
695
|
+
},
|
|
696
|
+
{
|
|
697
|
+
name: 'an open brief: a call naming a piece refused before and a new one gives the facts for the new one only',
|
|
698
|
+
tool: 'place_items',
|
|
699
|
+
scene: storeysScene,
|
|
700
|
+
input: { items: [...couch.items, ...bed.items], ...ground },
|
|
701
|
+
context: { ...library, designBrief: OPEN, session: refusedBefore('sofa') },
|
|
702
|
+
expect: {
|
|
703
|
+
refusal: 'brief_source_open',
|
|
704
|
+
mentions: [OPEN_SOURCE('double-bed'), ' Already refused: sofa.'],
|
|
705
|
+
},
|
|
706
|
+
},
|
|
641
707
|
{
|
|
642
708
|
name: 'an open brief: furnish_room, which places a whole stock set, stays closed',
|
|
643
709
|
tool: 'furnish_room',
|
|
@@ -650,20 +716,28 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
650
716
|
},
|
|
651
717
|
},
|
|
652
718
|
{
|
|
653
|
-
name: 'an open brief: a
|
|
719
|
+
name: 'an open brief: a fridge and a palm are placed from the catalog',
|
|
654
720
|
tool: 'place_items',
|
|
655
721
|
scene: storeysScene,
|
|
656
|
-
input:
|
|
657
|
-
context: { ...library, designBrief:
|
|
722
|
+
input: { items: [...fridge.items, ...palm.items], ...ground },
|
|
723
|
+
context: { ...library, designBrief: OPEN },
|
|
658
724
|
expect: { result: { ok: true, levelId: 'level_ground' } },
|
|
659
725
|
},
|
|
660
726
|
{
|
|
661
|
-
name: 'an open brief:
|
|
727
|
+
name: 'an open brief: a sofa and a bed in one call are both listed in the refusal',
|
|
662
728
|
tool: 'place_items',
|
|
663
729
|
scene: storeysScene,
|
|
664
|
-
input: { items: [...
|
|
665
|
-
context: { ...library, designBrief:
|
|
666
|
-
expect: { refusal: 'brief_source_open', mentions: [OPEN_SOURCE('double-bed')] },
|
|
730
|
+
input: { items: [...couch.items, ...bed.items], ...ground },
|
|
731
|
+
context: { ...library, designBrief: OPEN },
|
|
732
|
+
expect: { refusal: 'brief_source_open', mentions: [OPEN_SOURCE('sofa, double-bed')] },
|
|
733
|
+
},
|
|
734
|
+
{
|
|
735
|
+
name: 'a brand brief opens the catalog: the toilet is placed',
|
|
736
|
+
tool: 'place_items',
|
|
737
|
+
scene: storeysScene,
|
|
738
|
+
input: { items: [{ assetId: 'toilet', x: 2, z: 2 }], ...ground },
|
|
739
|
+
context: { ...library, designBrief: IKEA },
|
|
740
|
+
expect: { result: { ok: true, levelId: 'level_ground' } },
|
|
667
741
|
},
|
|
668
742
|
{
|
|
669
743
|
name: 'a brand brief opens the catalog: the double bed is placed',
|
|
@@ -690,7 +764,7 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
690
764
|
expect: { result: { status: 'applied', applied: 1, refused: 0 } },
|
|
691
765
|
},
|
|
692
766
|
{
|
|
693
|
-
name: '
|
|
767
|
+
name: 'skip under an open brief makes its piece and reports the refused catalog call',
|
|
694
768
|
tool: 'run_batch',
|
|
695
769
|
scene: storeysScene,
|
|
696
770
|
input: {
|
|
@@ -702,8 +776,377 @@ export const DESIGN_BRIEF_CASES = [
|
|
|
702
776
|
},
|
|
703
777
|
context: { ...library, designBrief: OPEN },
|
|
704
778
|
expect: {
|
|
705
|
-
|
|
706
|
-
|
|
779
|
+
result: { applied: 1, refused: 1 },
|
|
780
|
+
contains: { calls: [{ index: 1, tool: 'place_in_room', status: 'refused', code: 'brief_source_open' }] },
|
|
781
|
+
mentions: [OPEN_SOURCE('double-bed')],
|
|
782
|
+
},
|
|
783
|
+
},
|
|
784
|
+
{
|
|
785
|
+
name: 'a brief with no form axis is recorded: form is optional',
|
|
786
|
+
tool: 'design_brief',
|
|
787
|
+
scene: storeysScene,
|
|
788
|
+
input: {
|
|
789
|
+
axes: { ...BEDROOM_AXES, form: undefined },
|
|
790
|
+
source: 'open',
|
|
791
|
+
vision: 'A calm room of oak and linen.',
|
|
792
|
+
beyond: DRESSED,
|
|
793
|
+
},
|
|
794
|
+
expect: { result: { status: 'recorded' } },
|
|
795
|
+
},
|
|
796
|
+
{
|
|
797
|
+
name: 'an open form with no massing is refused, the fields named',
|
|
798
|
+
tool: 'design_brief',
|
|
799
|
+
scene: storeysScene,
|
|
800
|
+
input: {
|
|
801
|
+
axes: { ...OPEN_AXES, form: openAxis('a house composed of volumes around a forecourt') },
|
|
802
|
+
rooms: HOUSE_ROOMS,
|
|
803
|
+
source: 'open',
|
|
804
|
+
vision: 'A house around its forecourt.',
|
|
805
|
+
beyond: DRESSED,
|
|
806
|
+
},
|
|
807
|
+
expect: {
|
|
808
|
+
refusal: 'form_massing_missing',
|
|
809
|
+
mentions: ['plan, volumes, heights are absent'],
|
|
810
|
+
},
|
|
811
|
+
},
|
|
812
|
+
{
|
|
813
|
+
name: 'an open form that states only its plan is refused for the fields it leaves out',
|
|
814
|
+
tool: 'design_brief',
|
|
815
|
+
scene: storeysScene,
|
|
816
|
+
input: {
|
|
817
|
+
axes: {
|
|
818
|
+
...OPEN_AXES,
|
|
819
|
+
form: openForm('a house composed of volumes around a forecourt', { plan: 'u' }),
|
|
820
|
+
},
|
|
821
|
+
rooms: HOUSE_ROOMS,
|
|
822
|
+
source: 'open',
|
|
823
|
+
vision: 'A house around its forecourt.',
|
|
824
|
+
beyond: DRESSED,
|
|
825
|
+
},
|
|
826
|
+
expect: { refusal: 'form_massing_missing', mentions: ['volumes, heights are absent'] },
|
|
827
|
+
},
|
|
828
|
+
{
|
|
829
|
+
name: 'a form of one volume stated as detached is refused',
|
|
830
|
+
tool: 'design_brief',
|
|
831
|
+
scene: storeysScene,
|
|
832
|
+
input: {
|
|
833
|
+
axes: {
|
|
834
|
+
...OPEN_AXES,
|
|
835
|
+
form: openForm('a house composed of volumes around a forecourt', {
|
|
836
|
+
plan: 'detached',
|
|
837
|
+
volumes: 1,
|
|
838
|
+
heights: 'one',
|
|
839
|
+
}),
|
|
840
|
+
},
|
|
841
|
+
rooms: HOUSE_ROOMS,
|
|
842
|
+
source: 'open',
|
|
843
|
+
vision: 'A house around its forecourt.',
|
|
844
|
+
beyond: DRESSED,
|
|
845
|
+
},
|
|
846
|
+
expect: { refusal: 'form_massing_inconsistent', mentions: ['one volume cannot be detached'] },
|
|
847
|
+
},
|
|
848
|
+
{
|
|
849
|
+
name: '"Build a house" with the form open states its massing and is recorded with it',
|
|
850
|
+
tool: 'design_brief',
|
|
851
|
+
scene: storeysScene,
|
|
852
|
+
input: {
|
|
853
|
+
axes: {
|
|
854
|
+
...OPEN_AXES,
|
|
855
|
+
form: openForm('a two-storey body with a lower wing at each end, around a forecourt', {
|
|
856
|
+
plan: 'u',
|
|
857
|
+
volumes: 3,
|
|
858
|
+
heights: 'several',
|
|
859
|
+
}),
|
|
860
|
+
},
|
|
861
|
+
rooms: HOUSE_ROOMS,
|
|
862
|
+
source: 'open',
|
|
863
|
+
vision: 'A house around its forecourt.',
|
|
864
|
+
beyond: DRESSED,
|
|
865
|
+
},
|
|
866
|
+
expect: {
|
|
867
|
+
result: {
|
|
868
|
+
status: 'recorded',
|
|
869
|
+
brief: {
|
|
870
|
+
axes: {
|
|
871
|
+
form: { kind: 'open', massing: { plan: 'u', volumes: 3, heights: 'several' } },
|
|
872
|
+
},
|
|
873
|
+
},
|
|
874
|
+
},
|
|
875
|
+
},
|
|
876
|
+
},
|
|
877
|
+
{
|
|
878
|
+
name: '"an L-shaped house" bounds the form by the person’s words, the plan they fix stated',
|
|
879
|
+
tool: 'design_brief',
|
|
880
|
+
scene: storeysScene,
|
|
881
|
+
input: {
|
|
882
|
+
axes: {
|
|
883
|
+
...OPEN_AXES,
|
|
884
|
+
action: bounded('an L-shaped house', 'a house, L-shaped'),
|
|
885
|
+
form: { ...bounded('an L-shaped house', 'the plan is an L'), massing: { plan: 'l' } },
|
|
886
|
+
},
|
|
887
|
+
rooms: HOUSE_ROOMS,
|
|
888
|
+
source: 'open',
|
|
889
|
+
vision: 'An L-shaped house around a terrace.',
|
|
890
|
+
beyond: DRESSED,
|
|
891
|
+
},
|
|
892
|
+
context: { requestText: 'Build me an L-shaped house' },
|
|
893
|
+
expect: {
|
|
894
|
+
result: {
|
|
895
|
+
status: 'recorded',
|
|
896
|
+
brief: { axes: { form: { kind: 'bounded', massing: { plan: 'l' } } } },
|
|
897
|
+
},
|
|
898
|
+
},
|
|
899
|
+
},
|
|
900
|
+
{
|
|
901
|
+
name: 'a form bounded by words that are not in the person’s message is refused',
|
|
902
|
+
tool: 'design_brief',
|
|
903
|
+
scene: storeysScene,
|
|
904
|
+
input: {
|
|
905
|
+
axes: { ...OPEN_AXES, form: bounded('a U-shaped house', 'the plan is a U') },
|
|
906
|
+
rooms: HOUSE_ROOMS,
|
|
907
|
+
source: 'open',
|
|
908
|
+
vision: 'A house around its forecourt.',
|
|
909
|
+
beyond: DRESSED,
|
|
910
|
+
},
|
|
911
|
+
context: { requestText: 'Build me a house' },
|
|
912
|
+
surfaces: ['core', 'chat'],
|
|
913
|
+
expect: { refusal: 'axis_quote_not_in_request' },
|
|
914
|
+
},
|
|
915
|
+
{
|
|
916
|
+
name: 'an open form owes its rooms: a house with none is refused',
|
|
917
|
+
tool: 'design_brief',
|
|
918
|
+
scene: storeysScene,
|
|
919
|
+
input: { axes: OPEN_AXES, source: 'open', vision: 'A calm house.', beyond: DRESSED },
|
|
920
|
+
expect: { refusal: 'rooms_missing', mentions: ['rooms lists each room it builds'] },
|
|
921
|
+
},
|
|
922
|
+
{
|
|
923
|
+
name: 'an open form with an empty list of rooms is refused too',
|
|
924
|
+
tool: 'design_brief',
|
|
925
|
+
scene: storeysScene,
|
|
926
|
+
input: {
|
|
927
|
+
axes: OPEN_AXES,
|
|
928
|
+
rooms: [],
|
|
929
|
+
source: 'open',
|
|
930
|
+
vision: 'A calm house.',
|
|
931
|
+
beyond: DRESSED,
|
|
932
|
+
},
|
|
933
|
+
expect: { refusal: 'rooms_missing' },
|
|
934
|
+
},
|
|
935
|
+
{
|
|
936
|
+
name: 'a room with no distinct line is refused, the room named',
|
|
937
|
+
tool: 'design_brief',
|
|
938
|
+
scene: storeysScene,
|
|
939
|
+
input: {
|
|
940
|
+
axes: OPEN_AXES,
|
|
941
|
+
rooms: [HOUSE_ROOMS[0], { ...HOUSE_ROOMS[1], distinct: undefined }],
|
|
942
|
+
source: 'open',
|
|
943
|
+
vision: 'A calm house.',
|
|
944
|
+
beyond: DRESSED,
|
|
945
|
+
},
|
|
946
|
+
expect: { refusal: 'room_distinct_missing', mentions: ['The room "Children’s bedroom"'] },
|
|
947
|
+
},
|
|
948
|
+
{
|
|
949
|
+
name: 'a room whose distinct line is blank is refused like one with none',
|
|
950
|
+
tool: 'design_brief',
|
|
951
|
+
scene: storeysScene,
|
|
952
|
+
input: {
|
|
953
|
+
axes: OPEN_AXES,
|
|
954
|
+
rooms: [{ ...HOUSE_ROOMS[0], distinct: ' ' }],
|
|
955
|
+
source: 'open',
|
|
956
|
+
vision: 'A calm house.',
|
|
957
|
+
beyond: DRESSED,
|
|
958
|
+
},
|
|
959
|
+
expect: { refusal: 'room_distinct_missing' },
|
|
960
|
+
},
|
|
961
|
+
{
|
|
962
|
+
name: 'two rooms of one use with the same distinct line and the same pieces, in any order, are refused as copies',
|
|
963
|
+
tool: 'design_brief',
|
|
964
|
+
scene: storeysScene,
|
|
965
|
+
input: {
|
|
966
|
+
axes: OPEN_AXES,
|
|
967
|
+
rooms: [
|
|
968
|
+
HOUSE_ROOMS[0],
|
|
969
|
+
{
|
|
970
|
+
...HOUSE_ROOMS[0],
|
|
971
|
+
name: 'Guest bedroom',
|
|
972
|
+
distinct: HOUSE_ROOMS[0].distinct.toUpperCase(),
|
|
973
|
+
pieces: [...HOUSE_ROOMS[0].pieces].reverse(),
|
|
974
|
+
},
|
|
975
|
+
],
|
|
976
|
+
source: 'open',
|
|
977
|
+
vision: 'A calm house.',
|
|
978
|
+
beyond: DRESSED,
|
|
979
|
+
},
|
|
980
|
+
expect: {
|
|
981
|
+
refusal: 'rooms_identical',
|
|
982
|
+
mentions: ['The rooms "Master bedroom" and "Guest bedroom" are of one use'],
|
|
983
|
+
},
|
|
984
|
+
},
|
|
985
|
+
{
|
|
986
|
+
name: 'two rooms of one use with the same distinct line but their own pieces are recorded: anything subtler is a finding at the end of the turn',
|
|
987
|
+
tool: 'design_brief',
|
|
988
|
+
scene: storeysScene,
|
|
989
|
+
input: {
|
|
990
|
+
axes: OPEN_AXES,
|
|
991
|
+
rooms: [
|
|
992
|
+
HOUSE_ROOMS[0],
|
|
993
|
+
{ ...HOUSE_ROOMS[0], name: 'Guest bedroom', pieces: ['a sofa bed', 'a reading chair'] },
|
|
994
|
+
],
|
|
995
|
+
source: 'open',
|
|
996
|
+
vision: 'A calm house.',
|
|
997
|
+
beyond: DRESSED,
|
|
998
|
+
},
|
|
999
|
+
expect: { result: { status: 'recorded', brief: { rooms: [{ name: 'Master bedroom' }, { name: 'Guest bedroom' }] } } },
|
|
1000
|
+
},
|
|
1001
|
+
{
|
|
1002
|
+
name: 'a focused refit of two rooms bounds the form by its words and still lists the rooms: they are kept with the brief',
|
|
1003
|
+
tool: 'design_brief',
|
|
1004
|
+
scene: storeysScene,
|
|
1005
|
+
input: {
|
|
1006
|
+
axes: LAMP_AXES,
|
|
1007
|
+
rooms: [HOUSE_ROOMS[0], HOUSE_ROOMS[2]],
|
|
1008
|
+
source: 'open',
|
|
1009
|
+
vision: 'Two rooms refitted.',
|
|
1010
|
+
beyond: nothing('the request refits two rooms'),
|
|
1011
|
+
},
|
|
1012
|
+
context: { requestText: 'add a lamp next to the sofa' },
|
|
1013
|
+
expect: {
|
|
1014
|
+
result: { status: 'recorded', brief: { rooms: [{ use: 'bedroom' }, { use: 'bathroom' }] } },
|
|
1015
|
+
session: (session) => session.designBrief?.rooms?.length === 2 ? [] : ['the rooms were not kept with the brief'],
|
|
1016
|
+
},
|
|
1017
|
+
},
|
|
1018
|
+
{
|
|
1019
|
+
name: 'a brief with no facade axis is recorded: facade is optional',
|
|
1020
|
+
tool: 'design_brief',
|
|
1021
|
+
scene: storeysScene,
|
|
1022
|
+
input: {
|
|
1023
|
+
axes: { ...BEDROOM_AXES, facade: undefined },
|
|
1024
|
+
source: 'open',
|
|
1025
|
+
vision: 'A calm room of oak and linen.',
|
|
1026
|
+
beyond: DRESSED,
|
|
1027
|
+
},
|
|
1028
|
+
expect: { result: { status: 'recorded' } },
|
|
1029
|
+
},
|
|
1030
|
+
{
|
|
1031
|
+
name: 'an open facade with no treatment is refused, the fields named',
|
|
1032
|
+
tool: 'design_brief',
|
|
1033
|
+
scene: storeysScene,
|
|
1034
|
+
input: {
|
|
1035
|
+
axes: { ...OPEN_AXES, facade: openAxis('a stone manor with shuttered windows') },
|
|
1036
|
+
rooms: HOUSE_ROOMS,
|
|
1037
|
+
source: 'open',
|
|
1038
|
+
vision: 'A manor.',
|
|
1039
|
+
beyond: DRESSED,
|
|
1040
|
+
},
|
|
1041
|
+
expect: {
|
|
1042
|
+
refusal: 'facade_treatment_missing',
|
|
1043
|
+
mentions: ['Absent: cladding or elements, rhythm.'],
|
|
1044
|
+
},
|
|
1045
|
+
},
|
|
1046
|
+
{
|
|
1047
|
+
name: 'an open facade that states cladding but no rhythm is refused for the rhythm',
|
|
1048
|
+
tool: 'design_brief',
|
|
1049
|
+
scene: storeysScene,
|
|
1050
|
+
input: {
|
|
1051
|
+
axes: {
|
|
1052
|
+
...OPEN_AXES,
|
|
1053
|
+
facade: openFacade('a stone manor with shuttered windows', { cladding: ['stone'] }),
|
|
1054
|
+
},
|
|
1055
|
+
rooms: HOUSE_ROOMS,
|
|
1056
|
+
source: 'open',
|
|
1057
|
+
vision: 'A manor.',
|
|
1058
|
+
beyond: DRESSED,
|
|
1059
|
+
},
|
|
1060
|
+
expect: { refusal: 'facade_treatment_missing', mentions: ['Absent: rhythm.'] },
|
|
1061
|
+
},
|
|
1062
|
+
{
|
|
1063
|
+
name: 'an open facade that states a rhythm but carries nothing is refused too',
|
|
1064
|
+
tool: 'design_brief',
|
|
1065
|
+
scene: storeysScene,
|
|
1066
|
+
input: {
|
|
1067
|
+
axes: {
|
|
1068
|
+
...OPEN_AXES,
|
|
1069
|
+
facade: openFacade('a stone manor with shuttered windows', { rhythm: 'regular' }),
|
|
1070
|
+
},
|
|
1071
|
+
rooms: HOUSE_ROOMS,
|
|
1072
|
+
source: 'open',
|
|
1073
|
+
vision: 'A manor.',
|
|
1074
|
+
beyond: DRESSED,
|
|
1075
|
+
},
|
|
1076
|
+
expect: { refusal: 'facade_treatment_missing', mentions: ['Absent: cladding or elements.'] },
|
|
1077
|
+
},
|
|
1078
|
+
{
|
|
1079
|
+
name: '"Build a house" with the facade open states its treatment and is recorded with it',
|
|
1080
|
+
tool: 'design_brief',
|
|
1081
|
+
scene: storeysScene,
|
|
1082
|
+
input: {
|
|
1083
|
+
axes: {
|
|
1084
|
+
...OPEN_AXES,
|
|
1085
|
+
facade: openFacade('a stone facade dressed with quoins, its windows shuttered', {
|
|
1086
|
+
cladding: ['stone'],
|
|
1087
|
+
bands: ['base', 'cornice'],
|
|
1088
|
+
elements: ['corners', 'shutters'],
|
|
1089
|
+
rhythm: 'regular',
|
|
1090
|
+
}),
|
|
1091
|
+
},
|
|
1092
|
+
rooms: HOUSE_ROOMS,
|
|
1093
|
+
source: 'open',
|
|
1094
|
+
vision: 'A manor.',
|
|
1095
|
+
beyond: DRESSED,
|
|
1096
|
+
},
|
|
1097
|
+
expect: {
|
|
1098
|
+
result: {
|
|
1099
|
+
status: 'recorded',
|
|
1100
|
+
brief: {
|
|
1101
|
+
axes: {
|
|
1102
|
+
facade: {
|
|
1103
|
+
kind: 'open',
|
|
1104
|
+
treatment: { cladding: ['stone'], rhythm: 'regular' },
|
|
1105
|
+
},
|
|
1106
|
+
},
|
|
1107
|
+
},
|
|
1108
|
+
},
|
|
1109
|
+
},
|
|
1110
|
+
},
|
|
1111
|
+
{
|
|
1112
|
+
name: '"une façade en pierre avec volets" bounds the facade by the person’s words, the treatment they fix stated',
|
|
1113
|
+
tool: 'design_brief',
|
|
1114
|
+
scene: storeysScene,
|
|
1115
|
+
input: {
|
|
1116
|
+
axes: {
|
|
1117
|
+
...OPEN_AXES,
|
|
1118
|
+
facade: {
|
|
1119
|
+
...bounded('une façade en pierre avec volets', 'stone and shutters'),
|
|
1120
|
+
treatment: { cladding: ['stone'], elements: ['shutters'] },
|
|
1121
|
+
},
|
|
1122
|
+
},
|
|
1123
|
+
rooms: HOUSE_ROOMS,
|
|
1124
|
+
source: 'open',
|
|
1125
|
+
vision: 'A stone house.',
|
|
1126
|
+
beyond: DRESSED,
|
|
1127
|
+
},
|
|
1128
|
+
context: { requestText: 'Construis-moi une maison avec une façade en pierre avec volets' },
|
|
1129
|
+
expect: {
|
|
1130
|
+
result: {
|
|
1131
|
+
status: 'recorded',
|
|
1132
|
+
brief: { axes: { facade: { kind: 'bounded', treatment: { cladding: ['stone'] } } } },
|
|
1133
|
+
},
|
|
1134
|
+
},
|
|
1135
|
+
},
|
|
1136
|
+
{
|
|
1137
|
+
name: 'rooms of one use announced apart carry no finding',
|
|
1138
|
+
tool: 'design_brief',
|
|
1139
|
+
scene: storeysScene,
|
|
1140
|
+
input: {
|
|
1141
|
+
axes: OPEN_AXES,
|
|
1142
|
+
rooms: HOUSE_ROOMS,
|
|
1143
|
+
source: 'open',
|
|
1144
|
+
vision: 'A house.',
|
|
1145
|
+
beyond: DRESSED,
|
|
1146
|
+
},
|
|
1147
|
+
expect: {
|
|
1148
|
+
result: { status: 'recorded' },
|
|
1149
|
+
check: (result) => ('findings' in result ? ['findings carried'] : []),
|
|
707
1150
|
},
|
|
708
1151
|
},
|
|
709
1152
|
];
|