@pascal-app/core 1.0.6 → 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 (1003) hide show
  1. package/dist/agent-operations/__fixtures__/add-object-cases.d.ts +31 -0
  2. package/dist/agent-operations/__fixtures__/add-object-cases.d.ts.map +1 -1
  3. package/dist/agent-operations/__fixtures__/build-room-cases.d.ts.map +1 -1
  4. package/dist/agent-operations/__fixtures__/build-room-cases.js +27 -0
  5. package/dist/agent-operations/__fixtures__/cases.d.ts.map +1 -1
  6. package/dist/agent-operations/__fixtures__/cases.js +19 -11
  7. package/dist/agent-operations/__fixtures__/design-brief-cases.d.ts +25 -2
  8. package/dist/agent-operations/__fixtures__/design-brief-cases.d.ts.map +1 -1
  9. package/dist/agent-operations/__fixtures__/design-brief-cases.js +509 -66
  10. package/dist/agent-operations/__fixtures__/dressing-scenes.d.ts +30 -0
  11. package/dist/agent-operations/__fixtures__/dressing-scenes.d.ts.map +1 -0
  12. package/dist/agent-operations/__fixtures__/dressing-scenes.js +82 -0
  13. package/dist/agent-operations/__fixtures__/native-materials.d.ts +411 -9
  14. package/dist/agent-operations/__fixtures__/native-materials.d.ts.map +1 -1
  15. package/dist/agent-operations/__fixtures__/notation-cases.d.ts.map +1 -1
  16. package/dist/agent-operations/__fixtures__/notation-cases.js +14 -0
  17. package/dist/agent-operations/__fixtures__/roof-bearing-cases.d.ts +13804 -10600
  18. package/dist/agent-operations/__fixtures__/roof-bearing-cases.d.ts.map +1 -1
  19. package/dist/agent-operations/__fixtures__/room-cases.d.ts +1 -0
  20. package/dist/agent-operations/__fixtures__/room-cases.d.ts.map +1 -1
  21. package/dist/agent-operations/__fixtures__/room-cases.js +57 -1
  22. package/dist/agent-operations/__fixtures__/room-check-scenes.d.ts +51 -0
  23. package/dist/agent-operations/__fixtures__/room-check-scenes.d.ts.map +1 -0
  24. package/dist/agent-operations/__fixtures__/room-check-scenes.js +121 -0
  25. package/dist/agent-operations/__fixtures__/scene-check-cases.d.ts.map +1 -1
  26. package/dist/agent-operations/__fixtures__/scene-check-cases.js +152 -18
  27. package/dist/agent-operations/__fixtures__/search-assets-cases.d.ts.map +1 -1
  28. package/dist/agent-operations/__fixtures__/search-assets-cases.js +91 -0
  29. package/dist/agent-operations/__fixtures__/site-cases.d.ts +40 -1
  30. package/dist/agent-operations/__fixtures__/site-cases.d.ts.map +1 -1
  31. package/dist/agent-operations/__fixtures__/structure-cases.d.ts +3 -0
  32. package/dist/agent-operations/__fixtures__/structure-cases.d.ts.map +1 -1
  33. package/dist/agent-operations/__fixtures__/structure-cases.js +199 -18
  34. package/dist/agent-operations/__fixtures__/unit-cases.d.ts +6 -0
  35. package/dist/agent-operations/__fixtures__/unit-cases.d.ts.map +1 -0
  36. package/dist/agent-operations/__fixtures__/unit-cases.js +266 -0
  37. package/dist/agent-operations/__fixtures__/verify-scene-cases.d.ts +37 -1
  38. package/dist/agent-operations/__fixtures__/verify-scene-cases.d.ts.map +1 -1
  39. package/dist/agent-operations/add-column.d.ts.map +1 -1
  40. package/dist/agent-operations/add-column.js +32 -3
  41. package/dist/agent-operations/add-fence.d.ts.map +1 -1
  42. package/dist/agent-operations/add-fence.js +2 -1
  43. package/dist/agent-operations/add-level.d.ts.map +1 -1
  44. package/dist/agent-operations/add-level.js +4 -4
  45. package/dist/agent-operations/add-object.d.ts +32 -6
  46. package/dist/agent-operations/add-object.d.ts.map +1 -1
  47. package/dist/agent-operations/add-object.js +59 -12
  48. package/dist/agent-operations/add-wall.d.ts +3 -8
  49. package/dist/agent-operations/add-wall.d.ts.map +1 -1
  50. package/dist/agent-operations/add-wall.js +31 -8
  51. package/dist/agent-operations/apply-changes.d.ts.map +1 -1
  52. package/dist/agent-operations/apply-changes.js +2 -1
  53. package/dist/agent-operations/asset-catalog.d.ts +63 -0
  54. package/dist/agent-operations/asset-catalog.d.ts.map +1 -0
  55. package/dist/agent-operations/asset-catalog.js +182 -0
  56. package/dist/agent-operations/asset-views.d.ts +4 -2
  57. package/dist/agent-operations/asset-views.d.ts.map +1 -1
  58. package/dist/agent-operations/asset-views.js +1 -3
  59. package/dist/agent-operations/author-scene-checks.d.ts +38 -0
  60. package/dist/agent-operations/author-scene-checks.d.ts.map +1 -0
  61. package/dist/agent-operations/author-scene-checks.js +266 -0
  62. package/dist/agent-operations/author-scene.d.ts +54 -20
  63. package/dist/agent-operations/author-scene.d.ts.map +1 -1
  64. package/dist/agent-operations/author-scene.js +1163 -196
  65. package/dist/agent-operations/authored-scene-merge.d.ts.map +1 -1
  66. package/dist/agent-operations/authored-scene-merge.js +61 -3
  67. package/dist/agent-operations/batch.d.ts +1 -1
  68. package/dist/agent-operations/batch.d.ts.map +1 -1
  69. package/dist/agent-operations/batch.js +38 -39
  70. package/dist/agent-operations/ceiling-object-observations.d.ts.map +1 -1
  71. package/dist/agent-operations/ceiling-object-observations.js +5 -4
  72. package/dist/agent-operations/circulation-geometry.d.ts +14 -0
  73. package/dist/agent-operations/circulation-geometry.d.ts.map +1 -0
  74. package/dist/agent-operations/circulation-geometry.js +151 -0
  75. package/dist/agent-operations/circulation-graph.d.ts +72 -0
  76. package/dist/agent-operations/circulation-graph.d.ts.map +1 -0
  77. package/dist/agent-operations/circulation-graph.js +713 -0
  78. package/dist/agent-operations/circulation-non-spaces.d.ts +10 -0
  79. package/dist/agent-operations/circulation-non-spaces.d.ts.map +1 -0
  80. package/dist/agent-operations/circulation-non-spaces.js +88 -0
  81. package/dist/agent-operations/circulation-spaces.d.ts +5881 -0
  82. package/dist/agent-operations/circulation-spaces.d.ts.map +1 -0
  83. package/dist/agent-operations/circulation-spaces.js +368 -0
  84. package/dist/agent-operations/collections.d.ts.map +1 -1
  85. package/dist/agent-operations/collections.js +9 -7
  86. package/dist/agent-operations/corner-window.d.ts.map +1 -1
  87. package/dist/agent-operations/corner-window.js +2 -4
  88. package/dist/agent-operations/create-roof.d.ts.map +1 -1
  89. package/dist/agent-operations/create-roof.js +5 -7
  90. package/dist/agent-operations/create-room.d.ts +4 -1
  91. package/dist/agent-operations/create-room.d.ts.map +1 -1
  92. package/dist/agent-operations/create-room.js +7 -4
  93. package/dist/agent-operations/create-stair.js +2 -2
  94. package/dist/agent-operations/design-brief.d.ts +13 -7
  95. package/dist/agent-operations/design-brief.d.ts.map +1 -1
  96. package/dist/agent-operations/design-brief.js +172 -92
  97. package/dist/agent-operations/door-clearance.d.ts +68 -8
  98. package/dist/agent-operations/door-clearance.d.ts.map +1 -1
  99. package/dist/agent-operations/door-clearance.js +127 -20
  100. package/dist/agent-operations/dress-targets.d.ts +23 -0
  101. package/dist/agent-operations/dress-targets.d.ts.map +1 -0
  102. package/dist/agent-operations/dress-targets.js +34 -0
  103. package/dist/agent-operations/duplicate-node.d.ts +14 -0
  104. package/dist/agent-operations/duplicate-node.d.ts.map +1 -0
  105. package/dist/agent-operations/duplicate-node.js +173 -0
  106. package/dist/agent-operations/find-by-type.d.ts.map +1 -1
  107. package/dist/agent-operations/find-by-type.js +3 -0
  108. package/dist/agent-operations/furnish-room.d.ts +2 -0
  109. package/dist/agent-operations/furnish-room.d.ts.map +1 -1
  110. package/dist/agent-operations/furnish-room.js +15 -4
  111. package/dist/agent-operations/furniture-kind.d.ts +28 -1
  112. package/dist/agent-operations/furniture-kind.d.ts.map +1 -1
  113. package/dist/agent-operations/furniture-kind.js +105 -6
  114. package/dist/agent-operations/ground-reader.d.ts +10 -0
  115. package/dist/agent-operations/ground-reader.d.ts.map +1 -0
  116. package/dist/agent-operations/ground-reader.js +25 -0
  117. package/dist/agent-operations/index.d.ts +118 -12
  118. package/dist/agent-operations/index.d.ts.map +1 -1
  119. package/dist/agent-operations/index.js +26 -1
  120. package/dist/agent-operations/item-solids.d.ts +39 -0
  121. package/dist/agent-operations/item-solids.d.ts.map +1 -0
  122. package/dist/agent-operations/item-solids.js +128 -0
  123. package/dist/agent-operations/layout-clearance.d.ts +91 -11
  124. package/dist/agent-operations/layout-clearance.d.ts.map +1 -1
  125. package/dist/agent-operations/layout-clearance.js +280 -73
  126. package/dist/agent-operations/level-height-fill.d.ts.map +1 -1
  127. package/dist/agent-operations/level-height-fill.js +7 -1
  128. package/dist/agent-operations/level-reads.d.ts +5 -0
  129. package/dist/agent-operations/level-reads.d.ts.map +1 -1
  130. package/dist/agent-operations/level-reads.js +39 -3
  131. package/dist/agent-operations/list-levels.d.ts.map +1 -1
  132. package/dist/agent-operations/list-levels.js +2 -4
  133. package/dist/agent-operations/move-node.d.ts +12 -0
  134. package/dist/agent-operations/move-node.d.ts.map +1 -0
  135. package/dist/agent-operations/move-node.js +28 -0
  136. package/dist/agent-operations/move-plan.d.ts +28 -0
  137. package/dist/agent-operations/move-plan.d.ts.map +1 -0
  138. package/dist/agent-operations/move-plan.js +259 -0
  139. package/dist/agent-operations/node-patch.d.ts.map +1 -1
  140. package/dist/agent-operations/node-patch.js +15 -0
  141. package/dist/agent-operations/paint.d.ts +3 -1
  142. package/dist/agent-operations/paint.d.ts.map +1 -1
  143. package/dist/agent-operations/paint.js +14 -1
  144. package/dist/agent-operations/photo-elevation.d.ts.map +1 -1
  145. package/dist/agent-operations/photo-elevation.js +2 -1
  146. package/dist/agent-operations/place-in-room.d.ts.map +1 -1
  147. package/dist/agent-operations/place-in-room.js +1 -0
  148. package/dist/agent-operations/place-items.d.ts.map +1 -1
  149. package/dist/agent-operations/place-items.js +3 -4
  150. package/dist/agent-operations/plan-clearance.d.ts +28 -0
  151. package/dist/agent-operations/plan-clearance.d.ts.map +1 -0
  152. package/dist/agent-operations/plan-clearance.js +47 -0
  153. package/dist/agent-operations/plan-geometry.d.ts +2 -0
  154. package/dist/agent-operations/plan-geometry.d.ts.map +1 -1
  155. package/dist/agent-operations/plan-geometry.js +10 -0
  156. package/dist/agent-operations/project-files.d.ts +10 -0
  157. package/dist/agent-operations/project-files.d.ts.map +1 -1
  158. package/dist/agent-operations/reachability.d.ts +41 -0
  159. package/dist/agent-operations/reachability.d.ts.map +1 -0
  160. package/dist/agent-operations/reachability.js +199 -0
  161. package/dist/agent-operations/room-checks.d.ts +60 -0
  162. package/dist/agent-operations/room-checks.d.ts.map +1 -0
  163. package/dist/agent-operations/room-checks.js +226 -0
  164. package/dist/agent-operations/room-faces.d.ts +30 -0
  165. package/dist/agent-operations/room-faces.d.ts.map +1 -0
  166. package/dist/agent-operations/room-faces.js +31 -0
  167. package/dist/agent-operations/room-findings.d.ts +5 -2
  168. package/dist/agent-operations/room-findings.d.ts.map +1 -1
  169. package/dist/agent-operations/room-findings.js +30 -0
  170. package/dist/agent-operations/room-finishes.d.ts +87 -0
  171. package/dist/agent-operations/room-finishes.d.ts.map +1 -0
  172. package/dist/agent-operations/room-finishes.js +193 -0
  173. package/dist/agent-operations/room-floor-script.d.ts +3 -3
  174. package/dist/agent-operations/room-floor-script.js +3 -3
  175. package/dist/agent-operations/room-readings.d.ts +90 -0
  176. package/dist/agent-operations/room-readings.d.ts.map +1 -0
  177. package/dist/agent-operations/room-readings.js +369 -0
  178. package/dist/agent-operations/room-tile.d.ts +15 -0
  179. package/dist/agent-operations/room-tile.d.ts.map +1 -0
  180. package/dist/agent-operations/room-tile.js +30 -0
  181. package/dist/agent-operations/room-wet.d.ts +55 -0
  182. package/dist/agent-operations/room-wet.d.ts.map +1 -0
  183. package/dist/agent-operations/room-wet.js +203 -0
  184. package/dist/agent-operations/scene-check-policy.d.ts +5 -0
  185. package/dist/agent-operations/scene-check-policy.d.ts.map +1 -0
  186. package/dist/agent-operations/scene-check-policy.js +24 -0
  187. package/dist/agent-operations/scene-checkpoint.d.ts +10 -0
  188. package/dist/agent-operations/scene-checkpoint.d.ts.map +1 -1
  189. package/dist/agent-operations/scene-checkpoint.js +31 -0
  190. package/dist/agent-operations/scene-issue-groups.d.ts +17 -0
  191. package/dist/agent-operations/scene-issue-groups.d.ts.map +1 -0
  192. package/dist/agent-operations/scene-issue-groups.js +71 -0
  193. package/dist/agent-operations/scene-materials.d.ts +23 -0
  194. package/dist/agent-operations/scene-materials.d.ts.map +1 -1
  195. package/dist/agent-operations/scene-materials.js +41 -0
  196. package/dist/agent-operations/scene-queries.d.ts +2525 -1723
  197. package/dist/agent-operations/scene-queries.d.ts.map +1 -1
  198. package/dist/agent-operations/scene-queries.js +3 -3
  199. package/dist/agent-operations/scene-review.d.ts.map +1 -1
  200. package/dist/agent-operations/scene-review.js +3 -2
  201. package/dist/agent-operations/scene-view.d.ts.map +1 -1
  202. package/dist/agent-operations/scene-view.js +91 -21
  203. package/dist/agent-operations/search-assets.d.ts +10 -6
  204. package/dist/agent-operations/search-assets.d.ts.map +1 -1
  205. package/dist/agent-operations/search-assets.js +37 -22
  206. package/dist/agent-operations/set-checkpoint.d.ts.map +1 -1
  207. package/dist/agent-operations/set-checkpoint.js +1 -0
  208. package/dist/agent-operations/set-ground-level.d.ts +1 -1
  209. package/dist/agent-operations/set-ground-level.d.ts.map +1 -1
  210. package/dist/agent-operations/set-ground-level.js +3 -14
  211. package/dist/agent-operations/site.js +3 -2
  212. package/dist/agent-operations/slab-surface-script.d.ts +25 -0
  213. package/dist/agent-operations/slab-surface-script.d.ts.map +1 -0
  214. package/dist/agent-operations/slab-surface-script.js +60 -0
  215. package/dist/agent-operations/stair-plan-footprint.d.ts +9 -0
  216. package/dist/agent-operations/stair-plan-footprint.d.ts.map +1 -0
  217. package/dist/agent-operations/stair-plan-footprint.js +50 -0
  218. package/dist/agent-operations/types.d.ts +10 -5
  219. package/dist/agent-operations/types.d.ts.map +1 -1
  220. package/dist/agent-operations/units.d.ts +26 -0
  221. package/dist/agent-operations/units.d.ts.map +1 -0
  222. package/dist/agent-operations/units.js +110 -0
  223. package/dist/agent-operations/unreachable-rooms-check.d.ts +17 -0
  224. package/dist/agent-operations/unreachable-rooms-check.d.ts.map +1 -0
  225. package/dist/agent-operations/unreachable-rooms-check.js +35 -0
  226. package/dist/agent-operations/usage-checks.d.ts +2 -0
  227. package/dist/agent-operations/usage-checks.d.ts.map +1 -0
  228. package/dist/agent-operations/usage-checks.js +12 -0
  229. package/dist/agent-operations/verify-scene.d.ts +8 -11
  230. package/dist/agent-operations/verify-scene.d.ts.map +1 -1
  231. package/dist/agent-operations/verify-scene.js +59 -13
  232. package/dist/agent-operations/wall-face-defaults.d.ts +44 -0
  233. package/dist/agent-operations/wall-face-defaults.d.ts.map +1 -0
  234. package/dist/agent-operations/wall-face-defaults.js +229 -0
  235. package/dist/agent-operations/wall-joins.d.ts +119 -0
  236. package/dist/agent-operations/wall-joins.d.ts.map +1 -0
  237. package/dist/agent-operations/wall-joins.js +308 -0
  238. package/dist/agent-operations/wall-object-observations.d.ts.map +1 -1
  239. package/dist/agent-operations/wall-object-observations.js +5 -7
  240. package/dist/agent-operations/wall-skirting.d.ts.map +1 -1
  241. package/dist/agent-operations/wall-skirting.js +2 -0
  242. package/dist/agent-operations/wall-type.d.ts +49 -0
  243. package/dist/agent-operations/wall-type.d.ts.map +1 -0
  244. package/dist/agent-operations/wall-type.js +31 -0
  245. package/dist/agent-operations/zone-coverage.d.ts +85 -0
  246. package/dist/agent-operations/zone-coverage.d.ts.map +1 -0
  247. package/dist/agent-operations/zone-coverage.js +208 -0
  248. package/dist/agent-tools/add-object.d.ts +31 -0
  249. package/dist/agent-tools/add-object.d.ts.map +1 -1
  250. package/dist/agent-tools/add-object.js +44 -7
  251. package/dist/agent-tools/assets.d.ts +4 -0
  252. package/dist/agent-tools/assets.d.ts.map +1 -1
  253. package/dist/agent-tools/assets.js +11 -1
  254. package/dist/agent-tools/author-scene.d.ts +810 -15
  255. package/dist/agent-tools/author-scene.d.ts.map +1 -1
  256. package/dist/agent-tools/author-scene.js +275 -34
  257. package/dist/agent-tools/batch.d.ts +1 -1
  258. package/dist/agent-tools/batch.d.ts.map +1 -1
  259. package/dist/agent-tools/batch.js +5 -1
  260. package/dist/agent-tools/checkpoints.js +1 -1
  261. package/dist/agent-tools/columns.d.ts +14 -0
  262. package/dist/agent-tools/columns.d.ts.map +1 -1
  263. package/dist/agent-tools/columns.js +14 -2
  264. package/dist/agent-tools/contract.d.ts +10 -0
  265. package/dist/agent-tools/contract.d.ts.map +1 -1
  266. package/dist/agent-tools/contract.js +5 -1
  267. package/dist/agent-tools/corner-window.d.ts +1 -0
  268. package/dist/agent-tools/corner-window.d.ts.map +1 -1
  269. package/dist/agent-tools/corner-window.js +1 -1
  270. package/dist/agent-tools/create-room.d.ts +85 -0
  271. package/dist/agent-tools/create-room.d.ts.map +1 -1
  272. package/dist/agent-tools/create-room.js +8 -1
  273. package/dist/agent-tools/design-brief.d.ts +513 -7
  274. package/dist/agent-tools/design-brief.d.ts.map +1 -1
  275. package/dist/agent-tools/design-brief.js +192 -14
  276. package/dist/agent-tools/designs.js +1 -1
  277. package/dist/agent-tools/find-by-type.js +1 -1
  278. package/dist/agent-tools/index.d.ts +658 -10
  279. package/dist/agent-tools/index.d.ts.map +1 -1
  280. package/dist/agent-tools/index.js +9 -1
  281. package/dist/agent-tools/levels.js +4 -4
  282. package/dist/agent-tools/move-duplicate.d.ts +65 -0
  283. package/dist/agent-tools/move-duplicate.d.ts.map +1 -0
  284. package/dist/agent-tools/move-duplicate.js +68 -0
  285. package/dist/agent-tools/paint.d.ts +6 -0
  286. package/dist/agent-tools/paint.d.ts.map +1 -1
  287. package/dist/agent-tools/paint.js +7 -3
  288. package/dist/agent-tools/photo-elevation.js +1 -1
  289. package/dist/agent-tools/project-files.d.ts +2 -2
  290. package/dist/agent-tools/project-files.d.ts.map +1 -1
  291. package/dist/agent-tools/project-files.js +1 -1
  292. package/dist/agent-tools/refusal.d.ts +9 -1
  293. package/dist/agent-tools/refusal.d.ts.map +1 -1
  294. package/dist/agent-tools/refusal.js +5 -1
  295. package/dist/agent-tools/roofs.js +1 -1
  296. package/dist/agent-tools/room-structure.d.ts +60 -0
  297. package/dist/agent-tools/room-structure.d.ts.map +1 -1
  298. package/dist/agent-tools/room-structure.js +20 -1
  299. package/dist/agent-tools/search-materials.d.ts +1 -0
  300. package/dist/agent-tools/search-materials.d.ts.map +1 -1
  301. package/dist/agent-tools/site.js +1 -1
  302. package/dist/agent-tools/stairs.js +1 -1
  303. package/dist/agent-tools/units.d.ts +84 -0
  304. package/dist/agent-tools/units.d.ts.map +1 -0
  305. package/dist/agent-tools/units.js +54 -0
  306. package/dist/agent-tools/verify-scene-usage.d.ts +44 -0
  307. package/dist/agent-tools/verify-scene-usage.d.ts.map +1 -0
  308. package/dist/agent-tools/verify-scene-usage.js +146 -0
  309. package/dist/agent-tools/verify-scene.d.ts +12 -1
  310. package/dist/agent-tools/verify-scene.d.ts.map +1 -1
  311. package/dist/agent-tools/verify-scene.js +183 -3
  312. package/dist/agent-tools/view-scene.d.ts +3 -0
  313. package/dist/agent-tools/view-scene.d.ts.map +1 -1
  314. package/dist/agent-tools/view-scene.js +4 -1
  315. package/dist/agent-tools/wall-openings.d.ts +121 -2
  316. package/dist/agent-tools/wall-openings.d.ts.map +1 -1
  317. package/dist/agent-tools/wall-openings.js +123 -18
  318. package/dist/agent-tools/walls.d.ts +30 -0
  319. package/dist/agent-tools/walls.d.ts.map +1 -1
  320. package/dist/agent-tools/walls.js +54 -2
  321. package/dist/building/__fixtures__/wall-opening-cases.d.ts +181 -35
  322. package/dist/building/__fixtures__/wall-opening-cases.d.ts.map +1 -1
  323. package/dist/building/__fixtures__/wall-opening-cases.js +13 -0
  324. package/dist/building/code-profile.d.ts +231 -0
  325. package/dist/building/code-profile.d.ts.map +1 -0
  326. package/dist/building/code-profile.js +208 -0
  327. package/dist/building/corner-window.d.ts +2 -2
  328. package/dist/building/corner-window.d.ts.map +1 -1
  329. package/dist/building/corner-window.js +11 -2
  330. package/dist/building/door-types.d.ts +1 -0
  331. package/dist/building/door-types.d.ts.map +1 -1
  332. package/dist/building/door-types.js +2 -0
  333. package/dist/building/floor-item-fit.d.ts.map +1 -1
  334. package/dist/building/floor-item-fit.js +2 -4
  335. package/dist/building/ground-level.d.ts +1 -3
  336. package/dist/building/ground-level.d.ts.map +1 -1
  337. package/dist/building/ground-level.js +3 -5
  338. package/dist/building/index.d.ts +2 -0
  339. package/dist/building/index.d.ts.map +1 -1
  340. package/dist/building/index.js +2 -0
  341. package/dist/building/level-duplication.d.ts +4667 -3065
  342. package/dist/building/level-duplication.d.ts.map +1 -1
  343. package/dist/building/level-insertion.d.ts +1 -1
  344. package/dist/building/level-wall-copy.d.ts +24 -0
  345. package/dist/building/level-wall-copy.d.ts.map +1 -0
  346. package/dist/building/level-wall-copy.js +53 -0
  347. package/dist/building/merge-windows.d.ts.map +1 -1
  348. package/dist/building/merge-windows.js +5 -3
  349. package/dist/building/opening-style-presets.d.ts +2 -0
  350. package/dist/building/opening-style-presets.d.ts.map +1 -1
  351. package/dist/building/opening-style-presets.js +26 -5
  352. package/dist/building/room-use.d.ts +26 -0
  353. package/dist/building/room-use.d.ts.map +1 -0
  354. package/dist/building/room-use.js +102 -0
  355. package/dist/building/wall-openings.d.ts +134 -12
  356. package/dist/building/wall-openings.d.ts.map +1 -1
  357. package/dist/building/wall-openings.js +182 -41
  358. package/dist/building/window-types.d.ts +1 -0
  359. package/dist/building/window-types.d.ts.map +1 -1
  360. package/dist/building/window-types.js +3 -0
  361. package/dist/coherence/__fixtures__/enclosure-scenes.d.ts +84 -0
  362. package/dist/coherence/__fixtures__/enclosure-scenes.d.ts.map +1 -0
  363. package/dist/coherence/__fixtures__/enclosure-scenes.js +44 -0
  364. package/dist/commands/structure/attached-walls.d.ts +16 -0
  365. package/dist/commands/structure/attached-walls.d.ts.map +1 -0
  366. package/dist/commands/structure/attached-walls.js +53 -0
  367. package/dist/commands/structure/index.d.ts +3 -0
  368. package/dist/commands/structure/index.d.ts.map +1 -1
  369. package/dist/commands/structure/index.js +3 -0
  370. package/dist/commands/structure/move-separators.d.ts +62 -0
  371. package/dist/commands/structure/move-separators.d.ts.map +1 -0
  372. package/dist/commands/structure/move-separators.js +346 -0
  373. package/dist/commands/structure/set-floor-foundation.d.ts +5 -0
  374. package/dist/commands/structure/set-floor-foundation.d.ts.map +1 -1
  375. package/dist/commands/structure/set-wall-geometry.d.ts.map +1 -1
  376. package/dist/commands/structure/set-wall-geometry.js +44 -11
  377. package/dist/commands/structure/set-zone-intent.d.ts +26 -0
  378. package/dist/commands/structure/set-zone-intent.d.ts.map +1 -1
  379. package/dist/commands/structure/set-zone-intent.js +107 -2
  380. package/dist/commands/structure/shared.d.ts +889 -88
  381. package/dist/commands/structure/shared.d.ts.map +1 -1
  382. package/dist/commands/structure/wall-overlap.d.ts +45 -0
  383. package/dist/commands/structure/wall-overlap.d.ts.map +1 -0
  384. package/dist/commands/structure/wall-overlap.js +289 -0
  385. package/dist/commands/structure/zone-wall-merge.d.ts +2897 -1938
  386. package/dist/commands/structure/zone-wall-merge.d.ts.map +1 -1
  387. package/dist/contracts/reference-discovery.d.ts +2 -2
  388. package/dist/contracts/reference-discovery.d.ts.map +1 -1
  389. package/dist/contracts/reference-discovery.js +5 -3
  390. package/dist/contracts/reference-inventory.d.ts.map +1 -1
  391. package/dist/contracts/reference-inventory.js +75 -25
  392. package/dist/events/bus.d.ts +15 -2
  393. package/dist/events/bus.d.ts.map +1 -1
  394. package/dist/hooks/spatial-grid/built-in-floor-placed.d.ts +40 -0
  395. package/dist/hooks/spatial-grid/built-in-floor-placed.d.ts.map +1 -0
  396. package/dist/hooks/spatial-grid/built-in-floor-placed.js +220 -0
  397. package/dist/hooks/spatial-grid/floor-placed-elevation.d.ts.map +1 -1
  398. package/dist/hooks/spatial-grid/floor-placed-elevation.js +13 -7
  399. package/dist/hooks/spatial-grid/spatial-grid-manager.d.ts +62 -2
  400. package/dist/hooks/spatial-grid/spatial-grid-manager.d.ts.map +1 -1
  401. package/dist/hooks/spatial-grid/spatial-grid-manager.js +207 -36
  402. package/dist/hooks/spatial-grid/spatial-grid-sync.d.ts +2915 -2114
  403. package/dist/hooks/spatial-grid/spatial-grid-sync.d.ts.map +1 -1
  404. package/dist/hooks/spatial-grid/spatial-grid-sync.js +32 -5
  405. package/dist/hooks/spatial-grid/support-host-patch.js +10 -10
  406. package/dist/i18n/format.d.ts +41 -0
  407. package/dist/i18n/format.d.ts.map +1 -0
  408. package/dist/i18n/format.js +124 -0
  409. package/dist/i18n/index.d.ts +5 -0
  410. package/dist/i18n/index.d.ts.map +1 -0
  411. package/dist/i18n/index.js +3 -0
  412. package/dist/i18n/registry.d.ts +78 -0
  413. package/dist/i18n/registry.d.ts.map +1 -0
  414. package/dist/i18n/registry.js +252 -0
  415. package/dist/i18n/use-translate.d.ts +16 -0
  416. package/dist/i18n/use-translate.d.ts.map +1 -0
  417. package/dist/i18n/use-translate.js +23 -0
  418. package/dist/index.d.ts +43 -20
  419. package/dist/index.d.ts.map +1 -1
  420. package/dist/index.js +42 -19
  421. package/dist/lib/__fixtures__/mezzanine.d.ts +10900 -8225
  422. package/dist/lib/__fixtures__/mezzanine.d.ts.map +1 -1
  423. package/dist/lib/absorb-wall-separators.d.ts +1629 -828
  424. package/dist/lib/absorb-wall-separators.d.ts.map +1 -1
  425. package/dist/lib/beam.d.ts +137 -0
  426. package/dist/lib/beam.d.ts.map +1 -0
  427. package/dist/lib/beam.js +297 -0
  428. package/dist/lib/below-grade-footprints.d.ts +13 -5
  429. package/dist/lib/below-grade-footprints.d.ts.map +1 -1
  430. package/dist/lib/below-grade-footprints.js +53 -10
  431. package/dist/lib/build-mode.d.ts +11 -0
  432. package/dist/lib/build-mode.d.ts.map +1 -0
  433. package/dist/lib/build-mode.js +24 -0
  434. package/dist/lib/build-up.d.ts +89 -0
  435. package/dist/lib/build-up.d.ts.map +1 -0
  436. package/dist/lib/build-up.js +216 -0
  437. package/dist/lib/corner-pair.d.ts +207 -4
  438. package/dist/lib/corner-pair.d.ts.map +1 -1
  439. package/dist/lib/deck-boards.d.ts +80 -0
  440. package/dist/lib/deck-boards.d.ts.map +1 -0
  441. package/dist/lib/deck-boards.js +184 -0
  442. package/dist/lib/deck-framing.d.ts +150 -0
  443. package/dist/lib/deck-framing.d.ts.map +1 -0
  444. package/dist/lib/deck-framing.js +515 -0
  445. package/dist/lib/deepest-drawn.d.ts +3 -6
  446. package/dist/lib/deepest-drawn.d.ts.map +1 -1
  447. package/dist/lib/deepest-drawn.js +4 -8
  448. package/dist/lib/door-interaction.d.ts +14 -0
  449. package/dist/lib/door-interaction.d.ts.map +1 -0
  450. package/dist/lib/door-interaction.js +62 -0
  451. package/dist/lib/door-opening.d.ts +19 -0
  452. package/dist/lib/door-opening.d.ts.map +1 -0
  453. package/dist/lib/door-opening.js +27 -0
  454. package/dist/lib/door-operation.d.ts +2 -0
  455. package/dist/lib/door-operation.d.ts.map +1 -1
  456. package/dist/lib/door-operation.js +4 -0
  457. package/dist/lib/elevator-support.d.ts +15 -0
  458. package/dist/lib/elevator-support.d.ts.map +1 -0
  459. package/dist/lib/elevator-support.js +40 -0
  460. package/dist/lib/exterior-wall-loops.d.ts.map +1 -1
  461. package/dist/lib/exterior-wall-loops.js +2 -1
  462. package/dist/lib/finish-script.d.ts +5 -5
  463. package/dist/lib/finish-script.d.ts.map +1 -1
  464. package/dist/lib/finish-script.js +12 -5
  465. package/dist/lib/floor-footprint-name.d.ts +17 -0
  466. package/dist/lib/floor-footprint-name.d.ts.map +1 -1
  467. package/dist/lib/floor-footprint-name.js +17 -4
  468. package/dist/lib/floor-intent-changes.d.ts.map +1 -1
  469. package/dist/lib/floor-intent-changes.js +66 -39
  470. package/dist/lib/floor-opening-footprints.d.ts +1 -1
  471. package/dist/lib/floor-opening-footprints.d.ts.map +1 -1
  472. package/dist/lib/floor-opening-footprints.js +10 -4
  473. package/dist/lib/floor-plate-paint.d.ts +2 -0
  474. package/dist/lib/floor-plate-paint.d.ts.map +1 -1
  475. package/dist/lib/floor-plate-paint.js +12 -0
  476. package/dist/lib/floor-plates.d.ts +250 -0
  477. package/dist/lib/floor-plates.d.ts.map +1 -1
  478. package/dist/lib/floor-plates.js +43 -4
  479. package/dist/lib/floor-script.d.ts +35 -6
  480. package/dist/lib/floor-script.d.ts.map +1 -1
  481. package/dist/lib/floor-script.js +96 -16
  482. package/dist/lib/foundation-construction.d.ts +4 -13
  483. package/dist/lib/foundation-construction.d.ts.map +1 -1
  484. package/dist/lib/foundation-construction.js +4 -14
  485. package/dist/lib/foundation-standard.d.ts +2 -3
  486. package/dist/lib/foundation-standard.d.ts.map +1 -1
  487. package/dist/lib/foundation-standard.js +2 -3
  488. package/dist/lib/foundation-wall.d.ts +1 -2
  489. package/dist/lib/foundation-wall.d.ts.map +1 -1
  490. package/dist/lib/foundation-wall.js +1 -2
  491. package/dist/lib/framing-post.d.ts +91 -0
  492. package/dist/lib/framing-post.d.ts.map +1 -0
  493. package/dist/lib/framing-post.js +174 -0
  494. package/dist/lib/geometry-script-node.d.ts +11 -0
  495. package/dist/lib/geometry-script-node.d.ts.map +1 -1
  496. package/dist/lib/geometry-script-node.js +35 -0
  497. package/dist/lib/grade-standing.d.ts +16 -2
  498. package/dist/lib/grade-standing.d.ts.map +1 -1
  499. package/dist/lib/grade-standing.js +129 -9
  500. package/dist/lib/ground-seat.d.ts +2 -22
  501. package/dist/lib/ground-seat.d.ts.map +1 -1
  502. package/dist/lib/ground-seat.js +2 -17
  503. package/dist/lib/ground-window.d.ts +2 -1
  504. package/dist/lib/ground-window.d.ts.map +1 -1
  505. package/dist/lib/ground-window.js +5 -2
  506. package/dist/lib/hierarchy.d.ts +19 -0
  507. package/dist/lib/hierarchy.d.ts.map +1 -0
  508. package/dist/lib/hierarchy.js +53 -0
  509. package/dist/lib/level-footprints.d.ts +2 -0
  510. package/dist/lib/level-footprints.d.ts.map +1 -1
  511. package/dist/lib/level-footprints.js +7 -0
  512. package/dist/lib/opening-casing.d.ts +67 -0
  513. package/dist/lib/opening-casing.d.ts.map +1 -0
  514. package/dist/lib/opening-casing.js +131 -0
  515. package/dist/lib/opening-exterior-face.d.ts +6 -0
  516. package/dist/lib/opening-exterior-face.d.ts.map +1 -0
  517. package/dist/lib/opening-exterior-face.js +15 -0
  518. package/dist/lib/opening-floor-datum.d.ts +11 -5
  519. package/dist/lib/opening-floor-datum.d.ts.map +1 -1
  520. package/dist/lib/opening-floor-datum.js +40 -8
  521. package/dist/lib/opening-frame-depth.d.ts +18 -0
  522. package/dist/lib/opening-frame-depth.d.ts.map +1 -0
  523. package/dist/lib/opening-frame-depth.js +22 -0
  524. package/dist/lib/outdoor-room.d.ts +32 -0
  525. package/dist/lib/outdoor-room.d.ts.map +1 -0
  526. package/dist/lib/outdoor-room.js +66 -0
  527. package/dist/lib/own-floor-intent.d.ts.map +1 -1
  528. package/dist/lib/own-floor-intent.js +2 -2
  529. package/dist/lib/plate-surface.d.ts +8 -0
  530. package/dist/lib/plate-surface.d.ts.map +1 -1
  531. package/dist/lib/plate-surface.js +53 -3
  532. package/dist/lib/polygon-boolean.d.ts.map +1 -1
  533. package/dist/lib/polygon-boolean.js +2 -1
  534. package/dist/lib/porch-framing-sync.d.ts +46 -0
  535. package/dist/lib/porch-framing-sync.d.ts.map +1 -0
  536. package/dist/lib/porch-framing-sync.js +206 -0
  537. package/dist/lib/porch-framing.d.ts +44 -0
  538. package/dist/lib/porch-framing.d.ts.map +1 -0
  539. package/dist/lib/porch-framing.js +159 -0
  540. package/dist/lib/railing-rooms.d.ts +13 -0
  541. package/dist/lib/railing-rooms.d.ts.map +1 -0
  542. package/dist/lib/railing-rooms.js +37 -0
  543. package/dist/lib/roof-eave.d.ts +135 -0
  544. package/dist/lib/roof-eave.d.ts.map +1 -0
  545. package/dist/lib/roof-eave.js +186 -0
  546. package/dist/lib/room-floor-elevation.d.ts +12 -0
  547. package/dist/lib/room-floor-elevation.d.ts.map +1 -0
  548. package/dist/lib/room-floor-elevation.js +41 -0
  549. package/dist/lib/room-floor-feasibility.d.ts.map +1 -1
  550. package/dist/lib/room-floor-feasibility.js +1 -1
  551. package/dist/lib/room-floor-plate.d.ts +3 -1
  552. package/dist/lib/room-floor-plate.d.ts.map +1 -1
  553. package/dist/lib/room-floor-plate.js +7 -0
  554. package/dist/lib/space-detection.d.ts +13 -0
  555. package/dist/lib/space-detection.d.ts.map +1 -1
  556. package/dist/lib/space-detection.js +113 -24
  557. package/dist/lib/structure-kernel.d.ts +22 -9
  558. package/dist/lib/structure-kernel.d.ts.map +1 -1
  559. package/dist/lib/structure-kernel.js +146 -28
  560. package/dist/lib/structure-reconcile.d.ts +1 -1
  561. package/dist/lib/structure-reconcile.d.ts.map +1 -1
  562. package/dist/lib/structure-reconcile.js +7 -4
  563. package/dist/lib/surface-intent.d.ts +10 -0
  564. package/dist/lib/surface-intent.d.ts.map +1 -0
  565. package/dist/lib/surface-intent.js +18 -0
  566. package/dist/lib/terrain-source.d.ts.map +1 -1
  567. package/dist/lib/terrain-source.js +2 -1
  568. package/dist/lib/wall-face-script.d.ts.map +1 -1
  569. package/dist/lib/wall-face-script.js +8 -5
  570. package/dist/lib/window-interaction.d.ts +16 -0
  571. package/dist/lib/window-interaction.d.ts.map +1 -0
  572. package/dist/lib/window-interaction.js +82 -0
  573. package/dist/lib/zone-quantities.js +1 -1
  574. package/dist/material-kinds.d.ts +1 -1
  575. package/dist/material-kinds.d.ts.map +1 -1
  576. package/dist/material-kinds.js +1 -0
  577. package/dist/material-library.d.ts +15 -0
  578. package/dist/material-library.d.ts.map +1 -1
  579. package/dist/material-library.js +458 -59
  580. package/dist/node-slots/column.d.ts +5 -0
  581. package/dist/node-slots/column.d.ts.map +1 -1
  582. package/dist/node-slots/column.js +10 -0
  583. package/dist/node-slots/door.d.ts +3 -4
  584. package/dist/node-slots/door.d.ts.map +1 -1
  585. package/dist/node-slots/door.js +4 -3
  586. package/dist/node-slots/wall.d.ts.map +1 -1
  587. package/dist/node-slots/wall.js +21 -3
  588. package/dist/node-slots/window.d.ts +2 -2
  589. package/dist/node-slots/window.d.ts.map +1 -1
  590. package/dist/node-slots/window.js +6 -1
  591. package/dist/procedural-items/design.d.ts +8 -0
  592. package/dist/procedural-items/design.d.ts.map +1 -1
  593. package/dist/procedural-items/design.js +169 -21
  594. package/dist/procedural-items/motion-controller.d.ts +2 -0
  595. package/dist/procedural-items/motion-controller.d.ts.map +1 -1
  596. package/dist/procedural-items/motion-controller.js +2 -1
  597. package/dist/registry/index.d.ts +3 -3
  598. package/dist/registry/index.d.ts.map +1 -1
  599. package/dist/registry/index.js +2 -2
  600. package/dist/registry/mechanism.d.ts +4 -1
  601. package/dist/registry/mechanism.d.ts.map +1 -1
  602. package/dist/registry/mechanism.js +10 -0
  603. package/dist/registry/registry.d.ts +5 -0
  604. package/dist/registry/registry.d.ts.map +1 -1
  605. package/dist/registry/registry.js +10 -0
  606. package/dist/registry/types.d.ts +89 -23
  607. package/dist/registry/types.d.ts.map +1 -1
  608. package/dist/runtime/__fixtures__/live-scene.d.ts +14 -0
  609. package/dist/runtime/__fixtures__/live-scene.d.ts.map +1 -0
  610. package/dist/runtime/__fixtures__/live-scene.js +64 -0
  611. package/dist/runtime/apply.d.ts +42 -0
  612. package/dist/runtime/apply.d.ts.map +1 -0
  613. package/dist/runtime/apply.js +274 -0
  614. package/dist/runtime/dependencies.d.ts +97 -0
  615. package/dist/runtime/dependencies.d.ts.map +1 -0
  616. package/dist/runtime/dependencies.js +42 -0
  617. package/dist/runtime/ids.d.ts +11 -0
  618. package/dist/runtime/ids.d.ts.map +1 -0
  619. package/dist/runtime/ids.js +80 -0
  620. package/dist/runtime/index.d.ts +14 -0
  621. package/dist/runtime/index.d.ts.map +1 -0
  622. package/dist/runtime/index.js +11 -0
  623. package/dist/runtime/node-queries.d.ts +16 -0
  624. package/dist/runtime/node-queries.d.ts.map +1 -0
  625. package/dist/runtime/node-queries.js +30 -0
  626. package/dist/runtime/patch.d.ts +26 -0
  627. package/dist/runtime/patch.d.ts.map +1 -0
  628. package/dist/runtime/patch.js +165 -0
  629. package/dist/runtime/reader.d.ts +104 -0
  630. package/dist/runtime/reader.d.ts.map +1 -0
  631. package/dist/runtime/reader.js +455 -0
  632. package/dist/runtime/scene-runtime.d.ts +112 -0
  633. package/dist/runtime/scene-runtime.d.ts.map +1 -0
  634. package/dist/runtime/scene-runtime.js +302 -0
  635. package/dist/schema/__fixtures__/node-fixtures.d.ts.map +1 -1
  636. package/dist/schema/__fixtures__/node-fixtures.js +1 -0
  637. package/dist/schema/assembly.d.ts +3 -0
  638. package/dist/schema/assembly.d.ts.map +1 -1
  639. package/dist/schema/assembly.js +13 -0
  640. package/dist/schema/asset-url.d.ts +37 -2
  641. package/dist/schema/asset-url.d.ts.map +1 -1
  642. package/dist/schema/asset-url.js +80 -11
  643. package/dist/schema/base.d.ts +8 -0
  644. package/dist/schema/base.d.ts.map +1 -1
  645. package/dist/schema/base.js +19 -1
  646. package/dist/schema/build-up.d.ts +247 -0
  647. package/dist/schema/build-up.d.ts.map +1 -0
  648. package/dist/schema/build-up.js +83 -0
  649. package/dist/schema/geometry-source.d.ts +80 -0
  650. package/dist/schema/geometry-source.d.ts.map +1 -1
  651. package/dist/schema/geometry-source.js +38 -0
  652. package/dist/schema/index.d.ts +12 -7
  653. package/dist/schema/index.d.ts.map +1 -1
  654. package/dist/schema/index.js +12 -6
  655. package/dist/schema/material.d.ts +5 -0
  656. package/dist/schema/material.d.ts.map +1 -1
  657. package/dist/schema/material.js +6 -0
  658. package/dist/schema/nodes/beam.d.ts +264 -0
  659. package/dist/schema/nodes/beam.d.ts.map +1 -0
  660. package/dist/schema/nodes/beam.js +139 -0
  661. package/dist/schema/nodes/box-vent.d.ts +5 -0
  662. package/dist/schema/nodes/box-vent.d.ts.map +1 -1
  663. package/dist/schema/nodes/cabinet.d.ts +10 -0
  664. package/dist/schema/nodes/cabinet.d.ts.map +1 -1
  665. package/dist/schema/nodes/ceiling.d.ts +48 -0
  666. package/dist/schema/nodes/ceiling.d.ts.map +1 -1
  667. package/dist/schema/nodes/ceiling.js +5 -0
  668. package/dist/schema/nodes/chimney.d.ts +10 -0
  669. package/dist/schema/nodes/chimney.d.ts.map +1 -1
  670. package/dist/schema/nodes/column.d.ts +42 -0
  671. package/dist/schema/nodes/column.d.ts.map +1 -1
  672. package/dist/schema/nodes/column.js +11 -1
  673. package/dist/schema/nodes/cupola.d.ts +5 -0
  674. package/dist/schema/nodes/cupola.d.ts.map +1 -1
  675. package/dist/schema/nodes/door.d.ts +54 -3
  676. package/dist/schema/nodes/door.d.ts.map +1 -1
  677. package/dist/schema/nodes/door.js +41 -7
  678. package/dist/schema/nodes/dormer.d.ts +20 -0
  679. package/dist/schema/nodes/dormer.d.ts.map +1 -1
  680. package/dist/schema/nodes/downspout.d.ts +5 -0
  681. package/dist/schema/nodes/downspout.d.ts.map +1 -1
  682. package/dist/schema/nodes/elevator.d.ts +5 -0
  683. package/dist/schema/nodes/elevator.d.ts.map +1 -1
  684. package/dist/schema/nodes/eyebrow-vent.d.ts +5 -0
  685. package/dist/schema/nodes/eyebrow-vent.d.ts.map +1 -1
  686. package/dist/schema/nodes/fence.d.ts +5 -0
  687. package/dist/schema/nodes/fence.d.ts.map +1 -1
  688. package/dist/schema/nodes/guide.d.ts +14 -0
  689. package/dist/schema/nodes/guide.d.ts.map +1 -1
  690. package/dist/schema/nodes/guide.js +2 -0
  691. package/dist/schema/nodes/gutter.d.ts +5 -0
  692. package/dist/schema/nodes/gutter.d.ts.map +1 -1
  693. package/dist/schema/nodes/item.d.ts +71 -0
  694. package/dist/schema/nodes/item.d.ts.map +1 -1
  695. package/dist/schema/nodes/item.js +5 -1
  696. package/dist/schema/nodes/level.d.ts +1 -1
  697. package/dist/schema/nodes/level.d.ts.map +1 -1
  698. package/dist/schema/nodes/opening-types.d.ts +13 -0
  699. package/dist/schema/nodes/opening-types.d.ts.map +1 -1
  700. package/dist/schema/nodes/opening-types.js +8 -1
  701. package/dist/schema/nodes/railing-wall.d.ts +112 -0
  702. package/dist/schema/nodes/railing-wall.d.ts.map +1 -0
  703. package/dist/schema/nodes/railing-wall.js +160 -0
  704. package/dist/schema/nodes/ridge-vent.d.ts +5 -0
  705. package/dist/schema/nodes/ridge-vent.d.ts.map +1 -1
  706. package/dist/schema/nodes/roof-segment-resize.d.ts.map +1 -1
  707. package/dist/schema/nodes/roof-segment-resize.js +2 -2
  708. package/dist/schema/nodes/roof-segment.d.ts +226 -1
  709. package/dist/schema/nodes/roof-segment.d.ts.map +1 -1
  710. package/dist/schema/nodes/roof-segment.js +97 -12
  711. package/dist/schema/nodes/roof-types.d.ts +11 -0
  712. package/dist/schema/nodes/roof-types.d.ts.map +1 -1
  713. package/dist/schema/nodes/roof-types.js +6 -0
  714. package/dist/schema/nodes/roof.d.ts +60 -0
  715. package/dist/schema/nodes/roof.d.ts.map +1 -1
  716. package/dist/schema/nodes/roof.js +4 -0
  717. package/dist/schema/nodes/shelf.d.ts +5 -0
  718. package/dist/schema/nodes/shelf.d.ts.map +1 -1
  719. package/dist/schema/nodes/site.d.ts +80 -0
  720. package/dist/schema/nodes/site.d.ts.map +1 -1
  721. package/dist/schema/nodes/site.js +7 -0
  722. package/dist/schema/nodes/skylight.d.ts +10 -0
  723. package/dist/schema/nodes/skylight.d.ts.map +1 -1
  724. package/dist/schema/nodes/slab.d.ts +137 -0
  725. package/dist/schema/nodes/slab.d.ts.map +1 -1
  726. package/dist/schema/nodes/slab.js +3 -0
  727. package/dist/schema/nodes/solar-panel.d.ts +10 -0
  728. package/dist/schema/nodes/solar-panel.d.ts.map +1 -1
  729. package/dist/schema/nodes/stair-segment.d.ts +5 -0
  730. package/dist/schema/nodes/stair-segment.d.ts.map +1 -1
  731. package/dist/schema/nodes/stair-structure.d.ts +69 -0
  732. package/dist/schema/nodes/stair-structure.d.ts.map +1 -0
  733. package/dist/schema/nodes/stair-structure.js +39 -0
  734. package/dist/schema/nodes/stair.d.ts +46 -0
  735. package/dist/schema/nodes/stair.d.ts.map +1 -1
  736. package/dist/schema/nodes/stair.js +3 -0
  737. package/dist/schema/nodes/turbine-vent.d.ts +5 -0
  738. package/dist/schema/nodes/turbine-vent.d.ts.map +1 -1
  739. package/dist/schema/nodes/wall.d.ts +136 -2
  740. package/dist/schema/nodes/wall.d.ts.map +1 -1
  741. package/dist/schema/nodes/wall.js +48 -6
  742. package/dist/schema/nodes/window.d.ts +66 -1
  743. package/dist/schema/nodes/window.d.ts.map +1 -1
  744. package/dist/schema/nodes/window.js +50 -5
  745. package/dist/schema/nodes/zone.d.ts +68 -0
  746. package/dist/schema/nodes/zone.d.ts.map +1 -1
  747. package/dist/schema/nodes/zone.js +32 -0
  748. package/dist/schema/scene-material.d.ts +5 -0
  749. package/dist/schema/scene-material.d.ts.map +1 -1
  750. package/dist/schema/types.d.ts +1080 -4
  751. package/dist/schema/types.d.ts.map +1 -1
  752. package/dist/schema/types.js +2 -0
  753. package/dist/schema/wall-type.d.ts +95 -0
  754. package/dist/schema/wall-type.d.ts.map +1 -0
  755. package/dist/schema/wall-type.js +32 -0
  756. package/dist/services/index.d.ts +1 -1
  757. package/dist/services/index.d.ts.map +1 -1
  758. package/dist/services/index.js +1 -1
  759. package/dist/services/movement.d.ts +7 -0
  760. package/dist/services/movement.d.ts.map +1 -1
  761. package/dist/services/movement.js +13 -0
  762. package/dist/services/port-connectivity.d.ts +15 -6
  763. package/dist/services/port-connectivity.d.ts.map +1 -1
  764. package/dist/services/port-connectivity.js +83 -17
  765. package/dist/services/roof-bearing.d.ts.map +1 -1
  766. package/dist/services/roof-bearing.js +8 -4
  767. package/dist/services/roof-level.d.ts.map +1 -1
  768. package/dist/services/roof-level.js +4 -3
  769. package/dist/services/roof-move.d.ts.map +1 -1
  770. package/dist/services/roof-move.js +13 -7
  771. package/dist/services/storey.d.ts +6 -1
  772. package/dist/services/storey.d.ts.map +1 -1
  773. package/dist/services/storey.js +24 -10
  774. package/dist/spatial/usage-field/beds.d.ts +51 -0
  775. package/dist/spatial/usage-field/beds.d.ts.map +1 -0
  776. package/dist/spatial/usage-field/beds.js +346 -0
  777. package/dist/spatial/usage-field/blocked.d.ts +28 -0
  778. package/dist/spatial/usage-field/blocked.d.ts.map +1 -0
  779. package/dist/spatial/usage-field/blocked.js +185 -0
  780. package/dist/spatial/usage-field/boxes.d.ts +17 -0
  781. package/dist/spatial/usage-field/boxes.d.ts.map +1 -0
  782. package/dist/spatial/usage-field/boxes.js +82 -0
  783. package/dist/spatial/usage-field/catalogue-shapes.d.ts +3 -0
  784. package/dist/spatial/usage-field/catalogue-shapes.d.ts.map +1 -0
  785. package/dist/spatial/usage-field/catalogue-shapes.js +257 -0
  786. package/dist/spatial/usage-field/catalogue.d.ts +6 -0
  787. package/dist/spatial/usage-field/catalogue.d.ts.map +1 -0
  788. package/dist/spatial/usage-field/catalogue.js +11 -0
  789. package/dist/spatial/usage-field/clash.d.ts +40 -0
  790. package/dist/spatial/usage-field/clash.d.ts.map +1 -0
  791. package/dist/spatial/usage-field/clash.js +187 -0
  792. package/dist/spatial/usage-field/door-stairs.d.ts +18 -0
  793. package/dist/spatial/usage-field/door-stairs.d.ts.map +1 -0
  794. package/dist/spatial/usage-field/door-stairs.js +129 -0
  795. package/dist/spatial/usage-field/entry-way.d.ts +14 -0
  796. package/dist/spatial/usage-field/entry-way.d.ts.map +1 -0
  797. package/dist/spatial/usage-field/entry-way.js +219 -0
  798. package/dist/spatial/usage-field/fences.d.ts +18 -0
  799. package/dist/spatial/usage-field/fences.d.ts.map +1 -0
  800. package/dist/spatial/usage-field/fences.js +253 -0
  801. package/dist/spatial/usage-field/field.d.ts +44 -0
  802. package/dist/spatial/usage-field/field.d.ts.map +1 -0
  803. package/dist/spatial/usage-field/field.js +145 -0
  804. package/dist/spatial/usage-field/findings.d.ts +76 -0
  805. package/dist/spatial/usage-field/findings.d.ts.map +1 -0
  806. package/dist/spatial/usage-field/findings.js +252 -0
  807. package/dist/spatial/usage-field/fixtures.d.ts +18 -0
  808. package/dist/spatial/usage-field/fixtures.d.ts.map +1 -0
  809. package/dist/spatial/usage-field/fixtures.js +160 -0
  810. package/dist/spatial/usage-field/flag.d.ts +10 -0
  811. package/dist/spatial/usage-field/flag.d.ts.map +1 -0
  812. package/dist/spatial/usage-field/flag.js +12 -0
  813. package/dist/spatial/usage-field/floors.d.ts +13 -0
  814. package/dist/spatial/usage-field/floors.d.ts.map +1 -0
  815. package/dist/spatial/usage-field/floors.js +36 -0
  816. package/dist/spatial/usage-field/index.d.ts +7 -0
  817. package/dist/spatial/usage-field/index.d.ts.map +1 -0
  818. package/dist/spatial/usage-field/index.js +5 -0
  819. package/dist/spatial/usage-field/items.d.ts +38 -0
  820. package/dist/spatial/usage-field/items.d.ts.map +1 -0
  821. package/dist/spatial/usage-field/items.js +261 -0
  822. package/dist/spatial/usage-field/labels.d.ts +8 -0
  823. package/dist/spatial/usage-field/labels.d.ts.map +1 -0
  824. package/dist/spatial/usage-field/labels.js +14 -0
  825. package/dist/spatial/usage-field/level-field.d.ts +47 -0
  826. package/dist/spatial/usage-field/level-field.d.ts.map +1 -0
  827. package/dist/spatial/usage-field/level-field.js +96 -0
  828. package/dist/spatial/usage-field/measure.d.ts +324 -0
  829. package/dist/spatial/usage-field/measure.d.ts.map +1 -0
  830. package/dist/spatial/usage-field/measure.js +458 -0
  831. package/dist/spatial/usage-field/obstacles.d.ts +63 -0
  832. package/dist/spatial/usage-field/obstacles.d.ts.map +1 -0
  833. package/dist/spatial/usage-field/obstacles.js +215 -0
  834. package/dist/spatial/usage-field/openings.d.ts +12 -0
  835. package/dist/spatial/usage-field/openings.d.ts.map +1 -0
  836. package/dist/spatial/usage-field/openings.js +162 -0
  837. package/dist/spatial/usage-field/path.d.ts +48 -0
  838. package/dist/spatial/usage-field/path.d.ts.map +1 -0
  839. package/dist/spatial/usage-field/path.js +354 -0
  840. package/dist/spatial/usage-field/pieces.d.ts +27 -0
  841. package/dist/spatial/usage-field/pieces.d.ts.map +1 -0
  842. package/dist/spatial/usage-field/pieces.js +89 -0
  843. package/dist/spatial/usage-field/shapes.d.ts +18 -0
  844. package/dist/spatial/usage-field/shapes.d.ts.map +1 -0
  845. package/dist/spatial/usage-field/shapes.js +92 -0
  846. package/dist/spatial/usage-field/stairs.d.ts +23 -0
  847. package/dist/spatial/usage-field/stairs.d.ts.map +1 -0
  848. package/dist/spatial/usage-field/stairs.js +163 -0
  849. package/dist/spatial/usage-field/support.d.ts +24 -0
  850. package/dist/spatial/usage-field/support.d.ts.map +1 -0
  851. package/dist/spatial/usage-field/support.js +46 -0
  852. package/dist/spatial/usage-field/swings.d.ts +847 -0
  853. package/dist/spatial/usage-field/swings.d.ts.map +1 -0
  854. package/dist/spatial/usage-field/swings.js +427 -0
  855. package/dist/spatial/usage-field/types.d.ts +65 -0
  856. package/dist/spatial/usage-field/types.d.ts.map +1 -0
  857. package/dist/spatial/usage-field/types.js +1 -0
  858. package/dist/spatial/usage-field/walls.d.ts +1059 -0
  859. package/dist/spatial/usage-field/walls.d.ts.map +1 -0
  860. package/dist/spatial/usage-field/walls.js +180 -0
  861. package/dist/spatial/usage-field/way-in.d.ts +26 -0
  862. package/dist/spatial/usage-field/way-in.d.ts.map +1 -0
  863. package/dist/spatial/usage-field/way-in.js +113 -0
  864. package/dist/store/actions/node-actions.d.ts +1467 -664
  865. package/dist/store/actions/node-actions.d.ts.map +1 -1
  866. package/dist/store/actions/node-actions.js +65 -21
  867. package/dist/store/derived-node-guard.d.ts +10 -2
  868. package/dist/store/derived-node-guard.d.ts.map +1 -1
  869. package/dist/store/derived-node-guard.js +33 -12
  870. package/dist/store/document-settling.d.ts +9 -0
  871. package/dist/store/document-settling.d.ts.map +1 -0
  872. package/dist/store/document-settling.js +22 -0
  873. package/dist/store/history-control.d.ts +19 -10
  874. package/dist/store/history-control.d.ts.map +1 -1
  875. package/dist/store/history-control.js +176 -127
  876. package/dist/store/history-drafts.d.ts.map +1 -1
  877. package/dist/store/history-drafts.js +21 -17
  878. package/dist/store/live-previews.d.ts +9 -0
  879. package/dist/store/live-previews.d.ts.map +1 -0
  880. package/dist/store/live-previews.js +19 -0
  881. package/dist/store/scene-annotations.d.ts +5409 -3807
  882. package/dist/store/scene-annotations.d.ts.map +1 -1
  883. package/dist/store/scene-environment.d.ts +33 -0
  884. package/dist/store/scene-environment.d.ts.map +1 -0
  885. package/dist/store/scene-environment.js +54 -0
  886. package/dist/store/scene-hydration.d.ts.map +1 -1
  887. package/dist/store/scene-hydration.js +41 -30
  888. package/dist/store/use-interactive.d.ts +9 -3
  889. package/dist/store/use-interactive.d.ts.map +1 -1
  890. package/dist/store/use-interactive.js +43 -11
  891. package/dist/store/use-live-node-overrides.d.ts.map +1 -1
  892. package/dist/store/use-live-node-overrides.js +3 -0
  893. package/dist/store/use-scene.d.ts +25 -0
  894. package/dist/store/use-scene.d.ts.map +1 -1
  895. package/dist/store/use-scene.js +408 -336
  896. package/dist/systems/document-reconcile.d.ts +40 -0
  897. package/dist/systems/document-reconcile.d.ts.map +1 -0
  898. package/dist/systems/document-reconcile.js +159 -0
  899. package/dist/systems/elevator/elevator-geometry.d.ts +25 -0
  900. package/dist/systems/elevator/elevator-geometry.d.ts.map +1 -1
  901. package/dist/systems/elevator/elevator-geometry.js +40 -8
  902. package/dist/systems/elevator/elevator-opening-sync.d.ts.map +1 -1
  903. package/dist/systems/elevator/elevator-opening-sync.js +4 -35
  904. package/dist/systems/elevator/elevator-opening-system.d.ts.map +1 -1
  905. package/dist/systems/elevator/elevator-opening-system.js +9 -24
  906. package/dist/systems/elevator/elevator-runtime.d.ts.map +1 -1
  907. package/dist/systems/elevator/elevator-runtime.js +95 -18
  908. package/dist/systems/elevator/elevator-service.d.ts.map +1 -1
  909. package/dist/systems/elevator/elevator-service.js +24 -4
  910. package/dist/systems/fence/guard-layout.d.ts +69 -0
  911. package/dist/systems/fence/guard-layout.d.ts.map +1 -0
  912. package/dist/systems/fence/guard-layout.js +194 -0
  913. package/dist/systems/owned-floor-openings.d.ts +13 -1
  914. package/dist/systems/owned-floor-openings.d.ts.map +1 -1
  915. package/dist/systems/owned-floor-openings.js +58 -2
  916. package/dist/systems/reconcile-owned-floor-openings.d.ts +3 -1
  917. package/dist/systems/reconcile-owned-floor-openings.d.ts.map +1 -1
  918. package/dist/systems/reconcile-owned-floor-openings.js +4 -4
  919. package/dist/systems/roof/roof-elevation-system.d.ts.map +1 -1
  920. package/dist/systems/roof/roof-elevation-system.js +8 -26
  921. package/dist/systems/roof/roof-elevation.d.ts +16 -1
  922. package/dist/systems/roof/roof-elevation.d.ts.map +1 -1
  923. package/dist/systems/roof/roof-elevation.js +87 -5
  924. package/dist/systems/roof/roof-footprint.d.ts +42 -1
  925. package/dist/systems/roof/roof-footprint.d.ts.map +1 -1
  926. package/dist/systems/roof/roof-footprint.js +160 -4
  927. package/dist/systems/slab/__fixtures__/floor-step.d.ts +2714 -1481
  928. package/dist/systems/slab/__fixtures__/floor-step.d.ts.map +1 -1
  929. package/dist/systems/slab/__fixtures__/raised-room.d.ts +3815 -2565
  930. package/dist/systems/slab/__fixtures__/raised-room.d.ts.map +1 -1
  931. package/dist/systems/stair/stair-clearance.d.ts +7 -0
  932. package/dist/systems/stair/stair-clearance.d.ts.map +1 -1
  933. package/dist/systems/stair/stair-clearance.js +31 -11
  934. package/dist/systems/stair/stair-construction.d.ts +8 -3
  935. package/dist/systems/stair/stair-construction.d.ts.map +1 -1
  936. package/dist/systems/stair/stair-construction.js +55 -4
  937. package/dist/systems/stair/stair-opening-preview.d.ts +1630 -829
  938. package/dist/systems/stair/stair-opening-preview.d.ts.map +1 -1
  939. package/dist/systems/stair/stair-opening-system.d.ts.map +1 -1
  940. package/dist/systems/stair/stair-opening-system.js +18 -34
  941. package/dist/systems/stair/stair-presets.d.ts +36 -0
  942. package/dist/systems/stair/stair-presets.d.ts.map +1 -1
  943. package/dist/systems/stair/stair-rise-query.d.ts.map +1 -1
  944. package/dist/systems/stair/stair-rise-query.js +3 -2
  945. package/dist/systems/stair/stair-rise.d.ts.map +1 -1
  946. package/dist/systems/stair/stair-rise.js +6 -0
  947. package/dist/systems/stair/stair-sizing.d.ts +42 -11
  948. package/dist/systems/stair/stair-sizing.d.ts.map +1 -1
  949. package/dist/systems/stair/stair-sizing.js +10 -1
  950. package/dist/systems/stair/stair-structure.d.ts +277 -0
  951. package/dist/systems/stair/stair-structure.d.ts.map +1 -0
  952. package/dist/systems/stair/stair-structure.js +496 -0
  953. package/dist/systems/wall/wall-assembly.d.ts +84 -6
  954. package/dist/systems/wall/wall-assembly.d.ts.map +1 -1
  955. package/dist/systems/wall/wall-assembly.js +204 -5
  956. package/dist/systems/wall/wall-curve.d.ts +10 -0
  957. package/dist/systems/wall/wall-curve.d.ts.map +1 -1
  958. package/dist/systems/wall/wall-curve.js +38 -0
  959. package/dist/systems/wall/wall-finish.d.ts +38 -2
  960. package/dist/systems/wall/wall-finish.d.ts.map +1 -1
  961. package/dist/systems/wall/wall-finish.js +70 -2
  962. package/dist/systems/wall/wall-footprint.js +2 -2
  963. package/dist/systems/wall/wall-frame.d.ts.map +1 -1
  964. package/dist/systems/wall/wall-frame.js +8 -0
  965. package/dist/systems/wall/wall-merge.d.ts +9 -1
  966. package/dist/systems/wall/wall-merge.d.ts.map +1 -1
  967. package/dist/systems/wall/wall-merge.js +66 -13
  968. package/dist/systems/wall/wall-mitering.d.ts +1 -0
  969. package/dist/systems/wall/wall-mitering.d.ts.map +1 -1
  970. package/dist/systems/wall/wall-mitering.js +152 -52
  971. package/dist/systems/wall/wall-move.d.ts +23 -6
  972. package/dist/systems/wall/wall-move.d.ts.map +1 -1
  973. package/dist/systems/wall/wall-move.js +65 -0
  974. package/dist/systems/wall/wall-top.d.ts +11 -4
  975. package/dist/systems/wall/wall-top.d.ts.map +1 -1
  976. package/dist/systems/wall/wall-top.js +28 -7
  977. package/dist/systems/wall/wall-topology.d.ts +32 -1
  978. package/dist/systems/wall/wall-topology.d.ts.map +1 -1
  979. package/dist/systems/wall/wall-topology.js +137 -11
  980. package/dist/systems/wall/wall-trim-profiles.d.ts +12 -0
  981. package/dist/systems/wall/wall-trim-profiles.d.ts.map +1 -0
  982. package/dist/systems/wall/wall-trim-profiles.js +191 -0
  983. package/dist/utils/ensure-scene-openings.d.ts +4663 -3061
  984. package/dist/utils/ensure-scene-openings.d.ts.map +1 -1
  985. package/dist/utils/floor-piece-adoption.d.ts +5 -0
  986. package/dist/utils/floor-piece-adoption.d.ts.map +1 -1
  987. package/dist/utils/floor-plate-migration.d.ts +3372 -2571
  988. package/dist/utils/floor-plate-migration.d.ts.map +1 -1
  989. package/dist/utils/measurement-format.d.ts +27 -0
  990. package/dist/utils/measurement-format.d.ts.map +1 -0
  991. package/dist/utils/measurement-format.js +143 -0
  992. package/dist/utils/owned-floor-opening-migration.d.ts +1629 -828
  993. package/dist/utils/owned-floor-opening-migration.d.ts.map +1 -1
  994. package/dist/utils/reconcile-structure-on-load.d.ts +2308 -1507
  995. package/dist/utils/reconcile-structure-on-load.d.ts.map +1 -1
  996. package/dist/utils/structure-id.d.ts.map +1 -1
  997. package/dist/utils/structure-id.js +4 -0
  998. package/dist/validation/validate-build-json.d.ts.map +1 -1
  999. package/dist/validation/validate-build-json.js +3 -1
  1000. package/package.json +22 -5
  1001. package/dist/lib/generic-foundation.d.ts +0 -40
  1002. package/dist/lib/generic-foundation.d.ts.map +0 -1
  1003. package/dist/lib/generic-foundation.js +0 -200
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-profile.d.ts","sourceRoot":"","sources":["../../src/building/code-profile.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,208 @@
1
+ /**
2
+ * The thresholds a building code sets, one table, every row with its unit, its citation and whether the
3
+ * text behind it was read. A check that applies a code reads its numbers here, never from a literal.
4
+ *
5
+ * Which code applies is the project's to say: `site.metadata.codeProfile`. A scene that does not say has
6
+ * no jurisdiction, and a code-specific check then reports information that names the code it used, never
7
+ * a warning (the listing houses are Australian designs; the US IRC is not what they were drawn to). These are usage indicators, not a compliance check.
8
+ */
9
+ export const CODE_PROFILE_IDS = ['irc-2021'];
10
+ const inches = (n) => n * 0.0254;
11
+ const feet = (n) => n * 0.3048;
12
+ const R311_READ = 'read in the Minnesota (2020) and Colorado (2021) residential codes';
13
+ /** The US International Residential Code, 2021. */
14
+ export const IRC_2021 = {
15
+ stairWidth: {
16
+ value: inches(36),
17
+ unit: 'm',
18
+ section: 'IRC R311.7.1',
19
+ cite: `IRC R311.7.1, stairway clear width above the handrail (${R311_READ})`,
20
+ source: 'code text',
21
+ },
22
+ handrailProjection: {
23
+ value: inches(4.5),
24
+ unit: 'm',
25
+ section: 'IRC R311.7.1',
26
+ cite: `IRC R311.7.1, a handrail projects at most this far into the stairway (${R311_READ})`,
27
+ source: 'code text',
28
+ },
29
+ stairHeadroom: {
30
+ value: inches(80),
31
+ unit: 'm',
32
+ section: 'IRC R311.7.2',
33
+ cite: `IRC R311.7.2, 6 ft 8 in from the line of the nosings (${R311_READ})`,
34
+ source: 'code text',
35
+ },
36
+ stairLanding: {
37
+ value: inches(36),
38
+ unit: 'm',
39
+ section: 'IRC R311.7.6',
40
+ cite: 'IRC R311.7.6, landing depth in the direction of travel on a straight run (read in the Colorado 2021 residential code)',
41
+ source: 'code text',
42
+ },
43
+ riserMax: {
44
+ value: inches(7.75),
45
+ unit: 'm',
46
+ section: 'IRC R311.7.5.1',
47
+ cite: 'IRC R311.7.5.1 riser height, as the Architect checker holds it; the section text was not read',
48
+ source: 'secondary source',
49
+ },
50
+ treadMin: {
51
+ value: inches(10),
52
+ unit: 'm',
53
+ section: 'IRC R311.7.5.2',
54
+ cite: 'IRC R311.7.5.2 tread depth, as the Architect checker holds it; the section text was not read',
55
+ source: 'secondary source',
56
+ },
57
+ hallWidth: {
58
+ value: inches(36),
59
+ unit: 'm',
60
+ section: 'IRC R311.6',
61
+ cite: 'IRC R311.6 hallway width, as the Architect checker holds it; the section text was not read',
62
+ source: 'secondary source',
63
+ },
64
+ hallComfortable: {
65
+ value: inches(42),
66
+ unit: 'm',
67
+ section: 'IRC R311.6',
68
+ cite: 'a comfortable hallway, as the Architect checker holds it (not a code row)',
69
+ source: 'secondary source',
70
+ },
71
+ exteriorDoorLanding: {
72
+ value: inches(36),
73
+ unit: 'm',
74
+ section: 'IRC R311.3',
75
+ cite: 'IRC R311.3, landing depth at an exterior door, as wide as the door (read in the Colorado 2021 residential code)',
76
+ appliesWhen: 'every-exterior-door',
77
+ source: 'code text',
78
+ },
79
+ doorThresholdDrop: {
80
+ value: inches(1.5),
81
+ unit: 'm',
82
+ section: 'IRC R311.7.6 / R311.3',
83
+ cite: 'IRC R311.7.6 (no top landing for an interior flight only if no door swings over the stairs) and R311.3.1 / R311.3.2 (a landing or floor at an exterior door is at most 1-1/2 in below the threshold, or 7-3/4 in where the door does not swing over it); read in the Colorado 2021 residential code',
84
+ source: 'code text',
85
+ },
86
+ habitableRoomArea: {
87
+ value: feet(70) * 0.3048,
88
+ unit: 'm2',
89
+ section: 'IRC R304.1',
90
+ cite: 'IRC R304.1, 70 sq ft (read in the Virginia 2021 residential code); kitchens are exempt',
91
+ source: 'code text',
92
+ },
93
+ habitableRoomDimension: {
94
+ value: feet(7),
95
+ unit: 'm',
96
+ section: 'IRC R304.2',
97
+ cite: 'IRC R304.2, 7 ft in any horizontal dimension (read in the Virginia 2021 residential code); kitchens are exempt',
98
+ source: 'code text',
99
+ },
100
+ ceilingHeight: {
101
+ value: feet(7),
102
+ unit: 'm',
103
+ section: 'IRC R305.1',
104
+ cite: 'IRC R305.1 (read in the Virginia 2021 residential code); a sloped ceiling needs half the floor at this height and none under 5 ft',
105
+ source: 'code text',
106
+ },
107
+ egressArea: {
108
+ value: 0.53,
109
+ unit: 'm2',
110
+ section: 'IRC R310.2.1',
111
+ cite: 'IRC R310.2.1, net clear opening 5.7 sq ft, kept at the 0.53 m2 the Architect checker uses; sizes read in city and county guides summarising the 2021 numbering',
112
+ source: 'secondary source',
113
+ },
114
+ egressSill: {
115
+ value: inches(44),
116
+ unit: 'm',
117
+ section: 'IRC R310.2.2',
118
+ cite: 'IRC R310.2.2 (2018 numbering, R310.2.3 in 2021), sill at most 44 in above the floor (read in the Texas 2018 residential code on UpCodes)',
119
+ source: 'code text',
120
+ },
121
+ toiletSideClear: {
122
+ value: inches(15),
123
+ unit: 'm',
124
+ section: 'IRC R307.1 / P2705.1',
125
+ cite: 'IRC R307.1 / P2705.1 and Figure R307.1: 15 in from the centre to a side wall, partition or vanity. The section text sends to the figure and holds no number; the figure was not read: a 2009 P2705.1 quote and a 2021 training site',
126
+ source: 'secondary source',
127
+ },
128
+ toiletFrontClear: {
129
+ value: inches(21),
130
+ unit: 'm',
131
+ section: 'IRC R307.1 / P2705.1',
132
+ cite: 'IRC R307.1 / P2705.1 and Figure R307.1: 21 in in front to any wall, fixture or door. The figure was not read: a 2009 P2705.1 quote and a 2021 training site',
133
+ source: 'secondary source',
134
+ },
135
+ lavatorySideClear: {
136
+ value: inches(15),
137
+ unit: 'm',
138
+ section: 'IRC R307.1 / P2705.1',
139
+ cite: 'IRC R307.1 / P2705.1 and Figure R307.1, as for a water closet; the figure was not read',
140
+ source: 'secondary source',
141
+ },
142
+ lavatoryFrontClear: {
143
+ value: inches(21),
144
+ unit: 'm',
145
+ section: 'IRC R307.1 / P2705.1',
146
+ cite: 'IRC R307.1 / P2705.1 and Figure R307.1, as for a water closet; the figure was not read',
147
+ source: 'secondary source',
148
+ },
149
+ showerFrontClear: {
150
+ value: inches(24),
151
+ unit: 'm',
152
+ section: 'IRC R307.1 / P2705.1',
153
+ cite: "in front of the shower opening, from the team designer's list; not found in the IRC text or in a 2021 guide (a guide gives 24 in as the Uniform Plumbing Code figure for a water closet)",
154
+ source: 'secondary source',
155
+ },
156
+ };
157
+ /**
158
+ * Numbers the usage checks borrow for what a person can do in a house: a clear passage, a door, a turning
159
+ * space, the edge a cane finds. They are not a code row and apply to every project whatever its jurisdiction
160
+ * (a usage indicator, not a compliance check); each says where the number comes from. The French figures were
161
+ * checked against the arrêté du 24 décembre 2015 (Légifrance); the ADA figures are as the checks held them.
162
+ */
163
+ export const USAGE_INDICATORS = {
164
+ passage: {
165
+ value: 0.9,
166
+ unit: 'm',
167
+ section: 'arrêté du 24 décembre 2015 art. 11 II, 36 in',
168
+ cite: 'clear width of a path in a house: 0,90 m, the French arrêté du 24 décembre 2015 art. 11 II (consolidated text in force on 27 October 2026, Légifrance); 36 in is the IRC figure for a hall',
169
+ source: 'code text',
170
+ },
171
+ doorClear: {
172
+ value: 0.8,
173
+ unit: 'm',
174
+ section: 'arrêté du 24 décembre 2015 art. 11 II (0,77 m clear), 32 in',
175
+ cite: 'clear width through an interior door: 32 in (the US figure, not read); the French arrêté du 24 décembre 2015 art. 11 II (consolidated text in force on 27 October 2026, Légifrance) asks 0,80 m nominal and 0,77 m clear, which is why a doorway is read at 0.80 m here and a pinch under it is told apart from a passage',
176
+ source: 'secondary source',
177
+ },
178
+ turning: {
179
+ value: 1.5,
180
+ unit: 'm',
181
+ section: 'arrêté du 24 décembre 2015 art. 13 and annexe 2; ADA 304.3',
182
+ cite: "wheelchair turning space, 1.50 m: an espace de manœuvre avec possibilité de demi-tour, Ø 1,50 m (annexe 2), in a bedroom and a salle d'eau, arrêté du 24 décembre 2015 art. 13 (consolidated text in force on 27 October 2026, Légifrance); ADA 304.3 not read",
183
+ source: 'code text',
184
+ },
185
+ };
186
+ export const CODE_PROFILES = {
187
+ 'irc-2021': { id: 'irc-2021', label: 'the US IRC 2021', thresholds: IRC_2021 },
188
+ };
189
+ /** Where a project says which code applies: `site.metadata.codeProfile`. */
190
+ export const CODE_PROFILE_KEY = 'codeProfile';
191
+ /**
192
+ * The profile the project names, or null: a scene that does not say has no jurisdiction. Nothing is
193
+ * guessed from an address, a state code (WA is a US and an Australian state) or the browser.
194
+ */
195
+ export function codeProfileOf(nodes) {
196
+ for (const node of Object.values(nodes)) {
197
+ if (node.type !== 'site')
198
+ continue;
199
+ const named = node.metadata?.[CODE_PROFILE_KEY];
200
+ if (typeof named === 'string' && CODE_PROFILE_IDS.includes(named))
201
+ return CODE_PROFILES[named];
202
+ }
203
+ return null;
204
+ }
205
+ /** What a profile holds for a threshold, or undefined: a rule the other codes' texts do not set has no row. */
206
+ export const thresholdOf = (profile, id) => profile.thresholds[id];
207
+ /** The IRC value of a threshold, for a checker that is a US checker by design (a host's own design checker). */
208
+ export const ircValue = (id) => IRC_2021[id].value;
@@ -33,8 +33,8 @@ export declare function cornerPartnerUpdates(nodes: Nodes, windowId: string, pat
33
33
  * The editor's Wrap the corner: a window within `CORNER_REACH_M` of a corner where exactly one other
34
34
  * wall ends is slid to the corner and joined to the window waiting there on that wall, adopted
35
35
  * (`mergeWindows`); with none waiting, it gets a partner on that wall, of its width (as far as the
36
- * wall allows), height, sill and type. `create` is the partner to add, if any; `updates` are the
37
- * windows that change, by id.
36
+ * wall allows), height, sill, type and casing, each face's casing on its side of the corner.
37
+ * `create` is the partner to add, if any; `updates` are the windows that change, by id.
38
38
  */
