@pascal-app/editor 1.0.7 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/package.json +7 -7
  2. package/src/components/editor/custom-camera-controls.tsx +90 -34
  3. package/src/components/editor/duplicate-node.ts +2 -1
  4. package/src/components/editor/first-person-controls.tsx +5 -7
  5. package/src/components/editor/fit-scene-framing.test.ts +318 -0
  6. package/src/components/editor/fit-scene-framing.ts +142 -0
  7. package/src/components/editor/floating-action-menu.tsx +4 -2
  8. package/src/components/editor/floor-openings-overlay.tsx +1 -1
  9. package/src/components/editor/floor-region-controls.tsx +2 -2
  10. package/src/components/editor/floorplan-panel.tsx +173 -8
  11. package/src/components/editor/floorplan-wall-typing-keys.test.tsx +152 -0
  12. package/src/components/editor/floorplan-wall-typing-keys.ts +79 -0
  13. package/src/components/editor/footprint-height-handle.tsx +1 -1
  14. package/src/components/editor/group-transform-shared.ts +3 -1
  15. package/src/components/editor/index.tsx +20 -0
  16. package/src/components/editor/measurement-pill.tsx +1 -1
  17. package/src/components/editor/node-arrow-handles.tsx +1 -1
  18. package/src/components/editor/open-wall-ends-3d-layer.tsx +1 -2
  19. package/src/components/editor/open-wall-ends-hint.tsx +1 -1
  20. package/src/components/editor/quick-measurement-card.tsx +1 -1
  21. package/src/components/editor/room-controls.tsx +3 -2
  22. package/src/components/editor/room-handles-2d.tsx +2 -1
  23. package/src/components/editor/room-handles.tsx +3 -3
  24. package/src/components/editor/room-labels.tsx +4 -2
  25. package/src/components/editor/site-edge-labels.tsx +6 -2
  26. package/src/components/editor/wall-measurement-label.tsx +30 -14
  27. package/src/components/editor/wall-move-side-handles.tsx +10 -6
  28. package/src/components/editor/wall-region-handles.tsx +2 -2
  29. package/src/components/editor/wall-snap-beacon-layer.tsx +53 -32
  30. package/src/components/editor-2d/floorplan-group-move.tsx +1 -1
  31. package/src/components/editor-2d/floorplan-measurement-tool-layer.tsx +12 -12
  32. package/src/components/editor-2d/floorplan-open-wall-ends-layer.tsx +1 -2
  33. package/src/components/editor-2d/floorplan-registry-action-menu.tsx +2 -1
  34. package/src/components/editor-2d/floorplan-registry-move-overlay.tsx +22 -4
  35. package/src/components/editor-2d/renderers/floorplan-draft-measurement.tsx +7 -1
  36. package/src/components/editor-2d/renderers/floorplan-placement-preview-layer.tsx +13 -1
  37. package/src/components/editor-2d/renderers/floorplan-placement-typing-hud.test.tsx +35 -0
  38. package/src/components/editor-2d/renderers/floorplan-placement-typing-hud.tsx +65 -0
  39. package/src/components/editor-2d/renderers/floorplan-registry-layer.test.ts +22 -0
  40. package/src/components/editor-2d/renderers/floorplan-registry-layer.tsx +14 -2
  41. package/src/components/systems/roof/roof-edit-system.test.tsx +15 -1
  42. package/src/components/systems/roof/roof-edit-system.tsx +30 -19
  43. package/src/components/tools/distribution/distribution-run-tool.test.tsx +371 -3
  44. package/src/components/tools/distribution/distribution-run-tool.tsx +150 -32
  45. package/src/components/tools/item/move-tool.tsx +1 -6
  46. package/src/components/tools/item/use-placement-coordinator.tsx +1 -1
  47. package/src/components/tools/paint-region/wall-paint-region-tool.tsx +1 -1
  48. package/src/components/tools/registry/move-registry-node-tool.test.ts +42 -1
  49. package/src/components/tools/registry/move-registry-node-tool.tsx +38 -14
  50. package/src/components/tools/shared/placement-box.tsx +1 -5
  51. package/src/components/tools/shared/placement-coordinate-input.tsx +94 -0
  52. package/src/components/tools/shared/segment-angle.ts +0 -4
  53. package/src/components/tools/tool-manager.tsx +1 -24
  54. package/src/components/tools/wall/wall-typed-entry.test.ts +99 -0
  55. package/src/components/tools/wall/wall-typed-entry.ts +70 -0
  56. package/src/components/ui/controls/slider-control.tsx +18 -6
  57. package/src/components/ui/controls/tool-options-panel.tsx +74 -44
  58. package/src/components/ui/helpers/helper-manager.test.tsx +53 -0
  59. package/src/components/ui/helpers/helper-manager.tsx +54 -0
  60. package/src/components/ui/panels/floor-foundation-panel.tsx +1 -1
  61. package/src/components/ui/panels/floor-opening-panel.tsx +1 -1
  62. package/src/components/ui/panels/mobile-selection-bar.tsx +28 -24
  63. package/src/components/ui/panels/multi-height-mode.tsx +3 -3
  64. package/src/components/ui/panels/multi-selection-panel.tsx +1 -1
  65. package/src/components/ui/panels/panel-manager.tsx +4 -2
  66. package/src/components/ui/panels/panel-wrapper.tsx +41 -18
  67. package/src/components/ui/panels/room-construction-rows.tsx +1 -1
  68. package/src/components/ui/panels/room-openings-field.tsx +1 -1
  69. package/src/components/ui/panels/room-panel.tsx +1 -1
  70. package/src/components/ui/right-stack.test.ts +13 -6
  71. package/src/components/ui/right-stack.tsx +21 -10
  72. package/src/components/ui/sidebar/panels/settings-panel/load-build-dialog.tsx +1 -5
  73. package/src/components/ui/sidebar/panels/site-panel/ceiling-tree-node.tsx +1 -1
  74. package/src/components/ui/sidebar/panels/site-panel/index.tsx +1 -8
  75. package/src/components/ui/sidebar/panels/site-panel/slab-tree-node.tsx +1 -1
  76. package/src/components/ui/sidebar/panels/site-panel/zone-tree-node.tsx +1 -1
  77. package/src/components/ui/wall-type/wall-type-editor-dialog.tsx +1 -1
  78. package/src/components/viewer/viewer-rooms.tsx +1 -1
  79. package/src/i18n/locales/en/messages.po +856 -124
  80. package/src/i18n/locales/en/messages.ts +1 -1
  81. package/src/i18n/locales/en-XA/messages.ts +1 -1
  82. package/src/i18n/locales/es/messages.po +2087 -257
  83. package/src/i18n/locales/fr/messages.po +2087 -257
  84. package/src/i18n/locales/ja/messages.po +2087 -257
  85. package/src/i18n/locales/zh-CN/messages.po +2087 -257
  86. package/src/index.tsx +74 -47
  87. package/src/lib/contextual-help.ts +6 -0
  88. package/src/lib/elevation-guides.ts +21 -6
  89. package/src/lib/elevator-support.ts +1 -72
  90. package/src/lib/floor-footprints.test.ts +1 -1
  91. package/src/lib/floor-footprints.ts +1 -9
  92. package/src/lib/floor-foundation-support.test.ts +8 -3
  93. package/src/lib/floor-opening-draft.ts +1 -1
  94. package/src/lib/floor-region-session.ts +1 -1
  95. package/src/lib/floorplan/open-wall-ends.ts +2 -1
  96. package/src/lib/gesture-lifecycle.ts +3 -1
  97. package/src/lib/interaction/scope.ts +1 -0
  98. package/src/lib/layer-thickness.ts +1 -1
  99. package/src/lib/level-selection.test.ts +18 -2
  100. package/src/lib/level-selection.ts +31 -8
  101. package/src/lib/linear-display.ts +1 -1
  102. package/src/lib/live-gesture-round-trip.test.ts +1 -1
  103. package/src/lib/measurement-label.test.ts +1 -1
  104. package/src/lib/measurements.test.ts +8 -7
  105. package/src/lib/measurements.ts +1 -218
  106. package/src/lib/node-action-movement.test.tsx +115 -0
  107. package/src/lib/node-action-movement.ts +2 -0
  108. package/src/lib/placement-metadata.ts +4 -0
  109. package/src/lib/point-ask/describe-target.ts +6 -8
  110. package/src/lib/point-ask/region.ts +1 -1
  111. package/src/lib/print-shell-compiler.ts +12 -1
  112. package/src/lib/print-wall-solids.test.ts +11 -0
  113. package/src/lib/print-wall-solids.ts +9 -0
  114. package/src/lib/room-assembly-overlay.ts +1 -1
  115. package/src/lib/room-built-on.test.ts +2 -5
  116. package/src/lib/room-built-on.ts +1 -15
  117. package/src/lib/room-construction-commands.ts +3 -2
  118. package/src/lib/room-controls-phase6.test.ts +1 -1
  119. package/src/lib/room-handle-drag.ts +6 -25
  120. package/src/lib/room-push-dimensions.test.ts +1 -1
  121. package/src/lib/scene-bounds.test.ts +144 -0
  122. package/src/lib/scene-bounds.ts +79 -15
  123. package/src/lib/scene-clipboard.ts +2 -1
  124. package/src/lib/snapping-mode.test.ts +23 -1
  125. package/src/lib/viewer-selection.ts +1 -1
  126. package/src/lib/wall-region-list.ts +3 -1
  127. package/src/lib/window-interaction.test.ts +4 -2
  128. package/src/store/use-editor.tsx +5 -0
  129. package/src/store/use-placement-typing.test.ts +165 -0
  130. package/src/store/use-placement-typing.ts +186 -0
  131. package/src/components/tools/elevator/elevator-defaults.ts +0 -8
  132. package/src/components/tools/elevator/elevator-tool.tsx +0 -372
  133. package/src/components/tools/elevator/move-elevator-tool.tsx +0 -262
  134. package/src/lib/door-interaction.ts +0 -102
  135. package/src/lib/measurement-label.ts +0 -68
  136. package/src/lib/window-interaction.ts +0 -142
