@pascal-app/nodes 1.0.3 → 1.0.5
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/README.md +43 -0
- package/dist/agent-operations/index.d.ts +12 -0
- package/dist/agent-operations/index.d.ts.map +1 -0
- package/dist/agent-operations/index.js +6 -0
- package/dist/agent-tools/index.d.ts +50 -0
- package/dist/agent-tools/index.d.ts.map +1 -0
- package/dist/agent-tools/index.js +21 -0
- package/dist/block/commands.d.ts +2 -2
- package/dist/block/contextual-help.js +1 -1
- package/dist/block/definition.d.ts +1 -1
- package/dist/block/definition.d.ts.map +1 -1
- package/dist/block/definition.js +30 -15
- package/dist/block/edit-session.d.ts +2 -2
- package/dist/block/edit-session.d.ts.map +1 -1
- package/dist/block/edit-session.js +1 -1
- package/dist/block/face-host.js +1 -1
- package/dist/block/floorplan.d.ts +11 -1
- package/dist/block/floorplan.d.ts.map +1 -1
- package/dist/block/floorplan.js +81 -13
- package/dist/block/geometry-snap.d.ts +2 -2
- package/dist/block/geometry-snap.js +2 -2
- package/dist/block/geometry.d.ts +2 -2
- package/dist/block/geometry.d.ts.map +1 -1
- package/dist/block/geometry.js +39 -24
- package/dist/block/gesture-wheel.d.ts.map +1 -1
- package/dist/block/hosted-edit.d.ts +1 -1
- package/dist/block/hosted-edit.d.ts.map +1 -1
- package/dist/block/hosted-edit.js +28 -3
- package/dist/block/interaction-sfx.d.ts +1 -1
- package/dist/block/last-operation.d.ts +1 -1
- package/dist/block/last-operation.js +2 -2
- package/dist/block/material-slots.d.ts +1 -3
- package/dist/block/material-slots.d.ts.map +1 -1
- package/dist/block/material-slots.js +1 -11
- package/dist/block/modal-face-operation.d.ts +2 -2
- package/dist/block/modal-face-operation.js +1 -1
- package/dist/block/paint.d.ts.map +1 -1
- package/dist/block/paint.js +5 -11
- package/dist/block/panel.d.ts.map +1 -1
- package/dist/block/panel.js +15 -10
- package/dist/block/parametrics.d.ts +1 -1
- package/dist/block/parametrics.js +1 -1
- package/dist/block/preview.js +1 -1
- package/dist/block/selection-geometry.d.ts +1 -1
- package/dist/block/selection-geometry.js +1 -1
- package/dist/block/selection.d.ts.map +1 -1
- package/dist/block/selection.js +20 -20
- package/dist/block/tool.d.ts.map +1 -1
- package/dist/block/tool.js +3 -3
- package/dist/block/use-block-face-operation.d.ts +4 -4
- package/dist/block/use-block-face-operation.js +6 -6
- package/dist/box-vent/definition.d.ts +1 -1
- package/dist/box-vent/definition.d.ts.map +1 -1
- package/dist/box-vent/definition.js +11 -13
- package/dist/box-vent/geometry.d.ts.map +1 -1
- package/dist/box-vent/geometry.js +2 -2
- package/dist/box-vent/index.d.ts +3 -3
- package/dist/box-vent/index.js +3 -3
- package/dist/box-vent/move-tool.js +4 -4
- package/dist/box-vent/paint.js +2 -2
- package/dist/box-vent/panel.d.ts.map +1 -1
- package/dist/box-vent/panel.js +7 -30
- package/dist/box-vent/parametrics.d.ts +1 -1
- package/dist/box-vent/parametrics.js +1 -1
- package/dist/box-vent/preview.d.ts +1 -1
- package/dist/box-vent/preview.d.ts.map +1 -1
- package/dist/box-vent/preview.js +2 -2
- package/dist/box-vent/renderer.d.ts.map +1 -1
- package/dist/box-vent/renderer.js +3 -3
- package/dist/box-vent/tool.d.ts.map +1 -1
- package/dist/box-vent/tool.js +7 -7
- package/dist/building/definition.d.ts +1 -1
- package/dist/building/definition.d.ts.map +1 -1
- package/dist/building/definition.js +5 -4
- package/dist/building/index.d.ts +1 -1
- package/dist/building/index.js +1 -1
- package/dist/building/move-tool.d.ts.map +1 -1
- package/dist/building/move-tool.js +2 -3
- package/dist/building/renderer.d.ts.map +1 -1
- package/dist/cabinet/__bench__/geometry.d.ts +2 -0
- package/dist/cabinet/__bench__/geometry.d.ts.map +1 -0
- package/dist/cabinet/__bench__/geometry.js +21 -0
- package/dist/cabinet/appliance-layout.d.ts +1 -1
- package/dist/cabinet/appliance-layout.d.ts.map +1 -1
- package/dist/cabinet/compartment-card.d.ts +1 -1
- package/dist/cabinet/compartment-card.js +12 -12
- package/dist/cabinet/continuous-placement.d.ts +1 -1
- package/dist/cabinet/continuous-placement.js +2 -2
- package/dist/cabinet/countertop-layout.d.ts +64 -53
- package/dist/cabinet/countertop-layout.d.ts.map +1 -1
- package/dist/cabinet/countertop-layout.js +3 -3
- package/dist/cabinet/definition.d.ts +1 -1
- package/dist/cabinet/definition.d.ts.map +1 -1
- package/dist/cabinet/definition.js +34 -30
- package/dist/cabinet/essential-controls.d.ts +7 -0
- package/dist/cabinet/essential-controls.d.ts.map +1 -0
- package/dist/cabinet/essential-controls.js +47 -0
- package/dist/cabinet/finish-operation.d.ts +9 -0
- package/dist/cabinet/finish-operation.d.ts.map +1 -0
- package/dist/cabinet/finish-operation.js +86 -0
- package/dist/cabinet/floorplan-move.js +3 -3
- package/dist/cabinet/floorplan.d.ts.map +1 -1
- package/dist/cabinet/floorplan.js +130 -33
- package/dist/cabinet/geometry/cooktop.d.ts +2 -2
- package/dist/cabinet/geometry/cooktop.d.ts.map +1 -1
- package/dist/cabinet/geometry/cooktop.js +55 -18
- package/dist/cabinet/geometry/dishwasher.d.ts +1 -1
- package/dist/cabinet/geometry/dishwasher.d.ts.map +1 -1
- package/dist/cabinet/geometry/dishwasher.js +5 -6
- package/dist/cabinet/geometry/fridge.d.ts +2 -2
- package/dist/cabinet/geometry/fridge.d.ts.map +1 -1
- package/dist/cabinet/geometry/fridge.js +49 -8
- package/dist/cabinet/geometry/fronts.d.ts +1 -1
- package/dist/cabinet/geometry/fronts.d.ts.map +1 -1
- package/dist/cabinet/geometry/fronts.js +22 -8
- package/dist/cabinet/geometry/hood.d.ts +2 -2
- package/dist/cabinet/geometry/hood.d.ts.map +1 -1
- package/dist/cabinet/geometry/hood.js +15 -3
- package/dist/cabinet/geometry/oven-microwave.d.ts +1 -1
- package/dist/cabinet/geometry/oven-microwave.d.ts.map +1 -1
- package/dist/cabinet/geometry/oven-microwave.js +46 -21
- package/dist/cabinet/geometry/pantry.d.ts +2 -2
- package/dist/cabinet/geometry/pantry.d.ts.map +1 -1
- package/dist/cabinet/geometry/pantry.js +11 -9
- package/dist/cabinet/geometry/run.d.ts.map +1 -1
- package/dist/cabinet/geometry/run.js +18 -8
- package/dist/cabinet/geometry/shared.d.ts +5 -4
- package/dist/cabinet/geometry/shared.d.ts.map +1 -1
- package/dist/cabinet/geometry/shared.js +78 -19
- package/dist/cabinet/geometry/sink.d.ts +2 -2
- package/dist/cabinet/geometry/sink.d.ts.map +1 -1
- package/dist/cabinet/geometry/sink.js +30 -12
- package/dist/cabinet/geometry.d.ts +1 -1
- package/dist/cabinet/geometry.d.ts.map +1 -1
- package/dist/cabinet/geometry.js +15 -11
- package/dist/cabinet/hosted-resize.d.ts +2 -2
- package/dist/cabinet/hosted-resize.d.ts.map +1 -1
- package/dist/cabinet/hosted-resize.js +3 -1
- package/dist/cabinet/index.d.ts +9 -5
- package/dist/cabinet/index.d.ts.map +1 -1
- package/dist/cabinet/index.js +9 -5
- package/dist/cabinet/insertion.d.ts.map +1 -1
- package/dist/cabinet/insertion.js +3 -1
- package/dist/cabinet/interaction.js +1 -1
- package/dist/cabinet/kitchen-catalog.d.ts +14 -0
- package/dist/cabinet/kitchen-catalog.d.ts.map +1 -0
- package/dist/cabinet/kitchen-catalog.js +62 -0
- package/dist/cabinet/kitchen-collection.d.ts +11 -0
- package/dist/cabinet/kitchen-collection.d.ts.map +1 -0
- package/dist/cabinet/kitchen-collection.js +19 -0
- package/dist/cabinet/kitchen-module-actions.d.ts +8 -0
- package/dist/cabinet/kitchen-module-actions.d.ts.map +1 -0
- package/dist/cabinet/kitchen-module-actions.js +117 -0
- package/dist/cabinet/kitchen-placement.d.ts +3 -0
- package/dist/cabinet/kitchen-placement.d.ts.map +1 -0
- package/dist/cabinet/kitchen-placement.js +16 -0
- package/dist/cabinet/move-frame.js +4 -4
- package/dist/cabinet/neighbor-placement.d.ts +335 -0
- package/dist/cabinet/neighbor-placement.d.ts.map +1 -0
- package/dist/cabinet/neighbor-placement.js +48 -0
- package/dist/cabinet/opening-clearance.d.ts +22 -0
- package/dist/cabinet/opening-clearance.d.ts.map +1 -0
- package/dist/cabinet/opening-clearance.js +158 -0
- package/dist/cabinet/paint.js +1 -1
- package/dist/cabinet/panel-visibility.js +2 -2
- package/dist/cabinet/panel.d.ts.map +1 -1
- package/dist/cabinet/panel.js +86 -77
- package/dist/cabinet/parametrics.js +3 -3
- package/dist/cabinet/placement-dimensions.js +2 -2
- package/dist/cabinet/placement-notice.d.ts +6 -0
- package/dist/cabinet/placement-notice.d.ts.map +1 -0
- package/dist/cabinet/placement-notice.js +34 -0
- package/dist/cabinet/placement-status.d.ts +2 -0
- package/dist/cabinet/placement-status.d.ts.map +1 -1
- package/dist/cabinet/placement-status.js +3 -1
- package/dist/cabinet/placement-type.d.ts.map +1 -1
- package/dist/cabinet/preset-width-debt.js +2 -2
- package/dist/cabinet/presets.d.ts +3 -1
- package/dist/cabinet/presets.d.ts.map +1 -1
- package/dist/cabinet/presets.js +27 -8
- package/dist/cabinet/quick-action-icons.js +1 -1
- package/dist/cabinet/quick-actions.js +7 -7
- package/dist/cabinet/resize-limits.d.ts.map +1 -1
- package/dist/cabinet/reveals.d.ts +16 -16
- package/dist/cabinet/reveals.d.ts.map +1 -1
- package/dist/cabinet/run-finishing.d.ts +168 -0
- package/dist/cabinet/run-finishing.d.ts.map +1 -0
- package/dist/cabinet/run-finishing.js +100 -0
- package/dist/cabinet/run-layout.d.ts.map +1 -1
- package/dist/cabinet/run-layout.js +28 -8
- package/dist/cabinet/run-ops.d.ts +61 -50
- package/dist/cabinet/run-ops.d.ts.map +1 -1
- package/dist/cabinet/run-ops.js +6 -6
- package/dist/cabinet/run-panel.d.ts +11 -0
- package/dist/cabinet/run-panel.d.ts.map +1 -1
- package/dist/cabinet/run-panel.js +43 -17
- package/dist/cabinet/scene-action.js +1 -1
- package/dist/cabinet/stack-transitions.d.ts +1 -1
- package/dist/cabinet/stack-transitions.js +2 -2
- package/dist/cabinet/stack.d.ts +60 -60
- package/dist/cabinet/stack.d.ts.map +1 -1
- package/dist/cabinet/stack.js +1 -1
- package/dist/cabinet/surfaces.js +3 -3
- package/dist/cabinet/system.d.ts.map +1 -1
- package/dist/cabinet/system.js +4 -4
- package/dist/cabinet/tool.d.ts +1 -2
- package/dist/cabinet/tool.d.ts.map +1 -1
- package/dist/cabinet/tool.js +228 -105
- package/dist/cabinet/validation.js +3 -3
- package/dist/cabinet/wall-snap.d.ts +1 -1
- package/dist/cabinet/wall-snap.d.ts.map +1 -1
- package/dist/cabinet/wall-snap.js +10 -10
- package/dist/ceiling/boundary-editor.d.ts.map +1 -1
- package/dist/ceiling/boundary-editor.js +5 -3
- package/dist/ceiling/definition.d.ts +5 -5
- package/dist/ceiling/definition.d.ts.map +1 -1
- package/dist/ceiling/definition.js +31 -29
- package/dist/ceiling/floorplan-affordances.d.ts +138 -58
- package/dist/ceiling/floorplan-affordances.d.ts.map +1 -1
- package/dist/ceiling/floorplan-affordances.js +1 -2
- package/dist/ceiling/floorplan-move.d.ts.map +1 -1
- package/dist/ceiling/floorplan-move.js +1 -2
- package/dist/ceiling/floorplan.d.ts +1 -1
- package/dist/ceiling/floorplan.d.ts.map +1 -1
- package/dist/ceiling/floorplan.js +2 -1
- package/dist/ceiling/height-bounds.d.ts +19 -0
- package/dist/ceiling/height-bounds.d.ts.map +1 -0
- package/dist/ceiling/height-bounds.js +24 -0
- package/dist/ceiling/hole-editor.d.ts.map +1 -1
- package/dist/ceiling/hole-editor.js +3 -4
- package/dist/ceiling/index.d.ts +2 -2
- package/dist/ceiling/index.js +2 -2
- package/dist/ceiling/materials.d.ts +8 -4
- package/dist/ceiling/materials.d.ts.map +1 -1
- package/dist/ceiling/materials.js +55 -21
- package/dist/ceiling/move-tool.d.ts.map +1 -1
- package/dist/ceiling/paint.d.ts +2 -8
- package/dist/ceiling/paint.d.ts.map +1 -1
- package/dist/ceiling/paint.js +112 -24
- package/dist/ceiling/panel.d.ts.map +1 -1
- package/dist/ceiling/panel.js +42 -25
- package/dist/ceiling/parametrics.d.ts +1 -1
- package/dist/ceiling/parametrics.js +1 -1
- package/dist/ceiling/renderer.d.ts.map +1 -1
- package/dist/ceiling/renderer.js +56 -21
- package/dist/ceiling/system.d.ts.map +1 -1
- package/dist/ceiling/tool.d.ts.map +1 -1
- package/dist/ceiling/tool.js +1 -1
- package/dist/chimney/definition.d.ts +1 -1
- package/dist/chimney/definition.d.ts.map +1 -1
- package/dist/chimney/definition.js +9 -8
- package/dist/chimney/floorplan.js +1 -1
- package/dist/chimney/holes.js +1 -1
- package/dist/chimney/index.d.ts +3 -3
- package/dist/chimney/index.js +3 -3
- package/dist/chimney/move-tool.d.ts.map +1 -1
- package/dist/chimney/move-tool.js +11 -5
- package/dist/chimney/paint.d.ts.map +1 -1
- package/dist/chimney/paint.js +3 -10
- package/dist/chimney/panel.js +4 -4
- package/dist/chimney/parametrics.d.ts +1 -1
- package/dist/chimney/parametrics.js +1 -1
- package/dist/chimney/presets.d.ts +1 -1
- package/dist/chimney/preview.d.ts.map +1 -1
- package/dist/chimney/preview.js +2 -2
- package/dist/chimney/renderer.d.ts.map +1 -1
- package/dist/chimney/renderer.js +4 -4
- package/dist/chimney/roof-trim.js +2 -2
- package/dist/chimney/tool.d.ts.map +1 -1
- package/dist/chimney/tool.js +6 -6
- package/dist/column/definition.d.ts +1 -1
- package/dist/column/definition.d.ts.map +1 -1
- package/dist/column/definition.js +39 -15
- package/dist/column/floorplan-affordances.d.ts.map +1 -1
- package/dist/column/floorplan-affordances.js +7 -2
- package/dist/column/floorplan-move.js +2 -2
- package/dist/column/floorplan.d.ts +1 -1
- package/dist/column/floorplan.d.ts.map +1 -1
- package/dist/column/floorplan.js +48 -3
- package/dist/column/hosted-resize.d.ts +134 -29
- package/dist/column/hosted-resize.d.ts.map +1 -1
- package/dist/column/hosted-resize.js +1 -1
- package/dist/column/index.d.ts +1 -1
- package/dist/column/index.js +1 -1
- package/dist/column/paint.js +1 -1
- package/dist/column/panel.d.ts.map +1 -1
- package/dist/column/panel.js +152 -149
- package/dist/column/parametrics.d.ts +1 -1
- package/dist/column/parametrics.js +2 -2
- package/dist/column/renderer.d.ts.map +1 -1
- package/dist/column/renderer.js +8 -6
- package/dist/column/surface.d.ts.map +1 -1
- package/dist/column/surface.js +8 -1
- package/dist/column/tool.d.ts.map +1 -1
- package/dist/column/tool.js +3 -3
- package/dist/construction-dimension/definition.d.ts +1 -1
- package/dist/construction-dimension/definition.js +6 -6
- package/dist/construction-dimension/floorplan-affordances.js +1 -1
- package/dist/construction-dimension/floorplan-tool.d.ts.map +1 -1
- package/dist/construction-dimension/floorplan-tool.js +1 -1
- package/dist/construction-dimension/floorplan.js +11 -7
- package/dist/construction-dimension/index.d.ts +3 -3
- package/dist/construction-dimension/index.js +3 -3
- package/dist/construction-dimension/panel.js +1 -1
- package/dist/construction-dimension/parametrics.js +1 -1
- package/dist/cupola/definition.d.ts +1 -1
- package/dist/cupola/definition.d.ts.map +1 -1
- package/dist/cupola/definition.js +11 -16
- package/dist/cupola/geometry.d.ts.map +1 -1
- package/dist/cupola/geometry.js +1 -1
- package/dist/cupola/index.d.ts +3 -3
- package/dist/cupola/index.js +3 -3
- package/dist/cupola/move-tool.js +4 -4
- package/dist/cupola/paint.js +2 -2
- package/dist/cupola/panel.d.ts.map +1 -1
- package/dist/cupola/panel.js +6 -24
- package/dist/cupola/parametrics.d.ts +1 -1
- package/dist/cupola/parametrics.js +1 -1
- package/dist/cupola/preview.d.ts +1 -1
- package/dist/cupola/preview.d.ts.map +1 -1
- package/dist/cupola/preview.js +2 -2
- package/dist/cupola/renderer.d.ts.map +1 -1
- package/dist/cupola/renderer.js +3 -3
- package/dist/cupola/tool.d.ts.map +1 -1
- package/dist/cupola/tool.js +7 -7
- package/dist/door/contextual-dimensions.js +1 -1
- package/dist/door/definition.d.ts +1 -1
- package/dist/door/definition.d.ts.map +1 -1
- package/dist/door/definition.js +38 -25
- package/dist/door/door-math.d.ts +6 -11
- package/dist/door/door-math.d.ts.map +1 -1
- package/dist/door/door-math.js +15 -16
- package/dist/door/floorplan-affordances.js +2 -2
- package/dist/door/floorplan-move.d.ts.map +1 -1
- package/dist/door/floorplan-move.js +7 -5
- package/dist/door/floorplan.d.ts.map +1 -1
- package/dist/door/floorplan.js +57 -23
- package/dist/door/index.d.ts +2 -2
- package/dist/door/index.js +2 -2
- package/dist/door/mechanism.d.ts +4 -0
- package/dist/door/mechanism.d.ts.map +1 -0
- package/dist/door/mechanism.js +24 -0
- package/dist/door/move-tool.d.ts.map +1 -1
- package/dist/door/move-tool.js +82 -58
- package/dist/door/paint.d.ts.map +1 -1
- package/dist/door/paint.js +4 -1
- package/dist/door/panel.d.ts.map +1 -1
- package/dist/door/panel.js +43 -268
- package/dist/door/parametrics.d.ts +1 -1
- package/dist/door/parametrics.js +1 -1
- package/dist/door/placement.d.ts +45 -0
- package/dist/door/placement.d.ts.map +1 -0
- package/dist/door/placement.js +51 -0
- package/dist/door/preview.d.ts +1 -1
- package/dist/door/preview.d.ts.map +1 -1
- package/dist/door/preview.js +3 -1
- package/dist/door/renderer.d.ts.map +1 -1
- package/dist/door/renderer.js +4 -3
- package/dist/door/system.d.ts.map +1 -1
- package/dist/door/system.js +1 -1
- package/dist/door/tool.d.ts.map +1 -1
- package/dist/door/tool.js +99 -28
- package/dist/dormer/csg-geometry.d.ts.map +1 -1
- package/dist/dormer/csg-geometry.js +3 -1
- package/dist/dormer/definition.d.ts +1 -1
- package/dist/dormer/definition.d.ts.map +1 -1
- package/dist/dormer/definition.js +10 -9
- package/dist/dormer/index.d.ts +4 -4
- package/dist/dormer/index.js +3 -3
- package/dist/dormer/move-tool.d.ts.map +1 -1
- package/dist/dormer/move-tool.js +3 -3
- package/dist/dormer/paint.d.ts.map +1 -1
- package/dist/dormer/paint.js +2 -5
- package/dist/dormer/panel-actions-section.js +1 -1
- package/dist/dormer/panel-windows-section.js +1 -1
- package/dist/dormer/panel.d.ts.map +1 -1
- package/dist/dormer/panel.js +12 -22
- package/dist/dormer/parametrics.d.ts +1 -1
- package/dist/dormer/parametrics.js +1 -1
- package/dist/dormer/placement-guides.js +3 -3
- package/dist/dormer/preview.d.ts +1 -1
- package/dist/dormer/preview.d.ts.map +1 -1
- package/dist/dormer/preview.js +2 -2
- package/dist/dormer/renderer.d.ts +1 -1
- package/dist/dormer/renderer.d.ts.map +1 -1
- package/dist/dormer/renderer.js +2 -2
- package/dist/dormer/tool.d.ts.map +1 -1
- package/dist/dormer/tool.js +6 -6
- package/dist/dormer/use-dormer-placement.js +3 -3
- package/dist/downspout/definition.d.ts +1 -1
- package/dist/downspout/definition.d.ts.map +1 -1
- package/dist/downspout/definition.js +11 -10
- package/dist/downspout/geometry.d.ts +1 -1
- package/dist/downspout/geometry.js +2 -2
- package/dist/downspout/index.d.ts +3 -3
- package/dist/downspout/index.js +3 -3
- package/dist/downspout/parametrics.d.ts +1 -1
- package/dist/downspout/parametrics.js +1 -1
- package/dist/downspout/preview.d.ts +2 -2
- package/dist/downspout/preview.d.ts.map +1 -1
- package/dist/downspout/preview.js +3 -3
- package/dist/downspout/renderer.d.ts.map +1 -1
- package/dist/downspout/renderer.js +5 -5
- package/dist/downspout/routing.d.ts +2 -2
- package/dist/downspout/routing.d.ts.map +1 -1
- package/dist/downspout/routing.js +5 -4
- package/dist/downspout/system.d.ts.map +1 -1
- package/dist/downspout/tool.d.ts.map +1 -1
- package/dist/downspout/tool.js +7 -7
- package/dist/duct-fitting/accessory-geometry.js +1 -1
- package/dist/duct-fitting/definition.d.ts +1 -1
- package/dist/duct-fitting/definition.d.ts.map +1 -1
- package/dist/duct-fitting/definition.js +12 -11
- package/dist/duct-fitting/floorplan.d.ts +1 -1
- package/dist/duct-fitting/floorplan.js +5 -5
- package/dist/duct-fitting/geometry.d.ts +1 -1
- package/dist/duct-fitting/geometry.d.ts.map +1 -1
- package/dist/duct-fitting/geometry.js +4 -4
- package/dist/duct-fitting/index.d.ts +4 -4
- package/dist/duct-fitting/index.js +4 -4
- package/dist/duct-fitting/inspector-editors.d.ts +1 -1
- package/dist/duct-fitting/move-tool.d.ts.map +1 -1
- package/dist/duct-fitting/move-tool.js +12 -6
- package/dist/duct-fitting/parametrics.d.ts +1 -1
- package/dist/duct-fitting/parametrics.js +3 -3
- package/dist/duct-fitting/ports.d.ts +1 -1
- package/dist/duct-fitting/selection.d.ts.map +1 -1
- package/dist/duct-fitting/selection.js +8 -9
- package/dist/duct-fitting/tool.d.ts +1 -1
- package/dist/duct-fitting/tool.d.ts.map +1 -1
- package/dist/duct-fitting/tool.js +14 -15
- package/dist/duct-segment/continuation.d.ts +3 -3
- package/dist/duct-segment/continuation.d.ts.map +1 -1
- package/dist/duct-segment/continuation.js +2 -2
- package/dist/duct-segment/definition.d.ts +1 -1
- package/dist/duct-segment/definition.d.ts.map +1 -1
- package/dist/duct-segment/definition.js +14 -14
- package/dist/duct-segment/floorplan.d.ts +1 -1
- package/dist/duct-segment/floorplan.js +3 -3
- package/dist/duct-segment/geometry.d.ts +1 -1
- package/dist/duct-segment/geometry.d.ts.map +1 -1
- package/dist/duct-segment/geometry.js +2 -2
- package/dist/duct-segment/index.d.ts +3 -3
- package/dist/duct-segment/index.js +3 -3
- package/dist/duct-segment/move-tool.d.ts.map +1 -1
- package/dist/duct-segment/move-tool.js +16 -9
- package/dist/duct-segment/parametrics.d.ts +1 -1
- package/dist/duct-segment/parametrics.js +5 -5
- package/dist/duct-segment/selection.d.ts.map +1 -1
- package/dist/duct-segment/selection.js +13 -12
- package/dist/duct-segment/tool.d.ts +1 -2
- package/dist/duct-segment/tool.d.ts.map +1 -1
- package/dist/duct-segment/tool.js +22 -18
- package/dist/duct-terminal/definition.d.ts +1 -1
- package/dist/duct-terminal/definition.js +6 -6
- package/dist/duct-terminal/floorplan.d.ts +1 -1
- package/dist/duct-terminal/floorplan.js +1 -1
- package/dist/duct-terminal/geometry.d.ts +1 -1
- package/dist/duct-terminal/geometry.js +2 -2
- package/dist/duct-terminal/index.d.ts +4 -4
- package/dist/duct-terminal/index.js +4 -4
- package/dist/duct-terminal/parametrics.d.ts +1 -1
- package/dist/duct-terminal/ports.d.ts +1 -1
- package/dist/duct-terminal/ports.js +1 -1
- package/dist/duct-terminal/tool.d.ts.map +1 -1
- package/dist/duct-terminal/tool.js +11 -12
- package/dist/elevator/definition.d.ts +1 -1
- package/dist/elevator/definition.d.ts.map +1 -1
- package/dist/elevator/definition.js +8 -9
- package/dist/elevator/floorplan-affordances.js +1 -1
- package/dist/elevator/index.d.ts +1 -1
- package/dist/elevator/index.js +1 -1
- package/dist/elevator/paint.js +1 -1
- package/dist/elevator/panel.d.ts.map +1 -1
- package/dist/elevator/panel.js +14 -36
- package/dist/elevator/parametrics.js +2 -2
- package/dist/elevator/renderer.d.ts.map +1 -1
- package/dist/elevator/renderer.js +4 -5
- package/dist/elevator/system.js +1 -1
- package/dist/eyebrow-vent/definition.d.ts +1 -1
- package/dist/eyebrow-vent/definition.d.ts.map +1 -1
- package/dist/eyebrow-vent/definition.js +11 -13
- package/dist/eyebrow-vent/geometry.d.ts.map +1 -1
- package/dist/eyebrow-vent/geometry.js +1 -1
- package/dist/eyebrow-vent/index.d.ts +3 -3
- package/dist/eyebrow-vent/index.js +3 -3
- package/dist/eyebrow-vent/move-tool.js +4 -4
- package/dist/eyebrow-vent/paint.d.ts.map +1 -1
- package/dist/eyebrow-vent/paint.js +5 -8
- package/dist/eyebrow-vent/panel.d.ts.map +1 -1
- package/dist/eyebrow-vent/panel.js +6 -24
- package/dist/eyebrow-vent/parametrics.d.ts +1 -1
- package/dist/eyebrow-vent/parametrics.js +1 -1
- package/dist/eyebrow-vent/preview.d.ts +1 -1
- package/dist/eyebrow-vent/preview.d.ts.map +1 -1
- package/dist/eyebrow-vent/preview.js +2 -2
- package/dist/eyebrow-vent/renderer.d.ts.map +1 -1
- package/dist/eyebrow-vent/renderer.js +3 -3
- package/dist/eyebrow-vent/tool.d.ts.map +1 -1
- package/dist/eyebrow-vent/tool.js +7 -7
- package/dist/fence/actions/move-endpoint.d.ts +1 -1
- package/dist/fence/actions/move-endpoint.d.ts.map +1 -1
- package/dist/fence/actions/move-endpoint.js +2 -1
- package/dist/fence/curve-tool.d.ts.map +1 -1
- package/dist/fence/definition.d.ts +3 -2
- package/dist/fence/definition.d.ts.map +1 -1
- package/dist/fence/definition.js +113 -43
- package/dist/fence/drafting.d.ts +42 -0
- package/dist/fence/drafting.d.ts.map +1 -0
- package/dist/fence/drafting.js +269 -0
- package/dist/fence/feature-tool.d.ts +4 -0
- package/dist/fence/feature-tool.d.ts.map +1 -0
- package/dist/fence/feature-tool.js +140 -0
- package/dist/fence/features.d.ts +2 -0
- package/dist/fence/features.d.ts.map +1 -0
- package/dist/fence/features.js +12 -0
- package/dist/fence/floorplan-affordances.d.ts.map +1 -1
- package/dist/fence/floorplan-affordances.js +2 -1
- package/dist/fence/floorplan.d.ts +2 -3
- package/dist/fence/floorplan.d.ts.map +1 -1
- package/dist/fence/floorplan.js +131 -71
- package/dist/fence/geometry-parts.d.ts +50 -0
- package/dist/fence/geometry-parts.d.ts.map +1 -0
- package/dist/fence/geometry-parts.js +1144 -0
- package/dist/fence/geometry.d.ts +2 -3
- package/dist/fence/geometry.d.ts.map +1 -1
- package/dist/fence/geometry.js +85 -8
- package/dist/fence/index.d.ts +3 -2
- package/dist/fence/index.d.ts.map +1 -1
- package/dist/fence/index.js +3 -2
- package/dist/fence/inspector-editors.d.ts +15 -0
- package/dist/fence/inspector-editors.d.ts.map +1 -1
- package/dist/fence/inspector-editors.js +128 -3
- package/dist/fence/lift.d.ts +3 -3
- package/dist/fence/lift.d.ts.map +1 -1
- package/dist/fence/lift.js +15 -3
- package/dist/fence/move-control-point-tool.d.ts.map +1 -1
- package/dist/fence/move-endpoint-tool.d.ts.map +1 -1
- package/dist/fence/move-endpoint-tool.js +4 -4
- package/dist/fence/move-tangent-tool.d.ts.map +1 -1
- package/dist/fence/move-tool.d.ts.map +1 -1
- package/dist/fence/move-tool.js +2 -1
- package/dist/fence/paint.js +1 -1
- package/dist/fence/panel-model.d.ts +4 -0
- package/dist/fence/panel-model.d.ts.map +1 -0
- package/dist/fence/panel-model.js +12 -0
- package/dist/fence/parametrics.d.ts +1 -13
- package/dist/fence/parametrics.d.ts.map +1 -1
- package/dist/fence/parametrics.js +185 -18
- package/dist/fence/system.d.ts.map +1 -1
- package/dist/fence/system.js +142 -32
- package/dist/fence/tool.d.ts.map +1 -1
- package/dist/fence/tool.js +339 -56
- package/dist/fence-feature/actions.d.ts +7 -0
- package/dist/fence-feature/actions.d.ts.map +1 -0
- package/dist/fence-feature/actions.js +26 -0
- package/dist/fence-feature/definition.d.ts +4 -0
- package/dist/fence-feature/definition.d.ts.map +1 -0
- package/dist/fence-feature/definition.js +116 -0
- package/dist/fence-feature/floorplan-affordances.d.ts +3 -0
- package/dist/fence-feature/floorplan-affordances.d.ts.map +1 -0
- package/dist/fence-feature/floorplan-affordances.js +37 -0
- package/dist/fence-feature/floorplan.d.ts +4 -0
- package/dist/fence-feature/floorplan.d.ts.map +1 -0
- package/dist/fence-feature/floorplan.js +120 -0
- package/dist/fence-feature/geometry.d.ts +5 -0
- package/dist/fence-feature/geometry.d.ts.map +1 -0
- package/dist/fence-feature/geometry.js +43 -0
- package/dist/fence-feature/handles.d.ts +5 -0
- package/dist/fence-feature/handles.d.ts.map +1 -0
- package/dist/fence-feature/handles.js +84 -0
- package/dist/fence-feature/inspector.d.ts +6 -0
- package/dist/fence-feature/inspector.d.ts.map +1 -0
- package/dist/fence-feature/inspector.js +214 -0
- package/dist/fence-feature/interaction.d.ts +3 -0
- package/dist/fence-feature/interaction.d.ts.map +1 -0
- package/dist/fence-feature/interaction.js +41 -0
- package/dist/fence-feature/move-session.d.ts +9 -0
- package/dist/fence-feature/move-session.d.ts.map +1 -0
- package/dist/fence-feature/move-session.js +48 -0
- package/dist/fence-feature/move-tool.d.ts +5 -0
- package/dist/fence-feature/move-tool.d.ts.map +1 -0
- package/dist/fence-feature/move-tool.js +58 -0
- package/dist/fence-feature/pick-target.d.ts +7 -0
- package/dist/fence-feature/pick-target.d.ts.map +1 -0
- package/dist/fence-feature/pick-target.js +52 -0
- package/dist/floor-opening/definition.d.ts +3 -0
- package/dist/floor-opening/definition.d.ts.map +1 -0
- package/dist/floor-opening/definition.js +41 -0
- package/dist/floor-opening/floorplan.d.ts +156 -0
- package/dist/floor-opening/floorplan.d.ts.map +1 -0
- package/dist/floor-opening/floorplan.js +63 -0
- package/dist/guide/definition.d.ts +1 -1
- package/dist/guide/definition.js +4 -4
- package/dist/guide/index.d.ts +1 -1
- package/dist/guide/index.js +1 -1
- package/dist/guide/renderer.d.ts.map +1 -1
- package/dist/guide/system.d.ts.map +1 -1
- package/dist/gutter/definition.d.ts +1 -1
- package/dist/gutter/definition.d.ts.map +1 -1
- package/dist/gutter/definition.js +12 -11
- package/dist/gutter/downspouts-panel.js +3 -3
- package/dist/gutter/eave-align.js +2 -2
- package/dist/gutter/eave-snap.d.ts.map +1 -1
- package/dist/gutter/eave-snap.js +2 -2
- package/dist/gutter/floorplan.d.ts.map +1 -1
- package/dist/gutter/floorplan.js +5 -4
- package/dist/gutter/geometry.d.ts +1 -1
- package/dist/gutter/geometry.js +3 -3
- package/dist/gutter/index.d.ts +3 -3
- package/dist/gutter/index.js +3 -3
- package/dist/gutter/move-tool.js +4 -4
- package/dist/gutter/outlet-lookup.d.ts +1 -1
- package/dist/gutter/outlet-lookup.js +1 -1
- package/dist/gutter/paint.js +1 -1
- package/dist/gutter/parametrics.d.ts +1 -1
- package/dist/gutter/parametrics.js +1 -1
- package/dist/gutter/preview.d.ts +1 -1
- package/dist/gutter/preview.d.ts.map +1 -1
- package/dist/gutter/preview.js +3 -3
- package/dist/gutter/renderer.d.ts.map +1 -1
- package/dist/gutter/renderer.js +6 -6
- package/dist/gutter/tool.d.ts.map +1 -1
- package/dist/gutter/tool.js +7 -7
- package/dist/hvac-equipment/definition.d.ts +1 -1
- package/dist/hvac-equipment/definition.js +6 -6
- package/dist/hvac-equipment/floorplan.d.ts +1 -1
- package/dist/hvac-equipment/floorplan.js +2 -2
- package/dist/hvac-equipment/geometry.d.ts +1 -1
- package/dist/hvac-equipment/geometry.js +2 -2
- package/dist/hvac-equipment/index.d.ts +4 -4
- package/dist/hvac-equipment/index.js +4 -4
- package/dist/hvac-equipment/parametrics.d.ts +1 -1
- package/dist/hvac-equipment/ports.d.ts +1 -1
- package/dist/hvac-equipment/ports.js +1 -1
- package/dist/hvac-equipment/tool.d.ts.map +1 -1
- package/dist/hvac-equipment/tool.js +7 -8
- package/dist/imported-mesh/definition.d.ts +1 -1
- package/dist/imported-mesh/definition.d.ts.map +1 -1
- package/dist/imported-mesh/definition.js +5 -3
- package/dist/imported-mesh/geometry.d.ts +1 -1
- package/dist/imported-mesh/geometry.d.ts.map +1 -1
- package/dist/imported-mesh/geometry.js +40 -12
- package/dist/imported-mesh/index.d.ts +3 -3
- package/dist/imported-mesh/index.js +3 -3
- package/dist/index.d.ts +65 -50
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +122 -100
- package/dist/item/authored-face-host.d.ts +10 -0
- package/dist/item/authored-face-host.d.ts.map +1 -0
- package/dist/item/authored-face-host.js +87 -0
- package/dist/item/authored-params.d.ts +15 -0
- package/dist/item/authored-params.d.ts.map +1 -0
- package/dist/item/authored-params.js +72 -0
- package/dist/item/definition.d.ts +3 -3
- package/dist/item/definition.d.ts.map +1 -1
- package/dist/item/definition.js +46 -15
- package/dist/item/floorplan-move.js +4 -4
- package/dist/item/floorplan.d.ts +1 -1
- package/dist/item/floorplan.d.ts.map +1 -1
- package/dist/item/floorplan.js +36 -6
- package/dist/item/index.d.ts +3 -2
- package/dist/item/index.d.ts.map +1 -1
- package/dist/item/index.js +3 -2
- package/dist/item/model-loader.d.ts +7 -0
- package/dist/item/model-loader.d.ts.map +1 -1
- package/dist/item/model-loader.js +104 -23
- package/dist/item/move-tool.d.ts.map +1 -1
- package/dist/item/move-tool.js +4 -4
- package/dist/item/paint.d.ts.map +1 -1
- package/dist/item/paint.js +5 -24
- package/dist/item/panel.d.ts +1 -3
- package/dist/item/panel.d.ts.map +1 -1
- package/dist/item/panel.js +23 -27
- package/dist/item/parametrics.d.ts +1 -1
- package/dist/item/parametrics.js +1 -1
- package/dist/item/placement-notice.d.ts +14 -0
- package/dist/item/placement-notice.d.ts.map +1 -0
- package/dist/item/placement-notice.js +38 -0
- package/dist/item/plan-symbols.d.ts +67 -0
- package/dist/item/plan-symbols.d.ts.map +1 -0
- package/dist/item/plan-symbols.js +407 -0
- package/dist/item/renderer.d.ts +10 -0
- package/dist/item/renderer.d.ts.map +1 -1
- package/dist/item/renderer.js +78 -48
- package/dist/item/script-param-defaults.d.ts +12 -0
- package/dist/item/script-param-defaults.d.ts.map +1 -0
- package/dist/item/script-param-defaults.js +34 -0
- package/dist/item/system.d.ts.map +1 -1
- package/dist/item/system.js +7 -2
- package/dist/item/tool.d.ts.map +1 -1
- package/dist/item/tool.js +3 -3
- package/dist/item/wall-object-observations.d.ts +6 -0
- package/dist/item/wall-object-observations.d.ts.map +1 -0
- package/dist/item/wall-object-observations.js +260 -0
- package/dist/lean-to-extension/assembly.d.ts +2 -2
- package/dist/lean-to-extension/assembly.js +8 -8
- package/dist/lean-to-extension/canopy-joint.d.ts +1 -1
- package/dist/lean-to-extension/canopy-joint.js +1 -1
- package/dist/lean-to-extension/corner-joint.js +4 -4
- package/dist/lean-to-extension/definition.d.ts +1 -1
- package/dist/lean-to-extension/definition.d.ts.map +1 -1
- package/dist/lean-to-extension/definition.js +18 -18
- package/dist/lean-to-extension/floorplan-affordances.js +4 -4
- package/dist/lean-to-extension/floorplan-move.js +4 -4
- package/dist/lean-to-extension/floorplan-tool.d.ts.map +1 -1
- package/dist/lean-to-extension/floorplan-tool.js +7 -7
- package/dist/lean-to-extension/floorplan.js +5 -5
- package/dist/lean-to-extension/geometry.d.ts.map +1 -1
- package/dist/lean-to-extension/geometry.js +5 -5
- package/dist/lean-to-extension/index.d.ts +7 -7
- package/dist/lean-to-extension/index.js +7 -7
- package/dist/lean-to-extension/layout.d.ts +1 -1
- package/dist/lean-to-extension/layout.d.ts.map +1 -1
- package/dist/lean-to-extension/layout.js +6 -7
- package/dist/lean-to-extension/managed-preview.js +4 -4
- package/dist/lean-to-extension/move-tool.d.ts.map +1 -1
- package/dist/lean-to-extension/move-tool.js +5 -5
- package/dist/lean-to-extension/paint.js +1 -1
- package/dist/lean-to-extension/parametrics.js +1 -1
- package/dist/lean-to-extension/placement-validation.d.ts.map +1 -1
- package/dist/lean-to-extension/placement-validation.js +9 -9
- package/dist/lean-to-extension/placement.d.ts +1 -1
- package/dist/lean-to-extension/placement.js +6 -6
- package/dist/lean-to-extension/plan-footprint.js +2 -2
- package/dist/lean-to-extension/preview-geometry.js +1 -1
- package/dist/lean-to-extension/preview.d.ts.map +1 -1
- package/dist/lean-to-extension/preview.js +1 -1
- package/dist/lean-to-extension/renderer.d.ts.map +1 -1
- package/dist/lean-to-extension/renderer.js +1 -1
- package/dist/lean-to-extension/roof-attachment.d.ts.map +1 -1
- package/dist/lean-to-extension/roof-attachment.js +4 -4
- package/dist/lean-to-extension/system.d.ts.map +1 -1
- package/dist/lean-to-extension/system.js +10 -10
- package/dist/lean-to-extension/tool.d.ts.map +1 -1
- package/dist/lean-to-extension/tool.js +16 -16
- package/dist/level/definition.d.ts +1 -1
- package/dist/level/definition.d.ts.map +1 -1
- package/dist/level/definition.js +5 -4
- package/dist/level/index.d.ts +1 -1
- package/dist/level/index.js +1 -1
- package/dist/level/renderer.d.ts.map +1 -1
- package/dist/level/system.d.ts.map +1 -1
- package/dist/lineset/definition.d.ts +1 -1
- package/dist/lineset/definition.js +8 -8
- package/dist/lineset/floorplan.d.ts +1 -1
- package/dist/lineset/floorplan.js +1 -1
- package/dist/lineset/geometry.d.ts +1 -1
- package/dist/lineset/geometry.js +1 -1
- package/dist/lineset/index.d.ts +3 -3
- package/dist/lineset/index.js +3 -3
- package/dist/lineset/move-tool.d.ts.map +1 -1
- package/dist/lineset/move-tool.js +10 -4
- package/dist/lineset/parametrics.d.ts +1 -1
- package/dist/lineset/selection.d.ts.map +1 -1
- package/dist/lineset/selection.js +1 -1
- package/dist/lineset/tool.d.ts.map +1 -1
- package/dist/lineset/tool.js +7 -8
- package/dist/liquid-line/definition.d.ts +1 -1
- package/dist/liquid-line/definition.js +8 -8
- package/dist/liquid-line/floorplan.d.ts +1 -1
- package/dist/liquid-line/floorplan.js +1 -1
- package/dist/liquid-line/geometry.d.ts +1 -1
- package/dist/liquid-line/geometry.js +1 -1
- package/dist/liquid-line/index.d.ts +4 -4
- package/dist/liquid-line/index.js +4 -4
- package/dist/liquid-line/move-tool.d.ts.map +1 -1
- package/dist/liquid-line/move-tool.js +9 -3
- package/dist/liquid-line/parametrics.d.ts +1 -1
- package/dist/liquid-line/selection.d.ts.map +1 -1
- package/dist/liquid-line/selection.js +1 -1
- package/dist/liquid-line/tool.d.ts.map +1 -1
- package/dist/liquid-line/tool.js +9 -10
- package/dist/measurement/definition.d.ts +1 -1
- package/dist/measurement/definition.js +7 -7
- package/dist/measurement/edit.d.ts +1 -1
- package/dist/measurement/floorplan-affordance.js +2 -2
- package/dist/measurement/floorplan.js +2 -2
- package/dist/measurement/index.d.ts +2 -2
- package/dist/measurement/index.js +2 -2
- package/dist/measurement/renderer.d.ts.map +1 -1
- package/dist/measurement/renderer.js +2 -2
- package/dist/measurement/selection.d.ts.map +1 -1
- package/dist/measurement/selection.js +4 -4
- package/dist/measurement/smart-surface.d.ts +1 -1
- package/dist/measurement/smart-tool.d.ts.map +1 -1
- package/dist/measurement/smart-tool.js +2 -2
- package/dist/measurement/surface-query.js +1 -1
- package/dist/measurement/tool-router.js +2 -2
- package/dist/measurement/tool.d.ts +1 -1
- package/dist/measurement/tool.d.ts.map +1 -1
- package/dist/measurement/tool.js +3 -3
- package/dist/pipe-fitting/definition.d.ts +1 -1
- package/dist/pipe-fitting/definition.js +11 -11
- package/dist/pipe-fitting/floorplan.d.ts +1 -1
- package/dist/pipe-fitting/floorplan.js +4 -4
- package/dist/pipe-fitting/geometry.d.ts +1 -1
- package/dist/pipe-fitting/geometry.js +4 -4
- package/dist/pipe-fitting/index.d.ts +4 -4
- package/dist/pipe-fitting/index.js +4 -4
- package/dist/pipe-fitting/inline-insertion.d.ts +1 -1
- package/dist/pipe-fitting/inline-insertion.d.ts.map +1 -1
- package/dist/pipe-fitting/inline-insertion.js +1 -1
- package/dist/pipe-fitting/move-tool.d.ts.map +1 -1
- package/dist/pipe-fitting/move-tool.js +11 -5
- package/dist/pipe-fitting/parametrics.d.ts +1 -1
- package/dist/pipe-fitting/parametrics.js +1 -1
- package/dist/pipe-fitting/ports.d.ts +1 -1
- package/dist/pipe-fitting/ports.js +1 -1
- package/dist/pipe-fitting/selection.d.ts.map +1 -1
- package/dist/pipe-fitting/selection.js +6 -7
- package/dist/pipe-fitting/tool.d.ts +2 -2
- package/dist/pipe-fitting/tool.d.ts.map +1 -1
- package/dist/pipe-fitting/tool.js +15 -16
- package/dist/pipe-segment/continuation.d.ts +4 -4
- package/dist/pipe-segment/continuation.d.ts.map +1 -1
- package/dist/pipe-segment/continuation.js +1 -1
- package/dist/pipe-segment/definition.d.ts +1 -1
- package/dist/pipe-segment/definition.js +11 -11
- package/dist/pipe-segment/floorplan.d.ts +1 -1
- package/dist/pipe-segment/floorplan.js +3 -3
- package/dist/pipe-segment/geometry.d.ts +1 -1
- package/dist/pipe-segment/geometry.js +2 -2
- package/dist/pipe-segment/index.d.ts +3 -3
- package/dist/pipe-segment/index.js +3 -3
- package/dist/pipe-segment/move-tool.d.ts.map +1 -1
- package/dist/pipe-segment/move-tool.js +11 -5
- package/dist/pipe-segment/parametrics.d.ts +1 -1
- package/dist/pipe-segment/parametrics.js +3 -3
- package/dist/pipe-segment/selection.d.ts.map +1 -1
- package/dist/pipe-segment/selection.js +10 -9
- package/dist/pipe-segment/tool.d.ts.map +1 -1
- package/dist/pipe-segment/tool.js +13 -14
- package/dist/pipe-trap/definition.d.ts +1 -1
- package/dist/pipe-trap/definition.js +6 -6
- package/dist/pipe-trap/floorplan.d.ts +1 -1
- package/dist/pipe-trap/floorplan.js +1 -1
- package/dist/pipe-trap/geometry.d.ts +1 -1
- package/dist/pipe-trap/geometry.js +2 -2
- package/dist/pipe-trap/index.d.ts +4 -4
- package/dist/pipe-trap/index.js +4 -4
- package/dist/pipe-trap/parametrics.d.ts +1 -1
- package/dist/pipe-trap/ports.d.ts +1 -1
- package/dist/pipe-trap/ports.js +1 -1
- package/dist/pipe-trap/tool.d.ts.map +1 -1
- package/dist/pipe-trap/tool.js +7 -8
- package/dist/procedural-item/animation.d.ts +8 -0
- package/dist/procedural-item/animation.d.ts.map +1 -0
- package/dist/procedural-item/animation.js +116 -0
- package/dist/procedural-item/definition.d.ts.map +1 -1
- package/dist/procedural-item/definition.js +81 -13
- package/dist/procedural-item/geometry.d.ts +5 -1
- package/dist/procedural-item/geometry.d.ts.map +1 -1
- package/dist/procedural-item/geometry.js +239 -15
- package/dist/procedural-item/index.d.ts +2 -2
- package/dist/procedural-item/index.js +2 -2
- package/dist/procedural-item/move-session.d.ts +1 -1
- package/dist/procedural-item/move-session.js +2 -2
- package/dist/procedural-item/move-tool.js +3 -3
- package/dist/procedural-item/renderer.d.ts.map +1 -1
- package/dist/procedural-item/renderer.js +273 -24
- package/dist/ridge-vent/definition.d.ts +1 -1
- package/dist/ridge-vent/definition.d.ts.map +1 -1
- package/dist/ridge-vent/definition.js +9 -8
- package/dist/ridge-vent/geometry.js +1 -1
- package/dist/ridge-vent/index.d.ts +3 -3
- package/dist/ridge-vent/index.js +3 -3
- package/dist/ridge-vent/move-tool.js +5 -5
- package/dist/ridge-vent/panel.d.ts.map +1 -1
- package/dist/ridge-vent/panel.js +6 -24
- package/dist/ridge-vent/parametrics.d.ts +1 -1
- package/dist/ridge-vent/parametrics.js +1 -1
- package/dist/ridge-vent/preview.d.ts +1 -1
- package/dist/ridge-vent/preview.d.ts.map +1 -1
- package/dist/ridge-vent/preview.js +2 -2
- package/dist/ridge-vent/renderer.d.ts.map +1 -1
- package/dist/ridge-vent/renderer.js +14 -12
- package/dist/ridge-vent/tool.d.ts.map +1 -1
- package/dist/ridge-vent/tool.js +8 -8
- package/dist/roof/barrel-panel.d.ts +5 -0
- package/dist/roof/barrel-panel.d.ts.map +1 -0
- package/dist/roof/barrel-panel.js +17 -0
- package/dist/roof/conical-roof.d.ts +5 -1
- package/dist/roof/conical-roof.d.ts.map +1 -1
- package/dist/roof/conical-roof.js +19 -15
- package/dist/roof/definition.d.ts +1 -1
- package/dist/roof/definition.d.ts.map +1 -1
- package/dist/roof/definition.js +22 -11
- package/dist/roof/floorplan.d.ts +8 -0
- package/dist/roof/floorplan.d.ts.map +1 -1
- package/dist/roof/floorplan.js +202 -19
- package/dist/roof/glazed-geometry.d.ts +5 -0
- package/dist/roof/glazed-geometry.d.ts.map +1 -0
- package/dist/roof/glazed-geometry.js +27 -0
- package/dist/roof/glazed-materials.d.ts +14 -0
- package/dist/roof/glazed-materials.d.ts.map +1 -0
- package/dist/roof/glazed-materials.js +42 -0
- package/dist/roof/glazing-controls.d.ts +33 -0
- package/dist/roof/glazing-controls.d.ts.map +1 -0
- package/dist/roof/glazing-controls.js +50 -0
- package/dist/roof/glazing-panel-editor.d.ts +6 -0
- package/dist/roof/glazing-panel-editor.d.ts.map +1 -0
- package/dist/roof/glazing-panel-editor.js +44 -0
- package/dist/roof/glazing-panel.d.ts +5 -0
- package/dist/roof/glazing-panel.d.ts.map +1 -0
- package/dist/roof/glazing-panel.js +41 -0
- package/dist/roof/glazing-preview.d.ts +10 -0
- package/dist/roof/glazing-preview.d.ts.map +1 -0
- package/dist/roof/glazing-preview.js +48 -0
- package/dist/roof/index.d.ts +3 -3
- package/dist/roof/index.js +3 -3
- package/dist/roof/panel-model.d.ts.map +1 -1
- package/dist/roof/panel-model.js +10 -6
- package/dist/roof/panel.d.ts.map +1 -1
- package/dist/roof/panel.js +43 -15
- package/dist/roof/parametrics.js +1 -1
- package/dist/roof/renderer.d.ts.map +1 -1
- package/dist/roof/renderer.js +40 -7
- package/dist/roof/roof-footprint-source.d.ts.map +1 -1
- package/dist/roof/roof-level-target.d.ts +75 -0
- package/dist/roof/roof-level-target.d.ts.map +1 -0
- package/dist/roof/roof-level-target.js +119 -0
- package/dist/roof/roof-placement-mode.d.ts +3 -2
- package/dist/roof/roof-placement-mode.d.ts.map +1 -1
- package/dist/roof/system.d.ts +1 -2
- package/dist/roof/system.d.ts.map +1 -1
- package/dist/roof/system.js +5 -1
- package/dist/roof/tool.d.ts +3 -3
- package/dist/roof/tool.d.ts.map +1 -1
- package/dist/roof/tool.js +80 -41
- package/dist/roof-segment/definition.d.ts +1 -1
- package/dist/roof-segment/definition.d.ts.map +1 -1
- package/dist/roof-segment/definition.js +31 -62
- package/dist/roof-segment/floorplan-affordances.d.ts.map +1 -1
- package/dist/roof-segment/floorplan-affordances.js +13 -34
- package/dist/roof-segment/floorplan.d.ts.map +1 -1
- package/dist/roof-segment/floorplan.js +1 -0
- package/dist/roof-segment/index.d.ts +1 -1
- package/dist/roof-segment/index.js +1 -1
- package/dist/roof-segment/measurement.js +1 -1
- package/dist/roof-segment/paint.d.ts +4 -0
- package/dist/roof-segment/paint.d.ts.map +1 -0
- package/dist/roof-segment/paint.js +92 -0
- package/dist/roof-segment/panel.d.ts.map +1 -1
- package/dist/roof-segment/panel.js +20 -30
- package/dist/roof-segment/parametrics.d.ts +1 -1
- package/dist/roof-segment/parametrics.d.ts.map +1 -1
- package/dist/roof-segment/parametrics.js +12 -1
- package/dist/roof-segment/renderer.d.ts +1 -1
- package/dist/roof-segment/renderer.d.ts.map +1 -1
- package/dist/roof-segment/renderer.js +81 -19
- package/dist/scan/definition.d.ts +1 -1
- package/dist/scan/definition.js +4 -4
- package/dist/scan/index.d.ts +1 -1
- package/dist/scan/index.js +1 -1
- package/dist/scan/renderer.d.ts.map +1 -1
- package/dist/scan/system.d.ts.map +1 -1
- package/dist/separator/definition.d.ts +3 -0
- package/dist/separator/definition.d.ts.map +1 -0
- package/dist/separator/definition.js +39 -0
- package/dist/separator/renderer.d.ts +5 -0
- package/dist/separator/renderer.d.ts.map +1 -0
- package/dist/separator/renderer.js +36 -0
- package/dist/shared/accessory-placement.d.ts +1 -1
- package/dist/shared/accessory-placement.d.ts.map +1 -1
- package/dist/shared/accessory-placement.js +3 -3
- package/dist/shared/accessory-snapping.d.ts +1 -1
- package/dist/shared/accessory-snapping.d.ts.map +1 -1
- package/dist/shared/accessory-snapping.js +1 -1
- package/dist/shared/auto-fitting.d.ts +1 -1
- package/dist/shared/auto-fitting.d.ts.map +1 -1
- package/dist/shared/auto-fitting.js +3 -3
- package/dist/shared/automatic-run-end-cap.d.ts +1 -1
- package/dist/shared/automatic-run-end-cap.d.ts.map +1 -1
- package/dist/shared/automatic-run-end-cap.js +4 -4
- package/dist/shared/block-face-host.d.ts +1 -1
- package/dist/shared/connection-feedback.d.ts +1 -2
- package/dist/shared/connection-feedback.d.ts.map +1 -1
- package/dist/shared/connection-feedback.js +1 -2
- package/dist/shared/construction-dimension-standards.d.ts +1 -1
- package/dist/shared/curtain-opening-limits.js +1 -1
- package/dist/shared/draft-axis-guides.js +1 -1
- package/dist/shared/duct-adapter.d.ts +2 -2
- package/dist/shared/duct-adapter.d.ts.map +1 -1
- package/dist/shared/duct-adapter.js +3 -3
- package/dist/shared/duct-body-paint.d.ts +0 -4
- package/dist/shared/duct-body-paint.d.ts.map +1 -1
- package/dist/shared/duct-body-paint.js +2 -6
- package/dist/shared/elbow-branch-continuation.d.ts +1 -1
- package/dist/shared/elbow-branch-continuation.d.ts.map +1 -1
- package/dist/shared/elbow-branch-continuation.js +2 -2
- package/dist/shared/finish-script-model.d.ts +12 -0
- package/dist/shared/finish-script-model.d.ts.map +1 -0
- package/dist/shared/finish-script-model.js +32 -0
- package/dist/shared/fitting-deletion-cleanup.js +2 -2
- package/dist/shared/fitting-endpoint-reaim.js +3 -3
- package/dist/shared/fitting-surface-support.d.ts.map +1 -1
- package/dist/shared/fitting-surface-support.js +2 -2
- package/dist/shared/fitting-tool-options.js +1 -1
- package/dist/shared/floor-placement.d.ts.map +1 -1
- package/dist/shared/floorplan-cursor.d.ts.map +1 -1
- package/dist/shared/hosted-resize.d.ts +2 -1
- package/dist/shared/hosted-resize.d.ts.map +1 -1
- package/dist/shared/hosted-resize.js +11 -3
- package/dist/shared/item-interaction-actions.d.ts +6 -0
- package/dist/shared/item-interaction-actions.d.ts.map +1 -0
- package/dist/shared/item-interaction-actions.js +27 -0
- package/dist/shared/item-interactions.d.ts +9 -0
- package/dist/shared/item-interactions.d.ts.map +1 -0
- package/dist/shared/item-interactions.js +74 -0
- package/dist/shared/item-light-placement.d.ts +2 -0
- package/dist/shared/item-light-placement.d.ts.map +1 -0
- package/dist/shared/item-light-placement.js +3 -0
- package/dist/shared/lean-to-post-omissions.d.ts +1 -1
- package/dist/shared/lean-to-post-omissions.js +1 -1
- package/dist/shared/mep-ghost.js +5 -5
- package/dist/shared/move-roof-tool.d.ts.map +1 -1
- package/dist/shared/move-roof-tool.js +129 -35
- package/dist/shared/node-batch/batchable.d.ts +12 -0
- package/dist/shared/node-batch/batchable.d.ts.map +1 -0
- package/dist/shared/node-batch/batchable.js +43 -0
- package/dist/shared/node-batch/candidates.d.ts +8 -6
- package/dist/shared/node-batch/candidates.d.ts.map +1 -1
- package/dist/shared/node-batch/candidates.js +44 -60
- package/dist/shared/node-batch/release.d.ts +8 -0
- package/dist/shared/node-batch/release.d.ts.map +1 -0
- package/dist/shared/node-batch/release.js +16 -0
- package/dist/shared/node-batch/store.d.ts +1 -1
- package/dist/shared/node-batch/store.d.ts.map +1 -1
- package/dist/shared/node-batch/store.js +1 -1
- package/dist/shared/node-batch/system.d.ts.map +1 -1
- package/dist/shared/node-batch/system.js +36 -16
- package/dist/shared/node-batch/types.d.ts +4 -1
- package/dist/shared/node-batch/types.d.ts.map +1 -1
- package/dist/shared/opening-documentation.d.ts +14 -2
- package/dist/shared/opening-documentation.d.ts.map +1 -1
- package/dist/shared/opening-documentation.js +246 -60
- package/dist/shared/opening-guides-runtime.d.ts.map +1 -1
- package/dist/shared/opening-guides-runtime.js +18 -15
- package/dist/shared/opening-move-wall-gate.d.ts.map +1 -1
- package/dist/shared/opening-placement-dimensions.d.ts.map +1 -1
- package/dist/shared/opening-placement-dimensions.js +5 -5
- package/dist/shared/opening-plane-offset.d.ts +23 -0
- package/dist/shared/opening-plane-offset.d.ts.map +1 -0
- package/dist/shared/opening-plane-offset.js +24 -0
- package/dist/shared/opening-property-preview-host.d.ts +1 -1
- package/dist/shared/opening-property-preview.d.ts.map +1 -1
- package/dist/shared/opening-property-preview.js +1 -1
- package/dist/shared/panel-fields.js +2 -2
- package/dist/shared/path-point-affordance.js +2 -2
- package/dist/shared/pipe-run-translation-offset.d.ts +2 -2
- package/dist/shared/pipe-run-translation-offset.d.ts.map +1 -1
- package/dist/shared/pipe-run-translation-offset.js +2 -2
- package/dist/shared/pipe-vertical-offset.d.ts +2 -2
- package/dist/shared/pipe-vertical-offset.d.ts.map +1 -1
- package/dist/shared/pipe-vertical-offset.js +2 -2
- package/dist/shared/polygon-centroid-move.d.ts.map +1 -1
- package/dist/shared/polygon-centroid-move.js +5 -2
- package/dist/shared/polygon-vertex-affordance.d.ts.map +1 -1
- package/dist/shared/polygon-vertex-affordance.js +19 -15
- package/dist/shared/port-systems.d.ts +9 -0
- package/dist/shared/port-systems.d.ts.map +1 -0
- package/dist/shared/port-systems.js +10 -0
- package/dist/shared/refrigerant-line-selection.d.ts.map +1 -1
- package/dist/shared/refrigerant-line-selection.js +3 -2
- package/dist/shared/relative-roof-drag.d.ts +1 -1
- package/dist/shared/relative-roof-drag.js +2 -2
- package/dist/shared/roof-segment-hit.d.ts.map +1 -1
- package/dist/shared/roof-segment-hit.js +7 -5
- package/dist/shared/roof-surface-placement-guides.d.ts +1 -1
- package/dist/shared/roof-surface-placement-guides.js +11 -11
- package/dist/shared/roof-surface.d.ts.map +1 -1
- package/dist/shared/roof-surface.js +25 -5
- package/dist/shared/run-hanger-controls.d.ts +1 -1
- package/dist/shared/run-hanger-controls.js +1 -1
- package/dist/shared/run-hanger-inspector.d.ts +1 -1
- package/dist/shared/run-hanger-inspector.js +3 -3
- package/dist/shared/run-hangers.d.ts.map +1 -1
- package/dist/shared/run-hangers.js +7 -6
- package/dist/shared/run-move-connectivity.d.ts.map +1 -1
- package/dist/shared/run-translation-offset.d.ts +3 -3
- package/dist/shared/run-translation-offset.d.ts.map +1 -1
- package/dist/shared/run-translation-offset.js +2 -2
- package/dist/shared/scripted-opening-handles.d.ts +18 -0
- package/dist/shared/scripted-opening-handles.d.ts.map +1 -0
- package/dist/shared/scripted-opening-handles.js +53 -0
- package/dist/shared/scripted-opening.d.ts +25 -0
- package/dist/shared/scripted-opening.d.ts.map +1 -0
- package/dist/shared/scripted-opening.js +72 -0
- package/dist/shared/slot-paint.d.ts +14 -2
- package/dist/shared/slot-paint.d.ts.map +1 -1
- package/dist/shared/slot-paint.js +29 -29
- package/dist/shared/surface-paint.d.ts.map +1 -1
- package/dist/shared/surface-paint.js +3 -6
- package/dist/shared/swap-preview-material.d.ts +13 -0
- package/dist/shared/swap-preview-material.d.ts.map +1 -0
- package/dist/shared/swap-preview-material.js +27 -0
- package/dist/shared/system-check-panel.js +1 -1
- package/dist/shared/system-checks.d.ts.map +1 -1
- package/dist/shared/system-checks.js +7 -5
- package/dist/shared/vertical-offset.d.ts +3 -3
- package/dist/shared/vertical-offset.d.ts.map +1 -1
- package/dist/shared/vertical-offset.js +3 -3
- package/dist/shared/wall-attach-target.d.ts +3 -10
- package/dist/shared/wall-attach-target.d.ts.map +1 -1
- package/dist/shared/wall-attach-target.js +3 -63
- package/dist/shared/wall-opening-ceiling.d.ts +5 -15
- package/dist/shared/wall-opening-ceiling.d.ts.map +1 -1
- package/dist/shared/wall-opening-ceiling.js +10 -18
- package/dist/shared/wall-run-move.d.ts +1 -1
- package/dist/shared/wall-run-move.d.ts.map +1 -1
- package/dist/shelf/definition.d.ts +1 -1
- package/dist/shelf/definition.d.ts.map +1 -1
- package/dist/shelf/definition.js +14 -12
- package/dist/shelf/dimensions.d.ts +1 -1
- package/dist/shelf/floorplan-affordances.js +1 -1
- package/dist/shelf/floorplan-move.js +1 -1
- package/dist/shelf/floorplan.d.ts +1 -1
- package/dist/shelf/floorplan.js +2 -2
- package/dist/shelf/geometry.d.ts +1 -1
- package/dist/shelf/geometry.d.ts.map +1 -1
- package/dist/shelf/geometry.js +2 -3
- package/dist/shelf/index.d.ts +3 -3
- package/dist/shelf/index.js +3 -3
- package/dist/shelf/paint.d.ts.map +1 -1
- package/dist/shelf/paint.js +4 -10
- package/dist/shelf/parametrics.d.ts +1 -1
- package/dist/shelf/preview.d.ts +1 -1
- package/dist/shelf/preview.d.ts.map +1 -1
- package/dist/shelf/preview.js +1 -1
- package/dist/shelf/tool.d.ts.map +1 -1
- package/dist/shelf/tool.js +3 -3
- package/dist/site/definition.d.ts +1 -1
- package/dist/site/definition.d.ts.map +1 -1
- package/dist/site/definition.js +5 -4
- package/dist/site/generic-foundation-geometry.d.ts +16 -0
- package/dist/site/generic-foundation-geometry.d.ts.map +1 -0
- package/dist/site/generic-foundation-geometry.js +75 -0
- package/dist/site/generic-foundation.d.ts +4 -0
- package/dist/site/generic-foundation.d.ts.map +1 -0
- package/dist/site/generic-foundation.js +91 -0
- package/dist/site/ground-hole.d.ts +92 -0
- package/dist/site/ground-hole.d.ts.map +1 -0
- package/dist/site/ground-hole.js +306 -0
- package/dist/site/ground-pit-geometry.d.ts +39 -0
- package/dist/site/ground-pit-geometry.d.ts.map +1 -0
- package/dist/site/ground-pit-geometry.js +213 -0
- package/dist/site/ground-pit.d.ts +45 -0
- package/dist/site/ground-pit.d.ts.map +1 -0
- package/dist/site/ground-pit.js +175 -0
- package/dist/site/ground-veil.d.ts +39 -0
- package/dist/site/ground-veil.d.ts.map +1 -0
- package/dist/site/ground-veil.js +86 -0
- package/dist/site/ground-window-system.d.ts +9 -0
- package/dist/site/ground-window-system.d.ts.map +1 -0
- package/dist/site/ground-window-system.js +108 -0
- package/dist/site/hole-noise.d.ts +11 -0
- package/dist/site/hole-noise.d.ts.map +1 -0
- package/dist/site/hole-noise.js +79 -0
- package/dist/site/index.d.ts +1 -1
- package/dist/site/index.js +1 -1
- package/dist/site/line-ribbon.d.ts +31 -0
- package/dist/site/line-ribbon.d.ts.map +1 -0
- package/dist/site/line-ribbon.js +117 -0
- package/dist/site/lot-mask.d.ts +20 -0
- package/dist/site/lot-mask.d.ts.map +1 -0
- package/dist/site/lot-mask.js +39 -0
- package/dist/site/panel.d.ts +10 -0
- package/dist/site/panel.d.ts.map +1 -0
- package/dist/site/panel.js +179 -0
- package/dist/site/parametrics.d.ts +7 -0
- package/dist/site/parametrics.d.ts.map +1 -1
- package/dist/site/parametrics.js +8 -0
- package/dist/site/recessed-slab-ground-holes.d.ts.map +1 -1
- package/dist/site/recessed-slab-ground-holes.js +5 -2
- package/dist/site/renderer.d.ts.map +1 -1
- package/dist/site/renderer.js +275 -40
- package/dist/site/terrain-geometry.d.ts +28 -1
- package/dist/site/terrain-geometry.d.ts.map +1 -1
- package/dist/site/terrain-geometry.js +78 -4
- package/dist/site/terrain-holes.d.ts +15 -0
- package/dist/site/terrain-holes.d.ts.map +1 -0
- package/dist/site/terrain-holes.js +74 -0
- package/dist/site/terrain-mesh.d.ts +10 -3
- package/dist/site/terrain-mesh.d.ts.map +1 -1
- package/dist/site/terrain-mesh.js +36 -9
- package/dist/site/terrain-renderer.d.ts +11 -2
- package/dist/site/terrain-renderer.d.ts.map +1 -1
- package/dist/site/terrain-renderer.js +23 -6
- package/dist/site/underground-edge.d.ts +26 -0
- package/dist/site/underground-edge.d.ts.map +1 -0
- package/dist/site/underground-edge.js +46 -0
- package/dist/skylight/definition.d.ts +1 -1
- package/dist/skylight/definition.d.ts.map +1 -1
- package/dist/skylight/definition.js +11 -10
- package/dist/skylight/geometry.d.ts +1 -1
- package/dist/skylight/geometry.js +1 -1
- package/dist/skylight/index.d.ts +4 -4
- package/dist/skylight/index.js +4 -4
- package/dist/skylight/move-tool.js +4 -4
- package/dist/skylight/panel.js +3 -3
- package/dist/skylight/parametrics.d.ts +1 -1
- package/dist/skylight/parametrics.js +1 -1
- package/dist/skylight/preview.d.ts +1 -1
- package/dist/skylight/preview.d.ts.map +1 -1
- package/dist/skylight/preview.js +2 -2
- package/dist/skylight/renderer.d.ts.map +1 -1
- package/dist/skylight/renderer.js +5 -5
- package/dist/skylight/system.d.ts.map +1 -1
- package/dist/skylight/tool.d.ts.map +1 -1
- package/dist/skylight/tool.js +7 -7
- package/dist/slab/boundary-editor.d.ts +1 -1
- package/dist/slab/boundary-editor.d.ts.map +1 -1
- package/dist/slab/boundary-editor.js +13 -13
- package/dist/slab/definition.d.ts +1 -1
- package/dist/slab/definition.d.ts.map +1 -1
- package/dist/slab/definition.js +44 -19
- package/dist/slab/dependency-tracker.d.ts.map +1 -1
- package/dist/slab/dependency-tracker.js +67 -7
- package/dist/slab/elevation-limit.d.ts.map +1 -1
- package/dist/slab/elevation-limit.js +2 -2
- package/dist/slab/floorplan-affordances.d.ts +232 -60
- package/dist/slab/floorplan-affordances.d.ts.map +1 -1
- package/dist/slab/floorplan-affordances.js +1 -2
- package/dist/slab/floorplan-move.d.ts.map +1 -1
- package/dist/slab/floorplan-move.js +4 -5
- package/dist/slab/floorplan.d.ts +7 -0
- package/dist/slab/floorplan.d.ts.map +1 -1
- package/dist/slab/floorplan.js +22 -5
- package/dist/slab/geometry.d.ts.map +1 -1
- package/dist/slab/geometry.js +187 -77
- package/dist/slab/hole-editor.d.ts.map +1 -1
- package/dist/slab/index.d.ts +2 -2
- package/dist/slab/index.js +2 -2
- package/dist/slab/move-tool.d.ts.map +1 -1
- package/dist/slab/move-tool.js +7 -6
- package/dist/slab/paint.d.ts +18 -5
- package/dist/slab/paint.d.ts.map +1 -1
- package/dist/slab/paint.js +461 -9
- package/dist/slab/panel.d.ts.map +1 -1
- package/dist/slab/panel.js +32 -13
- package/dist/slab/parametrics.d.ts +1 -1
- package/dist/slab/parametrics.js +1 -1
- package/dist/slab/placement-ownership.d.ts +2 -1
- package/dist/slab/placement-ownership.d.ts.map +1 -1
- package/dist/slab/placement-ownership.js +2 -2
- package/dist/slab/quick-measurement.js +1 -1
- package/dist/slab/surface-split.d.ts +24 -0
- package/dist/slab/surface-split.d.ts.map +1 -0
- package/dist/slab/surface-split.js +389 -0
- package/dist/slab/system.d.ts.map +1 -1
- package/dist/slab/system.js +1 -1
- package/dist/slab/tool.d.ts.map +1 -1
- package/dist/slab/tool.js +7 -5
- package/dist/solar-panel/definition.d.ts +1 -1
- package/dist/solar-panel/definition.d.ts.map +1 -1
- package/dist/solar-panel/definition.js +8 -7
- package/dist/solar-panel/index.d.ts +4 -4
- package/dist/solar-panel/index.js +4 -4
- package/dist/solar-panel/move-tool.js +3 -3
- package/dist/solar-panel/panel.d.ts.map +1 -1
- package/dist/solar-panel/panel.js +4 -4
- package/dist/solar-panel/parametrics.d.ts +1 -1
- package/dist/solar-panel/parametrics.js +1 -1
- package/dist/solar-panel/preview.d.ts +1 -1
- package/dist/solar-panel/preview.d.ts.map +1 -1
- package/dist/solar-panel/preview.js +2 -2
- package/dist/solar-panel/renderer.d.ts.map +1 -1
- package/dist/solar-panel/renderer.js +3 -3
- package/dist/solar-panel/tool.d.ts.map +1 -1
- package/dist/solar-panel/tool.js +7 -7
- package/dist/spawn/definition.d.ts +1 -1
- package/dist/spawn/definition.js +7 -7
- package/dist/spawn/floorplan-affordances.js +1 -1
- package/dist/spawn/floorplan.d.ts +1 -1
- package/dist/spawn/index.d.ts +2 -2
- package/dist/spawn/index.js +2 -2
- package/dist/spawn/panel.js +1 -1
- package/dist/spawn/parametrics.d.ts +1 -1
- package/dist/spawn/parametrics.js +1 -1
- package/dist/spawn/renderer.d.ts.map +1 -1
- package/dist/spawn/renderer.js +1 -1
- package/dist/spawn/tool.d.ts.map +1 -1
- package/dist/spawn/tool.js +2 -2
- package/dist/stair/baluster-geometry.d.ts +21 -0
- package/dist/stair/baluster-geometry.d.ts.map +1 -0
- package/dist/stair/baluster-geometry.js +74 -0
- package/dist/stair/baluster-guard.d.ts +50 -0
- package/dist/stair/baluster-guard.d.ts.map +1 -0
- package/dist/stair/baluster-guard.js +71 -0
- package/dist/stair/boards-guard.d.ts +37 -0
- package/dist/stair/boards-guard.d.ts.map +1 -0
- package/dist/stair/boards-guard.js +61 -0
- package/dist/stair/cable-guard.d.ts +39 -0
- package/dist/stair/cable-guard.d.ts.map +1 -0
- package/dist/stair/cable-guard.js +105 -0
- package/dist/stair/construction-controls.d.ts +15 -0
- package/dist/stair/construction-controls.d.ts.map +1 -0
- package/dist/stair/construction-controls.js +29 -0
- package/dist/stair/continuous-railings.d.ts +10 -0
- package/dist/stair/continuous-railings.d.ts.map +1 -0
- package/dist/stair/continuous-railings.js +159 -0
- package/dist/stair/definition.d.ts +1 -1
- package/dist/stair/definition.d.ts.map +1 -1
- package/dist/stair/definition.js +39 -46
- package/dist/stair/documentation.d.ts +1 -1
- package/dist/stair/documentation.d.ts.map +1 -1
- package/dist/stair/documentation.js +11 -18
- package/dist/stair/floorplan-affordances.d.ts.map +1 -1
- package/dist/stair/floorplan-affordances.js +10 -26
- package/dist/stair/floorplan-move.d.ts.map +1 -1
- package/dist/stair/floorplan-move.js +90 -10
- package/dist/stair/floorplan.d.ts +2 -24
- package/dist/stair/floorplan.d.ts.map +1 -1
- package/dist/stair/floorplan.js +123 -88
- package/dist/stair/glass-guard.d.ts +72 -0
- package/dist/stair/glass-guard.d.ts.map +1 -0
- package/dist/stair/glass-guard.js +167 -0
- package/dist/stair/guard-path.d.ts +119 -0
- package/dist/stair/guard-path.d.ts.map +1 -0
- package/dist/stair/guard-path.js +208 -0
- package/dist/stair/index.d.ts +1 -1
- package/dist/stair/index.js +1 -1
- package/dist/stair/materials.d.ts +11 -0
- package/dist/stair/materials.d.ts.map +1 -0
- package/dist/stair/materials.js +51 -0
- package/dist/stair/metal-guard.d.ts +38 -0
- package/dist/stair/metal-guard.d.ts.map +1 -0
- package/dist/stair/metal-guard.js +79 -0
- package/dist/stair/paint.d.ts +32 -0
- package/dist/stair/paint.d.ts.map +1 -1
- package/dist/stair/paint.js +75 -36
- package/dist/stair/panel.d.ts.map +1 -1
- package/dist/stair/panel.js +170 -19
- package/dist/stair/parametrics.d.ts +1 -1
- package/dist/stair/parametrics.d.ts.map +1 -1
- package/dist/stair/parametrics.js +33 -16
- package/dist/stair/plan-entry.d.ts +31 -0
- package/dist/stair/plan-entry.d.ts.map +1 -0
- package/dist/stair/plan-entry.js +325 -0
- package/dist/stair/post-and-rail-guard.d.ts +31 -0
- package/dist/stair/post-and-rail-guard.d.ts.map +1 -0
- package/dist/stair/post-and-rail-guard.js +63 -0
- package/dist/stair/railing-controls.d.ts +9 -0
- package/dist/stair/railing-controls.d.ts.map +1 -0
- package/dist/stair/railing-controls.js +49 -0
- package/dist/stair/renderer.d.ts.map +1 -1
- package/dist/stair/renderer.js +355 -262
- package/dist/stair/stair-click-guard.d.ts +43 -0
- package/dist/stair/stair-click-guard.d.ts.map +1 -0
- package/dist/stair/stair-click-guard.js +44 -0
- package/dist/stair/stair-type.d.ts.map +1 -1
- package/dist/stair/stair-type.js +1 -2
- package/dist/stair/surface-move-preview.d.ts +4 -0
- package/dist/stair/surface-move-preview.d.ts.map +1 -0
- package/dist/stair/surface-move-preview.js +53 -0
- package/dist/stair/surface-transition.d.ts +9 -0
- package/dist/stair/surface-transition.d.ts.map +1 -0
- package/dist/stair/surface-transition.js +61 -0
- package/dist/stair/system.d.ts.map +1 -1
- package/dist/stair/tool.d.ts +2 -0
- package/dist/stair/tool.d.ts.map +1 -0
- package/dist/stair/tool.js +580 -0
- package/dist/stair/use-stair-render-data.d.ts +319 -0
- package/dist/stair/use-stair-render-data.d.ts.map +1 -0
- package/dist/stair/use-stair-render-data.js +73 -0
- package/dist/stair-segment/definition.d.ts +1 -1
- package/dist/stair-segment/definition.d.ts.map +1 -1
- package/dist/stair-segment/definition.js +52 -14
- package/dist/stair-segment/index.d.ts +1 -1
- package/dist/stair-segment/index.js +1 -1
- package/dist/stair-segment/panel.d.ts.map +1 -1
- package/dist/stair-segment/panel.js +38 -44
- package/dist/stair-segment/parametrics.d.ts +1 -1
- package/dist/stair-segment/parametrics.d.ts.map +1 -1
- package/dist/stair-segment/parametrics.js +22 -9
- package/dist/stair-segment/renderer.d.ts.map +1 -1
- package/dist/stair-segment/renderer.js +17 -29
- package/dist/structural-grid/definition.d.ts +1 -1
- package/dist/structural-grid/definition.js +3 -3
- package/dist/structural-grid/floorplan-tool.d.ts.map +1 -1
- package/dist/structural-grid/index.d.ts +1 -1
- package/dist/structural-grid/index.js +1 -1
- package/dist/turbine-vent/definition.d.ts +1 -1
- package/dist/turbine-vent/definition.d.ts.map +1 -1
- package/dist/turbine-vent/definition.js +11 -13
- package/dist/turbine-vent/geometry.js +1 -1
- package/dist/turbine-vent/index.d.ts +3 -3
- package/dist/turbine-vent/index.js +3 -3
- package/dist/turbine-vent/move-tool.js +4 -4
- package/dist/turbine-vent/paint.d.ts.map +1 -1
- package/dist/turbine-vent/paint.js +3 -6
- package/dist/turbine-vent/panel.d.ts.map +1 -1
- package/dist/turbine-vent/panel.js +6 -24
- package/dist/turbine-vent/parametrics.d.ts +1 -1
- package/dist/turbine-vent/parametrics.js +1 -1
- package/dist/turbine-vent/preview.d.ts +1 -1
- package/dist/turbine-vent/preview.d.ts.map +1 -1
- package/dist/turbine-vent/preview.js +2 -2
- package/dist/turbine-vent/renderer.d.ts.map +1 -1
- package/dist/turbine-vent/renderer.js +3 -3
- package/dist/turbine-vent/tool.d.ts.map +1 -1
- package/dist/turbine-vent/tool.js +7 -7
- package/dist/unit/definition.d.ts +1 -1
- package/dist/unit/definition.js +2 -2
- package/dist/unit/index.d.ts +1 -1
- package/dist/unit/index.js +1 -1
- package/dist/unit/parametrics.js +1 -1
- package/dist/unit/unit-panel.d.ts.map +1 -1
- package/dist/unit/unit-panel.js +7 -2
- package/dist/wall/actions.d.ts.map +1 -1
- package/dist/wall/actions.js +9 -4
- package/dist/wall/construction-dimensions.d.ts +3 -3
- package/dist/wall/construction-dimensions.js +14 -11
- package/dist/wall/contextual-dimensions.js +4 -4
- package/dist/wall/curtain-opening-frame.d.ts.map +1 -1
- package/dist/wall/curtain-wall-adapter.js +2 -2
- package/dist/wall/curtain-wall-floorplan.js +2 -2
- package/dist/wall/curtain-wall-geometry.d.ts.map +1 -1
- package/dist/wall/curtain-wall-geometry.js +4 -4
- package/dist/wall/curtain-wall-layout.d.ts +1 -2
- package/dist/wall/curtain-wall-layout.d.ts.map +1 -1
- package/dist/wall/curtain-wall-layout.js +1 -23
- package/dist/wall/curtain-wall-materials.d.ts +1 -1
- package/dist/wall/curtain-wall-materials.d.ts.map +1 -1
- package/dist/wall/curtain-wall-materials.js +4 -3
- package/dist/wall/curtain-wall-panel.d.ts.map +1 -1
- package/dist/wall/curtain-wall-panel.js +4 -4
- package/dist/wall/curtain-wall-piece-geometry.d.ts +1 -1
- package/dist/wall/curve-tool.d.ts.map +1 -1
- package/dist/wall/curve-tool.js +4 -0
- package/dist/wall/definition.d.ts +1 -1
- package/dist/wall/definition.d.ts.map +1 -1
- package/dist/wall/definition.js +71 -42
- package/dist/wall/exterior.d.ts +6 -0
- package/dist/wall/exterior.d.ts.map +1 -0
- package/dist/wall/exterior.js +13 -0
- package/dist/wall/floorplan-move.d.ts +1 -1
- package/dist/wall/floorplan-move.d.ts.map +1 -1
- package/dist/wall/floorplan-move.js +21 -84
- package/dist/wall/floorplan-tool.d.ts.map +1 -1
- package/dist/wall/floorplan-tool.js +11 -12
- package/dist/wall/floorplan.d.ts +5 -3
- package/dist/wall/floorplan.d.ts.map +1 -1
- package/dist/wall/floorplan.js +188 -25
- package/dist/wall/index.d.ts +2 -2
- package/dist/wall/index.js +2 -2
- package/dist/wall/measurement.d.ts.map +1 -1
- package/dist/wall/measurement.js +6 -6
- package/dist/wall/move-endpoint-tool.d.ts.map +1 -1
- package/dist/wall/move-endpoint-tool.js +25 -13
- package/dist/wall/move-shared.d.ts.map +1 -1
- package/dist/wall/move-shared.js +12 -8
- package/dist/wall/move-tool.d.ts.map +1 -1
- package/dist/wall/move-tool.js +120 -151
- package/dist/wall/paint.d.ts +26 -15
- package/dist/wall/paint.d.ts.map +1 -1
- package/dist/wall/paint.js +303 -119
- package/dist/wall/panel-model.d.ts +18 -0
- package/dist/wall/panel-model.d.ts.map +1 -1
- package/dist/wall/panel-model.js +82 -24
- package/dist/wall/panel.d.ts.map +1 -1
- package/dist/wall/panel.js +262 -53
- package/dist/wall/parametrics.d.ts +1 -1
- package/dist/wall/parametrics.d.ts.map +1 -1
- package/dist/wall/parametrics.js +4 -1
- package/dist/wall/pointer-transparency.d.ts +1 -1
- package/dist/wall/pointer-transparency.d.ts.map +1 -1
- package/dist/wall/preview.d.ts.map +1 -1
- package/dist/wall/property-preview.d.ts.map +1 -1
- package/dist/wall/quick-measurement.js +1 -1
- package/dist/wall/rectangle-command.d.ts +329 -37
- package/dist/wall/rectangle-command.d.ts.map +1 -1
- package/dist/wall/rectangle-tool.d.ts.map +1 -1
- package/dist/wall/rectangle-tool.js +27 -9
- package/dist/wall/renderer.d.ts.map +1 -1
- package/dist/wall/renderer.js +31 -10
- package/dist/wall/selection-hit-owner.d.ts.map +1 -1
- package/dist/wall/split-floorplan-layer.d.ts.map +1 -1
- package/dist/wall/split-floorplan-layer.js +10 -10
- package/dist/wall/split-pointer.js +2 -2
- package/dist/wall/split-preview.d.ts +1 -1
- package/dist/wall/split-session.d.ts.map +1 -1
- package/dist/wall/split-session.js +9 -3
- package/dist/wall/split-store.d.ts +1 -1
- package/dist/wall/split-tool.js +3 -3
- package/dist/wall/system.d.ts.map +1 -1
- package/dist/wall/system.js +42 -10
- package/dist/wall/tool.d.ts.map +1 -1
- package/dist/wall/tool.js +114 -53
- package/dist/wall/treatment-level-data.d.ts +3 -2
- package/dist/wall/treatment-level-data.d.ts.map +1 -1
- package/dist/wall/treatment-level-data.js +17 -13
- package/dist/wall/treatments.d.ts +11 -11
- package/dist/wall/treatments.d.ts.map +1 -1
- package/dist/wall/treatments.js +77 -57
- package/dist/wall/wall-batch-system.d.ts +7 -0
- package/dist/wall/wall-batch-system.d.ts.map +1 -1
- package/dist/wall/wall-batch-system.js +81 -7
- package/dist/wall/wall-batch.d.ts +6 -0
- package/dist/wall/wall-batch.d.ts.map +1 -1
- package/dist/wall/wall-batch.js +7 -1
- package/dist/window/contextual-dimensions.js +1 -1
- package/dist/window/corner-cue.d.ts +9 -0
- package/dist/window/corner-cue.d.ts.map +1 -0
- package/dist/window/corner-cue.js +31 -0
- package/dist/window/corner-fuse.d.ts +14 -0
- package/dist/window/corner-fuse.d.ts.map +1 -0
- package/dist/window/corner-fuse.js +42 -0
- package/dist/window/definition.d.ts +1 -1
- package/dist/window/definition.d.ts.map +1 -1
- package/dist/window/definition.js +39 -26
- package/dist/window/floor-projection.js +1 -1
- package/dist/window/floorplan-affordances.js +2 -2
- package/dist/window/floorplan-move.d.ts.map +1 -1
- package/dist/window/floorplan-move.js +49 -13
- package/dist/window/floorplan.d.ts.map +1 -1
- package/dist/window/floorplan.js +214 -87
- package/dist/window/index.d.ts +2 -2
- package/dist/window/index.js +2 -2
- package/dist/window/mechanism.d.ts +4 -0
- package/dist/window/mechanism.d.ts.map +1 -0
- package/dist/window/mechanism.js +20 -0
- package/dist/window/move-tool.d.ts.map +1 -1
- package/dist/window/move-tool.js +165 -69
- package/dist/window/paint.d.ts.map +1 -1
- package/dist/window/paint.js +4 -1
- package/dist/window/panel.d.ts.map +1 -1
- package/dist/window/panel.js +134 -100
- package/dist/window/parametrics.d.ts +1 -1
- package/dist/window/parametrics.d.ts.map +1 -1
- package/dist/window/parametrics.js +7 -1
- package/dist/window/placement.d.ts +29 -0
- package/dist/window/placement.d.ts.map +1 -0
- package/dist/window/placement.js +92 -0
- package/dist/window/preview.d.ts +1 -1
- package/dist/window/preview.d.ts.map +1 -1
- package/dist/window/preview.js +3 -1
- package/dist/window/renderer.d.ts.map +1 -1
- package/dist/window/renderer.js +4 -3
- package/dist/window/system.d.ts.map +1 -1
- package/dist/window/system.js +1 -1
- package/dist/window/tool.d.ts.map +1 -1
- package/dist/window/tool.js +207 -50
- package/dist/window/window-math.d.ts +7 -15
- package/dist/window/window-math.d.ts.map +1 -1
- package/dist/window/window-math.js +15 -21
- package/dist/zone/contextual-dimensions.d.ts.map +1 -1
- package/dist/zone/contextual-dimensions.js +6 -28
- package/dist/zone/definition.d.ts +1 -1
- package/dist/zone/definition.d.ts.map +1 -1
- package/dist/zone/definition.js +17 -15
- package/dist/zone/floorplan-affordances.d.ts +613 -37
- package/dist/zone/floorplan-affordances.d.ts.map +1 -1
- package/dist/zone/floorplan-affordances.js +1 -1
- package/dist/zone/floorplan-move.js +1 -1
- package/dist/zone/floorplan.d.ts +1 -1
- package/dist/zone/floorplan.d.ts.map +1 -1
- package/dist/zone/floorplan.js +96 -56
- package/dist/zone/index.d.ts +1 -1
- package/dist/zone/index.js +1 -1
- package/dist/zone/parametrics.js +1 -1
- package/dist/zone/quantities-panel.d.ts.map +1 -1
- package/dist/zone/quantities-panel.js +6 -17
- package/dist/zone/quick-measurement.d.ts +2 -2
- package/dist/zone/quick-measurement.d.ts.map +1 -1
- package/dist/zone/quick-measurement.js +7 -6
- package/dist/zone/renderer.d.ts +1 -1
- package/dist/zone/renderer.d.ts.map +1 -1
- package/dist/zone/renderer.js +67 -147
- package/dist/zone/room-clear-dimensions.js +4 -4
- package/dist/zone/room-documentation.d.ts +1 -1
- package/dist/zone/room-documentation.d.ts.map +1 -1
- package/dist/zone/room-documentation.js +3 -7
- package/dist/zone/system.d.ts.map +1 -1
- package/package.json +28 -15
- package/dist/block/slots.d.ts +0 -4
- package/dist/block/slots.d.ts.map +0 -1
- package/dist/block/slots.js +0 -17
- package/dist/cabinet/slots.d.ts +0 -4
- package/dist/cabinet/slots.d.ts.map +0 -1
- package/dist/cabinet/slots.js +0 -24
- package/dist/ceiling/slots.d.ts +0 -6
- package/dist/ceiling/slots.d.ts.map +0 -1
- package/dist/ceiling/slots.js +0 -7
- package/dist/column/slots.d.ts +0 -9
- package/dist/column/slots.d.ts.map +0 -1
- package/dist/column/slots.js +0 -19
- package/dist/door/slots.d.ts +0 -9
- package/dist/door/slots.d.ts.map +0 -1
- package/dist/door/slots.js +0 -20
- package/dist/elevator/slots.d.ts +0 -8
- package/dist/elevator/slots.d.ts.map +0 -1
- package/dist/elevator/slots.js +0 -17
- package/dist/fence/slots.d.ts +0 -10
- package/dist/fence/slots.d.ts.map +0 -1
- package/dist/fence/slots.js +0 -23
- package/dist/item/__fixtures__/main-floorplan.d.ts +0 -26
- package/dist/item/__fixtures__/main-floorplan.d.ts.map +0 -1
- package/dist/item/__fixtures__/main-floorplan.js +0 -297
- package/dist/lean-to-extension/slots.d.ts +0 -5
- package/dist/lean-to-extension/slots.d.ts.map +0 -1
- package/dist/lean-to-extension/slots.js +0 -15
- package/dist/shared/connection-compatibility.d.ts +0 -8
- package/dist/shared/connection-compatibility.d.ts.map +0 -1
- package/dist/shared/connection-compatibility.js +0 -28
- package/dist/shared/distribution-run-contract.d.ts +0 -49
- package/dist/shared/distribution-run-contract.d.ts.map +0 -1
- package/dist/shared/distribution-run-contract.js +0 -30
- package/dist/shared/distribution-run-tool.d.ts +0 -117
- package/dist/shared/distribution-run-tool.d.ts.map +0 -1
- package/dist/shared/distribution-run-tool.js +0 -986
- package/dist/shared/draw-alignment.d.ts +0 -25
- package/dist/shared/draw-alignment.d.ts.map +0 -1
- package/dist/shared/draw-alignment.js +0 -30
- package/dist/shared/ports.d.ts +0 -92
- package/dist/shared/ports.d.ts.map +0 -1
- package/dist/shared/ports.js +0 -305
- package/dist/shared/run-cursor.d.ts +0 -22
- package/dist/shared/run-cursor.d.ts.map +0 -1
- package/dist/shared/run-cursor.js +0 -19
- package/dist/shared/run-direction-feedback.d.ts +0 -20
- package/dist/shared/run-direction-feedback.d.ts.map +0 -1
- package/dist/shared/run-direction-feedback.js +0 -139
- package/dist/shared/run-port-snap.d.ts +0 -11
- package/dist/shared/run-port-snap.d.ts.map +0 -1
- package/dist/shared/run-port-snap.js +0 -19
- package/dist/shared/run-screen-direction.d.ts +0 -5
- package/dist/shared/run-screen-direction.d.ts.map +0 -1
- package/dist/shared/run-screen-direction.js +0 -24
- package/dist/shelf/slots.d.ts +0 -9
- package/dist/shelf/slots.d.ts.map +0 -1
- package/dist/shelf/slots.js +0 -30
- package/dist/slab/slots.d.ts +0 -10
- package/dist/slab/slots.d.ts.map +0 -1
- package/dist/slab/slots.js +0 -20
- package/dist/stair/floor-stack.d.ts +0 -10
- package/dist/stair/floor-stack.d.ts.map +0 -1
- package/dist/stair/floor-stack.js +0 -115
- package/dist/stair/slots.d.ts +0 -7
- package/dist/stair/slots.d.ts.map +0 -1
- package/dist/stair/slots.js +0 -13
- package/dist/wall/drawing-mode.d.ts +0 -12
- package/dist/wall/drawing-mode.d.ts.map +0 -1
- package/dist/wall/drawing-mode.js +0 -38
- package/dist/wall/slots.d.ts +0 -10
- package/dist/wall/slots.d.ts.map +0 -1
- package/dist/wall/slots.js +0 -92
- package/dist/window/slots.d.ts +0 -5
- package/dist/window/slots.d.ts.map +0 -1
- package/dist/window/slots.js +0 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selection-hit-owner.d.ts","sourceRoot":"","sources":["../../src/wall/selection-hit-owner.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,YAAY,GAAG,YAAY,GAAG,SAAS,CAAA;AA2BvF,8EAA8E;AAC9E,MAAM,MAAM,YAAY,GAAG;IACzB,0EAA0E;IAC1E,gBAAgB,EAAE,MAAM,MAAM,CAAA;IAC9B,oDAAoD;IACpD,iBAAiB,EAAE,MAAM,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACnD,2EAA2E;IAC3E,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAA;IAC1C,2DAA2D;IAC3D,wBAAwB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAA;CACpD,CAAA;AAWD,KAAK,UAAU,GAAG;IAAE,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;CAAE,CAAA;AA8BhD;;;GAGG;AACH,eAAO,MAAM,0BAA0B,
|
|
1
|
+
{"version":3,"file":"selection-hit-owner.d.ts","sourceRoot":"","sources":["../../src/wall/selection-hit-owner.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,YAAY,GAAG,YAAY,GAAG,SAAS,CAAA;AA2BvF,8EAA8E;AAC9E,MAAM,MAAM,YAAY,GAAG;IACzB,0EAA0E;IAC1E,gBAAgB,EAAE,MAAM,MAAM,CAAA;IAC9B,oDAAoD;IACpD,iBAAiB,EAAE,MAAM,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACnD,2EAA2E;IAC3E,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAA;IAC1C,2DAA2D;IAC3D,wBAAwB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAA;CACpD,CAAA;AAWD,KAAK,UAAU,GAAG;IAAE,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;CAAE,CAAA;AA8BhD;;;GAGG;AACH,eAAO,MAAM,0BAA0B,eACzB,MAAM,SACZ,YAAY,KACjB,CAAC,CAAC,MAAM,EAAE,UAAU,KAAK,mBAAmB,CAW9C,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"split-floorplan-layer.d.ts","sourceRoot":"","sources":["../../src/wall/split-floorplan-layer.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"split-floorplan-layer.d.ts","sourceRoot":"","sources":["../../src/wall/split-floorplan-layer.tsx"],"names":[],"mappings":"AASA,OAAO,EAGL,KAAK,oBAAoB,EAG1B,MAAM,oBAAoB,CAAA;AAO3B,iGAAiG;AACjG,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAAC,MAAM,EAAE,oBAAoB,sCAgG3E"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { getWallCurveFrameAt, getWallCurveLength,
|
|
4
|
-
import { clientToPlan,
|
|
3
|
+
import { getWallCurveFrameAt, getWallCurveLength, getWallFaceOffsets, useScene, } from '@pascal-app/core';
|
|
4
|
+
import { clientToPlan, FloorplanDraftMeasurement, formatLinearMeasurement, useFloorplanRender, } from '@pascal-app/editor';
|
|
5
5
|
import { getSceneTheme, useViewer } from '@pascal-app/viewer';
|
|
6
6
|
import { useEffect } from 'react';
|
|
7
|
-
import { bindWallSplitPointer } from './split-pointer';
|
|
8
|
-
import { wallSplitDistance, wallSplitMarkerColor, wallSplitSegmentLabels } from './split-preview';
|
|
9
|
-
import { useWallSplit } from './split-store';
|
|
7
|
+
import { bindWallSplitPointer } from './split-pointer.js';
|
|
8
|
+
import { wallSplitDistance, wallSplitMarkerColor, wallSplitSegmentLabels } from './split-preview.js';
|
|
9
|
+
import { useWallSplit } from './split-store.js';
|
|
10
10
|
/** The plan side of the wall's `split` reshape (`reshapeLayers.split`): the same draft as 3D. */
|
|
11
11
|
export default function WallSplitFloorplanLayer(_props) {
|
|
12
12
|
const draft = useWallSplit((s) => s.draft);
|
|
@@ -26,7 +26,7 @@ export default function WallSplitFloorplanLayer(_props) {
|
|
|
26
26
|
if (!surface)
|
|
27
27
|
return;
|
|
28
28
|
return bindWallSplitPointer(surface, (event) => {
|
|
29
|
-
if (!(event.target instanceof Node
|
|
29
|
+
if (!(event.target instanceof Node && surface.contains(event.target)))
|
|
30
30
|
return null;
|
|
31
31
|
const point = clientToPlan(event.clientX, event.clientY);
|
|
32
32
|
const current = useScene.getState().nodes[wallId];
|
|
@@ -46,15 +46,15 @@ export default function WallSplitFloorplanLayer(_props) {
|
|
|
46
46
|
const half = hitHalfWidth(wall, upp);
|
|
47
47
|
const color = wallSplitMarkerColor(preview.valid);
|
|
48
48
|
const cut = preview.frames[0]?.point;
|
|
49
|
-
return (_jsxs("g", {
|
|
49
|
+
return (_jsxs("g", { "data-testid": "pascal-split-marker-2d", pointerEvents: "none", children: [snap?.kind === 'alignment' && cut && (_jsx("line", { stroke: "#818cf8", strokeDasharray: `${4 * upp} ${3 * upp}`, strokeOpacity: 0.8, strokeWidth: upp, x1: snap.anchor[0], x2: cut.x, y1: snap.anchor[1], y2: cut.y })), preview.frames.map(({ point, normal }, index) => {
|
|
50
50
|
const line = {
|
|
51
51
|
x1: point.x - normal.x * half,
|
|
52
52
|
y1: point.y - normal.y * half,
|
|
53
53
|
x2: point.x + normal.x * half,
|
|
54
54
|
y2: point.y + normal.y * half,
|
|
55
55
|
};
|
|
56
|
-
return (_jsxs("g", { children: [_jsx("line", { ...line, stroke: "#f7f3ed", strokeWidth: 7 * upp
|
|
57
|
-
}), !preview.valid && cut ? (_jsx("text", { fill: color, fontSize: 12 * upp, paintOrder: "stroke", stroke: isDark ? '#0f172a' : '#ffffff', strokeWidth: 3 * upp, textAnchor: "middle", x: cut.x, y: cut.y - half - 6 * upp, children: preview.message })) : (wallSplitSegmentLabels(wall, preview).map((segment, index) => (_jsx(
|
|
56
|
+
return (_jsxs("g", { children: [_jsx("line", { ...line, stroke: "#f7f3ed", strokeLinecap: "round", strokeWidth: 7 * upp }), _jsx("line", { ...line, stroke: color, strokeLinecap: "round", strokeWidth: 3 * upp })] }, index));
|
|
57
|
+
}), !preview.valid && cut ? (_jsx("text", { fill: color, fontSize: 12 * upp, paintOrder: "stroke", stroke: isDark ? '#0f172a' : '#ffffff', strokeWidth: 3 * upp, textAnchor: "middle", x: cut.x, y: cut.y - half - 6 * upp, children: preview.message })) : (wallSplitSegmentLabels(wall, preview).map((segment, index) => (_jsx(FloorplanDraftMeasurement, { labelBackground: isDark ? '#0f172a' : '#ffffff', labelText: isDark ? '#e2e8f0' : '#171717', measurement: {
|
|
58
58
|
lengthLabel: `${formatLinearMeasurement(segment.length, unit, metricNotation)}${segment.count > 1 ? ` × ${segment.count}` : ''}`,
|
|
59
59
|
midpoint: segment.midpoint,
|
|
60
60
|
direction: segment.direction,
|
|
@@ -63,7 +63,7 @@ export default function WallSplitFloorplanLayer(_props) {
|
|
|
63
63
|
}
|
|
64
64
|
/** The wall's stroke plus a finger's width, so the cut can be grabbed at any zoom. */
|
|
65
65
|
function hitHalfWidth(wall, upp) {
|
|
66
|
-
return
|
|
66
|
+
return Math.max(getWallFaceOffsets(wall).a, -getWallFaceOffsets(wall).b) + 8 * upp;
|
|
67
67
|
}
|
|
68
68
|
function frameAt(wall, distance) {
|
|
69
69
|
const length = getWallCurveLength(wall);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { commitWallSplit, hoverWallSplit, setWallSplitCuts } from './split-session';
|
|
2
|
-
import { useWallSplit } from './split-store';
|
|
1
|
+
import { commitWallSplit, hoverWallSplit, setWallSplitCuts } from './split-session.js';
|
|
2
|
+
import { useWallSplit } from './split-store.js';
|
|
3
3
|
// Pixels of continuous wheel travel per cut: a short trackpad swipe.
|
|
4
4
|
const WHEEL_STEP_PX = 60;
|
|
5
5
|
// A wheel event after this pause is a new notch or gesture and steps at once,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type AnyNode, type AnyNodeId, type WallNode, type WallPlanPoint } from '@pascal-app/core';
|
|
2
2
|
export declare const WALL_SPLIT_MAX_CUTS = 32;
|
|
3
3
|
/** Cut markers in both views: warm when the cuts can commit, red when they can't. */
|
|
4
|
-
export declare function wallSplitMarkerColor(valid: boolean): "#
|
|
4
|
+
export declare function wallSplitMarkerColor(valid: boolean): "#a63d2e" | "#c86f45";
|
|
5
5
|
/** The pointer projected onto the wall, as a distance from its start; curved walls included. */
|
|
6
6
|
export declare function wallSplitDistance(wall: WallNode, point: readonly [number, number]): number;
|
|
7
7
|
/** Like a loop cut: one cut follows the pointer, more cuts divide the wall evenly. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"split-session.d.ts","sourceRoot":"","sources":["../../src/wall/split-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,QAAQ,EACd,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"split-session.d.ts","sourceRoot":"","sources":["../../src/wall/split-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,QAAQ,EACd,MAAM,kBAAkB,CAAA;AA4CzB;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,QA8C3C;AAED,wBAAgB,cAAc,SAS7B;AAED,oEAAoE;AACpE,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,UAAQ,QAevD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,QAQ5C;AAED,kEAAkE;AAClE,wBAAgB,gBAAgB,SAM/B;AAED,wBAAgB,eAAe,SAc9B"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { getWallCurveLength, planWallDivisions, runAsSingleSceneHistoryStep, useScene, } from '@pascal-app/core';
|
|
2
|
-
import { isGridSnapActive, isMagneticSnapActive, triggerSFX, useEditor, useInteractionScope, } from '@pascal-app/editor';
|
|
3
|
-
import { snapWallSplitDistance, WALL_SPLIT_MAX_CUTS, wallSplitAnchors, wallSplitDistances, wallSplitPreview, } from './split-preview';
|
|
4
|
-
import { useWallSplit } from './split-store';
|
|
2
|
+
import { captureElementActionOrigin, completeElementAction, isGridSnapActive, isMagneticSnapActive, triggerSFX, useEditor, useInteractionScope, } from '@pascal-app/editor';
|
|
3
|
+
import { snapWallSplitDistance, WALL_SPLIT_MAX_CUTS, wallSplitAnchors, wallSplitDistances, wallSplitPreview, } from './split-preview.js';
|
|
4
|
+
import { useWallSplit } from './split-store.js';
|
|
5
5
|
// Pointer distance (m) within which a 'lines' alignment target catches the cut.
|
|
6
6
|
const ALIGNMENT_TOLERANCE = 0.2;
|
|
7
7
|
const ownsSplit = () => {
|
|
@@ -17,6 +17,8 @@ const withPreview = (draft, wall) => ({
|
|
|
17
17
|
preview: wallSplitPreview(useScene.getState().nodes, wall, wallSplitDistances(getWallCurveLength(wall), draft.cuts, draft.distance)),
|
|
18
18
|
});
|
|
19
19
|
let teardown = null;
|
|
20
|
+
// The room the wall was drilled from: a committed split lands back on it.
|
|
21
|
+
let origin = null;
|
|
20
22
|
/**
|
|
21
23
|
* A split session: the wall's `reshaping` scope (so the snapping chip and the
|
|
22
24
|
* kind's HUD hints resolve), one centred cut, and the watchers that end it —
|
|
@@ -27,6 +29,7 @@ export function openWallSplit(wall) {
|
|
|
27
29
|
if (useScene.getState().readOnly)
|
|
28
30
|
return;
|
|
29
31
|
closeWallSplit();
|
|
32
|
+
origin = captureElementActionOrigin([wall.id]);
|
|
30
33
|
useEditor.getState().setMode('select');
|
|
31
34
|
useInteractionScope
|
|
32
35
|
.getState()
|
|
@@ -72,6 +75,7 @@ export function openWallSplit(wall) {
|
|
|
72
75
|
export function closeWallSplit() {
|
|
73
76
|
const stop = teardown;
|
|
74
77
|
teardown = null;
|
|
78
|
+
origin = null;
|
|
75
79
|
stop?.();
|
|
76
80
|
useWallSplit.getState().setDraft(null);
|
|
77
81
|
useInteractionScope
|
|
@@ -132,7 +136,9 @@ export function commitWallSplit() {
|
|
|
132
136
|
if (!checked.preview.valid)
|
|
133
137
|
return useWallSplit.getState().setDraft(checked);
|
|
134
138
|
const plan = planWallDivisions(current.nodes, wall.id, checked.preview.distances);
|
|
139
|
+
const from = origin;
|
|
135
140
|
runAsSingleSceneHistoryStep(useScene, () => current.applyNodeChanges(plan.changes));
|
|
136
141
|
closeWallSplit();
|
|
137
142
|
triggerSFX('sfx:structure-build');
|
|
143
|
+
completeElementAction(from);
|
|
138
144
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { WallNode } from '@pascal-app/core';
|
|
2
|
-
import type { WallSplitPreview, WallSplitSnap } from './split-preview';
|
|
2
|
+
import type { WallSplitPreview, WallSplitSnap } from './split-preview.js';
|
|
3
3
|
export type WallSplitDraft = {
|
|
4
4
|
wallId: WallNode['id'];
|
|
5
5
|
cuts: number;
|
package/dist/wall/split-tool.js
CHANGED
|
@@ -6,9 +6,9 @@ import { BATCHED_LAYER, getSceneTheme, SCENE_LAYER, useViewer } from '@pascal-ap
|
|
|
6
6
|
import { useFrame, useThree } from '@react-three/fiber';
|
|
7
7
|
import { useEffect, useRef } from 'react';
|
|
8
8
|
import { Raycaster, Vector2 } from 'three';
|
|
9
|
-
import { bindWallSplitPointer } from './split-pointer';
|
|
10
|
-
import { wallSplitDistance, wallSplitMarkerColor, wallSplitSegmentLabels } from './split-preview';
|
|
11
|
-
import { useWallSplit } from './split-store';
|
|
9
|
+
import { bindWallSplitPointer } from './split-pointer.js';
|
|
10
|
+
import { wallSplitDistance, wallSplitMarkerColor, wallSplitSegmentLabels } from './split-preview.js';
|
|
11
|
+
import { useWallSplit } from './split-store.js';
|
|
12
12
|
/**
|
|
13
13
|
* The wall's `split` affordance (3D): cut markers, segment lengths and the
|
|
14
14
|
* pointer binding. The session (`split-session.ts`) owns the scope and draft;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system.d.ts","sourceRoot":"","sources":["../../src/wall/system.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"system.d.ts","sourceRoot":"","sources":["../../src/wall/system.tsx"],"names":[],"mappings":"AAuDA,wBAAgB,wBAAwB,IAAI,IAAI,CAO/C;AAED,wBAAgB,yBAAyB,IAAI,IAAI,CA0FhD;AASD;;;;;;;;;;;;;GAaG;AACH,QAAA,MAAM,WAAW,mCAShB,CAAA;eAEc,WAAW"}
|
package/dist/wall/system.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import {
|
|
3
|
-
import { useLiveNodeOverrides, useScene } from '@pascal-app/core';
|
|
2
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { spatialGridManager, useLiveNodeOverrides, useLiveTerrain, useScene, } from '@pascal-app/core';
|
|
4
4
|
import { timeSpan, WallCutout, WallSystem } from '@pascal-app/viewer';
|
|
5
5
|
import { useFrame } from '@react-three/fiber';
|
|
6
6
|
import { useEffect } from 'react';
|
|
7
|
-
import { curtainWallGeometryAdapter } from './curtain-wall-adapter';
|
|
8
|
-
import { getCurtainAwareWallMaterials } from './curtain-wall-materials';
|
|
9
|
-
import { buildWallTreatmentLevelData, clearWallTreatmentMiterCache, sameTreatmentWalls, treatmentProudKeys, useWallTreatmentLevelData, } from './treatment-level-data';
|
|
10
|
-
import { wallTreatmentProudOffsets } from './treatments';
|
|
11
|
-
import { WallBatchSystem } from './wall-batch-system';
|
|
7
|
+
import { curtainWallGeometryAdapter } from './curtain-wall-adapter.js';
|
|
8
|
+
import { getCurtainAwareWallMaterials } from './curtain-wall-materials.js';
|
|
9
|
+
import { buildWallTreatmentLevelData, clearWallTreatmentMiterCache, sameTreatmentWalls, treatmentProudKeys, useWallTreatmentLevelData, } from './treatment-level-data.js';
|
|
10
|
+
import { wallTreatmentProudOffsets } from './treatments.js';
|
|
11
|
+
import { WallBatchSystem } from './wall-batch-system.js';
|
|
12
12
|
const levelInputs = new Map();
|
|
13
13
|
let effectiveWalls = new WeakMap();
|
|
14
14
|
let previousNodes;
|
|
@@ -50,6 +50,10 @@ export function updateWallTreatmentLevels() {
|
|
|
50
50
|
previousNodes = nodes;
|
|
51
51
|
previousOverrides = overrides;
|
|
52
52
|
}
|
|
53
|
+
const terrain = useLiveTerrain.getState();
|
|
54
|
+
const ancestors = dirtyLevelIds.size
|
|
55
|
+
? Object.values(nodes).filter((node) => node.type === 'site' || node.type === 'building' || node.type === 'level')
|
|
56
|
+
: [];
|
|
53
57
|
for (const levelId of dirtyLevelIds) {
|
|
54
58
|
const level = nodes[levelId];
|
|
55
59
|
if (level?.type !== 'level') {
|
|
@@ -65,13 +69,41 @@ export function updateWallTreatmentLevels() {
|
|
|
65
69
|
const proudOffsets = walls.flatMap(wallTreatmentProudOffsets);
|
|
66
70
|
const proudKey = treatmentProudKeys(proudOffsets).join(',');
|
|
67
71
|
const previous = levelInputs.get(levelId);
|
|
68
|
-
|
|
72
|
+
const sameWalls = previous?.proudKey === proudKey && sameTreatmentWalls(previous.walls, walls);
|
|
73
|
+
const supportInputs = [
|
|
74
|
+
...ancestors,
|
|
75
|
+
...level.children.flatMap((id) => {
|
|
76
|
+
const node = nodes[id];
|
|
77
|
+
return node && (node.type === 'slab' || node.type === 'zone' || node.type === 'separator')
|
|
78
|
+
? [node, overrides.get(id)]
|
|
79
|
+
: [];
|
|
80
|
+
}),
|
|
81
|
+
];
|
|
82
|
+
const sameSupportInputs = previous?.supportInputs.length === supportInputs.length &&
|
|
83
|
+
supportInputs.every((input, i) => input === previous.supportInputs[i]);
|
|
84
|
+
const sameTerrain = previous?.terrain === terrain;
|
|
85
|
+
if (sameWalls && sameSupportInputs && sameTerrain)
|
|
86
|
+
continue;
|
|
87
|
+
const supports = new Map(walls.map((wall) => {
|
|
88
|
+
const cached = sameSupportInputs &&
|
|
89
|
+
(sameTerrain || !dirtyNodes.has(wall.id)) &&
|
|
90
|
+
previous?.walls.includes(wall)
|
|
91
|
+
? previous.supports.get(wall.id)
|
|
92
|
+
: undefined;
|
|
93
|
+
return [
|
|
94
|
+
wall.id,
|
|
95
|
+
cached ??
|
|
96
|
+
spatialGridManager.getSlabSupportForWall(levelId, wall.start, wall.end, wall.curveOffset ?? 0, wall.thickness, wall.supportSlabId, undefined, wall.supportOffset, wall.justification),
|
|
97
|
+
];
|
|
98
|
+
}));
|
|
99
|
+
const supportKey = JSON.stringify([...supports].map(([id, support]) => [id, support.elevation, support.faceDatum]));
|
|
100
|
+
levelInputs.set(levelId, { walls, proudKey, supportKey, supportInputs, supports, terrain });
|
|
101
|
+
if (sameWalls && previous.supportKey === supportKey)
|
|
69
102
|
continue;
|
|
70
103
|
timeSpan('wall-treatment-level', () => {
|
|
71
104
|
useWallTreatmentLevelData
|
|
72
105
|
.getState()
|
|
73
|
-
.setLevelData(levelId, buildWallTreatmentLevelData(levelId, walls, proudOffsets));
|
|
74
|
-
levelInputs.set(levelId, { walls, proudKey });
|
|
106
|
+
.setLevelData(levelId, buildWallTreatmentLevelData(levelId, walls, proudOffsets, supports));
|
|
75
107
|
});
|
|
76
108
|
}
|
|
77
109
|
}
|
package/dist/wall/tool.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../src/wall/tool.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../src/wall/tool.tsx"],"names":[],"mappings":"AAqhCA,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAe5B,CAAA;eAEc,QAAQ"}
|
package/dist/wall/tool.js
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { calculateLevelMiters, collectAlignmentAnchors, DEFAULT_LEVEL_HEIGHT, emitter, GROUND_SUPPORT_ID, getWallMiterBoundaryPoints, resolveAlignment, resolveBuildingForLevel, sceneRegistry, useScene, wallClosesRoom, } from '@pascal-app/core';
|
|
3
|
-
import { CursorSphere, chainEndJoinsExistingWall, clearPlacementSurface, createWallOnCurrentLevel, DraftMeasurementLabel, EDITOR_LAYER, formatAngleRadians, formatLinearMeasurement, getAngleArcToSegmentReference, getAngleToSegmentReference, getSegmentAngleReferenceAtPoint, isAlignmentGuideActive, isAngleSnapActive, isMagneticSnapActive, markToolCancelConsumed, publishHorizontalConstructionPlane, publishPlacementSurface, resampleTerrainConstructionPlane, resolveEventConstructionPlane, resolvePointerSupportSurface, snapWallDraftPointDetailed, triggerSFX, useAlignmentGuides, useEditor, useFloorplanDraftPreview, useSegmentDraftChain, useWallSnapIndicator, WALL_CONNECT_SNAP_RADIUS, WALL_JOIN_SNAP_RADIUS, } from '@pascal-app/editor';
|
|
3
|
+
import { addWallPolygonDraftCorner, CursorSphere, chainEndJoinsExistingWall, clearPlacementSurface, commitWallPolygonDraft, createWallOnCurrentLevel, DraftMeasurementLabel, discardWallPolygonDraft, EDITOR_LAYER, formatAngleRadians, formatLinearMeasurement, getAngleArcToSegmentReference, getAngleToSegmentReference, getSegmentAngleReferenceAtPoint, getWallDrawVariant, isAlignmentGuideActive, isAngleSnapActive, isMagneticSnapActive, markToolCancelConsumed, publishHorizontalConstructionPlane, publishPlacementSurface, resampleTerrainConstructionPlane, resolveEventConstructionPlane, resolvePointerSupportSurface, snapWallDraftPointDetailed, startWallPolygonDraft, triggerSFX, useAlignmentGuides, useEditor, useFloorplanDraftPreview, useSegmentDraftChain, useWallDrawVariant, useWallSnapIndicator, visibleScene, WALL_CONNECT_SNAP_RADIUS, WALL_JOIN_SNAP_RADIUS, wallPolygonDraftWalls, } from '@pascal-app/editor';
|
|
4
4
|
import { getSceneTheme, useViewer } from '@pascal-app/viewer';
|
|
5
5
|
import { useThree } from '@react-three/fiber';
|
|
6
6
|
import { useEffect, useRef, useState } from 'react';
|
|
7
7
|
import { DoubleSide, Vector3 } from 'three';
|
|
8
|
-
import { DraftAngleArc, DraftAxisGuides, getNearestAxisAngleLabel, } from '../shared/draft-axis-guides';
|
|
9
|
-
import
|
|
10
|
-
import RectangleWallTool from './rectangle-tool';
|
|
8
|
+
import { DraftAngleArc, DraftAxisGuides, getNearestAxisAngleLabel, } from '../shared/draft-axis-guides.js';
|
|
9
|
+
import RectangleWallTool from './rectangle-tool.js';
|
|
11
10
|
/**
|
|
12
11
|
* Phase 5 Stage D — wall placement tool (kind-owned).
|
|
13
12
|
*
|
|
@@ -330,6 +329,8 @@ const LineWallTool = () => {
|
|
|
330
329
|
const flatConstructionBase = useRef(false);
|
|
331
330
|
const buildingState = useRef(0);
|
|
332
331
|
const [draftMeasurement, setDraftMeasurement] = useState(null);
|
|
332
|
+
// Base Y of an open Polygon room's ghost sides (its construction plane).
|
|
333
|
+
const [polygonGhostY, setPolygonGhostY] = useState(0);
|
|
333
334
|
const [axisGuide, setAxisGuide] = useState(null);
|
|
334
335
|
const measurementColor = isDark ? '#ffffff' : '#111111';
|
|
335
336
|
const measurementShadowColor = isDark ? '#111111' : '#ffffff';
|
|
@@ -430,7 +431,10 @@ const LineWallTool = () => {
|
|
|
430
431
|
}
|
|
431
432
|
return resolved;
|
|
432
433
|
};
|
|
434
|
+
// Stopping without committing drops an open Polygon room — its corners
|
|
435
|
+
// were never written. Completing paths commit before they stop.
|
|
433
436
|
const stopDrafting = () => {
|
|
437
|
+
discardWallPolygonDraft();
|
|
434
438
|
buildingState.current = 0;
|
|
435
439
|
constructionPlane.current = null;
|
|
436
440
|
flatConstructionBase.current = false;
|
|
@@ -449,8 +453,12 @@ const LineWallTool = () => {
|
|
|
449
453
|
useSegmentDraftChain.getState().clear('wall');
|
|
450
454
|
clearPlacementSurface();
|
|
451
455
|
};
|
|
456
|
+
// In 2D-only view the plan owns wall drafting; this tool stays mounted
|
|
457
|
+
// behind the hidden canvas and still hears the plan's grid events, so it
|
|
458
|
+
// must not also draft (it would add every corner twice).
|
|
459
|
+
const planOwnsInput = () => visibleScene(useEditor.getState()) === '2d';
|
|
452
460
|
const onGridMove = (event) => {
|
|
453
|
-
if (!(cursorRef.current && wallPreviewRef.current))
|
|
461
|
+
if (!(cursorRef.current && wallPreviewRef.current) || planOwnsInput())
|
|
454
462
|
return;
|
|
455
463
|
// Ride the grid event plane on the pointed surface: aiming at an
|
|
456
464
|
// elevated deck lifts the plane to the deck top, so the draft's XZ
|
|
@@ -468,7 +476,7 @@ const LineWallTool = () => {
|
|
|
468
476
|
// Add walls on the floor below as extra snap references so the new wall
|
|
469
477
|
// can align with the level beneath it. Kept separate from `walls` so the
|
|
470
478
|
// measurement HUD only reports against the active level.
|
|
471
|
-
const snapWalls = [...walls, ...getBelowLevelWalls()];
|
|
479
|
+
const snapWalls = [...walls, ...getBelowLevelWalls(), ...wallPolygonDraftWalls()];
|
|
472
480
|
const localPoint = pointed?.localPoint
|
|
473
481
|
? [pointed.localPoint[0], pointed.localPoint[2]]
|
|
474
482
|
: [event.localPosition[0], event.localPosition[2]];
|
|
@@ -521,14 +529,16 @@ const LineWallTool = () => {
|
|
|
521
529
|
}
|
|
522
530
|
};
|
|
523
531
|
const onGridClick = (event) => {
|
|
524
|
-
if (!wallPreviewRef.current)
|
|
532
|
+
if (!wallPreviewRef.current || planOwnsInput())
|
|
525
533
|
return;
|
|
526
534
|
if (buildingState.current === 1 && event.nativeEvent.detail >= 2) {
|
|
535
|
+
// A double-click finishes the chain and keeps an open Polygon room.
|
|
536
|
+
commitWallPolygonDraft();
|
|
527
537
|
stopDrafting();
|
|
528
538
|
return;
|
|
529
539
|
}
|
|
530
540
|
const walls = getCurrentLevelWalls();
|
|
531
|
-
const snapWalls = [...walls, ...getBelowLevelWalls()];
|
|
541
|
+
const snapWalls = [...walls, ...getBelowLevelWalls(), ...wallPolygonDraftWalls()];
|
|
532
542
|
const pointed = buildingState.current === 0 ? pointedSurfaceFor(event) : null;
|
|
533
543
|
const localClick = pointed?.localPoint
|
|
534
544
|
? [pointed.localPoint[0], pointed.localPoint[2]]
|
|
@@ -564,6 +574,18 @@ const LineWallTool = () => {
|
|
|
564
574
|
angleLabel: null,
|
|
565
575
|
});
|
|
566
576
|
triggerSFX('sfx:structure-build-start');
|
|
577
|
+
const levelId = useViewer.getState().selection.levelId;
|
|
578
|
+
if (getWallDrawVariant() === 'polygon' && levelId) {
|
|
579
|
+
startWallPolygonDraft(levelId, snappedStart, {
|
|
580
|
+
supportCap: plane.elevation ?? null,
|
|
581
|
+
preferredSupportSlabId: plane.supportSlabId ?? null,
|
|
582
|
+
constructionElevation: plane.elevation ?? null,
|
|
583
|
+
constructionHeight: previewHeightRef.current,
|
|
584
|
+
constructionSourceNodeId: plane.sourceNodeId ?? null,
|
|
585
|
+
flatConstructionBase: flatConstructionBase.current,
|
|
586
|
+
});
|
|
587
|
+
setPolygonGhostY(plane.localY);
|
|
588
|
+
}
|
|
567
589
|
// Visibility is owned by `updateWallPreview`. Leave the
|
|
568
590
|
// unit box hidden until the first pointer move scales and
|
|
569
591
|
// positions it for the active segment.
|
|
@@ -586,47 +608,63 @@ const LineWallTool = () => {
|
|
|
586
608
|
// any other chain re-resolves the aimed surface per commit so a later
|
|
587
609
|
// segment can still elect the slab it visibly crosses instead of
|
|
588
610
|
// being capped at the first click's elevation.
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
chainWallIds.current.push(createdWall.id);
|
|
603
|
-
// The new segment is now a real node — make it an alignment target
|
|
604
|
-
// for the next segment, and drop the just-shown guide.
|
|
605
|
-
refreshAlignmentCandidates();
|
|
606
|
-
useAlignmentGuides.getState().clear();
|
|
607
|
-
useWallSnapIndicator.getState().clear();
|
|
608
|
-
if (useEditor.getState().getContinuation('wall') === 'single') {
|
|
609
|
-
stopDrafting();
|
|
610
|
-
return;
|
|
611
|
+
let nextStart;
|
|
612
|
+
if (getWallDrawVariant() === 'polygon') {
|
|
613
|
+
// A Polygon room writes nothing until it completes: the corner joins
|
|
614
|
+
// the draft, and closing / sealing / teeing commits every wall at once.
|
|
615
|
+
const outcome = addWallPolygonDraftCorner(snappedEnd);
|
|
616
|
+
useAlignmentGuides.getState().clear();
|
|
617
|
+
useWallSnapIndicator.getState().clear();
|
|
618
|
+
if (outcome !== 'open') {
|
|
619
|
+
commitWallPolygonDraft();
|
|
620
|
+
stopDrafting();
|
|
621
|
+
return;
|
|
622
|
+
}
|
|
623
|
+
nextStart = snappedEnd;
|
|
611
624
|
}
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
625
|
+
else {
|
|
626
|
+
const draftPlane = constructionPlane.current;
|
|
627
|
+
const commitPointed = draftPlane?.supportSlabId === GROUND_SUPPORT_ID ? null : pointedSurfaceFor(event);
|
|
628
|
+
// Both start and end are building-local ✓
|
|
629
|
+
const createdWall = createWallOnCurrentLevel([startingPoint.current.x, startingPoint.current.z], snappedEnd, {
|
|
630
|
+
supportCap: commitPointed ? commitPointed.elevation : (draftPlane?.elevation ?? null),
|
|
631
|
+
preferredSupportSlabId: draftPlane?.supportSlabId ?? null,
|
|
632
|
+
constructionElevation: draftPlane?.elevation ?? null,
|
|
633
|
+
constructionHeight: previewHeightRef.current,
|
|
634
|
+
constructionSourceNodeId: constructionPlane.current?.sourceNodeId ?? null,
|
|
635
|
+
flatConstructionBase: flatConstructionBase.current,
|
|
636
|
+
});
|
|
637
|
+
if (!createdWall)
|
|
638
|
+
return;
|
|
639
|
+
chainWallIds.current.push(createdWall.id);
|
|
640
|
+
// The new segment is now a real node — make it an alignment target
|
|
641
|
+
// for the next segment, and drop the just-shown guide.
|
|
642
|
+
refreshAlignmentCandidates();
|
|
643
|
+
useAlignmentGuides.getState().clear();
|
|
644
|
+
useWallSnapIndicator.getState().clear();
|
|
645
|
+
if (useEditor.getState().getContinuation('wall') === 'single') {
|
|
646
|
+
stopDrafting();
|
|
647
|
+
return;
|
|
648
|
+
}
|
|
649
|
+
const closedToChainStart = chainFirstVertex.current &&
|
|
650
|
+
isWithinWallJoinSnapRadius(createdWall.end, chainFirstVertex.current);
|
|
651
|
+
// Auto-close also fires when the segment seals a room against the
|
|
652
|
+
// existing wall network (e.g. a bay closed onto the middle of another
|
|
653
|
+
// wall), not just when the chain loops back to its own start. Shares the
|
|
654
|
+
// room graph with auto slab/ceiling detection so the two never disagree.
|
|
655
|
+
// A resolved end that tees into wall geometry outside the chain also
|
|
656
|
+
// terminates even without an enclosed room — nobody continues drawing
|
|
657
|
+
// from a T-junction into an existing wall; a dead end in free space
|
|
658
|
+
// keeps the chain going.
|
|
659
|
+
const levelWalls = getCurrentLevelWalls();
|
|
660
|
+
if (closedToChainStart ||
|
|
661
|
+
chainEndJoinsExistingWall(createdWall.end, levelWalls, chainWallIds.current) ||
|
|
662
|
+
wallClosesRoom(levelWalls, createdWall)) {
|
|
663
|
+
stopDrafting();
|
|
664
|
+
return;
|
|
665
|
+
}
|
|
666
|
+
nextStart = createdWall.end;
|
|
628
667
|
}
|
|
629
|
-
const nextStart = createdWall.end;
|
|
630
668
|
// Publish the resolved chain start so the 2D floor-plan draft
|
|
631
669
|
// chains its next segment from the same point (its own snap
|
|
632
670
|
// pipeline can resolve a slightly different endpoint).
|
|
@@ -665,6 +703,8 @@ const LineWallTool = () => {
|
|
|
665
703
|
emitter.on('grid:click', onGridClick);
|
|
666
704
|
emitter.on('tool:cancel', onCancel);
|
|
667
705
|
return () => {
|
|
706
|
+
// Leaving the tool mid-polygon abandons it (nothing was written).
|
|
707
|
+
discardWallPolygonDraft();
|
|
668
708
|
emitter.off('grid:move', onGridMove);
|
|
669
709
|
emitter.off('grid:click', onGridClick);
|
|
670
710
|
emitter.off('tool:cancel', onCancel);
|
|
@@ -677,14 +717,35 @@ const LineWallTool = () => {
|
|
|
677
717
|
draftPreview.setWallDraftEnd(null);
|
|
678
718
|
};
|
|
679
719
|
}, [unit, metricNotation]);
|
|
680
|
-
return (_jsxs("group", { children: [_jsx(DraftAxisGuides, { guide: axisGuide, labelColor: measurementColor, labelShadowColor: measurementShadowColor }), _jsx(CursorSphere, { height: previewHeight, ref: cursorRef }), _jsxs("mesh", { layers: EDITOR_LAYER, ref: wallPreviewRef, renderOrder: 1, visible: false, children: [_jsx("boxGeometry", {}), _jsx("meshBasicMaterial", { color: "#818cf8", depthTest: false, depthWrite: false, opacity: 0.5, side: DoubleSide, transparent: true })] }), draftMeasurement && (_jsxs(_Fragment, { children: [_jsx(DraftMeasurementLabel, { color: measurementColor, label: draftMeasurement.lengthLabel, position: draftMeasurement.lengthPosition, shadowColor: measurementShadowColor }), draftMeasurement.angleLabels.map((angleLabel) => (_jsxs("group", { children: [_jsx(DraftAngleArc, { arc: angleLabel.arc, color: measurementColor }), _jsx(DraftMeasurementLabel, { color: measurementColor, label: angleLabel.label, position: angleLabel.position, shadowColor: measurementShadowColor })] }, angleLabel.id)))] }))] }));
|
|
720
|
+
return (_jsxs("group", { children: [_jsx(DraftAxisGuides, { guide: axisGuide, labelColor: measurementColor, labelShadowColor: measurementShadowColor }), _jsx(CursorSphere, { height: previewHeight, ref: cursorRef }), _jsx(PolygonDraftGhosts, { height: previewHeight, thickness: previewThickness, y: polygonGhostY }), _jsxs("mesh", { layers: EDITOR_LAYER, ref: wallPreviewRef, renderOrder: 1, visible: false, children: [_jsx("boxGeometry", {}), _jsx("meshBasicMaterial", { color: "#818cf8", depthTest: false, depthWrite: false, opacity: 0.5, side: DoubleSide, transparent: true })] }), draftMeasurement && (_jsxs(_Fragment, { children: [_jsx(DraftMeasurementLabel, { color: measurementColor, label: draftMeasurement.lengthLabel, position: draftMeasurement.lengthPosition, shadowColor: measurementShadowColor }), draftMeasurement.angleLabels.map((angleLabel) => (_jsxs("group", { children: [_jsx(DraftAngleArc, { arc: angleLabel.arc, color: measurementColor }), _jsx(DraftMeasurementLabel, { color: measurementColor, label: angleLabel.label, position: angleLabel.position, shadowColor: measurementShadowColor })] }, angleLabel.id)))] }))] }));
|
|
681
721
|
};
|
|
722
|
+
/**
|
|
723
|
+
* The placed sides of an open Polygon room, drawn like the live segment's
|
|
724
|
+
* preview. They are draft state (`wallPolygonDraftPoints`), not scene walls.
|
|
725
|
+
*/
|
|
726
|
+
function PolygonDraftGhosts({ height, thickness, y, }) {
|
|
727
|
+
const corners = useFloorplanDraftPreview((state) => state.wallPolygonDraftPoints);
|
|
728
|
+
return (_jsx(_Fragment, { children: corners.slice(1).map((end, index) => {
|
|
729
|
+
const start = corners[index];
|
|
730
|
+
const dx = end[0] - start[0];
|
|
731
|
+
const dz = end[1] - start[1];
|
|
732
|
+
const length = Math.hypot(dx, dz);
|
|
733
|
+
if (length < 0.01)
|
|
734
|
+
return null;
|
|
735
|
+
return (_jsxs("mesh", { layers: EDITOR_LAYER, position: [(start[0] + end[0]) / 2, y + height / 2, (start[1] + end[1]) / 2], renderOrder: 1, rotation: [0, -Math.atan2(dz, dx), 0], scale: [length, height, thickness], children: [_jsx("boxGeometry", {}), _jsx("meshBasicMaterial", { color: "#818cf8", depthTest: false, depthWrite: false, opacity: 0.5, side: DoubleSide, transparent: true })] }, `${index}:${start[0]},${start[1]}`));
|
|
736
|
+
}) }));
|
|
737
|
+
}
|
|
682
738
|
export const WallTool = () => {
|
|
683
739
|
// Clear preset-seeded defaults on deactivation so a later manual wall draw
|
|
684
740
|
// isn't built with a stale preset's parameters. Unmount-only.
|
|
685
|
-
useEffect(() => () =>
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
741
|
+
useEffect(() => () => {
|
|
742
|
+
const editor = useEditor.getState();
|
|
743
|
+
// Remounts keep the active preset; leaving the wall tool releases it.
|
|
744
|
+
if (editor.tool !== 'wall')
|
|
745
|
+
editor.setToolDefaults('wall', null);
|
|
746
|
+
}, []);
|
|
747
|
+
// The drawing variant is picked in the Build panel's Rooms group.
|
|
748
|
+
const variant = useWallDrawVariant();
|
|
749
|
+
return variant === 'rectangle' ? _jsx(RectangleWallTool, {}) : _jsx(LineWallTool, {});
|
|
689
750
|
};
|
|
690
751
|
export default WallTool;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { type WallMiterData, type WallNode } from '@pascal-app/core';
|
|
1
|
+
import { type WallMiterData, type WallNode, type WallSlabSupport } from '@pascal-app/core';
|
|
2
2
|
export declare function treatmentProudKeys(proudOffsets: readonly number[]): number[];
|
|
3
3
|
export declare function sameTreatmentWalls(a: readonly WallNode[], b: readonly WallNode[]): boolean;
|
|
4
4
|
export type WallTreatmentLevelData = {
|
|
5
5
|
walls: readonly WallNode[];
|
|
6
|
+
supports?: ReadonlyMap<string, WallSlabSupport>;
|
|
6
7
|
miterDataByProud: ReadonlyMap<number, WallMiterData>;
|
|
7
8
|
};
|
|
8
9
|
export declare function clearWallTreatmentMiterCache(levelId?: string): void;
|
|
9
|
-
export declare function buildWallTreatmentLevelData(levelId: string, walls: readonly WallNode[], proudOffsets: readonly number[]): WallTreatmentLevelData;
|
|
10
|
+
export declare function buildWallTreatmentLevelData(levelId: string, walls: readonly WallNode[], proudOffsets: readonly number[], supports?: ReadonlyMap<string, WallSlabSupport>): WallTreatmentLevelData;
|
|
10
11
|
export declare function treatmentMiterDataForProud(levelData: WallTreatmentLevelData, proud: number): WallMiterData | undefined;
|
|
11
12
|
type WallTreatmentLevelDataState = {
|
|
12
13
|
byLevelId: ReadonlyMap<string, WallTreatmentLevelData>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"treatment-level-data.d.ts","sourceRoot":"","sources":["../../src/wall/treatment-level-data.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"treatment-level-data.d.ts","sourceRoot":"","sources":["../../src/wall/treatment-level-data.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,eAAe,EACrB,MAAM,kBAAkB,CAAA;AAUzB,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAE5E;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,SAAS,QAAQ,EAAE,EAAE,CAAC,EAAE,SAAS,QAAQ,EAAE,GAAG,OAAO,CAE1F;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,SAAS,QAAQ,EAAE,CAAA;IAC1B,QAAQ,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IAC/C,gBAAgB,EAAE,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;CACrD,CAAA;AAID,wBAAgB,4BAA4B,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAGnE;AAED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,SAAS,QAAQ,EAAE,EAC1B,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,QAAQ,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,GAC9C,sBAAsB,CAiBxB;AAED,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,sBAAsB,EACjC,KAAK,EAAE,MAAM,GACZ,aAAa,GAAG,SAAS,CAE3B;AAED,KAAK,2BAA2B,GAAG;IACjC,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAA;IACtD,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,KAAK,IAAI,CAAA;IACrE,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAC3C,CAAA;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,MAAM,EAAE,WAS1E,2BAA2B,KAAG,sBAAsB,GAAG,SAAS,CA+ChF;AAED,eAAO,MAAM,yBAAyB,0FAenC,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { calculateLevelMiters,
|
|
1
|
+
import { calculateLevelMiters, isCurvedWall, pointToKey, } from '@pascal-app/core';
|
|
2
2
|
import { create } from 'zustand';
|
|
3
3
|
import { shallow } from 'zustand/vanilla/shallow';
|
|
4
4
|
const PROUD_KEY_PRECISION = 1e6;
|
|
@@ -18,7 +18,7 @@ export function clearWallTreatmentMiterCache(levelId) {
|
|
|
18
18
|
else
|
|
19
19
|
levelMiterCache.delete(levelId);
|
|
20
20
|
}
|
|
21
|
-
export function buildWallTreatmentLevelData(levelId, walls, proudOffsets) {
|
|
21
|
+
export function buildWallTreatmentLevelData(levelId, walls, proudOffsets, supports) {
|
|
22
22
|
const cached = levelMiterCache.get(levelId);
|
|
23
23
|
const reusable = cached && sameTreatmentWalls(cached.walls, walls) ? cached : undefined;
|
|
24
24
|
const miterDataByProud = new Map();
|
|
@@ -28,15 +28,9 @@ export function buildWallTreatmentLevelData(levelId, walls, proudOffsets) {
|
|
|
28
28
|
miterDataByProud.set(proud, previous);
|
|
29
29
|
continue;
|
|
30
30
|
}
|
|
31
|
-
|
|
32
|
-
? [...walls]
|
|
33
|
-
: walls.map((wall) => ({
|
|
34
|
-
...wall,
|
|
35
|
-
thickness: getWallThickness(wall) + proud * 2,
|
|
36
|
-
}));
|
|
37
|
-
miterDataByProud.set(proud, calculateLevelMiters(adjustedWalls));
|
|
31
|
+
miterDataByProud.set(proud, calculateLevelMiters([...walls], proud));
|
|
38
32
|
}
|
|
39
|
-
const data = { walls, miterDataByProud };
|
|
33
|
+
const data = { walls, miterDataByProud, supports };
|
|
40
34
|
levelMiterCache.set(levelId, data);
|
|
41
35
|
return data;
|
|
42
36
|
}
|
|
@@ -59,9 +53,15 @@ export function createWallTreatmentSelector(node, proudOffsets) {
|
|
|
59
53
|
if (!level) {
|
|
60
54
|
previousSlice = undefined;
|
|
61
55
|
previousInputs = [];
|
|
62
|
-
return
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
const support = level.supports?.get(node.id);
|
|
59
|
+
const inputs = [support?.elevation];
|
|
60
|
+
for (const face of ['a', 'b']) {
|
|
61
|
+
inputs.push(support?.faceDatum[face].length);
|
|
62
|
+
for (const segment of support?.faceDatum[face] ?? [])
|
|
63
|
+
inputs.push(segment.start, segment.end, segment.elevation, segment.endElevation);
|
|
63
64
|
}
|
|
64
|
-
const inputs = [];
|
|
65
65
|
for (const proud of prouds) {
|
|
66
66
|
const data = level.miterDataByProud.get(proud);
|
|
67
67
|
inputs.push(!!data);
|
|
@@ -87,7 +87,11 @@ export function createWallTreatmentSelector(node, proudOffsets) {
|
|
|
87
87
|
miterDataByProud.set(proud, { junctionData, junctions: new Map() });
|
|
88
88
|
}
|
|
89
89
|
previousInputs = inputs;
|
|
90
|
-
previousSlice = {
|
|
90
|
+
previousSlice = {
|
|
91
|
+
walls: [node],
|
|
92
|
+
miterDataByProud,
|
|
93
|
+
supports: support ? new Map([[node.id, support]]) : undefined,
|
|
94
|
+
};
|
|
91
95
|
return previousSlice;
|
|
92
96
|
};
|
|
93
97
|
}
|