@pascal-app/core 1.0.6 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (940) 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 +407 -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 +7253 -4053
  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 +109 -73
  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 +1164 -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 +5880 -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 +38 -2
  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 +257 -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 +1667 -866
  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 +55 -11
  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 +4 -6
  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 +340 -195
  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 +5951 -4351
  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 +1 -0
  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 +115 -7
  356. package/dist/building/wall-openings.d.ts.map +1 -1
  357. package/dist/building/wall-openings.js +121 -29
  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 +888 -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 +3326 -2370
  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 -24
  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 +56 -1
  400. package/dist/hooks/spatial-grid/spatial-grid-manager.d.ts.map +1 -1
  401. package/dist/hooks/spatial-grid/spatial-grid-manager.js +177 -27
  402. package/dist/hooks/spatial-grid/spatial-grid-sync.d.ts +1631 -831
  403. package/dist/hooks/spatial-grid/spatial-grid-sync.d.ts.map +1 -1
  404. package/dist/hooks/spatial-grid/spatial-grid-sync.js +24 -1
  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 +32 -16
  419. package/dist/index.d.ts.map +1 -1
  420. package/dist/index.js +31 -15
  421. package/dist/lib/__fixtures__/mezzanine.d.ts +6840 -4169
  422. package/dist/lib/__fixtures__/mezzanine.d.ts.map +1 -1
  423. package/dist/lib/absorb-wall-separators.d.ts +2128 -1328
  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-up.d.ts +89 -0
  432. package/dist/lib/build-up.d.ts.map +1 -0
  433. package/dist/lib/build-up.js +216 -0
  434. package/dist/lib/corner-pair.d.ts +205 -4
  435. package/dist/lib/corner-pair.d.ts.map +1 -1
  436. package/dist/lib/deck-boards.d.ts +80 -0
  437. package/dist/lib/deck-boards.d.ts.map +1 -0
  438. package/dist/lib/deck-boards.js +184 -0
  439. package/dist/lib/deck-framing.d.ts +150 -0
  440. package/dist/lib/deck-framing.d.ts.map +1 -0
  441. package/dist/lib/deck-framing.js +515 -0
  442. package/dist/lib/deepest-drawn.d.ts +3 -6
  443. package/dist/lib/deepest-drawn.d.ts.map +1 -1
  444. package/dist/lib/deepest-drawn.js +4 -8
  445. package/dist/lib/door-opening.d.ts +19 -0
  446. package/dist/lib/door-opening.d.ts.map +1 -0
  447. package/dist/lib/door-opening.js +27 -0
  448. package/dist/lib/door-operation.d.ts +2 -0
  449. package/dist/lib/door-operation.d.ts.map +1 -1
  450. package/dist/lib/door-operation.js +4 -0
  451. package/dist/lib/exterior-wall-loops.d.ts.map +1 -1
  452. package/dist/lib/exterior-wall-loops.js +2 -1
  453. package/dist/lib/finish-script.d.ts +5 -5
  454. package/dist/lib/finish-script.d.ts.map +1 -1
  455. package/dist/lib/finish-script.js +12 -5
  456. package/dist/lib/floor-footprint-name.d.ts +17 -0
  457. package/dist/lib/floor-footprint-name.d.ts.map +1 -1
  458. package/dist/lib/floor-footprint-name.js +17 -4
  459. package/dist/lib/floor-intent-changes.d.ts.map +1 -1
  460. package/dist/lib/floor-intent-changes.js +60 -35
  461. package/dist/lib/floor-opening-footprints.d.ts +1 -1
  462. package/dist/lib/floor-opening-footprints.d.ts.map +1 -1
  463. package/dist/lib/floor-opening-footprints.js +10 -4
  464. package/dist/lib/floor-plate-paint.d.ts +2 -0
  465. package/dist/lib/floor-plate-paint.d.ts.map +1 -1
  466. package/dist/lib/floor-plate-paint.js +12 -0
  467. package/dist/lib/floor-plates.d.ts +250 -0
  468. package/dist/lib/floor-plates.d.ts.map +1 -1
  469. package/dist/lib/floor-plates.js +43 -4
  470. package/dist/lib/floor-script.d.ts +35 -6
  471. package/dist/lib/floor-script.d.ts.map +1 -1
  472. package/dist/lib/floor-script.js +96 -16
  473. package/dist/lib/foundation-construction.d.ts +4 -13
  474. package/dist/lib/foundation-construction.d.ts.map +1 -1
  475. package/dist/lib/foundation-construction.js +4 -14
  476. package/dist/lib/foundation-standard.d.ts +2 -3
  477. package/dist/lib/foundation-standard.d.ts.map +1 -1
  478. package/dist/lib/foundation-standard.js +2 -3
  479. package/dist/lib/foundation-wall.d.ts +1 -2
  480. package/dist/lib/foundation-wall.d.ts.map +1 -1
  481. package/dist/lib/foundation-wall.js +1 -2
  482. package/dist/lib/framing-post.d.ts +91 -0
  483. package/dist/lib/framing-post.d.ts.map +1 -0
  484. package/dist/lib/framing-post.js +174 -0
  485. package/dist/lib/geometry-script-node.d.ts +11 -0
  486. package/dist/lib/geometry-script-node.d.ts.map +1 -1
  487. package/dist/lib/geometry-script-node.js +35 -0
  488. package/dist/lib/grade-standing.d.ts +16 -2
  489. package/dist/lib/grade-standing.d.ts.map +1 -1
  490. package/dist/lib/grade-standing.js +129 -9
  491. package/dist/lib/ground-seat.d.ts +2 -22
  492. package/dist/lib/ground-seat.d.ts.map +1 -1
  493. package/dist/lib/ground-seat.js +2 -17
  494. package/dist/lib/ground-window.d.ts +2 -1
  495. package/dist/lib/ground-window.d.ts.map +1 -1
  496. package/dist/lib/ground-window.js +5 -2
  497. package/dist/lib/level-footprints.d.ts +2 -0
  498. package/dist/lib/level-footprints.d.ts.map +1 -1
  499. package/dist/lib/level-footprints.js +7 -0
  500. package/dist/lib/opening-casing.d.ts +67 -0
  501. package/dist/lib/opening-casing.d.ts.map +1 -0
  502. package/dist/lib/opening-casing.js +131 -0
  503. package/dist/lib/opening-exterior-face.d.ts +6 -0
  504. package/dist/lib/opening-exterior-face.d.ts.map +1 -0
  505. package/dist/lib/opening-exterior-face.js +15 -0
  506. package/dist/lib/opening-floor-datum.d.ts +11 -5
  507. package/dist/lib/opening-floor-datum.d.ts.map +1 -1
  508. package/dist/lib/opening-floor-datum.js +38 -6
  509. package/dist/lib/opening-frame-depth.d.ts +18 -0
  510. package/dist/lib/opening-frame-depth.d.ts.map +1 -0
  511. package/dist/lib/opening-frame-depth.js +22 -0
  512. package/dist/lib/outdoor-room.d.ts +32 -0
  513. package/dist/lib/outdoor-room.d.ts.map +1 -0
  514. package/dist/lib/outdoor-room.js +66 -0
  515. package/dist/lib/plate-surface.d.ts +8 -0
  516. package/dist/lib/plate-surface.d.ts.map +1 -1
  517. package/dist/lib/plate-surface.js +53 -3
  518. package/dist/lib/porch-framing-sync.d.ts +46 -0
  519. package/dist/lib/porch-framing-sync.d.ts.map +1 -0
  520. package/dist/lib/porch-framing-sync.js +206 -0
  521. package/dist/lib/porch-framing.d.ts +44 -0
  522. package/dist/lib/porch-framing.d.ts.map +1 -0
  523. package/dist/lib/porch-framing.js +159 -0
  524. package/dist/lib/railing-rooms.d.ts +13 -0
  525. package/dist/lib/railing-rooms.d.ts.map +1 -0
  526. package/dist/lib/railing-rooms.js +37 -0
  527. package/dist/lib/roof-eave.d.ts +135 -0
  528. package/dist/lib/roof-eave.d.ts.map +1 -0
  529. package/dist/lib/roof-eave.js +186 -0
  530. package/dist/lib/room-floor-plate.d.ts +3 -1
  531. package/dist/lib/room-floor-plate.d.ts.map +1 -1
  532. package/dist/lib/room-floor-plate.js +7 -0
  533. package/dist/lib/space-detection.d.ts +13 -0
  534. package/dist/lib/space-detection.d.ts.map +1 -1
  535. package/dist/lib/space-detection.js +112 -24
  536. package/dist/lib/structure-kernel.d.ts +22 -9
  537. package/dist/lib/structure-kernel.d.ts.map +1 -1
  538. package/dist/lib/structure-kernel.js +146 -28
  539. package/dist/lib/structure-reconcile.d.ts +1 -1
  540. package/dist/lib/structure-reconcile.d.ts.map +1 -1
  541. package/dist/lib/structure-reconcile.js +7 -4
  542. package/dist/lib/surface-intent.d.ts +10 -0
  543. package/dist/lib/surface-intent.d.ts.map +1 -0
  544. package/dist/lib/surface-intent.js +18 -0
  545. package/dist/lib/terrain-source.d.ts.map +1 -1
  546. package/dist/lib/terrain-source.js +2 -1
  547. package/dist/lib/wall-face-script.d.ts.map +1 -1
  548. package/dist/lib/wall-face-script.js +5 -2
  549. package/dist/material-kinds.d.ts +1 -1
  550. package/dist/material-kinds.d.ts.map +1 -1
  551. package/dist/material-kinds.js +1 -0
  552. package/dist/material-library.d.ts +15 -0
  553. package/dist/material-library.d.ts.map +1 -1
  554. package/dist/material-library.js +458 -59
  555. package/dist/node-slots/door.d.ts +3 -4
  556. package/dist/node-slots/door.d.ts.map +1 -1
  557. package/dist/node-slots/door.js +4 -3
  558. package/dist/node-slots/wall.d.ts.map +1 -1
  559. package/dist/node-slots/wall.js +21 -3
  560. package/dist/node-slots/window.d.ts +2 -2
  561. package/dist/node-slots/window.d.ts.map +1 -1
  562. package/dist/node-slots/window.js +6 -1
  563. package/dist/procedural-items/design.d.ts +8 -0
  564. package/dist/procedural-items/design.d.ts.map +1 -1
  565. package/dist/procedural-items/design.js +169 -21
  566. package/dist/procedural-items/motion-controller.d.ts +2 -0
  567. package/dist/procedural-items/motion-controller.d.ts.map +1 -1
  568. package/dist/procedural-items/motion-controller.js +2 -1
  569. package/dist/registry/index.d.ts +2 -2
  570. package/dist/registry/index.d.ts.map +1 -1
  571. package/dist/registry/index.js +1 -1
  572. package/dist/registry/mechanism.d.ts +4 -1
  573. package/dist/registry/mechanism.d.ts.map +1 -1
  574. package/dist/registry/mechanism.js +10 -0
  575. package/dist/registry/types.d.ts +65 -23
  576. package/dist/registry/types.d.ts.map +1 -1
  577. package/dist/runtime/__fixtures__/live-scene.d.ts +14 -0
  578. package/dist/runtime/__fixtures__/live-scene.d.ts.map +1 -0
  579. package/dist/runtime/__fixtures__/live-scene.js +64 -0
  580. package/dist/runtime/apply.d.ts +42 -0
  581. package/dist/runtime/apply.d.ts.map +1 -0
  582. package/dist/runtime/apply.js +274 -0
  583. package/dist/runtime/dependencies.d.ts +97 -0
  584. package/dist/runtime/dependencies.d.ts.map +1 -0
  585. package/dist/runtime/dependencies.js +42 -0
  586. package/dist/runtime/ids.d.ts +11 -0
  587. package/dist/runtime/ids.d.ts.map +1 -0
  588. package/dist/runtime/ids.js +80 -0
  589. package/dist/runtime/index.d.ts +14 -0
  590. package/dist/runtime/index.d.ts.map +1 -0
  591. package/dist/runtime/index.js +11 -0
  592. package/dist/runtime/node-queries.d.ts +16 -0
  593. package/dist/runtime/node-queries.d.ts.map +1 -0
  594. package/dist/runtime/node-queries.js +30 -0
  595. package/dist/runtime/patch.d.ts +26 -0
  596. package/dist/runtime/patch.d.ts.map +1 -0
  597. package/dist/runtime/patch.js +165 -0
  598. package/dist/runtime/reader.d.ts +104 -0
  599. package/dist/runtime/reader.d.ts.map +1 -0
  600. package/dist/runtime/reader.js +455 -0
  601. package/dist/runtime/scene-runtime.d.ts +112 -0
  602. package/dist/runtime/scene-runtime.d.ts.map +1 -0
  603. package/dist/runtime/scene-runtime.js +302 -0
  604. package/dist/schema/__fixtures__/node-fixtures.d.ts.map +1 -1
  605. package/dist/schema/__fixtures__/node-fixtures.js +1 -0
  606. package/dist/schema/assembly.d.ts +3 -0
  607. package/dist/schema/assembly.d.ts.map +1 -1
  608. package/dist/schema/assembly.js +13 -0
  609. package/dist/schema/asset-url.d.ts +37 -2
  610. package/dist/schema/asset-url.d.ts.map +1 -1
  611. package/dist/schema/asset-url.js +80 -11
  612. package/dist/schema/base.d.ts +8 -0
  613. package/dist/schema/base.d.ts.map +1 -1
  614. package/dist/schema/base.js +19 -1
  615. package/dist/schema/build-up.d.ts +247 -0
  616. package/dist/schema/build-up.d.ts.map +1 -0
  617. package/dist/schema/build-up.js +83 -0
  618. package/dist/schema/geometry-source.d.ts +80 -0
  619. package/dist/schema/geometry-source.d.ts.map +1 -1
  620. package/dist/schema/geometry-source.js +38 -0
  621. package/dist/schema/index.d.ts +12 -7
  622. package/dist/schema/index.d.ts.map +1 -1
  623. package/dist/schema/index.js +12 -6
  624. package/dist/schema/material.d.ts +5 -0
  625. package/dist/schema/material.d.ts.map +1 -1
  626. package/dist/schema/material.js +6 -0
  627. package/dist/schema/nodes/beam.d.ts +264 -0
  628. package/dist/schema/nodes/beam.d.ts.map +1 -0
  629. package/dist/schema/nodes/beam.js +139 -0
  630. package/dist/schema/nodes/box-vent.d.ts +5 -0
  631. package/dist/schema/nodes/box-vent.d.ts.map +1 -1
  632. package/dist/schema/nodes/cabinet.d.ts +10 -0
  633. package/dist/schema/nodes/cabinet.d.ts.map +1 -1
  634. package/dist/schema/nodes/ceiling.d.ts +48 -0
  635. package/dist/schema/nodes/ceiling.d.ts.map +1 -1
  636. package/dist/schema/nodes/ceiling.js +5 -0
  637. package/dist/schema/nodes/chimney.d.ts +10 -0
  638. package/dist/schema/nodes/chimney.d.ts.map +1 -1
  639. package/dist/schema/nodes/column.d.ts +42 -0
  640. package/dist/schema/nodes/column.d.ts.map +1 -1
  641. package/dist/schema/nodes/column.js +11 -1
  642. package/dist/schema/nodes/cupola.d.ts +5 -0
  643. package/dist/schema/nodes/cupola.d.ts.map +1 -1
  644. package/dist/schema/nodes/door.d.ts +54 -3
  645. package/dist/schema/nodes/door.d.ts.map +1 -1
  646. package/dist/schema/nodes/door.js +41 -7
  647. package/dist/schema/nodes/dormer.d.ts +20 -0
  648. package/dist/schema/nodes/dormer.d.ts.map +1 -1
  649. package/dist/schema/nodes/downspout.d.ts +5 -0
  650. package/dist/schema/nodes/downspout.d.ts.map +1 -1
  651. package/dist/schema/nodes/elevator.d.ts +5 -0
  652. package/dist/schema/nodes/elevator.d.ts.map +1 -1
  653. package/dist/schema/nodes/eyebrow-vent.d.ts +5 -0
  654. package/dist/schema/nodes/eyebrow-vent.d.ts.map +1 -1
  655. package/dist/schema/nodes/fence.d.ts +5 -0
  656. package/dist/schema/nodes/fence.d.ts.map +1 -1
  657. package/dist/schema/nodes/guide.d.ts +14 -0
  658. package/dist/schema/nodes/guide.d.ts.map +1 -1
  659. package/dist/schema/nodes/guide.js +2 -0
  660. package/dist/schema/nodes/gutter.d.ts +5 -0
  661. package/dist/schema/nodes/gutter.d.ts.map +1 -1
  662. package/dist/schema/nodes/item.d.ts +71 -0
  663. package/dist/schema/nodes/item.d.ts.map +1 -1
  664. package/dist/schema/nodes/item.js +5 -1
  665. package/dist/schema/nodes/level.d.ts +1 -1
  666. package/dist/schema/nodes/level.d.ts.map +1 -1
  667. package/dist/schema/nodes/opening-types.d.ts +13 -0
  668. package/dist/schema/nodes/opening-types.d.ts.map +1 -1
  669. package/dist/schema/nodes/opening-types.js +8 -1
  670. package/dist/schema/nodes/railing-wall.d.ts +112 -0
  671. package/dist/schema/nodes/railing-wall.d.ts.map +1 -0
  672. package/dist/schema/nodes/railing-wall.js +160 -0
  673. package/dist/schema/nodes/ridge-vent.d.ts +5 -0
  674. package/dist/schema/nodes/ridge-vent.d.ts.map +1 -1
  675. package/dist/schema/nodes/roof-segment.d.ts +224 -1
  676. package/dist/schema/nodes/roof-segment.d.ts.map +1 -1
  677. package/dist/schema/nodes/roof-segment.js +57 -10
  678. package/dist/schema/nodes/roof-types.d.ts +11 -0
  679. package/dist/schema/nodes/roof-types.d.ts.map +1 -1
  680. package/dist/schema/nodes/roof-types.js +6 -0
  681. package/dist/schema/nodes/roof.d.ts +60 -0
  682. package/dist/schema/nodes/roof.d.ts.map +1 -1
  683. package/dist/schema/nodes/roof.js +4 -0
  684. package/dist/schema/nodes/shelf.d.ts +5 -0
  685. package/dist/schema/nodes/shelf.d.ts.map +1 -1
  686. package/dist/schema/nodes/site.d.ts +80 -0
  687. package/dist/schema/nodes/site.d.ts.map +1 -1
  688. package/dist/schema/nodes/site.js +7 -0
  689. package/dist/schema/nodes/skylight.d.ts +10 -0
  690. package/dist/schema/nodes/skylight.d.ts.map +1 -1
  691. package/dist/schema/nodes/slab.d.ts +137 -0
  692. package/dist/schema/nodes/slab.d.ts.map +1 -1
  693. package/dist/schema/nodes/slab.js +3 -0
  694. package/dist/schema/nodes/solar-panel.d.ts +10 -0
  695. package/dist/schema/nodes/solar-panel.d.ts.map +1 -1
  696. package/dist/schema/nodes/stair-segment.d.ts +5 -0
  697. package/dist/schema/nodes/stair-segment.d.ts.map +1 -1
  698. package/dist/schema/nodes/stair-structure.d.ts +69 -0
  699. package/dist/schema/nodes/stair-structure.d.ts.map +1 -0
  700. package/dist/schema/nodes/stair-structure.js +39 -0
  701. package/dist/schema/nodes/stair.d.ts +46 -0
  702. package/dist/schema/nodes/stair.d.ts.map +1 -1
  703. package/dist/schema/nodes/stair.js +3 -0
  704. package/dist/schema/nodes/turbine-vent.d.ts +5 -0
  705. package/dist/schema/nodes/turbine-vent.d.ts.map +1 -1
  706. package/dist/schema/nodes/wall.d.ts +135 -2
  707. package/dist/schema/nodes/wall.d.ts.map +1 -1
  708. package/dist/schema/nodes/wall.js +42 -6
  709. package/dist/schema/nodes/window.d.ts +66 -1
  710. package/dist/schema/nodes/window.d.ts.map +1 -1
  711. package/dist/schema/nodes/window.js +50 -5
  712. package/dist/schema/nodes/zone.d.ts +68 -0
  713. package/dist/schema/nodes/zone.d.ts.map +1 -1
  714. package/dist/schema/nodes/zone.js +32 -0
  715. package/dist/schema/scene-material.d.ts +5 -0
  716. package/dist/schema/scene-material.d.ts.map +1 -1
  717. package/dist/schema/types.d.ts +1079 -4
  718. package/dist/schema/types.d.ts.map +1 -1
  719. package/dist/schema/types.js +2 -0
  720. package/dist/schema/wall-type.d.ts +95 -0
  721. package/dist/schema/wall-type.d.ts.map +1 -0
  722. package/dist/schema/wall-type.js +32 -0
  723. package/dist/services/roof-bearing.d.ts.map +1 -1
  724. package/dist/services/roof-bearing.js +6 -3
  725. package/dist/services/roof-level.d.ts.map +1 -1
  726. package/dist/services/roof-level.js +4 -3
  727. package/dist/services/roof-move.d.ts.map +1 -1
  728. package/dist/services/roof-move.js +13 -7
  729. package/dist/services/storey.d.ts.map +1 -1
  730. package/dist/services/storey.js +13 -8
  731. package/dist/spatial/usage-field/beds.d.ts +51 -0
  732. package/dist/spatial/usage-field/beds.d.ts.map +1 -0
  733. package/dist/spatial/usage-field/beds.js +346 -0
  734. package/dist/spatial/usage-field/blocked.d.ts +28 -0
  735. package/dist/spatial/usage-field/blocked.d.ts.map +1 -0
  736. package/dist/spatial/usage-field/blocked.js +185 -0
  737. package/dist/spatial/usage-field/boxes.d.ts +17 -0
  738. package/dist/spatial/usage-field/boxes.d.ts.map +1 -0
  739. package/dist/spatial/usage-field/boxes.js +82 -0
  740. package/dist/spatial/usage-field/catalogue-shapes.d.ts +3 -0
  741. package/dist/spatial/usage-field/catalogue-shapes.d.ts.map +1 -0
  742. package/dist/spatial/usage-field/catalogue-shapes.js +257 -0
  743. package/dist/spatial/usage-field/catalogue.d.ts +6 -0
  744. package/dist/spatial/usage-field/catalogue.d.ts.map +1 -0
  745. package/dist/spatial/usage-field/catalogue.js +11 -0
  746. package/dist/spatial/usage-field/clash.d.ts +40 -0
  747. package/dist/spatial/usage-field/clash.d.ts.map +1 -0
  748. package/dist/spatial/usage-field/clash.js +187 -0
  749. package/dist/spatial/usage-field/door-stairs.d.ts +18 -0
  750. package/dist/spatial/usage-field/door-stairs.d.ts.map +1 -0
  751. package/dist/spatial/usage-field/door-stairs.js +129 -0
  752. package/dist/spatial/usage-field/entry-way.d.ts +14 -0
  753. package/dist/spatial/usage-field/entry-way.d.ts.map +1 -0
  754. package/dist/spatial/usage-field/entry-way.js +219 -0
  755. package/dist/spatial/usage-field/fences.d.ts +18 -0
  756. package/dist/spatial/usage-field/fences.d.ts.map +1 -0
  757. package/dist/spatial/usage-field/fences.js +253 -0
  758. package/dist/spatial/usage-field/field.d.ts +44 -0
  759. package/dist/spatial/usage-field/field.d.ts.map +1 -0
  760. package/dist/spatial/usage-field/field.js +145 -0
  761. package/dist/spatial/usage-field/findings.d.ts +76 -0
  762. package/dist/spatial/usage-field/findings.d.ts.map +1 -0
  763. package/dist/spatial/usage-field/findings.js +252 -0
  764. package/dist/spatial/usage-field/fixtures.d.ts +18 -0
  765. package/dist/spatial/usage-field/fixtures.d.ts.map +1 -0
  766. package/dist/spatial/usage-field/fixtures.js +160 -0
  767. package/dist/spatial/usage-field/flag.d.ts +10 -0
  768. package/dist/spatial/usage-field/flag.d.ts.map +1 -0
  769. package/dist/spatial/usage-field/flag.js +12 -0
  770. package/dist/spatial/usage-field/floors.d.ts +13 -0
  771. package/dist/spatial/usage-field/floors.d.ts.map +1 -0
  772. package/dist/spatial/usage-field/floors.js +36 -0
  773. package/dist/spatial/usage-field/index.d.ts +7 -0
  774. package/dist/spatial/usage-field/index.d.ts.map +1 -0
  775. package/dist/spatial/usage-field/index.js +5 -0
  776. package/dist/spatial/usage-field/items.d.ts +38 -0
  777. package/dist/spatial/usage-field/items.d.ts.map +1 -0
  778. package/dist/spatial/usage-field/items.js +261 -0
  779. package/dist/spatial/usage-field/labels.d.ts +8 -0
  780. package/dist/spatial/usage-field/labels.d.ts.map +1 -0
  781. package/dist/spatial/usage-field/labels.js +14 -0
  782. package/dist/spatial/usage-field/level-field.d.ts +47 -0
  783. package/dist/spatial/usage-field/level-field.d.ts.map +1 -0
  784. package/dist/spatial/usage-field/level-field.js +96 -0
  785. package/dist/spatial/usage-field/measure.d.ts +324 -0
  786. package/dist/spatial/usage-field/measure.d.ts.map +1 -0
  787. package/dist/spatial/usage-field/measure.js +458 -0
  788. package/dist/spatial/usage-field/obstacles.d.ts +63 -0
  789. package/dist/spatial/usage-field/obstacles.d.ts.map +1 -0
  790. package/dist/spatial/usage-field/obstacles.js +215 -0
  791. package/dist/spatial/usage-field/openings.d.ts +12 -0
  792. package/dist/spatial/usage-field/openings.d.ts.map +1 -0
  793. package/dist/spatial/usage-field/openings.js +162 -0
  794. package/dist/spatial/usage-field/path.d.ts +48 -0
  795. package/dist/spatial/usage-field/path.d.ts.map +1 -0
  796. package/dist/spatial/usage-field/path.js +354 -0
  797. package/dist/spatial/usage-field/pieces.d.ts +27 -0
  798. package/dist/spatial/usage-field/pieces.d.ts.map +1 -0
  799. package/dist/spatial/usage-field/pieces.js +89 -0
  800. package/dist/spatial/usage-field/shapes.d.ts +18 -0
  801. package/dist/spatial/usage-field/shapes.d.ts.map +1 -0
  802. package/dist/spatial/usage-field/shapes.js +92 -0
  803. package/dist/spatial/usage-field/stairs.d.ts +23 -0
  804. package/dist/spatial/usage-field/stairs.d.ts.map +1 -0
  805. package/dist/spatial/usage-field/stairs.js +163 -0
  806. package/dist/spatial/usage-field/support.d.ts +24 -0
  807. package/dist/spatial/usage-field/support.d.ts.map +1 -0
  808. package/dist/spatial/usage-field/support.js +46 -0
  809. package/dist/spatial/usage-field/swings.d.ts +846 -0
  810. package/dist/spatial/usage-field/swings.d.ts.map +1 -0
  811. package/dist/spatial/usage-field/swings.js +427 -0
  812. package/dist/spatial/usage-field/types.d.ts +65 -0
  813. package/dist/spatial/usage-field/types.d.ts.map +1 -0
  814. package/dist/spatial/usage-field/types.js +1 -0
  815. package/dist/spatial/usage-field/walls.d.ts +1057 -0
  816. package/dist/spatial/usage-field/walls.d.ts.map +1 -0
  817. package/dist/spatial/usage-field/walls.js +166 -0
  818. package/dist/spatial/usage-field/way-in.d.ts +26 -0
  819. package/dist/spatial/usage-field/way-in.d.ts.map +1 -0
  820. package/dist/spatial/usage-field/way-in.js +113 -0
  821. package/dist/store/actions/node-actions.d.ts +2124 -1322
  822. package/dist/store/actions/node-actions.d.ts.map +1 -1
  823. package/dist/store/actions/node-actions.js +42 -16
  824. package/dist/store/derived-node-guard.d.ts +10 -2
  825. package/dist/store/derived-node-guard.d.ts.map +1 -1
  826. package/dist/store/derived-node-guard.js +31 -11
  827. package/dist/store/document-settling.d.ts +9 -0
  828. package/dist/store/document-settling.d.ts.map +1 -0
  829. package/dist/store/document-settling.js +22 -0
  830. package/dist/store/history-control.d.ts +19 -10
  831. package/dist/store/history-control.d.ts.map +1 -1
  832. package/dist/store/history-control.js +176 -127
  833. package/dist/store/history-drafts.d.ts.map +1 -1
  834. package/dist/store/history-drafts.js +21 -17
  835. package/dist/store/live-previews.d.ts +9 -0
  836. package/dist/store/live-previews.d.ts.map +1 -0
  837. package/dist/store/live-previews.js +19 -0
  838. package/dist/store/scene-annotations.d.ts +6751 -5151
  839. package/dist/store/scene-annotations.d.ts.map +1 -1
  840. package/dist/store/scene-environment.d.ts +33 -0
  841. package/dist/store/scene-environment.d.ts.map +1 -0
  842. package/dist/store/scene-environment.js +54 -0
  843. package/dist/store/scene-hydration.d.ts.map +1 -1
  844. package/dist/store/scene-hydration.js +41 -30
  845. package/dist/store/use-interactive.d.ts +9 -3
  846. package/dist/store/use-interactive.d.ts.map +1 -1
  847. package/dist/store/use-interactive.js +43 -11
  848. package/dist/store/use-live-node-overrides.d.ts.map +1 -1
  849. package/dist/store/use-live-node-overrides.js +3 -0
  850. package/dist/store/use-scene.d.ts +25 -0
  851. package/dist/store/use-scene.d.ts.map +1 -1
  852. package/dist/store/use-scene.js +408 -336
  853. package/dist/systems/document-reconcile.d.ts +40 -0
  854. package/dist/systems/document-reconcile.d.ts.map +1 -0
  855. package/dist/systems/document-reconcile.js +159 -0
  856. package/dist/systems/elevator/elevator-opening-system.d.ts.map +1 -1
  857. package/dist/systems/elevator/elevator-opening-system.js +9 -24
  858. package/dist/systems/fence/guard-layout.d.ts +69 -0
  859. package/dist/systems/fence/guard-layout.d.ts.map +1 -0
  860. package/dist/systems/fence/guard-layout.js +194 -0
  861. package/dist/systems/owned-floor-openings.d.ts +13 -1
  862. package/dist/systems/owned-floor-openings.d.ts.map +1 -1
  863. package/dist/systems/owned-floor-openings.js +58 -2
  864. package/dist/systems/reconcile-owned-floor-openings.d.ts +3 -1
  865. package/dist/systems/reconcile-owned-floor-openings.d.ts.map +1 -1
  866. package/dist/systems/reconcile-owned-floor-openings.js +4 -4
  867. package/dist/systems/roof/roof-elevation-system.d.ts.map +1 -1
  868. package/dist/systems/roof/roof-elevation-system.js +8 -26
  869. package/dist/systems/roof/roof-elevation.d.ts +16 -1
  870. package/dist/systems/roof/roof-elevation.d.ts.map +1 -1
  871. package/dist/systems/roof/roof-elevation.js +85 -4
  872. package/dist/systems/roof/roof-footprint.d.ts +42 -1
  873. package/dist/systems/roof/roof-footprint.d.ts.map +1 -1
  874. package/dist/systems/roof/roof-footprint.js +160 -4
  875. package/dist/systems/slab/__fixtures__/floor-step.d.ts +3163 -1934
  876. package/dist/systems/slab/__fixtures__/floor-step.d.ts.map +1 -1
  877. package/dist/systems/slab/__fixtures__/raised-room.d.ts +2495 -1249
  878. package/dist/systems/slab/__fixtures__/raised-room.d.ts.map +1 -1
  879. package/dist/systems/stair/stair-clearance.d.ts +7 -0
  880. package/dist/systems/stair/stair-clearance.d.ts.map +1 -1
  881. package/dist/systems/stair/stair-clearance.js +31 -11
  882. package/dist/systems/stair/stair-construction.d.ts +8 -3
  883. package/dist/systems/stair/stair-construction.d.ts.map +1 -1
  884. package/dist/systems/stair/stair-construction.js +55 -4
  885. package/dist/systems/stair/stair-opening-preview.d.ts +889 -89
  886. package/dist/systems/stair/stair-opening-preview.d.ts.map +1 -1
  887. package/dist/systems/stair/stair-opening-system.d.ts.map +1 -1
  888. package/dist/systems/stair/stair-opening-system.js +18 -34
  889. package/dist/systems/stair/stair-presets.d.ts +36 -0
  890. package/dist/systems/stair/stair-presets.d.ts.map +1 -1
  891. package/dist/systems/stair/stair-rise-query.d.ts.map +1 -1
  892. package/dist/systems/stair/stair-rise-query.js +3 -2
  893. package/dist/systems/stair/stair-rise.d.ts.map +1 -1
  894. package/dist/systems/stair/stair-rise.js +6 -0
  895. package/dist/systems/stair/stair-sizing.d.ts +42 -11
  896. package/dist/systems/stair/stair-sizing.d.ts.map +1 -1
  897. package/dist/systems/stair/stair-sizing.js +10 -1
  898. package/dist/systems/stair/stair-structure.d.ts +277 -0
  899. package/dist/systems/stair/stair-structure.d.ts.map +1 -0
  900. package/dist/systems/stair/stair-structure.js +496 -0
  901. package/dist/systems/wall/wall-assembly.d.ts +84 -6
  902. package/dist/systems/wall/wall-assembly.d.ts.map +1 -1
  903. package/dist/systems/wall/wall-assembly.js +204 -5
  904. package/dist/systems/wall/wall-finish.d.ts +38 -2
  905. package/dist/systems/wall/wall-finish.d.ts.map +1 -1
  906. package/dist/systems/wall/wall-finish.js +70 -2
  907. package/dist/systems/wall/wall-footprint.js +2 -2
  908. package/dist/systems/wall/wall-merge.d.ts.map +1 -1
  909. package/dist/systems/wall/wall-merge.js +28 -7
  910. package/dist/systems/wall/wall-mitering.d.ts +1 -0
  911. package/dist/systems/wall/wall-mitering.d.ts.map +1 -1
  912. package/dist/systems/wall/wall-mitering.js +152 -52
  913. package/dist/systems/wall/wall-move.d.ts +23 -6
  914. package/dist/systems/wall/wall-move.d.ts.map +1 -1
  915. package/dist/systems/wall/wall-move.js +65 -0
  916. package/dist/systems/wall/wall-top.d.ts +2 -2
  917. package/dist/systems/wall/wall-top.d.ts.map +1 -1
  918. package/dist/systems/wall/wall-top.js +6 -1
  919. package/dist/systems/wall/wall-topology.d.ts +32 -1
  920. package/dist/systems/wall/wall-topology.d.ts.map +1 -1
  921. package/dist/systems/wall/wall-topology.js +118 -10
  922. package/dist/systems/wall/wall-trim-profiles.d.ts +12 -0
  923. package/dist/systems/wall/wall-trim-profiles.d.ts.map +1 -0
  924. package/dist/systems/wall/wall-trim-profiles.js +191 -0
  925. package/dist/utils/ensure-scene-openings.d.ts +6523 -4923
  926. package/dist/utils/ensure-scene-openings.d.ts.map +1 -1
  927. package/dist/utils/floor-piece-adoption.d.ts +5 -0
  928. package/dist/utils/floor-piece-adoption.d.ts.map +1 -1
  929. package/dist/utils/floor-plate-migration.d.ts +1930 -1130
  930. package/dist/utils/floor-plate-migration.d.ts.map +1 -1
  931. package/dist/utils/owned-floor-opening-migration.d.ts +888 -88
  932. package/dist/utils/owned-floor-opening-migration.d.ts.map +1 -1
  933. package/dist/utils/reconcile-structure-on-load.d.ts +1930 -1130
  934. package/dist/utils/reconcile-structure-on-load.d.ts.map +1 -1
  935. package/dist/utils/structure-id.d.ts.map +1 -1
  936. package/dist/utils/structure-id.js +4 -0
  937. package/package.json +22 -5
  938. package/dist/lib/generic-foundation.d.ts +0 -40
  939. package/dist/lib/generic-foundation.d.ts.map +0 -1
  940. package/dist/lib/generic-foundation.js +0 -200