@@ -395,6 +395,10 @@ msgstr "Roof type"
395
395
  msgid "app.lib.buildPanelModel.toolCount"
396
396
  msgstr "{count, plural, one {# tool} other {# tools}}"
397
397
 
398
+ #: apps/editor/lib/build-tab-state.ts
399
+ msgid "app.lib.buildTabState.barrel"
400
+ msgstr "Barrel"
401
+
398
402
  #: apps/editor/lib/build-tab-state.ts
399
403
  msgid "app.lib.buildTabState.conical"
400
404
  msgstr "Conical"
@@ -1544,6 +1548,14 @@ msgstr "{label}: {finish}"
1544
1548
  msgid "editor.controls.finishSwatch.default"
1545
1549
  msgstr "Default"
1546
1550
 
1551
+ #: packages/editor/src/components/ui/controls/slider-control.tsx
1552
+ msgid "editor.controls.sliderControl.editLabel"
1553
+ msgstr "Edit {label}"
1554
+
1555
+ #: packages/editor/src/components/ui/controls/slider-control.tsx
1556
+ msgid "editor.controls.sliderControl.mixed"
1557
+ msgstr "Mixed"
1558
+
1547
1559
  #: packages/editor/src/components/editor/index.tsx
1548
1560
  msgid "editor.dismiss"
1549
1561
  msgstr "Dismiss"
@@ -1865,6 +1877,10 @@ msgstr "Cancel picking"
1865
1877
  msgid "editor.helpers.helperManager.cancelStroke"
1866
1878
  msgstr "Cancel stroke"
1867
1879
 
1880
+ #: packages/editor/src/components/ui/helpers/helper-manager.tsx
1881
+ msgid "editor.helpers.helperManager.detachTheJoint"
1882
+ msgstr "Detach the joint"
1883
+
1868
1884
  #: packages/editor/src/components/ui/helpers/helper-manager.tsx
1869
1885
  msgid "editor.helpers.helperManager.done"
1870
1886
  msgstr "Done"
@@ -5468,6 +5484,22 @@ msgstr "Delete region"
5468
5484
  msgid "editor.panels.wallRegionList.paintRegions"
5469
5485
  msgstr "Paint regions"
5470
5486
 
5487
+ #: packages/editor/src/store/use-placement-typing.ts
5488
+ msgid "editor.placementTyping.angle"
5489
+ msgstr "Angle"
5490
+
5491
+ #: packages/editor/src/store/use-placement-typing.ts
5492
+ msgid "editor.placementTyping.distance"
5493
+ msgstr "Distance"
5494
+
5495
+ #: packages/editor/src/store/use-placement-typing.ts
5496
+ msgid "editor.placementTyping.length"
5497
+ msgstr "Length"
5498
+
5499
+ #: packages/editor/src/store/use-placement-typing.ts
5500
+ msgid "editor.placementTyping.offset"
5501
+ msgstr "Offset"
5502
+
5471
5503
  #: packages/editor/src/components/procedural-items/inspector.tsx
5472
5504
  msgid "editor.proceduralItems.inspector.adjustDesign"
5473
5505
  msgstr "Adjust design"
@@ -7031,6 +7063,10 @@ msgstr "Length: {field} m"
7031
7063
  msgid "editor.tools.distribution.distributionRunTool.tabDirection"
7032
7064
  msgstr "Tab: direction"
7033
7065
 
7066
+ #: packages/editor/src/components/tools/distribution/distribution-run-tool.tsx
7067
+ msgid "editor.tools.distribution.distributionRunTool.targetElevation"
7068
+ msgstr "Target elevation: {elevation} m · click or Enter to place"
7069
+
7034
7070
  #: packages/editor/src/components/tools/distribution/distribution-run-tool.tsx
7035
7071
  msgid "editor.tools.distribution.distributionRunTool.typeALength"
7036
7072
  msgstr "type a length"
@@ -8712,69 +8748,121 @@ msgid "node.column.panel.actions"
8712
8748
  msgstr "Actions"
8713
8749
 
8714
8750
  #: packages/nodes/src/column/panel.tsx
8715
- msgid "node.column.panel.aFrame"
8716
- msgstr "A-Frame"
8717
-
8718
- #: packages/nodes/src/column/panel.tsx
8719
- msgid "node.column.panel.applyPreset"
8720
- msgstr "Apply preset..."
8751
+ msgid "node.column.panel.all"
8752
+ msgstr "All"
8721
8753
 
8722
8754
  #: packages/nodes/src/column/panel.tsx
8723
8755
  msgid "node.column.panel.applyProportion"
8724
8756
  msgstr "Apply proportion..."
8725
8757
 
8726
8758
  #: packages/nodes/src/column/panel.tsx
8727
- msgid "node.column.panel.bottomDepth"
8728
- msgstr "Bottom Depth"
8759
+ msgid "node.column.panel.arched"
8760
+ msgstr "Arched"
8761
+
8762
+ #: packages/nodes/src/column/panel.tsx
8763
+ msgid "node.column.panel.baluster"
8764
+ msgstr "Baluster"
8729
8765
 
8730
8766
  #: packages/nodes/src/column/panel.tsx
8731
- msgid "node.column.panel.bottomHeight"
8732
- msgstr "Bottom Height"
8767
+ msgid "node.column.panel.bandScale"
8768
+ msgstr "Band Scale"
8733
8769
 
8734
8770
  #: packages/nodes/src/column/panel.tsx
8735
- msgid "node.column.panel.bottomSpread"
8736
- msgstr "Bottom Spread"
8771
+ msgid "node.column.panel.base"
8772
+ msgstr "Base"
8737
8773
 
8738
8774
  #: packages/nodes/src/column/panel.tsx
8739
- msgid "node.column.panel.bottomStepSpread"
8740
- msgstr "Bottom Step Spread"
8775
+ msgid "node.column.panel.baseCarvingLevel"
8776
+ msgstr "Base Carving"
8741
8777
 
8742
8778
  #: packages/nodes/src/column/panel.tsx
8743
- msgid "node.column.panel.bottomTiers"
8744
- msgstr "Bottom Tiers"
8779
+ msgid "node.column.panel.baseHeight"
8780
+ msgstr "Base Height"
8745
8781
 
8746
8782
  #: packages/nodes/src/column/panel.tsx
8747
- msgid "node.column.panel.bottomWidth"
8748
- msgstr "Bottom Width"
8783
+ msgid "node.column.panel.baseRibCount"
8784
+ msgstr "Base Ribs"
8749
8785
 
8750
8786
  #: packages/nodes/src/column/panel.tsx
8751
- msgid "node.column.panel.boxFrame"
8752
- msgstr "Box Frame"
8787
+ msgid "node.column.panel.baseStyle"
8788
+ msgstr "Base style"
8753
8789
 
8754
8790
  #: packages/nodes/src/column/panel.tsx
8755
- msgid "node.column.panel.braceDepth"
8756
- msgstr "Brace Depth"
8791
+ msgid "node.column.panel.bottomScale"
8792
+ msgstr "Bottom Scale"
8793
+
8794
+ #: packages/nodes/src/column/panel.tsx
8795
+ msgid "node.column.panel.bottomSpread"
8796
+ msgstr "Bottom Spread"
8757
8797
 
8758
8798
  #: packages/nodes/src/column/panel.tsx
8759
- msgid "node.column.panel.braceWidth"
8760
- msgstr "Brace Width"
8799
+ msgid "node.column.panel.bracketDepth"
8800
+ msgstr "Bracket Depth"
8761
8801
 
8762
8802
  #: packages/nodes/src/column/panel.tsx
8763
- msgid "node.column.panel.bulge"
8764
- msgstr "Bulge"
8803
+ msgid "node.column.panel.bracketTierCount"
8804
+ msgstr "Bracket Tiers"
8765
8805
 
8766
8806
  #: packages/nodes/src/column/panel.tsx
8767
8807
  msgid "node.column.panel.bulged"
8768
8808
  msgstr "Bulged"
8769
8809
 
8810
+ #: packages/nodes/src/column/panel.tsx
8811
+ msgid "node.column.panel.bulgeRatio"
8812
+ msgstr "Bulge Ratio"
8813
+
8814
+ #: packages/nodes/src/column/panel.tsx
8815
+ msgid "node.column.panel.capital"
8816
+ msgstr "Capital"
8817
+
8818
+ #: packages/nodes/src/column/panel.tsx
8819
+ msgid "node.column.panel.capitalCarvingLevel"
8820
+ msgstr "Capital Carving"
8821
+
8822
+ #: packages/nodes/src/column/panel.tsx
8823
+ msgid "node.column.panel.capitalHeight"
8824
+ msgstr "Capital Height"
8825
+
8826
+ #: packages/nodes/src/column/panel.tsx
8827
+ msgid "node.column.panel.capitalStyle"
8828
+ msgstr "Capital style"
8829
+
8830
+ #: packages/nodes/src/column/panel.tsx
8831
+ msgid "node.column.panel.carvingPlacement"
8832
+ msgstr "Carving placement"
8833
+
8834
+ #: packages/nodes/src/column/panel.tsx
8835
+ msgid "node.column.panel.chooseAMaterialThenClickThe"
8836
+ msgstr "Choose a material, then click the surface to paint."
8837
+
8838
+ #: packages/nodes/src/column/panel.tsx
8839
+ msgid "node.column.panel.cluster"
8840
+ msgstr "Cluster"
8841
+
8770
8842
  #: packages/nodes/src/column/panel.tsx
8771
8843
  msgid "node.column.panel.column"
8772
8844
  msgstr "Column"
8773
8845
 
