@roomle/web-sdk 2.61.0 → 2.62.0-alpha.1

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 (229) hide show
  1. package/lib/{TextGeometry-8e948315.js → TextGeometry-d25f1fa4.js} +2 -2
  2. package/lib/{TextGeometry-8e948315.js.map → TextGeometry-d25f1fa4.js.map} +1 -1
  3. package/lib/{TextGeometry-38a655fa.nomodule.js → TextGeometry-f2fc57a2.nomodule.js} +2 -2
  4. package/lib/{TextGeometry-38a655fa.nomodule.js.map → TextGeometry-f2fc57a2.nomodule.js.map} +1 -1
  5. package/lib/{banana-for-scale-158bf377.js → banana-for-scale-78324f69.js} +2 -2
  6. package/lib/{banana-for-scale-158bf377.js.map → banana-for-scale-78324f69.js.map} +1 -1
  7. package/lib/{banana-for-scale-1b93209d.nomodule.js → banana-for-scale-fbad8dbd.nomodule.js} +2 -2
  8. package/lib/{banana-for-scale-1b93209d.nomodule.js.map → banana-for-scale-fbad8dbd.nomodule.js.map} +1 -1
  9. package/lib/{budgeteer-measure-05337a81.js → budgeteer-measure-f229f761.js} +2 -2
  10. package/lib/{budgeteer-measure-05337a81.js.map → budgeteer-measure-f229f761.js.map} +1 -1
  11. package/lib/budgeteer-measure.nomodule.js +1 -1
  12. package/lib/{component-dimensioning-0ec0b7b2.nomodule.js → component-dimensioning-e5453bff.nomodule.js} +2 -2
  13. package/lib/component-dimensioning-e5453bff.nomodule.js.map +1 -0
  14. package/lib/{component-dimensioning-c1f91180.js → component-dimensioning-f0cf518d.js} +2 -2
  15. package/lib/component-dimensioning-f0cf518d.js.map +1 -0
  16. package/lib/{component-raycast-helper-833f8a52.nomodule.js → component-raycast-helper-73f1aca9.nomodule.js} +2 -2
  17. package/lib/component-raycast-helper-73f1aca9.nomodule.js.map +1 -0
  18. package/lib/{component-raycast-helper-1cb2afdd.js → component-raycast-helper-9255805e.js} +2 -2
  19. package/lib/component-raycast-helper-9255805e.js.map +1 -0
  20. package/lib/{configurator-be50c3fe.js → configurator-a44cea77.js} +2 -2
  21. package/lib/configurator-a44cea77.js.map +1 -0
  22. package/lib/{configurator-05086741.nomodule.js → configurator-b475fb50.nomodule.js} +2 -2
  23. package/lib/configurator-b475fb50.nomodule.js.map +1 -0
  24. package/lib/configurator-main-dc2a5801.js +2 -0
  25. package/lib/configurator-main-dc2a5801.js.map +1 -0
  26. package/lib/configurator-main.nomodule.js +1 -1
  27. package/lib/{continuous-drawing-helper-ab2aa242.nomodule.js → continuous-drawing-helper-335923cb.nomodule.js} +2 -2
  28. package/lib/continuous-drawing-helper-335923cb.nomodule.js.map +1 -0
  29. package/lib/{continuous-drawing-helper-771ee2d1.js → continuous-drawing-helper-ee575a14.js} +2 -2
  30. package/lib/continuous-drawing-helper-ee575a14.js.map +1 -0
  31. package/lib/{default-light-setting-97e2aec6.js → default-light-setting-5c69a7cc.js} +2 -2
  32. package/lib/default-light-setting-5c69a7cc.js.map +1 -0
  33. package/lib/{default-light-setting-99a7eab4.nomodule.js → default-light-setting-e93b3006.nomodule.js} +2 -2
  34. package/lib/default-light-setting-e93b3006.nomodule.js.map +1 -0
  35. package/lib/definitions/common-core/__tests__/image-renderer.d.ts +0 -1
  36. package/lib/definitions/common-core/src/environment/dynamic-environment-setting-loader.d.ts +2 -2
  37. package/lib/definitions/common-core/src/main.d.ts +19 -0
  38. package/lib/definitions/common-core/src/utils/common-utils.d.ts +16 -5
  39. package/lib/definitions/common-core/src/utils/init-data.d.ts +4 -1
  40. package/lib/definitions/common-core/src/utils/material-creator.d.ts +0 -3
  41. package/lib/definitions/common-core/src/utils/shims.d.ts +14 -0
  42. package/lib/definitions/common-core/src/utils/threejs-utils.d.ts +2 -2
  43. package/lib/definitions/common-core/src/view-model/plan-element-view-model.d.ts +0 -2
  44. package/lib/definitions/common-core/src/webgl/image-renderer.d.ts +1 -2
  45. package/lib/definitions/common-core/src/webgl/renderer/baked-ground-contact-shadow.d.ts +17 -18
  46. package/lib/definitions/common-core/src/webgl/renderer/effect-pass.d.ts +20 -20
  47. package/lib/definitions/common-core/src/webgl/renderer/environment-definition.d.ts +23 -0
  48. package/lib/definitions/common-core/src/webgl/renderer/gbuffer-render-target.d.ts +13 -11
  49. package/lib/definitions/common-core/src/webgl/renderer/ground-reflection-pass.d.ts +10 -10
  50. package/lib/definitions/common-core/src/webgl/renderer/light-source-detection-debug.d.ts +15 -0
  51. package/lib/definitions/common-core/src/webgl/renderer/light-source-detection.d.ts +21 -20
  52. package/lib/definitions/common-core/src/webgl/renderer/outline-pass.d.ts +8 -8
  53. package/lib/definitions/common-core/src/webgl/renderer/outline-renderer.d.ts +5 -5
  54. package/lib/definitions/common-core/src/webgl/renderer/pmrem-environment.d.ts +8 -0
  55. package/lib/definitions/common-core/src/webgl/renderer/render-cache.d.ts +44 -0
  56. package/lib/definitions/common-core/src/webgl/renderer/render-utility.d.ts +17 -27
  57. package/lib/definitions/common-core/src/webgl/renderer/scene-renderer-debug.d.ts +12 -11
  58. package/lib/definitions/common-core/src/webgl/renderer/scene-renderer-gui.d.ts +10 -10
  59. package/lib/definitions/common-core/src/webgl/renderer/scene-renderer.d.ts +29 -31
  60. package/lib/definitions/common-core/src/webgl/renderer/screen-space-shadow-map.d.ts +62 -50
  61. package/lib/definitions/common-core/src/webgl/renderer/shader-utility.d.ts +2 -2
  62. package/lib/definitions/common-core/src/webgl/renderer/shadow-and-ao-pass.d.ts +26 -28
  63. package/lib/definitions/common-core/src/webgl/roomle-webgl-renderer.d.ts +3 -2
  64. package/lib/definitions/common-core/src/webgl/scene-manager.d.ts +1 -0
  65. package/lib/definitions/configurator-core/src/roomle-configurator.d.ts +6 -0
  66. package/lib/definitions/configurator-core/src/webgl/environment/floor-environment.d.ts +1 -1
  67. package/lib/definitions/glb-viewer-core/src/roomle-glb-viewer.d.ts +6 -0
  68. package/lib/definitions/material-viewer/src/roomle-material-viewer.d.ts +6 -0
  69. package/lib/definitions/planner-core/mock/planner-kernel-access-mock.d.ts +3 -0
  70. package/lib/definitions/planner-core/src/roomle-planner.d.ts +6 -0
  71. package/lib/definitions/planner-core/src/utils/planner-selection-handler.d.ts +2 -0
  72. package/lib/definitions/planner-core/src/webgl/planner-scene-event-handler.d.ts +2 -0
  73. package/lib/{dimensioning-helper-249f0945.nomodule.js → dimensioning-helper-58e953a0.nomodule.js} +2 -2
  74. package/lib/{dimensioning-helper-249f0945.nomodule.js.map → dimensioning-helper-58e953a0.nomodule.js.map} +1 -1
  75. package/lib/{dimensioning-helper-89cf729a.js → dimensioning-helper-710f5fb6.js} +2 -2
  76. package/lib/{dimensioning-helper-89cf729a.js.map → dimensioning-helper-710f5fb6.js.map} +1 -1
  77. package/lib/{glb-viewer-939988d6.js → glb-viewer-91906330.js} +2 -2
  78. package/lib/{glb-viewer-939988d6.js.map → glb-viewer-91906330.js.map} +1 -1
  79. package/lib/{glb-viewer-62af884c.nomodule.js → glb-viewer-c2e837a9.nomodule.js} +2 -2
  80. package/lib/{glb-viewer-62af884c.nomodule.js.map → glb-viewer-c2e837a9.nomodule.js.map} +1 -1
  81. package/lib/glb-viewer-main-6cf5004f.js +2 -0
  82. package/lib/glb-viewer-main-6cf5004f.js.map +1 -0
  83. package/lib/glb-viewer-main.nomodule.js +1 -1
  84. package/lib/legacy/{TextGeometry-914afed8.legacy.js → TextGeometry-6ea1a7a3.legacy.js} +2 -2
  85. package/lib/legacy/{TextGeometry-914afed8.legacy.js.map → TextGeometry-6ea1a7a3.legacy.js.map} +1 -1
  86. package/lib/legacy/{banana-for-scale-d0a87001.legacy.js → banana-for-scale-5e151d54.legacy.js} +2 -2
  87. package/lib/legacy/{banana-for-scale-d0a87001.legacy.js.map → banana-for-scale-5e151d54.legacy.js.map} +1 -1
  88. package/lib/legacy/budgeteer-measure.legacy.js +1 -1
  89. package/lib/legacy/{component-dimensioning-e372e127.legacy.js → component-dimensioning-173dd8a0.legacy.js} +2 -2
  90. package/lib/legacy/component-dimensioning-173dd8a0.legacy.js.map +1 -0
  91. package/lib/legacy/{component-raycast-helper-9901f95f.legacy.js → component-raycast-helper-5b50a9b4.legacy.js} +2 -2
  92. package/lib/legacy/component-raycast-helper-5b50a9b4.legacy.js.map +1 -0
  93. package/lib/legacy/configurator-fc24d471.legacy.js +2 -0
  94. package/lib/legacy/configurator-fc24d471.legacy.js.map +1 -0
  95. package/lib/legacy/configurator-main.legacy.js +1 -1
  96. package/lib/legacy/{continuous-drawing-helper-7e590380.legacy.js → continuous-drawing-helper-f5750894.legacy.js} +2 -2
  97. package/lib/legacy/continuous-drawing-helper-f5750894.legacy.js.map +1 -0
  98. package/lib/legacy/{default-light-setting-299c6142.legacy.js → default-light-setting-bfd7814b.legacy.js} +2 -2
  99. package/lib/legacy/default-light-setting-bfd7814b.legacy.js.map +1 -0
  100. package/lib/legacy/{dimensioning-helper-af3b9dcc.legacy.js → dimensioning-helper-bda99c57.legacy.js} +2 -2
  101. package/lib/legacy/{dimensioning-helper-af3b9dcc.legacy.js.map → dimensioning-helper-bda99c57.legacy.js.map} +1 -1
  102. package/lib/legacy/{glb-viewer-be08b4ee.legacy.js → glb-viewer-12050ab5.legacy.js} +2 -2
  103. package/lib/legacy/{glb-viewer-be08b4ee.legacy.js.map → glb-viewer-12050ab5.legacy.js.map} +1 -1
  104. package/lib/legacy/glb-viewer-main.legacy.js +1 -1
  105. package/lib/legacy/{main-thread-to-worker-f173c2ef.legacy.js → main-thread-to-worker-334452db.legacy.js} +2 -2
  106. package/lib/legacy/{main-thread-to-worker-f173c2ef.legacy.js.map → main-thread-to-worker-334452db.legacy.js.map} +1 -1
  107. package/lib/legacy/material-viewer-c8829438.legacy.js +2 -0
  108. package/lib/legacy/material-viewer-c8829438.legacy.js.map +1 -0
  109. package/lib/legacy/material-viewer-main.legacy.js +1 -1
  110. package/lib/legacy/planner-6ecda671.legacy.js +2 -0
  111. package/lib/legacy/{planner-ebe2a0cc.legacy.js.map → planner-6ecda671.legacy.js.map} +1 -1
  112. package/lib/legacy/planner-main.legacy.js +1 -1
  113. package/lib/legacy/roomle-configurator-0e86fc25.legacy.js +2 -0
  114. package/lib/legacy/roomle-configurator-0e86fc25.legacy.js.map +1 -0
  115. package/lib/legacy/roomle-dependency-injection-254f79f2.legacy.js +9 -0
  116. package/lib/legacy/roomle-dependency-injection-254f79f2.legacy.js.map +1 -0
  117. package/lib/legacy/roomle-sdk.legacy.js +1 -1
  118. package/lib/legacy/scene-manager-550c1ba0.legacy.js +2 -0
  119. package/lib/legacy/{scene-manager-ff3489f0.legacy.js.map → scene-manager-550c1ba0.legacy.js.map} +1 -1
  120. package/lib/legacy/{script-loader-7bcc41ff.legacy.js → script-loader-f188b128.legacy.js} +2 -2
  121. package/lib/legacy/script-loader-f188b128.legacy.js.map +1 -0
  122. package/lib/legacy/{stats-helper-99b952ba.legacy.js → stats-helper-8168262d.legacy.js} +2 -2
  123. package/lib/legacy/stats-helper-8168262d.legacy.js.map +1 -0
  124. package/lib/legacy/{tools-core-8b1d185f.legacy.js → tools-core-5cc26e7b.legacy.js} +2 -2
  125. package/lib/legacy/tools-core-5cc26e7b.legacy.js.map +1 -0
  126. package/lib/{main-thread-to-worker-592260bb.nomodule.js → main-thread-to-worker-cce716d1.nomodule.js} +3 -3
  127. package/lib/{main-thread-to-worker-592260bb.nomodule.js.map → main-thread-to-worker-cce716d1.nomodule.js.map} +1 -1
  128. package/lib/{main-thread-to-worker-c12b58a4.js → main-thread-to-worker-d5d5841d.js} +2 -2
  129. package/lib/{main-thread-to-worker-c12b58a4.js.map → main-thread-to-worker-d5d5841d.js.map} +1 -1
  130. package/lib/material-viewer-27dc7698.nomodule.js +2 -0
  131. package/lib/material-viewer-27dc7698.nomodule.js.map +1 -0
  132. package/lib/material-viewer-2bea3262.js +2 -0
  133. package/lib/material-viewer-2bea3262.js.map +1 -0
  134. package/lib/material-viewer-main-e6e07e56.js +2 -0
  135. package/lib/material-viewer-main-e6e07e56.js.map +1 -0
  136. package/lib/material-viewer-main.nomodule.js +1 -1
  137. package/lib/planner-4836800f.nomodule.js +2 -0
  138. package/lib/{planner-3bbd672b.nomodule.js.map → planner-4836800f.nomodule.js.map} +1 -1
  139. package/lib/planner-4abc4c6d.js +2 -0
  140. package/lib/{planner-27de1711.js.map → planner-4abc4c6d.js.map} +1 -1
  141. package/lib/planner-main-b67a85b4.js +2 -0
  142. package/lib/planner-main-b67a85b4.js.map +1 -0
  143. package/lib/planner-main.nomodule.js +1 -1
  144. package/lib/roomle-configurator-0690376c.nomodule.js +2 -0
  145. package/lib/roomle-configurator-0690376c.nomodule.js.map +1 -0
  146. package/lib/roomle-configurator-9672e0b8.js +2 -0
  147. package/lib/roomle-configurator-9672e0b8.js.map +1 -0
  148. package/lib/roomle-dependency-injection-6d996d97.js +9 -0
  149. package/lib/roomle-dependency-injection-6d996d97.js.map +1 -0
  150. package/lib/roomle-dependency-injection-99c0d447.nomodule.js +9 -0
  151. package/lib/roomle-dependency-injection-99c0d447.nomodule.js.map +1 -0
  152. package/lib/{roomle-sdk-7975530c.js → roomle-sdk-33d57c6e.js} +2 -2
  153. package/lib/roomle-sdk-33d57c6e.js.map +1 -0
  154. package/lib/roomle-sdk.nomodule.js +1 -1
  155. package/lib/scene-manager-1405da14.nomodule.js +2 -0
  156. package/lib/{scene-manager-cbd97bf8.nomodule.js.map → scene-manager-1405da14.nomodule.js.map} +1 -1
  157. package/lib/scene-manager-7cb2a238.js +2 -0
  158. package/lib/{scene-manager-acf89a5e.js.map → scene-manager-7cb2a238.js.map} +1 -1
  159. package/lib/{script-loader-105b310a.js → script-loader-f32ee31e.js} +2 -2
  160. package/lib/script-loader-f32ee31e.js.map +1 -0
  161. package/lib/{script-loader-8bd544f0.nomodule.js → script-loader-f6b83084.nomodule.js} +2 -2
  162. package/lib/script-loader-f6b83084.nomodule.js.map +1 -0
  163. package/lib/{stats-helper-936d1d26.nomodule.js → stats-helper-915dfaf3.nomodule.js} +2 -2
  164. package/lib/stats-helper-915dfaf3.nomodule.js.map +1 -0
  165. package/lib/{stats-helper-d0c86df7.js → stats-helper-f1fc0dc2.js} +2 -2
  166. package/lib/stats-helper-f1fc0dc2.js.map +1 -0
  167. package/lib/{tools-core-f2576a59.nomodule.js → tools-core-90145b40.nomodule.js} +2 -2
  168. package/lib/tools-core-90145b40.nomodule.js.map +1 -0
  169. package/lib/{tools-core-1ba03b95.js → tools-core-b7d0ae84.js} +2 -2
  170. package/lib/tools-core-b7d0ae84.js.map +1 -0
  171. package/package.json +2 -2
  172. package/lib/component-dimensioning-0ec0b7b2.nomodule.js.map +0 -1
  173. package/lib/component-dimensioning-c1f91180.js.map +0 -1
  174. package/lib/component-raycast-helper-1cb2afdd.js.map +0 -1
  175. package/lib/component-raycast-helper-833f8a52.nomodule.js.map +0 -1
  176. package/lib/configurator-05086741.nomodule.js.map +0 -1
  177. package/lib/configurator-be50c3fe.js.map +0 -1
  178. package/lib/configurator-main-5ada31c9.js +0 -2
  179. package/lib/configurator-main-5ada31c9.js.map +0 -1
  180. package/lib/continuous-drawing-helper-771ee2d1.js.map +0 -1
  181. package/lib/continuous-drawing-helper-ab2aa242.nomodule.js.map +0 -1
  182. package/lib/default-light-setting-97e2aec6.js.map +0 -1
  183. package/lib/default-light-setting-99a7eab4.nomodule.js.map +0 -1
  184. package/lib/glb-viewer-main-b0c2a521.js +0 -2
  185. package/lib/glb-viewer-main-b0c2a521.js.map +0 -1
  186. package/lib/legacy/component-dimensioning-e372e127.legacy.js.map +0 -1
  187. package/lib/legacy/component-raycast-helper-9901f95f.legacy.js.map +0 -1
  188. package/lib/legacy/configurator-a7843e4a.legacy.js +0 -2
  189. package/lib/legacy/configurator-a7843e4a.legacy.js.map +0 -1
  190. package/lib/legacy/continuous-drawing-helper-7e590380.legacy.js.map +0 -1
  191. package/lib/legacy/default-light-setting-299c6142.legacy.js.map +0 -1
  192. package/lib/legacy/material-viewer-ef91000c.legacy.js +0 -2
  193. package/lib/legacy/material-viewer-ef91000c.legacy.js.map +0 -1
  194. package/lib/legacy/planner-ebe2a0cc.legacy.js +0 -2
  195. package/lib/legacy/roomle-configurator-5580a37f.legacy.js +0 -2
  196. package/lib/legacy/roomle-configurator-5580a37f.legacy.js.map +0 -1
  197. package/lib/legacy/roomle-dependency-injection-8ef06e29.legacy.js +0 -9
  198. package/lib/legacy/roomle-dependency-injection-8ef06e29.legacy.js.map +0 -1
  199. package/lib/legacy/scene-manager-ff3489f0.legacy.js +0 -2
  200. package/lib/legacy/script-loader-7bcc41ff.legacy.js.map +0 -1
  201. package/lib/legacy/stats-helper-99b952ba.legacy.js.map +0 -1
  202. package/lib/legacy/tools-core-8b1d185f.legacy.js.map +0 -1
  203. package/lib/material-viewer-6b24eb46.js +0 -2
  204. package/lib/material-viewer-6b24eb46.js.map +0 -1
  205. package/lib/material-viewer-c45b6fa9.nomodule.js +0 -2
  206. package/lib/material-viewer-c45b6fa9.nomodule.js.map +0 -1
  207. package/lib/material-viewer-main-d62e009a.js +0 -2
  208. package/lib/material-viewer-main-d62e009a.js.map +0 -1
  209. package/lib/planner-27de1711.js +0 -2
  210. package/lib/planner-3bbd672b.nomodule.js +0 -2
  211. package/lib/planner-main-d4d7b1b6.js +0 -2
  212. package/lib/planner-main-d4d7b1b6.js.map +0 -1
  213. package/lib/roomle-configurator-a5c7cf01.nomodule.js +0 -2
  214. package/lib/roomle-configurator-a5c7cf01.nomodule.js.map +0 -1
  215. package/lib/roomle-configurator-f5998035.js +0 -2
  216. package/lib/roomle-configurator-f5998035.js.map +0 -1
  217. package/lib/roomle-dependency-injection-6e666b06.js +0 -16
  218. package/lib/roomle-dependency-injection-6e666b06.js.map +0 -1
  219. package/lib/roomle-dependency-injection-ab12a554.nomodule.js +0 -16
  220. package/lib/roomle-dependency-injection-ab12a554.nomodule.js.map +0 -1
  221. package/lib/roomle-sdk-7975530c.js.map +0 -1
  222. package/lib/scene-manager-acf89a5e.js +0 -2
  223. package/lib/scene-manager-cbd97bf8.nomodule.js +0 -2
  224. package/lib/script-loader-105b310a.js.map +0 -1
  225. package/lib/script-loader-8bd544f0.nomodule.js.map +0 -1
  226. package/lib/stats-helper-936d1d26.nomodule.js.map +0 -1
  227. package/lib/stats-helper-d0c86df7.js.map +0 -1
  228. package/lib/tools-core-1ba03b95.js.map +0 -1
  229. package/lib/tools-core-f2576a59.nomodule.js.map +0 -1