@@ -0,0 +1,247 @@
1
+ import { z } from 'zod';
2
+ /** Nominal dimensional lumber, by its actual depth (`LUMBER_DEPTH`). */
3
+ export declare const NominalLumber: z.ZodEnum<{
4
+ "2x10": "2x10";
5
+ "2x12": "2x12";
6
+ "2x4": "2x4";
7
+ "2x6": "2x6";
8
+ "2x8": "2x8";
9
+ }>;
10
+ export type NominalLumber = z.infer<typeof NominalLumber>;
11
+ export declare const RoofingKind: z.ZodEnum<{
12
+ "architectural-shingle": "architectural-shingle";
13
+ "asphalt-3-tab": "asphalt-3-tab";
14
+ "clay-tile": "clay-tile";
15
+ "concrete-tile": "concrete-tile";
16
+ slate: "slate";
17
+ "standing-seam-metal": "standing-seam-metal";
18
+ "wood-shake": "wood-shake";
19
+ }>;
20
+ export type RoofingKind = z.infer<typeof RoofingKind>;
21
+ export declare const UnderlaymentKind: z.ZodEnum<{
22
+ "felt-15": "felt-15";
23
+ "felt-30": "felt-30";
24
+ "ice-and-water": "ice-and-water";
25
+ synthetic: "synthetic";
26
+ }>;
27
+ export type UnderlaymentKind = z.infer<typeof UnderlaymentKind>;
28
+ /** Structural panels: roof sheathing and attic decking. */
29
+ export declare const PanelKind: z.ZodEnum<{
30
+ osb: "osb";
31
+ plywood: "plywood";
32
+ }>;
33
+ export type PanelKind = z.infer<typeof PanelKind>;
34
+ /** Batt and blown fill the framing cavity; rigid board runs continuous over the framing. */
35
+ export declare const InsulationKind: z.ZodEnum<{
36
+ batt: "batt";
37
+ blown: "blown";
38
+ rigid: "rigid";
39
+ }>;
40
+ export type InsulationKind = z.infer<typeof InsulationKind>;
41
+ export declare const InteriorFinishKind: z.ZodEnum<{
42
+ drywall: "drywall";
43
+ plaster: "plaster";
44
+ "wood-plank": "wood-plank";
45
+ }>;
46
+ export type InteriorFinishKind = z.infer<typeof InteriorFinishKind>;
47
+ export declare const RoofingLayer: z.ZodObject<{
48
+ kind: z.ZodEnum<{
49
+ "architectural-shingle": "architectural-shingle";
50
+ "asphalt-3-tab": "asphalt-3-tab";
51
+ "clay-tile": "clay-tile";
52
+ "concrete-tile": "concrete-tile";
53
+ slate: "slate";
54
+ "standing-seam-metal": "standing-seam-metal";
55
+ "wood-shake": "wood-shake";
56
+ }>;
57
+ thickness: z.ZodNumber;
58
+ name: z.ZodOptional<z.ZodString>;
59
+ }, z.core.$strip>;
60
+ export declare const UnderlaymentLayer: z.ZodObject<{
61
+ kind: z.ZodEnum<{
62
+ "felt-15": "felt-15";
63
+ "felt-30": "felt-30";
64
+ "ice-and-water": "ice-and-water";
65
+ synthetic: "synthetic";
66
+ }>;
67
+ thickness: z.ZodNumber;
68
+ name: z.ZodOptional<z.ZodString>;
69
+ }, z.core.$strip>;
70
+ export declare const PanelLayer: z.ZodObject<{
71
+ kind: z.ZodEnum<{
72
+ osb: "osb";
73
+ plywood: "plywood";
74
+ }>;
75
+ thickness: z.ZodNumber;
76
+ name: z.ZodOptional<z.ZodString>;
77
+ }, z.core.$strip>;
78
+ export declare const InsulationLayer: z.ZodObject<{
79
+ kind: z.ZodEnum<{
80
+ batt: "batt";
81
+ blown: "blown";
82
+ rigid: "rigid";
83
+ }>;
84
+ thickness: z.ZodNumber;
85
+ name: z.ZodOptional<z.ZodString>;
86
+ }, z.core.$strip>;
87
+ export declare const InteriorFinishLayer: z.ZodObject<{
88
+ kind: z.ZodEnum<{
89
+ drywall: "drywall";
90
+ plaster: "plaster";
91
+ "wood-plank": "wood-plank";
92
+ }>;
93
+ thickness: z.ZodNumber;
94
+ name: z.ZodOptional<z.ZodString>;
95
+ }, z.core.$strip>;
96
+ /** For trusses, `size` is the top chord: the depth the roof plane's deck carries. */
97
+ export declare const RoofStructure: z.ZodObject<{
98
+ system: z.ZodEnum<{
99
+ rafters: "rafters";
100
+ trusses: "trusses";
101
+ }>;
102
+ size: z.ZodEnum<{
103
+ "2x10": "2x10";
104
+ "2x12": "2x12";
105
+ "2x4": "2x4";
106
+ "2x6": "2x6";
107
+ "2x8": "2x8";
108
+ }>;
109
+ spacing: z.ZodNumber;
110
+ }, z.core.$strip>;
111
+ export type RoofStructure = z.infer<typeof RoofStructure>;
112
+ /** `truss-chords`: the ceiling hangs from the roof trusses' bottom chords, `size` deep. */
113
+ export declare const CeilingFraming: z.ZodObject<{
114
+ system: z.ZodEnum<{
115
+ joists: "joists";
116
+ "truss-chords": "truss-chords";
117
+ }>;
118
+ size: z.ZodEnum<{
119
+ "2x10": "2x10";
120
+ "2x12": "2x12";
121
+ "2x4": "2x4";
122
+ "2x6": "2x6";
123
+ "2x8": "2x8";
124
+ }>;
125
+ spacing: z.ZodNumber;
126
+ }, z.core.$strip>;
127
+ export type CeilingFraming = z.infer<typeof CeilingFraming>;
128
+ /**
129
+ * A roof plane, outside in. Absent optional layers are none. The plane's
130
+ * `deckThickness` and `shingleThickness` derive from it (`roofBuildUpPatch`).
131
+ */
132
+ export declare const RoofBuildUp: z.ZodObject<{
133
+ presetId: z.ZodOptional<z.ZodString>;
134
+ roofing: z.ZodObject<{
135
+ kind: z.ZodEnum<{
136
+ "architectural-shingle": "architectural-shingle";
137
+ "asphalt-3-tab": "asphalt-3-tab";
138
+ "clay-tile": "clay-tile";
139
+ "concrete-tile": "concrete-tile";
140
+ slate: "slate";
141
+ "standing-seam-metal": "standing-seam-metal";
142
+ "wood-shake": "wood-shake";
143
+ }>;
144
+ thickness: z.ZodNumber;
145
+ name: z.ZodOptional<z.ZodString>;
146
+ }, z.core.$strip>;
147
+ underlayment: z.ZodOptional<z.ZodObject<{
148
+ kind: z.ZodEnum<{
149
+ "felt-15": "felt-15";
150
+ "felt-30": "felt-30";
151
+ "ice-and-water": "ice-and-water";
152
+ synthetic: "synthetic";
153
+ }>;
154
+ thickness: z.ZodNumber;
155
+ name: z.ZodOptional<z.ZodString>;
156
+ }, z.core.$strip>>;
157
+ sheathing: z.ZodObject<{
158
+ kind: z.ZodEnum<{
159
+ osb: "osb";
160
+ plywood: "plywood";
161
+ }>;
162
+ thickness: z.ZodNumber;
163
+ name: z.ZodOptional<z.ZodString>;
164
+ }, z.core.$strip>;
165
+ structure: z.ZodObject<{
166
+ system: z.ZodEnum<{
167
+ rafters: "rafters";
168
+ trusses: "trusses";
169
+ }>;
170
+ size: z.ZodEnum<{
171
+ "2x10": "2x10";
172
+ "2x12": "2x12";
173
+ "2x4": "2x4";
174
+ "2x6": "2x6";
175
+ "2x8": "2x8";
176
+ }>;
177
+ spacing: z.ZodNumber;
178
+ }, z.core.$strip>;
179
+ insulation: z.ZodOptional<z.ZodObject<{
180
+ kind: z.ZodEnum<{
181
+ batt: "batt";
182
+ blown: "blown";
183
+ rigid: "rigid";
184
+ }>;
185
+ thickness: z.ZodNumber;
186
+ name: z.ZodOptional<z.ZodString>;
187
+ }, z.core.$strip>>;
188
+ finish: z.ZodOptional<z.ZodObject<{
189
+ kind: z.ZodEnum<{
190
+ drywall: "drywall";
191
+ plaster: "plaster";
192
+ "wood-plank": "wood-plank";
193
+ }>;
194
+ thickness: z.ZodNumber;
195
+ name: z.ZodOptional<z.ZodString>;
196
+ }, z.core.$strip>>;
197
+ }, z.core.$strip>;
198
+ export type RoofBuildUp = z.infer<typeof RoofBuildUp>;
199
+ /**
200
+ * A ceiling, bottom up from its stored height (the finished underside).
201
+ * Absent layers are none.
202
+ */
203
+ export declare const CeilingBuildUp: z.ZodObject<{
204
+ presetId: z.ZodOptional<z.ZodString>;
205
+ finish: z.ZodOptional<z.ZodObject<{
206
+ kind: z.ZodEnum<{
207
+ drywall: "drywall";
208
+ plaster: "plaster";
209
+ "wood-plank": "wood-plank";
210
+ }>;
211
+ thickness: z.ZodNumber;
212
+ name: z.ZodOptional<z.ZodString>;
213
+ }, z.core.$strip>>;
214
+ framing: z.ZodOptional<z.ZodObject<{
215
+ system: z.ZodEnum<{
216
+ joists: "joists";
217
+ "truss-chords": "truss-chords";
218
+ }>;
219
+ size: z.ZodEnum<{
220
+ "2x10": "2x10";
221
+ "2x12": "2x12";
222
+ "2x4": "2x4";
223
+ "2x6": "2x6";
224
+ "2x8": "2x8";
225
+ }>;
226
+ spacing: z.ZodNumber;
227
+ }, z.core.$strip>>;
228
+ decking: z.ZodOptional<z.ZodObject<{
229
+ kind: z.ZodEnum<{
230
+ osb: "osb";
231
+ plywood: "plywood";
232
+ }>;
233
+ thickness: z.ZodNumber;
234
+ name: z.ZodOptional<z.ZodString>;
235
+ }, z.core.$strip>>;
236
+ insulation: z.ZodOptional<z.ZodObject<{
237
+ kind: z.ZodEnum<{
238
+ batt: "batt";
239
+ blown: "blown";
240
+ rigid: "rigid";
241
+ }>;
242
+ thickness: z.ZodNumber;
243
+ name: z.ZodOptional<z.ZodString>;
244
+ }, z.core.$strip>>;
245
+ }, z.core.$strip>;
246
+ export type CeilingBuildUp = z.infer<typeof CeilingBuildUp>;
247
+ //# sourceMappingURL=build-up.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-up.d.ts","sourceRoot":"","sources":["../../src/schema/build-up.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAcvB,wEAAwE;AACxE,eAAO,MAAM,aAAa;;;;;;EAAgD,CAAA;AAC1E,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAA;AAEzD,eAAO,MAAM,WAAW;;;;;;;;EAQtB,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAA;AAErD,eAAO,MAAM,gBAAgB;;;;;EAA+D,CAAA;AAC5F,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAE/D,2DAA2D;AAC3D,eAAO,MAAM,SAAS;;;EAA6B,CAAA;AACnD,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAA;AAEjD,4FAA4F;AAC5F,eAAO,MAAM,cAAc;;;;EAAqC,CAAA;AAChE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA;AAE3D,eAAO,MAAM,kBAAkB;;;;EAA+C,CAAA;AAC9E,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAEnE,eAAO,MAAM,YAAY;;;;;;;;;;;;iBAAyE,CAAA;AAClG,eAAO,MAAM,iBAAiB;;;;;;;;;iBAI5B,CAAA;AACF,eAAO,MAAM,UAAU;;;;;;;iBAAuE,CAAA;AAC9F,eAAO,MAAM,eAAe;;;;;;;;iBAI1B,CAAA;AACF,eAAO,MAAM,mBAAmB;;;;;;;;iBAI9B,CAAA;AAEF,qFAAqF;AACrF,eAAO,MAAM,aAAa;;;;;;;;;;;;;iBAIxB,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAA;AAEzD,2FAA2F;AAC3F,eAAO,MAAM,cAAc;;;;;;;;;;;;;iBAIzB,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA;AAE3D;;;GAGG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAStB,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAA;AAErD;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAOzB,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA"}
@@ -0,0 +1,83 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Typed layer build-ups for roof planes and ceilings: each layer is a product
4
+ * choice (a roofing, a sheathing, a framing size at a spacing) rather than an
5
+ * F2 layer list, so framing tools read the structure they frame and the
6
+ * inspector edits choices, not strings. Thicknesses are metres; spacings are
7
+ * metres on centre.
8
+ */
9
+ const Thickness = z.number().finite().nonnegative();
10
+ /** What the person calls a layer's material where the kind's own name won't do ("Brazilian cherry"). */
11
+ const LayerName = z.string().trim().min(1).max(60).optional();
12
+ /** Nominal dimensional lumber, by its actual depth (`LUMBER_DEPTH`). */
13
+ export const NominalLumber = z.enum(['2x4', '2x6', '2x8', '2x10', '2x12']);
14
+ export const RoofingKind = z.enum([
15
+ 'asphalt-3-tab',
16
+ 'architectural-shingle',
17
+ 'standing-seam-metal',
18
+ 'concrete-tile',
19
+ 'clay-tile',
20
+ 'wood-shake',
21
+ 'slate',
22
+ ]);
23
+ export const UnderlaymentKind = z.enum(['felt-15', 'felt-30', 'synthetic', 'ice-and-water']);
24
+ /** Structural panels: roof sheathing and attic decking. */
25
+ export const PanelKind = z.enum(['osb', 'plywood']);
26
+ /** Batt and blown fill the framing cavity; rigid board runs continuous over the framing. */
27
+ export const InsulationKind = z.enum(['batt', 'blown', 'rigid']);
28
+ export const InteriorFinishKind = z.enum(['drywall', 'plaster', 'wood-plank']);
29
+ export const RoofingLayer = z.object({ kind: RoofingKind, thickness: Thickness, name: LayerName });
30
+ export const UnderlaymentLayer = z.object({
31
+ kind: UnderlaymentKind,
32
+ thickness: Thickness,
33
+ name: LayerName,
34
+ });
35
+ export const PanelLayer = z.object({ kind: PanelKind, thickness: Thickness, name: LayerName });
36
+ export const InsulationLayer = z.object({
37
+ kind: InsulationKind,
38
+ thickness: Thickness,
39
+ name: LayerName,
40
+ });
41
+ export const InteriorFinishLayer = z.object({
42
+ kind: InteriorFinishKind,
43
+ thickness: Thickness,
44
+ name: LayerName,
45
+ });
46
+ /** For trusses, `size` is the top chord: the depth the roof plane's deck carries. */
47
+ export const RoofStructure = z.object({
48
+ system: z.enum(['rafters', 'trusses']),
49
+ size: NominalLumber,
50
+ spacing: z.number().finite().positive(),
51
+ });
52
+ /** `truss-chords`: the ceiling hangs from the roof trusses' bottom chords, `size` deep. */
53
+ export const CeilingFraming = z.object({
54
+ system: z.enum(['joists', 'truss-chords']),
55
+ size: NominalLumber,
56
+ spacing: z.number().finite().positive(),
57
+ });
58
+ /**
59
+ * A roof plane, outside in. Absent optional layers are none. The plane's
60
+ * `deckThickness` and `shingleThickness` derive from it (`roofBuildUpPatch`).
61
+ */
62
+ export const RoofBuildUp = z.object({
63
+ presetId: z.string().optional(),
64
+ roofing: RoofingLayer,
65
+ underlayment: UnderlaymentLayer.optional(),
66
+ sheathing: PanelLayer,
67
+ structure: RoofStructure,
68
+ insulation: InsulationLayer.optional(),
69
+ /** Under the structure, the room-facing face of a cathedral ceiling. */
70
+ finish: InteriorFinishLayer.optional(),
71
+ });
72
+ /**
73
+ * A ceiling, bottom up from its stored height (the finished underside).
74
+ * Absent layers are none.
75
+ */
76
+ export const CeilingBuildUp = z.object({
77
+ presetId: z.string().optional(),
78
+ finish: InteriorFinishLayer.optional(),
79
+ framing: CeilingFraming.optional(),
80
+ /** Over the framing, for attic storage. */
81
+ decking: PanelLayer.optional(),
82
+ insulation: InsulationLayer.optional(),
83
+ });
@@ -15,6 +15,25 @@ export declare const GEOMETRY_SCRIPT_MIME_TYPES: {
15
15
  readonly bpy: 'text/x-python';
16
16
  };