8846
+ #: packages/nodes/src/column/panel.tsx
8847
+ msgid "node.column.panel.columnProportions"
8848
+ msgstr "Column proportions"
8849
+
8850
+ #: packages/nodes/src/column/panel.tsx
8851
+ msgid "node.column.panel.columnStyle"
8852
+ msgstr "Column style"
8853
+
8774
8854
  #: packages/nodes/src/column/panel.tsx
8775
8855
  msgid "node.column.panel.connectorPlates"
8776
8856
  msgstr "Connector Plates"
8777
8857
 
8858
+ #: packages/nodes/src/column/panel.tsx
8859
+ msgid "node.column.panel.corinthianLeaf"
8860
+ msgstr "Corinthian Leaf"
8861
+
8862
+ #: packages/nodes/src/column/panel.tsx
8863
+ msgid "node.column.panel.crossSection"
8864
+ msgstr "Cross section"
8865
+
8778
8866
  #: packages/nodes/src/column/panel.tsx
8779
8867
  msgid "node.column.panel.delete"
8780
8868
  msgstr "Delete"
@@ -8784,25 +8872,69 @@ msgid "node.column.panel.depth"
8784
8872
  msgstr "Depth"
8785
8873
 
8786
8874
  #: packages/nodes/src/column/panel.tsx
8787
- msgid "node.column.panel.dimensions"
8788
- msgstr "Dimensions"
8875
+ msgid "node.column.panel.depthScale"
8876
+ msgstr "Depth Scale"
8877
+
8878
+ #: packages/nodes/src/column/panel.tsx
8879
+ msgid "node.column.panel.depthSpan"
8880
+ msgstr "Depth Span"
8881
+
8882
+ #: packages/nodes/src/column/panel.tsx
8883
+ msgid "node.column.panel.diameter"
8884
+ msgstr "Diameter"
8885
+
8886
+ #: packages/nodes/src/column/panel.tsx
8887
+ msgid "node.column.panel.diamond"
8888
+ msgstr "Diamond"
8889
+
8890
+ #: packages/nodes/src/column/panel.tsx
8891
+ msgid "node.column.panel.doric"
8892
+ msgstr "Doric"
8893
+
8894
+ #: packages/nodes/src/column/panel.tsx
8895
+ msgid "node.column.panel.dravidianCarved"
8896
+ msgstr "Dravidian Carved"
8789
8897
 
8790
8898
  #: packages/nodes/src/column/panel.tsx
8791
8899
  msgid "node.column.panel.edgeSoftness"
8792
8900
  msgstr "Edge Softness"
8793
8901
 
8794
8902
  #: packages/nodes/src/column/panel.tsx
8795
- msgid "node.column.panel.ends"
8796
- msgstr "Ends"
8903
+ msgid "node.column.panel.endScale"
8904
+ msgstr "End Scale"
8905
+
8906
+ #: packages/nodes/src/column/panel.tsx
8907
+ msgid "node.column.panel.entireObject"
8908
+ msgstr "Entire Object"
8909
+
8910
+ #: packages/nodes/src/column/panel.tsx
8911
+ msgid "node.column.panel.faceted"
8912
+ msgstr "Faceted"
8913
+
8914
+ #: packages/nodes/src/column/panel.tsx
8915
+ msgid "node.column.panel.fluteCount"
8916
+ msgstr "Flute Count"
8917
+
8918
+ #: packages/nodes/src/column/panel.tsx
8919
+ msgid "node.column.panel.fluted"
8920
+ msgstr "Fluted"
8921
+
8922
+ #: packages/nodes/src/column/panel.tsx
8923
+ msgid "node.column.panel.fluteDepth"
8924
+ msgstr "Flute Depth"
8797
8925
 
8798
8926
  #: packages/nodes/src/column/panel.tsx
8799
- msgid "node.column.panel.endWidth"
8800
- msgstr "End Width"
8927
+ msgid "node.column.panel.fluteWidth"
8928
+ msgstr "Flute Width"
8801
8929
 
8802
8930
  #: packages/nodes/src/column/panel.tsx
8803
8931
  msgid "node.column.panel.forkSpread"
8804
8932
  msgstr "Fork Spread"
8805
8933
 
8934
+ #: packages/nodes/src/column/panel.tsx
8935
+ msgid "node.column.panel.frame"
8936
+ msgstr "Frame"
8937
+
8806
8938
  #: packages/nodes/src/column/panel.tsx
8807
8939
  msgid "node.column.panel.heavy"
8808
8940
  msgstr "Heavy"
@@ -8820,72 +8952,176 @@ msgid "node.column.panel.hourglass"
8820
8952
  msgstr "Hourglass"
8821
8953
 
8822
8954
  #: packages/nodes/src/column/panel.tsx
8823
- msgid "node.column.panel.kBrace"
8824
- msgstr "K Brace"
8955
+ msgid "node.column.panel.ionicVolute"
8956
+ msgstr "Ionic Volute"
8957
+
8958
+ #: packages/nodes/src/column/panel.tsx
8959
+ msgid "node.column.panel.latheRingCount"
8960
+ msgstr "Lathe Rings"
8961
+
8962
+ #: packages/nodes/src/column/panel.tsx
8963
+ msgid "node.column.panel.latheTurned"
8964
+ msgstr "Lathe Turned"
8965
+
8966
+ #: packages/nodes/src/column/panel.tsx
8967
+ msgid "node.column.panel.leafCarved"
8968
+ msgstr "Leaf Carved"
8969
+
8970
+ #: packages/nodes/src/column/panel.tsx
8971
+ msgid "node.column.panel.leafCount"
8972
+ msgstr "Leaves"
8973
+
8974
+ #: packages/nodes/src/column/panel.tsx
8975
+ msgid "node.column.panel.leafRows"
8976
+ msgstr "Leaf Rows"
8977
+
8978
+ #: packages/nodes/src/column/panel.tsx
8979
+ msgid "node.column.panel.lotus"
8980
+ msgstr "Lotus"
8981
+
8982
+ #: packages/nodes/src/column/panel.tsx
8983
+ msgid "node.column.panel.materials"
8984
+ msgstr "Materials"
8985
+
8986
+ #: packages/nodes/src/column/panel.tsx
8987
+ msgid "node.column.panel.memberDepth"
8988
+ msgstr "Member Depth"
8989
+
8990
+ #: packages/nodes/src/column/panel.tsx
8991
+ msgid "node.column.panel.memberWidth"
8992
+ msgstr "Member Width"
8825
8993
 
8826
8994
  #: packages/nodes/src/column/panel.tsx
8827
8995
  msgid "node.column.panel.move"
8828
8996
  msgstr "Move"
8829
8997
 
8830
8998
  #: packages/nodes/src/column/panel.tsx
8831
- msgid "node.column.panel.neckWidth"
8832
- msgstr "Neck Width"
8999
+ msgid "node.column.panel.neckScale"
9000
+ msgstr "Neck Scale"
8833
9001
 
8834
9002
  #: packages/nodes/src/column/panel.tsx
8835
- msgid "node.column.panel.noBottom"
8836
- msgstr "No Bottom"
9003
+ msgid "node.column.panel.none"
9004
+ msgstr "None"
8837
9005
 
8838
9006
  #: packages/nodes/src/column/panel.tsx
8839
- msgid "node.column.panel.noTop"
8840
- msgstr "No Top"
9007
+ msgid "node.column.panel.octagonal"
9008
+ msgstr "Octagonal"
8841
9009
 
8842
9010
  #: packages/nodes/src/column/panel.tsx
8843
- msgid "node.column.panel.plinthThickness"
8844
- msgstr "Plinth Thickness"
9011
+ msgid "node.column.panel.paintMaterials"
9012
+ msgstr "Paint Materials"
8845
9013
 
8846
9014
  #: packages/nodes/src/column/panel.tsx
8847
- msgid "node.column.panel.portalFrame"
8848
- msgstr "Portal Frame"
9015
+ msgid "node.column.panel.panelCount"
9016
+ msgstr "Carved Panels"
8849
9017
 
8850
9018
  #: packages/nodes/src/column/panel.tsx
8851
- msgid "node.column.panel.preset"
8852
- msgstr "Preset"
9019
+ msgid "node.column.panel.panelInsetDepth"
9020
+ msgstr "Panel Relief"
9021
+
9022
+ #: packages/nodes/src/column/panel.tsx
9023
+ msgid "node.column.panel.panelled"
9024
+ msgstr "Panelled"
9025
+
9026
+ #: packages/nodes/src/column/panel.tsx
9027
+ msgid "node.column.panel.panelledPedestal"
9028
+ msgstr "Panelled Pedestal"
9029
+
9030
+ #: packages/nodes/src/column/panel.tsx
9031
+ msgid "node.column.panel.panelShape"
9032
+ msgstr "Panel shape"
9033
+
9034
+ #: packages/nodes/src/column/panel.tsx
9035
+ msgid "node.column.panel.pendantCount"
9036
+ msgstr "Pendants"
9037
+
9038
+ #: packages/nodes/src/column/panel.tsx
9039
+ msgid "node.column.panel.plain"
9040
+ msgstr "Plain"
9041
+
9042
+ #: packages/nodes/src/column/panel.tsx
9043
+ msgid "node.column.panel.plinthHeightFraction"
9044
+ msgstr "Plinth Height Fraction"
9045
+
9046
+ #: packages/nodes/src/column/panel.tsx
9047
+ msgid "node.column.panel.profile"
9048
+ msgstr "Profile"
9049
+
9050
+ #: packages/nodes/src/column/panel.tsx
9051
+ msgid "node.column.panel.rectangle"
9052
+ msgstr "Rectangle"
8853
9053
 
8854
9054
  #: packages/nodes/src/column/panel.tsx
8855
9055
  msgid "node.column.panel.rectangular"
8856
9056
  msgstr "Rectangular"