@@ -1,2 +1,2 @@
1
- import{bL as ExtrudeGeometry}from"./main-thread-to-worker-c12b58a4.js";class TextGeometry extends ExtrudeGeometry{constructor(e,t={}){const o=t.font;if(void 0===o)super();else{const s=o.generateShapes(e,t.size);t.depth=void 0!==t.height?t.height:50,void 0===t.bevelThickness&&(t.bevelThickness=10),void 0===t.bevelSize&&(t.bevelSize=8),void 0===t.bevelEnabled&&(t.bevelEnabled=!1),super(s,t)}this.type="TextGeometry"}}export{TextGeometry as T};
2
- //# sourceMappingURL=TextGeometry-8e948315.js.map
1
+ import{bO as ExtrudeGeometry}from"./main-thread-to-worker-d5d5841d.js";class TextGeometry extends ExtrudeGeometry{constructor(e,t={}){const o=t.font;if(void 0===o)super();else{const s=o.generateShapes(e,t.size);t.depth=void 0!==t.height?t.height:50,void 0===t.bevelThickness&&(t.bevelThickness=10),void 0===t.bevelSize&&(t.bevelSize=8),void 0===t.bevelEnabled&&(t.bevelEnabled=!1),super(s,t)}this.type="TextGeometry"}}export{TextGeometry as T};
2
+ //# sourceMappingURL=TextGeometry-d25f1fa4.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TextGeometry-8e948315.js","sources":["../../node_modules/three/examples/jsm/geometries/TextGeometry.js"],"sourcesContent":["/**\n * Text = 3D Text\n *\n * parameters = {\n * font: <THREE.Font>, // font\n *\n * size: <float>, // size of the text\n * height: <float>, // thickness to extrude text\n * curveSegments: <int>, // number of points on the curves\n *\n * bevelEnabled: <bool>, // turn on bevel\n * bevelThickness: <float>, // how deep into text bevel goes\n * bevelSize: <float>, // how far from text outline (including bevelOffset) is bevel\n * bevelOffset: <float> // how far from text outline does bevel start\n * }\n */\n\nimport {\n\tExtrudeGeometry\n} from 'three';\n\nclass TextGeometry extends ExtrudeGeometry {\n\n\tconstructor( text, parameters = {} ) {\n\n\t\tconst font = parameters.font;\n\n\t\tif ( font === undefined ) {\n\n\t\t\tsuper(); // generate default extrude geometry\n\n\t\t} else {\n\n\t\t\tconst shapes = font.generateShapes( text, parameters.size );\n\n\t\t\t// translate parameters to ExtrudeGeometry API\n\n\t\t\tparameters.depth = parameters.height !== undefined ? parameters.height : 50;\n\n\t\t\t// defaults\n\n\t\t\tif ( parameters.bevelThickness === undefined ) parameters.bevelThickness = 10;\n\t\t\tif ( parameters.bevelSize === undefined ) parameters.bevelSize = 8;\n\t\t\tif ( parameters.bevelEnabled === undefined ) parameters.bevelEnabled = false;\n\n\t\t\tsuper( shapes, parameters );\n\n\t\t}\n\n\t\tthis.type = 'TextGeometry';\n\n\t}\n\n}\n\n\nexport { TextGeometry };\n"],"names":["TextGeometry","ExtrudeGeometry","[object Object]","text","parameters","font","undefined","super","shapes","generateShapes","size","depth","height","bevelThickness","bevelSize","bevelEnabled","this","type"],"mappings":"uEAqBA,MAAMA,qBAAqBC,gBAE1BC,YAAaC,EAAMC,EAAa,IAE/B,MAAMC,EAAOD,EAAWC,KAExB,QAAcC,IAATD,EAEJE,YAEM,CAEN,MAAMC,EAASH,EAAKI,eAAgBN,EAAMC,EAAWM,MAIrDN,EAAWO,WAA8BL,IAAtBF,EAAWQ,OAAuBR,EAAWQ,OAAS,QAItCN,IAA9BF,EAAWS,iBAA+BT,EAAWS,eAAiB,SAC7CP,IAAzBF,EAAWU,YAA0BV,EAAWU,UAAY,QAChCR,IAA5BF,EAAWW,eAA6BX,EAAWW,cAAe,GAEvER,MAAOC,EAAQJ,GAIhBY,KAAKC,KAAO"}
1
+ {"version":3,"file":"TextGeometry-d25f1fa4.js","sources":["../../node_modules/three/examples/jsm/geometries/TextGeometry.js"],"sourcesContent":["/**\n * Text = 3D Text\n *\n * parameters = {\n * font: <THREE.Font>, // font\n *\n * size: <float>, // size of the text\n * height: <float>, // thickness to extrude text\n * curveSegments: <int>, // number of points on the curves\n *\n * bevelEnabled: <bool>, // turn on bevel\n * bevelThickness: <float>, // how deep into text bevel goes\n * bevelSize: <float>, // how far from text outline (including bevelOffset) is bevel\n * bevelOffset: <float> // how far from text outline does bevel start\n * }\n */\n\nimport {\n\tExtrudeGeometry\n} from 'three';\n\nclass TextGeometry extends ExtrudeGeometry {\n\n\tconstructor( text, parameters = {} ) {\n\n\t\tconst font = parameters.font;\n\n\t\tif ( font === undefined ) {\n\n\t\t\tsuper(); // generate default extrude geometry\n\n\t\t} else {\n\n\t\t\tconst shapes = font.generateShapes( text, parameters.size );\n\n\t\t\t// translate parameters to ExtrudeGeometry API\n\n\t\t\tparameters.depth = parameters.height !== undefined ? parameters.height : 50;\n\n\t\t\t// defaults\n\n\t\t\tif ( parameters.bevelThickness === undefined ) parameters.bevelThickness = 10;\n\t\t\tif ( parameters.bevelSize === undefined ) parameters.bevelSize = 8;\n\t\t\tif ( parameters.bevelEnabled === undefined ) parameters.bevelEnabled = false;\n\n\t\t\tsuper( shapes, parameters );\n\n\t\t}\n\n\t\tthis.type = 'TextGeometry';\n\n\t}\n\n}\n\n\nexport { TextGeometry };\n"],"names":["TextGeometry","ExtrudeGeometry","[object Object]","text","parameters","font","undefined","super","shapes","generateShapes","size","depth","height","bevelThickness","bevelSize","bevelEnabled","this","type"],"mappings":"uEAqBA,MAAMA,qBAAqBC,gBAE1BC,YAAaC,EAAMC,EAAa,IAE/B,MAAMC,EAAOD,EAAWC,KAExB,QAAcC,IAATD,EAEJE,YAEM,CAEN,MAAMC,EAASH,EAAKI,eAAgBN,EAAMC,EAAWM,MAIrDN,EAAWO,WAA8BL,IAAtBF,EAAWQ,OAAuBR,EAAWQ,OAAS,QAItCN,IAA9BF,EAAWS,iBAA+BT,EAAWS,eAAiB,SAC7CP,IAAzBF,EAAWU,YAA0BV,EAAWU,UAAY,QAChCR,IAA5BF,EAAWW,eAA6BX,EAAWW,cAAe,GAEvER,MAAOC,EAAQJ,GAIhBY,KAAKC,KAAO"}
@@ -1,2 +1,2 @@
1
- System.register(["./main-thread-to-worker-592260bb.nomodule.js"],(function(e){var t;return{setters:[function(e){t=e.bL}],execute:function(){e("T",class extends t{constructor(e,t={}){const s=t.font;if(void 0===s)super();else{const i=s.generateShapes(e,t.size);t.depth=void 0!==t.height?t.height:50,void 0===t.bevelThickness&&(t.bevelThickness=10),void 0===t.bevelSize&&(t.bevelSize=8),void 0===t.bevelEnabled&&(t.bevelEnabled=!1),super(i,t)}this.type="TextGeometry"}})}}}));
2
- //# sourceMappingURL=TextGeometry-38a655fa.nomodule.js.map
1
+ System.register(["./main-thread-to-worker-cce716d1.nomodule.js"],(function(e){var t;return{setters:[function(e){t=e.bO}],execute:function(){e("T",class extends t{constructor(e,t={}){const s=t.font;if(void 0===s)super();else{const i=s.generateShapes(e,t.size);t.depth=void 0!==t.height?t.height:50,void 0===t.bevelThickness&&(t.bevelThickness=10),void 0===t.bevelSize&&(t.bevelSize=8),void 0===t.bevelEnabled&&(t.bevelEnabled=!1),super(i,t)}this.type="TextGeometry"}})}}}));
2
+ //# sourceMappingURL=TextGeometry-f2fc57a2.nomodule.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TextGeometry-38a655fa.nomodule.js","sources":["../../node_modules/three/examples/jsm/geometries/TextGeometry.js"],"sourcesContent":["/**\n * Text = 3D Text\n *\n * parameters = {\n * font: <THREE.Font>, // font\n *\n * size: <float>, // size of the text\n * height: <float>, // thickness to extrude text\n * curveSegments: <int>, // number of points on the curves\n *\n * bevelEnabled: <bool>, // turn on bevel\n * bevelThickness: <float>, // how deep into text bevel goes\n * bevelSize: <float>, // how far from text outline (including bevelOffset) is bevel\n * bevelOffset: <float> // how far from text outline does bevel start\n * }\n */\n\nimport {\n\tExtrudeGeometry\n} from 'three';\n\nclass TextGeometry extends ExtrudeGeometry {\n\n\tconstructor( text, parameters = {} ) {\n\n\t\tconst font = parameters.font;\n\n\t\tif ( font === undefined ) {\n\n\t\t\tsuper(); // generate default extrude geometry\n\n\t\t} else {\n\n\t\t\tconst shapes = font.generateShapes( text, parameters.size );\n\n\t\t\t// translate parameters to ExtrudeGeometry API\n\n\t\t\tparameters.depth = parameters.height !== undefined ? parameters.height : 50;\n\n\t\t\t// defaults\n\n\t\t\tif ( parameters.bevelThickness === undefined ) parameters.bevelThickness = 10;\n\t\t\tif ( parameters.bevelSize === undefined ) parameters.bevelSize = 8;\n\t\t\tif ( parameters.bevelEnabled === undefined ) parameters.bevelEnabled = false;\n\n\t\t\tsuper( shapes, parameters );\n\n\t\t}\n\n\t\tthis.type = 'TextGeometry';\n\n\t}\n\n}\n\n\nexport { TextGeometry };\n"],"names":["exports","ExtrudeGeometry","[object Object]","text","parameters","font","undefined","super","shapes","generateShapes","size","depth","height","bevelThickness","bevelSize","bevelEnabled","this","type"],"mappings":"4IAqDAA,EAAA,IAhCA,cAA2BC,EAE1BC,YAAaC,EAAMC,EAAa,IAE/B,MAAMC,EAAOD,EAAWC,KAExB,QAAcC,IAATD,EAEJE,YAEM,CAEN,MAAMC,EAASH,EAAKI,eAAgBN,EAAMC,EAAWM,MAIrDN,EAAWO,WAA8BL,IAAtBF,EAAWQ,OAAuBR,EAAWQ,OAAS,QAItCN,IAA9BF,EAAWS,iBAA+BT,EAAWS,eAAiB,SAC7CP,IAAzBF,EAAWU,YAA0BV,EAAWU,UAAY,QAChCR,IAA5BF,EAAWW,eAA6BX,EAAWW,cAAe,GAEvER,MAAOC,EAAQJ,GAIhBY,KAAKC,KAAO"}
1
+ {"version":3,"file":"TextGeometry-f2fc57a2.nomodule.js","sources":["../../node_modules/three/examples/jsm/geometries/TextGeometry.js"],"sourcesContent":["/**\n * Text = 3D Text\n *\n * parameters = {\n * font: <THREE.Font>, // font\n *\n * size: <float>, // size of the text\n * height: <float>, // thickness to extrude text\n * curveSegments: <int>, // number of points on the curves\n *\n * bevelEnabled: <bool>, // turn on bevel\n * bevelThickness: <float>, // how deep into text bevel goes\n * bevelSize: <float>, // how far from text outline (including bevelOffset) is bevel\n * bevelOffset: <float> // how far from text outline does bevel start\n * }\n */\n\nimport {\n\tExtrudeGeometry\n} from 'three';\n\nclass TextGeometry extends ExtrudeGeometry {\n\n\tconstructor( text, parameters = {} ) {\n\n\t\tconst font = parameters.font;\n\n\t\tif ( font === undefined ) {\n\n\t\t\tsuper(); // generate default extrude geometry\n\n\t\t} else {\n\n\t\t\tconst shapes = font.generateShapes( text, parameters.size );\n\n\t\t\t// translate parameters to ExtrudeGeometry API\n\n\t\t\tparameters.depth = parameters.height !== undefined ? parameters.height : 50;\n\n\t\t\t// defaults\n\n\t\t\tif ( parameters.bevelThickness === undefined ) parameters.bevelThickness = 10;\n\t\t\tif ( parameters.bevelSize === undefined ) parameters.bevelSize = 8;\n\t\t\tif ( parameters.bevelEnabled === undefined ) parameters.bevelEnabled = false;\n\n\t\t\tsuper( shapes, parameters );\n\n\t\t}\n\n\t\tthis.type = 'TextGeometry';\n\n\t}\n\n}\n\n\nexport { TextGeometry };\n"],"names":["exports","ExtrudeGeometry","[object Object]","text","parameters","font","undefined","super","shapes","generateShapes","size","depth","height","bevelThickness","bevelSize","bevelEnabled","this","type"],"mappings":"4IAqDAA,EAAA,IAhCA,cAA2BC,EAE1BC,YAAaC,EAAMC,EAAa,IAE/B,MAAMC,EAAOD,EAAWC,KAExB,QAAcC,IAATD,EAEJE,YAEM,CAEN,MAAMC,EAASH,EAAKI,eAAgBN,EAAMC,EAAWM,MAIrDN,EAAWO,WAA8BL,IAAtBF,EAAWQ,OAAuBR,EAAWQ,OAAS,QAItCN,IAA9BF,EAAWS,iBAA+BT,EAAWS,eAAiB,SAC7CP,IAAzBF,EAAWU,YAA0BV,EAAWU,UAAY,QAChCR,IAA5BF,EAAWW,eAA6BX,EAAWW,cAAe,GAEvER,MAAOC,EAAQJ,GAIhBY,KAAKC,KAAO"}
@@ -1,2 +1,2 @@
1
- import{ax as ScenePluginDefaultImplementation,_ as __decorate,i as inject}from"./roomle-dependency-injection-6e666b06.js";import{g as getAssetPath,a as Vector3}from"./main-thread-to-worker-c12b58a4.js";class BananaForScale extends ScenePluginDefaultImplementation{setScene(e){this._scene=e,this._staticItemLoader.loadGLB(getAssetPath()+"static/banana_div2-1351c98ec2986be1.glb").then(e=>{this._banana=e.scene,this.updateBounds(null)})}updateBounds(e){if(e&&(this._bounds=e),this._bounds){if(this._banana){const e=this._bounds.getSize(new Vector3),a=this._bounds.getCenter(new Vector3).clone();a.x-=e.x/2+.18,a.z+=e.z/2+.05,a.y=0;let n=.03;this._banana.scale.copy(new Vector3(n,n,n)),this._banana.rotation.y=.6,this._banana.position.copy(a)}this._scene.children.includes(this._banana)||this.addToScene()}}clearScene(e,a){super.clearScene(e,a),this.removeFromScene()}addToScene(){this._scene&&this._banana&&this._scene.add(this._banana)}removeFromScene(){this._scene&&this._banana&&this._scene.remove(this._banana)}}__decorate([inject],BananaForScale.prototype,"_staticItemLoader",void 0);export{BananaForScale as default};
2
- //# sourceMappingURL=banana-for-scale-158bf377.js.map
1
+ import{ay as ScenePluginDefaultImplementation,_ as __decorate,i as inject}from"./roomle-dependency-injection-6d996d97.js";import{g as getAssetPath,a as Vector3}from"./main-thread-to-worker-d5d5841d.js";class BananaForScale extends ScenePluginDefaultImplementation{setScene(e){this._scene=e,this._staticItemLoader.loadGLB(getAssetPath()+"static/banana_div2-1351c98ec2986be1.glb").then(e=>{this._banana=e.scene,this.updateBounds(null)})}updateBounds(e){if(e&&(this._bounds=e),this._bounds){if(this._banana){const e=this._bounds.getSize(new Vector3),a=this._bounds.getCenter(new Vector3).clone();a.x-=e.x/2+.18,a.z+=e.z/2+.05,a.y=0;let n=.03;this._banana.scale.copy(new Vector3(n,n,n)),this._banana.rotation.y=.6,this._banana.position.copy(a)}this._scene.children.includes(this._banana)||this.addToScene()}}clearScene(e,a){super.clearScene(e,a),this.removeFromScene()}addToScene(){this._scene&&this._banana&&this._scene.add(this._banana)}removeFromScene(){this._scene&&this._banana&&this._scene.remove(this._banana)}}__decorate([inject],BananaForScale.prototype,"_staticItemLoader",void 0);export{BananaForScale as default};
2
+ //# sourceMappingURL=banana-for-scale-78324f69.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"banana-for-scale-158bf377.js","sources":["../../packages/configurator-core/public/geometry/banana_div2.glb"],"sourcesContent":["export default \"static/banana_div2-1351c98ec2986be1.glb\""],"names":[],"mappings":"gVAAe"}
1
+ {"version":3,"file":"banana-for-scale-78324f69.js","sources":["../../packages/configurator-core/public/geometry/banana_div2.glb"],"sourcesContent":["export default \"static/banana_div2-1351c98ec2986be1.glb\""],"names":[],"mappings":"gVAAe"}
@@ -1,2 +1,2 @@
1
- System.register(["./roomle-dependency-injection-ab12a554.nomodule.js","./main-thread-to-worker-592260bb.nomodule.js"],(function(e){var n,t,a,s,i;return{setters:[function(e){n=e.ax,t=e._,a=e.i},function(e){s=e.g,i=e.a}],execute:function(){class o extends n{setScene(e){this._scene=e,this._staticItemLoader.loadGLB(s()+"static/banana_div2-1351c98ec2986be1.glb").then(e=>{this._banana=e.scene,this.updateBounds(null)})}updateBounds(e){if(e&&(this._bounds=e),this._bounds){if(this._banana){const e=this._bounds.getSize(new i),n=this._bounds.getCenter(new i).clone();n.x-=e.x/2+.18,n.z+=e.z/2+.05,n.y=0;let t=.03;this._banana.scale.copy(new i(t,t,t)),this._banana.rotation.y=.6,this._banana.position.copy(n)}this._scene.children.includes(this._banana)||this.addToScene()}}clearScene(e,n){super.clearScene(e,n),this.removeFromScene()}addToScene(){this._scene&&this._banana&&this._scene.add(this._banana)}removeFromScene(){this._scene&&this._banana&&this._scene.remove(this._banana)}}e("default",o),t([a],o.prototype,"_staticItemLoader",void 0)}}}));
2
- //# sourceMappingURL=banana-for-scale-1b93209d.nomodule.js.map
1
+ System.register(["./roomle-dependency-injection-99c0d447.nomodule.js","./main-thread-to-worker-cce716d1.nomodule.js"],(function(e){var n,t,a,s,i;return{setters:[function(e){n=e.ay,t=e._,a=e.i},function(e){s=e.g,i=e.a}],execute:function(){class o extends n{setScene(e){this._scene=e,this._staticItemLoader.loadGLB(s()+"static/banana_div2-1351c98ec2986be1.glb").then(e=>{this._banana=e.scene,this.updateBounds(null)})}updateBounds(e){if(e&&(this._bounds=e),this._bounds){if(this._banana){const e=this._bounds.getSize(new i),n=this._bounds.getCenter(new i).clone();n.x-=e.x/2+.18,n.z+=e.z/2+.05,n.y=0;let t=.03;this._banana.scale.copy(new i(t,t,t)),this._banana.rotation.y=.6,this._banana.position.copy(n)}this._scene.children.includes(this._banana)||this.addToScene()}}clearScene(e,n){super.clearScene(e,n),this.removeFromScene()}addToScene(){this._scene&&this._banana&&this._scene.add(this._banana)}removeFromScene(){this._scene&&this._banana&&this._scene.remove(this._banana)}}e("default",o),t([a],o.prototype,"_staticItemLoader",void 0)}}}));
2
+ //# sourceMappingURL=banana-for-scale-fbad8dbd.nomodule.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"banana-for-scale-1b93209d.nomodule.js","sources":["../../packages/configurator-core/public/geometry/banana_div2.glb"],"sourcesContent":["export default \"static/banana_div2-1351c98ec2986be1.glb\""],"names":[],"mappings":"6TAAe"}
1
+ {"version":3,"file":"banana-for-scale-fbad8dbd.nomodule.js","sources":["../../packages/configurator-core/public/geometry/banana_div2.glb"],"sourcesContent":["export default \"static/banana_div2-1351c98ec2986be1.glb\""],"names":[],"mappings":"6TAAe"}
@@ -1,2 +1,2 @@
1
- import{M as MainThreadToWorker,g as getAssetPath}from"./main-thread-to-worker-c12b58a4.js";import{g as getAllParameters}from"./query-params-helper-a271f9dc.js";new class{_addIframe(){const e="website-to-measure";if(document.getElementById(e))return void console.error("Iframe already added! Check how this can happen");const r=getAllParameters();if(!r.checkUrl)return void console.error("CAN NOT MEASURE WITHOUT A URL, add checkUrl queryParam. To encode call BudgeteerMeasure.encodeUrl(url: string)");let t=this.decodeUrl(r.checkUrl);const o=window.location.origin;if(!t.startsWith(o))return void console.error("CAN ONLY MEASURE SAME ORIGIN PLEASE CHECK",{origin:o,src:t});const a=getAllParameters(t),i=Object.keys(a).length?"&":"?";a._measureTraffic||(t+=i+"_measureTraffic=true");const s=document.createElement("iframe");s.id=e,s.src=t,document.body.appendChild(s)}_isAlreadyActive(){return navigator.serviceWorker.controller&&-1!==navigator.serviceWorker.controller.scriptURL.indexOf("budgeteer.sw")&&"activated"===navigator.serviceWorker.controller.state}_handleActiveSw(){this._mainThreadToWorker.setEventPoster(navigator.serviceWorker.controller),this._addIframe(),this._alreadyAdded=!0}constructor(){this._inLimbo=!1,this._alreadyAdded=!1,window.addEventListener("beforeunload",()=>this._inLimbo=!0),this._mainThreadToWorker=new MainThreadToWorker(this,navigator.serviceWorker),this._isAlreadyActive()?this._handleActiveSw():navigator.serviceWorker.register(getAssetPath()+"static/budgeteer.sw-a4a226d2fc19672e.js",{scope:"../../"}).then(e=>{this._isAlreadyActive()&&this._handleActiveSw()},e=>console.error("Budgeteer registration failed: ",e)),navigator.serviceWorker.addEventListener("controllerchange",()=>this._mainThreadToWorker.setEventPoster(navigator.serviceWorker.controller)),window.BudgeteerMeasure={encodeUrl:this.encodeUrl}}encodeUrl(e){return encodeURIComponent(e)}decodeUrl(e){return decodeURIComponent(e)}onCommand(e){if(!this._inLimbo)switch(e){case 6:this._alreadyAdded||this._addIframe()}}};
2
- //# sourceMappingURL=budgeteer-measure-05337a81.js.map
1
+ import{M as MainThreadToWorker,g as getAssetPath}from"./main-thread-to-worker-d5d5841d.js";import{g as getAllParameters}from"./query-params-helper-a271f9dc.js";new class{_addIframe(){const e="website-to-measure";if(document.getElementById(e))return void console.error("Iframe already added! Check how this can happen");const r=getAllParameters();if(!r.checkUrl)return void console.error("CAN NOT MEASURE WITHOUT A URL, add checkUrl queryParam. To encode call BudgeteerMeasure.encodeUrl(url: string)");let t=this.decodeUrl(r.checkUrl);const o=window.location.origin;if(!t.startsWith(o))return void console.error("CAN ONLY MEASURE SAME ORIGIN PLEASE CHECK",{origin:o,src:t});const a=getAllParameters(t),i=Object.keys(a).length?"&":"?";a._measureTraffic||(t+=i+"_measureTraffic=true");const s=document.createElement("iframe");s.id=e,s.src=t,document.body.appendChild(s)}_isAlreadyActive(){return navigator.serviceWorker.controller&&-1!==navigator.serviceWorker.controller.scriptURL.indexOf("budgeteer.sw")&&"activated"===navigator.serviceWorker.controller.state}_handleActiveSw(){this._mainThreadToWorker.setEventPoster(navigator.serviceWorker.controller),this._addIframe(),this._alreadyAdded=!0}constructor(){this._inLimbo=!1,this._alreadyAdded=!1,window.addEventListener("beforeunload",()=>this._inLimbo=!0),this._mainThreadToWorker=new MainThreadToWorker(this,navigator.serviceWorker),this._isAlreadyActive()?this._handleActiveSw():navigator.serviceWorker.register(getAssetPath()+"static/budgeteer.sw-a4a226d2fc19672e.js",{scope:"../../"}).then(e=>{this._isAlreadyActive()&&this._handleActiveSw()},e=>console.error("Budgeteer registration failed: ",e)),navigator.serviceWorker.addEventListener("controllerchange",()=>this._mainThreadToWorker.setEventPoster(navigator.serviceWorker.controller)),window.BudgeteerMeasure={encodeUrl:this.encodeUrl}}encodeUrl(e){return encodeURIComponent(e)}decodeUrl(e){return decodeURIComponent(e)}onCommand(e){if(!this._inLimbo)switch(e){case 6:this._alreadyAdded||this._addIframe()}}};
2
+ //# sourceMappingURL=budgeteer-measure-f229f761.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"budgeteer-measure-05337a81.js","sources":["../../packages/workers/generated/budgeteer.sw.js"],"sourcesContent":["export default \"static/budgeteer.sw-a4a226d2fc19672e.js\""],"names":[],"mappings":"w8CAAe"}
1
+ {"version":3,"file":"budgeteer-measure-f229f761.js","sources":["../../packages/workers/generated/budgeteer.sw.js"],"sourcesContent":["export default \"static/budgeteer.sw-a4a226d2fc19672e.js\""],"names":[],"mappings":"w8CAAe"}
@@ -1,2 +1,2 @@
1
- System.register(["./main-thread-to-worker-592260bb.nomodule.js","./query-params-helper-c231e1b8.nomodule.js"],(function(){var e,r,t;return{setters:[function(t){e=t.M,r=t.g},function(e){t=e.g}],execute:function(){new class{_addIframe(){const e="website-to-measure";if(document.getElementById(e))return void console.error("Iframe already added! Check how this can happen");const r=t();if(!r.checkUrl)return void console.error("CAN NOT MEASURE WITHOUT A URL, add checkUrl queryParam. To encode call BudgeteerMeasure.encodeUrl(url: string)");let o=this.decodeUrl(r.checkUrl);const i=window.location.origin;if(!o.startsWith(i))return void console.error("CAN ONLY MEASURE SAME ORIGIN PLEASE CHECK",{origin:i,src:o});const n=t(o),a=Object.keys(n).length?"&":"?";n._measureTraffic||(o+=a+"_measureTraffic=true");const s=document.createElement("iframe");s.id=e,s.src=o,document.body.appendChild(s)}_isAlreadyActive(){return navigator.serviceWorker.controller&&-1!==navigator.serviceWorker.controller.scriptURL.indexOf("budgeteer.sw")&&"activated"===navigator.serviceWorker.controller.state}_handleActiveSw(){this._mainThreadToWorker.setEventPoster(navigator.serviceWorker.controller),this._addIframe(),this._alreadyAdded=!0}constructor(){this._inLimbo=!1,this._alreadyAdded=!1,window.addEventListener("beforeunload",()=>this._inLimbo=!0),this._mainThreadToWorker=new e(this,navigator.serviceWorker),this._isAlreadyActive()?this._handleActiveSw():navigator.serviceWorker.register(r()+"static/budgeteer.sw-a4a226d2fc19672e.js",{scope:"../../"}).then(e=>{this._isAlreadyActive()&&this._handleActiveSw()},e=>console.error("Budgeteer registration failed: ",e)),navigator.serviceWorker.addEventListener("controllerchange",()=>this._mainThreadToWorker.setEventPoster(navigator.serviceWorker.controller)),window.BudgeteerMeasure={encodeUrl:this.encodeUrl}}encodeUrl(e){return encodeURIComponent(e)}decodeUrl(e){return decodeURIComponent(e)}onCommand(e){if(!this._inLimbo)switch(e){case 6:this._alreadyAdded||this._addIframe()}}}}}}));
1
+ System.register(["./main-thread-to-worker-cce716d1.nomodule.js","./query-params-helper-c231e1b8.nomodule.js"],(function(){var e,r,t;return{setters:[function(t){e=t.M,r=t.g},function(e){t=e.g}],execute:function(){new class{_addIframe(){const e="website-to-measure";if(document.getElementById(e))return void console.error("Iframe already added! Check how this can happen");const r=t();if(!r.checkUrl)return void console.error("CAN NOT MEASURE WITHOUT A URL, add checkUrl queryParam. To encode call BudgeteerMeasure.encodeUrl(url: string)");let o=this.decodeUrl(r.checkUrl);const i=window.location.origin;if(!o.startsWith(i))return void console.error("CAN ONLY MEASURE SAME ORIGIN PLEASE CHECK",{origin:i,src:o});const n=t(o),a=Object.keys(n).length?"&":"?";n._measureTraffic||(o+=a+"_measureTraffic=true");const d=document.createElement("iframe");d.id=e,d.src=o,document.body.appendChild(d)}_isAlreadyActive(){return navigator.serviceWorker.controller&&-1!==navigator.serviceWorker.controller.scriptURL.indexOf("budgeteer.sw")&&"activated"===navigator.serviceWorker.controller.state}_handleActiveSw(){this._mainThreadToWorker.setEventPoster(navigator.serviceWorker.controller),this._addIframe(),this._alreadyAdded=!0}constructor(){this._inLimbo=!1,this._alreadyAdded=!1,window.addEventListener("beforeunload",()=>this._inLimbo=!0),this._mainThreadToWorker=new e(this,navigator.serviceWorker),this._isAlreadyActive()?this._handleActiveSw():navigator.serviceWorker.register(r()+"static/budgeteer.sw-a4a226d2fc19672e.js",{scope:"../../"}).then(e=>{this._isAlreadyActive()&&this._handleActiveSw()},e=>console.error("Budgeteer registration failed: ",e)),navigator.serviceWorker.addEventListener("controllerchange",()=>this._mainThreadToWorker.setEventPoster(navigator.serviceWorker.controller)),window.BudgeteerMeasure={encodeUrl:this.encodeUrl}}encodeUrl(e){return encodeURIComponent(e)}decodeUrl(e){return decodeURIComponent(e)}onCommand(e){if(!this._inLimbo)switch(e){case 6:this._alreadyAdded||this._addIframe()}}}}}}));
2
2
  //# sourceMappingURL=budgeteer-measure.nomodule.js.map