17
17
  export declare const isGeometryScriptMimeType: (mimeType: string) => boolean;
18
+ /**
19
+ * A spotlight's beam: where it points (in the object's frame), its full cone in degrees and how
20
+ * soft its edge is (0 a hard edge, 1 fully feathered).
21
+ */
22
+ export declare const LightSpot: z.ZodObject<{
23
+ direction: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
24
+ angle: z.ZodNumber;
25
+ softness: z.ZodNumber;
26
+ }, z.core.$strip>;
27
+ export type LightSpot = z.infer<typeof LightSpot>;
28
+ /**
29
+ * The soft halo drawn around a lamp itself, in the light's colour: its size across in metres and
30
+ * its strength. It shows more the darker the scene is.
31
+ */
32
+ export declare const LightGlow: z.ZodObject<{
33
+ size: z.ZodNumber;
34
+ strength: z.ZodDefault<z.ZodNumber>;
35
+ }, z.core.$strip>;
36
+ export type LightGlow = z.infer<typeof LightGlow>;
18
37
  export declare const GeometryScriptParamValue: z.ZodUnion<readonly [z.ZodNumber, z.ZodBoolean, z.ZodString]>;
19
38
  export type GeometryScriptParamValue = z.infer<typeof GeometryScriptParamValue>;