8857
9057
 
9058
+ #: packages/nodes/src/column/panel.tsx
9059
+ msgid "node.column.panel.resetBase"
9060
+ msgstr "Reset base"
9061
+
9062
+ #: packages/nodes/src/column/panel.tsx
9063
+ msgid "node.column.panel.resetCapital"
9064
+ msgstr "Reset capital"
9065
+
9066
+ #: packages/nodes/src/column/panel.tsx
9067
+ msgid "node.column.panel.resetMaterials"
9068
+ msgstr "Reset materials"
9069
+
9070
+ #: packages/nodes/src/column/panel.tsx
9071
+ msgid "node.column.panel.resetProfile"
9072
+ msgstr "Reset profile"
9073
+
9074
+ #: packages/nodes/src/column/panel.tsx
9075
+ msgid "node.column.panel.resetShape"
9076
+ msgstr "Reset shape"
9077
+
9078
+ #: packages/nodes/src/column/panel.tsx
9079
+ msgid "node.column.panel.resetSize"
9080
+ msgstr "Reset size"
9081
+
9082
+ #: packages/nodes/src/column/panel.tsx
9083
+ msgid "node.column.panel.resetSurfaceDetails"
9084
+ msgstr "Reset surface details"
9085
+
9086
+ #: packages/nodes/src/column/panel.tsx
9087
+ msgid "node.column.panel.resetTransform"
9088
+ msgstr "Reset transform"
9089
+
9090
+ #: packages/nodes/src/column/panel.tsx
9091
+ msgid "node.column.panel.ribbedLotus"
9092
+ msgstr "Ribbed Lotus"
9093
+
8858
9094
  #: packages/nodes/src/column/panel.tsx
8859
9095
  msgid "node.column.panel.ringPairs"
8860
9096
  msgstr "Ring Pairs"
8861
9097
 
8862
9098
  #: packages/nodes/src/column/panel.tsx
8863
- msgid "node.column.panel.ringSpread"
8864
- msgstr "Ring Spread"
9099
+ msgid "node.column.panel.ringSpreadRatio"
9100
+ msgstr "Ring Spread Ratio"
8865
9101
 
8866
9102
  #: packages/nodes/src/column/panel.tsx
8867
9103
  msgid "node.column.panel.ringThickness"
8868
9104
  msgstr "Ring Thickness"
8869
9105
 
8870
9106
  #: packages/nodes/src/column/panel.tsx
8871
- msgid "node.column.panel.round"
8872
- msgstr "Round"
9107
+ msgid "node.column.panel.rotation"
9108
+ msgstr "Rotation"
8873
9109
 
8874
9110
  #: packages/nodes/src/column/panel.tsx
8875
- msgid "node.column.panel.roundBandWidth"
8876
- msgstr "Round Band Width"
9111
+ msgid "node.column.panel.round"
9112
+ msgstr "Round"
8877
9113
 
8878
9114
  #: packages/nodes/src/column/panel.tsx
8879
- msgid "node.column.panel.roundedBottom"
8880
- msgstr "Rounded Bottom"
9115
+ msgid "node.column.panel.rounded"
9116
+ msgstr "Rounded"
8881
9117
 
8882
9118
  #: packages/nodes/src/column/panel.tsx
8883
- msgid "node.column.panel.roundedTop"
8884
- msgstr "Rounded Top"
9119
+ msgid "node.column.panel.roundRings"
9120
+ msgstr "Round Rings"
8885
9121
 
8886
9122
  #: packages/nodes/src/column/panel.tsx
8887
- msgid "node.column.panel.segmentTwist"
8888
- msgstr "Segment Twist"
9123
+ msgid "node.column.panel.scalesMultiplyTheDimensionsInSize"
9124
+ msgstr "Scales multiply the dimensions in Size. A ratio of 0.2 means 20%."
8889
9125
 
8890
9126
  #: packages/nodes/src/column/panel.tsx
8891
9127
  msgid "node.column.panel.shaft"
@@ -8896,8 +9132,16 @@ msgid "node.column.panel.shaftCornerRadius"
8896
9132
  msgstr "Shaft Corner Radius"
8897
9133
 
8898
9134
  #: packages/nodes/src/column/panel.tsx
8899
- msgid "node.column.panel.shaftWidth"
8900
- msgstr "Shaft Width"
9135
+ msgid "node.column.panel.shaftDetail"
9136
+ msgstr "Shaft detail"
9137
+
9138
+ #: packages/nodes/src/column/panel.tsx
9139
+ msgid "node.column.panel.shaftProfile"
9140
+ msgstr "Shaft profile"
9141
+
9142
+ #: packages/nodes/src/column/panel.tsx
9143
+ msgid "node.column.panel.shaftScale"
9144
+ msgstr "Shaft Scale"
8901
9145
 
8902
9146
  #: packages/nodes/src/column/panel.tsx
8903
9147
  msgid "node.column.panel.shape"
@@ -8908,120 +9152,152 @@ msgid "node.column.panel.shortStout"
8908
9152
  msgstr "Short / Stout"
8909
9153
 
8910
9154
  #: packages/nodes/src/column/panel.tsx
8911
- msgid "node.column.panel.simpleBlockBottom"
8912
- msgstr "Simple Block Bottom"
9155
+ msgid "node.column.panel.simple"
9156
+ msgstr "Simple"
8913
9157
 
8914
9158
  #: packages/nodes/src/column/panel.tsx
8915
- msgid "node.column.panel.simpleTop"
8916
- msgstr "Simple Top"
9159
+ msgid "node.column.panel.simpleSlab"
9160
+ msgstr "Simple Slab"
8917
9161
 
8918
9162
  #: packages/nodes/src/column/panel.tsx
8919
- msgid "node.column.panel.singleStrut"
8920
- msgstr "Single Strut"
9163
+ msgid "node.column.panel.simpleSquare"
9164
+ msgstr "Simple Square"
9165
+
9166
+ #: packages/nodes/src/column/panel.tsx
9167
+ msgid "node.column.panel.sixteenSided"
9168
+ msgstr "Sixteen Sided"
9169
+
9170
+ #: packages/nodes/src/column/panel.tsx
9171
+ msgid "node.column.panel.size"
9172
+ msgstr "Size"
8921
9173
 
8922
9174
  #: packages/nodes/src/column/panel.tsx
8923
9175
  msgid "node.column.panel.slender"
8924
9176
  msgstr "Slender"
8925
9177
 
9178
+ #: packages/nodes/src/column/panel.tsx
9179
+ msgid "node.column.panel.southIndianBracket"
9180
+ msgstr "South Indian Bracket"
9181
+
9182
+ #: packages/nodes/src/column/panel.tsx
9183
+ msgid "node.column.panel.spiral"
9184
+ msgstr "Spiral"
9185
+
9186
+ #: packages/nodes/src/column/panel.tsx
9187
+ msgid "node.column.panel.spiralRibCount"
9188
+ msgstr "Spiral Ribs"
9189
+
9190
+ #: packages/nodes/src/column/panel.tsx
9191
+ msgid "node.column.panel.spiralTwist"
9192
+ msgstr "Spiral Turns"
9193
+
8926
9194
  #: packages/nodes/src/column/panel.tsx
8927
9195
  msgid "node.column.panel.square"
8928
9196
  msgstr "Square"
8929
9197
 
8930
9198
  #: packages/nodes/src/column/panel.tsx
8931
- msgid "node.column.panel.squarePlinthBottom"
8932
- msgstr "Square Plinth Bottom"
9199
+ msgid "node.column.panel.squarePlinth"
9200
+ msgstr "Square Plinth"
8933
9201
 
8934
9202
  #: packages/nodes/src/column/panel.tsx
8935
9203
  msgid "node.column.panel.standard"
8936
9204
  msgstr "Standard"
8937
9205
 
8938
9206
  #: packages/nodes/src/column/panel.tsx
8939
- msgid "node.column.panel.steppedBottom"
8940
- msgstr "Stepped Bottom"
9207
+ msgid "node.column.panel.stepped"
9208
+ msgstr "Stepped"
9209
+
9210
+ #: packages/nodes/src/column/panel.tsx
9211
+ msgid "node.column.panel.steppedSquare"
9212
+ msgstr "Stepped Square"
8941
9213
 
8942
9214
  #: packages/nodes/src/column/panel.tsx
8943
- msgid "node.column.panel.steppedTop"
8944
- msgstr "Stepped Top"
9215
+ msgid "node.column.panel.stepScaleReduction"
9216
+ msgstr "Step Scale Reduction"
8945
9217
 
8946
9218
  #: packages/nodes/src/column/panel.tsx
8947
9219
  msgid "node.column.panel.straight"
8948
9220
  msgstr "Straight"
8949
9221
 
8950
9222
  #: packages/nodes/src/column/panel.tsx
8951
- msgid "node.column.panel.taper"
8952
- msgstr "Taper"
8953
-
8954
- #: packages/nodes/src/column/panel.tsx
8955
- msgid "node.column.panel.tapered"
8956
- msgstr "Tapered"
9223
+ msgid "node.column.panel.style"
9224
+ msgstr "Style"
8957
9225
 
8958
9226
  #: packages/nodes/src/column/panel.tsx
8959
- msgid "node.column.panel.topDepth"
8960
- msgstr "Top Depth"
9227
+ msgid "node.column.panel.surfaceDetails"
9228
+ msgstr "Surface Details"
8961
9229
 
8962
9230
  #: packages/nodes/src/column/panel.tsx
8963
- msgid "node.column.panel.topHeight"
8964
- msgstr "Top Height"
9231
+ msgid "node.column.panel.tapered"
9232
+ msgstr "Tapered"
8965
9233
 
8966
9234
  #: packages/nodes/src/column/panel.tsx
8967
- msgid "node.column.panel.topSpread"
8968
- msgstr "Top Spread"
9235
+ msgid "node.column.panel.taperRatio"
9236
+ msgstr "Taper Ratio"
8969
9237
 