@@ -1,2 +1,2 @@
1
- System.register(["./roomle-dependency-injection-ab12a554.nomodule.js","./main-thread-to-worker-592260bb.nomodule.js","./TextGeometry-38a655fa.nomodule.js"],(function(e){var i,t,n,s,o,a,h,d,_,l,r,g,m,c,w,p;return{setters:[function(e){i=e._,t=e.i},function(e){n=e.O,s=e.a,o=e.s,a=e.f,h=e.u,d=e.bf,_=e.B,l=e.z,r=e.x,g=e.b,m=e.Q,c=e.aG,w=e.b4},function(e){p=e.T}],execute:function(){const x="component_dimensioning_line_material",u="component_dimensioning_plane_material",y="component_dimensioning_text_material";class v extends n{constructor(e,i,t,n){super(),this._center=i.getCenter(new s),this._size=i.getSize(new s),this._origin=this._center.clone().sub(this._size.clone().multiplyScalar(.5)),this._dimensioning=e,this._level=this._dimensioning.maxLevel-this._dimensioning.level,this._font=t,this._cameraPosition=n,this._init()}_initMaterials(){this._cacheHolder.materialCache.has(x)?this._lineMaterial=this._cacheHolder.materialCache.get(x):(this._lineMaterial=new o({color:3618615}),this._cacheHolder.materialCache.set(x,this._lineMaterial)),this._cacheHolder.materialCache.has(u)?this._planeMaterial=this._cacheHolder.materialCache.get(u):(this._planeMaterial=new a({color:16777215,side:h,opacity:.8,transparent:!0}),this._cacheHolder.materialCache.set(u,this._planeMaterial)),this._cacheHolder.materialCache.has(y)?this._textMaterial=this._cacheHolder.materialCache.get(y):(this._textMaterial=new d({color:3618615}),this._cacheHolder.materialCache.set(y,this._textMaterial))}_init(){this._initMaterials();let e=new _;this._line=new l(e,this._lineMaterial),this._line.name="component dimension line "+this._dimensioning.type.value,this._text=new r(e,this._textMaterial),this._text.name="component dimension text "+this._dimensioning.type.value,this._plane=new r(e,this._planeMaterial),this._plane.name="component dimension plane "+this._dimensioning.type.value;let i,t=new _,n=Math.round(Math.max(this._size.y,this._size.x,this._size.z)),o=Math.abs(this._dimensioning.to-this._dimensioning.from),a=.025+(n<4?0:.005*n);o<.3&&(a*=.5+o);let h={font:this._font,size:a,height:.001,curveSegments:2,bevelEnabled:!0,bevelThickness:.001,bevelSize:.001},d=this._dimensioning.label?this._dimensioning.label:this._unitFormatter.formatMMValueToUnitString(1e3*o),c=new p(d,h);c.computeBoundingBox();let w=c.boundingBox.getSize(new s).y;0===this._dimensioning.type.value&&(i=this._getXEdge(w),this._addXEdgeSideLines(w)),1===this._dimensioning.type.value&&(i=this._getYEdge(w),this._addYEdgeSideLines(w)),2===this._dimensioning.type.value&&(i=this._getZEdge(w),this._addZEdgeSideLines(w));let x=[i.start.x,i.start.y,i.start.z,i.end.x,i.end.y,i.end.z];if(t.setAttribute("position",new g(new Float32Array(x),3)),this._line.geometry.dispose(),this._line.geometry=t,this.add(this._line),this._text.geometry=c,0===this._dimensioning.type.value&&this._addText(i,c,new m,new s(0,.04,0)),1===this._dimensioning.type.value){let e=new m,t=this._getXSign()>0?Math.PI/2:Math.PI/2*3;e.setFromAxisAngle(new s(0,0,1),t),this._addText(i,c,e,new s(.04,0,0))}if(2===this._dimensioning.type.value){let e=this._getXSign()>0?Math.PI/2:Math.PI/2*3,t=(new m).setFromAxisAngle(new s(-1,0,0),Math.PI/2),n=(new m).setFromAxisAngle(new s(0,0,1),e);this._addText(i,c,t.multiply(n),new s(.04,0,0))}}_getXEdge(e){let i=this._size.y+.05+(.06+e)*this._level;const t=new s(0,this._origin.y,this._origin.z);let n=t.clone().add(new s(this._dimensioning.from,i,0)),o=t.clone().add(new s(this._dimensioning.to,i,0));return new c(n,o)}_addXEdgeSideLines(e){let i=this._size.y+.05+(.06+e)*(this._level-.5),t=this._size.y+.05+(.06+e)*this._level;const n=new s(0,this._origin.y,this._origin.z);let o=n.clone().add(new s(this._dimensioning.from,i,0)),a=n.clone().add(new s(this._dimensioning.from,t,0)),h=n.clone().add(new s(this._dimensioning.to,i,0)),d=n.clone().add(new s(this._dimensioning.to,t,0));this._addLine(o,a),this._addLine(h,d)}_getZEdge(e){let i=(this._getXSign()>0?this._size.x:0)+.05+(.06+e)*this._level;i*=this._getXSign();const t=new s(this._origin.x,this._origin.y,0);let n=t.clone().add(new s(i,0,this._dimensioning.from)),o=t.clone().add(new s(i,0,this._dimensioning.to));return new c(n,o)}_addZEdgeSideLines(e){let i=this._getXSign()>0?this._size.x:0,t=i+.05+(.06+e)*(this._level-.5),n=i+.05+(.06+e)*this._level;t*=this._getXSign(),n*=this._getXSign();const o=new s(this._origin.x,this._origin.y,0);let a=o.clone().add(new s(t,0,this._dimensioning.from)),h=o.clone().add(new s(n,0,this._dimensioning.from)),d=o.clone().add(new s(t,0,this._dimensioning.to)),_=o.clone().add(new s(n,0,this._dimensioning.to));this._addLine(a,h),this._addLine(d,_)}_getYEdge(e){let i=(this._getXSign()>0?this._size.x:0)+.05+(.06+e)*this._level;i*=this._getXSign();const t=new s(this._origin.x,0,this._origin.z);let n=t.clone().add(new s(i,this._dimensioning.from,0)),o=t.clone().add(new s(i,this._dimensioning.to,0));return new c(n,o)}_addYEdgeSideLines(e){let i=this._getXSign()>0?this._size.x:0,t=i+.05+(.06+e)*(this._level-.5),n=i+.05+(.06+e)*this._level;t*=this._getXSign(),n*=this._getXSign();const o=new s(this._origin.x,0,this._origin.z);let a=o.clone().add(new s(t,this._dimensioning.from,0)),h=o.clone().add(new s(n,this._dimensioning.from,0)),d=o.clone().add(new s(t,this._dimensioning.to,0)),_=o.clone().add(new s(n,this._dimensioning.to,0));this._addLine(a,h),this._addLine(d,_)}_addLine(e,i){let t=new _,n=[e.x,e.y,e.z,i.x,i.y,i.z];t.setAttribute("position",new g(new Float32Array(n),3)),this.add(new l(t,this._lineMaterial))}_addText(e,i,t,n){let o=e.getCenter(new s);n.x*=this._getXSign(),o.add(n);let a=i.boundingBox.getSize(new s);i.center(),this._text.position.copy(o),this._text.quaternion.copy(t),this.add(this._text);let h=new w(a.x+.02,a.y+.02,32);h.center(),this._plane.geometry=h,this._plane.position.copy(o),this._plane.quaternion.copy(t),this.add(this._plane)}_getXSign(){return this._cameraPosition.x>=0?1:-1}}e("default",v),i([t],v.prototype,"_cacheHolder",void 0),i([t],v.prototype,"_unitFormatter",void 0)}}}));
2
- //# sourceMappingURL=component-dimensioning-0ec0b7b2.nomodule.js.map
1
+ System.register(["./roomle-dependency-injection-99c0d447.nomodule.js","./main-thread-to-worker-cce716d1.nomodule.js","./TextGeometry-f2fc57a2.nomodule.js"],(function(e){var i,t,n,s,o,a,h,d,_,l,r,g,m,c,w,p;return{setters:[function(e){i=e._,t=e.i},function(e){n=e.O,s=e.a,o=e.s,a=e.f,h=e.u,d=e.bg,_=e.B,l=e.z,r=e.x,g=e.b,m=e.Q,c=e.aH,w=e.b5},function(e){p=e.T}],execute:function(){const x="component_dimensioning_line_material",u="component_dimensioning_plane_material",y="component_dimensioning_text_material";class v extends n{constructor(e,i,t,n){super(),this._center=i.getCenter(new s),this._size=i.getSize(new s),this._origin=this._center.clone().sub(this._size.clone().multiplyScalar(.5)),this._dimensioning=e,this._level=this._dimensioning.maxLevel-this._dimensioning.level,this._font=t,this._cameraPosition=n,this._init()}_initMaterials(){this._cacheHolder.materialCache.has(x)?this._lineMaterial=this._cacheHolder.materialCache.get(x):(this._lineMaterial=new o({color:3618615}),this._cacheHolder.materialCache.set(x,this._lineMaterial)),this._cacheHolder.materialCache.has(u)?this._planeMaterial=this._cacheHolder.materialCache.get(u):(this._planeMaterial=new a({color:16777215,side:h,opacity:.8,transparent:!0}),this._cacheHolder.materialCache.set(u,this._planeMaterial)),this._cacheHolder.materialCache.has(y)?this._textMaterial=this._cacheHolder.materialCache.get(y):(this._textMaterial=new d({color:3618615}),this._cacheHolder.materialCache.set(y,this._textMaterial))}_init(){this._initMaterials();let e=new _;this._line=new l(e,this._lineMaterial),this._line.name="component dimension line "+this._dimensioning.type.value,this._text=new r(e,this._textMaterial),this._text.name="component dimension text "+this._dimensioning.type.value,this._plane=new r(e,this._planeMaterial),this._plane.name="component dimension plane "+this._dimensioning.type.value;let i,t=new _,n=Math.round(Math.max(this._size.y,this._size.x,this._size.z)),o=Math.abs(this._dimensioning.to-this._dimensioning.from),a=.025+(n<4?0:.005*n);o<.3&&(a*=.5+o);let h={font:this._font,size:a,height:.001,curveSegments:2,bevelEnabled:!0,bevelThickness:.001,bevelSize:.001},d=this._dimensioning.label?this._dimensioning.label:this._unitFormatter.formatMMValueToUnitString(1e3*o),c=new p(d,h);c.computeBoundingBox();let w=c.boundingBox.getSize(new s).y;0===this._dimensioning.type.value&&(i=this._getXEdge(w),this._addXEdgeSideLines(w)),1===this._dimensioning.type.value&&(i=this._getYEdge(w),this._addYEdgeSideLines(w)),2===this._dimensioning.type.value&&(i=this._getZEdge(w),this._addZEdgeSideLines(w));let x=[i.start.x,i.start.y,i.start.z,i.end.x,i.end.y,i.end.z];if(t.setAttribute("position",new g(new Float32Array(x),3)),this._line.geometry.dispose(),this._line.geometry=t,this.add(this._line),this._text.geometry=c,0===this._dimensioning.type.value&&this._addText(i,c,new m,new s(0,.04,0)),1===this._dimensioning.type.value){let e=new m,t=this._getXSign()>0?Math.PI/2:Math.PI/2*3;e.setFromAxisAngle(new s(0,0,1),t),this._addText(i,c,e,new s(.04,0,0))}if(2===this._dimensioning.type.value){let e=this._getXSign()>0?Math.PI/2:Math.PI/2*3,t=(new m).setFromAxisAngle(new s(-1,0,0),Math.PI/2),n=(new m).setFromAxisAngle(new s(0,0,1),e);this._addText(i,c,t.multiply(n),new s(.04,0,0))}}_getXEdge(e){let i=this._size.y+.05+(.06+e)*this._level;const t=new s(0,this._origin.y,this._origin.z);let n=t.clone().add(new s(this._dimensioning.from,i,0)),o=t.clone().add(new s(this._dimensioning.to,i,0));return new c(n,o)}_addXEdgeSideLines(e){let i=this._size.y+.05+(.06+e)*(this._level-.5),t=this._size.y+.05+(.06+e)*this._level;const n=new s(0,this._origin.y,this._origin.z);let o=n.clone().add(new s(this._dimensioning.from,i,0)),a=n.clone().add(new s(this._dimensioning.from,t,0)),h=n.clone().add(new s(this._dimensioning.to,i,0)),d=n.clone().add(new s(this._dimensioning.to,t,0));this._addLine(o,a),this._addLine(h,d)}_getZEdge(e){let i=(this._getXSign()>0?this._size.x:0)+.05+(.06+e)*this._level;i*=this._getXSign();const t=new s(this._origin.x,this._origin.y,0);let n=t.clone().add(new s(i,0,this._dimensioning.from)),o=t.clone().add(new s(i,0,this._dimensioning.to));return new c(n,o)}_addZEdgeSideLines(e){let i=this._getXSign()>0?this._size.x:0,t=i+.05+(.06+e)*(this._level-.5),n=i+.05+(.06+e)*this._level;t*=this._getXSign(),n*=this._getXSign();const o=new s(this._origin.x,this._origin.y,0);let a=o.clone().add(new s(t,0,this._dimensioning.from)),h=o.clone().add(new s(n,0,this._dimensioning.from)),d=o.clone().add(new s(t,0,this._dimensioning.to)),_=o.clone().add(new s(n,0,this._dimensioning.to));this._addLine(a,h),this._addLine(d,_)}_getYEdge(e){let i=(this._getXSign()>0?this._size.x:0)+.05+(.06+e)*this._level;i*=this._getXSign();const t=new s(this._origin.x,0,this._origin.z);let n=t.clone().add(new s(i,this._dimensioning.from,0)),o=t.clone().add(new s(i,this._dimensioning.to,0));return new c(n,o)}_addYEdgeSideLines(e){let i=this._getXSign()>0?this._size.x:0,t=i+.05+(.06+e)*(this._level-.5),n=i+.05+(.06+e)*this._level;t*=this._getXSign(),n*=this._getXSign();const o=new s(this._origin.x,0,this._origin.z);let a=o.clone().add(new s(t,this._dimensioning.from,0)),h=o.clone().add(new s(n,this._dimensioning.from,0)),d=o.clone().add(new s(t,this._dimensioning.to,0)),_=o.clone().add(new s(n,this._dimensioning.to,0));this._addLine(a,h),this._addLine(d,_)}_addLine(e,i){let t=new _,n=[e.x,e.y,e.z,i.x,i.y,i.z];t.setAttribute("position",new g(new Float32Array(n),3)),this.add(new l(t,this._lineMaterial))}_addText(e,i,t,n){let o=e.getCenter(new s);n.x*=this._getXSign(),o.add(n);let a=i.boundingBox.getSize(new s);i.center(),this._text.position.copy(o),this._text.quaternion.copy(t),this.add(this._text);let h=new w(a.x+.02,a.y+.02,32);h.center(),this._plane.geometry=h,this._plane.position.copy(o),this._plane.quaternion.copy(t),this.add(this._plane)}_getXSign(){return this._cameraPosition.x>=0?1:-1}}e("default",v),i([t],v.prototype,"_cacheHolder",void 0),i([t],v.prototype,"_unitFormatter",void 0)}}}));
2
+ //# sourceMappingURL=component-dimensioning-e5453bff.nomodule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-dimensioning-e5453bff.nomodule.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- import{_ as __decorate,i as inject}from"./roomle-dependency-injection-6e666b06.js";import{O as Object3D,a as Vector3,s as LineBasicMaterial,f as MeshBasicMaterial,u as DoubleSide,bf as MeshPhongMaterial,B as BufferGeometry,z as Line,x as Mesh,b as BufferAttribute,Q as Quaternion,aG as Line3,b4 as PlaneGeometry}from"./main-thread-to-worker-c12b58a4.js";import{T as TextGeometry}from"./TextGeometry-8e948315.js";const LINE_MATERIAL="component_dimensioning_line_material",PLANE_MATERIAL="component_dimensioning_plane_material",TEXT_MATERIAL="component_dimensioning_text_material";class ComponentDimensioning extends Object3D{constructor(e,i,t,n){super(),this._center=i.getCenter(new Vector3),this._size=i.getSize(new Vector3),this._origin=this._center.clone().sub(this._size.clone().multiplyScalar(.5)),this._dimensioning=e,this._level=this._dimensioning.maxLevel-this._dimensioning.level,this._font=t,this._cameraPosition=n,this._init()}_initMaterials(){this._cacheHolder.materialCache.has(LINE_MATERIAL)?this._lineMaterial=this._cacheHolder.materialCache.get(LINE_MATERIAL):(this._lineMaterial=new LineBasicMaterial({color:3618615}),this._cacheHolder.materialCache.set(LINE_MATERIAL,this._lineMaterial)),this._cacheHolder.materialCache.has(PLANE_MATERIAL)?this._planeMaterial=this._cacheHolder.materialCache.get(PLANE_MATERIAL):(this._planeMaterial=new MeshBasicMaterial({color:16777215,side:DoubleSide,opacity:.8,transparent:!0}),this._cacheHolder.materialCache.set(PLANE_MATERIAL,this._planeMaterial)),this._cacheHolder.materialCache.has(TEXT_MATERIAL)?this._textMaterial=this._cacheHolder.materialCache.get(TEXT_MATERIAL):(this._textMaterial=new MeshPhongMaterial({color:3618615}),this._cacheHolder.materialCache.set(TEXT_MATERIAL,this._textMaterial))}_init(){this._initMaterials();let e=new BufferGeometry;this._line=new Line(e,this._lineMaterial),this._line.name="component dimension line "+this._dimensioning.type.value,this._text=new Mesh(e,this._textMaterial),this._text.name="component dimension text "+this._dimensioning.type.value,this._plane=new Mesh(e,this._planeMaterial),this._plane.name="component dimension plane "+this._dimensioning.type.value;let i,t=new BufferGeometry,n=Math.round(Math.max(this._size.y,this._size.x,this._size.z)),s=Math.abs(this._dimensioning.to-this._dimensioning.from),o=.025+(n<4?0:.005*n);s<.3&&(o*=.5+s);let a={font:this._font,size:o,height:.001,curveSegments:2,bevelEnabled:!0,bevelThickness:.001,bevelSize:.001},r=this._dimensioning.label?this._dimensioning.label:this._unitFormatter.formatMMValueToUnitString(1e3*s),h=new TextGeometry(r,a);h.computeBoundingBox();let _=h.boundingBox.getSize(new Vector3).y;0===this._dimensioning.type.value&&(i=this._getXEdge(_),this._addXEdgeSideLines(_)),1===this._dimensioning.type.value&&(i=this._getYEdge(_),this._addYEdgeSideLines(_)),2===this._dimensioning.type.value&&(i=this._getZEdge(_),this._addZEdgeSideLines(_));let l=[i.start.x,i.start.y,i.start.z,i.end.x,i.end.y,i.end.z];if(t.setAttribute("position",new BufferAttribute(new Float32Array(l),3)),this._line.geometry.dispose(),this._line.geometry=t,this.add(this._line),this._text.geometry=h,0===this._dimensioning.type.value&&this._addText(i,h,new Quaternion,new Vector3(0,.04,0)),1===this._dimensioning.type.value){let e=new Quaternion,t=this._getXSign()>0?Math.PI/2:Math.PI/2*3;e.setFromAxisAngle(new Vector3(0,0,1),t),this._addText(i,h,e,new Vector3(.04,0,0))}if(2===this._dimensioning.type.value){let e=this._getXSign()>0?Math.PI/2:Math.PI/2*3,t=(new Quaternion).setFromAxisAngle(new Vector3(-1,0,0),Math.PI/2),n=(new Quaternion).setFromAxisAngle(new Vector3(0,0,1),e);this._addText(i,h,t.multiply(n),new Vector3(.04,0,0))}}_getXEdge(e){let i=this._size.y+.05+(.06+e)*this._level;const t=new Vector3(0,this._origin.y,this._origin.z);let n=t.clone().add(new Vector3(this._dimensioning.from,i,0)),s=t.clone().add(new Vector3(this._dimensioning.to,i,0));return new Line3(n,s)}_addXEdgeSideLines(e){let i=this._size.y+.05+(.06+e)*(this._level-.5),t=this._size.y+.05+(.06+e)*this._level;const n=new Vector3(0,this._origin.y,this._origin.z);let s=n.clone().add(new Vector3(this._dimensioning.from,i,0)),o=n.clone().add(new Vector3(this._dimensioning.from,t,0)),a=n.clone().add(new Vector3(this._dimensioning.to,i,0)),r=n.clone().add(new Vector3(this._dimensioning.to,t,0));this._addLine(s,o),this._addLine(a,r)}_getZEdge(e){let i=(this._getXSign()>0?this._size.x:0)+.05+(.06+e)*this._level;i*=this._getXSign();const t=new Vector3(this._origin.x,this._origin.y,0);let n=t.clone().add(new Vector3(i,0,this._dimensioning.from)),s=t.clone().add(new Vector3(i,0,this._dimensioning.to));return new Line3(n,s)}_addZEdgeSideLines(e){let i=this._getXSign()>0?this._size.x:0,t=i+.05+(.06+e)*(this._level-.5),n=i+.05+(.06+e)*this._level;t*=this._getXSign(),n*=this._getXSign();const s=new Vector3(this._origin.x,this._origin.y,0);let o=s.clone().add(new Vector3(t,0,this._dimensioning.from)),a=s.clone().add(new Vector3(n,0,this._dimensioning.from)),r=s.clone().add(new Vector3(t,0,this._dimensioning.to)),h=s.clone().add(new Vector3(n,0,this._dimensioning.to));this._addLine(o,a),this._addLine(r,h)}_getYEdge(e){let i=(this._getXSign()>0?this._size.x:0)+.05+(.06+e)*this._level;i*=this._getXSign();const t=new Vector3(this._origin.x,0,this._origin.z);let n=t.clone().add(new Vector3(i,this._dimensioning.from,0)),s=t.clone().add(new Vector3(i,this._dimensioning.to,0));return new Line3(n,s)}_addYEdgeSideLines(e){let i=this._getXSign()>0?this._size.x:0,t=i+.05+(.06+e)*(this._level-.5),n=i+.05+(.06+e)*this._level;t*=this._getXSign(),n*=this._getXSign();const s=new Vector3(this._origin.x,0,this._origin.z);let o=s.clone().add(new Vector3(t,this._dimensioning.from,0)),a=s.clone().add(new Vector3(n,this._dimensioning.from,0)),r=s.clone().add(new Vector3(t,this._dimensioning.to,0)),h=s.clone().add(new Vector3(n,this._dimensioning.to,0));this._addLine(o,a),this._addLine(r,h)}_addLine(e,i){let t=new BufferGeometry,n=[e.x,e.y,e.z,i.x,i.y,i.z];t.setAttribute("position",new BufferAttribute(new Float32Array(n),3)),this.add(new Line(t,this._lineMaterial))}_addText(e,i,t,n){let s=e.getCenter(new Vector3);n.x*=this._getXSign(),s.add(n);let o=i.boundingBox.getSize(new Vector3);i.center(),this._text.position.copy(s),this._text.quaternion.copy(t),this.add(this._text);let a=new PlaneGeometry(o.x+.02,o.y+.02,32);a.center(),this._plane.geometry=a,this._plane.position.copy(s),this._plane.quaternion.copy(t),this.add(this._plane)}_getXSign(){return this._cameraPosition.x>=0?1:-1}}__decorate([inject],ComponentDimensioning.prototype,"_cacheHolder",void 0),__decorate([inject],ComponentDimensioning.prototype,"_unitFormatter",void 0);export{ComponentDimensioning as default};
2
- //# sourceMappingURL=component-dimensioning-c1f91180.js.map
1
+ import{_ as __decorate,i as inject}from"./roomle-dependency-injection-6d996d97.js";import{O as Object3D,a as Vector3,s as LineBasicMaterial,f as MeshBasicMaterial,u as DoubleSide,bg as MeshPhongMaterial,B as BufferGeometry,z as Line,x as Mesh,b as BufferAttribute,Q as Quaternion,aH as Line3,b5 as PlaneGeometry}from"./main-thread-to-worker-d5d5841d.js";import{T as TextGeometry}from"./TextGeometry-d25f1fa4.js";const LINE_MATERIAL="component_dimensioning_line_material",PLANE_MATERIAL="component_dimensioning_plane_material",TEXT_MATERIAL="component_dimensioning_text_material";class ComponentDimensioning extends Object3D{constructor(e,i,t,n){super(),this._center=i.getCenter(new Vector3),this._size=i.getSize(new Vector3),this._origin=this._center.clone().sub(this._size.clone().multiplyScalar(.5)),this._dimensioning=e,this._level=this._dimensioning.maxLevel-this._dimensioning.level,this._font=t,this._cameraPosition=n,this._init()}_initMaterials(){this._cacheHolder.materialCache.has(LINE_MATERIAL)?this._lineMaterial=this._cacheHolder.materialCache.get(LINE_MATERIAL):(this._lineMaterial=new LineBasicMaterial({color:3618615}),this._cacheHolder.materialCache.set(LINE_MATERIAL,this._lineMaterial)),this._cacheHolder.materialCache.has(PLANE_MATERIAL)?this._planeMaterial=this._cacheHolder.materialCache.get(PLANE_MATERIAL):(this._planeMaterial=new MeshBasicMaterial({color:16777215,side:DoubleSide,opacity:.8,transparent:!0}),this._cacheHolder.materialCache.set(PLANE_MATERIAL,this._planeMaterial)),this._cacheHolder.materialCache.has(TEXT_MATERIAL)?this._textMaterial=this._cacheHolder.materialCache.get(TEXT_MATERIAL):(this._textMaterial=new MeshPhongMaterial({color:3618615}),this._cacheHolder.materialCache.set(TEXT_MATERIAL,this._textMaterial))}_init(){this._initMaterials();let e=new BufferGeometry;this._line=new Line(e,this._lineMaterial),this._line.name="component dimension line "+this._dimensioning.type.value,this._text=new Mesh(e,this._textMaterial),this._text.name="component dimension text "+this._dimensioning.type.value,this._plane=new Mesh(e,this._planeMaterial),this._plane.name="component dimension plane "+this._dimensioning.type.value;let i,t=new BufferGeometry,n=Math.round(Math.max(this._size.y,this._size.x,this._size.z)),s=Math.abs(this._dimensioning.to-this._dimensioning.from),o=.025+(n<4?0:.005*n);s<.3&&(o*=.5+s);let a={font:this._font,size:o,height:.001,curveSegments:2,bevelEnabled:!0,bevelThickness:.001,bevelSize:.001},r=this._dimensioning.label?this._dimensioning.label:this._unitFormatter.formatMMValueToUnitString(1e3*s),h=new TextGeometry(r,a);h.computeBoundingBox();let _=h.boundingBox.getSize(new Vector3).y;0===this._dimensioning.type.value&&(i=this._getXEdge(_),this._addXEdgeSideLines(_)),1===this._dimensioning.type.value&&(i=this._getYEdge(_),this._addYEdgeSideLines(_)),2===this._dimensioning.type.value&&(i=this._getZEdge(_),this._addZEdgeSideLines(_));let d=[i.start.x,i.start.y,i.start.z,i.end.x,i.end.y,i.end.z];if(t.setAttribute("position",new BufferAttribute(new Float32Array(d),3)),this._line.geometry.dispose(),this._line.geometry=t,this.add(this._line),this._text.geometry=h,0===this._dimensioning.type.value&&this._addText(i,h,new Quaternion,new Vector3(0,.04,0)),1===this._dimensioning.type.value){let e=new Quaternion,t=this._getXSign()>0?Math.PI/2:Math.PI/2*3;e.setFromAxisAngle(new Vector3(0,0,1),t),this._addText(i,h,e,new Vector3(.04,0,0))}if(2===this._dimensioning.type.value){let e=this._getXSign()>0?Math.PI/2:Math.PI/2*3,t=(new Quaternion).setFromAxisAngle(new Vector3(-1,0,0),Math.PI/2),n=(new Quaternion).setFromAxisAngle(new Vector3(0,0,1),e);this._addText(i,h,t.multiply(n),new Vector3(.04,0,0))}}_getXEdge(e){let i=this._size.y+.05+(.06+e)*this._level;const t=new Vector3(0,this._origin.y,this._origin.z);let n=t.clone().add(new Vector3(this._dimensioning.from,i,0)),s=t.clone().add(new Vector3(this._dimensioning.to,i,0));return new Line3(n,s)}_addXEdgeSideLines(e){let i=this._size.y+.05+(.06+e)*(this._level-.5),t=this._size.y+.05+(.06+e)*this._level;const n=new Vector3(0,this._origin.y,this._origin.z);let s=n.clone().add(new Vector3(this._dimensioning.from,i,0)),o=n.clone().add(new Vector3(this._dimensioning.from,t,0)),a=n.clone().add(new Vector3(this._dimensioning.to,i,0)),r=n.clone().add(new Vector3(this._dimensioning.to,t,0));this._addLine(s,o),this._addLine(a,r)}_getZEdge(e){let i=(this._getXSign()>0?this._size.x:0)+.05+(.06+e)*this._level;i*=this._getXSign();const t=new Vector3(this._origin.x,this._origin.y,0);let n=t.clone().add(new Vector3(i,0,this._dimensioning.from)),s=t.clone().add(new Vector3(i,0,this._dimensioning.to));return new Line3(n,s)}_addZEdgeSideLines(e){let i=this._getXSign()>0?this._size.x:0,t=i+.05+(.06+e)*(this._level-.5),n=i+.05+(.06+e)*this._level;t*=this._getXSign(),n*=this._getXSign();const s=new Vector3(this._origin.x,this._origin.y,0);let o=s.clone().add(new Vector3(t,0,this._dimensioning.from)),a=s.clone().add(new Vector3(n,0,this._dimensioning.from)),r=s.clone().add(new Vector3(t,0,this._dimensioning.to)),h=s.clone().add(new Vector3(n,0,this._dimensioning.to));this._addLine(o,a),this._addLine(r,h)}_getYEdge(e){let i=(this._getXSign()>0?this._size.x:0)+.05+(.06+e)*this._level;i*=this._getXSign();const t=new Vector3(this._origin.x,0,this._origin.z);let n=t.clone().add(new Vector3(i,this._dimensioning.from,0)),s=t.clone().add(new Vector3(i,this._dimensioning.to,0));return new Line3(n,s)}_addYEdgeSideLines(e){let i=this._getXSign()>0?this._size.x:0,t=i+.05+(.06+e)*(this._level-.5),n=i+.05+(.06+e)*this._level;t*=this._getXSign(),n*=this._getXSign();const s=new Vector3(this._origin.x,0,this._origin.z);let o=s.clone().add(new Vector3(t,this._dimensioning.from,0)),a=s.clone().add(new Vector3(n,this._dimensioning.from,0)),r=s.clone().add(new Vector3(t,this._dimensioning.to,0)),h=s.clone().add(new Vector3(n,this._dimensioning.to,0));this._addLine(o,a),this._addLine(r,h)}_addLine(e,i){let t=new BufferGeometry,n=[e.x,e.y,e.z,i.x,i.y,i.z];t.setAttribute("position",new BufferAttribute(new Float32Array(n),3)),this.add(new Line(t,this._lineMaterial))}_addText(e,i,t,n){let s=e.getCenter(new Vector3);n.x*=this._getXSign(),s.add(n);let o=i.boundingBox.getSize(new Vector3);i.center(),this._text.position.copy(s),this._text.quaternion.copy(t),this.add(this._text);let a=new PlaneGeometry(o.x+.02,o.y+.02,32);a.center(),this._plane.geometry=a,this._plane.position.copy(s),this._plane.quaternion.copy(t),this.add(this._plane)}_getXSign(){return this._cameraPosition.x>=0?1:-1}}__decorate([inject],ComponentDimensioning.prototype,"_cacheHolder",void 0),__decorate([inject],ComponentDimensioning.prototype,"_unitFormatter",void 0);export{ComponentDimensioning as default};
2
+ //# sourceMappingURL=component-dimensioning-f0cf518d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-dimensioning-f0cf518d.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- System.register(["./main-thread-to-worker-592260bb.nomodule.js","./roomle-dependency-injection-ab12a554.nomodule.js"],(function(e){var t,i,n,s,a,r,c,o,l;return{setters:[function(e){t=e.bv,i=e.bH,n=e.x,s=e.t,a=e.aa,r=e.a,c=e.bI,o=e.j},function(e){l=e.a7}],execute:function(){e("default",class{constructor(){this._nonTransparentComponent=null,this._raycaster=new t,this._raycaster.near=.1,this._raycaster.layers.enable(3)}init(e,t){this._scene=e,this._camera=t,this.checkComponentVisibility=i(this.checkComponentVisibility,100).bind(this),this.checkPreviewVisibility=i(this.checkPreviewVisibility,100).bind(this)}changeMaterialsOnSelect(e,t,i=!1){t!==this._nonTransparentComponent&&(this._nonTransparentComponent=t,this._changeMaterialsOnSelect(e,t,i))}_changeMaterialsOnSelect(e,t,i=!1){if(e.children.length>0&&e.children.forEach(s=>{const a=t&&e.id===t.id||i,r=!(s instanceof n);this._changeMaterialsOnSelect(s,t,(!a||!r)&&a)}),t)e instanceof n&&e.material instanceof s&&!e.userData.oldMaterial&&(e.userData.oldMaterial=e.material,e.material=e.material.clone(),i||l(e,{opacity:.2,transparent:!0}));else if(e.userData.oldMaterial&&e instanceof n&&e.material instanceof s){const{opacity:t,transparent:i}=e.userData.oldMaterial;l(e,{opacity:t,transparent:i}),e.userData.oldMaterial=void 0}}isComponentVisible(e){const t=[];e.traverse(e=>t.push(e.uuid));const i=(new a).setFromObject(e).getCenter(new r),n=(new r).subVectors(i,this._camera.position).normalize();this._raycaster.set(this._camera.position,n),this._raycaster.far=this._camera.position.distanceTo(i);const s=[];return this._raycaster.intersectObjects(this._scene.children,!0).forEach(e=>{e.object.material.visible&&(t.includes(e.object.uuid)||e.object.userData.ignoreComponentRaycast||s.push(e))}),0===s.length}checkComponentAndPreviewVisibility(e,t){e.hasSelection()?this.checkComponentVisibility(e,t):t.hasPreviews()?this.checkPreviewVisibility(t):this.changeMaterialsOnSelect(this._scene,null)}checkComponentVisibility(e,t){if(!e.hasSelection())return;const i=t.getComponentsForIds(e.getSelectedRuntimeComponentIds());if(i.length>1)return;const n=i[0];this.isComponentVisible(n)?this.changeMaterialsOnSelect(this._scene,null):this.changeMaterialsOnSelect(this._scene,n)}areAllPreviewsVisible(e){if(!e.hasPreviews())return!0;const t=e.getPreviews();return 0===t.length||t.map(e=>this.isComponentVisible(e)).reduce((e,t)=>e&&t)}areAllComponentsInFrustum(e){if(0===e.length)return!0;const t=new c,i=(new o).multiplyMatrices(this._camera.projectionMatrix,this._camera.matrixWorldInverse),n=new a;return t.setFromProjectionMatrix(i),e.map(e=>(e=>{const i=n.setFromObject(e).getCenter(new r);return t.containsPoint(i)})(e)).reduce((e,t)=>e&&t)}checkPreviewVisibility(e){e.hasPreviewLines()||(this.areAllPreviewsVisible(e)?this.changeMaterialsOnSelect(this._scene,null):this.changeMaterialsOnSelect(this._scene,{id:-1}))}})}}}));
2
- //# sourceMappingURL=component-raycast-helper-833f8a52.nomodule.js.map
1
+ System.register(["./main-thread-to-worker-cce716d1.nomodule.js","./roomle-dependency-injection-99c0d447.nomodule.js"],(function(e){var t,i,n,s,a,r,c,o,l;return{setters:[function(e){t=e.bv,i=e.bK,n=e.x,s=e.t,a=e.aa,r=e.a,c=e.bL,o=e.j},function(e){l=e.a8}],execute:function(){e("default",class{constructor(){this._nonTransparentComponent=null,this._raycaster=new t,this._raycaster.near=.1,this._raycaster.layers.enable(3)}init(e,t){this._scene=e,this._camera=t,this.checkComponentVisibility=i(this.checkComponentVisibility,100).bind(this),this.checkPreviewVisibility=i(this.checkPreviewVisibility,100).bind(this)}changeMaterialsOnSelect(e,t,i=!1){t!==this._nonTransparentComponent&&(this._nonTransparentComponent=t,this._changeMaterialsOnSelect(e,t,i))}_changeMaterialsOnSelect(e,t,i=!1){if(e.children.length>0&&e.children.forEach(s=>{const a=t&&e.id===t.id||i,r=!(s instanceof n);this._changeMaterialsOnSelect(s,t,(!a||!r)&&a)}),t)e instanceof n&&e.material instanceof s&&!e.userData.oldMaterial&&(e.userData.oldMaterial=e.material,e.material=e.material.clone(),i||l(e,{opacity:.2,transparent:!0}));else if(e.userData.oldMaterial&&e instanceof n&&e.material instanceof s){const{opacity:t,transparent:i}=e.userData.oldMaterial;l(e,{opacity:t,transparent:i}),e.userData.oldMaterial=void 0}}isComponentVisible(e){const t=[];e.traverse(e=>t.push(e.uuid));const i=(new a).setFromObject(e).getCenter(new r),n=(new r).subVectors(i,this._camera.position).normalize();this._raycaster.set(this._camera.position,n),this._raycaster.far=this._camera.position.distanceTo(i);const s=[];return this._raycaster.intersectObjects(this._scene.children,!0).forEach(e=>{e.object.material.visible&&(t.includes(e.object.uuid)||e.object.userData.ignoreComponentRaycast||s.push(e))}),0===s.length}checkComponentAndPreviewVisibility(e,t){e.hasSelection()?this.checkComponentVisibility(e,t):t.hasPreviews()?this.checkPreviewVisibility(t):this.changeMaterialsOnSelect(this._scene,null)}checkComponentVisibility(e,t){if(!e.hasSelection())return;const i=t.getComponentsForIds(e.getSelectedRuntimeComponentIds());if(i.length>1)return;const n=i[0];this.isComponentVisible(n)?this.changeMaterialsOnSelect(this._scene,null):this.changeMaterialsOnSelect(this._scene,n)}areAllPreviewsVisible(e){if(!e.hasPreviews())return!0;const t=e.getPreviews();return 0===t.length||t.map(e=>this.isComponentVisible(e)).reduce((e,t)=>e&&t)}areAllComponentsInFrustum(e){if(0===e.length)return!0;const t=new c,i=(new o).multiplyMatrices(this._camera.projectionMatrix,this._camera.matrixWorldInverse),n=new a;return t.setFromProjectionMatrix(i),e.map(e=>(e=>{const i=n.setFromObject(e).getCenter(new r);return t.containsPoint(i)})(e)).reduce((e,t)=>e&&t)}checkPreviewVisibility(e){e.hasPreviewLines()||(this.areAllPreviewsVisible(e)?this.changeMaterialsOnSelect(this._scene,null):this.changeMaterialsOnSelect(this._scene,{id:-1}))}})}}}));
2
+ //# sourceMappingURL=component-raycast-helper-73f1aca9.nomodule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-raycast-helper-73f1aca9.nomodule.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- import{bv as Raycaster,bH as throttle,x as Mesh,t as MeshStandardMaterial,aa as Box3,a as Vector3,bI as Frustum,j as Matrix4}from"./main-thread-to-worker-c12b58a4.js";import{a7 as transitionTransparencyOfMaterial}from"./roomle-dependency-injection-6e666b06.js";class ComponentRaycastHelper{constructor(){this._nonTransparentComponent=null,this._raycaster=new Raycaster,this._raycaster.near=.1,this._raycaster.layers.enable(3)}init(e,t){this._scene=e,this._camera=t,this.checkComponentVisibility=throttle(this.checkComponentVisibility,100).bind(this),this.checkPreviewVisibility=throttle(this.checkPreviewVisibility,100).bind(this)}changeMaterialsOnSelect(e,t,i=!1){t!==this._nonTransparentComponent&&(this._nonTransparentComponent=t,this._changeMaterialsOnSelect(e,t,i))}_changeMaterialsOnSelect(e,t,i=!1){if(e.children.length>0&&e.children.forEach(a=>{const s=t&&e.id===t.id||i,n=!(a instanceof Mesh);this._changeMaterialsOnSelect(a,t,(!s||!n)&&s)}),t)e instanceof Mesh&&e.material instanceof MeshStandardMaterial&&!e.userData.oldMaterial&&(e.userData.oldMaterial=e.material,e.material=e.material.clone(),i||transitionTransparencyOfMaterial(e,{opacity:.2,transparent:!0}));else if(e.userData.oldMaterial&&e instanceof Mesh&&e.material instanceof MeshStandardMaterial){const{opacity:t,transparent:i}=e.userData.oldMaterial;transitionTransparencyOfMaterial(e,{opacity:t,transparent:i}),e.userData.oldMaterial=void 0}}isComponentVisible(e){const t=[];e.traverse(e=>t.push(e.uuid));const i=(new Box3).setFromObject(e).getCenter(new Vector3),a=(new Vector3).subVectors(i,this._camera.position).normalize();this._raycaster.set(this._camera.position,a),this._raycaster.far=this._camera.position.distanceTo(i);const s=[];return this._raycaster.intersectObjects(this._scene.children,!0).forEach(e=>{e.object.material.visible&&(t.includes(e.object.uuid)||e.object.userData.ignoreComponentRaycast||s.push(e))}),0===s.length}checkComponentAndPreviewVisibility(e,t){e.hasSelection()?this.checkComponentVisibility(e,t):t.hasPreviews()?this.checkPreviewVisibility(t):this.changeMaterialsOnSelect(this._scene,null)}checkComponentVisibility(e,t){if(!e.hasSelection())return;const i=t.getComponentsForIds(e.getSelectedRuntimeComponentIds());if(i.length>1)return;const a=i[0];this.isComponentVisible(a)?this.changeMaterialsOnSelect(this._scene,null):this.changeMaterialsOnSelect(this._scene,a)}areAllPreviewsVisible(e){if(!e.hasPreviews())return!0;const t=e.getPreviews();return 0===t.length||t.map(e=>this.isComponentVisible(e)).reduce((e,t)=>e&&t)}areAllComponentsInFrustum(e){if(0===e.length)return!0;const t=new Frustum,i=(new Matrix4).multiplyMatrices(this._camera.projectionMatrix,this._camera.matrixWorldInverse),a=new Box3;return t.setFromProjectionMatrix(i),e.map(e=>(e=>{const i=a.setFromObject(e).getCenter(new Vector3);return t.containsPoint(i)})(e)).reduce((e,t)=>e&&t)}checkPreviewVisibility(e){e.hasPreviewLines()||(this.areAllPreviewsVisible(e)?this.changeMaterialsOnSelect(this._scene,null):this.changeMaterialsOnSelect(this._scene,{id:-1}))}}export{ComponentRaycastHelper as default};
2
- //# sourceMappingURL=component-raycast-helper-1cb2afdd.js.map
1
+ import{bv as Raycaster,bK as throttle,x as Mesh,t as MeshStandardMaterial,aa as Box3,a as Vector3,bL as Frustum,j as Matrix4}from"./main-thread-to-worker-d5d5841d.js";import{a8 as transitionTransparencyOfMaterial}from"./roomle-dependency-injection-6d996d97.js";class ComponentRaycastHelper{constructor(){this._nonTransparentComponent=null,this._raycaster=new Raycaster,this._raycaster.near=.1,this._raycaster.layers.enable(3)}init(e,t){this._scene=e,this._camera=t,this.checkComponentVisibility=throttle(this.checkComponentVisibility,100).bind(this),this.checkPreviewVisibility=throttle(this.checkPreviewVisibility,100).bind(this)}changeMaterialsOnSelect(e,t,i=!1){t!==this._nonTransparentComponent&&(this._nonTransparentComponent=t,this._changeMaterialsOnSelect(e,t,i))}_changeMaterialsOnSelect(e,t,i=!1){if(e.children.length>0&&e.children.forEach(a=>{const s=t&&e.id===t.id||i,n=!(a instanceof Mesh);this._changeMaterialsOnSelect(a,t,(!s||!n)&&s)}),t)e instanceof Mesh&&e.material instanceof MeshStandardMaterial&&!e.userData.oldMaterial&&(e.userData.oldMaterial=e.material,e.material=e.material.clone(),i||transitionTransparencyOfMaterial(e,{opacity:.2,transparent:!0}));else if(e.userData.oldMaterial&&e instanceof Mesh&&e.material instanceof MeshStandardMaterial){const{opacity:t,transparent:i}=e.userData.oldMaterial;transitionTransparencyOfMaterial(e,{opacity:t,transparent:i}),e.userData.oldMaterial=void 0}}isComponentVisible(e){const t=[];e.traverse(e=>t.push(e.uuid));const i=(new Box3).setFromObject(e).getCenter(new Vector3),a=(new Vector3).subVectors(i,this._camera.position).normalize();this._raycaster.set(this._camera.position,a),this._raycaster.far=this._camera.position.distanceTo(i);const s=[];return this._raycaster.intersectObjects(this._scene.children,!0).forEach(e=>{e.object.material.visible&&(t.includes(e.object.uuid)||e.object.userData.ignoreComponentRaycast||s.push(e))}),0===s.length}checkComponentAndPreviewVisibility(e,t){e.hasSelection()?this.checkComponentVisibility(e,t):t.hasPreviews()?this.checkPreviewVisibility(t):this.changeMaterialsOnSelect(this._scene,null)}checkComponentVisibility(e,t){if(!e.hasSelection())return;const i=t.getComponentsForIds(e.getSelectedRuntimeComponentIds());if(i.length>1)return;const a=i[0];this.isComponentVisible(a)?this.changeMaterialsOnSelect(this._scene,null):this.changeMaterialsOnSelect(this._scene,a)}areAllPreviewsVisible(e){if(!e.hasPreviews())return!0;const t=e.getPreviews();return 0===t.length||t.map(e=>this.isComponentVisible(e)).reduce((e,t)=>e&&t)}areAllComponentsInFrustum(e){if(0===e.length)return!0;const t=new Frustum,i=(new Matrix4).multiplyMatrices(this._camera.projectionMatrix,this._camera.matrixWorldInverse),a=new Box3;return t.setFromProjectionMatrix(i),e.map(e=>(e=>{const i=a.setFromObject(e).getCenter(new Vector3);return t.containsPoint(i)})(e)).reduce((e,t)=>e&&t)}checkPreviewVisibility(e){e.hasPreviewLines()||(this.areAllPreviewsVisible(e)?this.changeMaterialsOnSelect(this._scene,null):this.changeMaterialsOnSelect(this._scene,{id:-1}))}}export{ComponentRaycastHelper as default};
2
+ //# sourceMappingURL=component-raycast-helper-9255805e.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-raycast-helper-9255805e.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- import{S as ScriptLoader,M as Main}from"./script-loader-105b310a.js";import{D as DependencyInjectionAssignment,L as Logger,R as RapiAccess,a as DataSyncer,C as ConfiguratorViewModel,b as RoomleDependencyInjection,A as AppContext}from"./roomle-dependency-injection-6e666b06.js";import{C as CameraControl3D,a as CameraControl}from"./scene-manager-acf89a5e.js";import ComponentRaycastHelper from"./component-raycast-helper-1cb2afdd.js";import{C as ConfiguratorSceneManager,R as RoomleConfigurator}from"./roomle-configurator-f5998035.js";import"./query-params-helper-a271f9dc.js";import"./main-thread-to-worker-c12b58a4.js";import"./default-light-setting-97e2aec6.js";const INJECTABLES=[new DependencyInjectionAssignment("logger",Logger),new DependencyInjectionAssignment("rapi-access",RapiAccess),new DependencyInjectionAssignment("script-loader",ScriptLoader),new DependencyInjectionAssignment("camera-control-3d",CameraControl3D),new DependencyInjectionAssignment("camera-control",CameraControl),new DependencyInjectionAssignment("data-syncer",DataSyncer),new DependencyInjectionAssignment("configurator-scene-manager",ConfiguratorSceneManager,1),new DependencyInjectionAssignment("configurator-view-model",ConfiguratorViewModel,1),new DependencyInjectionAssignment("component-raycast-helper",ComponentRaycastHelper,0)];class Configurator extends Main{setupDependencies(){RoomleDependencyInjection.setup(INJECTABLES),this.lookup("planner-kernel-access",this._context).init(1),this.lookup("rapi-access",this._context),this.lookup("script-loader",this._context),this.lookup("logger",this._context)}cleanUpGlobals(){delete window.RoomleConfigurator}cleanUpDependencies(){const e=this.lookup("script-loader"),n=this.lookup("rapi-access");this.lookup("dom-helper");const o=this.lookup("configurator-scene-manager");e&&e.cleanUp(),n&&n.cleanUp(),o&&o.cleanUp()}setupGlobals(e){const{kernelInstance:n,kernelContainer:o,planObjectId:t}=e||{};AppContext.init({kernelInstance:n,kernelContainer:o,planObjectId:t})}getApi(){return this._configurator}bootFinished(){this._configurator=new RoomleConfigurator(this._context),this._configurator.getMain=()=>this,window.RoomleConfigurator||(window.RoomleConfigurator=this._configurator)}getContextName(){return"configurator"}}export{Configurator};
2
- //# sourceMappingURL=configurator-be50c3fe.js.map
1
+ import{S as ScriptLoader,M as Main}from"./script-loader-f32ee31e.js";import{D as DependencyInjectionAssignment,L as Logger,R as RapiAccess,a as DataSyncer,C as ConfiguratorViewModel,b as RoomleDependencyInjection,A as AppContext}from"./roomle-dependency-injection-6d996d97.js";import{C as CameraControl3D,a as CameraControl}from"./scene-manager-7cb2a238.js";import ComponentRaycastHelper from"./component-raycast-helper-9255805e.js";import{C as ConfiguratorSceneManager,R as RoomleConfigurator}from"./roomle-configurator-9672e0b8.js";import"./query-params-helper-a271f9dc.js";import"./main-thread-to-worker-d5d5841d.js";import"./default-light-setting-5c69a7cc.js";const INJECTABLES=[new DependencyInjectionAssignment("logger",Logger),new DependencyInjectionAssignment("rapi-access",RapiAccess),new DependencyInjectionAssignment("script-loader",ScriptLoader),new DependencyInjectionAssignment("camera-control-3d",CameraControl3D),new DependencyInjectionAssignment("camera-control",CameraControl),new DependencyInjectionAssignment("data-syncer",DataSyncer),new DependencyInjectionAssignment("configurator-scene-manager",ConfiguratorSceneManager,1),new DependencyInjectionAssignment("configurator-view-model",ConfiguratorViewModel,1),new DependencyInjectionAssignment("component-raycast-helper",ComponentRaycastHelper,0)];class Configurator extends Main{setupDependencies(){RoomleDependencyInjection.setup(INJECTABLES),this.lookup("planner-kernel-access",this._context).init(1),this.lookup("rapi-access",this._context),this.lookup("script-loader",this._context),this.lookup("logger",this._context)}cleanUpGlobals(){delete window.RoomleConfigurator}cleanUpDependencies(){const e=this.lookup("script-loader"),n=this.lookup("rapi-access");this.lookup("dom-helper");const o=this.lookup("configurator-scene-manager");e&&e.cleanUp(),n&&n.cleanUp(),o&&o.cleanUp()}setupGlobals(e){const{kernelInstance:n,kernelContainer:o,planObjectId:t}=e||{};AppContext.init({kernelInstance:n,kernelContainer:o,planObjectId:t})}getApi(){return this._configurator}bootFinished(){this._configurator=new RoomleConfigurator(this._context),this._configurator.getMain=()=>this,window.RoomleConfigurator||(window.RoomleConfigurator=this._configurator)}getContextName(){return"configurator"}}export{Configurator};
2
+ //# sourceMappingURL=configurator-a44cea77.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configurator-a44cea77.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- System.register(["./script-loader-8bd544f0.nomodule.js","./roomle-dependency-injection-ab12a554.nomodule.js","./scene-manager-cbd97bf8.nomodule.js","./component-raycast-helper-833f8a52.nomodule.js","./roomle-configurator-a5c7cf01.nomodule.js","./query-params-helper-c231e1b8.nomodule.js","./main-thread-to-worker-592260bb.nomodule.js","./default-light-setting-99a7eab4.nomodule.js"],(function(e){var n,o,t,r,a,c,i,s,l,u,p,d,f,g;return{setters:[function(e){n=e.S,o=e.M},function(e){t=e.D,r=e.L,a=e.R,c=e.a,i=e.C,s=e.b,l=e.A},function(e){u=e.C,p=e.a},function(e){d=e.default},function(e){f=e.C,g=e.R},function(){},function(){},function(){}],execute:function(){const m=[new t("logger",r),new t("rapi-access",a),new t("script-loader",n),new t("camera-control-3d",u),new t("camera-control",p),new t("data-syncer",c),new t("configurator-scene-manager",f,1),new t("configurator-view-model",i,1),new t("component-raycast-helper",d,0)];e("Configurator",class extends o{setupDependencies(){s.setup(m),this.lookup("planner-kernel-access",this._context).init(1),this.lookup("rapi-access",this._context),this.lookup("script-loader",this._context),this.lookup("logger",this._context)}cleanUpGlobals(){delete window.RoomleConfigurator}cleanUpDependencies(){const e=this.lookup("script-loader"),n=this.lookup("rapi-access");this.lookup("dom-helper");const o=this.lookup("configurator-scene-manager");e&&e.cleanUp(),n&&n.cleanUp(),o&&o.cleanUp()}setupGlobals(e){const{kernelInstance:n,kernelContainer:o,planObjectId:t}=e||{};l.init({kernelInstance:n,kernelContainer:o,planObjectId:t})}getApi(){return this._configurator}bootFinished(){this._configurator=new g(this._context),this._configurator.getMain=()=>this,window.RoomleConfigurator||(window.RoomleConfigurator=this._configurator)}getContextName(){return"configurator"}})}}}));
2
- //# sourceMappingURL=configurator-05086741.nomodule.js.map
1
+ System.register(["./script-loader-f6b83084.nomodule.js","./roomle-dependency-injection-99c0d447.nomodule.js","./scene-manager-1405da14.nomodule.js","./component-raycast-helper-73f1aca9.nomodule.js","./roomle-configurator-0690376c.nomodule.js","./query-params-helper-c231e1b8.nomodule.js","./main-thread-to-worker-cce716d1.nomodule.js","./default-light-setting-e93b3006.nomodule.js"],(function(e){var n,o,t,r,c,i,a,s,l,u,p,d,f,g;return{setters:[function(e){n=e.S,o=e.M},function(e){t=e.D,r=e.L,c=e.R,i=e.a,a=e.C,s=e.b,l=e.A},function(e){u=e.C,p=e.a},function(e){d=e.default},function(e){f=e.C,g=e.R},function(){},function(){},function(){}],execute:function(){const m=[new t("logger",r),new t("rapi-access",c),new t("script-loader",n),new t("camera-control-3d",u),new t("camera-control",p),new t("data-syncer",i),new t("configurator-scene-manager",f,1),new t("configurator-view-model",a,1),new t("component-raycast-helper",d,0)];e("Configurator",class extends o{setupDependencies(){s.setup(m),this.lookup("planner-kernel-access",this._context).init(1),this.lookup("rapi-access",this._context),this.lookup("script-loader",this._context),this.lookup("logger",this._context)}cleanUpGlobals(){delete window.RoomleConfigurator}cleanUpDependencies(){const e=this.lookup("script-loader"),n=this.lookup("rapi-access");this.lookup("dom-helper");const o=this.lookup("configurator-scene-manager");e&&e.cleanUp(),n&&n.cleanUp(),o&&o.cleanUp()}setupGlobals(e){const{kernelInstance:n,kernelContainer:o,planObjectId:t}=e||{};l.init({kernelInstance:n,kernelContainer:o,planObjectId:t})}getApi(){return this._configurator}bootFinished(){this._configurator=new g(this._context),this._configurator.getMain=()=>this,window.RoomleConfigurator||(window.RoomleConfigurator=this._configurator)}getContextName(){return"configurator"}})}}}));
2
+ //# sourceMappingURL=configurator-b475fb50.nomodule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configurator-b475fb50.nomodule.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import{Configurator}from"./configurator-a44cea77.js";import"./script-loader-f32ee31e.js";import"./query-params-helper-a271f9dc.js";import"./roomle-dependency-injection-6d996d97.js";import"./main-thread-to-worker-d5d5841d.js";import"./scene-manager-7cb2a238.js";import"./component-raycast-helper-9255805e.js";import"./roomle-configurator-9672e0b8.js";import"./default-light-setting-5c69a7cc.js";(new Configurator).boot(),window.requestIdleCallback||(window.requestIdleCallback=e=>setTimeout(()=>{let o=Date.now();e({didTimeout:!1,timeRemaining:()=>Math.max(0,50-(Date.now()-o))})},1)),window.cancelIdleCallback||(window.cancelIdleCallback=window.cancelIdleCallback||function(e){clearTimeout(e)});
2
+ //# sourceMappingURL=configurator-main-dc2a5801.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configurator-main-dc2a5801.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- System.register(["./configurator-05086741.nomodule.js","./script-loader-8bd544f0.nomodule.js","./query-params-helper-c231e1b8.nomodule.js","./roomle-dependency-injection-ab12a554.nomodule.js","./main-thread-to-worker-592260bb.nomodule.js","./scene-manager-cbd97bf8.nomodule.js","./component-raycast-helper-833f8a52.nomodule.js","./roomle-configurator-a5c7cf01.nomodule.js","./default-light-setting-99a7eab4.nomodule.js"],(function(){var e;return{setters:[function(n){e=n.Configurator},function(){},function(){},function(){},function(){},function(){},function(){},function(){},function(){}],execute:function(){(new e).boot(),window.requestIdleCallback||(window.requestIdleCallback=e=>setTimeout(()=>{let n=Date.now();e({didTimeout:!1,timeRemaining:()=>Math.max(0,50-(Date.now()-n))})},1)),window.cancelIdleCallback||(window.cancelIdleCallback=window.cancelIdleCallback||function(e){clearTimeout(e)})}}}));
1
+ System.register(["./configurator-b475fb50.nomodule.js","./script-loader-f6b83084.nomodule.js","./query-params-helper-c231e1b8.nomodule.js","./roomle-dependency-injection-99c0d447.nomodule.js","./main-thread-to-worker-cce716d1.nomodule.js","./scene-manager-1405da14.nomodule.js","./component-raycast-helper-73f1aca9.nomodule.js","./roomle-configurator-0690376c.nomodule.js","./default-light-setting-e93b3006.nomodule.js"],(function(){var e;return{setters:[function(n){e=n.Configurator},function(){},function(){},function(){},function(){},function(){},function(){},function(){},function(){}],execute:function(){(new e).boot(),window.requestIdleCallback||(window.requestIdleCallback=e=>setTimeout(()=>{let n=Date.now();e({didTimeout:!1,timeRemaining:()=>Math.max(0,50-(Date.now()-n))})},1)),window.cancelIdleCallback||(window.cancelIdleCallback=window.cancelIdleCallback||function(e){clearTimeout(e)})}}}));
2
2
  //# sourceMappingURL=configurator-main.nomodule.js.map
