@pascal-app/core 1.0.4 → 1.0.6

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 (866) hide show
  1. package/dist/agent-operations/__fixtures__/add-object-cases.d.ts +102 -90
  2. package/dist/agent-operations/__fixtures__/add-object-cases.d.ts.map +1 -1
  3. package/dist/agent-operations/__fixtures__/add-object-cases.js +301 -1
  4. package/dist/agent-operations/__fixtures__/add-stair-cases.d.ts +3 -0
  5. package/dist/agent-operations/__fixtures__/add-stair-cases.d.ts.map +1 -0
  6. package/dist/agent-operations/__fixtures__/add-stair-cases.js +176 -0
  7. package/dist/agent-operations/__fixtures__/build-room-cases.d.ts.map +1 -1
  8. package/dist/agent-operations/__fixtures__/build-room-cases.js +410 -40
  9. package/dist/agent-operations/__fixtures__/cases.d.ts +18 -3
  10. package/dist/agent-operations/__fixtures__/cases.d.ts.map +1 -1
  11. package/dist/agent-operations/__fixtures__/cases.js +183 -4
  12. package/dist/agent-operations/__fixtures__/corner-window-cases.d.ts +3 -0
  13. package/dist/agent-operations/__fixtures__/corner-window-cases.d.ts.map +1 -0
  14. package/dist/agent-operations/__fixtures__/corner-window-cases.js +155 -0
  15. package/dist/agent-operations/__fixtures__/design-brief-cases.d.ts +14 -0
  16. package/dist/agent-operations/__fixtures__/design-brief-cases.d.ts.map +1 -0
  17. package/dist/agent-operations/__fixtures__/design-brief-cases.js +709 -0
  18. package/dist/agent-operations/__fixtures__/finish-cases.d.ts +7 -0
  19. package/dist/agent-operations/__fixtures__/finish-cases.d.ts.map +1 -0
  20. package/dist/agent-operations/__fixtures__/finish-cases.js +758 -0
  21. package/dist/agent-operations/__fixtures__/lot-info-cases.d.ts +3 -0
  22. package/dist/agent-operations/__fixtures__/lot-info-cases.d.ts.map +1 -0
  23. package/dist/agent-operations/__fixtures__/lot-info-cases.js +370 -0
  24. package/dist/agent-operations/__fixtures__/merge-windows-cases.d.ts +3 -0
  25. package/dist/agent-operations/__fixtures__/merge-windows-cases.d.ts.map +1 -0
  26. package/dist/agent-operations/__fixtures__/merge-windows-cases.js +321 -0
  27. package/dist/agent-operations/__fixtures__/native-materials.d.ts +2237 -0
  28. package/dist/agent-operations/__fixtures__/native-materials.d.ts.map +1 -0
  29. package/dist/agent-operations/__fixtures__/native-materials.js +82 -0
  30. package/dist/agent-operations/__fixtures__/node-read-cases.d.ts +4 -0
  31. package/dist/agent-operations/__fixtures__/node-read-cases.d.ts.map +1 -0
  32. package/dist/agent-operations/__fixtures__/node-read-cases.js +639 -0
  33. package/dist/agent-operations/__fixtures__/notation-cases.d.ts +24 -0
  34. package/dist/agent-operations/__fixtures__/notation-cases.d.ts.map +1 -0
  35. package/dist/agent-operations/__fixtures__/notation-cases.js +356 -0
  36. package/dist/agent-operations/__fixtures__/place-items-cases.d.ts.map +1 -1
  37. package/dist/agent-operations/__fixtures__/place-items-cases.js +80 -2
  38. package/dist/agent-operations/__fixtures__/roof-bearing-cases.d.ts +19726 -0
  39. package/dist/agent-operations/__fixtures__/roof-bearing-cases.d.ts.map +1 -0
  40. package/dist/agent-operations/__fixtures__/roof-bearing-cases.js +106 -0
  41. package/dist/agent-operations/__fixtures__/roof-cases.d.ts +9 -0
  42. package/dist/agent-operations/__fixtures__/roof-cases.d.ts.map +1 -0
  43. package/dist/agent-operations/__fixtures__/roof-cases.js +382 -0
  44. package/dist/agent-operations/__fixtures__/room-cases.d.ts +2 -1
  45. package/dist/agent-operations/__fixtures__/room-cases.d.ts.map +1 -1
  46. package/dist/agent-operations/__fixtures__/room-cases.js +136 -1
  47. package/dist/agent-operations/__fixtures__/scene-check-cases.d.ts +4 -0
  48. package/dist/agent-operations/__fixtures__/scene-check-cases.d.ts.map +1 -0
  49. package/dist/agent-operations/__fixtures__/scene-check-cases.js +417 -0
  50. package/dist/agent-operations/__fixtures__/search-assets-cases.d.ts.map +1 -1
  51. package/dist/agent-operations/__fixtures__/search-assets-cases.js +15 -3
  52. package/dist/agent-operations/__fixtures__/site-cases.d.ts +290 -0
  53. package/dist/agent-operations/__fixtures__/site-cases.d.ts.map +1 -0
  54. package/dist/agent-operations/__fixtures__/site-cases.js +780 -0
  55. package/dist/agent-operations/__fixtures__/structure-cases.d.ts +1 -0
  56. package/dist/agent-operations/__fixtures__/structure-cases.d.ts.map +1 -1
  57. package/dist/agent-operations/__fixtures__/structure-cases.js +630 -3
  58. package/dist/agent-operations/__fixtures__/verify-scene-cases.d.ts +311 -1
  59. package/dist/agent-operations/__fixtures__/verify-scene-cases.d.ts.map +1 -1
  60. package/dist/agent-operations/__fixtures__/verify-scene-cases.js +59 -11
  61. package/dist/agent-operations/__fixtures__/view-assets-cases.d.ts +3 -0
  62. package/dist/agent-operations/__fixtures__/view-assets-cases.d.ts.map +1 -0
  63. package/dist/agent-operations/__fixtures__/view-assets-cases.js +155 -0
  64. package/dist/agent-operations/__fixtures__/view-scene-cases.d.ts +50 -0
  65. package/dist/agent-operations/__fixtures__/view-scene-cases.d.ts.map +1 -0
  66. package/dist/agent-operations/__fixtures__/view-scene-cases.js +425 -0
  67. package/dist/agent-operations/achieved.d.ts +5 -0
  68. package/dist/agent-operations/achieved.d.ts.map +1 -1
  69. package/dist/agent-operations/achieved.js +21 -1
  70. package/dist/agent-operations/add-column.d.ts.map +1 -1
  71. package/dist/agent-operations/add-column.js +3 -1
  72. package/dist/agent-operations/add-fence.d.ts +18 -0
  73. package/dist/agent-operations/add-fence.d.ts.map +1 -0
  74. package/dist/agent-operations/add-fence.js +48 -0
  75. package/dist/agent-operations/add-level.d.ts +4 -1
  76. package/dist/agent-operations/add-level.d.ts.map +1 -1
  77. package/dist/agent-operations/add-level.js +48 -12
  78. package/dist/agent-operations/add-object.d.ts +38 -9
  79. package/dist/agent-operations/add-object.d.ts.map +1 -1
  80. package/dist/agent-operations/add-object.js +172 -11
  81. package/dist/agent-operations/add-wall.d.ts +1 -3
  82. package/dist/agent-operations/add-wall.d.ts.map +1 -1
  83. package/dist/agent-operations/add-wall.js +35 -9
  84. package/dist/agent-operations/apply-changes.d.ts +7 -1
  85. package/dist/agent-operations/apply-changes.d.ts.map +1 -1
  86. package/dist/agent-operations/apply-changes.js +54 -22
  87. package/dist/agent-operations/apply-outcome.d.ts +6 -0
  88. package/dist/agent-operations/apply-outcome.d.ts.map +1 -1
  89. package/dist/agent-operations/apply-outcome.js +23 -8
  90. package/dist/agent-operations/asset-views.d.ts +75 -0
  91. package/dist/agent-operations/asset-views.d.ts.map +1 -0
  92. package/dist/agent-operations/asset-views.js +234 -0
  93. package/dist/agent-operations/author-scene.d.ts +157 -0
  94. package/dist/agent-operations/author-scene.d.ts.map +1 -0
  95. package/dist/agent-operations/author-scene.js +1076 -0
  96. package/dist/agent-operations/authored-scene-merge.d.ts +4 -0
  97. package/dist/agent-operations/authored-scene-merge.d.ts.map +1 -0
  98. package/dist/agent-operations/authored-scene-merge.js +96 -0
  99. package/dist/agent-operations/batch.d.ts +22 -0
  100. package/dist/agent-operations/batch.d.ts.map +1 -0
  101. package/dist/agent-operations/batch.js +104 -0
  102. package/dist/agent-operations/ceiling-object-observations.d.ts +31 -0
  103. package/dist/agent-operations/ceiling-object-observations.d.ts.map +1 -0
  104. package/dist/agent-operations/ceiling-object-observations.js +111 -0
  105. package/dist/agent-operations/corner-window.d.ts +19 -0
  106. package/dist/agent-operations/corner-window.d.ts.map +1 -0
  107. package/dist/agent-operations/corner-window.js +84 -0
  108. package/dist/agent-operations/create-roof.d.ts +32 -0
  109. package/dist/agent-operations/create-roof.d.ts.map +1 -0
  110. package/dist/agent-operations/create-roof.js +304 -0
  111. package/dist/agent-operations/create-room.d.ts +2 -0
  112. package/dist/agent-operations/create-room.d.ts.map +1 -1
  113. package/dist/agent-operations/create-room.js +73 -5
  114. package/dist/agent-operations/create-stair.d.ts +6 -28
  115. package/dist/agent-operations/create-stair.d.ts.map +1 -1
  116. package/dist/agent-operations/create-stair.js +187 -104
  117. package/dist/agent-operations/design-brief.d.ts +38 -0
  118. package/dist/agent-operations/design-brief.d.ts.map +1 -0
  119. package/dist/agent-operations/design-brief.js +300 -0
  120. package/dist/agent-operations/designs.d.ts +24 -0
  121. package/dist/agent-operations/designs.d.ts.map +1 -0
  122. package/dist/agent-operations/designs.js +48 -0
  123. package/dist/agent-operations/door-clearance.d.ts +16 -1
  124. package/dist/agent-operations/door-clearance.d.ts.map +1 -1
  125. package/dist/agent-operations/door-clearance.js +61 -4
  126. package/dist/agent-operations/duplicate-level.d.ts.map +1 -1
  127. package/dist/agent-operations/duplicate-level.js +2 -1
  128. package/dist/agent-operations/find-by-type.d.ts +14 -7
  129. package/dist/agent-operations/find-by-type.d.ts.map +1 -1
  130. package/dist/agent-operations/find-by-type.js +266 -43
  131. package/dist/agent-operations/furnish-room.d.ts +22 -1
  132. package/dist/agent-operations/furnish-room.d.ts.map +1 -1
  133. package/dist/agent-operations/furnish-room.js +66 -19
  134. package/dist/agent-operations/furniture-kind.d.ts +22 -0
  135. package/dist/agent-operations/furniture-kind.d.ts.map +1 -0
  136. package/dist/agent-operations/furniture-kind.js +69 -0
  137. package/dist/agent-operations/get-node.d.ts +5 -2
  138. package/dist/agent-operations/get-node.d.ts.map +1 -1
  139. package/dist/agent-operations/get-node.js +82 -10
  140. package/dist/agent-operations/hosted-services.d.ts +2 -1
  141. package/dist/agent-operations/hosted-services.d.ts.map +1 -1
  142. package/dist/agent-operations/index.d.ts +281 -69
  143. package/dist/agent-operations/index.d.ts.map +1 -1
  144. package/dist/agent-operations/index.js +66 -5
  145. package/dist/agent-operations/item-space.d.ts +22 -0
  146. package/dist/agent-operations/item-space.d.ts.map +1 -0
  147. package/dist/agent-operations/item-space.js +69 -0
  148. package/dist/agent-operations/layout-clearance.d.ts +52 -3
  149. package/dist/agent-operations/layout-clearance.d.ts.map +1 -1
  150. package/dist/agent-operations/layout-clearance.js +340 -30
  151. package/dist/agent-operations/level-height-fill.d.ts +12 -0
  152. package/dist/agent-operations/level-height-fill.d.ts.map +1 -0
  153. package/dist/agent-operations/level-height-fill.js +59 -0
  154. package/dist/agent-operations/level-reads.d.ts +5 -1
  155. package/dist/agent-operations/level-reads.d.ts.map +1 -1
  156. package/dist/agent-operations/level-reads.js +10 -3
  157. package/dist/agent-operations/list-levels.d.ts.map +1 -1
  158. package/dist/agent-operations/list-levels.js +23 -0
  159. package/dist/agent-operations/material-preset.d.ts.map +1 -1
  160. package/dist/agent-operations/material-preset.js +3 -9
  161. package/dist/agent-operations/material-refs.d.ts +7 -1
  162. package/dist/agent-operations/material-refs.d.ts.map +1 -1
  163. package/dist/agent-operations/material-refs.js +10 -5
  164. package/dist/agent-operations/merge-windows.d.ts +6 -0
  165. package/dist/agent-operations/merge-windows.d.ts.map +1 -0
  166. package/dist/agent-operations/merge-windows.js +27 -0
  167. package/dist/agent-operations/move-roofs.d.ts +9 -0
  168. package/dist/agent-operations/move-roofs.d.ts.map +1 -0
  169. package/dist/agent-operations/move-roofs.js +29 -0
  170. package/dist/agent-operations/paint.d.ts +2 -1
  171. package/dist/agent-operations/paint.d.ts.map +1 -1
  172. package/dist/agent-operations/paint.js +163 -53
  173. package/dist/agent-operations/photo-elevation.d.ts +155 -0
  174. package/dist/agent-operations/photo-elevation.d.ts.map +1 -0
  175. package/dist/agent-operations/photo-elevation.js +761 -0
  176. package/dist/agent-operations/place-in-room.d.ts +29 -0
  177. package/dist/agent-operations/place-in-room.d.ts.map +1 -0
  178. package/dist/agent-operations/place-in-room.js +403 -0
  179. package/dist/agent-operations/place-items.d.ts.map +1 -1
  180. package/dist/agent-operations/place-items.js +15 -2
  181. package/dist/agent-operations/plan-geometry.d.ts.map +1 -1
  182. package/dist/agent-operations/plan-geometry.js +3 -0
  183. package/dist/agent-operations/point-context.d.ts +139 -0
  184. package/dist/agent-operations/point-context.d.ts.map +1 -0
  185. package/dist/agent-operations/point-context.js +1 -0
  186. package/dist/agent-operations/project-files.d.ts +9 -0
  187. package/dist/agent-operations/project-files.d.ts.map +1 -0
  188. package/dist/agent-operations/project-files.js +25 -0
  189. package/dist/agent-operations/record-made.d.ts +18 -0
  190. package/dist/agent-operations/record-made.d.ts.map +1 -0
  191. package/dist/agent-operations/record-made.js +28 -0
  192. package/dist/agent-operations/roof-footprint.d.ts +24 -0
  193. package/dist/agent-operations/roof-footprint.d.ts.map +1 -0
  194. package/dist/agent-operations/roof-footprint.js +242 -0
  195. package/dist/agent-operations/roof-writes.d.ts +20 -0
  196. package/dist/agent-operations/roof-writes.d.ts.map +1 -0
  197. package/dist/agent-operations/roof-writes.js +165 -0
  198. package/dist/agent-operations/room-findings.d.ts +54 -0
  199. package/dist/agent-operations/room-findings.d.ts.map +1 -0
  200. package/dist/agent-operations/room-findings.js +143 -0
  201. package/dist/agent-operations/room-floor-script.d.ts +23 -0
  202. package/dist/agent-operations/room-floor-script.d.ts.map +1 -0
  203. package/dist/agent-operations/room-floor-script.js +54 -0
  204. package/dist/agent-operations/room-structure.d.ts +2 -2
  205. package/dist/agent-operations/room-structure.d.ts.map +1 -1
  206. package/dist/agent-operations/scene-checkpoint.d.ts +94 -0
  207. package/dist/agent-operations/scene-checkpoint.d.ts.map +1 -0
  208. package/dist/agent-operations/scene-checkpoint.js +176 -0
  209. package/dist/agent-operations/scene-queries.d.ts +3750 -3319
  210. package/dist/agent-operations/scene-queries.d.ts.map +1 -1
  211. package/dist/agent-operations/scene-queries.js +13 -23
  212. package/dist/agent-operations/scene-review.d.ts +52 -0
  213. package/dist/agent-operations/scene-review.d.ts.map +1 -0
  214. package/dist/agent-operations/scene-review.js +106 -0
  215. package/dist/agent-operations/scene-view.d.ts +82 -15
  216. package/dist/agent-operations/scene-view.d.ts.map +1 -1
  217. package/dist/agent-operations/scene-view.js +408 -51
  218. package/dist/agent-operations/search-assets.d.ts +2 -2
  219. package/dist/agent-operations/search-assets.d.ts.map +1 -1
  220. package/dist/agent-operations/search-assets.js +4 -3
  221. package/dist/agent-operations/search-materials.d.ts +9 -3
  222. package/dist/agent-operations/search-materials.d.ts.map +1 -1
  223. package/dist/agent-operations/search-materials.js +83 -29
  224. package/dist/agent-operations/set-checkpoint.d.ts +9 -0
  225. package/dist/agent-operations/set-checkpoint.d.ts.map +1 -0
  226. package/dist/agent-operations/set-checkpoint.js +31 -0
  227. package/dist/agent-operations/set-ground-level.d.ts +12 -0
  228. package/dist/agent-operations/set-ground-level.d.ts.map +1 -0
  229. package/dist/agent-operations/set-ground-level.js +61 -0
  230. package/dist/agent-operations/site.d.ts +21 -0
  231. package/dist/agent-operations/site.d.ts.map +1 -0
  232. package/dist/agent-operations/site.js +123 -0
  233. package/dist/agent-operations/types.d.ts +66 -7
  234. package/dist/agent-operations/types.d.ts.map +1 -1
  235. package/dist/agent-operations/verify-scene.d.ts +39 -5
  236. package/dist/agent-operations/verify-scene.d.ts.map +1 -1
  237. package/dist/agent-operations/verify-scene.js +223 -44
  238. package/dist/agent-operations/wall-face-script.d.ts +28 -0
  239. package/dist/agent-operations/wall-face-script.d.ts.map +1 -0
  240. package/dist/agent-operations/wall-face-script.js +62 -0
  241. package/dist/agent-operations/wall-object-observations.d.ts +41 -0
  242. package/dist/agent-operations/wall-object-observations.d.ts.map +1 -0
  243. package/dist/agent-operations/wall-object-observations.js +249 -0
  244. package/dist/agent-operations/wall-opening.d.ts +23 -23
  245. package/dist/agent-operations/wall-opening.d.ts.map +1 -1
  246. package/dist/agent-operations/wall-skirting.d.ts +24 -0
  247. package/dist/agent-operations/wall-skirting.d.ts.map +1 -0
  248. package/dist/agent-operations/wall-skirting.js +85 -0
  249. package/dist/agent-tools/add-object.d.ts +11 -7
  250. package/dist/agent-tools/add-object.d.ts.map +1 -1
  251. package/dist/agent-tools/add-object.js +17 -11
  252. package/dist/agent-tools/assets.d.ts +8 -0
  253. package/dist/agent-tools/assets.d.ts.map +1 -1
  254. package/dist/agent-tools/assets.js +13 -1
  255. package/dist/agent-tools/author-scene.d.ts +651 -0
  256. package/dist/agent-tools/author-scene.d.ts.map +1 -0
  257. package/dist/agent-tools/author-scene.js +252 -0
  258. package/dist/agent-tools/batch.d.ts +25 -0
  259. package/dist/agent-tools/batch.d.ts.map +1 -0
  260. package/dist/agent-tools/batch.js +61 -0
  261. package/dist/agent-tools/checkpoints.d.ts +13 -0
  262. package/dist/agent-tools/checkpoints.d.ts.map +1 -0
  263. package/dist/agent-tools/checkpoints.js +16 -0
  264. package/dist/agent-tools/clear-scene.d.ts.map +1 -1
  265. package/dist/agent-tools/collections.d.ts +6 -6
  266. package/dist/agent-tools/collections.d.ts.map +1 -1
  267. package/dist/agent-tools/columns.d.ts +18 -18
  268. package/dist/agent-tools/columns.js +2 -2
  269. package/dist/agent-tools/corner-window.d.ts +46 -0
  270. package/dist/agent-tools/corner-window.d.ts.map +1 -0
  271. package/dist/agent-tools/corner-window.js +47 -0
  272. package/dist/agent-tools/create-room.d.ts +26 -25
  273. package/dist/agent-tools/create-room.d.ts.map +1 -1
  274. package/dist/agent-tools/create-room.js +11 -4
  275. package/dist/agent-tools/design-brief.d.ts +408 -0
  276. package/dist/agent-tools/design-brief.d.ts.map +1 -0
  277. package/dist/agent-tools/design-brief.js +149 -0
  278. package/dist/agent-tools/designs.d.ts +34 -0
  279. package/dist/agent-tools/designs.d.ts.map +1 -0
  280. package/dist/agent-tools/designs.js +50 -0
  281. package/dist/agent-tools/fences.d.ts +28 -0
  282. package/dist/agent-tools/fences.d.ts.map +1 -0
  283. package/dist/agent-tools/fences.js +31 -0
  284. package/dist/agent-tools/find-by-type.d.ts +8 -1
  285. package/dist/agent-tools/find-by-type.d.ts.map +1 -1
  286. package/dist/agent-tools/find-by-type.js +23 -2
  287. package/dist/agent-tools/furnish-room.d.ts +10 -8
  288. package/dist/agent-tools/furnish-room.d.ts.map +1 -1
  289. package/dist/agent-tools/furnish-room.js +3 -1
  290. package/dist/agent-tools/hosted-services.d.ts +177 -141
  291. package/dist/agent-tools/hosted-services.d.ts.map +1 -1
  292. package/dist/agent-tools/hosted-services.js +47 -14
  293. package/dist/agent-tools/index.d.ts +894 -215
  294. package/dist/agent-tools/index.d.ts.map +1 -1
  295. package/dist/agent-tools/index.js +47 -3
  296. package/dist/agent-tools/levels.d.ts +11 -3
  297. package/dist/agent-tools/levels.d.ts.map +1 -1
  298. package/dist/agent-tools/levels.js +16 -5
  299. package/dist/agent-tools/measurement.d.ts +38 -20
  300. package/dist/agent-tools/measurement.d.ts.map +1 -1
  301. package/dist/agent-tools/measurement.js +117 -67
  302. package/dist/agent-tools/merge-windows.d.ts +10 -0
  303. package/dist/agent-tools/merge-windows.d.ts.map +1 -0
  304. package/dist/agent-tools/merge-windows.js +12 -0
  305. package/dist/agent-tools/nodes.d.ts.map +1 -1
  306. package/dist/agent-tools/nodes.js +1 -1
  307. package/dist/agent-tools/notation-inventory.d.ts +16 -0
  308. package/dist/agent-tools/notation-inventory.d.ts.map +1 -0
  309. package/dist/agent-tools/notation-inventory.js +105 -0
  310. package/dist/agent-tools/paint.d.ts +5 -5
  311. package/dist/agent-tools/paint.d.ts.map +1 -1
  312. package/dist/agent-tools/paint.js +1 -1
  313. package/dist/agent-tools/photo-elevation.d.ts +32 -0
  314. package/dist/agent-tools/photo-elevation.d.ts.map +1 -0
  315. package/dist/agent-tools/photo-elevation.js +73 -0
  316. package/dist/agent-tools/place-in-room.d.ts +35 -0
  317. package/dist/agent-tools/place-in-room.d.ts.map +1 -0
  318. package/dist/agent-tools/place-in-room.js +61 -0
  319. package/dist/agent-tools/place-items.d.ts +1 -1
  320. package/dist/agent-tools/place-items.js +2 -2
  321. package/dist/agent-tools/project-files.d.ts +189 -0
  322. package/dist/agent-tools/project-files.d.ts.map +1 -0
  323. package/dist/agent-tools/project-files.js +99 -0
  324. package/dist/agent-tools/refusal.d.ts.map +1 -1
  325. package/dist/agent-tools/retired.d.ts +21 -0
  326. package/dist/agent-tools/retired.d.ts.map +1 -0
  327. package/dist/agent-tools/retired.js +29 -0
  328. package/dist/agent-tools/roofs.d.ts +100 -0
  329. package/dist/agent-tools/roofs.d.ts.map +1 -0
  330. package/dist/agent-tools/roofs.js +96 -0
  331. package/dist/agent-tools/room-structure.d.ts +46 -38
  332. package/dist/agent-tools/room-structure.d.ts.map +1 -1
  333. package/dist/agent-tools/room-structure.js +30 -27
  334. package/dist/agent-tools/search-materials.d.ts +22 -3
  335. package/dist/agent-tools/search-materials.d.ts.map +1 -1
  336. package/dist/agent-tools/search-materials.js +13 -14
  337. package/dist/agent-tools/site.d.ts +27 -0
  338. package/dist/agent-tools/site.d.ts.map +1 -0
  339. package/dist/agent-tools/site.js +40 -0
  340. package/dist/agent-tools/sources.d.ts +12 -0
  341. package/dist/agent-tools/sources.d.ts.map +1 -0
  342. package/dist/agent-tools/sources.js +11 -0
  343. package/dist/agent-tools/stairs.d.ts +48 -28
  344. package/dist/agent-tools/stairs.d.ts.map +1 -1
  345. package/dist/agent-tools/stairs.js +65 -22
  346. package/dist/agent-tools/verify-scene.d.ts.map +1 -1
  347. package/dist/agent-tools/verify-scene.js +1 -1
  348. package/dist/agent-tools/view-scene.d.ts +50 -12
  349. package/dist/agent-tools/view-scene.d.ts.map +1 -1
  350. package/dist/agent-tools/view-scene.js +74 -31
  351. package/dist/agent-tools/wall-openings.d.ts +77 -73
  352. package/dist/agent-tools/wall-openings.d.ts.map +1 -1
  353. package/dist/agent-tools/wall-openings.js +9 -5
  354. package/dist/agent-tools/walls.d.ts +4 -4
  355. package/dist/agent-tools/walls.d.ts.map +1 -1
  356. package/dist/agent-tools/walls.js +7 -2
  357. package/dist/building/__fixtures__/wall-opening-cases.d.ts +454 -250
  358. package/dist/building/__fixtures__/wall-opening-cases.d.ts.map +1 -1
  359. package/dist/building/__fixtures__/wall-opening-cases.js +62 -2
  360. package/dist/building/corner-window.d.ts +56 -0
  361. package/dist/building/corner-window.d.ts.map +1 -0
  362. package/dist/building/corner-window.js +179 -0
  363. package/dist/building/ground-level.d.ts +26 -0
  364. package/dist/building/ground-level.d.ts.map +1 -0
  365. package/dist/building/ground-level.js +58 -0
  366. package/dist/building/index.d.ts +5 -0
  367. package/dist/building/index.d.ts.map +1 -1
  368. package/dist/building/index.js +5 -0
  369. package/dist/building/level-duplication.d.ts +7472 -6613
  370. package/dist/building/level-duplication.d.ts.map +1 -1
  371. package/dist/building/level-duplication.js +18 -4
  372. package/dist/building/level-insertion.d.ts +55 -0
  373. package/dist/building/level-insertion.d.ts.map +1 -0
  374. package/dist/building/level-insertion.js +35 -0
  375. package/dist/building/merge-windows.d.ts +58 -0
  376. package/dist/building/merge-windows.d.ts.map +1 -0
  377. package/dist/building/merge-windows.js +189 -0
  378. package/dist/building/opening-style-presets.d.ts +2 -2
  379. package/dist/building/opening-style-presets.d.ts.map +1 -1
  380. package/dist/building/photo-elevation.d.ts +125 -0
  381. package/dist/building/photo-elevation.d.ts.map +1 -0
  382. package/dist/building/photo-elevation.js +404 -0
  383. package/dist/building/wall-gaps.d.ts +13 -0
  384. package/dist/building/wall-gaps.d.ts.map +1 -0
  385. package/dist/building/wall-gaps.js +158 -0
  386. package/dist/building/wall-openings.d.ts +154 -119
  387. package/dist/building/wall-openings.d.ts.map +1 -1
  388. package/dist/building/wall-openings.js +37 -9
  389. package/dist/capture/schema.d.ts +22 -22
  390. package/dist/capture/source.d.ts.map +1 -1
  391. package/dist/capture/source.js +1 -1
  392. package/dist/commands/structure/create-zone.d.ts +12 -1
  393. package/dist/commands/structure/create-zone.d.ts.map +1 -1
  394. package/dist/commands/structure/create-zone.js +49 -0
  395. package/dist/commands/structure/divide-zone.d.ts +3 -3
  396. package/dist/commands/structure/index.d.ts +1 -1
  397. package/dist/commands/structure/index.d.ts.map +1 -1
  398. package/dist/commands/structure/index.js +1 -1
  399. package/dist/commands/structure/set-floor-foundation.d.ts +6 -6
  400. package/dist/commands/structure/set-zone-intent.d.ts +4 -0
  401. package/dist/commands/structure/set-zone-intent.d.ts.map +1 -1
  402. package/dist/commands/structure/set-zone-intent.js +19 -0
  403. package/dist/commands/structure/shared.d.ts +3642 -3213
  404. package/dist/commands/structure/shared.d.ts.map +1 -1
  405. package/dist/commands/structure/zone-wall-merge.d.ts +4149 -3334
  406. package/dist/commands/structure/zone-wall-merge.d.ts.map +1 -1
  407. package/dist/contracts/reference-inventory.d.ts.map +1 -1
  408. package/dist/contracts/reference-inventory.js +106 -26
  409. package/dist/events/bus.d.ts +22 -3
  410. package/dist/events/bus.d.ts.map +1 -1
  411. package/dist/events/capture-sessions.d.ts +5 -0
  412. package/dist/events/capture-sessions.d.ts.map +1 -0
  413. package/dist/events/capture-sessions.js +31 -0
  414. package/dist/hooks/scene-registry/scene-registry.d.ts.map +1 -1
  415. package/dist/hooks/spatial-grid/spatial-grid-manager.d.ts +1 -2
  416. package/dist/hooks/spatial-grid/spatial-grid-manager.d.ts.map +1 -1
  417. package/dist/hooks/spatial-grid/spatial-grid-manager.js +4 -6
  418. package/dist/hooks/spatial-grid/spatial-grid-sync.d.ts +3608 -3179
  419. package/dist/hooks/spatial-grid/spatial-grid-sync.d.ts.map +1 -1
  420. package/dist/hooks/spatial-grid/spatial-grid.d.ts.map +1 -1
  421. package/dist/hooks/spatial-grid/support-host-patch.d.ts.map +1 -1
  422. package/dist/hooks/spatial-grid/support-host-patch.js +11 -2
  423. package/dist/hooks/spatial-grid/use-spatial-query.d.ts +3 -3
  424. package/dist/hooks/spatial-grid/wall-spatial-grid.d.ts.map +1 -1
  425. package/dist/index.d.ts +37 -9
  426. package/dist/index.d.ts.map +1 -1
  427. package/dist/index.js +36 -9
  428. package/dist/lib/__fixtures__/mezzanine.d.ts +11800 -10132
  429. package/dist/lib/__fixtures__/mezzanine.d.ts.map +1 -1
  430. package/dist/lib/absorb-wall-separators.d.ts +3642 -3213
  431. package/dist/lib/absorb-wall-separators.d.ts.map +1 -1
  432. package/dist/lib/angle-accumulator.d.ts.map +1 -1
  433. package/dist/lib/artifact-store.d.ts.map +1 -1
  434. package/dist/lib/below-grade-footprints.d.ts +65 -0
  435. package/dist/lib/below-grade-footprints.d.ts.map +1 -0
  436. package/dist/lib/below-grade-footprints.js +181 -0
  437. package/dist/lib/building-footprint.d.ts +33 -0
  438. package/dist/lib/building-footprint.d.ts.map +1 -0
  439. package/dist/lib/building-footprint.js +89 -0
  440. package/dist/lib/corner-pair.d.ts +1129 -0
  441. package/dist/lib/corner-pair.d.ts.map +1 -0
  442. package/dist/lib/corner-pair.js +130 -0
  443. package/dist/lib/corner-snap.d.ts +54 -0
  444. package/dist/lib/corner-snap.d.ts.map +1 -0
  445. package/dist/lib/corner-snap.js +125 -0
  446. package/dist/lib/critically-damped.d.ts +11 -0
  447. package/dist/lib/critically-damped.d.ts.map +1 -0
  448. package/dist/lib/critically-damped.js +14 -0
  449. package/dist/lib/deepest-drawn.d.ts +18 -0
  450. package/dist/lib/deepest-drawn.d.ts.map +1 -0
  451. package/dist/lib/deepest-drawn.js +65 -0
  452. package/dist/lib/door-operation.d.ts +1 -1
  453. package/dist/lib/exterior-wall-loops.d.ts +17 -0
  454. package/dist/lib/exterior-wall-loops.d.ts.map +1 -0
  455. package/dist/lib/exterior-wall-loops.js +334 -0
  456. package/dist/lib/finish-script.d.ts +61 -0
  457. package/dist/lib/finish-script.d.ts.map +1 -0
  458. package/dist/lib/finish-script.js +86 -0
  459. package/dist/lib/floor-intent-changes.d.ts.map +1 -1
  460. package/dist/lib/floor-intent-changes.js +4 -4
  461. package/dist/lib/floor-plate-paint.d.ts +3 -1
  462. package/dist/lib/floor-plate-paint.d.ts.map +1 -1
  463. package/dist/lib/floor-plate-paint.js +24 -4
  464. package/dist/lib/floor-plates.d.ts +50 -50
  465. package/dist/lib/floor-script.d.ts +24 -0
  466. package/dist/lib/floor-script.d.ts.map +1 -0
  467. package/dist/lib/floor-script.js +51 -0
  468. package/dist/lib/foundation-construction.d.ts +73 -0
  469. package/dist/lib/foundation-construction.d.ts.map +1 -0
  470. package/dist/lib/foundation-construction.js +242 -0
  471. package/dist/lib/foundation-standard.d.ts +30 -0
  472. package/dist/lib/foundation-standard.d.ts.map +1 -0
  473. package/dist/lib/foundation-standard.js +30 -0
  474. package/dist/lib/foundation-wall.d.ts +36 -0
  475. package/dist/lib/foundation-wall.d.ts.map +1 -0
  476. package/dist/lib/foundation-wall.js +66 -0
  477. package/dist/lib/generic-foundation.d.ts +40 -0
  478. package/dist/lib/generic-foundation.d.ts.map +1 -0
  479. package/dist/lib/generic-foundation.js +200 -0
  480. package/dist/lib/geometry-script-node.d.ts +32 -3
  481. package/dist/lib/geometry-script-node.d.ts.map +1 -1
  482. package/dist/lib/geometry-script-node.js +26 -0
  483. package/dist/lib/grade-standing.d.ts +38 -0
  484. package/dist/lib/grade-standing.d.ts.map +1 -0
  485. package/dist/lib/grade-standing.js +137 -0
  486. package/dist/lib/ground-level.d.ts +20 -0
  487. package/dist/lib/ground-level.d.ts.map +1 -0
  488. package/dist/lib/ground-level.js +49 -0
  489. package/dist/lib/ground-over-part.d.ts +13 -0
  490. package/dist/lib/ground-over-part.d.ts.map +1 -0
  491. package/dist/lib/ground-over-part.js +94 -0
  492. package/dist/lib/ground-seat.d.ts +47 -0
  493. package/dist/lib/ground-seat.d.ts.map +1 -0
  494. package/dist/lib/ground-seat.js +61 -0
  495. package/dist/lib/ground-window.d.ts +39 -0
  496. package/dist/lib/ground-window.d.ts.map +1 -0
  497. package/dist/lib/ground-window.js +147 -0
  498. package/dist/lib/opening-floor-datum.d.ts.map +1 -1
  499. package/dist/lib/opening-floor-datum.js +2 -3
  500. package/dist/lib/own-floor-intent.d.ts.map +1 -1
  501. package/dist/lib/own-floor-intent.js +4 -4
  502. package/dist/lib/plate-surface.d.ts.map +1 -1
  503. package/dist/lib/plate-surface.js +3 -1
  504. package/dist/lib/point-ask.d.ts +9 -0
  505. package/dist/lib/point-ask.d.ts.map +1 -0
  506. package/dist/lib/point-ask.js +36 -0
  507. package/dist/lib/room-drawn-floor.d.ts +1 -1
  508. package/dist/lib/room-drawn-floor.d.ts.map +1 -1
  509. package/dist/lib/room-floor-feasibility.d.ts.map +1 -1
  510. package/dist/lib/room-floor-feasibility.js +3 -3
  511. package/dist/lib/room-graph.d.ts.map +1 -1
  512. package/dist/lib/room-graph.js +2 -0
  513. package/dist/lib/room-name.d.ts +2 -0
  514. package/dist/lib/room-name.d.ts.map +1 -1
  515. package/dist/lib/room-name.js +2 -0
  516. package/dist/lib/room-topology-index.d.ts.map +1 -1
  517. package/dist/lib/room-topology-index.js +1 -1
  518. package/dist/lib/room-zone-adoption.d.ts.map +1 -1
  519. package/dist/lib/script-inputs-key.d.ts +3 -0
  520. package/dist/lib/script-inputs-key.d.ts.map +1 -0
  521. package/dist/lib/script-inputs-key.js +13 -0
  522. package/dist/lib/setback-envelope.d.ts +95 -5
  523. package/dist/lib/setback-envelope.d.ts.map +1 -1
  524. package/dist/lib/setback-envelope.js +351 -35
  525. package/dist/lib/site-flatwork.d.ts +11 -0
  526. package/dist/lib/site-flatwork.d.ts.map +1 -0
  527. package/dist/lib/site-flatwork.js +11 -0
  528. package/dist/lib/site-ground-height.d.ts +13 -0
  529. package/dist/lib/site-ground-height.d.ts.map +1 -0
  530. package/dist/lib/site-ground-height.js +16 -0
  531. package/dist/lib/site-placement.d.ts +362 -0
  532. package/dist/lib/site-placement.d.ts.map +1 -0
  533. package/dist/lib/site-placement.js +942 -0
  534. package/dist/lib/snap-ease.d.ts +20 -0
  535. package/dist/lib/snap-ease.d.ts.map +1 -0
  536. package/dist/lib/snap-ease.js +50 -0
  537. package/dist/lib/structure-kernel.d.ts +1 -1
  538. package/dist/lib/structure-kernel.d.ts.map +1 -1
  539. package/dist/lib/structure-kernel.js +2 -0
  540. package/dist/lib/surface-support-references.d.ts +4 -0
  541. package/dist/lib/surface-support-references.d.ts.map +1 -0
  542. package/dist/lib/surface-support-references.js +19 -0
  543. package/dist/lib/terrain-support-query.d.ts +10 -0
  544. package/dist/lib/terrain-support-query.d.ts.map +1 -1
  545. package/dist/lib/terrain-support-query.js +1 -1
  546. package/dist/lib/wall-face-script.d.ts +66 -0
  547. package/dist/lib/wall-face-script.d.ts.map +1 -0
  548. package/dist/lib/wall-face-script.js +235 -0
  549. package/dist/lib/zone-colors.d.ts +1 -1
  550. package/dist/lib/zone-colors.d.ts.map +1 -1
  551. package/dist/lib/zone-quantities.d.ts.map +1 -1
  552. package/dist/lib/zone-quantities.js +4 -5
  553. package/dist/material-kinds.d.ts +9 -0
  554. package/dist/material-kinds.d.ts.map +1 -0
  555. package/dist/material-kinds.js +30 -0
  556. package/dist/material-library.d.ts +4 -4
  557. package/dist/material-library.d.ts.map +1 -1
  558. package/dist/material-library.js +72 -26
  559. package/dist/node-slots/index.d.ts +1 -0
  560. package/dist/node-slots/index.d.ts.map +1 -1
  561. package/dist/node-slots/index.js +7 -1
  562. package/dist/node-slots/roof.d.ts +5 -0
  563. package/dist/node-slots/roof.d.ts.map +1 -0
  564. package/dist/node-slots/roof.js +12 -0
  565. package/dist/node-slots/stair.d.ts +2 -0
  566. package/dist/node-slots/stair.d.ts.map +1 -1
  567. package/dist/node-slots/stair.js +6 -2
  568. package/dist/procedural-items/design-placement.d.ts.map +1 -1
  569. package/dist/procedural-items/design.d.ts +19 -19
  570. package/dist/procedural-items/fixtures.d.ts +297 -297
  571. package/dist/procedural-items/fixtures.d.ts.map +1 -1
  572. package/dist/procedural-items/integration.d.ts +106 -106
  573. package/dist/procedural-items/joints.d.ts +4 -4
  574. package/dist/procedural-items/library-colors.d.ts +22 -22
  575. package/dist/procedural-items/library-colors.d.ts.map +1 -1
  576. package/dist/procedural-items/motion-controller.d.ts.map +1 -1
  577. package/dist/procedural-items/node.d.ts +291 -291
  578. package/dist/procedural-items/query.d.ts +1 -1
  579. package/dist/procedural-items/query.d.ts.map +1 -1
  580. package/dist/procedural-items/recipe.d.ts +11 -11
  581. package/dist/procedural-items/recipe.d.ts.map +1 -1
  582. package/dist/procedural-items/section.d.ts.map +1 -1
  583. package/dist/registry/index.d.ts +1 -1
  584. package/dist/registry/index.d.ts.map +1 -1
  585. package/dist/registry/scene-api.d.ts +1 -0
  586. package/dist/registry/scene-api.d.ts.map +1 -1
  587. package/dist/registry/scene-api.js +3 -0
  588. package/dist/registry/subtree.d.ts.map +1 -1
  589. package/dist/registry/subtree.js +2 -0
  590. package/dist/registry/types.d.ts +120 -1
  591. package/dist/registry/types.d.ts.map +1 -1
  592. package/dist/schema/assembly.d.ts +41 -41
  593. package/dist/schema/asset-url.d.ts +1 -1
  594. package/dist/schema/asset-url.d.ts.map +1 -1
  595. package/dist/schema/base.d.ts +9 -9
  596. package/dist/schema/base.d.ts.map +1 -1
  597. package/dist/schema/camera.d.ts +1 -1
  598. package/dist/schema/collection-templates.d.ts +20 -20
  599. package/dist/schema/collection-templates.d.ts.map +1 -1
  600. package/dist/schema/geometry-metadata.d.ts +7 -7
  601. package/dist/schema/geometry-metadata.d.ts.map +1 -1
  602. package/dist/schema/geometry-source.d.ts +26 -16
  603. package/dist/schema/geometry-source.d.ts.map +1 -1
  604. package/dist/schema/geometry-source.js +14 -0
  605. package/dist/schema/index.d.ts +10 -7
  606. package/dist/schema/index.d.ts.map +1 -1
  607. package/dist/schema/index.js +10 -7
  608. package/dist/schema/material.d.ts +33 -33
  609. package/dist/schema/nodes/barrel-roof.d.ts +3 -0
  610. package/dist/schema/nodes/barrel-roof.d.ts.map +1 -0
  611. package/dist/schema/nodes/barrel-roof.js +11 -0
  612. package/dist/schema/nodes/block.d.ts +8 -8
  613. package/dist/schema/nodes/box-vent.d.ts +13 -13
  614. package/dist/schema/nodes/building.d.ts +9 -8
  615. package/dist/schema/nodes/building.d.ts.map +1 -1
  616. package/dist/schema/nodes/building.js +2 -0
  617. package/dist/schema/nodes/cabinet.d.ts +130 -129
  618. package/dist/schema/nodes/cabinet.d.ts.map +1 -1
  619. package/dist/schema/nodes/cabinet.js +1 -1
  620. package/dist/schema/nodes/ceiling.d.ts +15 -15
  621. package/dist/schema/nodes/chimney.d.ts +23 -23
  622. package/dist/schema/nodes/column.d.ts +207 -199
  623. package/dist/schema/nodes/column.d.ts.map +1 -1
  624. package/dist/schema/nodes/column.js +2 -0
  625. package/dist/schema/nodes/construction-dimension.d.ts +34 -34
  626. package/dist/schema/nodes/cupola.d.ts +15 -15
  627. package/dist/schema/nodes/curtain-wall.d.ts +21 -20
  628. package/dist/schema/nodes/curtain-wall.d.ts.map +1 -1
  629. package/dist/schema/nodes/curtain-wall.js +23 -0
  630. package/dist/schema/nodes/door.d.ts +50 -43
  631. package/dist/schema/nodes/door.d.ts.map +1 -1
  632. package/dist/schema/nodes/door.js +19 -0
  633. package/dist/schema/nodes/dormer.d.ts +37 -36
  634. package/dist/schema/nodes/dormer.d.ts.map +1 -1
  635. package/dist/schema/nodes/downspout.d.ts +17 -17
  636. package/dist/schema/nodes/duct-fitting.d.ts +24 -24
  637. package/dist/schema/nodes/duct-segment.d.ts +14 -14
  638. package/dist/schema/nodes/duct-terminal.d.ts +12 -12
  639. package/dist/schema/nodes/elevator.d.ts +15 -15
  640. package/dist/schema/nodes/eyebrow-vent.d.ts +13 -13
  641. package/dist/schema/nodes/fence-feature.d.ts +37 -37
  642. package/dist/schema/nodes/fence-types.d.ts +32 -0
  643. package/dist/schema/nodes/fence-types.d.ts.map +1 -0
  644. package/dist/schema/nodes/fence-types.js +22 -0
  645. package/dist/schema/nodes/fence.d.ts +43 -72
  646. package/dist/schema/nodes/fence.d.ts.map +1 -1
  647. package/dist/schema/nodes/fence.js +4 -20
  648. package/dist/schema/nodes/floor-opening.d.ts +8 -8
  649. package/dist/schema/nodes/guide.d.ts +8 -8
  650. package/dist/schema/nodes/gutter.d.ts +14 -14
  651. package/dist/schema/nodes/gutter.d.ts.map +1 -1
  652. package/dist/schema/nodes/gutter.js +6 -5
  653. package/dist/schema/nodes/hvac-equipment.d.ts +13 -13
  654. package/dist/schema/nodes/imported-mesh.d.ts +8 -8
  655. package/dist/schema/nodes/item.d.ts +30 -25
  656. package/dist/schema/nodes/item.d.ts.map +1 -1
  657. package/dist/schema/nodes/lean-to-extension.d.ts +36 -36
  658. package/dist/schema/nodes/level.d.ts +9 -9
  659. package/dist/schema/nodes/lineset.d.ts +8 -8
  660. package/dist/schema/nodes/liquid-line.d.ts +8 -8
  661. package/dist/schema/nodes/measurement.d.ts +8 -8
  662. package/dist/schema/nodes/opening-types.d.ts +13 -13
  663. package/dist/schema/nodes/opening-types.d.ts.map +1 -1
  664. package/dist/schema/nodes/pipe-fitting.d.ts +15 -15
  665. package/dist/schema/nodes/pipe-segment.d.ts +11 -11
  666. package/dist/schema/nodes/pipe-trap.d.ts +9 -9
  667. package/dist/schema/nodes/ridge-vent.d.ts +14 -14
  668. package/dist/schema/nodes/ridge-vent.d.ts.map +1 -1
  669. package/dist/schema/nodes/ridge-vent.js +3 -1
  670. package/dist/schema/nodes/roof-glazing-config.d.ts +90 -0
  671. package/dist/schema/nodes/roof-glazing-config.d.ts.map +1 -0
  672. package/dist/schema/nodes/roof-glazing-config.js +34 -0
  673. package/dist/schema/nodes/roof-glazing.d.ts +57 -0
  674. package/dist/schema/nodes/roof-glazing.d.ts.map +1 -0
  675. package/dist/schema/nodes/roof-glazing.js +514 -0
  676. package/dist/schema/nodes/roof-segment-resize.d.ts +4 -0
  677. package/dist/schema/nodes/roof-segment-resize.d.ts.map +1 -0
  678. package/dist/schema/nodes/roof-segment-resize.js +21 -0
  679. package/dist/schema/nodes/roof-segment-shape.d.ts +5 -0
  680. package/dist/schema/nodes/roof-segment-shape.d.ts.map +1 -1
  681. package/dist/schema/nodes/roof-segment-shape.js +44 -0
  682. package/dist/schema/nodes/roof-segment-walls.d.ts +1 -1
  683. package/dist/schema/nodes/roof-segment-walls.d.ts.map +1 -1
  684. package/dist/schema/nodes/roof-segment-walls.js +24 -0
  685. package/dist/schema/nodes/roof-segment.d.ts +153 -46
  686. package/dist/schema/nodes/roof-segment.d.ts.map +1 -1
  687. package/dist/schema/nodes/roof-segment.js +91 -20
  688. package/dist/schema/nodes/roof-types.d.ts +14 -0
  689. package/dist/schema/nodes/roof-types.d.ts.map +1 -0
  690. package/dist/schema/nodes/roof-types.js +14 -0
  691. package/dist/schema/nodes/roof.d.ts +49 -49
  692. package/dist/schema/nodes/scan.d.ts +8 -8
  693. package/dist/schema/nodes/separator.d.ts +8 -8
  694. package/dist/schema/nodes/shelf.d.ts +16 -16
  695. package/dist/schema/nodes/site-facts.d.ts +64 -0
  696. package/dist/schema/nodes/site-facts.d.ts.map +1 -0
  697. package/dist/schema/nodes/site-facts.js +73 -0
  698. package/dist/schema/nodes/site.d.ts +105 -63
  699. package/dist/schema/nodes/site.d.ts.map +1 -1
  700. package/dist/schema/nodes/site.js +7 -70
  701. package/dist/schema/nodes/skylight.d.ts +41 -41
  702. package/dist/schema/nodes/skylight.d.ts.map +1 -1
  703. package/dist/schema/nodes/slab.d.ts +21 -21
  704. package/dist/schema/nodes/solar-panel.d.ts +21 -21
  705. package/dist/schema/nodes/spawn.d.ts +8 -8
  706. package/dist/schema/nodes/stair-construction.d.ts +3 -3
  707. package/dist/schema/nodes/stair-defaults.d.ts +16 -0
  708. package/dist/schema/nodes/stair-defaults.d.ts.map +1 -0
  709. package/dist/schema/nodes/stair-defaults.js +15 -0
  710. package/dist/schema/nodes/stair-segment.d.ts +22 -22
  711. package/dist/schema/nodes/stair-types.d.ts +29 -0
  712. package/dist/schema/nodes/stair-types.d.ts.map +1 -0
  713. package/dist/schema/nodes/stair-types.js +23 -0
  714. package/dist/schema/nodes/stair.d.ts +51 -75
  715. package/dist/schema/nodes/stair.d.ts.map +1 -1
  716. package/dist/schema/nodes/stair.js +6 -20
  717. package/dist/schema/nodes/structural-grid.d.ts +8 -8
  718. package/dist/schema/nodes/surface-hole-metadata.d.ts +2 -2
  719. package/dist/schema/nodes/turbine-vent.d.ts +13 -13
  720. package/dist/schema/nodes/unit.d.ts +10 -10
  721. package/dist/schema/nodes/unit.d.ts.map +1 -1
  722. package/dist/schema/nodes/wall.d.ts +479 -146
  723. package/dist/schema/nodes/wall.d.ts.map +1 -1
  724. package/dist/schema/nodes/wall.js +19 -0
  725. package/dist/schema/nodes/window.d.ts +55 -39
  726. package/dist/schema/nodes/window.d.ts.map +1 -1
  727. package/dist/schema/nodes/window.js +10 -0
  728. package/dist/schema/nodes/zone.d.ts +231 -12
  729. package/dist/schema/nodes/zone.d.ts.map +1 -1
  730. package/dist/schema/nodes/zone.js +10 -0
  731. package/dist/schema/provenance.d.ts +21 -21
  732. package/dist/schema/scene-material.d.ts +5 -5
  733. package/dist/schema/site-presentation.d.ts +100 -0
  734. package/dist/schema/site-presentation.d.ts.map +1 -0
  735. package/dist/schema/site-presentation.js +83 -0
  736. package/dist/schema/types.d.ts +1954 -1414
  737. package/dist/schema/types.d.ts.map +1 -1
  738. package/dist/services/__fixtures__/wall-plane-top-boundary-repro.d.ts.map +1 -1
  739. package/dist/services/index.d.ts +5 -1
  740. package/dist/services/index.d.ts.map +1 -1
  741. package/dist/services/index.js +5 -1
  742. package/dist/services/level-height.d.ts.map +1 -1
  743. package/dist/services/level-height.js +7 -3
  744. package/dist/services/port-connectivity.d.ts +4 -0
  745. package/dist/services/port-connectivity.d.ts.map +1 -1
  746. package/dist/services/port-connectivity.js +35 -0
  747. package/dist/services/project-file-sink.d.ts +9 -0
  748. package/dist/services/project-file-sink.d.ts.map +1 -0
  749. package/dist/services/project-file-sink.js +13 -0
  750. package/dist/services/roof-bearing.d.ts +62 -0
  751. package/dist/services/roof-bearing.d.ts.map +1 -0
  752. package/dist/services/roof-bearing.js +234 -0
  753. package/dist/services/roof-level.d.ts +121 -0
  754. package/dist/services/roof-level.d.ts.map +1 -0
  755. package/dist/services/roof-level.js +280 -0
  756. package/dist/services/roof-move.d.ts +83 -0
  757. package/dist/services/roof-move.d.ts.map +1 -0
  758. package/dist/services/roof-move.js +316 -0
  759. package/dist/services/stair-surface-snap.d.ts +14 -0
  760. package/dist/services/stair-surface-snap.d.ts.map +1 -0
  761. package/dist/services/stair-surface-snap.js +116 -0
  762. package/dist/services/storey-datum.d.ts +12 -0
  763. package/dist/services/storey-datum.d.ts.map +1 -0
  764. package/dist/services/storey-datum.js +18 -0
  765. package/dist/services/storey.d.ts +51 -5
  766. package/dist/services/storey.d.ts.map +1 -1
  767. package/dist/services/storey.js +125 -8
  768. package/dist/solar-panel-presets.d.ts +2 -2
  769. package/dist/store/actions/node-actions.d.ts +3613 -3182
  770. package/dist/store/actions/node-actions.d.ts.map +1 -1
  771. package/dist/store/actions/node-actions.js +46 -1
  772. package/dist/store/derived-node-guard.d.ts.map +1 -1
  773. package/dist/store/history-control.d.ts +39 -0
  774. package/dist/store/history-control.d.ts.map +1 -1
  775. package/dist/store/history-control.js +84 -4
  776. package/dist/store/scene-annotations.d.ts +7267 -6409
  777. package/dist/store/scene-annotations.d.ts.map +1 -1
  778. package/dist/store/scene-preview.d.ts +16 -0
  779. package/dist/store/scene-preview.d.ts.map +1 -0
  780. package/dist/store/scene-preview.js +144 -0
  781. package/dist/store/use-live-node-overrides.d.ts.map +1 -1
  782. package/dist/store/use-live-terrain.d.ts.map +1 -1
  783. package/dist/store/use-live-transforms.d.ts.map +1 -1
  784. package/dist/store/use-scene.d.ts.map +1 -1
  785. package/dist/store/use-scene.js +37 -4
  786. package/dist/systems/elevator/elevator-dispatch.js +1 -1
  787. package/dist/systems/fence/fence-features.d.ts.map +1 -1
  788. package/dist/systems/owned-floor-openings.d.ts.map +1 -1
  789. package/dist/systems/owned-floor-openings.js +24 -3
  790. package/dist/systems/roof/roof-elevation-system.d.ts.map +1 -1
  791. package/dist/systems/roof/roof-elevation-system.js +9 -3
  792. package/dist/systems/roof/roof-elevation.d.ts +5 -0
  793. package/dist/systems/roof/roof-elevation.d.ts.map +1 -1
  794. package/dist/systems/roof/roof-elevation.js +91 -62
  795. package/dist/systems/slab/__fixtures__/floor-step.d.ts +4623 -3516
  796. package/dist/systems/slab/__fixtures__/floor-step.d.ts.map +1 -1
  797. package/dist/systems/slab/__fixtures__/raised-room.d.ts +5149 -4076
  798. package/dist/systems/slab/__fixtures__/raised-room.d.ts.map +1 -1
  799. package/dist/systems/slab/slab-support.d.ts +6 -3
  800. package/dist/systems/slab/slab-support.d.ts.map +1 -1
  801. package/dist/systems/slab/slab-support.js +78 -10
  802. package/dist/systems/stair/stair-detail-budget.d.ts +2 -2
  803. package/dist/systems/stair/stair-detail-budget.d.ts.map +1 -1
  804. package/dist/systems/stair/stair-footprint.d.ts +6 -0
  805. package/dist/systems/stair/stair-footprint.d.ts.map +1 -1
  806. package/dist/systems/stair/stair-footprint.js +27 -14
  807. package/dist/systems/stair/stair-layout.d.ts +2 -2
  808. package/dist/systems/stair/stair-opening-preview.d.ts +3643 -3214
  809. package/dist/systems/stair/stair-opening-preview.d.ts.map +1 -1
  810. package/dist/systems/stair/stair-presets.d.ts +73 -65
  811. package/dist/systems/stair/stair-presets.d.ts.map +1 -1
  812. package/dist/systems/stair/stair-presets.js +16 -9
  813. package/dist/systems/stair/stair-rail-path.d.ts +1 -1
  814. package/dist/systems/stair/stair-rise-query.d.ts +16 -0
  815. package/dist/systems/stair/stair-rise-query.d.ts.map +1 -1
  816. package/dist/systems/stair/stair-rise-query.js +57 -7
  817. package/dist/systems/stair/stair-sizing.d.ts +101 -99
  818. package/dist/systems/stair/stair-sizing.d.ts.map +1 -1
  819. package/dist/systems/wall/wall-assembly.d.ts +11 -0
  820. package/dist/systems/wall/wall-assembly.d.ts.map +1 -1
  821. package/dist/systems/wall/wall-assembly.js +21 -0
  822. package/dist/systems/wall/wall-curve.d.ts +5 -0
  823. package/dist/systems/wall/wall-curve.d.ts.map +1 -1
  824. package/dist/systems/wall/wall-curve.js +13 -0
  825. package/dist/systems/wall/wall-frame.d.ts.map +1 -1
  826. package/dist/systems/wall/wall-frame.js +8 -0
  827. package/dist/systems/wall/wall-room-sides.d.ts +8 -0
  828. package/dist/systems/wall/wall-room-sides.d.ts.map +1 -1
  829. package/dist/systems/wall/wall-room-sides.js +60 -7
  830. package/dist/systems/wall/wall-top.d.ts +7 -4
  831. package/dist/systems/wall/wall-top.d.ts.map +1 -1
  832. package/dist/systems/wall/wall-top.js +14 -6
  833. package/dist/systems/wall/wall-topology.d.ts +4 -0
  834. package/dist/systems/wall/wall-topology.d.ts.map +1 -1
  835. package/dist/systems/wall/wall-topology.js +4 -2
  836. package/dist/systems/wall/wall-trim.d.ts +7 -0
  837. package/dist/systems/wall/wall-trim.d.ts.map +1 -0
  838. package/dist/systems/wall/wall-trim.js +10 -0
  839. package/dist/utils/clone-scene-graph.d.ts.map +1 -1
  840. package/dist/utils/clone-scene-graph.js +8 -0
  841. package/dist/utils/ensure-scene-openings.d.ts +7420 -6562
  842. package/dist/utils/ensure-scene-openings.d.ts.map +1 -1
  843. package/dist/utils/floor-piece-adoption.d.ts +2 -2
  844. package/dist/utils/floor-plate-migration.d.ts +3746 -3317
  845. package/dist/utils/floor-plate-migration.d.ts.map +1 -1
  846. package/dist/utils/floor-plate-migration.js +2 -2
  847. package/dist/utils/heal-scene-graph.d.ts +12 -0
  848. package/dist/utils/heal-scene-graph.d.ts.map +1 -1
  849. package/dist/utils/heal-scene-graph.js +40 -23
  850. package/dist/utils/legacy-wall-datums.d.ts.map +1 -1
  851. package/dist/utils/legacy-wall-datums.js +2 -2
  852. package/dist/utils/owned-floor-opening-migration.d.ts +3642 -3213
  853. package/dist/utils/owned-floor-opening-migration.d.ts.map +1 -1
  854. package/dist/utils/reconcile-structure-on-load.d.ts +3730 -7777
  855. package/dist/utils/reconcile-structure-on-load.d.ts.map +1 -1
  856. package/dist/utils/scene-migrations.d.ts +1 -1
  857. package/dist/utils/scene-migrations.d.ts.map +1 -1
  858. package/dist/utils/scene-migrations.js +1 -1
  859. package/dist/utils/semantic-equal.d.ts +3 -0
  860. package/dist/utils/semantic-equal.d.ts.map +1 -0
  861. package/dist/utils/semantic-equal.js +26 -0
  862. package/dist/utils/structure-id.d.ts.map +1 -1
  863. package/dist/utils/types.d.ts.map +1 -1
  864. package/dist/utils/wall-face-migration.d.ts +1 -1
  865. package/dist/utils/wall-face-migration.d.ts.map +1 -1
  866. package/package.json +36 -10