8970
9238
  #: packages/nodes/src/column/panel.tsx
8971
- msgid "node.column.panel.topStepSpread"
8972
- msgstr "Top Step Spread"
9239
+ msgid "node.column.panel.tierCount"
9240
+ msgstr "Tier Count"
8973
9241
 
8974
9242
  #: packages/nodes/src/column/panel.tsx
8975
- msgid "node.column.panel.topTiers"
8976
- msgstr "Top Tiers"
9243
+ msgid "node.column.panel.topScale"
9244
+ msgstr "Top Scale"
8977
9245
 
8978
9246
  #: packages/nodes/src/column/panel.tsx
8979
- msgid "node.column.panel.topWidth"
8980
- msgstr "Top Width"
9247
+ msgid "node.column.panel.topSpread"
9248
+ msgstr "Top Spread"
8981
9249
 
8982
9250
  #: packages/nodes/src/column/panel.tsx
8983
9251
  msgid "node.column.panel.transform"
8984
9252
  msgstr "Transform"
8985
9253
 
8986
9254
  #: packages/nodes/src/column/panel.tsx
8987
- msgid "node.column.panel.trestle"
8988
- msgstr "Trestle"
8989
-
8990
- #: packages/nodes/src/column/panel.tsx
8991
- msgid "node.column.panel.tripod"
8992
- msgstr "Tripod"
9255
+ msgid "node.column.panel.twistPerSegment"
9256
+ msgstr "Twist per Segment"
8993
9257
 
8994
9258
  #: packages/nodes/src/column/panel.tsx
8995
9259
  msgid "node.column.panel.twistSegments"
8996
9260
  msgstr "Twist Segments"
8997
9261
 
8998
9262
  #: packages/nodes/src/column/panel.tsx
8999
- msgid "node.column.panel.vertical"
9000
- msgstr "Vertical"
9263
+ msgid "node.column.panel.volute"
9264
+ msgstr "Volute"
9001
9265
 
9002
9266
  #: packages/nodes/src/column/panel.tsx
9003
- msgid "node.column.panel.vSupport"
9004
- msgstr "V Support"
9267
+ msgid "node.column.panel.voluteCount"
9268
+ msgstr "Volutes"
9005
9269
 
9006
9270
  #: packages/nodes/src/column/panel.tsx
9007
- msgid "node.column.panel.waist"
9008
- msgstr "Waist"
9271
+ msgid "node.column.panel.voluteSize"
9272
+ msgstr "Volute Size"
9273
+
9274
+ #: packages/nodes/src/column/panel.tsx
9275
+ msgid "node.column.panel.waistReductionRatio"
9276
+ msgstr "Waist Reduction Ratio"
9009
9277
 
9010
9278
  #: packages/nodes/src/column/panel.tsx
9011
9279
  msgid "node.column.panel.width"
9012
9280
  msgstr "Width"
9013
9281
 
9014
9282
  #: packages/nodes/src/column/panel.tsx
9015
- msgid "node.column.panel.xBrace"
9016
- msgstr "X Brace"
9283
+ msgid "node.column.panel.widthAndDepthScalesMultiplyThe"
9284
+ msgstr "Width and depth scales multiply the dimensions in Size."
9017
9285
 
9018
9286
  #: packages/nodes/src/column/panel.tsx
9019
- msgid "node.column.panel.yaw"
9020
- msgstr "Yaw"
9287
+ msgid "node.column.panel.widthAndDepthScalesUseSize"
9288
+ msgstr "Width and depth scales use Size. Band and neck scales use the base footprint."
9021
9289
 
9022
9290
  #: packages/nodes/src/column/panel.tsx
9023
- msgid "node.column.panel.ySupport"
9024
- msgstr "Y Support"
9291
+ msgid "node.column.panel.widthScale"
9292
+ msgstr "Width Scale"
9293
+
9294
+ #: packages/nodes/src/column/panel.tsx
9295
+ msgid "node.column.panel.widthSpan"
9296
+ msgstr "Width Span"
9297
+
9298
+ #: packages/nodes/src/column/panel.tsx
9299
+ msgid "node.column.panel.woodBracket"
9300
+ msgstr "Wood Bracket"
9025
9301
 
9026
9302
  #: packages/nodes/src/column/post-section.tsx
9027
9303
  msgid "node.column.postSection.aSizeDeckPostStandsNo"
@@ -9063,66 +9339,82 @@ msgstr "Treated"
9063
9339
  msgid "node.column.postSection.untreated"
9064
9340
  msgstr "Untreated"
9065
9341
 
9066
- #: packages/nodes/src/column/panel.tsx
9342
+ #: packages/nodes/src/column/preset-gallery.tsx
9067
9343
  msgid "node.column.preset.aFrameSupport"
9068
9344
  msgstr "A-Frame Support"
9069
9345
 
9070
- #: packages/nodes/src/column/panel.tsx
9346
+ #: packages/nodes/src/column/preset-gallery.tsx
9071
9347
  msgid "node.column.preset.basicPillar"
9072
9348
  msgstr "Straight Round"
9073
9349
 
9074
- #: packages/nodes/src/column/panel.tsx
9350
+ #: packages/nodes/src/column/preset-gallery.tsx
9075
9351
  msgid "node.column.preset.boxFrameSupport"
9076
9352
  msgstr "Box Frame"
9077
9353
 
9078
- #: packages/nodes/src/column/panel.tsx
9354
+ #: packages/nodes/src/column/preset-gallery.tsx
9079
9355
  msgid "node.column.preset.bulgedPillar"
9080
9356
  msgstr "Soft Bulged"
9081
9357
 
9082
- #: packages/nodes/src/column/panel.tsx
9358
+ #: packages/nodes/src/column/preset-gallery.tsx
9083
9359
  msgid "node.column.preset.hourglassPillar"
9084
9360
  msgstr "Hourglass"
9085
9361
 
9086
- #: packages/nodes/src/column/panel.tsx
9362
+ #: packages/nodes/src/column/preset-gallery.tsx
9087
9363
  msgid "node.column.preset.kBraceSupport"
9088
9364
  msgstr "K Brace"
9089
9365
 
9090
- #: packages/nodes/src/column/panel.tsx
9366
+ #: packages/nodes/src/column/preset-gallery.tsx
9091
9367
  msgid "node.column.preset.portalFrameSupport"
9092
9368
  msgstr "Portal Frame"
9093
9369
 
9094
- #: packages/nodes/src/column/panel.tsx
9370
+ #: packages/nodes/src/column/preset-gallery.tsx
9095
9371
  msgid "node.column.preset.singleStrutSupport"
9096
9372
  msgstr "Single Strut"
9097
9373
 
9098
- #: packages/nodes/src/column/panel.tsx
9374
+ #: packages/nodes/src/column/preset-gallery.tsx
9099
9375
  msgid "node.column.preset.squarePillar"
9100
9376
  msgstr "Square Block"
9101
9377
 
9102
- #: packages/nodes/src/column/panel.tsx
9378
+ #: packages/nodes/src/column/preset-gallery.tsx
9103
9379
  msgid "node.column.preset.taperedPillar"
9104
9380
  msgstr "Tapered Round"
9105
9381
 
9106
- #: packages/nodes/src/column/panel.tsx
9382
+ #: packages/nodes/src/column/preset-gallery.tsx
9107
9383
  msgid "node.column.preset.trestleSupport"
9108
9384
  msgstr "Trestle Frame"
9109
9385
 
9110
- #: packages/nodes/src/column/panel.tsx
9386
+ #: packages/nodes/src/column/preset-gallery.tsx
9111
9387
  msgid "node.column.preset.tripodSupport"
9112
9388
  msgstr "Tripod Support"
9113
9389
 
9114
- #: packages/nodes/src/column/panel.tsx
9390
+ #: packages/nodes/src/column/preset-gallery.tsx
9115
9391
  msgid "node.column.preset.vFrameSupport"
9116
9392
  msgstr "V Support"
9117
9393
 
9118
- #: packages/nodes/src/column/panel.tsx
9394
+ #: packages/nodes/src/column/preset-gallery.tsx
9119
9395
  msgid "node.column.preset.xBraceSupport"
9120
9396
  msgstr "X Brace"
9121
9397
 
9122
- #: packages/nodes/src/column/panel.tsx
9398
+ #: packages/nodes/src/column/preset-gallery.tsx
9123
9399
  msgid "node.column.preset.yFrameSupport"
9124
9400
  msgstr "Y Support"
9125
9401
 
9402
+ #: packages/nodes/src/column/preset-gallery.tsx
9403
+ msgid "node.column.presetGallery.applyLabelShape"
9404
+ msgstr "Apply {label} shape"
9405
+
9406
+ #: packages/nodes/src/column/preset-gallery.tsx
9407
+ msgid "node.column.presetGallery.chooseAShape"
9408
+ msgstr "Choose a shape"
9409
+
9410
+ #: packages/nodes/src/column/preset-gallery.tsx
9411
+ msgid "node.column.presetGallery.hoverOrFocusToPreviewClick"
9412
+ msgstr "Hover or focus to preview; click to apply. Materials are kept. Escape cancels the preview."
9413
+
9414
+ #: packages/nodes/src/column/preset-gallery.tsx
9415
+ msgid "node.column.presetGallery.shapePresets"
9416
+ msgstr "Shape presets"
9417
+
9126
9418
  #: packages/nodes/src/i18n/definition-messages.ts
9127
9419
  msgid "node.constructionDimension.description"
9128
9420
  msgstr "Associative linear, curved, circular, angular, or coordinate plan dimension."
@@ -9871,6 +10163,138 @@ msgstr "R/T rotate"
9871
10163
  msgid "node.ductSegment.description"
9872
10164
  msgstr "HVAC duct run — polyline of round, rect, or flat-oval sections."