@@ -1,2 +1,2 @@
1
- System.register(["./roomle-dependency-injection-ab12a554.nomodule.js","./main-thread-to-worker-592260bb.nomodule.js"],(function(e){var i,t,r,n,s;return{setters:[function(e){i=e.a9},function(e){t=e.aI,r=e.f,n=e.u,s=e.x}],execute:function(){e("default",class{constructor(){this._currentInnerRadius=0}init(e,i,t){this._drawingGroup=e,this._continuousDrawingManager=i,this._kernelZoomFactor=t,this.update()}update(){this._initCircle(),this._updateCircle()}_initCircle(){if(this._circleMesh)return;const e=70/this._kernelZoomFactor/1e3,i=new t(e,e+e/50,32),c=new r({color:10066329,side:n});this._circleMesh=new s(i,c),this._circleMesh.name="Circle",this._circleMesh.rotation.set(Math.PI/2,0,0),this._circleMesh.visible=this._continuousDrawingManager.shouldShowCircle(),this._drawingGroup.add(this._circleMesh)}_updateCircle(){if(!this._circleMesh)return;const e=70/this._kernelZoomFactor/1e3;if(e!==this._currentInnerRadius){const i=e+e/50;this._circleMesh.geometry=new t(e,i,32)}const r=i(this._continuousDrawingManager.getStartPoint());r.y=5,this._circleMesh.position.copy(r),this._circleMesh.visible=this._continuousDrawingManager.shouldShowCircle(),this._currentInnerRadius=e}setKernelZoomFactor(e){this._kernelZoomFactor=e}endDrawing(){this._drawingGroup.remove(this._circleMesh),this._circleMesh=null}})}}}));
2
- //# sourceMappingURL=continuous-drawing-helper-ab2aa242.nomodule.js.map
1
+ System.register(["./roomle-dependency-injection-99c0d447.nomodule.js","./main-thread-to-worker-cce716d1.nomodule.js"],(function(e){var i,t,r,n,s;return{setters:[function(e){i=e.aa},function(e){t=e.aJ,r=e.f,n=e.u,s=e.x}],execute:function(){e("default",class{constructor(){this._currentInnerRadius=0}init(e,i,t){this._drawingGroup=e,this._continuousDrawingManager=i,this._kernelZoomFactor=t,this.update()}update(){this._initCircle(),this._updateCircle()}_initCircle(){if(this._circleMesh)return;const e=70/this._kernelZoomFactor/1e3,i=new t(e,e+e/50,32),c=new r({color:10066329,side:n});this._circleMesh=new s(i,c),this._circleMesh.name="Circle",this._circleMesh.rotation.set(Math.PI/2,0,0),this._circleMesh.visible=this._continuousDrawingManager.shouldShowCircle(),this._drawingGroup.add(this._circleMesh)}_updateCircle(){if(!this._circleMesh)return;const e=70/this._kernelZoomFactor/1e3;if(e!==this._currentInnerRadius){const i=e+e/50;this._circleMesh.geometry=new t(e,i,32)}const r=i(this._continuousDrawingManager.getStartPoint());r.y=5,this._circleMesh.position.copy(r),this._circleMesh.visible=this._continuousDrawingManager.shouldShowCircle(),this._currentInnerRadius=e}setKernelZoomFactor(e){this._kernelZoomFactor=e}endDrawing(){this._drawingGroup.remove(this._circleMesh),this._circleMesh=null}})}}}));
2
+ //# sourceMappingURL=continuous-drawing-helper-335923cb.nomodule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"continuous-drawing-helper-335923cb.nomodule.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- import{a9 as convertToTHREE}from"./roomle-dependency-injection-6e666b06.js";import{aI as RingGeometry,f as MeshBasicMaterial,u as DoubleSide,x as Mesh}from"./main-thread-to-worker-c12b58a4.js";class ContinuousDrawingHelper{constructor(){this._currentInnerRadius=0}init(e,i,r){this._drawingGroup=e,this._continuousDrawingManager=i,this._kernelZoomFactor=r,this.update()}update(){this._initCircle(),this._updateCircle()}_initCircle(){if(this._circleMesh)return;const e=70/this._kernelZoomFactor/1e3,i=new RingGeometry(e,e+e/50,32),r=new MeshBasicMaterial({color:10066329,side:DoubleSide});this._circleMesh=new Mesh(i,r),this._circleMesh.name="Circle",this._circleMesh.rotation.set(Math.PI/2,0,0),this._circleMesh.visible=this._continuousDrawingManager.shouldShowCircle(),this._drawingGroup.add(this._circleMesh)}_updateCircle(){if(!this._circleMesh)return;const e=70/this._kernelZoomFactor/1e3;if(e!==this._currentInnerRadius){const i=e+e/50;this._circleMesh.geometry=new RingGeometry(e,i,32)}const i=convertToTHREE(this._continuousDrawingManager.getStartPoint());i.y=5,this._circleMesh.position.copy(i),this._circleMesh.visible=this._continuousDrawingManager.shouldShowCircle(),this._currentInnerRadius=e}setKernelZoomFactor(e){this._kernelZoomFactor=e}endDrawing(){this._drawingGroup.remove(this._circleMesh),this._circleMesh=null}}export{ContinuousDrawingHelper as default};
2
- //# sourceMappingURL=continuous-drawing-helper-771ee2d1.js.map
1
+ import{aa as convertToTHREE}from"./roomle-dependency-injection-6d996d97.js";import{aJ as RingGeometry,f as MeshBasicMaterial,u as DoubleSide,x as Mesh}from"./main-thread-to-worker-d5d5841d.js";class ContinuousDrawingHelper{constructor(){this._currentInnerRadius=0}init(e,i,r){this._drawingGroup=e,this._continuousDrawingManager=i,this._kernelZoomFactor=r,this.update()}update(){this._initCircle(),this._updateCircle()}_initCircle(){if(this._circleMesh)return;const e=70/this._kernelZoomFactor/1e3,i=new RingGeometry(e,e+e/50,32),r=new MeshBasicMaterial({color:10066329,side:DoubleSide});this._circleMesh=new Mesh(i,r),this._circleMesh.name="Circle",this._circleMesh.rotation.set(Math.PI/2,0,0),this._circleMesh.visible=this._continuousDrawingManager.shouldShowCircle(),this._drawingGroup.add(this._circleMesh)}_updateCircle(){if(!this._circleMesh)return;const e=70/this._kernelZoomFactor/1e3;if(e!==this._currentInnerRadius){const i=e+e/50;this._circleMesh.geometry=new RingGeometry(e,i,32)}const i=convertToTHREE(this._continuousDrawingManager.getStartPoint());i.y=5,this._circleMesh.position.copy(i),this._circleMesh.visible=this._continuousDrawingManager.shouldShowCircle(),this._currentInnerRadius=e}setKernelZoomFactor(e){this._kernelZoomFactor=e}endDrawing(){this._drawingGroup.remove(this._circleMesh),this._circleMesh=null}}export{ContinuousDrawingHelper as default};
2
+ //# sourceMappingURL=continuous-drawing-helper-ee575a14.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"continuous-drawing-helper-ee575a14.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- import{L as LightSetting}from"./scene-manager-acf89a5e.js";import{Z as getGUI}from"./roomle-dependency-injection-6e666b06.js";import{D as DirectionalLight,C as Color,V as Vector2,a as Vector3,A as AmbientLight}from"./main-thread-to-worker-c12b58a4.js";class DefaultLightSetting extends LightSetting{constructor(i,t){super(i,t),this._params={ambientLight:{color:"#ffffff"},mainDirLight:{position:{x:-3,y:4,z:4},color:"#ffffff"},secondDirLight:{position:{x:3,y:4,z:3},color:"#ffffff"}},this._mainDirectionalLight=new DirectionalLight(new Color(this._params.mainDirLight.color),.8),this._mainDirectionalLight.position.set(this._params.mainDirLight.position.x,this._params.mainDirLight.position.y,this._params.mainDirLight.position.z),this._mainDirectionalLight.layers.set(1),this._mainDirectionalLight.castShadow=!0,this._mainDirectionalLight.shadow.camera.near=.1,this._mainDirectionalLight.shadow.camera.far=100,this._mainDirectionalLight.shadow.mapSize=new Vector2(1024,1024),this._mainDirectionalLight.visible=!0,this._mainDirectionalLight.lookAt(new Vector3(0,0,0)),this._secondDirectionalLight=new DirectionalLight(new Color(this._params.secondDirLight.color),.2),this._secondDirectionalLight.position.set(this._params.secondDirLight.position.x,this._params.secondDirLight.position.y,this._params.secondDirLight.position.z),this._secondDirectionalLight.layers.set(1),this._secondDirectionalLight.castShadow=!1,this._secondDirectionalLight.shadow.camera.near=.1,this._secondDirectionalLight.shadow.camera.far=100,this._secondDirectionalLight.shadow.mapSize=new Vector2(1024,1024),this._secondDirectionalLight.visible=!0,this._secondDirectionalLight.lookAt(new Vector3(0,0,0)),this._ambientLight=new AmbientLight(new Color(this._params.ambientLight.color),.5),this._ambientLight.layers.set(1),this.addToScene()}needsBounds(){return!0}updateBounds(i){const t=i.getSize(new Vector3),a=Math.max(Math.max(t.x,t.y),t.z)+1,e=a/2;this._mainDirectionalLight.shadow.camera.top=e,this._mainDirectionalLight.shadow.camera.bottom=-e,this._mainDirectionalLight.shadow.camera.left=-e,this._mainDirectionalLight.shadow.camera.right=e,this._mainDirectionalLight.shadow.camera.near=.01,this._mainDirectionalLight.shadow.camera.far=4*a,this._mainDirectionalLight.shadow.camera.updateProjectionMatrix(),this._secondDirectionalLight.shadow.camera.top=e,this._secondDirectionalLight.shadow.camera.bottom=-e,this._secondDirectionalLight.shadow.camera.left=-e,this._secondDirectionalLight.shadow.camera.right=e,this._secondDirectionalLight.shadow.camera.near=.01,this._secondDirectionalLight.shadow.camera.far=4*a,this._secondDirectionalLight.shadow.camera.updateProjectionMatrix()}addToScene(){this._scene.add(this._mainDirectionalLight),this._scene.add(this._secondDirectionalLight),this._scene.add(this._ambientLight)}removeFromScene(){this._scene.remove(this._mainDirectionalLight),this._scene.remove(this._secondDirectionalLight),this._scene.remove(this._ambientLight)}reload(){this.removeFromScene(),this.addToScene()}showGUI(){let i=getGUI();if(i){if(this._ambientLight){let t=i.addFolder("Ambient Light");t.add(this._ambientLight,"visible"),t.add(this._ambientLight,"intensity").min(0).max(5).step(.1),t.addColor(this._params.ambientLight,"color").onChange(i=>this._ambientLight.color=new Color(i))}if(this._mainDirectionalLight){let t=i.addFolder("Main Directional Light");t.add(this._mainDirectionalLight,"visible"),t.add(this._mainDirectionalLight,"intensity").min(0).max(10).step(.1),t.add(this._mainDirectionalLight,"castShadow"),t.addColor(this._params.mainDirLight,"color").onChange(i=>this._mainDirectionalLight.color=new Color(i)),t.add(this._mainDirectionalLight.position,"x").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0))),t.add(this._mainDirectionalLight.position,"y").min(-10).max(50).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0))),t.add(this._mainDirectionalLight.position,"z").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0)))}if(this._secondDirectionalLight){let t=i.addFolder("Second Directional Light");t.add(this._secondDirectionalLight,"visible"),t.add(this._secondDirectionalLight,"intensity").min(0).max(10).step(.1),t.add(this._secondDirectionalLight,"castShadow"),t.addColor(this._params.mainDirLight,"color").onChange(i=>this._mainDirectionalLight.color=new Color(i)),t.add(this._secondDirectionalLight.position,"x").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0))),t.add(this._secondDirectionalLight.position,"y").min(-10).max(50).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0))),t.add(this._secondDirectionalLight.position,"z").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0)))}}}}export{DefaultLightSetting as D};
2
- //# sourceMappingURL=default-light-setting-97e2aec6.js.map
1
+ import{L as LightSetting}from"./scene-manager-7cb2a238.js";import{Z as getGUI}from"./roomle-dependency-injection-6d996d97.js";import{D as DirectionalLight,C as Color,V as Vector2,a as Vector3,A as AmbientLight}from"./main-thread-to-worker-d5d5841d.js";class DefaultLightSetting extends LightSetting{constructor(i,t){super(i,t),this._params={ambientLight:{color:"#ffffff"},mainDirLight:{position:{x:-3,y:4,z:4},color:"#ffffff"},secondDirLight:{position:{x:3,y:4,z:3},color:"#ffffff"}},this._mainDirectionalLight=new DirectionalLight(new Color(this._params.mainDirLight.color),.8),this._mainDirectionalLight.position.set(this._params.mainDirLight.position.x,this._params.mainDirLight.position.y,this._params.mainDirLight.position.z),this._mainDirectionalLight.layers.set(1),this._mainDirectionalLight.castShadow=!0,this._mainDirectionalLight.shadow.camera.near=.1,this._mainDirectionalLight.shadow.camera.far=100,this._mainDirectionalLight.shadow.mapSize=new Vector2(1024,1024),this._mainDirectionalLight.visible=!0,this._mainDirectionalLight.lookAt(new Vector3(0,0,0)),this._secondDirectionalLight=new DirectionalLight(new Color(this._params.secondDirLight.color),.2),this._secondDirectionalLight.position.set(this._params.secondDirLight.position.x,this._params.secondDirLight.position.y,this._params.secondDirLight.position.z),this._secondDirectionalLight.layers.set(1),this._secondDirectionalLight.castShadow=!1,this._secondDirectionalLight.shadow.camera.near=.1,this._secondDirectionalLight.shadow.camera.far=100,this._secondDirectionalLight.shadow.mapSize=new Vector2(1024,1024),this._secondDirectionalLight.visible=!0,this._secondDirectionalLight.lookAt(new Vector3(0,0,0)),this._ambientLight=new AmbientLight(new Color(this._params.ambientLight.color),.5),this._ambientLight.layers.set(1),this.addToScene()}needsBounds(){return!0}updateBounds(i){const t=i.getSize(new Vector3),a=Math.max(Math.max(t.x,t.y),t.z)+1,o=a/2;this._mainDirectionalLight.shadow.camera.top=o,this._mainDirectionalLight.shadow.camera.bottom=-o,this._mainDirectionalLight.shadow.camera.left=-o,this._mainDirectionalLight.shadow.camera.right=o,this._mainDirectionalLight.shadow.camera.near=.01,this._mainDirectionalLight.shadow.camera.far=4*a,this._mainDirectionalLight.shadow.camera.updateProjectionMatrix(),this._secondDirectionalLight.shadow.camera.top=o,this._secondDirectionalLight.shadow.camera.bottom=-o,this._secondDirectionalLight.shadow.camera.left=-o,this._secondDirectionalLight.shadow.camera.right=o,this._secondDirectionalLight.shadow.camera.near=.01,this._secondDirectionalLight.shadow.camera.far=4*a,this._secondDirectionalLight.shadow.camera.updateProjectionMatrix()}addToScene(){this._scene.add(this._mainDirectionalLight),this._scene.add(this._secondDirectionalLight),this._scene.add(this._ambientLight)}removeFromScene(){this._scene.remove(this._mainDirectionalLight),this._scene.remove(this._secondDirectionalLight),this._scene.remove(this._ambientLight)}reload(){this.removeFromScene(),this.addToScene()}showGUI(){let i=getGUI();if(i){if(this._ambientLight){let t=i.addFolder("Ambient Light");t.add(this._ambientLight,"visible"),t.add(this._ambientLight,"intensity").min(0).max(5).step(.1),t.addColor(this._params.ambientLight,"color").onChange(i=>this._ambientLight.color=new Color(i))}if(this._mainDirectionalLight){let t=i.addFolder("Main Directional Light");t.add(this._mainDirectionalLight,"visible"),t.add(this._mainDirectionalLight,"intensity").min(0).max(10).step(.1),t.add(this._mainDirectionalLight,"castShadow"),t.addColor(this._params.mainDirLight,"color").onChange(i=>this._mainDirectionalLight.color=new Color(i)),t.add(this._mainDirectionalLight.position,"x").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0))),t.add(this._mainDirectionalLight.position,"y").min(-10).max(50).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0))),t.add(this._mainDirectionalLight.position,"z").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0)))}if(this._secondDirectionalLight){let t=i.addFolder("Second Directional Light");t.add(this._secondDirectionalLight,"visible"),t.add(this._secondDirectionalLight,"intensity").min(0).max(10).step(.1),t.add(this._secondDirectionalLight,"castShadow"),t.addColor(this._params.mainDirLight,"color").onChange(i=>this._mainDirectionalLight.color=new Color(i)),t.add(this._secondDirectionalLight.position,"x").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0))),t.add(this._secondDirectionalLight.position,"y").min(-10).max(50).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0))),t.add(this._secondDirectionalLight.position,"z").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new Vector3(0,0,0)))}}}}export{DefaultLightSetting as D};
2
+ //# sourceMappingURL=default-light-setting-5c69a7cc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-light-setting-5c69a7cc.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- System.register(["./scene-manager-cbd97bf8.nomodule.js","./roomle-dependency-injection-ab12a554.nomodule.js","./main-thread-to-worker-592260bb.nomodule.js"],(function(i){var t,a,e,n,o,s,h;return{setters:[function(i){t=i.L},function(i){a=i.Z},function(i){e=i.D,n=i.C,o=i.V,s=i.a,h=i.A}],execute:function(){i("D",class extends t{constructor(i,t){super(i,t),this._params={ambientLight:{color:"#ffffff"},mainDirLight:{position:{x:-3,y:4,z:4},color:"#ffffff"},secondDirLight:{position:{x:3,y:4,z:3},color:"#ffffff"}},this._mainDirectionalLight=new e(new n(this._params.mainDirLight.color),.8),this._mainDirectionalLight.position.set(this._params.mainDirLight.position.x,this._params.mainDirLight.position.y,this._params.mainDirLight.position.z),this._mainDirectionalLight.layers.set(1),this._mainDirectionalLight.castShadow=!0,this._mainDirectionalLight.shadow.camera.near=.1,this._mainDirectionalLight.shadow.camera.far=100,this._mainDirectionalLight.shadow.mapSize=new o(1024,1024),this._mainDirectionalLight.visible=!0,this._mainDirectionalLight.lookAt(new s(0,0,0)),this._secondDirectionalLight=new e(new n(this._params.secondDirLight.color),.2),this._secondDirectionalLight.position.set(this._params.secondDirLight.position.x,this._params.secondDirLight.position.y,this._params.secondDirLight.position.z),this._secondDirectionalLight.layers.set(1),this._secondDirectionalLight.castShadow=!1,this._secondDirectionalLight.shadow.camera.near=.1,this._secondDirectionalLight.shadow.camera.far=100,this._secondDirectionalLight.shadow.mapSize=new o(1024,1024),this._secondDirectionalLight.visible=!0,this._secondDirectionalLight.lookAt(new s(0,0,0)),this._ambientLight=new h(new n(this._params.ambientLight.color),.5),this._ambientLight.layers.set(1),this.addToScene()}needsBounds(){return!0}updateBounds(i){const t=i.getSize(new s),a=Math.max(Math.max(t.x,t.y),t.z)+1,e=a/2;this._mainDirectionalLight.shadow.camera.top=e,this._mainDirectionalLight.shadow.camera.bottom=-e,this._mainDirectionalLight.shadow.camera.left=-e,this._mainDirectionalLight.shadow.camera.right=e,this._mainDirectionalLight.shadow.camera.near=.01,this._mainDirectionalLight.shadow.camera.far=4*a,this._mainDirectionalLight.shadow.camera.updateProjectionMatrix(),this._secondDirectionalLight.shadow.camera.top=e,this._secondDirectionalLight.shadow.camera.bottom=-e,this._secondDirectionalLight.shadow.camera.left=-e,this._secondDirectionalLight.shadow.camera.right=e,this._secondDirectionalLight.shadow.camera.near=.01,this._secondDirectionalLight.shadow.camera.far=4*a,this._secondDirectionalLight.shadow.camera.updateProjectionMatrix()}addToScene(){this._scene.add(this._mainDirectionalLight),this._scene.add(this._secondDirectionalLight),this._scene.add(this._ambientLight)}removeFromScene(){this._scene.remove(this._mainDirectionalLight),this._scene.remove(this._secondDirectionalLight),this._scene.remove(this._ambientLight)}reload(){this.removeFromScene(),this.addToScene()}showGUI(){let i=a();if(i){if(this._ambientLight){let t=i.addFolder("Ambient Light");t.add(this._ambientLight,"visible"),t.add(this._ambientLight,"intensity").min(0).max(5).step(.1),t.addColor(this._params.ambientLight,"color").onChange(i=>this._ambientLight.color=new n(i))}if(this._mainDirectionalLight){let t=i.addFolder("Main Directional Light");t.add(this._mainDirectionalLight,"visible"),t.add(this._mainDirectionalLight,"intensity").min(0).max(10).step(.1),t.add(this._mainDirectionalLight,"castShadow"),t.addColor(this._params.mainDirLight,"color").onChange(i=>this._mainDirectionalLight.color=new n(i)),t.add(this._mainDirectionalLight.position,"x").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new s(0,0,0))),t.add(this._mainDirectionalLight.position,"y").min(-10).max(50).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new s(0,0,0))),t.add(this._mainDirectionalLight.position,"z").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new s(0,0,0)))}if(this._secondDirectionalLight){let t=i.addFolder("Second Directional Light");t.add(this._secondDirectionalLight,"visible"),t.add(this._secondDirectionalLight,"intensity").min(0).max(10).step(.1),t.add(this._secondDirectionalLight,"castShadow"),t.addColor(this._params.mainDirLight,"color").onChange(i=>this._mainDirectionalLight.color=new n(i)),t.add(this._secondDirectionalLight.position,"x").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new s(0,0,0))),t.add(this._secondDirectionalLight.position,"y").min(-10).max(50).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new s(0,0,0))),t.add(this._secondDirectionalLight.position,"z").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new s(0,0,0)))}}}})}}}));
2
- //# sourceMappingURL=default-light-setting-99a7eab4.nomodule.js.map
1
+ System.register(["./scene-manager-1405da14.nomodule.js","./roomle-dependency-injection-99c0d447.nomodule.js","./main-thread-to-worker-cce716d1.nomodule.js"],(function(i){var t,a,e,n,o,s,h;return{setters:[function(i){t=i.L},function(i){a=i.Z},function(i){e=i.D,n=i.C,o=i.V,s=i.a,h=i.A}],execute:function(){i("D",class extends t{constructor(i,t){super(i,t),this._params={ambientLight:{color:"#ffffff"},mainDirLight:{position:{x:-3,y:4,z:4},color:"#ffffff"},secondDirLight:{position:{x:3,y:4,z:3},color:"#ffffff"}},this._mainDirectionalLight=new e(new n(this._params.mainDirLight.color),.8),this._mainDirectionalLight.position.set(this._params.mainDirLight.position.x,this._params.mainDirLight.position.y,this._params.mainDirLight.position.z),this._mainDirectionalLight.layers.set(1),this._mainDirectionalLight.castShadow=!0,this._mainDirectionalLight.shadow.camera.near=.1,this._mainDirectionalLight.shadow.camera.far=100,this._mainDirectionalLight.shadow.mapSize=new o(1024,1024),this._mainDirectionalLight.visible=!0,this._mainDirectionalLight.lookAt(new s(0,0,0)),this._secondDirectionalLight=new e(new n(this._params.secondDirLight.color),.2),this._secondDirectionalLight.position.set(this._params.secondDirLight.position.x,this._params.secondDirLight.position.y,this._params.secondDirLight.position.z),this._secondDirectionalLight.layers.set(1),this._secondDirectionalLight.castShadow=!1,this._secondDirectionalLight.shadow.camera.near=.1,this._secondDirectionalLight.shadow.camera.far=100,this._secondDirectionalLight.shadow.mapSize=new o(1024,1024),this._secondDirectionalLight.visible=!0,this._secondDirectionalLight.lookAt(new s(0,0,0)),this._ambientLight=new h(new n(this._params.ambientLight.color),.5),this._ambientLight.layers.set(1),this.addToScene()}needsBounds(){return!0}updateBounds(i){const t=i.getSize(new s),a=Math.max(Math.max(t.x,t.y),t.z)+1,e=a/2;this._mainDirectionalLight.shadow.camera.top=e,this._mainDirectionalLight.shadow.camera.bottom=-e,this._mainDirectionalLight.shadow.camera.left=-e,this._mainDirectionalLight.shadow.camera.right=e,this._mainDirectionalLight.shadow.camera.near=.01,this._mainDirectionalLight.shadow.camera.far=4*a,this._mainDirectionalLight.shadow.camera.updateProjectionMatrix(),this._secondDirectionalLight.shadow.camera.top=e,this._secondDirectionalLight.shadow.camera.bottom=-e,this._secondDirectionalLight.shadow.camera.left=-e,this._secondDirectionalLight.shadow.camera.right=e,this._secondDirectionalLight.shadow.camera.near=.01,this._secondDirectionalLight.shadow.camera.far=4*a,this._secondDirectionalLight.shadow.camera.updateProjectionMatrix()}addToScene(){this._scene.add(this._mainDirectionalLight),this._scene.add(this._secondDirectionalLight),this._scene.add(this._ambientLight)}removeFromScene(){this._scene.remove(this._mainDirectionalLight),this._scene.remove(this._secondDirectionalLight),this._scene.remove(this._ambientLight)}reload(){this.removeFromScene(),this.addToScene()}showGUI(){let i=a();if(i){if(this._ambientLight){let t=i.addFolder("Ambient Light");t.add(this._ambientLight,"visible"),t.add(this._ambientLight,"intensity").min(0).max(5).step(.1),t.addColor(this._params.ambientLight,"color").onChange(i=>this._ambientLight.color=new n(i))}if(this._mainDirectionalLight){let t=i.addFolder("Main Directional Light");t.add(this._mainDirectionalLight,"visible"),t.add(this._mainDirectionalLight,"intensity").min(0).max(10).step(.1),t.add(this._mainDirectionalLight,"castShadow"),t.addColor(this._params.mainDirLight,"color").onChange(i=>this._mainDirectionalLight.color=new n(i)),t.add(this._mainDirectionalLight.position,"x").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new s(0,0,0))),t.add(this._mainDirectionalLight.position,"y").min(-10).max(50).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new s(0,0,0))),t.add(this._mainDirectionalLight.position,"z").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new s(0,0,0)))}if(this._secondDirectionalLight){let t=i.addFolder("Second Directional Light");t.add(this._secondDirectionalLight,"visible"),t.add(this._secondDirectionalLight,"intensity").min(0).max(10).step(.1),t.add(this._secondDirectionalLight,"castShadow"),t.addColor(this._params.mainDirLight,"color").onChange(i=>this._mainDirectionalLight.color=new n(i)),t.add(this._secondDirectionalLight.position,"x").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new s(0,0,0))),t.add(this._secondDirectionalLight.position,"y").min(-10).max(50).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new s(0,0,0))),t.add(this._secondDirectionalLight.position,"z").min(-10).max(10).step(.1).onChange(()=>this._mainDirectionalLight.lookAt(new s(0,0,0)))}}}})}}}));
2
+ //# sourceMappingURL=default-light-setting-e93b3006.nomodule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-light-setting-e93b3006.nomodule.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -3,7 +3,6 @@ export declare const MOCK_ROOMLE_RENDERER: {
3
3
  enableUiInteractionMode(): void;