39
39
  export declare function wrapCorner(nodes: Nodes, windowId: string): {
40
40
  create: WindowNode | null;
@@ -1 +1 @@
1
- {"version":3,"file":"corner-window.d.ts","sourceRoot":"","sources":["../../src/building/corner-window.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,OAAO,EAAuB,UAAU,EAAE,MAAM,WAAW,CAAA;AAEzE,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,iBAAiB,CAAA;AAExB,KAAK,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AAC9C,KAAK,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAE7B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,KAAK,CAAA;IACb,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAA;IACf,4DAA4D;IAC5D,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1B,kGAAkG;IAClG,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAA;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB;aAqE9D,UAAU,EAAE;aACkB,CAAC,MAAM,EAAE,MAAM,CAAC;;EAGtD;AAaD,0GAA0G;AAC1G,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,GACzB,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAW5B;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,GACf;IAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;CAAE,CAqE7E;AAED,qEAAqE;AACrE,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAEhG;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,GACf,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAKrC;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAQ5B"}
1
+ {"version":3,"file":"corner-window.d.ts","sourceRoot":"","sources":["../../src/building/corner-window.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,OAAO,EAAuB,UAAU,EAAE,MAAM,WAAW,CAAA;AAEzE,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,iBAAiB,CAAA;AAExB,KAAK,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AAC9C,KAAK,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAE7B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,KAAK,CAAA;IACb,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAA;IACf,4DAA4D;IAC5D,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1B,kGAAkG;IAClG,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAA;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB;aAqE9D,UAAU,EAAE;aACkB,CAAC,MAAM,EAAE,MAAM,CAAC;;EAGtD;AAcD,0GAA0G;AAC1G,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,GACzB,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAW5B;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,GACf;IAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;CAAE,CA6E7E;AAED,qEAAqE;AACrE,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAEhG;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,GACf,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAKrC;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAQ5B"}
@@ -63,6 +63,7 @@ const SHARED = [
63
63
  'sill',
64
64
  'sillDepth',
65
65
  'sillThickness',
66
+ 'casingWidth',
66
67
  ];
67
68
  /** The partner's update for a change to one side of a corner window; null when nothing shared changed. */
68
69
  export function cornerPartnerUpdates(nodes, windowId, patch) {
@@ -86,8 +87,8 @@ export function cornerPartnerUpdates(nodes, windowId, patch) {
86
87
  * The editor's Wrap the corner: a window within `CORNER_REACH_M` of a corner where exactly one other
87
88
  * wall ends is slid to the corner and joined to the window waiting there on that wall, adopted
88
89
  * (`mergeWindows`); with none waiting, it gets a partner on that wall, of its width (as far as the
89
- * wall allows), height, sill and type. `create` is the partner to add, if any; `updates` are the
90
- * windows that change, by id.
90
+ * wall allows), height, sill, type and casing, each face's casing on its side of the corner.
91
+ * `create` is the partner to add, if any; `updates` are the windows that change, by id.
91
92
  */
92
93
  export function wrapCorner(nodes, windowId) {
93
94
  const window = nodes[windowId];
@@ -130,11 +131,19 @@ export function wrapCorner(nodes, windowId) {
130
131
  }).node;
131
132
  const post = fusesAtCorner(window) ? 'none' : 'post';
132
133
  const slidTo = end === 'start' ? window.width / 2 : wallLengthOf(wall) - window.width / 2;
134
+ // Casing is kept per wall face. A wall running into the corner and one running on out of it
135
+ // have their `a` faces on the same side of it; two meeting end to end or start to start have
136
+ // them on opposite sides, so the partner takes the window's faces the other way round.
137
+ const swapFaces = end === otherEnd;
133
138
  return {
134
139
  create: {
135
140
  ...partner,
141
+ frameThickness: window.frameThickness,
136
142
  columnRatios: window.columnRatios,
137
143
  rowRatios: window.rowRatios,
144
+ casingWidth: window.casingWidth,
145
+ casingFaceA: swapFaces ? window.casingFaceB : window.casingFaceA,
146
+ casingFaceB: swapFaces ? window.casingFaceA : window.casingFaceB,
138
147
  corner: { end: otherEnd, partnerId: window.id, post },
139
148
  },
140
149
  updates: {
@@ -1,5 +1,6 @@
1
1
  import type { DoorNode } from '../schema/index.js';
2
2
  import { type DoorType } from '../schema/nodes/opening-types.js';
3
+ export declare const NEW_DOOR_FRAME_THICKNESS = 0.02;
3
4
  /** A door type's own size: the door panel's Type row sets it, and add_door takes it when none is given. */
4
5
  export declare const DOOR_TYPE_SIZES: Record<DoorType, {
5
6
  width: number;
@@ -1 +1 @@
1
- {"version":3,"file":"door-types.d.ts","sourceRoot":"","sources":["../../src/building/door-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAe,MAAM,WAAW,CAAA;AACtD,OAAO,EAAE,KAAK,QAAQ,EAAuB,MAAM,+BAA+B,CAAA;AAGlF,2GAA2G;AAC3G,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,QAAQ,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAW/E,CAAA;AAuCD,KAAK,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,GAAG,gBAAgB,GAAG,kBAAkB,CAAC,CAAC,CAAA;AAEnG;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,CAuFvF;AAcD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAUhF"}
1
+ {"version":3,"file":"door-types.d.ts","sourceRoot":"","sources":["../../src/building/door-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAe,MAAM,WAAW,CAAA;AACtD,OAAO,EAAE,KAAK,QAAQ,EAAuB,MAAM,+BAA+B,CAAA;AAIlF,eAAO,MAAM,wBAAwB,OAAO,CAAA;AAE5C,2GAA2G;AAC3G,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,QAAQ,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAW/E,CAAA;AAuCD,KAAK,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,GAAG,gBAAgB,GAAG,kBAAkB,CAAC,CAAC,CAAA;AAEnG;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,CAuFvF;AAcD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAUhF"}
@@ -1,5 +1,7 @@
1
1
  import { defaultDoorSegments } from '../schema/nodes/opening-types.js';
2
2
  import { doorStyleLook, doorStylesOf } from './opening-style-presets.js';
3
+ // The schema keeps 0.05 m for saved doors that omit the field (E-003).
4
+ export const NEW_DOOR_FRAME_THICKNESS = 0.02;
3
5
  /** A door type's own size: the door panel's Type row sets it, and add_door takes it when none is given. */
4
6
  export const DOOR_TYPE_SIZES = {
5
7
  hinged: { width: 0.9, height: 2.1 },
@@ -1 +1 @@
1
- {"version":3,"file":"floor-item-fit.d.ts","sourceRoot":"","sources":["../../src/building/floor-item-fit.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,WAAW,EAGjB,MAAM,oCAAoC,CAAA;AAG3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAG3D,MAAM,MAAM,aAAa,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAEtF,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,IAAI,EAAE,aAAa,CAAA;CAAE,GACnD;IACE,IAAI,EAAE,aAAa,CAAA;IACnB,IAAI,CAAC,EAAE,aAAa,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,oEAAoE;IACpE,SAAS,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAA;CAC1D,CAAA;AAEL;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE;IACJ,OAAO,EAAE,MAAM,CAAA;IACf,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAA;IACzC,mEAAmE;IACnE,KAAK,CAAC,EAAE,WAAW,EAAE,CAAA;CACtB,GACA,eAAe,GAAG,IAAI,CA0CxB"}
1
+ {"version":3,"file":"floor-item-fit.d.ts","sourceRoot":"","sources":["../../src/building/floor-item-fit.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,WAAW,EAGjB,MAAM,oCAAoC,CAAA;AAG3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAI3D,MAAM,MAAM,aAAa,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAEtF,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,IAAI,EAAE,aAAa,CAAA;CAAE,GACnD;IACE,IAAI,EAAE,aAAa,CAAA;IACnB,IAAI,CAAC,EAAE,aAAa,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,oEAAoE;IACpE,SAAS,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAA;CAC1D,CAAA;AAEL;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE;IACJ,OAAO,EAAE,MAAM,CAAA;IACf,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAA;IACzC,mEAAmE;IACnE,KAAK,CAAC,EAAE,WAAW,EAAE,CAAA;CACtB,GACA,eAAe,GAAG,IAAI,CAsCxB"}
@@ -1,6 +1,7 @@
1
1
  import { collectDoorKeepouts, itemBlocksDoorKeepout, itemPlanAabb, } from '../agent-operations/door-clearance.js';
2
2
  import { findValidPlacement } from '../agent-operations/layout-clearance.js';
3
3
  import { pointInPolygon, polygonBounds } from '../agent-operations/plan-geometry.js';
4
+ import { queryNodes } from '../runtime/node-queries.js';
4
5
  /**
5
6
  * Whether a floor item fits where it stands. An item its room cannot hold in any turn, or one
6
7
  * standing in the space a door needs (as verify_scene's blocked-door check sees it), does not fit.
@@ -8,10 +9,7 @@ import { pointInPolygon, polygonBounds } from '../agent-operations/plan-geometry
8
9
  * table and a bed on its rug overlap by design.
9
10
  */
10
11
  export function floorItemFit(nodes, item) {
11
- const zone = Object.values(nodes).find((node) => node.type === 'zone' &&
12
- node.parentId === item.levelId &&
13
- node.polygon.length >= 3 &&
14
- pointInPolygon([item.x, item.z], node.polygon));
12
+ const zone = queryNodes(nodes, { type: 'zone', parentId: item.levelId }).find((node) => node.polygon.length >= 3 && pointInPolygon([item.x, item.z], node.polygon));
15
13
  const bounds = zone ? polygonBounds(zone.polygon) : undefined;
16
14
  const room = zone &&
17
15
  bounds && {
@@ -2,9 +2,7 @@ import type { AnyNode, AnyNodeId } from '../schema/index.js';
2
2
  /**
3
3
  * Making `levelId` the building's ground floor, as the level panel's "Set as ground floor" and the
4
4
  * agent's `set_ground_level` do: the building names it (`groundLevelId`), is seated so that level's
5
- * floor datum, the top of the foundation, stands over grade as the building's foundation
6
- * construction seats it (`GroundSeat.aboveGrade`: 0.203 m on block, by region and style); its
7
- * position moves in height, the plan stays where it is, and the
5
+ * floor datum stands on grade; its position moves in height, the plan stays where it is, and the
8
6
  * floor indices are renumbered so it is index 0 and the ones under it are the basements. Every
9
7
  * floor keeps its place relative to the others. One change set, one undo step. `null` for an id
10
8
  * that is no level of a building.
@@ -1 +1 @@
1
- {"version":3,"file":"ground-level.d.ts","sourceRoot":"","sources":["../../src/building/ground-level.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAA2B,MAAM,WAAW,CAAA;AAG5E;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,EACtC,KAAK,EACL,OAAO,GACR,EAAE;IACD,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACjC,OAAO,EAAE,MAAM,CAAA;CAChB;;;;;;;YAoC0B,SAAS;cAIvB,OAAO,CAAC,OAAO,CAAC;;SAQ5B"}
1
+ {"version":3,"file":"ground-level.d.ts","sourceRoot":"","sources":["../../src/building/ground-level.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAA2B,MAAM,WAAW,CAAA;AAG5E;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,EACtC,KAAK,EACL,OAAO,GACR,EAAE;IACD,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACjC,OAAO,EAAE,MAAM,CAAA;CAChB;;;;;;;YAoC0B,SAAS;cAIvB,OAAO,CAAC,OAAO,CAAC;;SAQ5B"}
@@ -3,9 +3,7 @@ import { getLevelElevations } from '../services/storey.js';
3
3
  /**
4
4
  * Making `levelId` the building's ground floor, as the level panel's "Set as ground floor" and the
5
5
  * agent's `set_ground_level` do: the building names it (`groundLevelId`), is seated so that level's
6
- * floor datum, the top of the foundation, stands over grade as the building's foundation
7
- * construction seats it (`GroundSeat.aboveGrade`: 0.203 m on block, by region and style); its
8
- * position moves in height, the plan stays where it is, and the
6
+ * floor datum stands on grade; its position moves in height, the plan stays where it is, and the
9
7
  * floor indices are renumbered so it is index 0 and the ones under it are the basements. Every
10
8
  * floor keeps its place relative to the others. One change set, one undo step. `null` for an id
11
9
  * that is no level of a building.
@@ -29,12 +27,12 @@ export function buildGroundLevelChanges({ nodes, levelId, }) {
29
27
  return null;
30
28
  const [x, y, z] = building.position;
31
29
  // Micrometres: the seat is measured through sums of storey heights, and a stored height keeps no noise.
32
- const moveBy = seat.atFoundationTop ? 0 : Math.round((seat.aboveGrade - seat.offset) * 1e6) / 1e6;
30
+ const moveBy = seat.seated ? 0 : Math.round(-seat.offset * 1e6) / 1e6;
33
31
  const shift = level.level;
34
32
  const renumbered = Object.values(nodes).filter((node) => node.type === 'level' &&
35
33
  shift !== 0 &&
36
34
  getLevelElevations(nodes).get(node.id)?.buildingId === building.id);
37
- const unchanged = before?.explicit === true && before.levelId === level.id && seat.atFoundationTop && shift === 0;
35
+ const unchanged = before?.explicit === true && before.levelId === level.id && seat.seated && shift === 0;
38
36
  return {
39
37
  buildingId: building.id,
40
38
  seat,
@@ -1,9 +1,11 @@
1
+ export * from './code-profile.js';
1
2
  export * from './corner-window.js';
2
3
  export * from './door-types.js';
3
4
  export * from './floor-item-fit.js';
4
5
  export { buildGroundLevelChanges } from './ground-level.js';
5
6
  export * from './level-duplication.js';
6
7
  export { buildLevelBelowChanges } from './level-insertion.js';
8
+ export { buildExteriorWallCopy, levelExteriorWalls } from './level-wall-copy.js';
7
9
  export * from './merge-windows.js';
8
10
  export * from './opening-style-presets.js';
9
11
  export { type RgbaImage, warpImage } from './photo-elevation.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/building/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AACxD,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAC1D,cAAc,iBAAiB,CAAA;AAC/B,cAAc,yBAAyB,CAAA;AACvC,OAAO,EAAE,KAAK,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7D,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/building/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AACxD,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAC7E,cAAc,iBAAiB,CAAA;AAC/B,cAAc,yBAAyB,CAAA;AACvC,OAAO,EAAE,KAAK,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7D,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA"}
@@ -1,9 +1,11 @@
1
+ export * from './code-profile.js';
1
2
  export * from './corner-window.js';
2
3
  export * from './door-types.js';
3
4
  export * from './floor-item-fit.js';
4
5
  export { buildGroundLevelChanges } from './ground-level.js';
5
6
  export * from './level-duplication.js';
6
7
  export { buildLevelBelowChanges } from './level-insertion.js';
8
+ export { buildExteriorWallCopy, levelExteriorWalls } from './level-wall-copy.js';
7
9
  export * from './merge-windows.js';
8
10
  export * from './opening-style-presets.js';
9
11
  export { warpImage } from './photo-elevation.js';