9873
10165
 
10166
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10167
+ msgid "node.ductSegment.editInspector.applyOffset"
10168
+ msgstr "Apply offset"
10169
+
10170
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10171
+ msgid "node.ductSegment.editInspector.applyResize"
10172
+ msgstr "Apply resize"
10173
+
10174
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10175
+ msgid "node.ductSegment.editInspector.branchStopsAtJunctionsSizeChanges"
10176
+ msgstr "Branch stops at junctions, size changes and equipment. Boundary collars stay fixed."
10177
+
10178
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10179
+ msgid "node.ductSegment.editInspector.connectedSameSizeBranch"
10180
+ msgstr "Connected same-size branch"
10181
+
10182
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10183
+ msgid "node.ductSegment.editInspector.diameter"
10184
+ msgstr "Diameter (in)"
10185
+
10186
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10187
+ msgid "node.ductSegment.editInspector.ductEdit"
10188
+ msgstr "Duct edit"
10189
+
10190
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10191
+ msgid "node.ductSegment.editInspector.ductShape"
10192
+ msgstr "Duct shape"
10193
+
10194
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10195
+ msgid "node.ductSegment.editInspector.editDuctRoute"
10196
+ msgstr "Edit duct route"
10197
+
10198
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10199
+ msgid "node.ductSegment.editInspector.faceAlignmentAppliesToFreeStraight"
10200
+ msgstr "Face alignment applies to free straight runs. Left and right follow the run’s section axes."
10201
+
10202
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10203
+ msgid "node.ductSegment.editInspector.firstBend"
10204
+ msgstr "First bend from start (m)"
10205
+
10206
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10207
+ msgid "node.ductSegment.editInspector.height"
10208
+ msgstr "Height (in)"
10209
+
10210
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10211
+ msgid "node.ductSegment.editInspector.keepBottomFace"
10212
+ msgstr "Keep bottom face"
10213
+
10214
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10215
+ msgid "node.ductSegment.editInspector.keepCenterline"
10216
+ msgstr "Keep centerline"
10217
+
10218
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10219
+ msgid "node.ductSegment.editInspector.keepLeftFace"
10220
+ msgstr "Keep left face"
10221
+
10222
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10223
+ msgid "node.ductSegment.editInspector.keepRightFace"
10224
+ msgstr "Keep right face"
10225
+
10226
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10227
+ msgid "node.ductSegment.editInspector.keepTopFace"
10228
+ msgstr "Keep top face"
10229
+
10230
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10231
+ msgid "node.ductSegment.editInspector.lastBend"
10232
+ msgstr "Last bend from start (m)"
10233
+
10234
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10235
+ msgid "node.ductSegment.editInspector.offsetAroundObstacle"
10236
+ msgstr "Offset around obstacle"
10237
+
10238
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10239
+ msgid "node.ductSegment.editInspector.offsetSideElevationPreview"
10240
+ msgstr "Offset side elevation preview"
10241
+
10242
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10243
+ msgid "node.ductSegment.editInspector.oval"
10244
+ msgstr "Oval"
10245
+
10246
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10247
+ msgid "node.ductSegment.editInspector.partsSummary"
10248
+ msgstr "{affected, plural, one {# existing part affected} other {# existing parts affected}} · {created, plural, one {# new part} other {# new parts}}"
10249
+
10250
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10251
+ msgid "node.ductSegment.editInspector.positiveMovesUpNegativeMovesDown"
10252
+ msgstr "Positive moves up; negative moves down. Four elbows preserve both endpoints. Check the obstacle’s clearance; this does not detect collisions."
10253
+
10254
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10255
+ msgid "node.ductSegment.editInspector.preserveDuctAlignment"
10256
+ msgstr "Preserve duct alignment"
10257
+
10258
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10259
+ msgid "node.ductSegment.editInspector.rectangular"
10260
+ msgstr "Rectangular"
10261
+
10262
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10263
+ msgid "node.ductSegment.editInspector.resizeScope"
10264
+ msgstr "Resize scope"
10265
+
10266
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10267
+ msgid "node.ductSegment.editInspector.resizeWithConnections"
10268
+ msgstr "Resize with connections"
10269
+
10270
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10271
+ msgid "node.ductSegment.editInspector.round"
10272
+ msgstr "Round"
10273
+
10274
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10275
+ msgid "node.ductSegment.editInspector.sideElevationDashedLineIsThe"
10276
+ msgstr "Side elevation · dashed line is the original route"
10277
+
10278
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10279
+ msgid "node.ductSegment.editInspector.thisSegment"
10280
+ msgstr "This segment"
10281
+
10282
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10283
+ msgid "node.ductSegment.editInspector.unableToApplyEdit"
10284
+ msgstr "Unable to apply edit."
10285
+
10286
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10287
+ msgid "node.ductSegment.editInspector.unableToPlanEdit"
10288
+ msgstr "Unable to plan this edit."
10289
+
10290
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10291
+ msgid "node.ductSegment.editInspector.verticalOffset"
10292
+ msgstr "Vertical offset (m)"
10293
+
10294
+ #: packages/nodes/src/duct-segment/edit-inspector.tsx
10295
+ msgid "node.ductSegment.editInspector.width"
10296
+ msgstr "Width (in)"
10297
+
9874
10298
  #: packages/nodes/src/i18n/definition-messages.ts
9875
10299
  msgid "node.ductSegment.label"
9876
10300
  msgstr "Duct"
@@ -9924,14 +10348,26 @@ msgstr "Cab"
9924
10348
  msgid "node.elevator.panel.cabHeight"
9925
10349
  msgstr "Cab Height"
9926
10350
 
10351
+ #: packages/nodes/src/elevator/panel.tsx
10352
+ msgid "node.elevator.panel.cabInteriorAndDoorOpening"
10353
+ msgstr "Clear cab interior: {width} × {depth} × {height} m. Door opening: {doorWidth} × {doorHeight} m."
10354
+
9927
10355
  #: packages/nodes/src/elevator/panel.tsx
9928
10356
  msgid "node.elevator.panel.centerOpening"
9929
10357
  msgstr "Center opening"
9930
10358
 
10359
+ #: packages/nodes/src/elevator/panel.tsx
10360
+ msgid "node.elevator.panel.cutawayShaft"
10361
+ msgstr "Cutaway shaft"
10362
+
9931
10363
  #: packages/nodes/src/elevator/panel.tsx
9932
10364
  msgid "node.elevator.panel.defaultFloor"
9933
10365
  msgstr "Default Floor"
9934
10366
 
10367
+ #: packages/nodes/src/elevator/panel.tsx
10368
+ msgid "node.elevator.panel.defaultFloor2"
10369
+ msgstr "Default floor"
10370
+
9935
10371
  #: packages/nodes/src/elevator/panel.tsx
9936
10372
  msgid "node.elevator.panel.delete"
9937
10373
  msgstr "Delete"
@@ -9948,10 +10384,22 @@ msgstr "Destination"
9948
10384
  msgid "node.elevator.panel.disabled"
9949
10385
  msgstr "Disabled"
9950
10386
 
10387
+ #: packages/nodes/src/elevator/panel.tsx
10388
+ msgid "node.elevator.panel.disableLevel"
10389
+ msgstr "Disable {level}"
10390
+
9951
10391
  #: packages/nodes/src/elevator/panel.tsx
9952
10392
  msgid "node.elevator.panel.doorHeight"
9953
10393
  msgstr "Door Height"
9954
10394
 
10395
+ #: packages/nodes/src/elevator/panel.tsx
10396
+ msgid "node.elevator.panel.doorOpeningStyle"
10397
+ msgstr "Door opening style"
10398
+
10399
+ #: packages/nodes/src/elevator/panel.tsx
10400
+ msgid "node.elevator.panel.doorPanelStyle"
10401
+ msgstr "Door panel style"
10402
+
9955
10403
  #: packages/nodes/src/elevator/panel.tsx
9956
10404
  msgid "node.elevator.panel.doors"
9957
10405
  msgstr "Doors"
@@ -9984,6 +10432,10 @@ msgstr "Elevator"
9984
10432
  msgid "node.elevator.panel.from"
9985
10433
  msgstr "From"
9986
10434
 
10435
+ #: packages/nodes/src/elevator/panel.tsx
10436
+ msgid "node.elevator.panel.fromLevel"
10437
+ msgstr "From level"
10438
+
9987
10439
  #: packages/nodes/src/elevator/panel.tsx
9988
10440
  msgid "node.elevator.panel.glass"
9989
10441
  msgstr "Glass"
@@ -9992,6 +10444,10 @@ msgstr "Glass"
9992
10444
  msgid "node.elevator.panel.glassFrame"
9993
10445
  msgstr "Glass frame"
9994
10446
 
10447
+ #: packages/nodes/src/elevator/panel.tsx
10448
+ msgid "node.elevator.panel.hoverOrFocusASectionTo"
10449
+ msgstr "Hover or focus a section to highlight its parts. Cutaway affects this inspection only."
10450
+
9995
10451
  #: packages/nodes/src/elevator/panel.tsx
9996
10452
  msgid "node.elevator.panel.motion"
9997
10453
  msgstr "Motion"
@@ -10008,6 +10464,14 @@ msgstr "Opening Style"
10008
10464
  msgid "node.elevator.panel.position"
10009
10465
  msgstr "Position"
10010
10466
 
10467
+ #: packages/nodes/src/elevator/panel.tsx
10468
+ msgid "node.elevator.panel.presetsAndInspection"
10469
+ msgstr "Presets and inspection"
10470
+
10471
+ #: packages/nodes/src/elevator/panel.tsx
10472
+ msgid "node.elevator.panel.resetSection"
10473
+ msgstr "Reset {section}"
10474
+
10011
10475
  #: packages/nodes/src/elevator/panel.tsx
10012
10476
  msgid "node.elevator.panel.rotation"