20
39
  /** A control the script declares in `export const params`. */
@@ -34,6 +53,25 @@ export declare const GeometryScriptParamSpec: z.ZodObject<{
34
53
  options: z.ZodOptional<z.ZodArray<z.ZodString>>;
35
54
  }, z.core.$strip>;
36
55
  export type GeometryScriptParamSpec = z.infer<typeof GeometryScriptParamSpec>;
56
+ /**
57
+ * What a build occupies in plan, height band by height band, for the usage checks (passages,
58
+ * pockets, clashes): `y0`..`y1` in the artifact's frame and the plan outlines (x, z) of
59
+ * everything it has in that band, traced from a conservative raster of its meshes, so an outline
60
+ * is never inside the build and at most `tolerance` metres outside it. Written by the compiler
61
+ * only when usage checks are on, so it is absent from older artifacts.
62
+ */
63
+ export declare const GeometryShape: z.ZodObject<{
64
+ tolerance: z.ZodNumber;
65
+ bands: z.ZodArray<z.ZodObject<{
66
+ y0: z.ZodNumber;
67
+ y1: z.ZodNumber;
68
+ polygons: z.ZodArray<z.ZodObject<{
69
+ outer: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
70
+ holes: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>>;
71
+ }, z.core.$strip>>;
72
+ }, z.core.$strip>>;
73
+ }, z.core.$strip>;
74
+ export type GeometryShape = z.infer<typeof GeometryShape>;
37
75
  /**
38
76
  * What the compiler read from the script's output, by naming convention:
39
77
  * `part:<id>` objects, `slot_<id>` materials, `anchor:<id>` empties, lights
@@ -94,6 +132,16 @@ export declare const GeometryArtifactManifest: z.ZodObject<{
94
132
  color: z.ZodString;
95
133
  intensity: z.ZodNumber;
96
134
  distance: z.ZodOptional<z.ZodNumber>;
135
+ spot: z.ZodOptional<z.ZodObject<{
136
+ direction: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
137
+ angle: z.ZodNumber;
138
+ softness: z.ZodNumber;
139
+ }, z.core.$strip>>;
140
+ shadows: z.ZodOptional<z.ZodBoolean>;
141
+ glow: z.ZodOptional<z.ZodObject<{
142
+ size: z.ZodNumber;
143
+ strength: z.ZodDefault<z.ZodNumber>;
144
+ }, z.core.$strip>>;
97
145
  }, z.core.$strip>>>;
98
146
  undersides: z.ZodDefault<z.ZodArray<z.ZodObject<{
99
147
  part: z.ZodOptional<z.ZodString>;
@@ -117,6 +165,17 @@ export declare const GeometryArtifactManifest: z.ZodObject<{
117
165
  }, z.core.$strip>>>;
118
166
  cutout: z.ZodDefault<z.ZodBoolean>;
119
167
  collider: z.ZodDefault<z.ZodBoolean>;
168
+ shape: z.ZodOptional<z.ZodObject<{
169
+ tolerance: z.ZodNumber;
170
+ bands: z.ZodArray<z.ZodObject<{
171
+ y0: z.ZodNumber;
172
+ y1: z.ZodNumber;
173
+ polygons: z.ZodArray<z.ZodObject<{
174
+ outer: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
175
+ holes: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>>;
176
+ }, z.core.$strip>>;
177
+ }, z.core.$strip>>;
178
+ }, z.core.$strip>>;
120
179
  triangles: z.ZodNumber;
121
180
  coverage: z.ZodOptional<z.ZodNumber>;
122
181
  uncovered: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -220,6 +279,16 @@ export declare const GeometryScriptSource: z.ZodObject<{
220
279
  color: z.ZodString;
221
280
  intensity: z.ZodNumber;
222
281
  distance: z.ZodOptional<z.ZodNumber>;
282
+ spot: z.ZodOptional<z.ZodObject<{
283
+ direction: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
284
+ angle: z.ZodNumber;
285
+ softness: z.ZodNumber;
286
+ }, z.core.$strip>>;
287
+ shadows: z.ZodOptional<z.ZodBoolean>;
288
+ glow: z.ZodOptional<z.ZodObject<{
289
+ size: z.ZodNumber;
290
+ strength: z.ZodDefault<z.ZodNumber>;
291
+ }, z.core.$strip>>;
223
292
  }, z.core.$strip>>>;
224
293
  undersides: z.ZodDefault<z.ZodArray<z.ZodObject<{
225
294
  part: z.ZodOptional<z.ZodString>;
@@ -243,6 +312,17 @@ export declare const GeometryScriptSource: z.ZodObject<{
243
312
  }, z.core.$strip>>>;
244
313
  cutout: z.ZodDefault<z.ZodBoolean>;
245
314
  collider: z.ZodDefault<z.ZodBoolean>;
315
+ shape: z.ZodOptional<z.ZodObject<{
316
+ tolerance: z.ZodNumber;
317
+ bands: z.ZodArray<z.ZodObject<{
318
+ y0: z.ZodNumber;
319
+ y1: z.ZodNumber;
320
+ polygons: z.ZodArray<z.ZodObject<{
321
+ outer: z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
322
+ holes: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>>;
323
+ }, z.core.$strip>>;
324
+ }, z.core.$strip>>;
325
+ }, z.core.$strip>>;
246
326
  triangles: z.ZodNumber;
247
327
  coverage: z.ZodOptional<z.ZodNumber>;
248
328
  uncovered: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"geometry-source.d.ts","sourceRoot":"","sources":["../../src/schema/geometry-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,8EAA8E;AAC9E,eAAO,MAAM,yBAAyB,QAAY,CAAA;AAClD,+EAA+E;AAC/E,eAAO,MAAM,2BAA2B,QAAY,CAAA;AAEpD,2GAA2G;AAC3G,eAAO,MAAM,sBAAsB;;;EAA2B,CAAA;AAC9D,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE3E,kEAAkE;AAClE,eAAO,MAAM,0BAA0B;oBAC9B,iBAAiB;kBACnB,eAAe;CACqC,CAAA;AAE3D,eAAO,MAAM,wBAAwB,aAAc,MAAM,YACoB,CAAA;AAK7E,eAAO,MAAM,wBAAwB,+DAA6C,CAAA;AAClF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE/E,8DAA8D;AAC9D,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;iBAUlC,CAAA;AACF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA+FnC,CAAA;AACF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE/E,eAAO,MAAM,mBAAmB;;;;;EAAoD,CAAA;AACpF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAErE,gHAAgH;AAChH,MAAM,MAAM,sBAAsB,GAAG;IACnC,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,yBAAyB;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,kDAAkD;IAClD,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,sBAAsB,CAAA;IAChC,KAAK,EAAE,mBAAmB,CAAA;IAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAA;IAChD,QAAQ,EAAE,wBAAwB,CAAA;CACnC,CAAA;AAID;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAgB/B,CAAA;AACF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
1
+ {"version":3,"file":"geometry-source.d.ts","sourceRoot":"","sources":["../../src/schema/geometry-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,8EAA8E;AAC9E,eAAO,MAAM,yBAAyB,QAAY,CAAA;AAClD,+EAA+E;AAC/E,eAAO,MAAM,2BAA2B,QAAY,CAAA;AAEpD,2GAA2G;AAC3G,eAAO,MAAM,sBAAsB;;;EAA2B,CAAA;AAC9D,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE3E,kEAAkE;AAClE,eAAO,MAAM,0BAA0B;oBAC9B,iBAAiB;kBACnB,eAAe;CACqC,CAAA;AAE3D,eAAO,MAAM,wBAAwB,aAAc,MAAM,YACoB,CAAA;AAK7E;;;GAGG;AACH,eAAO,MAAM,SAAS;;;;iBAIpB,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAA;AAEjD;;;GAGG;AACH,eAAO,MAAM,SAAS;;;iBAGpB,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAA;AAEjD,eAAO,MAAM,wBAAwB,+DAA6C,CAAA;AAClF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE/E,8DAA8D;AAC9D,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;iBAUlC,CAAA;AACF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAK7E;;;;;;GAMG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;iBASxB,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAA;AAEzD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmGnC,CAAA;AACF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE/E,eAAO,MAAM,mBAAmB;;;;;EAAoD,CAAA;AACpF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAErE,gHAAgH;AAChH,MAAM,MAAM,sBAAsB,GAAG;IACnC,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,yBAAyB;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,kDAAkD;IAClD,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,sBAAsB,CAAA;IAChC,KAAK,EAAE,mBAAmB,CAAA;IAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAA;IAChD,QAAQ,EAAE,wBAAwB,CAAA;CACnC,CAAA;AAID;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAgB/B,CAAA;AACF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
@@ -14,6 +14,23 @@ export const GEOMETRY_SCRIPT_MIME_TYPES = {
14
14
  export const isGeometryScriptMimeType = (mimeType) => Object.values(GEOMETRY_SCRIPT_MIME_TYPES).some((type) => type === mimeType);
15
15
  const finite = z.number().finite();
16
16
  const vec3 = z.tuple([finite, finite, finite]);
17
+ /**
18
+ * A spotlight's beam: where it points (in the object's frame), its full cone in degrees and how
19
+ * soft its edge is (0 a hard edge, 1 fully feathered).
20
+ */
21
+ export const LightSpot = z.object({
22
+ direction: vec3.refine((v) => Math.hypot(...v) > 1e-6, 'A spot needs a direction'),
23
+ angle: z.number().min(1).max(179),
24
+ softness: z.number().min(0).max(1),
25
+ });
26
+ /**
27
+ * The soft halo drawn around a lamp itself, in the light's colour: its size across in metres and
28
+ * its strength. It shows more the darker the scene is.
29
+ */
30
+ export const LightGlow = z.object({
31
+ size: z.number().positive().max(5),
32
+ strength: z.number().nonnegative().max(10).default(1),
33
+ });
17
34
  export const GeometryScriptParamValue = z.union([finite, z.boolean(), z.string()]);