@@ -1,4 +1,6 @@
1
1
  import { MaterialProperties, MaterialTarget as MaterialTargetSchema, } from './schema/material.js';
2
+ // The library's kinds and surfaces, kept apart so a tool contract names them without the catalog.
3
+ export { MATERIAL_CATEGORIES, MATERIAL_SURFACES, } from './material-kinds.js';
2
4
  const WALL_TARGETS = [
3
5
  MaterialTargetSchema.enum.wall,
4
6
  MaterialTargetSchema.enum.chimney,
@@ -29,32 +31,6 @@ const ROOF_TARGETS = [
29
31
  MaterialTargetSchema.enum.dormer,
30
32
  ];
31
33
  const CEILING_TARGETS = [MaterialTargetSchema.enum.ceiling];
32
- export const MATERIAL_CATEGORIES = [
33
- 'colors',
34
- 'wood',
35
- 'stone',
36
- 'brick',
37
- 'tile',
38
- 'wallpaper',
39
- 'concrete',
40
- 'metal',
41
- 'plastic',
42
- 'fabric',
43
- 'carpet',
44
- 'leather',
45
- 'roofing',
46
- 'ground',
47
- 'glass',
48
- 'other',
49
- ];
50
- export const MATERIAL_SURFACES = [
51
- 'floor',
52
- 'wall',
53
- 'ceiling',
54
- 'roof',
55
- 'furniture',
56
- 'outdoor',
57
- ];
58
34
  export const MATERIAL_CATALOG = [
59
35
  {
60
36
  id: 'wood-finewood27',
@@ -63,6 +39,7 @@ export const MATERIAL_CATALOG = [
63
39
  surfaces: ['floor', 'wall', 'furniture'],
64
40
  description: 'Fine wood finish',
65
41
  previewThumbnailUrl: '/material/wood/finewood_27/finewood_27_thumb.webp',
42
+ previewColor: '#a7753f',
66
43
  preset: {
67
44
  maps: {
68
45
  albedoMap: '/material/wood/finewood_27/finewood_27_basecolor_512.ktx2',
@@ -101,6 +78,7 @@ export const MATERIAL_CATALOG = [
101
78
  surfaces: ['floor'],
102
79
  description: 'Wood plank finish',
103
80
  previewThumbnailUrl: '/material/wood/floor_plank_1/floor_plank_1_thumb.webp',
81
+ previewColor: '#bf8552',
104
82
  preset: {
105
83
  maps: {
106
84
  albedoMap: '/material/wood/floor_plank_1/floor_plank_1_basecolor_512.ktx2',
@@ -138,6 +116,7 @@ export const MATERIAL_CATALOG = [
138
116
  surfaces: ['floor'],
139
117
  description: 'Parquet wood finish',
140
118
  previewThumbnailUrl: '/material/wood/hungarian_parquet_10/hungarian_parquet_10_thumb.webp',
119
+ previewColor: '#a87d50',
141
120
  preset: {
142
121
  maps: {
143
122
  albedoMap: '/material/wood/hungarian_parquet_10/hungarian_parquet_10_basecolor_512.ktx2',
@@ -175,6 +154,7 @@ export const MATERIAL_CATALOG = [
175
154
  surfaces: ['floor'],
176
155
  description: 'Parquet wood finish',
177
156
  previewThumbnailUrl: '/material/wood/hungarian_parquet_2/hungarian_parquet_2_thumb.webp',
157
+ previewColor: '#673021',
178
158
  preset: {
179
159
  maps: {
180
160
  albedoMap: '/material/wood/hungarian_parquet_2/hungarian_parquet_2_basecolor_512.ktx2',
@@ -212,6 +192,7 @@ export const MATERIAL_CATALOG = [
212
192
  surfaces: ['floor'],
213
193
  description: 'Parquet wood finish',
214
194
  previewThumbnailUrl: '/material/wood/square_parquet_21/square_parquet_21_thumb.webp',
195
+ previewColor: '#3f220f',
215
196
  preset: {
216
197
  maps: {
217
198
  albedoMap: '/material/wood/square_parquet_21/square_parquet_21_basecolor_512.ktx2',
@@ -249,6 +230,7 @@ export const MATERIAL_CATALOG = [
249
230
  surfaces: ['floor'],
250
231
  description: 'Parquet wood finish',
251
232
  previewThumbnailUrl: '/material/wood/square_wood_parquet_23/square_wood_parquet_23_thumb.webp',
233
+ previewColor: '#7e4108',
252
234
  preset: {
253
235
  maps: {
254
236
  albedoMap: '/material/wood/square_wood_parquet_23/square_wood_parquet_23_basecolor_512.ktx2',
@@ -286,6 +268,7 @@ export const MATERIAL_CATALOG = [
286
268
  surfaces: ['floor', 'wall', 'furniture'],
287
269
  description: 'Fine wood finish',
288
270
  previewThumbnailUrl: '/material/wood/wood_fine/wood_fine_thumb.webp',
271
+ previewColor: '#ba9a80',
289
272
  preset: {
290
273
  maps: {
291
274
  albedoMap: '/material/wood/wood_fine/wood_fine_basecolor_512.ktx2',
@@ -323,6 +306,7 @@ export const MATERIAL_CATALOG = [
323
306
  surfaces: ['floor', 'wall', 'furniture'],
324
307
  description: 'Fine wood finish',
325
308
  previewThumbnailUrl: '/material/wood/wood_fine_11/wood_fine_11_thumb.webp',
309
+ previewColor: '#f59d52',
326
310
  preset: {
327
311
  maps: {
328
312
  albedoMap: '/material/wood/wood_fine_11/wood_fine_11_basecolor_512.ktx2',
@@ -360,6 +344,7 @@ export const MATERIAL_CATALOG = [
360
344
  surfaces: ['floor', 'wall', 'furniture'],
361
345
  description: 'Fine wood finish',
362
346
  previewThumbnailUrl: '/material/wood/wood_fine_13/wood_fine_13_thumb.webp',
347
+ previewColor: '#e5a76f',
363
348
  preset: {
364
349
  maps: {
365
350
  albedoMap: '/material/wood/wood_fine_13/wood_fine_13_basecolor_512.ktx2',
@@ -397,6 +382,7 @@ export const MATERIAL_CATALOG = [
397
382
  surfaces: ['floor', 'wall', 'furniture'],
398
383
  description: 'Fine wood finish',
399
384
  previewThumbnailUrl: '/material/wood/wood_fine_2/wood_fine_2_thumb.webp',
385
+ previewColor: '#dcb791',
400
386
  preset: {
401
387
  maps: {
402
388
  albedoMap: '/material/wood/wood_fine_2/wood_fine_2_basecolor_512.ktx2',
@@ -434,6 +420,7 @@ export const MATERIAL_CATALOG = [
434
420
  surfaces: ['floor', 'wall', 'furniture'],
435
421
  description: 'Fine wood finish',
436
422
  previewThumbnailUrl: '/material/wood/wood_fine_22/wood_fine_22_thumb.webp',
423
+ previewColor: '#bfa67e',
437
424
  preset: {
438
425
  maps: {
439
426
  albedoMap: '/material/wood/wood_fine_22/wood_fine_22_basecolor_512.ktx2',
@@ -471,6 +458,7 @@ export const MATERIAL_CATALOG = [
471
458
  surfaces: ['floor', 'wall', 'furniture'],
472
459
  description: 'Fine wood finish',
473
460
  previewThumbnailUrl: '/material/wood/wood_fine_24/wood_fine_24_thumb.webp',
461
+ previewColor: '#a43c28',
474
462
  preset: {
475
463
  maps: {
476
464
  albedoMap: '/material/wood/wood_fine_24/wood_fine_24_basecolor_512.ktx2',
@@ -508,6 +496,7 @@ export const MATERIAL_CATALOG = [
508
496
  surfaces: ['floor'],
509
497
  description: 'Parquet wood finish',
510
498
  previewThumbnailUrl: '/material/wood/wood_parquet_14/wood_parquet_14_thumb.webp',
499
+ previewColor: '#e3d4c2',
511
500
  preset: {
512
501
  maps: {
513
502
  albedoMap: '/material/wood/wood_parquet_14/wood_parquet_14_basecolor_512.ktx2',
@@ -547,6 +536,7 @@ export const MATERIAL_CATALOG = [
547
536
  surfaces: ['floor'],
548
537
  description: 'Parquet wood finish',
549
538
  previewThumbnailUrl: '/material/wood/wooden_parquet_11/wooden_parquet_11_thumb.webp',
539
+ previewColor: '#59392d',
550
540
  preset: {
551
541
  maps: {
552
542
  albedoMap: '/material/wood/wooden_parquet_11/wooden_parquet_11_basecolor_512.ktx2',
@@ -584,6 +574,7 @@ export const MATERIAL_CATALOG = [
584
574
  surfaces: ['floor'],
585
575
  description: 'Parquet wood finish',
586
576
  previewThumbnailUrl: '/material/wood/woodparquet_121/woodparquet_121_thumb.webp',
577
+ previewColor: '#8f7247',
587
578
  preset: {
588
579
  maps: {
589
580
  albedoMap: '/material/wood/woodparquet_121/woodparquet_121_basecolor_512.ktx2',
@@ -622,6 +613,7 @@ export const MATERIAL_CATALOG = [
622
613
  surfaces: ['floor'],
623
614
  description: 'Parquet wood finish',
624
615
  previewThumbnailUrl: '/material/wood/woodparquet_56/woodparquet_56_thumb.webp',
616
+ previewColor: '#ba8b5d',
625
617
  preset: {
626
618
  maps: {
627
619
  albedoMap: '/material/wood/woodparquet_56/woodparquet_56_basecolor_512.ktx2',
@@ -661,6 +653,7 @@ export const MATERIAL_CATALOG = [
661
653
  surfaces: ['floor'],
662
654
  description: 'Parquet wood finish',
663
655
  previewThumbnailUrl: '/material/wood/woodparquet_65/woodparquet_65_thumb.webp',
656
+ previewColor: '#9f7841',
664
657
  preset: {
665
658
  maps: {
666
659
  albedoMap: '/material/wood/woodparquet_65/woodparquet_65_basecolor_512.ktx2',
@@ -700,6 +693,7 @@ export const MATERIAL_CATALOG = [
700
693
  surfaces: ['floor'],
701
694
  description: 'Parquet wood finish',
702
695
  previewThumbnailUrl: '/material/wood/woodparquet_99/woodparquet_99_thumb.webp',
696
+ previewColor: '#b69573',
703
697
  preset: {
704
698
  maps: {
705
699
  albedoMap: '/material/wood/woodparquet_99/woodparquet_99_basecolor_512.ktx2',
@@ -739,6 +733,7 @@ export const MATERIAL_CATALOG = [
739
733
  surfaces: ['floor', 'wall'],
740
734
  description: 'Wood plank finish',
741
735
  previewThumbnailUrl: '/material/wood/woodplank_19/woodplank_19_thumb.webp',
736
+ previewColor: '#8f7b5f',
742
737
  preset: {
743
738
  maps: {
744
739
  albedoMap: '/material/wood/woodplank_19/woodplank_19_basecolor_512.ktx2',
@@ -777,6 +772,7 @@ export const MATERIAL_CATALOG = [
777
772
  surfaces: ['floor', 'wall'],
778
773
  description: 'Wood plank finish',
779
774
  previewThumbnailUrl: '/material/wood/woodplank_48/woodplank_48_thumb.webp',
775
+ previewColor: '#89664d',
780
776
  preset: {
781
777
  maps: {
782
778
  albedoMap: '/material/wood/woodplank_48/woodplank_48_basecolor_512.ktx2',
@@ -815,6 +811,7 @@ export const MATERIAL_CATALOG = [
815
811
  surfaces: ['floor'],
816
812
  description: 'Floor tile finish',
817
813
  previewThumbnailUrl: '/material/flooring/tile_quarry/tile_quarry_thumb.webp',
814
+ previewColor: '#484946',
818
815
  preset: {
819
816
  maps: {
820
817
  albedoMap: '/material/flooring/tile_quarry/tile_quarry_basecolor_512.ktx2',
@@ -853,6 +850,7 @@ export const MATERIAL_CATALOG = [
853
850
  surfaces: ['wall', 'floor', 'outdoor'],
854
851
  description: 'Brick finish',
855
852
  previewThumbnailUrl: '/material/flooring/brick_wall_rustic/brick_wall_rustic_thumb.webp',
853
+ previewColor: '#9b6f57',
856
854
  preset: {
857
855
  maps: {
858
856
  albedoMap: '/material/flooring/brick_wall_rustic/brick_wall_rustic_basecolor_512.ktx2',
@@ -892,6 +890,7 @@ export const MATERIAL_CATALOG = [
892
890
  surfaces: ['wall', 'floor', 'outdoor'],
893
891
  description: 'Brick finish',
894
892
  previewThumbnailUrl: '/material/flooring/brick_wall_aged/brick_wall_aged_thumb.webp',
893
+ previewColor: '#be9877',
895
894
  preset: {
896
895
  maps: {
897
896
  albedoMap: '/material/flooring/brick_wall_aged/brick_wall_aged_basecolor_512.ktx2',
@@ -931,6 +930,7 @@ export const MATERIAL_CATALOG = [
931
930
  surfaces: ['wall', 'floor', 'outdoor'],
932
931
  description: 'Brick finish',
933
932
  previewThumbnailUrl: '/material/flooring/brick_wall_weathered/brick_wall_weathered_thumb.webp',
933
+ previewColor: '#86513c',
934
934
  preset: {
935
935
  maps: {
936
936
  albedoMap: '/material/flooring/brick_wall_weathered/brick_wall_weathered_basecolor_512.ktx2',
@@ -969,6 +969,7 @@ export const MATERIAL_CATALOG = [
969
969
  surfaces: ['wall', 'furniture'],
970
970
  description: 'Panel finish',
971
971
  previewThumbnailUrl: '/material/flooring/garage_panel/garage_panel_thumb.webp',
972
+ previewColor: '#d7dad7',
972
973
  preset: {
973
974
  maps: {
974
975
  albedoMap: '/material/flooring/garage_panel/garage_panel_basecolor_512.ktx2',
@@ -1006,6 +1007,7 @@ export const MATERIAL_CATALOG = [
1006
1007
  surfaces: ['floor', 'wall'],
1007
1008
  description: 'Stone flooring finish',
1008
1009
  previewThumbnailUrl: '/material/flooring/green_labradorite/green_labradorite_thumb.webp',
1010
+ previewColor: '#313828',
1009
1011
  preset: {
1010
1012
  maps: {
1011
1013
  albedoMap: '/material/flooring/green_labradorite/green_labradorite_basecolor_512.ktx2',
@@ -1043,6 +1045,7 @@ export const MATERIAL_CATALOG = [
1043
1045
  surfaces: ['outdoor', 'floor'],
1044
1046
  description: 'Ground surface finish',
1045
1047
  previewThumbnailUrl: '/material/flooring/ground_earth/ground_earth_thumb.webp',
1048
+ previewColor: '#716c62',
1046
1049
  preset: {
1047
1050
  maps: {
1048
1051
  albedoMap: '/material/flooring/ground_earth/ground_earth_basecolor_512.ktx2',
@@ -1082,6 +1085,7 @@ export const MATERIAL_CATALOG = [
1082
1085
  surfaces: ['floor', 'outdoor'],
1083
1086
  description: 'Pool tile finish',
1084
1087
  previewThumbnailUrl: '/material/flooring/pool_tiles/pool_tiles_thumb.webp',
1088
+ previewColor: '#79b4ce',
1085
1089
  preset: {
1086
1090
  maps: {
1087
1091
  albedoMap: '/material/flooring/pool_tiles/pool_tiles_basecolor_512.ktx2',
@@ -1119,6 +1123,7 @@ export const MATERIAL_CATALOG = [
1119
1123
  surfaces: ['floor'],
1120
1124
  description: 'Tile flooring finish',
1121
1125
  previewThumbnailUrl: '/material/flooring/tiles_checker/tiles_checker_thumb.webp',
1126
+ previewColor: '#bab4b0',
1122
1127
  preset: {
1123
1128
  maps: {
1124
1129
  albedoMap: '/material/flooring/tiles_checker/tiles_checker_basecolor_512.ktx2',
@@ -1156,6 +1161,7 @@ export const MATERIAL_CATALOG = [
1156
1161
  surfaces: ['floor'],
1157
1162
  description: 'Tile flooring finish',
1158
1163
  previewThumbnailUrl: '/material/flooring/tiles_grid/tiles_grid_thumb.webp',
1164
+ previewColor: '#828282',
1159
1165
  preset: {
1160
1166
  maps: {
1161
1167
  albedoMap: '/material/flooring/tiles_grid/tiles_grid_basecolor_512.ktx2',
@@ -1193,6 +1199,7 @@ export const MATERIAL_CATALOG = [
1193
1199
  surfaces: ['wall', 'floor', 'outdoor'],
1194
1200
  description: 'Stone finish',
1195
1201
  previewThumbnailUrl: '/material/flooring/stone_wall/stone_wall_thumb.webp',
1202
+ previewColor: '#b2845c',
1196
1203
  preset: {
1197
1204
  maps: {
1198
1205
  albedoMap: '/material/flooring/stone_wall/stone_wall_basecolor_512.ktx2',
@@ -1230,6 +1237,7 @@ export const MATERIAL_CATALOG = [
1230
1237
  surfaces: ['floor'],
1231
1238
  description: 'Wood-look ceramic flooring finish',
1232
1239
  previewThumbnailUrl: '/material/flooring/wooden_ceramic_3/wooden_ceramic_3_thumb.webp',
1240
+ previewColor: '#977459',
1233
1241
  preset: {
1234
1242
  maps: {
1235
1243
  albedoMap: '/material/flooring/wooden_ceramic_3/wooden_ceramic_3_basecolor_512.ktx2',
@@ -1267,6 +1275,7 @@ export const MATERIAL_CATALOG = [
1267
1275
  surfaces: ['floor', 'wall'],
1268
1276
  description: 'Ceramic flooring finish',
1269
1277
  previewThumbnailUrl: '/material/flooring/ceramic_mosaic/ceramic_mosaic_thumb.webp',
1278
+ previewColor: '#b9b6ae',
1270
1279
  preset: {
1271
1280
  maps: {
1272
1281
  albedoMap: '/material/flooring/ceramic_mosaic/ceramic_mosaic_basecolor_512.ktx2',
@@ -1306,6 +1315,7 @@ export const MATERIAL_CATALOG = [
1306
1315
  surfaces: ['floor', 'wall'],
1307
1316
  description: 'Terrazzo flooring finish',
1308
1317
  previewThumbnailUrl: '/material/flooring/terrazzo/terrazzo_thumb.webp',
1318
+ previewColor: '#939e9f',
1309
1319
  preset: {
1310
1320
  maps: {
1311
1321
  albedoMap: '/material/flooring/terrazzo/terrazzo_basecolor_512.ktx2',
@@ -1344,6 +1354,7 @@ export const MATERIAL_CATALOG = [
1344
1354
  surfaces: ['floor', 'wall'],
1345
1355
  description: 'Floor tile finish',
1346
1356
  previewThumbnailUrl: '/material/flooring/tile_stone/tile_stone_thumb.webp',
1357
+ previewColor: '#d1d0c9',
1347
1358
  preset: {
1348
1359
  maps: {
1349
1360
  albedoMap: '/material/flooring/tile_stone/tile_stone_basecolor_512.ktx2',
@@ -1382,6 +1393,7 @@ export const MATERIAL_CATALOG = [
1382
1393
  surfaces: ['floor'],
1383
1394
  description: 'Floor tile finish',
1384
1395
  previewThumbnailUrl: '/material/flooring/tile_terracotta/tile_terracotta_thumb.webp',
1396
+ previewColor: '#6e6b65',
1385
1397
  preset: {
1386
1398
  maps: {
1387
1399
  albedoMap: '/material/flooring/tile_terracotta/tile_terracotta_basecolor_512.ktx2',
@@ -1420,6 +1432,7 @@ export const MATERIAL_CATALOG = [
1420
1432
  surfaces: ['floor', 'wall'],
1421
1433
  description: 'Green quartzite flooring finish',
1422
1434
  previewThumbnailUrl: '/material/flooring/green_glass_quartzite/green_glass_quartzite_thumb.webp',
1435
+ previewColor: '#5d6957',
1423
1436
  preset: {
1424
1437
  maps: {
1425
1438
  albedoMap: '/material/flooring/green_glass_quartzite/green_glass_quartzite_basecolor_512.ktx2',
@@ -1457,6 +1470,7 @@ export const MATERIAL_CATALOG = [
1457
1470
  surfaces: ['floor'],
1458
1471
  description: 'Dark ceramic flooring finish',
1459
1472
  previewThumbnailUrl: '/material/flooring/dark_ceramic_grunge/dark_ceramic_grunge_thumb.webp',
1473
+ previewColor: '#535351',
1460
1474
  preset: {
1461
1475
  maps: {
1462
1476
  albedoMap: '/material/flooring/dark_ceramic_grunge/dark_ceramic_grunge_basecolor_512.ktx2',
@@ -1496,6 +1510,7 @@ export const MATERIAL_CATALOG = [
1496
1510
  surfaces: ['floor'],
1497
1511
  description: 'Light ceramic flooring finish',
1498
1512
  previewThumbnailUrl: '/material/flooring/light_ceramic_grunge/light_ceramic_grunge_thumb.webp',
1513
+ previewColor: '#9c9b95',
1499
1514
  preset: {
1500
1515
  maps: {
1501
1516
  albedoMap: '/material/flooring/light_ceramic_grunge/light_ceramic_grunge_basecolor_512.ktx2',
@@ -1535,6 +1550,7 @@ export const MATERIAL_CATALOG = [
1535
1550
  surfaces: ['floor', 'wall'],
1536
1551
  description: 'White marble flooring finish',
1537
1552
  previewThumbnailUrl: '/material/flooring/statuaretto/statuaretto_thumb.webp',
1553
+ previewColor: '#bcbec2',
1538
1554
  preset: {
1539
1555
  maps: {
1540
1556
  albedoMap: '/material/flooring/statuaretto/statuaretto_basecolor_512.ktx2',
@@ -1572,6 +1588,7 @@ export const MATERIAL_CATALOG = [
1572
1588
  surfaces: ['floor', 'wall'],
1573
1589
  description: 'Floor tile finish',
1574
1590
  previewThumbnailUrl: '/material/flooring/tile_mosaic/tile_mosaic_thumb.webp',
1591
+ previewColor: '#d1ccbe',
1575
1592
  preset: {
1576
1593
  maps: {
1577
1594
  albedoMap: '/material/flooring/tile_mosaic/tile_mosaic_basecolor_512.ktx2',
@@ -1611,6 +1628,7 @@ export const MATERIAL_CATALOG = [
1611
1628
  surfaces: ['floor', 'wall'],
1612
1629
  description: 'Floor tile finish',
1613
1630
  previewThumbnailUrl: '/material/flooring/tile_pattern/tile_pattern_thumb.webp',
1631
+ previewColor: '#999287',
1614
1632
  preset: {
1615
1633
  maps: {
1616
1634
  albedoMap: '/material/flooring/tile_pattern/tile_pattern_basecolor_512.ktx2',
@@ -1650,6 +1668,7 @@ export const MATERIAL_CATALOG = [
1650
1668
  surfaces: ['floor'],
1651
1669
  description: 'Wood-look ceramic flooring finish',
1652
1670
  previewThumbnailUrl: '/material/flooring/wooden_ceramic_2/wooden_ceramic_2_thumb.webp',
1671
+ previewColor: '#786250',
1653
1672
  preset: {
1654
1673
  maps: {
1655
1674
  albedoMap: '/material/flooring/wooden_ceramic_2/wooden_ceramic_2_basecolor_512.ktx2',
@@ -1687,6 +1706,7 @@ export const MATERIAL_CATALOG = [
1687
1706
  surfaces: ['floor'],
1688
1707
  description: 'Wood parquet flooring finish',
1689
1708
  previewThumbnailUrl: '/material/flooring/woodparquet/woodparquet_thumb.webp',
1709
+ previewColor: '#bea27e',
1690
1710
  preset: {
1691
1711
  maps: {
1692
1712
  albedoMap: '/material/flooring/woodparquet/woodparquet_basecolor_512.ktx2',
@@ -1726,6 +1746,7 @@ export const MATERIAL_CATALOG = [
1726
1746
  surfaces: ['roof'],
1727
1747
  description: 'Classic roof shingle finish',
1728
1748
  previewThumbnailUrl: '/material/roofing/roof_shingles_classic/roof_shingles_classic_thumb.webp',
1749
+ previewColor: '#9e5b46',
1729
1750
  preset: {
1730
1751
  maps: {
1731
1752
  albedoMap: '/material/roofing/roof_shingles_classic/roof_shingles_classic_basecolor_512.ktx2',
@@ -1765,6 +1786,7 @@ export const MATERIAL_CATALOG = [
1765
1786
  surfaces: ['roof'],
1766
1787
  description: 'Clay roof tile finish',
1767
1788
  previewThumbnailUrl: '/material/roofing/roof_tiles_clay/roof_tiles_clay_thumb.webp',
1789
+ previewColor: '#765241',
1768
1790
  preset: {
1769
1791
  maps: {
1770
1792
  albedoMap: '/material/roofing/roof_tiles_clay/roof_tiles_clay_basecolor_512.ktx2',
@@ -1804,6 +1826,7 @@ export const MATERIAL_CATALOG = [
1804
1826
  surfaces: ['roof'],
1805
1827
  description: 'Terracotta roof tile finish',
1806
1828
  previewThumbnailUrl: '/material/roofing/roof_tiles_terracotta/roof_tiles_terracotta_thumb.webp',
1829
+ previewColor: '#494b4d',
1807
1830
  preset: {
1808
1831
  maps: {
1809
1832
  albedoMap: '/material/roofing/roof_tiles_terracotta/roof_tiles_terracotta_basecolor_512.ktx2',
@@ -1843,6 +1866,7 @@ export const MATERIAL_CATALOG = [
1843
1866
  surfaces: ['roof'],
1844
1867
  description: 'Grey composition shingle finish',
1845
1868
  previewThumbnailUrl: '/material/roofing/roof_shingles_grey/roof_shingles_grey_thumb.webp',
1869
+ previewColor: '#505050',
1846
1870
  preset: {
1847
1871
  maps: {
1848
1872
  albedoMap: '/material/roofing/roof_shingles_grey/roof_shingles_grey_basecolor_512.webp',
@@ -1882,6 +1906,7 @@ export const MATERIAL_CATALOG = [
1882
1906
  surfaces: ['roof'],
1883
1907
  description: 'Weathered roof shingle finish',
1884
1908
  previewThumbnailUrl: '/material/roofing/roof_shingles_weathered/roof_shingles_weathered_thumb.webp',
1909
+ previewColor: '#a15e49',
1885
1910
  preset: {
1886
1911
  maps: {
1887
1912
  albedoMap: '/material/roofing/roof_shingles_weathered/roof_shingles_weathered_basecolor_512.ktx2',
@@ -3430,6 +3455,7 @@ export const MATERIAL_CATALOG = [
3430
3455
  surfaces: ['furniture', 'wall'],
3431
3456
  description: 'Natural linen weave',
3432
3457
  previewThumbnailUrl: '/material/fabric/linen_hikari_fabric/linen_hikari_fabric_thumb.webp',
3458
+ previewColor: '#aaa49f',
3433
3459
  preset: {
3434
3460
  maps: {
3435
3461
  albedoMap: '/material/fabric/linen_hikari_fabric/linen_hikari_fabric_basecolor_512.ktx2',
@@ -3466,6 +3492,7 @@ export const MATERIAL_CATALOG = [
3466
3492
  surfaces: ['furniture', 'wall'],
3467
3493
  description: 'Plain cotton weave',
3468
3494
  previewThumbnailUrl: '/material/fabric/blue_cotton/blue_cotton_thumb.webp',
3495
+ previewColor: '#528bc1',
3469
3496
  preset: {
3470
3497
  maps: {
3471
3498
  albedoMap: '/material/fabric/blue_cotton/blue_cotton_basecolor_512.ktx2',
@@ -3504,6 +3531,7 @@ export const MATERIAL_CATALOG = [
3504
3531
  surfaces: ['furniture'],
3505
3532
  description: 'Velvet with a soft sheen',
3506
3533
  previewThumbnailUrl: '/material/fabric/red_velvet/red_velvet_thumb.webp',
3534
+ previewColor: '#781113',
3507
3535
  preset: {
3508
3536
  maps: {
3509
3537
  albedoMap: '/material/fabric/red_velvet/red_velvet_basecolor_512.ktx2',
@@ -3542,6 +3570,7 @@ export const MATERIAL_CATALOG = [
3542
3570
  surfaces: ['furniture'],
3543
3571
  description: 'Matte wool felt',
3544
3572
  previewThumbnailUrl: '/material/fabric/white_wool/white_wool_thumb.webp',
3573
+ previewColor: '#d2d2d2',
3545
3574
  preset: {
3546
3575
  maps: {
3547
3576
  albedoMap: '/material/fabric/white_wool/white_wool_basecolor_512.ktx2',
@@ -3580,6 +3609,7 @@ export const MATERIAL_CATALOG = [
3580
3609
  surfaces: ['furniture'],
3581
3610
  description: 'Matte suede nap',
3582
3611
  previewThumbnailUrl: '/material/fabric/suede/suede_thumb.webp',
3612
+ previewColor: '#c8be98',
3583
3613
  preset: {
3584
3614
  maps: {
3585
3615
  albedoMap: '/material/fabric/suede/suede_basecolor_512.ktx2',
@@ -3618,6 +3648,7 @@ export const MATERIAL_CATALOG = [
3618
3648
  surfaces: ['furniture'],
3619
3649
  description: 'Looped bouclé upholstery',
3620
3650
  previewThumbnailUrl: '/material/fabric/wool_boucle/wool_boucle_thumb.webp',
3651
+ previewColor: '#776d60',
3621
3652
  preset: {
3622
3653
  maps: {
3623
3654
  albedoMap: '/material/fabric/wool_boucle/wool_boucle_basecolor_512.ktx2',
@@ -3654,6 +3685,7 @@ export const MATERIAL_CATALOG = [
3654
3685
  surfaces: ['furniture'],
3655
3686
  description: 'Smooth black leather',
3656
3687
  previewThumbnailUrl: '/material/leather/black_leather/black_leather_thumb.webp',
3688
+ previewColor: '#2b2b2b',
3657
3689
  preset: {
3658
3690
  maps: {
3659
3691
  albedoMap: '/material/leather/black_leather/black_leather_basecolor_512.ktx2',
@@ -3691,6 +3723,7 @@ export const MATERIAL_CATALOG = [
3691
3723
  surfaces: ['furniture'],
3692
3724
  description: 'Pebbled calf leather',
3693
3725
  previewThumbnailUrl: '/material/leather/calf_leather/calf_leather_thumb.webp',
3726
+ previewColor: '#78411a',
3694
3727
  preset: {
3695
3728
  maps: {
3696
3729
  albedoMap: '/material/leather/calf_leather/calf_leather_basecolor_512.ktx2',
@@ -3729,6 +3762,7 @@ export const MATERIAL_CATALOG = [
3729
3762
  surfaces: ['wall', 'ceiling'],
3730
3763
  description: 'Smooth painted plaster wall',
3731
3764
  previewThumbnailUrl: '/material/concrete/plaster_painted/plaster_painted_thumb.webp',
3765
+ previewColor: '#c8c5bd',
3732
3766
  preset: {
3733
3767
  maps: {
3734
3768
  albedoMap: '/material/concrete/plaster_painted/plaster_painted_basecolor_512.ktx2',
@@ -3767,6 +3801,7 @@ export const MATERIAL_CATALOG = [
3767
3801
  surfaces: ['floor', 'wall'],
3768
3802
  description: 'Polished concrete floor',
3769
3803
  previewThumbnailUrl: '/material/concrete/concrete_polished/concrete_polished_thumb.webp',
3804
+ previewColor: '#6d6b69',
3770
3805
  preset: {
3771
3806
  maps: {
3772
3807
  albedoMap: '/material/concrete/concrete_polished/concrete_polished_basecolor_512.ktx2',
@@ -3804,6 +3839,7 @@ export const MATERIAL_CATALOG = [
3804
3839
  surfaces: ['wall', 'floor', 'outdoor'],
3805
3840
  description: 'Board-formed raw concrete',
3806
3841
  previewThumbnailUrl: '/material/concrete/concrete_raw/concrete_raw_thumb.webp',
3842
+ previewColor: '#a5a5a5',
3807
3843
  preset: {
3808
3844
  maps: {
3809
3845
  albedoMap: '/material/concrete/concrete_raw/concrete_raw_basecolor_512.ktx2',
@@ -3842,6 +3878,7 @@ export const MATERIAL_CATALOG = [
3842
3878
  surfaces: ['wall', 'floor'],
3843
3879
  description: 'Smooth cast concrete plate',
3844
3880
  previewThumbnailUrl: '/material/concrete/concrete_plate/concrete_plate_thumb.webp',
3881
+ previewColor: '#ababab',
3845
3882
  preset: {
3846
3883
  maps: {
3847
3884
  albedoMap: '/material/concrete/concrete_plate/concrete_plate_basecolor_512.ktx2',
@@ -3880,6 +3917,7 @@ export const MATERIAL_CATALOG = [
3880
3917
  surfaces: ['wall', 'outdoor'],
3881
3918
  description: 'Exterior stucco render',
3882
3919
  previewThumbnailUrl: '/material/concrete/white_stucco/white_stucco_thumb.webp',
3920
+ previewColor: '#cccccc',
3883
3921
  preset: {
3884
3922
  maps: {
3885
3923
  albedoMap: '/material/concrete/white_stucco/white_stucco_basecolor_512.ktx2',
@@ -3918,6 +3956,7 @@ export const MATERIAL_CATALOG = [
3918
3956
  surfaces: ['wall', 'ceiling'],
3919
3957
  description: 'Smooth prepared drywall ready for paint',
3920
3958
  previewThumbnailUrl: '/material/concrete/prepared_drywall/prepared_drywall_thumb.webp',
3959
+ previewColor: '#b1b1b1',
3921
3960
  preset: {
3922
3961
  maps: {
3923
3962
  albedoMap: '/material/concrete/prepared_drywall/prepared_drywall_basecolor_512.ktx2',
@@ -3956,6 +3995,7 @@ export const MATERIAL_CATALOG = [
3956
3995
  surfaces: ['furniture', 'wall'],
3957
3996
  description: 'Warm copper',
3958
3997
  previewThumbnailUrl: '/material/metal/copper_metal/copper_metal_thumb.webp',
3998
+ previewColor: '#cb845d',
3959
3999
  preset: {
3960
4000
  maps: {
3961
4001
  albedoMap: '/material/metal/copper_metal/copper_metal_basecolor_512.ktx2',
@@ -3994,6 +4034,7 @@ export const MATERIAL_CATALOG = [
3994
4034
  surfaces: ['furniture', 'wall'],
3995
4035
  description: 'Polished stainless steel',
3996
4036
  previewThumbnailUrl: '/material/metal/polished_metal/polished_metal_thumb.webp',
4037
+ previewColor: '#f2f4f3',
3997
4038
  preset: {
3998
4039
  maps: {
3999
4040
  albedoMap: '/material/metal/polished_metal/polished_metal_basecolor_512.ktx2',
@@ -4033,6 +4074,7 @@ export const MATERIAL_CATALOG = [
4033
4074
  surfaces: ['furniture', 'wall'],
4034
4075
  description: 'Brushed stainless steel',
4035
4076
  previewThumbnailUrl: '/material/metal/stainless_steel_brushed/stainless_steel_brushed_thumb.webp',
4077
+ previewColor: '#636363',
4036
4078
  preset: {
4037
4079
  maps: {
4038
4080
  albedoMap: '/material/metal/stainless_steel_brushed/stainless_steel_brushed_basecolor_512.ktx2',
@@ -4680,6 +4722,10 @@ export function getMaterialsForCategory(category) {
4680
4722
  }
4681
4723
  return items;
4682
4724
  }
4725
+ /** A community material's id (`mtl_…`, as the host's database mints them), well formed. */
4726
+ export function isCommunityMaterialId(id) {
4727
+ return /^mtl_[\w-]+$/.test(id);
4728
+ }
4683
4729
  export function getCatalogMaterialById(id) {
4684
4730
  if (!id)
4685
4731
  return undefined;
@@ -10,6 +10,7 @@ export * from './elevator.js';
10
10
  export * from './fence.js';
11
11
  export * from './lean-to-extension.js';
12
12
  export * from './procedural-item.js';
13
+ export * from './roof.js';
13
14
  export * from './roof-accessories.js';
14
15
  export * from './shelf.js';
15
16
  export * from './slab.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/node-slots/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAyB9C,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AAExB;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,eAAe,EAAE,GAAG,IAAI,CAsD5E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/node-slots/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AA0B9C,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,QAAQ,CAAA;AACtB,cAAc,oBAAoB,CAAA;AAClC,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AAExB;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,eAAe,EAAE,GAAG,IAAI,CA0D5E"}
@@ -8,10 +8,11 @@ import { elevatorSlots } from './elevator.js';
8
8
  import { fenceSlots } from './fence.js';
9
9
  import { leanToSlots } from './lean-to-extension.js';
10
10
  import { proceduralItemSlots } from './procedural-item.js';
11
+ import { roofSegmentSlots } from './roof.js';
11
12
  import { boxVentSlots, cupolaSlots, downspoutSlots, eyebrowVentSlots, gutterSlots, turbineVentSlots, } from './roof-accessories.js';
12
13
  import { shelfSlots } from './shelf.js';
13
14
  import { slabSlots } from './slab.js';
14
- import { stairSlots } from './stair.js';
15
+ import { stairSegmentSlots, stairSlots } from './stair.js';
15
16
  import { wallSlots } from './wall.js';
16
17
  import { windowSlots } from './window.js';
17
18
  export * from './block.js';
@@ -24,6 +25,7 @@ export * from './elevator.js';
24
25
  export * from './fence.js';
25
26
  export * from './lean-to-extension.js';
26
27
  export * from './procedural-item.js';
28
+ export * from './roof.js';
27
29
  export * from './roof-accessories.js';
28
30
  export * from './shelf.js';
29
31
  export * from './slab.js';
@@ -74,12 +76,16 @@ export function nodeSlotDeclarations(node) {
74
76
  return leanToSlots();
75
77
  case 'procedural-item':
76
78
  return proceduralItemSlots(node);
79
+ case 'roof-segment':
80
+ return roofSegmentSlots(node);
77
81
  case 'shelf':
78
82
  return shelfSlots(node);
79
83
  case 'slab':
80
84
  return slabSlots();
81
85
  case 'stair':
82
86
  return stairSlots(node);
87
+ case 'stair-segment':
88
+ return stairSegmentSlots();
83
89
  case 'turbine-vent':
84
90
  return turbineVentSlots();
85
91
  case 'wall':
@@ -0,0 +1,5 @@
1
+ import type { SlotDeclaration } from '../registry/types.js';
2
+ import type { RoofSegmentNode } from '../schema/nodes/roof-segment.js';
3
+ export declare const GLAZED_ROOF_SLOTS: readonly ['glazing-frame', 'glazing-glass', 'glazing-solid'];
4
+ export declare function roofSegmentSlots(node: RoofSegmentNode): SlotDeclaration[];
5
+ //# sourceMappingURL=roof.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"roof.d.ts","sourceRoot":"","sources":["../../src/node-slots/roof.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAExD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,eAAO,MAAM,iBAAiB,YAAI,eAAe,EAAE,eAAe,EAAE,eAAe,CAAU,CAAA;AAC7F,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,EAAE,CAQzE"}
@@ -0,0 +1,12 @@
1
+ import { getRoofGlazing, isGlazedRoofSegment } from '../schema/nodes/roof-glazing.js';
2
+ export const GLAZED_ROOF_SLOTS = ['glazing-frame', 'glazing-glass', 'glazing-solid'];
3
+ export function roofSegmentSlots(node) {
4
+ if (!isGlazedRoofSegment(node))
5
+ return [];
6
+ const config = getRoofGlazing(node);
7
+ return GLAZED_ROOF_SLOTS.map((slotId, index) => ({
8
+ slotId,
9
+ label: ['Frame', 'Glass', 'Solid panels'][index],
10
+ default: index === 1 ? config.glassColor : config.frameColor,
11
+ }));
12
+ }
@@ -4,5 +4,7 @@ export type StairSlotId = 'treads' | 'body' | 'railing' | 'infill';
4
4
  export declare const STAIR_TREADS_SLOT_DEFAULT = "library:wood-woodplank48";
5
5
  export declare const STAIR_BODY_SLOT_DEFAULT = "library:preset-lightgrey";
6
6
  export declare const STAIR_RAILING_SLOT_DEFAULT = "library:metal-steel";
7
+ /** A flight's own treads and body, over the stair's. */
8
+ export declare function stairSegmentSlots(): SlotDeclaration[];
7
9
  export declare function stairSlots(node: StairNode): SlotDeclaration[];
8
10
  //# sourceMappingURL=stair.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stair.d.ts","sourceRoot":"","sources":["../../src/node-slots/stair.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAEtD,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAA;AAElE,eAAO,MAAM,yBAAyB,6BAA6B,CAAA;AACnE,eAAO,MAAM,uBAAuB,6BAA6B,CAAA;AACjE,eAAO,MAAM,0BAA0B,wBAAwB,CAAA;AAE/D,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,eAAe,EAAE,CAe7D"}
1
+ {"version":3,"file":"stair.d.ts","sourceRoot":"","sources":["../../src/node-slots/stair.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAEtD,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAA;AAElE,eAAO,MAAM,yBAAyB,6BAA6B,CAAA;AACnE,eAAO,MAAM,uBAAuB,6BAA6B,CAAA;AACjE,eAAO,MAAM,0BAA0B,wBAAwB,CAAA;AAE/D,wDAAwD;AACxD,wBAAgB,iBAAiB,IAAI,eAAe,EAAE,CAKrD;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,eAAe,EAAE,CAY7D"}