10013
10477
  msgstr "Rotation"
@@ -10020,6 +10484,10 @@ msgstr "Segmented panel"
10020
10484
  msgid "node.elevator.panel.service"
10021
10485
  msgstr "Service"
10022
10486
 
10487
+ #: packages/nodes/src/elevator/panel.tsx
10488
+ msgid "node.elevator.panel.serviceOnlyAccessForLevel"
10489
+ msgstr "Service-only access for {level}"
10490
+
10023
10491
  #: packages/nodes/src/elevator/panel.tsx
10024
10492
  msgid "node.elevator.panel.shaft"
10025
10493
  msgstr "Shaft"
@@ -10032,6 +10500,10 @@ msgstr "Shaft Depth"
10032
10500
  msgid "node.elevator.panel.shaftStyle"
10033
10501
  msgstr "Shaft Style"
10034
10502
 
10503
+ #: packages/nodes/src/elevator/panel.tsx
10504
+ msgid "node.elevator.panel.shaftStyle2"
10505
+ msgstr "Shaft style"
10506
+
10035
10507
  #: packages/nodes/src/elevator/panel.tsx
10036
10508
  msgid "node.elevator.panel.shaftWidth"
10037
10509
  msgstr "Shaft Width"
@@ -10060,10 +10532,18 @@ msgstr "Speed"
10060
10532
  msgid "node.elevator.panel.stopStoporder"
10061
10533
  msgstr "Stop {stopOrder}"
10062
10534
 
10535
+ #: packages/nodes/src/elevator/panel.tsx
10536
+ msgid "node.elevator.panel.theCabNeedsMoreHeadroomThan"
10537
+ msgstr "The cab needs more headroom than one or more served floors provide. Check the floor heights."
10538
+
10063
10539
  #: packages/nodes/src/elevator/panel.tsx
10064
10540
  msgid "node.elevator.panel.to"
10065
10541
  msgstr "To"
10066
10542
 
10543
+ #: packages/nodes/src/elevator/panel.tsx
10544
+ msgid "node.elevator.panel.toLevel"
10545
+ msgstr "To level"
10546
+
10067
10547
  #: packages/nodes/src/elevator/panel.tsx
10068
10548
  msgid "node.elevator.panel.wallThickness"
10069
10549
  msgstr "Wall Thickness"
@@ -10076,6 +10556,18 @@ msgstr "Width"
10076
10556
  msgid "node.elevator.panel.yaw"
10077
10557
  msgstr "Yaw"
10078
10558
 
10559
+ #: packages/nodes/src/elevator/presets.ts
10560
+ msgid "node.elevator.preset.glass"
10561
+ msgstr "Glass"
10562
+
10563
+ #: packages/nodes/src/elevator/presets.ts
10564
+ msgid "node.elevator.preset.passenger"
10565
+ msgstr "Passenger"
10566
+
10567
+ #: packages/nodes/src/elevator/presets.ts
10568
+ msgid "node.elevator.preset.service"
10569
+ msgstr "Service"
10570
+
10079
10571
  #: packages/nodes/src/i18n/definition-messages.ts
10080
10572
  msgid "node.eyebrowVent.description"
10081
10573
  msgstr "Low curved lens-shaped roof vent with a louvered front."
@@ -10689,12 +11181,216 @@ msgstr "R/T rotate"
10689
11181
 
10690
11182
  #: packages/nodes/src/i18n/definition-messages.ts
10691
11183
  msgid "node.pipeSegment.description"
10692
- msgstr "Drain / waste / vent pipe run — draw level or toggle a ¼″ per foot fall with S."
11184
+ msgstr "Drain / waste / vent pipe run — draw level or choose grade and downhill direction."
11185
+
11186
+ #: packages/nodes/src/pipe-segment/grade-label.ts
11187
+ msgid "node.pipeSegment.grade.chooseEndpoint"
11188
+ msgstr "Choose an endpoint"
11189
+
11190
+ #: packages/nodes/src/pipe-segment/grade-label.ts
11191
+ msgid "node.pipeSegment.grade.level"
11192
+ msgstr "Level · no gravity fall"
11193
+
11194
+ #: packages/nodes/src/pipe-segment/grade-label.ts
11195
+ msgid "node.pipeSegment.grade.percent"
11196
+ msgstr "{percent}%"
11197
+
11198
+ #: packages/nodes/src/pipe-segment/grade-label.ts
11199
+ msgid "node.pipeSegment.grade.sloped"
11200
+ msgstr "{percent} · 1:{ratio} · {direction, select, forward {start → end} other {end → start}} (down)"
11201
+
11202
+ #: packages/nodes/src/pipe-segment/grade-label.ts
11203
+ msgid "node.pipeSegment.grade.vertical"
11204
+ msgstr "Vertical · {direction, select, forward {start → end} other {end → start}} (down)"
11205
+
11206
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11207
+ msgid "node.pipeSegment.gradeInspector.applyGradeToHorizontalLegs"
11208
+ msgstr "Apply grade to horizontal legs"
11209
+
11210
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11211
+ msgid "node.pipeSegment.gradeInspector.arrowsShowDownhillDirectionLevelRuns"
11212
+ msgstr "Arrows show downhill direction. Level runs have no gravity fall. Editing a path point preserves each leg’s grade."
11213
+
11214
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11215
+ msgid "node.pipeSegment.gradeInspector.centerlineElevations"
11216
+ msgstr "Centerline elevations above level: start {start} m · end {end} m"
11217
+
11218
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11219
+ msgid "node.pipeSegment.gradeInspector.endElevation"
11220
+ msgstr "End elevation (m)"
11221
+
11222
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11223
+ msgid "node.pipeSegment.gradeInspector.endStart"
11224
+ msgstr "End → start"
11225
+
11226
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11227
+ msgid "node.pipeSegment.gradeInspector.fixedPipeEndpoint"
11228
+ msgstr "Fixed pipe endpoint"
11229
+
11230
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11231
+ msgid "node.pipeSegment.gradeInspector.grade"
11232
+ msgstr "Grade (%)"
11233
+
11234
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11235
+ msgid "node.pipeSegment.gradeInspector.gradeAndFlow"
11236
+ msgstr "Grade and flow"
11237
+
11238
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11239
+ msgid "node.pipeSegment.gradeInspector.keepEndElevation"
11240
+ msgstr "Keep end elevation"
11241
+
11242
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11243
+ msgid "node.pipeSegment.gradeInspector.keepStartElevation"
11244
+ msgstr "Keep start elevation"
11245
+
11246
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11247
+ msgid "node.pipeSegment.gradeInspector.leg"
11248
+ msgstr "Leg {number}: {grade}"
11249
+
11250
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11251
+ msgid "node.pipeSegment.gradeInspector.moveElevationKeepGrades"
11252
+ msgstr "Move elevation, keep grades"
11253
+
11254
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11255
+ msgid "node.pipeSegment.gradeInspector.pipeAnchorElevation"
11256
+ msgstr "Pipe anchor elevation"
11257
+
11258
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11259
+ msgid "node.pipeSegment.gradeInspector.pipeDownhillFlow"
11260
+ msgstr "Pipe downhill flow"
11261
+
11262
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11263
+ msgid "node.pipeSegment.gradeInspector.pipeGradePercent"
11264
+ msgstr "Pipe grade percent"
11265
+
11266
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11267
+ msgid "node.pipeSegment.gradeInspector.startElevation"
11268
+ msgstr "Start elevation (m)"
11269
+
11270
+ #: packages/nodes/src/pipe-segment/grade-inspector.tsx
11271
+ msgid "node.pipeSegment.gradeInspector.startEnd"
11272
+ msgstr "Start → end"
11273
+
11274
+ #: packages/nodes/src/pipe-segment/grade-affordance.ts
11275
+ msgid "node.pipeSegment.gradeNotice.blocked"
11276
+ msgstr "This edit cannot preserve the pipe grade and connected collars. Adjust the fitting or use Grade and flow."
10693
11277
 
10694
11278
  #: packages/nodes/src/i18n/definition-messages.ts
10695
11279
  msgid "node.pipeSegment.label"
10696
11280
  msgstr "DWV Pipe"
10697
11281
 