4
4
  disableUiInteractionMode(): void;
5
5
  forceShadowUpdates: () => void;
6
- createShadowFromEnvironmentMap: () => void;
7
6
  render: () => number;
8
7
  renderer: {
9
8
  render: () => number;
@@ -77,6 +77,6 @@ export interface EnvironmentSetting {
77
77
  }
78
78
  export default class DynamicEnvironmentSettingLoader {
79
79
  private _rapiAccess;
80
- parse(scene: Scene, canvas: HTMLCanvasElement, oldEnvironment: Environment, json: string, maxAnisotropy: number, envMapIntensity: number): Promise<Environment>;
81
- load(scene: Scene, canvas: HTMLCanvasElement, oldEnvironment: Environment, jsonObject: SceneSettings, maxAnisotropy: number, envMapIntensity: number): Promise<Environment>;
80
+ parse(scene: Scene, canvas: HTMLCanvasElement, oldEnvironment: Environment, json: string, maxAnisotropy: number): Promise<Environment>;
81
+ load(scene: Scene, canvas: HTMLCanvasElement, oldEnvironment: Environment, jsonObject: SceneSettings, maxAnisotropy: number): Promise<Environment>;
82
82
  }
@@ -4,6 +4,24 @@ import type RapiAccess from './rapi-access';
4
4
  import type { CanvasOffset } from './common-interfaces';
5
5
  import type UnitFormatter from '../../configurator-core/src/services/unit-formatter';
6
6
  import type { Scene } from 'three';
7
+ export interface EnvMapParams {
8
+ /**
9
+ * url of the env map (exr or hdr)
10
+ */
11
+ url?: string;
12
+ /**
13
+ * intensity of the env map (brightness of the scene). recommended value between 0.5 and 2
14
+ */
15
+ intensity?: number;
16
+ /**
17
+ * rotation of the environment map, influences also shadow direction
18
+ */
19
+ rotation?: number;
20
+ /**
21
+ * maximum number of light sources (and thus shadows) extracted form the env map
22
+ */
23
+ maxLightSources?: number;
24
+ }
7
25
  export interface GlobalAPI {
8
26
  updateSize(): void;
9
27
  getMain(): Main;
@@ -30,6 +48,7 @@ export interface GlobalAPI {
30
48
  */
31
49
  getCameraOffset(): CanvasOffset;
32
50
  getUnitFormatter(): UnitFormatter;
51
+ setEnvironmentMap(params: EnvMapParams): void;
33
52
  }
34
53
  /**
35
54
  * Shared API between configurator and planner
@@ -2,6 +2,7 @@ import '../../../typings/global-definitions';
2
2
  import type { RapiItem, RapiMaterial, RapiTexture } from '../../../typings/rapi-types';
3
3
  import type { KernelFloorMaterial, KernelWallMaterial } from '../../../typings/planner';
4
4
  import type { BatchPaintMaterial } from '../../../planner-core/src/roomle-planner';
5
+ import { Color } from 'three';
5
6
  import type { CameraParameter } from '../cameracontrol/camera-control';
6
7
  export declare const enum CURSOR_STYLE {
7
8
  HOVER = "pointer",
@@ -12,12 +13,20 @@ export declare const enum CURSOR_STYLE {
12
13
  DRAW = "url('https://res.cloudinary.com/roomle/image/upload/v1664957371/pencil_j5vkhm.svg') 3 20, auto",
13
14
  DRAW_FALLBACK = "url('https://res.cloudinary.com/roomle/image/upload/v1664957371/pencil_j5vkhm.svg') 0 15, auto"
14
15
  }
16
+ /**
17
+ * Colors can be set as hex value, eg 0x00ff00 or as official HTML color name: https://www.w3schools.com/colors/colors_names.asp
18
+ */
15
19
  export declare const ROOMLE_COLORS: {
16
- PRIMARY: string;
17
- ON_PRIMARY: string;
18
- DEFAULT_BACKGROUND: string;
19
- SELECTION: string;
20
- PREVIEW_DOCKING_COLOR: string;
20
+ PRIMARY: number;
21
+ ON_PRIMARY: number;
22
+ DEFAULT_BACKGROUND: number;
23
+ SELECTION: number;
24
+ PREVIEW_DOCKING_COLOR: number;
25
+ };
26
+ export declare const ROOMLE_HIGHLIGHTNG: {
27
+ SMART: string;
28
+ OFF: string;
29
+ ALWAYS: string;
21
30
  };
22
31
  export declare const setCursor: (style: CURSOR_STYLE) => void;
23
32
  export declare const handleJsonResponse: (response: Response) => Promise<any>;
@@ -61,6 +70,8 @@ export declare const isWebGl2: () => boolean;
61
70
  * @param name the tag under which it will be logged
62
71
  */
63
72
  export declare const traceMethodCalls: (obj: object, name: string) => any;
73
+ export declare const getColor: (value: string | number) => Color;
74
+ export declare const isHex: (num: string) => boolean;
64
75
  export declare const parseColorToHexDecimal: (color: string) => number;
65
76
  /**
66
77
  * Copies the properties of an incoming material to a kernel material, used mainly
@@ -1,6 +1,6 @@
1
1
  import type { CommonInitData, ConfiguratorInitData, FeatureFlags, InitDataDefinition, PlannerInitData } from './shims';
2
2
  import type { Context } from '../di/context';
3
- import { ROOMLE_COLORS } from './common-utils';
3
+ import { ROOMLE_COLORS, ROOMLE_HIGHLIGHTNG } from './common-utils';
4
4
  import type { RapiId } from '../../../typings/rapi-types';
5
5
  import type { CanvasOffset } from '../common-interfaces';
6
6
  import type { MEASUREMENT_SYSTEM_STRING } from '../../../configurator-core/src/services/unit-formatter';
@@ -34,9 +34,12 @@ export default class InitData implements Context, CommonInitData, ConfiguratorIn
34
34
  disableEnvMap?: boolean;
35
35
  envMapUrl?: string;
36
36
  envMapIntensity?: number;
37
+ envMapRotation?: number;
38
+ maxLightSources?: number;
37
39
  legacyLight?: boolean;
38
40
  restrictionLevel?: number;
39
41
  offlineSync?: string;
42
+ highlighting?: Enumify<typeof ROOMLE_HIGHLIGHTNG>;
40
43
  initialFloorMaterial?: string;
41
44
  dls?: string;
42
45
  ls?: string;
@@ -1,12 +1,9 @@
1
1
  import { MeshPhysicalMaterial, MeshStandardMaterial } from 'three';
2
2
  export default class MaterialCreator {
3
- private static _envMapIntensity;
4
- static setEnvMapIntensity(envMapIntensity: number): void;
5
3
  static createMeshPhysicalMaterial(params: {
6
4
  [key: string]: any;
7
5
  }): MeshPhysicalMaterial;
8
6
  static createMeshStandardMaterial(params: {
9
7
  [key: string]: any;
10
8
  }): MeshStandardMaterial;
11
- static getEnvMapIntensity(): number;
12
9
  }
@@ -3,6 +3,7 @@ import type { ROOMLE_COLORS } from './common-utils';
3
3
  import type { RapiId, RapiServerUrlType } from '../../../typings/rapi-types';
4
4
  import type { CAMERA_TYPE } from '../cameracontrol/camera-type';
5
5
  import type { Enumify } from '../types';
6
+ import type { ROOMLE_HIGHLIGHTNG } from './common-utils';
6
7
  export declare const enum WINDOW_EVENT {
7
8
  RESIZE = "resize",
8
9
  KEY_DOWN = "keydown",
@@ -192,6 +193,14 @@ export interface CommonInitData {
192
193
  * Set the intensity of the environment map
193
194
  */
194
195
  envMapIntensity?: number;
196
+ /**
197
+ * Set the rotation of the environment map in radians, between 0 and 2 * PI, rotates counter-clockwise
198
+ */
199
+ envMapRotation?: number;
200
+ /**
201
+ * Set the maximum number of light sources extracted from the environment map
202
+ */
203
+ maxLightSources?: number;
195
204
  /**
196
205
  * Use old light setting instead of env maps
197
206
  */
@@ -207,6 +216,11 @@ export interface ConfiguratorInitData {
207
216
  * Download all necessary files to run the configurator in offline mode
208
217
  */
209
218
  offlineSync?: string;
219
+ /**
220
+ * Sets the behavior of the highlighting of a hovered component.
221
+ * usage: highlighting=smart
222
+ */
223
+ highlighting?: Enumify<typeof ROOMLE_HIGHLIGHTNG>;
210
224
  /**
211
225
  * Set the floor material which is used when loading the configurator
212
226
  * For different options see {@link @roomle/web-sdk/common-core/src/environment/dynamic-environment-setting-loader#EnvironmentSetting}
@@ -23,8 +23,8 @@ export declare const rotationQuaternionsAreEqual: (a: Quaternion, b: Quaternion)
23
23
  export declare const position2VectorsAreEqual: (a: Vector2, b: Vector2) => boolean;
24
24
  export declare const createColorTexture: (red: number, green: number, blue: number, alpha: number) => DataTexture;
25
25
  export declare const createColorCubeTexture: (red: number, green: number, blue: number, alpha: number) => CubeTexture;
26
- export declare const createMaterial: (material: RapiMaterial, envMapIntensity: number) => MeshPhysicalMaterial;
27
- export declare const setMaterial: (meshPhysicalMaterial: MeshPhysicalMaterial, rapiMaterial: RapiMaterial, envMapIntensity: number) => MeshPhysicalMaterial;
26
+ export declare const createMaterial: (material: RapiMaterial) => MeshPhysicalMaterial;
27
+ export declare const setMaterial: (meshPhysicalMaterial: MeshPhysicalMaterial, rapiMaterial: RapiMaterial) => MeshPhysicalMaterial;
28
28
  export declare const getMaterialShading: (material: MeshPhysicalMaterial) => RapiMaterialShading;
29
29
  export declare const logColor: (color: Color) => void;
30
30
  export declare const createTexture: (texture: Texture, rapiTexture: RapiTexture, width: number, height: number, maxAnisotropy: number) => Texture;