18
35
  /** A control the script declares in `export const params`. */
19
36
  export const GeometryScriptParamSpec = z.object({
@@ -27,6 +44,23 @@ export const GeometryScriptParamSpec = z.object({
27
44
  unit: z.string().optional(),
28
45
  options: z.array(z.string()).optional(),
29
46
  });
47
+ const planPoint = z.tuple([finite, finite]);
48
+ const planRing = z.array(planPoint).min(3);
49
+ /**
50
+ * What a build occupies in plan, height band by height band, for the usage checks (passages,
51
+ * pockets, clashes): `y0`..`y1` in the artifact's frame and the plan outlines (x, z) of
52
+ * everything it has in that band, traced from a conservative raster of its meshes, so an outline
53
+ * is never inside the build and at most `tolerance` metres outside it. Written by the compiler
54
+ * only when usage checks are on, so it is absent from older artifacts.
55
+ */
56
+ export const GeometryShape = z.object({
57
+ tolerance: finite,
58
+ bands: z.array(z.object({
59
+ y0: finite,
60
+ y1: finite,
61
+ polygons: z.array(z.object({ outer: planRing, holes: z.array(planRing).optional() })),
62
+ })),
63
+ });
30
64
  /**
31
65
  * What the compiler read from the script's output, by naming convention:
32
66
  * `part:<id>` objects, `slot_<id>` materials, `anchor:<id>` empties, lights
@@ -74,6 +108,9 @@ export const GeometryArtifactManifest = z.object({
74
108
  color: z.string(),
75
109
  intensity: finite,
76
110
  distance: finite.optional(),
111
+ spot: LightSpot.optional(),
112
+ shadows: z.boolean().optional(),
113
+ glow: LightGlow.optional(),
77
114
  }))
78
115
  .default([]),
79
116
  /**
@@ -101,6 +138,7 @@ export const GeometryArtifactManifest = z.object({
101
138
  .optional(),
102
139
  cutout: z.boolean().default(false),
103
140
  collider: z.boolean().default(false),
141
+ shape: GeometryShape.optional(),
104
142
  triangles: z.number().int().nonnegative(),
105
143
  /**
106
144
  * Built for a room's floor or a wall face: the share of it (less its holes) the build covers,
@@ -1,29 +1,31 @@
1
1
  export { ProceduralItemNode } from '../procedural-items/node.js';
2
2
  export { SOLAR_PANEL_PRESET_LABELS, SOLAR_PANEL_PRESETS, type SolarPanelPresetDims, SolarPanelPresetKey, } from '../solar-panel-presets.js';
3
3
  export { Assembly, AssemblyLayer, AssemblyLayerId, LayerRole } from './assembly.js';
4
- export { ALLOWED_ORIGINS_ENV, ALLOWED_SCHEMES, AssetUrl } from './asset-url.js';
4
+ export { __resetAllowedOriginsCacheForTests, ALLOWED_ORIGINS_ENV, ALLOWED_SCHEMES, type AllowedOriginIssue, AssetUrl, allowedOriginsFrom, parseAllowedOrigins, } from './asset-url.js';
5
5
  export { BaseNode, generateId, Material, nodeType, objectId } from './base.js';
6
+ export { CeilingBuildUp, CeilingFraming, InsulationKind, InsulationLayer, InteriorFinishKind, InteriorFinishLayer, NominalLumber, PanelKind, PanelLayer, RoofBuildUp, RoofingKind, RoofingLayer, RoofStructure, UnderlaymentKind, UnderlaymentLayer, } from './build-up.js';
6
7
  export { CameraSchema } from './camera.js';
7
8
  export { COLLECTION_TEMPLATE_IDS, COLLECTION_TEMPLATES, type CollectionTemplateId, } from './collection-templates.js';
8
9
  export { type Collection, type CollectionId, generateCollectionId } from './collections.js';
9
10
  export { compiledNodeParsersEnabled, enableCompiledNodeParsers, parseNode, } from './compiled-node-parsers.js';
10
11
  export { CutIntent, CutShape } from './cut.js';
11
12
  export { GeometryArtifactMetadata, GeometryReuseFields, GeometrySourceMeta, } from './geometry-metadata.js';
12
- export { type CompiledGeometryScript, GEOMETRY_MANIFEST_MAX_BYTES, GEOMETRY_SCRIPT_MAX_BYTES, GEOMETRY_SCRIPT_MIME_TYPES, GeometryArtifactManifest, GeometryScriptLanguage, GeometryScriptMount, GeometryScriptParamSpec, GeometryScriptParamValue, GeometryScriptSource, isGeometryScriptMimeType, } from './geometry-source.js';
13
+ export { type CompiledGeometryScript, GEOMETRY_MANIFEST_MAX_BYTES, GEOMETRY_SCRIPT_MAX_BYTES, GEOMETRY_SCRIPT_MIME_TYPES, GeometryArtifactManifest, GeometryScriptLanguage, GeometryScriptMount, GeometryScriptParamSpec, GeometryScriptParamValue, GeometryScriptSource, GeometryShape, isGeometryScriptMimeType, LightGlow, LightSpot, } from './geometry-source.js';
13
14
  export type { MaterialMapProperties, MaterialMaps, MaterialPresetPayload, MaterialTarget as MaterialTargetValue, TextureWrapMode as TextureWrapModeValue, } from './material.js';
14
15
  export { DEFAULT_MATERIALS, MaterialMapPropertiesSchema, MaterialMapsSchema, MaterialPreset, MaterialPresetPayloadSchema, MaterialProperties, MaterialSchema, MaterialTarget, resolveMaterial, TextureWrapMode, } from './material.js';
15
16
  export { type AutoDownspoutPlacement, type AutomaticDownspoutInput, planAutomaticDownspouts, resolveAutomaticDownspoutLength, } from './nodes/automatic-downspout.js';
17
+ export { BEAM_SIZE_PRESETS, BeamMaterial, BeamNode, BeamPlacement, type BeamSizePreset, type BeamSizePresetId, DEFAULT_BEAM_SIZE_PRESET_ID, } from './nodes/beam.js';
16
18
  export { BlockEdge, BlockFace, type BlockFaceFrame, BlockNode, BlockTopology, type BlockTopologyIssue, BlockVertex, blockUndirectedEdgeKey, createBoxBlockTopology, getBlockFaceCentroid, getBlockFaceFrame, getBlockFaceNormal, inspectBlockTopology, } from './nodes/block.js';
17
19
  export { BoxVentMaterialRole, BoxVentNode } from './nodes/box-vent.js';
18
20
  export { BuildingNode } from './nodes/building.js';
19
21
  export { CABINET_METRIC_DEFAULTS, CabinetFrontStyleSchema, CabinetModuleNode, CabinetNode, CabinetTopFinishSchema, } from './nodes/cabinet.js';
20
22
  export { CeilingNode } from './nodes/ceiling.js';
21
23
  export { ChimneyMaterialRole, ChimneyNode } from './nodes/chimney.js';
22
- export { COLUMN_PRESETS, ColumnBaseStyle, ColumnCapitalStyle, ColumnCarvingPlacement, ColumnCrossSection, ColumnNode, ColumnPanelShape, type ColumnPresetId, ColumnRingPlacement, ColumnShaftDetail, ColumnShaftProfile, ColumnStyle, ColumnSupportStyle, } from './nodes/column.js';
24
+ export { COLUMN_PRESETS, ColumnBaseStyle, ColumnCapitalStyle, ColumnCarvingPlacement, ColumnCrossSection, ColumnNode, ColumnPanelShape, ColumnPostBase, type ColumnPresetId, ColumnRingPlacement, ColumnShaftDetail, ColumnShaftProfile, ColumnStyle, ColumnSupportStyle, } from './nodes/column.js';
23
25
  export { CONSTRUCTION_DRAWING_TYPES, ConstructionDimensionBaseline, ConstructionDimensionChainMode, ConstructionDimensionDatumPolicy, ConstructionDimensionDrawingOverride, ConstructionDimensionDrawingPresentation, ConstructionDimensionImperialPrecision, ConstructionDimensionMetricNotation, ConstructionDimensionMode, ConstructionDimensionNode, ConstructionDimensionTerminator, ConstructionDimensionTextPosition, ConstructionDrawingType, constructionDimensionRequiredAnchorCount, resolveConstructionDimensionDrawingOverride, resolveConstructionDimensionDrawingPresentation, setConstructionDimensionDrawingPresentation, setConstructionDimensionDrawingSuppressedSegments, } from './nodes/construction-dimension.js';
24
26
  export { CupolaMaterialRole, CupolaNode } from './nodes/cupola.js';
25
27
  export { CurtainGrid, CurtainPanelType, CurtainWallConfig, curtainGridPositions, DEFAULT_CURTAIN_WALL, getCurtainWallConfig, } from './nodes/curtain-wall.js';
26
- export { DoorNode, DoorSegment, FRENCH_DOOR_SEGMENTS, OpeningConstructionType, OpeningDimensionReference, } from './nodes/door.js';
28
+ export { DoorHandleStyle, DoorNode, DoorSegment, doorHandleStyle, FRENCH_DOOR_SEGMENTS, OpeningConstructionType, OpeningDimensionReference, } from './nodes/door.js';
27
29
  export { createDormerDefaultWindow, DormerNode, type DormerSurfaceMaterialRole, type DormerSurfaceMaterialSpec, DormerWallFace, dormerPointToWallFace, dormerWallFacePointToDormer, getDormerDefaultWindowFace, getDormerExposedFaces, getDormerWallFaceFrame, getDormerWallHorizontalBoundsAtHeight, getDormerWallOpeningVerticalBounds, getDormerWallVerticalBounds, getEffectiveDormerSurfaceMaterial, } from './nodes/dormer.js';
28
30
  export { DownspoutNode, defaultDownspoutMetadata, isDefaultDownspoutNode, usesAutomaticDownspoutLength, } from './nodes/downspout.js';
29
31
  export { DuctFittingNode } from './nodes/duct-fitting.js';
@@ -48,12 +50,13 @@ export { AngleMeasurement, AreaMeasurement, DistanceMeasurement, MeasurementAnch
48
50
  export { PipeFittingNode } from './nodes/pipe-fitting.js';
49
51
  export { PipeSegmentNode } from './nodes/pipe-segment.js';
50
52
  export { PipeTrapNode } from './nodes/pipe-trap.js';
53
+ export { DEFAULT_RAILING_WALL, getRailingWallConfig, getRailingWallHeight, isRailingWall, RAILING_GUARD_HEIGHT, RAILING_GUARD_HEIGHT_TALL, RAILING_MAX_POST_SPACING, RAILING_SPHERE_LIMIT, RAILING_STYLE_DEFAULTS, RailingWallConfig, type RailingWallPatch, type RailingWallSlotId, RailingWallStyle, railingOpeningFields, railingWallDefaults, railingWallSlotDefault, } from './nodes/railing-wall.js';
51
54
  export { createDefaultRidgeVentsForSegment, getRidgeVentLinesForSegment, hasAutoRidgeVentMetadata, isAutoRidgeVentEnabled, isDefaultRidgeVentNode, type RidgeVentLine, RidgeVentNode, } from './nodes/ridge-vent.js';
52
55
  export type { RoofSupport, RoofSurfaceMaterialRole, RoofSurfaceMaterialSpec } from './nodes/roof.js';
53
56
  export { getEffectiveRoofSurfaceMaterial, RoofNode } from './nodes/roof.js';
54
57
  export { clipGlazedRoofPolygon, DEFAULT_ROOF_GLAZING, type GlazedRoofFace, type GlazedRoofLayout, type GlazedRoofPiece, type GlazedRoofPoint, getBarrelRoofFaces, getBarrelRoofSolidPieces, getGlazedRoofFaces, getGlazedRoofLayout, getGlazedRoofPanelType, getGlazedRoofPieceFaces, getGlazedRoofPieces, getGlazedRoofPlanLines, getRoofGlazing, glazedRoofFacePoint, glazedRoofSupportsPoint, insetGlazedRoofPolygon, isGlazedRoofSegment, isIndependentRoofSegment, RoofGlazing, RoofSystemType, supportsRoofGlazing, } from './nodes/roof-glazing.js';
55
- export type { DutchRoofMetrics, RoofSegmentSurfaceMaterialRole, RoofSegmentSurfaceMaterialSpec, RoofSegmentVisibleTopBounds, SegmentSlopeFrame, } from './nodes/roof-segment.js';
56
- export { getActiveRoofHeight, getConicalRoofCoverage, getDutchRoofMetrics, getEffectiveSegmentSurfaceMaterial, getPitchFromActiveRoofHeight, getRoofSegmentDeckReach, getRoofSegmentEndReach, getRoofSegmentSurfaceY, getRoofSegmentVisibleTopBounds, getSegmentFasciaMaterial, getSegmentSlopeFrame, hasSegmentMaterialOverride, isBandedShedSegment, MIN_ROOF_SEGMENT_TRIM_SPAN, normalizeRoofSegmentTrim, ROOF_SHAPE_DEFAULTS, RoofSegmentNode, RoofSegmentTrim, RoofType, roofTypeHasRakes, } from './nodes/roof-segment.js';
58
+ export type { DutchRoofMetrics, RoofSegmentSurfaceMaterialRole, RoofSegmentSurfaceMaterialSpec, RoofSegmentVisibleTopBounds, RoofWallBand, SegmentSlopeFrame, } from './nodes/roof-segment.js';
59
+ export { getActiveRoofHeight, getConicalRoofCoverage, getDutchRoofMetrics, getEffectiveSegmentSurfaceMaterial, getPitchFromActiveRoofHeight, getRoofSegmentDeckReach, getRoofSegmentEndReach, getRoofSegmentSurfaceY, getRoofSegmentVisibleTopBounds, getRoofWallBandMaterial, getSegmentFasciaMaterial, getSegmentSlopeFrame, hasSegmentMaterialOverride, isBandedShedSegment, MIN_ROOF_SEGMENT_TRIM_SPAN, normalizeRoofSegmentTrim, ROOF_SHAPE_DEFAULTS, ROOF_WALL_BANDS, RoofEaveCut, RoofSegmentNode, RoofSegmentTrim, RoofType, roofTypeHasRakes, roofWallBandFields, } from './nodes/roof-segment.js';
57
60
  export { getRoofSegmentResizePatch } from './nodes/roof-segment-resize.js';
58
61
  export type { DutchRoofShapeMetrics, RoofShapeEaveSide, RoofShapeFaceVertex, RoofShapeInsets, RoofShapeRatios, } from './nodes/roof-segment-shape.js';
59
62
  export { getDutchEndSlopeFaces, getDutchRoofShapeMetrics, getRoofModuleFaces, getRoofShapeEaveOverhang, getRoofShapeEaveSides, getRoofShapeInsets, getRoofShapeRatios, } from './nodes/roof-segment-shape.js';
@@ -72,13 +75,14 @@ export type { StairSurfaceMaterialRole, StairSurfaceMaterialSpec } from './nodes
72
75
  export { getEffectiveStairSurfaceMaterial, StairDesignTargets, StairNode, StairRailingMode, StairRailingStyle, StairSlabOpeningMode, StairTopLandingMode, StairType, } from './nodes/stair.js';
73
76
  export { StairConstruction } from './nodes/stair-construction.js';
74
77
  export { AttachmentSide, StairSegmentNode, StairSegmentType } from './nodes/stair-segment.js';
78
+ export { STAIR_STRINGER_SPACINGS_IN, StairStringerStock, StairStringerType, StairStructure, StairStructureType, StairTreadStock, } from './nodes/stair-structure.js';
75
79
  export { StructuralGridNode } from './nodes/structural-grid.js';
76
80
  export { SurfaceHoleMetadata } from './nodes/surface-hole-metadata.js';
77
81
  export { SurfacePaintRegion } from './nodes/surface-paint-region.js';
78
82
  export { TurbineVentMaterialRole, TurbineVentNode } from './nodes/turbine-vent.js';
79
83
  export { DEFAULT_UNIT_COLOR, UNIT_KINDS, type UnitKind, UnitNode } from './nodes/unit.js';
80
84
  export type { WallFace, WallSurfaceMaterialSpec, WallSurfaceSide, WallSurfaceSlotId, WallTrimConfig, WallTrimKind, WallTrimSlotId, } from './nodes/wall.js';
81
- export { getEffectiveWallFaceMaterial, getEffectiveWallSurfaceMaterial, getWallSurfaceMaterialSignature, getWallTrimFaces, getWallTrimSlotId, WALL_CHAIR_RAIL_DEFAULT, WALL_CHAIR_RAIL_SLOT_DEFAULT, WALL_CROWN_DEFAULT, WALL_CROWN_SLOT_DEFAULT, WALL_FACE_REGION_LIMIT, WALL_SKIRTING_DEFAULT, WALL_SKIRTING_SLOT_DEFAULT, WALL_SLOT_DEFAULT, WALL_SURFACE_SLOT_DEFAULTS, WALL_TRIM_DEFAULTS, WallAssembly, WallAssemblyExteriorFinish, WallAssemblyFramingKind, WallAssemblyInteriorFinish, WallAssemblySheathingMaterial, WallFaceRegion, WallFaceScript, WallNode, WallTreatmentSide, WallTrimProfile, } from './nodes/wall.js';
85
+ export { DEFAULT_EXTERIOR_WALL_FINISH, DEFAULT_INTERIOR_WALL_PAINT, getEffectiveWallFaceMaterial, getEffectiveWallSurfaceMaterial, getWallFaceDefault, getWallSurfaceMaterialSignature, getWallTrimFaces, getWallTrimSlotId, WALL_CHAIR_RAIL_DEFAULT, WALL_CHAIR_RAIL_SLOT_DEFAULT, WALL_CROWN_DEFAULT, WALL_CROWN_SLOT_DEFAULT, WALL_FACE_REGION_LIMIT, WALL_SKIRTING_DEFAULT, WALL_SKIRTING_SLOT_DEFAULT, WALL_SLOT_DEFAULT, WALL_SURFACE_SLOT_DEFAULTS, WALL_TRIM_DEFAULTS, WallAssembly, WallAssemblyExteriorFinish, WallAssemblyFramingKind, WallAssemblyInteriorFinish, WallAssemblySheathingMaterial, WallFaceRegion, WallFaceScript, WallNode, WallTreatmentSide, WallTrimProfile, } from './nodes/wall.js';
82
86
  export { WindowConstructionType, WindowDimensionReference, WindowNode, WindowType, } from './nodes/window.js';
83
87
  export { ZoneFloorScript, ZoneNode } from './nodes/zone.js';
84
88
  export { PROVENANCE_MAX_ID_BYTES, PROVENANCE_MAX_LINEAGE_IDS, PROVENANCE_MAX_NAMESPACE_BYTES, PROVENANCE_MAX_NODE_ID_BYTES, PROVENANCE_MAX_REFS, Provenance, ProvenanceLineage, ProvenanceLineageOp, ProvenanceRef, ProvenanceRole, } from './provenance.js';
@@ -87,4 +91,5 @@ export { type ParsedSourceRef, parseSourceRef, SourceRefString } from './source-
87
91
  export { MAX_TERRAIN_SIDE, TerrainData } from './terrain.js';
88
92
  export type { Anchor, AnchorPolicy, AnyNodeId, AnyNodeOption, AnyNodeType, DefinitionPin, Discipline, DisplayFamily, DisplayMode, EndCut, FidelityV2, FidelityV3, FitTarget, MaterialPattern, MaterialPatternType, Mount, MountAlign, MountHost, PartKey, ResolvedSectionProfile, SectionFamily, SectionLibraryEntry, SectionProfile, SitePresentation, SurfaceAnchor, SurfacePatchId, SweepEndSpec, WallMountDatum, } from './types.js';
89
93
  export { AnyNode, nodeKindOf } from './types.js';
94
+ export { CUSTOM_WALL_TYPE_PREFIX, newWallTypeId, WallTypeDefinition, WallTypeDefinitionId, } from './wall-type.js';
90
95
  //# sourceMappingURL=index.d.ts.map