11282
+ #: packages/nodes/src/pipe-segment/move-tool.tsx
11283
+ msgid "node.pipeSegment.moveTool.connectedGradeBlocked"
11284
+ msgstr "This move would change a connected pipe’s grade. Choose another position or press Esc to cancel."
11285
+
11286
+ #: packages/nodes/src/pipe-segment/offset-inspector.tsx
11287
+ msgid "node.pipeSegment.offsetInspector.applyPipeOffset"
11288
+ msgstr "Apply pipe offset"
11289
+
11290
+ #: packages/nodes/src/pipe-segment/offset-inspector.tsx
11291
+ msgid "node.pipeSegment.offsetInspector.checkObstacleClearanceThePreviewDoes"
11292
+ msgstr "Check obstacle clearance. The preview does not detect collisions."
11293
+
11294
+ #: packages/nodes/src/pipe-segment/offset-inspector.tsx
11295
+ msgid "node.pipeSegment.offsetInspector.chooseTheFirstAndLastBend"
11296
+ msgstr "Choose the first and last bend by horizontal distance from the start. Positive offset goes up; negative goes down. Each connector uses the offset height in horizontal travel."
11297
+
11298
+ #: packages/nodes/src/pipe-segment/offset-inspector.tsx
11299
+ msgid "node.pipeSegment.offsetInspector.firstBend"
11300
+ msgstr "First bend (m)"
11301
+
11302
+ #: packages/nodes/src/pipe-segment/offset-inspector.tsx
11303
+ msgid "node.pipeSegment.offsetInspector.lastBend"
11304
+ msgstr "Last bend (m)"
11305
+
11306
+ #: packages/nodes/src/pipe-segment/offset-inspector.tsx
11307
+ msgid "node.pipeSegment.offsetInspector.offsetAppliedInOneUndoStep"
11308
+ msgstr "Offset applied in one undo step. End connections stayed fixed."
11309
+
11310
+ #: packages/nodes/src/pipe-segment/offset-inspector.tsx
11311
+ msgid "node.pipeSegment.offsetInspector.offsetAroundObstacle"
11312
+ msgstr "Offset around obstacle"
11313
+
11314
+ #: packages/nodes/src/pipe-segment/offset-inspector.tsx
11315
+ msgid "node.pipeSegment.offsetInspector.pipeOffsetSideProfilePreview"
11316
+ msgstr "Pipe offset side profile preview"
11317
+
11318
+ #: packages/nodes/src/pipe-segment/offset-inspector.tsx
11319
+ msgid "node.pipeSegment.offsetInspector.sideProfileSchematicFourBendsFive"
11320
+ msgstr "Side profile (schematic). Four bends · five pipe sections. Parallel sections keep the original grade; both end connections stay fixed."
11321
+
11322
+ #: packages/nodes/src/pipe-segment/offset-inspector.tsx
11323
+ msgid "node.pipeSegment.offsetInspector.thisOffsetIncludesAnUphillWaste"
11324
+ msgstr "This offset includes an uphill waste section. It does not provide continuous downhill drainage."
11325
+
11326
+ #: packages/nodes/src/pipe-segment/offset-inspector.tsx
11327
+ msgid "node.pipeSegment.offsetInspector.unableToApplyOffset"
11328
+ msgstr "Unable to apply offset."
11329
+
11330
+ #: packages/nodes/src/pipe-segment/offset-inspector.tsx
11331
+ msgid "node.pipeSegment.offsetInspector.unableToPlanOffset"
11332
+ msgstr "Unable to plan offset."
11333
+
11334
+ #: packages/nodes/src/pipe-segment/offset-inspector.tsx
11335
+ msgid "node.pipeSegment.offsetInspector.verticalOffset"
11336
+ msgstr "Vertical offset (m)"
11337
+
11338
+ #: packages/nodes/src/pipe-segment/resize-inspector.tsx
11339
+ msgid "node.pipeSegment.resizeInspector.applyPipeSize"
11340
+ msgstr "Apply pipe size"
11341
+
11342
+ #: packages/nodes/src/pipe-segment/resize-inspector.tsx
11343
+ msgid "node.pipeSegment.resizeInspector.branchesStopAtJunctionsSizeOr"
11344
+ msgstr "Branches stop at junctions, size or material changes, and fixture connections. Reducers keep boundary collars fixed."
11345
+
11346
+ #: packages/nodes/src/pipe-segment/resize-inspector.tsx
11347
+ msgid "node.pipeSegment.resizeInspector.checkResize"
11348
+ msgstr "Check resize"
11349
+
11350
+ #: packages/nodes/src/pipe-segment/resize-inspector.tsx
11351
+ msgid "node.pipeSegment.resizeInspector.connectedBranch"
11352
+ msgstr "Connected branch"
11353
+
11354
+ #: packages/nodes/src/pipe-segment/resize-inspector.tsx
11355
+ msgid "node.pipeSegment.resizeInspector.currentDiameter"
11356
+ msgstr "Current diameter: {diameter} in"
11357
+
11358
+ #: packages/nodes/src/pipe-segment/resize-inspector.tsx
11359
+ msgid "node.pipeSegment.resizeInspector.diameterIn"
11360
+ msgstr "Diameter (in)"
11361
+
11362
+ #: packages/nodes/src/pipe-segment/resize-inspector.tsx
11363
+ msgid "node.pipeSegment.resizeInspector.pipeResizeDiameter"
11364
+ msgstr "Pipe resize diameter"
11365
+
11366
+ #: packages/nodes/src/pipe-segment/resize-inspector.tsx
11367
+ msgid "node.pipeSegment.resizeInspector.pipeResizeScope"
11368
+ msgstr "Pipe resize scope"
11369
+
11370
+ #: packages/nodes/src/pipe-segment/resize-inspector.tsx
11371
+ msgid "node.pipeSegment.resizeInspector.pipeSize"
11372
+ msgstr "Pipe size"
11373
+
11374
+ #: packages/nodes/src/pipe-segment/resize-inspector.tsx
11375
+ msgid "node.pipeSegment.resizeInspector.resized"
11376
+ msgstr "Resized in one undo step. Grades and boundary connections preserved."
11377
+
11378
+ #: packages/nodes/src/pipe-segment/resize-inspector.tsx
11379
+ msgid "node.pipeSegment.resizeInspector.resizeSummary"
11380
+ msgstr "{runs, plural, one {# run} other {# runs}}, {fittings, plural, one {# fitting} other {# fittings}}, {reducers, plural, one {# new reducer} other {# new reducers}}. Grades stay unchanged."
11381
+
11382
+ #: packages/nodes/src/pipe-segment/resize-inspector.tsx
11383
+ msgid "node.pipeSegment.resizeInspector.thisSegment"
11384
+ msgstr "This segment"
11385
+
11386
+ #: packages/nodes/src/pipe-segment/resize-inspector.tsx
11387
+ msgid "node.pipeSegment.resizeInspector.unableToResize"
11388
+ msgstr "Unable to resize pipe."
11389
+
11390
+ #: packages/nodes/src/pipe-segment/tool.tsx
11391
+ msgid "node.pipeSegment.tool.gradeDetail"
11392
+ msgstr "{grade} · Start {start} m · End {end} m above level"
11393
+
10698
11394
  #: packages/nodes/src/i18n/definition-messages.ts
10699
11395
  msgid "node.pipeTrap.description"
10700
11396
  msgstr "DWV P-trap — water seal on the waste line. The trap arm runs to the vent."
@@ -10815,6 +11511,18 @@ msgstr "Rise"
10815
11511
  msgid "node.roof.description"
10816
11512
  msgstr "A pitched / hip / gable roof composed of one or more segments."
10817
11513
 
11514
+ #: packages/nodes/src/roof/geometry-notice.tsx
11515
+ msgid "node.roof.geometryNotice.retryRoofGeometry"
11516
+ msgstr "Retry roof geometry"
11517
+
11518
+ #: packages/nodes/src/roof/geometry-notice.tsx
11519
+ msgid "node.roof.geometryNotice.roofGeometryCouldNotBeRebuilt"
11520
+ msgstr "Roof geometry could not be rebuilt. The previous shape is still shown. Adjust the dimensions or intersections and retry."
11521
+
11522
+ #: packages/nodes/src/roof/geometry-notice.tsx
11523
+ msgid "node.roof.geometryNotice.roofGeometryIsInvalidThePrevious"
11524
+ msgstr "Roof geometry is invalid. The previous shape is still shown. Adjust the dimensions or intersections and retry."
11525
+
10818
11526
  #: packages/nodes/src/roof/glazing-panel-editor.tsx
10819
11527
  msgid "node.roof.glazing.face.archBay"
10820
11528
  msgstr "Arch bay {number}"
@@ -11662,6 +12370,18 @@ msgstr "{spacing} o.c."
11662
12370
  msgid "node.shared.buildUpControls.woodPlank"
11663
12371
  msgstr "Wood plank"
11664
12372
 
12373
+ #: packages/nodes/src/shared/connection-feedback.tsx
12374
+ msgid "node.shared.connectionFeedback.routePreview"
12375
+ msgstr "Route preview"
12376
+
12377
+ #: packages/nodes/src/shared/duct-collar-inspector.tsx
12378
+ msgid "node.shared.ductCollarInspector.collarButton"
12379
+ msgstr "{system, select, return {Return} other {Supply}} · {size} in · {state, select, connected {Connected} other {Draw from collar}}"
12380
+
12381
+ #: packages/nodes/src/shared/duct-collar-inspector.tsx
12382
+ msgid "node.shared.ductCollarInspector.connectDuct"
12383
+ msgstr "Connect duct"
12384
+
11665
12385
  #: packages/nodes/src/shared/item-interaction-actions.tsx
11666
12386
  msgid "node.shared.itemInteractionActions.turnLightOff"
11667
12387
  msgstr "Turn light off"
@@ -11682,6 +12402,14 @@ msgstr "Width"
11682
12402
  msgid "node.shared.openingDepthPosition.depthPosition"
11683
12403
  msgstr "Depth position"
11684
12404
 
12405
+ #: packages/nodes/src/shared/pipe-collar-inspector.tsx
12406
+ msgid "node.shared.pipeCollarInspector.collarButton"
12407
+ msgstr "{port, select, inlet {Inlet} outlet {Outlet} branch {Branch} branch2 {Second branch} other {Collar {number}}} · {diameter} in · {elevation} m · {state, select, connected {Connected} other {Draw from collar}}"
12408
+
12409
+ #: packages/nodes/src/shared/pipe-collar-inspector.tsx
12410
+ msgid "node.shared.pipeCollarInspector.connectPipe"
12411
+ msgstr "Connect pipe"
12412
+
11685
12413
  #: packages/nodes/src/shared/run-hanger-inspector.tsx
11686
12414
  msgid "node.shared.runHangerInspector.automaticSupport"
11687
12415
  msgstr "Automatic support"
@@ -13807,6 +14535,10 @@ msgstr "Dimensions"
13807
14535
  msgid "node.wall.panel.drywall"
13808
14536
  msgstr "Drywall"
13809
14537
 
14538
+ #: packages/nodes/src/wall/panel.tsx
14539
+ msgid "node.wall.panel.endHeightOffset"
14540
+ msgstr "End height offset"
14541
+
13810
14542
  #: packages/nodes/src/wall/panel.tsx
13811
14543
  msgid "node.wall.panel.extendsDownwardToMeetTheTerrain"
13812
14544
  msgstr "Extends downward to meet the terrain. Height and top stay unchanged."