@roomle/web-sdk 2.79.0 → 2.80.0-alpha.2

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 (234) hide show
  1. package/lib/{banana-for-scale-ce3eda5d.js → banana-for-scale-12147338.js} +2 -2
  2. package/lib/{banana-for-scale-ce3eda5d.js.map → banana-for-scale-12147338.js.map} +1 -1
  3. package/lib/{banana-for-scale-d5213ac7.nomodule.js → banana-for-scale-8c9b8e0d.nomodule.js} +2 -2
  4. package/lib/{banana-for-scale-d5213ac7.nomodule.js.map → banana-for-scale-8c9b8e0d.nomodule.js.map} +1 -1
  5. package/lib/{camera-behaviour-956df474.nomodule.js → camera-behaviour-1b0b7853.nomodule.js} +2 -2
  6. package/lib/{camera-behaviour-956df474.nomodule.js.map → camera-behaviour-1b0b7853.nomodule.js.map} +1 -1
  7. package/lib/{camera-behaviour-265f1725.js → camera-behaviour-4d4e7e7c.js} +2 -2
  8. package/lib/{camera-behaviour-265f1725.js.map → camera-behaviour-4d4e7e7c.js.map} +1 -1
  9. package/lib/{component-dimensioning-211401c5.nomodule.js → component-dimensioning-36a1e68e.nomodule.js} +2 -2
  10. package/lib/component-dimensioning-36a1e68e.nomodule.js.map +1 -0
  11. package/lib/{component-dimensioning-208d190d.js → component-dimensioning-bdbf6729.js} +2 -2
  12. package/lib/component-dimensioning-bdbf6729.js.map +1 -0
  13. package/lib/{component-raycast-helper-76a73fd4.js → component-raycast-helper-40363857.js} +2 -2
  14. package/lib/component-raycast-helper-40363857.js.map +1 -0
  15. package/lib/{component-raycast-helper-d36606a4.nomodule.js → component-raycast-helper-67f9a0e9.nomodule.js} +2 -2
  16. package/lib/component-raycast-helper-67f9a0e9.nomodule.js.map +1 -0
  17. package/lib/{configurator-b03fe279.nomodule.js → configurator-04e3b0ec.nomodule.js} +2 -2
  18. package/lib/configurator-04e3b0ec.nomodule.js.map +1 -0
  19. package/lib/{configurator-db209442.js → configurator-7fce117f.js} +2 -2
  20. package/lib/configurator-7fce117f.js.map +1 -0
  21. package/lib/configurator-main-16e36fb1.js +2 -0
  22. package/lib/configurator-main-16e36fb1.js.map +1 -0
  23. package/lib/configurator-main.nomodule.js +1 -1
  24. package/lib/{continuous-drawing-helper-304c9678.js → continuous-drawing-helper-094fdf93.js} +2 -2
  25. package/lib/continuous-drawing-helper-094fdf93.js.map +1 -0
  26. package/lib/{continuous-drawing-helper-bf78cff1.nomodule.js → continuous-drawing-helper-f2aea1db.nomodule.js} +2 -2
  27. package/lib/continuous-drawing-helper-f2aea1db.nomodule.js.map +1 -0
  28. package/lib/{default-light-setting-c2fd567d.nomodule.js → default-light-setting-7f113f35.nomodule.js} +2 -2
  29. package/lib/default-light-setting-7f113f35.nomodule.js.map +1 -0
  30. package/lib/{default-light-setting-f34982ae.js → default-light-setting-ad52e6de.js} +2 -2
  31. package/lib/default-light-setting-ad52e6de.js.map +1 -0
  32. package/lib/definitions/common-core/src/configurator-kernel-access.d.ts +4 -1
  33. package/lib/definitions/common-core/src/services/common-kernel-access.d.ts +8 -4
  34. package/lib/definitions/common-core/src/utils/init-data.d.ts +1 -0
  35. package/lib/definitions/common-core/src/webgl/roomle-webgl-renderer.d.ts +1 -0
  36. package/lib/definitions/configurator-core/src/static-files/fonts.d.ts +2 -2
  37. package/lib/definitions/planner-core/src/roomle-planner.d.ts +1 -0
  38. package/lib/definitions/planner-core/src/view-model/wall-plan-element-view-model.d.ts +5 -2
  39. package/lib/definitions/planner-core/src/webgl/planner-scene-manager.d.ts +7 -0
  40. package/lib/definitions/typings/kernel.d.ts +25 -12
  41. package/lib/definitions/typings/planner.d.ts +2 -0
  42. package/lib/dimensioning-helper-7494fb28.js +2 -0
  43. package/lib/dimensioning-helper-7494fb28.js.map +1 -0
  44. package/lib/dimensioning-helper-b9377b93.nomodule.js +2 -0
  45. package/lib/dimensioning-helper-b9377b93.nomodule.js.map +1 -0
  46. package/lib/{glb-viewer-8f01091d.js → glb-viewer-039ccdb1.js} +2 -2
  47. package/lib/{glb-viewer-8f01091d.js.map → glb-viewer-039ccdb1.js.map} +1 -1
  48. package/lib/{glb-viewer-597ac257.nomodule.js → glb-viewer-0fd5cc99.nomodule.js} +2 -2
  49. package/lib/{glb-viewer-597ac257.nomodule.js.map → glb-viewer-0fd5cc99.nomodule.js.map} +1 -1
  50. package/lib/glb-viewer-camera-behaviour-21363fa3.js +2 -0
  51. package/lib/glb-viewer-camera-behaviour-21363fa3.js.map +1 -0
  52. package/lib/{glb-viewer-camera-behaviour-d7f286c3.nomodule.js → glb-viewer-camera-behaviour-c43375cf.nomodule.js} +2 -2
  53. package/lib/glb-viewer-camera-behaviour-c43375cf.nomodule.js.map +1 -0
  54. package/lib/glb-viewer-main-ca829f73.js +2 -0
  55. package/lib/glb-viewer-main-ca829f73.js.map +1 -0
  56. package/lib/glb-viewer-main.nomodule.js +1 -1
  57. package/lib/legacy/{banana-for-scale-18be7655.legacy.js → banana-for-scale-ade37173.legacy.js} +2 -2
  58. package/lib/legacy/{banana-for-scale-18be7655.legacy.js.map → banana-for-scale-ade37173.legacy.js.map} +1 -1
  59. package/lib/legacy/{camera-behaviour-e3581b58.legacy.js → camera-behaviour-ba624fdd.legacy.js} +2 -2
  60. package/lib/legacy/{camera-behaviour-e3581b58.legacy.js.map → camera-behaviour-ba624fdd.legacy.js.map} +1 -1
  61. package/lib/legacy/{component-dimensioning-0ff91d29.legacy.js → component-dimensioning-d6f65e0d.legacy.js} +2 -2
  62. package/lib/legacy/component-dimensioning-d6f65e0d.legacy.js.map +1 -0
  63. package/lib/legacy/{component-raycast-helper-b7f5e8bd.legacy.js → component-raycast-helper-f8241e23.legacy.js} +2 -2
  64. package/lib/legacy/component-raycast-helper-f8241e23.legacy.js.map +1 -0
  65. package/lib/legacy/{configurator-57934960.legacy.js → configurator-9881273c.legacy.js} +2 -2
  66. package/lib/legacy/configurator-9881273c.legacy.js.map +1 -0
  67. package/lib/legacy/configurator-main.legacy.js +1 -1
  68. package/lib/legacy/{continuous-drawing-helper-562124e1.legacy.js → continuous-drawing-helper-8f4235b4.legacy.js} +2 -2
  69. package/lib/legacy/continuous-drawing-helper-8f4235b4.legacy.js.map +1 -0
  70. package/lib/legacy/{default-light-setting-e77566a5.legacy.js → default-light-setting-1e175f7c.legacy.js} +2 -2
  71. package/lib/legacy/default-light-setting-1e175f7c.legacy.js.map +1 -0
  72. package/lib/legacy/dimensioning-helper-5c4c4754.legacy.js +2 -0
  73. package/lib/legacy/dimensioning-helper-5c4c4754.legacy.js.map +1 -0
  74. package/lib/legacy/{glb-viewer-ea6d3597.legacy.js → glb-viewer-53726809.legacy.js} +2 -2
  75. package/lib/legacy/{glb-viewer-ea6d3597.legacy.js.map → glb-viewer-53726809.legacy.js.map} +1 -1
  76. package/lib/legacy/{glb-viewer-camera-behaviour-5164a72d.legacy.js → glb-viewer-camera-behaviour-6f853358.legacy.js} +2 -2
  77. package/lib/legacy/glb-viewer-camera-behaviour-6f853358.legacy.js.map +1 -0
  78. package/lib/legacy/glb-viewer-main.legacy.js +1 -1
  79. package/lib/legacy/{material-viewer-6bffb50f.legacy.js → material-viewer-40206245.legacy.js} +2 -2
  80. package/lib/legacy/material-viewer-40206245.legacy.js.map +1 -0
  81. package/lib/legacy/material-viewer-main.legacy.js +1 -1
  82. package/lib/legacy/planner-20fc10ce.legacy.js +2 -0
  83. package/lib/legacy/{planner-a30ad695.legacy.js.map → planner-20fc10ce.legacy.js.map} +1 -1
  84. package/lib/legacy/planner-main.legacy.js +1 -1
  85. package/lib/legacy/{roomle-configurator-48f81f38.legacy.js → roomle-configurator-34ae3e86.legacy.js} +2 -2
  86. package/lib/legacy/roomle-configurator-34ae3e86.legacy.js.map +1 -0
  87. package/lib/legacy/{roomle-dependency-injection-3fd533e1.legacy.js → roomle-dependency-injection-3542b35a.legacy.js} +3 -3
  88. package/lib/legacy/roomle-dependency-injection-3542b35a.legacy.js.map +1 -0
  89. package/lib/legacy/roomle-sdk.legacy.js +1 -1
  90. package/lib/legacy/{script-loader-aa704ceb.legacy.js → script-loader-25518980.legacy.js} +2 -2
  91. package/lib/legacy/script-loader-25518980.legacy.js.map +1 -0
  92. package/lib/legacy/static/ConfiguratorKernel-d8ae2b5e3db74698.wasm +0 -0
  93. package/lib/legacy/static/ConfiguratorKernel-e3e0aeb0f3ad9a11.js +86 -0
  94. package/lib/legacy/static/RoomleCore-09101ce4c57050b0.wasm +0 -0
  95. package/lib/legacy/static/RoomleCore-34da59877c9fc80d.js +90 -0
  96. package/lib/legacy/static/RoomleToolsCore-19282746bbb98ca2.wasm +0 -0
  97. package/lib/legacy/static/RoomleToolsCore-b1b3c955c7b9feb4.js +86 -0
  98. package/lib/legacy/static/lato_regular-d4b30187185acc59.json +198 -0
  99. package/lib/legacy/static/lato_regular_sub-d4b30187185acc59.json +198 -0
  100. package/lib/legacy/{stats-helper-8b9445c9.legacy.js → stats-helper-4dd75b8d.legacy.js} +2 -2
  101. package/lib/legacy/stats-helper-4dd75b8d.legacy.js.map +1 -0
  102. package/lib/legacy/{tools-core-88221a7d.legacy.js → tools-core-5dd3b7d4.legacy.js} +2 -2
  103. package/lib/legacy/tools-core-5dd3b7d4.legacy.js.map +1 -0
  104. package/lib/{material-viewer-0fa4b211.nomodule.js → material-viewer-3271df96.nomodule.js} +2 -2
  105. package/lib/material-viewer-3271df96.nomodule.js.map +1 -0
  106. package/lib/{material-viewer-d7864d8f.js → material-viewer-8b817d3e.js} +2 -2
  107. package/lib/material-viewer-8b817d3e.js.map +1 -0
  108. package/lib/material-viewer-main-d05716e9.js +2 -0
  109. package/lib/material-viewer-main-d05716e9.js.map +1 -0
  110. package/lib/material-viewer-main.nomodule.js +1 -1
  111. package/lib/planner-75145ec2.nomodule.js +2 -0
  112. package/lib/{planner-b8464950.nomodule.js.map → planner-75145ec2.nomodule.js.map} +1 -1
  113. package/lib/planner-ce25224e.js +2 -0
  114. package/lib/{planner-76d8228a.js.map → planner-ce25224e.js.map} +1 -1
  115. package/lib/planner-main-f5484b07.js +2 -0
  116. package/lib/planner-main-f5484b07.js.map +1 -0
  117. package/lib/planner-main.nomodule.js +1 -1
  118. package/lib/{roomle-configurator-511db0e8.nomodule.js → roomle-configurator-96729652.nomodule.js} +2 -2
  119. package/lib/roomle-configurator-96729652.nomodule.js.map +1 -0
  120. package/lib/{roomle-configurator-5c1b1237.js → roomle-configurator-e867d909.js} +2 -2
  121. package/lib/roomle-configurator-e867d909.js.map +1 -0
  122. package/lib/{roomle-dependency-injection-1e356a73.js → roomle-dependency-injection-56db2f22.js} +3 -3
  123. package/lib/roomle-dependency-injection-56db2f22.js.map +1 -0
  124. package/lib/{roomle-dependency-injection-fe1cab4f.nomodule.js → roomle-dependency-injection-c12e4c00.nomodule.js} +3 -3
  125. package/lib/roomle-dependency-injection-c12e4c00.nomodule.js.map +1 -0
  126. package/lib/{roomle-sdk-f0dd3c93.js → roomle-sdk-d2dbfbba.js} +2 -2
  127. package/lib/roomle-sdk-d2dbfbba.js.map +1 -0
  128. package/lib/roomle-sdk.nomodule.js +1 -1
  129. package/lib/{script-loader-d1436ad4.nomodule.js → script-loader-98a17bbb.nomodule.js} +2 -2
  130. package/lib/script-loader-98a17bbb.nomodule.js.map +1 -0
  131. package/lib/{script-loader-d3f78a09.js → script-loader-ef092985.js} +2 -2
  132. package/lib/script-loader-ef092985.js.map +1 -0
  133. package/lib/static/ConfiguratorKernel-d8ae2b5e3db74698.wasm +0 -0
  134. package/lib/static/ConfiguratorKernel-e3e0aeb0f3ad9a11.js +86 -0
  135. package/lib/static/RoomleCore-09101ce4c57050b0.wasm +0 -0
  136. package/lib/static/RoomleCore-34da59877c9fc80d.js +90 -0
  137. package/lib/static/RoomleToolsCore-19282746bbb98ca2.wasm +0 -0
  138. package/lib/static/RoomleToolsCore-b1b3c955c7b9feb4.js +86 -0
  139. package/lib/static/Tween-d57ee5d181fce582.js +767 -1
  140. package/lib/static/asset-loader.worker-1735a5fb1e401244.js +2 -1
  141. package/lib/static/asset-loader.worker.js.map +1 -1
  142. package/lib/static/budgeteer.sw-a4a226d2fc19672e.js +2 -1
  143. package/lib/static/budgeteer.sw.js.map +1 -1
  144. package/lib/static/jszip.min-c96375d50e72b199.js +2 -1
  145. package/lib/static/lato_regular-d4b30187185acc59.json +198 -0
  146. package/lib/static/lato_regular_sub-d4b30187185acc59.json +198 -0
  147. package/lib/static/worker-to-main-thread-3ad1cee7.js.map +1 -1
  148. package/lib/{stats-helper-472e9163.js → stats-helper-c0748092.js} +2 -2
  149. package/lib/stats-helper-c0748092.js.map +1 -0
  150. package/lib/{stats-helper-18b27855.nomodule.js → stats-helper-efe5bf85.nomodule.js} +2 -2
  151. package/lib/stats-helper-efe5bf85.nomodule.js.map +1 -0
  152. package/lib/{tools-core-6f70168d.js → tools-core-2e800d36.js} +2 -2
  153. package/lib/tools-core-2e800d36.js.map +1 -0
  154. package/lib/{tools-core-e39e5ee7.nomodule.js → tools-core-c31d15d3.nomodule.js} +2 -2
  155. package/lib/tools-core-c31d15d3.nomodule.js.map +1 -0
  156. package/package.json +2 -2
  157. package/lib/component-dimensioning-208d190d.js.map +0 -1
  158. package/lib/component-dimensioning-211401c5.nomodule.js.map +0 -1
  159. package/lib/component-raycast-helper-76a73fd4.js.map +0 -1
  160. package/lib/component-raycast-helper-d36606a4.nomodule.js.map +0 -1
  161. package/lib/configurator-b03fe279.nomodule.js.map +0 -1
  162. package/lib/configurator-db209442.js.map +0 -1
  163. package/lib/configurator-main-8b004fb9.js +0 -2
  164. package/lib/configurator-main-8b004fb9.js.map +0 -1
  165. package/lib/continuous-drawing-helper-304c9678.js.map +0 -1
  166. package/lib/continuous-drawing-helper-bf78cff1.nomodule.js.map +0 -1
  167. package/lib/default-light-setting-c2fd567d.nomodule.js.map +0 -1
  168. package/lib/default-light-setting-f34982ae.js.map +0 -1
  169. package/lib/dimensioning-helper-17297085.js +0 -2
  170. package/lib/dimensioning-helper-17297085.js.map +0 -1
  171. package/lib/dimensioning-helper-32be2c2d.nomodule.js +0 -2
  172. package/lib/dimensioning-helper-32be2c2d.nomodule.js.map +0 -1
  173. package/lib/glb-viewer-camera-behaviour-3ef8c6cf.js +0 -2
  174. package/lib/glb-viewer-camera-behaviour-3ef8c6cf.js.map +0 -1
  175. package/lib/glb-viewer-camera-behaviour-d7f286c3.nomodule.js.map +0 -1
  176. package/lib/glb-viewer-main-009db5f6.js +0 -2
  177. package/lib/glb-viewer-main-009db5f6.js.map +0 -1
  178. package/lib/legacy/component-dimensioning-0ff91d29.legacy.js.map +0 -1
  179. package/lib/legacy/component-raycast-helper-b7f5e8bd.legacy.js.map +0 -1
  180. package/lib/legacy/configurator-57934960.legacy.js.map +0 -1
  181. package/lib/legacy/continuous-drawing-helper-562124e1.legacy.js.map +0 -1
  182. package/lib/legacy/default-light-setting-e77566a5.legacy.js.map +0 -1
  183. package/lib/legacy/dimensioning-helper-23fbd546.legacy.js +0 -2
  184. package/lib/legacy/dimensioning-helper-23fbd546.legacy.js.map +0 -1
  185. package/lib/legacy/glb-viewer-camera-behaviour-5164a72d.legacy.js.map +0 -1
  186. package/lib/legacy/material-viewer-6bffb50f.legacy.js.map +0 -1
  187. package/lib/legacy/planner-a30ad695.legacy.js +0 -2
  188. package/lib/legacy/roomle-configurator-48f81f38.legacy.js.map +0 -1
  189. package/lib/legacy/roomle-dependency-injection-3fd533e1.legacy.js.map +0 -1
  190. package/lib/legacy/script-loader-aa704ceb.legacy.js.map +0 -1
  191. package/lib/legacy/static/ConfiguratorKernel-177b506cdd3711c9.js +0 -95
  192. package/lib/legacy/static/ConfiguratorKernel-85781bb41f4ad73b.wasm +0 -0
  193. package/lib/legacy/static/RoomleCore-554c790f636abde3.js +0 -98
  194. package/lib/legacy/static/RoomleCore-72d11772d69ee987.wasm +0 -0
  195. package/lib/legacy/static/RoomleToolsCore-354feeb929ea1598.js +0 -92
  196. package/lib/legacy/static/RoomleToolsCore-785e6369dca13d78.wasm +0 -0
  197. package/lib/legacy/static/rubik_regular-bc008a7de2daee79.json +0 -3535
  198. package/lib/legacy/static/rubik_regular_sub-2dd2d5cca49018c5.json +0 -168
  199. package/lib/legacy/stats-helper-8b9445c9.legacy.js.map +0 -1
  200. package/lib/legacy/tools-core-88221a7d.legacy.js.map +0 -1
  201. package/lib/material-viewer-0fa4b211.nomodule.js.map +0 -1
  202. package/lib/material-viewer-d7864d8f.js.map +0 -1
  203. package/lib/material-viewer-main-c59f3c1b.js +0 -2
  204. package/lib/material-viewer-main-c59f3c1b.js.map +0 -1
  205. package/lib/planner-76d8228a.js +0 -2
  206. package/lib/planner-b8464950.nomodule.js +0 -2
  207. package/lib/planner-main-cf533850.js +0 -2
  208. package/lib/planner-main-cf533850.js.map +0 -1
  209. package/lib/roomle-configurator-511db0e8.nomodule.js.map +0 -1
  210. package/lib/roomle-configurator-5c1b1237.js.map +0 -1
  211. package/lib/roomle-dependency-injection-1e356a73.js.map +0 -1
  212. package/lib/roomle-dependency-injection-fe1cab4f.nomodule.js.map +0 -1
  213. package/lib/roomle-sdk-f0dd3c93.js.map +0 -1
  214. package/lib/script-loader-d1436ad4.nomodule.js.map +0 -1
  215. package/lib/script-loader-d3f78a09.js.map +0 -1
  216. package/lib/static/ConfiguratorKernel-177b506cdd3711c9.js +0 -1
  217. package/lib/static/ConfiguratorKernel-177b506cdd3711c9.js.map +0 -1
  218. package/lib/static/ConfiguratorKernel-85781bb41f4ad73b.wasm +0 -0
  219. package/lib/static/RoomleCore-554c790f636abde3.js +0 -1
  220. package/lib/static/RoomleCore-554c790f636abde3.js.map +0 -1
  221. package/lib/static/RoomleCore-72d11772d69ee987.wasm +0 -0
  222. package/lib/static/RoomleToolsCore-354feeb929ea1598.js +0 -1
  223. package/lib/static/RoomleToolsCore-354feeb929ea1598.js.map +0 -1
  224. package/lib/static/RoomleToolsCore-785e6369dca13d78.wasm +0 -0
  225. package/lib/static/Tween-d57ee5d181fce582.js.map +0 -1
  226. package/lib/static/asset-loader.worker-1735a5fb1e401244.js.map +0 -1
  227. package/lib/static/budgeteer.sw-a4a226d2fc19672e.js.map +0 -1
  228. package/lib/static/jszip.min-c96375d50e72b199.js.map +0 -1
  229. package/lib/static/rubik_regular-bc008a7de2daee79.json +0 -3535
  230. package/lib/static/rubik_regular_sub-2dd2d5cca49018c5.json +0 -168
  231. package/lib/stats-helper-18b27855.nomodule.js.map +0 -1
  232. package/lib/stats-helper-472e9163.js.map +0 -1
  233. package/lib/tools-core-6f70168d.js.map +0 -1
  234. package/lib/tools-core-e39e5ee7.nomodule.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-light-setting-7f113f35.nomodule.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- import{L as LightSetting}from"./camera-behaviour-265f1725.js";import{a1 as getGUI}from"./roomle-dependency-injection-1e356a73.js";import{D as DirectionalLight,C as Color,V as Vector2,a as Vector3,A as AmbientLight}from"./main-thread-to-worker-82b32425.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-f34982ae.js.map
1
+ import{L as LightSetting}from"./camera-behaviour-4d4e7e7c.js";import{a1 as getGUI}from"./roomle-dependency-injection-56db2f22.js";import{D as DirectionalLight,C as Color,V as Vector2,a as Vector3,A as AmbientLight}from"./main-thread-to-worker-82b32425.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-ad52e6de.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-light-setting-ad52e6de.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -81,7 +81,10 @@ export default class ConfiguratorKernelAccess extends CommonKernelAccess {
81
81
  private _onBoundsUpdate;
82
82
  planObjectDeleted(): void;
83
83
  requestPlanObjectDimensions(): void;
84
- requestExternalMesh(meshId: string, quality: number): Promise<void>;
84
+ requestExternalMesh(requestedMeshes: Array<{
85
+ meshId: string;
86
+ quality: number;
87
+ }>): Promise<void>;
85
88
  Editor3dComponentCreated(id: number, position: KernelVector3, eulerAngles: KernelVector3, isRootComponent: boolean, parentId: number): void;
86
89
  Editor3dPlanObjectConstructionDone(planObjectId: number): void;
87
90
  Editor3dBeginGroup(): void;
@@ -5,7 +5,7 @@ import type DataSyncer from './data-syncer';
5
5
  import type { ArticleNumber, ConfigurationHash, RapiConfiguration, RapiId, RapiPrice } from '../../../typings/rapi-types';
6
6
  import type { LifeCycleCallbacks } from '../life-cycle-manager';
7
7
  import type { Context } from '../di/context';
8
- import type { ConfigurationExporter, ConfigurationObject, ConfiguratorKernelClass, KernelMeshAttributes, KernelMeshBuffer, KernelPart, KernelPartList, KernelPartListPrice, KernelVector3 } from '../../../typings/kernel';
8
+ import type { AssetRequest, ConfigurationExporter, ConfiguratorKernelClass, KernelMeshAttributes, KernelMeshBuffer, KernelPart, KernelPartList, KernelPartListPrice, KernelVector3 } from '../../../typings/kernel';
9
9
  import type ConfiguratorUiCallbacks from '../../../configurator-core/src/services/configurator-ui-callback';
10
10
  import type { GlobalCallback } from './global-callback';
11
11
  import type InitData from '../utils/init-data';
@@ -87,9 +87,9 @@ export default abstract class CommonKernelAccess implements LifeCycleCallbacks,
87
87
  protected isReady(): void;
88
88
  protected addDebugInfo(): void;
89
89
  getConfigurationData(planObjectId: number): Promise<RapiConfiguration>;
90
- loadComponent(conversationId: number, configuration: ConfigurationObject, parentId: number): void;
91
- loadSubComponent(parentId: number, partId: number, componentId: string): void;
92
- loadItemConfigurations(conversationId: number, itemIds: string[]): Promise<void>;
90
+ requestAssets(requestedAssets: AssetRequest[]): void;
91
+ loadComponent(componentIds: string[]): void;
92
+ loadItemConfigurations(itemIds: string[]): Promise<void>;
93
93
  requestDeleteComponent(componentId: number): void;
94
94
  dockComponentWithPosition(parentId: number, parentDockId: number, childId: number, childDockId: number, position: KernelVector3): void;
95
95
  Editor3dAddMesh(runtimeComponentId: number, meshId: number, geometryName: string, environmentGeometry: boolean, meshAttributes: KernelMeshAttributes, meshBuffer: KernelMeshBuffer): void;
@@ -120,6 +120,10 @@ export default abstract class CommonKernelAccess implements LifeCycleCallbacks,
120
120
  protected _calcPrice(partList?: KernelPartList): Promise<KernelPartListPrice>;
121
121
  addUiDataAndPriceToPartList(partList: KernelPartList, hash: string): Promise<KernelPartList>;
122
122
  addUiDataToPartList(partList: KernelPart[], hash: string): KernelPart[];
123
+ requestExternalMesh(_requestedMeshes: Array<{
124
+ meshId: string;
125
+ quality: number;
126
+ }>): void;
123
127
  requestPartListAndUpdatePricesOfParts(hash?: ConfigurationHash, _prices?: Map<ArticleNumber, RapiPrice>): Promise<void>;
124
128
  }
125
129
  export {};
@@ -63,6 +63,7 @@ export default class InitData implements Context, Omit<InitDataDefinition, 'colo
63
63
  showInfos?: boolean;
64
64
  showPrice?: boolean;
65
65
  applyCurrentGlobalParameters?: boolean;
66
+ configureInRoom?: boolean;
66
67
  featureFlags: FeatureFlags;
67
68
  mode?: Enumify<typeof CAMERA_TYPE>;
68
69
  edit?: boolean;
@@ -31,6 +31,7 @@ export declare class RoomleWebGLRenderer {
31
31
  private _fpsCounter;
32
32
  get renderer(): WebGLRenderer;
33
33
  get sceneRenderer(): SceneRenderer;
34
+ get isConfiguring(): boolean;
34
35
  get screenSpaceShadowParameters(): ScreenSpaceShadowMapParameters;
35
36
  get shadowAndAoPassParameters(): ShadowAndAoPassParameters;
36
37
  get bakedGroundContactShadowParameters(): BakedGroundContactShadowParameters;
@@ -1,2 +1,2 @@
1
- export { default as RUBIK_SUB_FILE_NAME } from '../../public/fonts/rubik_regular_sub.json';
2
- export { default as RUBIK_FILE_NAME } from '../../public/fonts/rubik_regular.json';
1
+ export { default as LATO_SUB_FILE_NAME } from '../../public/fonts/lato_regular_sub.json';
2
+ export { default as LATO_FILE_NAME } from '../../public/fonts/lato_regular.json';
@@ -104,6 +104,7 @@ export default class RoomlePlanner implements KernelAccessCallbackI, RoomlePlann
104
104
  * @param initData
105
105
  */
106
106
  setOverrides(initData: InitDataDefinition & GlobalInitDataDefinition): void;
107
+ toggleConfigureInRoom(): void;
107
108
  switch2D(): void;
108
109
  switch3D(): void;
109
110
  switchToFirstPerson(): void;
@@ -1,8 +1,8 @@
1
1
  import type { KernelWall, PlanObject } from '../../../typings/planner';
2
2
  import PlanElementViewModel from '../../../common-core/src/view-model/plan-element-view-model';
3
3
  import type { Position2, Position3 } from '../../../common-core/src/common-interfaces';
4
- import type { MeshPhysicalMaterial } from 'three';
5
- import { Mesh, Vector3 } from 'three';
4
+ import { type RoomleEventedMesh } from '../../../common-core/src/utils/threejs-utils';
5
+ import { Mesh, type MeshPhysicalMaterial, Vector3 } from 'three';
6
6
  import { type DimensionDefinition } from '../utils/measurements';
7
7
  export type WallDimension = DimensionDefinition<Vector3, Vector3>;
8
8
  export type WallDimensionTransferable = DimensionDefinition<Position2, Position3>;
@@ -23,4 +23,7 @@ export default class WallPlanElementViewModel extends PlanElementViewModel {
23
23
  private _setMaterial;
24
24
  select(): void;
25
25
  deselect(): void;
26
+ protected _updateBoundingBox(): void;
27
+ private _setBoundingBoxValues;
28
+ protected _generateBoundingBox(): RoomleEventedMesh;
26
29
  }
@@ -40,6 +40,7 @@ export default class PlannerSceneManager extends ConfiguratorSceneManager implem
40
40
  private _roomlePlannerCallback;
41
41
  private _sky;
42
42
  private _drawingEnabled;
43
+ private _configureInRoom;
43
44
  private _planId;
44
45
  private _preloadScene;
45
46
  private _staticItemGuard;
@@ -86,6 +87,7 @@ export default class PlannerSceneManager extends ConfiguratorSceneManager implem
86
87
  importGLB(url: string): void;
87
88
  clearScene(): void;
88
89
  private _addSky;
90
+ toggleConfigureInRoom(): void;
89
91
  switchTo2D(): void;
90
92
  switchTo3D(): void;
91
93
  switchToFirstPerson(): void;
@@ -109,6 +111,11 @@ export default class PlannerSceneManager extends ConfiguratorSceneManager implem
109
111
  getBounds(): Box3;
110
112
  getGeometryBounds(): Box3;
111
113
  getPlanObject(id: number): KernelPlanObject;
114
+ /**
115
+ * This is needed to get the root plan object id in case a plan element is selected
116
+ * which has been docked using `advanced docking`
117
+ * @param id
118
+ */
112
119
  getRootPlanObjectId(id: number): number;
113
120
  cancelPlanElementSelection(reason: CancelSelectionReasons): void;
114
121
  deletePlanElementSelection(): Promise<void>;
@@ -99,6 +99,7 @@ export interface KernelParameter {
99
99
  validRange: KernelRange;
100
100
  validValues: KernelValue[];
101
101
  group: string;
102
+ visibleInPlanner?: boolean;
102
103
  }
103
104
  export interface KernelParameterGroup {
104
105
  key: string;
@@ -174,6 +175,8 @@ export interface KernelAnimation {
174
175
  key: string;
175
176
  label: string;
176
177
  visibleInPlanner: boolean;
178
+ applyToChildren?: boolean;
179
+ animate?: boolean;
177
180
  }
178
181
  export interface KernelAnimationAction {
179
182
  key: string;
@@ -271,6 +274,27 @@ export interface AddOnSpot {
271
274
  position: KernelVector3;
272
275
  mask: string;
273
276
  }
277
+ export declare const CORE_ASSET_TYPE: {
278
+ readonly ITEM: 0;
279
+ readonly COMPONENT: 1;
280
+ readonly EXTERNAL_MESH: 2;
281
+ readonly MATERIAL_PROPERTIES: 3;
282
+ readonly MATERIAL_GROUP: 4;
283
+ };
284
+ export interface AssetType {
285
+ value: Enumify<typeof CORE_ASSET_TYPE>;
286
+ }
287
+ export interface AssetRequest {
288
+ id: string;
289
+ value: number;
290
+ type: AssetType;
291
+ }
292
+ export interface AssetResponse {
293
+ data: any;
294
+ id: string;
295
+ type: AssetType;
296
+ value?: number;
297
+ }
274
298
  export interface KernelContainer {
275
299
  wasmBinaryFile: string;
276
300
  print: (msg: string) => void;
@@ -383,14 +407,12 @@ export interface ConfiguratorKernelClass {
383
407
  loadConfiguration(kernelConversationId: number, configurationObject: ConfigurationString, position: KernelVector3): void;
384
408
  loadPlainComponent(conversationId: number, componentId: RapiId, configuration: ConfigurationString): void;
385
409
  loadFreeFlyingConfiguration(conversationId: number, configuration: ConfigurationString): void;
386
- loadComponent(conversationId: number, configurationString: ConfigurationString, configuration: ConfigurationObject, parentId: number): void;
410
+ assetsLoaded(assets: AssetResponse | AssetResponse[]): void;
387
411
  deleteComponent(componentId: number): void;
388
412
  deletePlanComponent(componentId: any): void;
389
413
  deletePlanComponents(componentIds: any): void;
390
414
  resetPriceListIds(): void;
391
415
  addPriceList(newLocale: string): void;
392
- loadedSubComponent(parentId: number, partId: number, componentId: string, configuration: ConfigurationString): void;
393
- loadedItemConfiguration(conversationId: number, itemId: string, serializedItemConfiguration: string): void;
394
416
  requestPlanObjectConstruction(planObjectId: number): void;
395
417
  requestPlanComponentConstruction(componentId: number): void;
396
418
  requestDeltaPlanComponentConstruction(componentId: number): void;
@@ -434,17 +456,8 @@ export interface ConfiguratorKernelClass {
434
456
  };
435
457
  loadComponentDefinition(conversationId: number, component: string): void;
436
458
  syncPlanObjectToView(conversationId: number, planObjectId: number): void;
437
- addMeshCorto(meshId: string, quality: number, data: Uint8Array): void;
438
459
  setExternalMeshInvalid(meshId: string, quality: number): void;
439
- setMaterialsInGroup(materialGroups: Array<{
440
- group: string;
441
- materials: string[];
442
- }>): void;
443
460
  setActiveGroupInView(groupId: string): void;
444
- setMaterialProperties(propertiesOfMaterials: Array<{
445
- id: RapiId;
446
- properties: EmscriptenMap<string, string>;
447
- }>): void;
448
461
  setActiveGroupInViewForPlanObject(groupId: string, runtimeId: number): void;
449
462
  setUpdateCallbacksOnlyIfGeometryIsReady(updateCallbacksOnlyIfGeometryIsReady: boolean): void;
450
463
  loadExternalAttributeDefinition(serializedDefinition: string): void;
@@ -106,6 +106,8 @@ export interface WallPlanObject extends PlanObject {
106
106
  getLength(preferredSide: WallSide): number;
107
107
  getFrom(): NodePlanObject;
108
108
  getTo(): NodePlanObject;
109
+ readonly thickness: number;
110
+ readonly height: number;
109
111
  }
110
112
  export interface ConstructionPlanObject extends PlanObject {
111
113
  getAttachedWall(): WallPlanObject;
@@ -0,0 +1,2 @@
1
+ import{aG as normalizeRotation,w as dispose,_ as __decorate,i as inject,ah as AsyncGuard,aH as AsyncDependencyLoader,ad as convertToTHREE}from"./roomle-dependency-injection-56db2f22.js";import{O as Object3D,a as Vector3,h as MeshBasicMaterial,w as DoubleSide,br as MeshPhongMaterial,B as BufferGeometry,z as Mesh,Q as Quaternion,bc as PlaneGeometry,K as Group,u as LineBasicMaterial,G as Line,b as BufferAttribute,b0 as Line3,ad as Box3}from"./main-thread-to-worker-82b32425.js";import{T as TextGeometry}from"./TextGeometry-f0a85d6a.js";const PLANE_MATERIAL="component_dimensioning_plane_material",TEXT_MATERIAL="component_dimensioning_text_material";class TextWithBackground extends Object3D{constructor(e){super(),this._label="",this._parameters={font:null,size:.1,height:.001,curveSegments:2,bevelEnabled:!0,bevelThickness:.001,bevelSize:.001},this.topDown=!1,this._parameters.font=e,this._position=new Vector3,this._initMaterials(),this._init(),this._update()}_initMaterials(){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(){let e=new BufferGeometry;this._text=new Mesh(e,this._textMaterial),this._text.userData.ignoreComponentRaycast=!0,this._text.name="text with background text "+this._label,this._plane=new Mesh(e,this._planeMaterial),this._plane.userData.ignoreComponentRaycast=!0,this._plane.name="text with background plane "+this._label,this._textGeometry=new TextGeometry(this._label,this._parameters),this._textGeometry.computeBoundingBox(),this._text.geometry=this._textGeometry,this.add(this._text),this.add(this._plane)}update(e,t,i){this._position.copy(e),this._cameraPosition=i,this._label=t;const s=this.getWorldPosition(new Vector3),n=this._cameraPosition.distanceTo(s),o=Math.max(.01,n/150),h=Math.max(5e-4,n/5e3);this._parameters.bevelThickness=h,this._parameters.bevelSize=h,this._parameters.size=o,this._textGeometry=new TextGeometry(this._label,this._parameters),this._textGeometry.computeBoundingBox(),this._text.geometry=this._textGeometry,this._update()}_update(){if(this.topDown){let e=new Quaternion;e.setFromAxisAngle(new Vector3(-1,0,0),Math.PI/2),this._updateText(this._textGeometry,e,new Vector3)}else if(this._updateText(this._textGeometry,new Quaternion,new Vector3),this._cameraPosition){const e=this.getWorldPosition(new Vector3),t=normalizeRotation(Math.atan2(this._cameraPosition.x-e.x,this._cameraPosition.z-e.z)-this.parent.rotation.y);this._text.rotation.y=t,this._plane.rotation.y=t}}_updateText(e,t,i){let s=new Vector3;s.copy(this._position),i.x*=this._getXSign(),s.add(i);let n=e.boundingBox.getSize(new Vector3);e.center(),this._text.position.copy(s),t&&this._text.quaternion.copy(t);let o=new PlaneGeometry(n.x+.02,n.y+.02,32);o.center(),this._plane.geometry=o,this._plane.position.copy(s),t&&this._plane.quaternion.copy(t)}_getXSign(){return!this._cameraPosition||this._cameraPosition.x>=0?1:-1}dispose(){dispose(this)}}__decorate([inject],TextWithBackground.prototype,"_cacheHolder",void 0);class DimensioningHelper{constructor(e){this._objectRotation=0,this._cameraPosition=new Vector3,this._topDimensions=!1,this._initialized=new AsyncGuard,this._enabled=!1,this._dimensionsVisible=!1,this._dimensionLineGroup=new Group,this._dimensionTextGroup=new Object3D,this._creator_=e,this._lineMaterial=new LineBasicMaterial({color:3618615,linewidth:2});let t=new BufferGeometry;this._widthLine=new Line(t,this._lineMaterial),this._widthLine.userData.ignoreComponentRaycast=!0,this._widthLine.name="dimension width line",this._dimensionLineGroup.add(this._widthLine),this._heightLine=new Line(t,this._lineMaterial),this._heightLine.userData.ignoreComponentRaycast=!0,this._heightLine.name="dimension height line",this._dimensionLineGroup.add(this._heightLine),this._depthLine=new Line(t,this._lineMaterial),this._depthLine.userData.ignoreComponentRaycast=!0,this._depthLine.name="dimension depth line",this._dimensionLineGroup.add(this._depthLine),this._planeMaterial=new MeshBasicMaterial({color:16777215,side:DoubleSide,opacity:.8,transparent:!0}),AsyncDependencyLoader.loadFont("static/lato_regular_sub-d4b30187185acc59.json").then(e=>{this._font=e,this._loaded()})}_loaded(){this.update(!1),this.addToObject(this._object),this.addToUiScene(this._uiScene),this._initialized.resolve()}_performUpdate(e){this._enabled&&(this._dimensions||e)&&this._font&&(this._updateHeight(),this._updateWidth(),this._updateDepth())}_updateWidth(){let e=new BufferGeometry,t=this._getWidthEdge(),i=[t.start.x,t.start.y,t.start.z,t.end.x,t.end.y,t.end.z];e.setAttribute("position",new BufferAttribute(new Float32Array(i),3)),this._widthLine.geometry.dispose(),this._widthLine.geometry=e;let s=t.getCenter(new Vector3);this._widthText||(this._widthText=new TextWithBackground(this._font),this._dimensionTextGroup.add(this._widthText)),this._widthText.topDown=this._topDimensions;const n=this._unitFormatter.formatMMValueToUnitString(1e3*this._dimensions.x);this._widthText.update(s,n,this._cameraPosition)}_updateHeight(){let e=new BufferGeometry,t=this._getHeightEdge(),i=[t.start.x,t.start.y,t.start.z,t.end.x,t.end.y,t.end.z];e.setAttribute("position",new BufferAttribute(new Float32Array(i),3)),this._heightLine.geometry.dispose(),this._heightLine.geometry=e;let s=t.getCenter(new Vector3);this._heightText||(this._heightText=new TextWithBackground(this._font),this._dimensionTextGroup.add(this._heightText)),this._heightText.topDown=this._topDimensions;const n=this._unitFormatter.formatMMValueToUnitString(1e3*this._dimensions.y);this._heightText.update(s,n,this._cameraPosition)}_updateDepth(){let e=new BufferGeometry,t=this._getDepthEdge(),i=[t.start.x,t.start.y,t.start.z,t.end.x,t.end.y,t.end.z];e.setAttribute("position",new BufferAttribute(new Float32Array(i),3)),this._depthLine.geometry.dispose(),this._depthLine.geometry=e;let s=t.getCenter(new Vector3);this._depthText||(this._depthText=new TextWithBackground(this._font),this._dimensionTextGroup.add(this._depthText)),this._depthText.topDown=this._topDimensions;const n=this._unitFormatter.formatMMValueToUnitString(-1e3*this._dimensions.z);this._depthText.update(s,n,this._cameraPosition)}updateSize(e){this._origin=convertToTHREE(e.origin),this._dimensionLineGroup.position.x=this._origin.x-this._object.position.x,this._dimensionLineGroup.position.y=this._origin.y-this._object.position.y,this._dimensionLineGroup.position.z=this._origin.z-this._object.position.z,this._dimensions=convertToTHREE(e.size);const t=this._dimensionLineGroup.localToWorld(new Vector3);this._dimensionTextGroup.position.copy(t),this.update()}update(e=!1){this._enabled&&!this._dimensionsVisible&&(this._dimensionsVisible=!0,this._visibilityChangedCallback()),this._performUpdate(e)}addToObject(e){this._widthText&&this._widthLine&&this._heightText&&this._heightLine&&this._heightText&&this._heightLine&&e.add(this._dimensionLineGroup)}removeFromObject(e){e.remove(this._dimensionLineGroup),this.update()}addToUiScene(e){if(!(this._widthText&&this._heightText&&this._depthText&&this._object))return;const t=this._dimensionLineGroup.localToWorld(new Vector3);this._dimensionTextGroup.position.copy(t),this._dimensionTextGroup.rotation.y=this._objectRotation,e.add(this._dimensionTextGroup),this.update()}removeFromUiScene(e){e.remove(this._dimensionTextGroup),this.update()}_getWidthEdge(){const e=this._getRotation();return e>Math.PI/2||e<-Math.PI/2?new Line3(new Vector3(-.05,0,this._dimensions.z-.05),new Vector3(this._dimensions.x+.05,0,this._dimensions.z-.05)):new Line3(new Vector3(-.05,0,.05),new Vector3(this._dimensions.x+.05,0,.05))}_getDepthEdge(){return this._getRotation()>0?new Line3(new Vector3(.05+this._dimensions.x,0,.05),new Vector3(.05+this._dimensions.x,0,this._dimensions.z-.05)):new Line3(new Vector3(-.05,0,.05),new Vector3(-.05,0,this._dimensions.z-.05))}_getHeightEdge(){const e=this._getRotation();return e>0&&e<Math.PI/2?new Line3(new Vector3(-.05,0,.05),new Vector3(-.05,this._dimensions.y+.05,.05)):e>Math.PI/2?new Line3(new Vector3(-.05,0,this._dimensions.z-.05),new Vector3(-.05,this._dimensions.y+.05,this._dimensions.z-.05)):e<-Math.PI/2?new Line3(new Vector3(.05+this._dimensions.x,0,this._dimensions.z-.05),new Vector3(.05+this._dimensions.x,this._dimensions.y+.05,this._dimensions.z-.05)):new Line3(new Vector3(.05+this._dimensions.x,0,.05),new Vector3(.05+this._dimensions.x,this._dimensions.y+.05,.05))}onDimensionsVisibilityChanged(e){this._onChange=e}enableTopDimensions(){this._topDimensions=!0,this.enableDimensions(),this._heightLine.visible=!1,this._heightText.visible=!1,this.update(!0)}disableTopDimensions(){this._topDimensions=!1,this._heightLine.visible=!0,this._heightText.visible=!0,this.disableDimensions()}enableDimensions(){this._enabled=!0,this.update(!0),this.addToObject(this._object),this.addToUiScene(this._uiScene)}disableDimensions(){this._enabled=!1,this._dimensionsVisible&&(this._dimensionsVisible=!1,this._visibilityChangedCallback()),this.removeFromUiScene(this._uiScene),this.removeFromObject(this._object)}_visibilityChangedCallback(){this._onChange&&this._onChange(this._dimensionsVisible)}_clear(){this._lineMaterial.dispose(),this._planeMaterial.dispose(),this._widthLine.geometry.dispose(),this._heightLine.geometry.dispose(),this._depthLine.geometry.dispose(),this._heightText.dispose(),this._heightText.dispose(),this._depthText.dispose()}getBoundingBox(){const e=new Box3;return e.expandByObject(this._widthLine),e.expandByObject(this._widthText),e.expandByObject(this._heightLine),e.expandByObject(this._heightText),e.expandByObject(this._depthLine),e.expandByObject(this._depthText),e}setVisibility(e){this._dimensionLineGroup&&this._dimensionTextGroup&&(this._dimensionLineGroup.visible=e,this._dimensionTextGroup.visible=e)}moveCameraStart(e){this.setVisibility(!1),this._cameraPosition=e,this.update()}moveCameraEnd(e){this.setVisibility(!0),this._cameraPosition=e,this.update()}clearScene(e){this._clear()}setObject(e,t=0){this._object=e,this._objectRotation=t}setUiScene(e){this._uiScene=e}isInitialized(){return this._initialized.wait()}areDimensionsEnabled(){return this._enabled}_getRotation(){const e=this._object.getWorldPosition(new Vector3);return normalizeRotation(Math.atan2(this._cameraPosition.x-e.x,this._cameraPosition.z-e.z)-this._objectRotation)}}__decorate([inject],DimensioningHelper.prototype,"_unitFormatter",void 0);export{DimensioningHelper as default};
2
+ //# sourceMappingURL=dimensioning-helper-7494fb28.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dimensioning-helper-7494fb28.js","sources":["../../packages/configurator-core/public/fonts/lato_regular_sub.json"],"sourcesContent":["export default \"static/lato_regular_sub-d4b30187185acc59.json\""],"names":[],"mappings":"y7IAAe"}
@@ -0,0 +1,2 @@
1
+ System.register(["./roomle-dependency-injection-c12e4c00.nomodule.js","./main-thread-to-worker-ff04af1e.nomodule.js","./TextGeometry-b57a793b.nomodule.js"],(function(t){var i,e,s,n,h,o,a,_,d,r,p,m,l,c,x,u,g,w,b,y,T,L,G;return{setters:[function(t){i=t.aG,e=t.w,s=t._,n=t.i,h=t.ah,o=t.aH,a=t.ad},function(t){_=t.O,d=t.a,r=t.h,p=t.w,m=t.br,l=t.B,c=t.z,x=t.Q,u=t.bc,g=t.K,w=t.u,b=t.G,y=t.b,T=t.b0,L=t.ad},function(t){G=t.T}],execute:function(){const z="component_dimensioning_plane_material",M="component_dimensioning_text_material";class j extends _{constructor(t){super(),this._label="",this._parameters={font:null,size:.1,height:.001,curveSegments:2,bevelEnabled:!0,bevelThickness:.001,bevelSize:.001},this.topDown=!1,this._parameters.font=t,this._position=new d,this._initMaterials(),this._init(),this._update()}_initMaterials(){this._cacheHolder.materialCache.has(z)?this._planeMaterial=this._cacheHolder.materialCache.get(z):(this._planeMaterial=new r({color:16777215,side:p,opacity:.8,transparent:!0}),this._cacheHolder.materialCache.set(z,this._planeMaterial)),this._cacheHolder.materialCache.has(M)?this._textMaterial=this._cacheHolder.materialCache.get(M):(this._textMaterial=new m({color:3618615}),this._cacheHolder.materialCache.set(M,this._textMaterial))}_init(){let t=new l;this._text=new c(t,this._textMaterial),this._text.userData.ignoreComponentRaycast=!0,this._text.name="text with background text "+this._label,this._plane=new c(t,this._planeMaterial),this._plane.userData.ignoreComponentRaycast=!0,this._plane.name="text with background plane "+this._label,this._textGeometry=new G(this._label,this._parameters),this._textGeometry.computeBoundingBox(),this._text.geometry=this._textGeometry,this.add(this._text),this.add(this._plane)}update(t,i,e){this._position.copy(t),this._cameraPosition=e,this._label=i;const s=this.getWorldPosition(new d),n=this._cameraPosition.distanceTo(s),h=Math.max(.01,n/150),o=Math.max(5e-4,n/5e3);this._parameters.bevelThickness=o,this._parameters.bevelSize=o,this._parameters.size=h,this._textGeometry=new G(this._label,this._parameters),this._textGeometry.computeBoundingBox(),this._text.geometry=this._textGeometry,this._update()}_update(){if(this.topDown){let t=new x;t.setFromAxisAngle(new d(-1,0,0),Math.PI/2),this._updateText(this._textGeometry,t,new d)}else if(this._updateText(this._textGeometry,new x,new d),this._cameraPosition){const t=this.getWorldPosition(new d),e=i(Math.atan2(this._cameraPosition.x-t.x,this._cameraPosition.z-t.z)-this.parent.rotation.y);this._text.rotation.y=e,this._plane.rotation.y=e}}_updateText(t,i,e){let s=new d;s.copy(this._position),e.x*=this._getXSign(),s.add(e);let n=t.boundingBox.getSize(new d);t.center(),this._text.position.copy(s),i&&this._text.quaternion.copy(i);let h=new u(n.x+.02,n.y+.02,32);h.center(),this._plane.geometry=h,this._plane.position.copy(s),i&&this._plane.quaternion.copy(i)}_getXSign(){return!this._cameraPosition||this._cameraPosition.x>=0?1:-1}dispose(){e(this)}}s([n],j.prototype,"_cacheHolder",void 0);class D{constructor(t){this._objectRotation=0,this._cameraPosition=new d,this._topDimensions=!1,this._initialized=new h,this._enabled=!1,this._dimensionsVisible=!1,this._dimensionLineGroup=new g,this._dimensionTextGroup=new _,this._creator_=t,this._lineMaterial=new w({color:3618615,linewidth:2});let i=new l;this._widthLine=new b(i,this._lineMaterial),this._widthLine.userData.ignoreComponentRaycast=!0,this._widthLine.name="dimension width line",this._dimensionLineGroup.add(this._widthLine),this._heightLine=new b(i,this._lineMaterial),this._heightLine.userData.ignoreComponentRaycast=!0,this._heightLine.name="dimension height line",this._dimensionLineGroup.add(this._heightLine),this._depthLine=new b(i,this._lineMaterial),this._depthLine.userData.ignoreComponentRaycast=!0,this._depthLine.name="dimension depth line",this._dimensionLineGroup.add(this._depthLine),this._planeMaterial=new r({color:16777215,side:p,opacity:.8,transparent:!0}),o.loadFont("static/lato_regular_sub-d4b30187185acc59.json").then(t=>{this._font=t,this._loaded()})}_loaded(){this.update(!1),this.addToObject(this._object),this.addToUiScene(this._uiScene),this._initialized.resolve()}_performUpdate(t){this._enabled&&(this._dimensions||t)&&this._font&&(this._updateHeight(),this._updateWidth(),this._updateDepth())}_updateWidth(){let t=new l,i=this._getWidthEdge(),e=[i.start.x,i.start.y,i.start.z,i.end.x,i.end.y,i.end.z];t.setAttribute("position",new y(new Float32Array(e),3)),this._widthLine.geometry.dispose(),this._widthLine.geometry=t;let s=i.getCenter(new d);this._widthText||(this._widthText=new j(this._font),this._dimensionTextGroup.add(this._widthText)),this._widthText.topDown=this._topDimensions;const n=this._unitFormatter.formatMMValueToUnitString(1e3*this._dimensions.x);this._widthText.update(s,n,this._cameraPosition)}_updateHeight(){let t=new l,i=this._getHeightEdge(),e=[i.start.x,i.start.y,i.start.z,i.end.x,i.end.y,i.end.z];t.setAttribute("position",new y(new Float32Array(e),3)),this._heightLine.geometry.dispose(),this._heightLine.geometry=t;let s=i.getCenter(new d);this._heightText||(this._heightText=new j(this._font),this._dimensionTextGroup.add(this._heightText)),this._heightText.topDown=this._topDimensions;const n=this._unitFormatter.formatMMValueToUnitString(1e3*this._dimensions.y);this._heightText.update(s,n,this._cameraPosition)}_updateDepth(){let t=new l,i=this._getDepthEdge(),e=[i.start.x,i.start.y,i.start.z,i.end.x,i.end.y,i.end.z];t.setAttribute("position",new y(new Float32Array(e),3)),this._depthLine.geometry.dispose(),this._depthLine.geometry=t;let s=i.getCenter(new d);this._depthText||(this._depthText=new j(this._font),this._dimensionTextGroup.add(this._depthText)),this._depthText.topDown=this._topDimensions;const n=this._unitFormatter.formatMMValueToUnitString(-1e3*this._dimensions.z);this._depthText.update(s,n,this._cameraPosition)}updateSize(t){this._origin=a(t.origin),this._dimensionLineGroup.position.x=this._origin.x-this._object.position.x,this._dimensionLineGroup.position.y=this._origin.y-this._object.position.y,this._dimensionLineGroup.position.z=this._origin.z-this._object.position.z,this._dimensions=a(t.size);const i=this._dimensionLineGroup.localToWorld(new d);this._dimensionTextGroup.position.copy(i),this.update()}update(t=!1){this._enabled&&!this._dimensionsVisible&&(this._dimensionsVisible=!0,this._visibilityChangedCallback()),this._performUpdate(t)}addToObject(t){this._widthText&&this._widthLine&&this._heightText&&this._heightLine&&this._heightText&&this._heightLine&&t.add(this._dimensionLineGroup)}removeFromObject(t){t.remove(this._dimensionLineGroup),this.update()}addToUiScene(t){if(!(this._widthText&&this._heightText&&this._depthText&&this._object))return;const i=this._dimensionLineGroup.localToWorld(new d);this._dimensionTextGroup.position.copy(i),this._dimensionTextGroup.rotation.y=this._objectRotation,t.add(this._dimensionTextGroup),this.update()}removeFromUiScene(t){t.remove(this._dimensionTextGroup),this.update()}_getWidthEdge(){const t=this._getRotation();return t>Math.PI/2||t<-Math.PI/2?new T(new d(-.05,0,this._dimensions.z-.05),new d(this._dimensions.x+.05,0,this._dimensions.z-.05)):new T(new d(-.05,0,.05),new d(this._dimensions.x+.05,0,.05))}_getDepthEdge(){return this._getRotation()>0?new T(new d(.05+this._dimensions.x,0,.05),new d(.05+this._dimensions.x,0,this._dimensions.z-.05)):new T(new d(-.05,0,.05),new d(-.05,0,this._dimensions.z-.05))}_getHeightEdge(){const t=this._getRotation();return t>0&&t<Math.PI/2?new T(new d(-.05,0,.05),new d(-.05,this._dimensions.y+.05,.05)):t>Math.PI/2?new T(new d(-.05,0,this._dimensions.z-.05),new d(-.05,this._dimensions.y+.05,this._dimensions.z-.05)):t<-Math.PI/2?new T(new d(.05+this._dimensions.x,0,this._dimensions.z-.05),new d(.05+this._dimensions.x,this._dimensions.y+.05,this._dimensions.z-.05)):new T(new d(.05+this._dimensions.x,0,.05),new d(.05+this._dimensions.x,this._dimensions.y+.05,.05))}onDimensionsVisibilityChanged(t){this._onChange=t}enableTopDimensions(){this._topDimensions=!0,this.enableDimensions(),this._heightLine.visible=!1,this._heightText.visible=!1,this.update(!0)}disableTopDimensions(){this._topDimensions=!1,this._heightLine.visible=!0,this._heightText.visible=!0,this.disableDimensions()}enableDimensions(){this._enabled=!0,this.update(!0),this.addToObject(this._object),this.addToUiScene(this._uiScene)}disableDimensions(){this._enabled=!1,this._dimensionsVisible&&(this._dimensionsVisible=!1,this._visibilityChangedCallback()),this.removeFromUiScene(this._uiScene),this.removeFromObject(this._object)}_visibilityChangedCallback(){this._onChange&&this._onChange(this._dimensionsVisible)}_clear(){this._lineMaterial.dispose(),this._planeMaterial.dispose(),this._widthLine.geometry.dispose(),this._heightLine.geometry.dispose(),this._depthLine.geometry.dispose(),this._heightText.dispose(),this._heightText.dispose(),this._depthText.dispose()}getBoundingBox(){const t=new L;return t.expandByObject(this._widthLine),t.expandByObject(this._widthText),t.expandByObject(this._heightLine),t.expandByObject(this._heightText),t.expandByObject(this._depthLine),t.expandByObject(this._depthText),t}setVisibility(t){this._dimensionLineGroup&&this._dimensionTextGroup&&(this._dimensionLineGroup.visible=t,this._dimensionTextGroup.visible=t)}moveCameraStart(t){this.setVisibility(!1),this._cameraPosition=t,this.update()}moveCameraEnd(t){this.setVisibility(!0),this._cameraPosition=t,this.update()}clearScene(t){this._clear()}setObject(t,i=0){this._object=t,this._objectRotation=i}setUiScene(t){this._uiScene=t}isInitialized(){return this._initialized.wait()}areDimensionsEnabled(){return this._enabled}_getRotation(){const t=this._object.getWorldPosition(new d);return i(Math.atan2(this._cameraPosition.x-t.x,this._cameraPosition.z-t.z)-this._objectRotation)}}t("default",D),s([n],D.prototype,"_unitFormatter",void 0)}}}));
2
+ //# sourceMappingURL=dimensioning-helper-b9377b93.nomodule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dimensioning-helper-b9377b93.nomodule.js","sources":["../../packages/configurator-core/public/fonts/lato_regular_sub.json"],"sourcesContent":["export default \"static/lato_regular_sub-d4b30187185acc59.json\""],"names":[],"mappings":"y4HAAe"}
@@ -1,2 +1,2 @@
1
- import{S as ScriptLoader,M as Main}from"./script-loader-d3f78a09.js";import{aw as InputManager,D as DependencyInjectionAssignment,L as Logger,R as RapiAccess,a1 as getGUI,_ as __decorate,i as inject,m as CANVAS_ID,q as DynamicLightSettingLoader,r as PREDEFINED_LIGHTSETTING,w as dispose,b as RoomleDependencyInjection}from"./roomle-dependency-injection-1e356a73.js";import{C as CameraControl3D,L as LightSetting,S as SceneManager,T as TWEEN_FILE_NAME}from"./camera-behaviour-265f1725.js";import{a as Vector3,ad as Box3,ag as Euler,Q as Quaternion,A as AmbientLight,C as Color,aE as CAMERA_TYPE,aR as getGlbUrl,bz as WebGLRenderer,i as SRGBColorSpace,bn as BasicShadowMap,N as PerspectiveCamera,bM as download}from"./main-thread-to-worker-82b32425.js";import{D as DefaultLightSetting}from"./default-light-setting-f34982ae.js";import{G as GlbViewerCameraBehaviour}from"./glb-viewer-camera-behaviour-3ef8c6cf.js";import"./query-params-helper-68ed40a6.js";const INJECTABLES=[new DependencyInjectionAssignment("script-loader",ScriptLoader),new DependencyInjectionAssignment("glb-input-manager",class extends InputManager{},1),new DependencyInjectionAssignment("logger",Logger),new DependencyInjectionAssignment("rapi-access",RapiAccess)];class AdjustableCameraControl3D extends CameraControl3D{constructor(){super(...arguments),this.shouldIgnoreStandardBehavior=!1}adjust(e,t,r,a,i){let n=new Vector3(-e.x/2,0,-e.z/2),s=new Vector3(e.x/2,e.y,e.z/2);this._boundingBox=new Box3(n,s);let o=new Euler(-Math.PI/2+a,r,0,"ZYX"),c=(new Quaternion).setFromEuler(o);this._camera.updateProjectionMatrix(),this._camera.quaternion.copy(c),this._camera.position.copy(t)}_update(e){this.shouldIgnoreStandardBehavior?this._saveYawAndPitch():super._update(e)}animateCamera(e){return!!this.shouldIgnoreStandardBehavior||super.animateCamera(e)}}class GLBViewerLightSetting extends LightSetting{constructor(e,t){super(e,t),this._params={ambientLight:{color:"#ffffff"}},this._ambientLight=new AmbientLight(new Color(this._params.ambientLight.color),.5),this.addToScene()}addToScene(){this._scene.add(this._ambientLight)}removeFromScene(){this._scene.remove(this._ambientLight)}reload(){this.removeFromScene(),this.addToScene()}showGUI(){let e=getGUI();if(e&&this._ambientLight){let t=e.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(e=>{this._ambientLight.color=new Color(e)})}}}class GLBViewerSceneManager extends SceneManager{constructor(e,t){super(e,t,CANVAS_ID.GLB,CAMERA_TYPE.CAMERA_3D),this._itemsCount=0,this._standardSceneBackgroundColor=this._scene.background,this._initData.legacyLight&&(this._renderer.capabilities.maxTextures>8?this.loadDynamicLightSetting(DynamicLightSettingLoader.createDynamicLightSettingSource(null,PREDEFINED_LIGHTSETTING.CAMERA)):(console.warn("this device has a maximum of 8 texture units thus we are using a simpler light setting"),this._lightSetting=new GLBViewerLightSetting(this._scene)))}createCameraControl(e,t){this._changeCameraBehaviour(new GlbViewerCameraBehaviour(new AdjustableCameraControl3D(this._creator_,this._getInputManager(),new Vector3(-1,1,1)),this._cameraBehaviourState))}_getInputManager(){return this._glbInputManager}async loadStaticItem(e,t){const r=await this._rapiAccess.getItem(e);if(r.configuration)return Promise.reject();const a=getGlbUrl(r);return a?this.loadGLB(a,!0,void 0,t):Promise.reject(new Error("GLB Url not detected"))}loadGLB(e,t=!0,r=new Vector3(1,1,1),a){return this.clearScene(),new Promise((i,n)=>{this._loadGLB(e,new Vector3(0,0,0),0,void 0,r,void 0,void 0,a).then(e=>{this._currentGLB=e,this._scene.add(this._currentGLB);let r=(new Box3).setFromObject(this._currentGLB);t&&this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D&&this.glbViewerCameraBehaviour.updateCameraOnItemLoaded(r),this._updateBounds(r,null,!0),i()},n)})}preparePerspectiveImage(e,t,r){return new Promise(a=>{var i,n;t||(t=1e3),r||(r=1e3),e||((e=new WebGLRenderer({antialias:!0})).setSize(t,r),e.outputColorSpace=SRGBColorSpace,e.autoClear=!1,e.shadowMap.enabled=!0,e.shadowMap.type=BasicShadowMap);let s=this.cameraBehaviour.cameraControl.getCamera().clone();s instanceof PerspectiveCamera&&(s.aspect=t/r,s.updateProjectionMatrix()),null===(i=this._lightSetting)||void 0===i||i.removeFromScene();let o=new DefaultLightSetting(this._scene);e.render(this._scene,s);let c=e.domElement.toDataURL();e.domElement.toBlob(e=>{a({image:c,width:t,height:r,blob:e})},"image/png"),o.removeFromScene(),null===(n=this._lightSetting)||void 0===n||n.addToScene()})}adjustCamera(e,t,r,a){if(this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D){let i=(new Box3).setFromObject(this._scene).getSize(new Vector3);this.cameraBehaviour.cameraControl.adjust(i,e,t,r,a),this._requestRender()}}onStart(e){this._itemsCount=e,this._scene.background=null,this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D&&(this.cameraBehaviour.cameraControl.shouldIgnoreStandardBehavior=!0)}onElementFinished(e){this._itemsCount,Math.round(100/this._itemsCount*e)}onFinished(e){this._scene.background=this._standardSceneBackgroundColor,this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D&&(this.cameraBehaviour.cameraControl.shouldIgnoreStandardBehavior=!1)}clearScene(){this._currentGLB&&(this._scene.remove(this._currentGLB),dispose(this._currentGLB),this._currentGLB=null),super.clearScene()}enableHD(){super.enableHD()}sceneChanged(){}getBounds(){return this._currentGLB?(new Box3).setFromObject(this._currentGLB):null}get glbViewerCameraBehaviour(){return this.cameraBehaviour}getGeometryBounds(){return null}cameraBehaviourChanged(){super.cameraBehaviourChanged(),this.cameraBehaviour.cameraControl.addEventListener(3,()=>{this._requestRender()},this),this.cameraBehaviour.cameraControl.addEventListener(4,()=>{this._requestRender()},this)}}__decorate([inject],GLBViewerSceneManager.prototype,"_glbInputManager",void 0),__decorate([inject],GLBViewerSceneManager.prototype,"_rapiAccess",void 0);class GLBRenderWorker{constructor(e,t,r){this._prefix="https://furniture.roomle.com/3d/glb/",this._listeners=new Set,this._finishedItems=0,this._sceneManager=e,this._renderer=new WebGLRenderer({antialias:!0,alpha:!0}),this._width=t,this._height=r,this._renderer.setSize(t,r),this._renderer.setClearColor(16777215,0),this._renderer.outputColorSpace=SRGBColorSpace}addListener(e){this._listeners.add(e)}removeListener(e){this._listeners.delete(e)}start(e){return this._entries=[],e.forEach(e=>{this._entries.push(this._transform(e))}),this._finishedItems=0,this._listeners.forEach(e=>e.onStart(this._entries.length)),this._zip=new window.JSZip,this._doNextEntry(),new Promise(e=>{this._resolve=e})}_transform(e){return{name:e.path.replace(".glb",".png"),url:this._prefix+e.path,position:new Vector3(e.camera.position.x,e.camera.position.z,-e.camera.position.y),fov:2*e.camera.fieldOfView,yaw:e.camera.rotation.z,pitch:e.camera.rotation.x}}_doNextEntry(){0===this._entries.length?(this._listeners.forEach(e=>e.onFinished(this._zip)),this._resolve(this._zip)):this._processEntry(this._entries[0])}_processEntry(e){this._sceneManager.loadGLB(e.url,!1,void 0).then(()=>{this._sceneManager.adjustCamera(e.position,e.yaw,e.pitch,e.fov),this._sceneManager.preparePerspectiveImage(this._renderer,this._width,this._height).then(t=>{this._entryFinished(e,t)})})}_entryFinished(e,t){let r=this._entries.indexOf(e);r>-1&&this._entries.splice(r,1),this._finishedItems++,this._listeners.forEach(e=>e.onElementFinished(this._finishedItems)),this._zip.file(e.name,t.blob),this._doNextEntry()}}class RoomleGLBViewer{constructor(e){this._currentIdOrUrl=null,this._creator_=e}setCameraOffset(e){this._sceneManager.setCameraOffset(e)}getCameraOffset(){return this._sceneManager.getCameraOffset()}init(e,t){return this.setOverrides(t),this._domHelper.setDomElement(e),this._sceneManager?(this._lifeCycleManager.resume(),Promise.resolve()):new Promise(this._initPromiseCallback.bind(this))}_initPromiseCallback(e,t){Promise.all([this._scriptLoader.fetch(TWEEN_FILE_NAME,{id:"tween-js"})]).then(()=>{this._sceneManager=new GLBViewerSceneManager(this._creator_,{left:0,top:1,right:1,bottom:0}),this._sceneManager.enableHD(),e()})}clearScene(){this._sceneManager.clearScene()}loadGLB(e,t=1,r){return this._currentIdOrUrl=e,this._rapiAccess.trackView(e),this._sceneManager.loadGLB(e,!0,new Vector3(t,t,t),r)}loadStaticItem(e,t){return this._currentIdOrUrl=e,this._rapiAccess.trackView(e),this._sceneManager.loadStaticItem(e,t)}getCurrentId(){return this._currentIdOrUrl}loadSceneSetting(e){return this._sceneManager.loadSceneSettings(e)}preparePerspectiveImage(){return this._sceneManager.preparePerspectiveImage()}processRenderList(e,t=320,r=320){let a=JSON.parse(e);this._scriptLoader.fetch("static/jszip.min-c96375d50e72b199.js",{id:"jszip-js"}).then(()=>{let e=new GLBRenderWorker(this._sceneManager,t,r);e.addListener(this._sceneManager),e.start(a.items).then(t=>{t.generateAsync({type:"blob"}).then(t=>{download("content.zip",URL.createObjectURL(t)),e.removeListener(this._sceneManager)})})})}setOverrides(e){e&&(this._initData.setOverrides(e),this._globalInitData.setOverrides(e))}updateSize(){this._sceneManager.updateCamera()}getMain(){}resumeTest(e){this._domHelper.setDomElement(e),this._lifeCycleManager.resume()}pauseTest(){this._lifeCycleManager.pause()}showGUI(){this._sceneManager.showGUI()}get callbacks(){return{}}getScene(){return this._sceneManager.getScene()}updateScene(){this._sceneManager.updateScene()}getUnitFormatter(){return this._unitFormatter}getStorage(){return this._idbManager}setEnvironmentMap(e){const{url:t,intensity:r,rotation:a,maxLightSources:i}=e;this._sceneManager.setEnvironmentMap(t,r,a,i)}}__decorate([inject],RoomleGLBViewer.prototype,"_rapiAccess",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_domHelper",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_scriptLoader",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_lifeCycleManager",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_initData",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_globalInitData",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_unitFormatter",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_idbManager",void 0);class GlbViewer extends Main{setupGlobals(){}setupDependencies(){RoomleDependencyInjection.setup(INJECTABLES),this.lookup("logger",this._context)}cleanUpGlobals(){throw new Error("Method not implemented.")}cleanUpDependencies(){throw new Error("Method not implemented.")}bootFinished(){this._viewer=new RoomleGLBViewer(this._context),window.RoomleGLBViewer||(window.RoomleGLBViewer=this._viewer)}getApi(){return this._viewer}getContextName(){return"glb-viewer"}}export{GlbViewer};
2
- //# sourceMappingURL=glb-viewer-8f01091d.js.map
1
+ import{S as ScriptLoader,M as Main}from"./script-loader-ef092985.js";import{aw as InputManager,D as DependencyInjectionAssignment,L as Logger,R as RapiAccess,a1 as getGUI,_ as __decorate,i as inject,m as CANVAS_ID,q as DynamicLightSettingLoader,r as PREDEFINED_LIGHTSETTING,w as dispose,b as RoomleDependencyInjection}from"./roomle-dependency-injection-56db2f22.js";import{C as CameraControl3D,L as LightSetting,S as SceneManager,T as TWEEN_FILE_NAME}from"./camera-behaviour-4d4e7e7c.js";import{a as Vector3,ad as Box3,ag as Euler,Q as Quaternion,A as AmbientLight,C as Color,aE as CAMERA_TYPE,aR as getGlbUrl,bz as WebGLRenderer,i as SRGBColorSpace,bn as BasicShadowMap,N as PerspectiveCamera,bM as download}from"./main-thread-to-worker-82b32425.js";import{D as DefaultLightSetting}from"./default-light-setting-ad52e6de.js";import{G as GlbViewerCameraBehaviour}from"./glb-viewer-camera-behaviour-21363fa3.js";import"./query-params-helper-68ed40a6.js";const INJECTABLES=[new DependencyInjectionAssignment("script-loader",ScriptLoader),new DependencyInjectionAssignment("glb-input-manager",class extends InputManager{},1),new DependencyInjectionAssignment("logger",Logger),new DependencyInjectionAssignment("rapi-access",RapiAccess)];class AdjustableCameraControl3D extends CameraControl3D{constructor(){super(...arguments),this.shouldIgnoreStandardBehavior=!1}adjust(e,t,r,a,i){let n=new Vector3(-e.x/2,0,-e.z/2),s=new Vector3(e.x/2,e.y,e.z/2);this._boundingBox=new Box3(n,s);let o=new Euler(-Math.PI/2+a,r,0,"ZYX"),c=(new Quaternion).setFromEuler(o);this._camera.updateProjectionMatrix(),this._camera.quaternion.copy(c),this._camera.position.copy(t)}_update(e){this.shouldIgnoreStandardBehavior?this._saveYawAndPitch():super._update(e)}animateCamera(e){return!!this.shouldIgnoreStandardBehavior||super.animateCamera(e)}}class GLBViewerLightSetting extends LightSetting{constructor(e,t){super(e,t),this._params={ambientLight:{color:"#ffffff"}},this._ambientLight=new AmbientLight(new Color(this._params.ambientLight.color),.5),this.addToScene()}addToScene(){this._scene.add(this._ambientLight)}removeFromScene(){this._scene.remove(this._ambientLight)}reload(){this.removeFromScene(),this.addToScene()}showGUI(){let e=getGUI();if(e&&this._ambientLight){let t=e.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(e=>{this._ambientLight.color=new Color(e)})}}}class GLBViewerSceneManager extends SceneManager{constructor(e,t){super(e,t,CANVAS_ID.GLB,CAMERA_TYPE.CAMERA_3D),this._itemsCount=0,this._standardSceneBackgroundColor=this._scene.background,this._initData.legacyLight&&(this._renderer.capabilities.maxTextures>8?this.loadDynamicLightSetting(DynamicLightSettingLoader.createDynamicLightSettingSource(null,PREDEFINED_LIGHTSETTING.CAMERA)):(console.warn("this device has a maximum of 8 texture units thus we are using a simpler light setting"),this._lightSetting=new GLBViewerLightSetting(this._scene)))}createCameraControl(e,t){this._changeCameraBehaviour(new GlbViewerCameraBehaviour(new AdjustableCameraControl3D(this._creator_,this._getInputManager(),new Vector3(-1,1,1)),this._cameraBehaviourState))}_getInputManager(){return this._glbInputManager}async loadStaticItem(e,t){const r=await this._rapiAccess.getItem(e);if(r.configuration)return Promise.reject();const a=getGlbUrl(r);return a?this.loadGLB(a,!0,void 0,t):Promise.reject(new Error("GLB Url not detected"))}loadGLB(e,t=!0,r=new Vector3(1,1,1),a){return this.clearScene(),new Promise((i,n)=>{this._loadGLB(e,new Vector3(0,0,0),0,void 0,r,void 0,void 0,a).then(e=>{this._currentGLB=e,this._scene.add(this._currentGLB);let r=(new Box3).setFromObject(this._currentGLB);t&&this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D&&this.glbViewerCameraBehaviour.updateCameraOnItemLoaded(r),this._updateBounds(r,null,!0),i()},n)})}preparePerspectiveImage(e,t,r){return new Promise(a=>{var i,n;t||(t=1e3),r||(r=1e3),e||((e=new WebGLRenderer({antialias:!0})).setSize(t,r),e.outputColorSpace=SRGBColorSpace,e.autoClear=!1,e.shadowMap.enabled=!0,e.shadowMap.type=BasicShadowMap);let s=this.cameraBehaviour.cameraControl.getCamera().clone();s instanceof PerspectiveCamera&&(s.aspect=t/r,s.updateProjectionMatrix()),null===(i=this._lightSetting)||void 0===i||i.removeFromScene();let o=new DefaultLightSetting(this._scene);e.render(this._scene,s);let c=e.domElement.toDataURL();e.domElement.toBlob(e=>{a({image:c,width:t,height:r,blob:e})},"image/png"),o.removeFromScene(),null===(n=this._lightSetting)||void 0===n||n.addToScene()})}adjustCamera(e,t,r,a){if(this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D){let i=(new Box3).setFromObject(this._scene).getSize(new Vector3);this.cameraBehaviour.cameraControl.adjust(i,e,t,r,a),this._requestRender()}}onStart(e){this._itemsCount=e,this._scene.background=null,this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D&&(this.cameraBehaviour.cameraControl.shouldIgnoreStandardBehavior=!0)}onElementFinished(e){this._itemsCount,Math.round(100/this._itemsCount*e)}onFinished(e){this._scene.background=this._standardSceneBackgroundColor,this.cameraBehaviour.cameraControl instanceof AdjustableCameraControl3D&&(this.cameraBehaviour.cameraControl.shouldIgnoreStandardBehavior=!1)}clearScene(){this._currentGLB&&(this._scene.remove(this._currentGLB),dispose(this._currentGLB),this._currentGLB=null),super.clearScene()}enableHD(){super.enableHD()}sceneChanged(){}getBounds(){return this._currentGLB?(new Box3).setFromObject(this._currentGLB):null}get glbViewerCameraBehaviour(){return this.cameraBehaviour}getGeometryBounds(){return null}cameraBehaviourChanged(){super.cameraBehaviourChanged(),this.cameraBehaviour.cameraControl.addEventListener(3,()=>{this._requestRender()},this),this.cameraBehaviour.cameraControl.addEventListener(4,()=>{this._requestRender()},this)}}__decorate([inject],GLBViewerSceneManager.prototype,"_glbInputManager",void 0),__decorate([inject],GLBViewerSceneManager.prototype,"_rapiAccess",void 0);class GLBRenderWorker{constructor(e,t,r){this._prefix="https://furniture.roomle.com/3d/glb/",this._listeners=new Set,this._finishedItems=0,this._sceneManager=e,this._renderer=new WebGLRenderer({antialias:!0,alpha:!0}),this._width=t,this._height=r,this._renderer.setSize(t,r),this._renderer.setClearColor(16777215,0),this._renderer.outputColorSpace=SRGBColorSpace}addListener(e){this._listeners.add(e)}removeListener(e){this._listeners.delete(e)}start(e){return this._entries=[],e.forEach(e=>{this._entries.push(this._transform(e))}),this._finishedItems=0,this._listeners.forEach(e=>e.onStart(this._entries.length)),this._zip=new window.JSZip,this._doNextEntry(),new Promise(e=>{this._resolve=e})}_transform(e){return{name:e.path.replace(".glb",".png"),url:this._prefix+e.path,position:new Vector3(e.camera.position.x,e.camera.position.z,-e.camera.position.y),fov:2*e.camera.fieldOfView,yaw:e.camera.rotation.z,pitch:e.camera.rotation.x}}_doNextEntry(){0===this._entries.length?(this._listeners.forEach(e=>e.onFinished(this._zip)),this._resolve(this._zip)):this._processEntry(this._entries[0])}_processEntry(e){this._sceneManager.loadGLB(e.url,!1,void 0).then(()=>{this._sceneManager.adjustCamera(e.position,e.yaw,e.pitch,e.fov),this._sceneManager.preparePerspectiveImage(this._renderer,this._width,this._height).then(t=>{this._entryFinished(e,t)})})}_entryFinished(e,t){let r=this._entries.indexOf(e);r>-1&&this._entries.splice(r,1),this._finishedItems++,this._listeners.forEach(e=>e.onElementFinished(this._finishedItems)),this._zip.file(e.name,t.blob),this._doNextEntry()}}class RoomleGLBViewer{constructor(e){this._currentIdOrUrl=null,this._creator_=e}setCameraOffset(e){this._sceneManager.setCameraOffset(e)}getCameraOffset(){return this._sceneManager.getCameraOffset()}init(e,t){return this.setOverrides(t),this._domHelper.setDomElement(e),this._sceneManager?(this._lifeCycleManager.resume(),Promise.resolve()):new Promise(this._initPromiseCallback.bind(this))}_initPromiseCallback(e,t){Promise.all([this._scriptLoader.fetch(TWEEN_FILE_NAME,{id:"tween-js"})]).then(()=>{this._sceneManager=new GLBViewerSceneManager(this._creator_,{left:0,top:1,right:1,bottom:0}),this._sceneManager.enableHD(),e()})}clearScene(){this._sceneManager.clearScene()}loadGLB(e,t=1,r){return this._currentIdOrUrl=e,this._rapiAccess.trackView(e),this._sceneManager.loadGLB(e,!0,new Vector3(t,t,t),r)}loadStaticItem(e,t){return this._currentIdOrUrl=e,this._rapiAccess.trackView(e),this._sceneManager.loadStaticItem(e,t)}getCurrentId(){return this._currentIdOrUrl}loadSceneSetting(e){return this._sceneManager.loadSceneSettings(e)}preparePerspectiveImage(){return this._sceneManager.preparePerspectiveImage()}processRenderList(e,t=320,r=320){let a=JSON.parse(e);this._scriptLoader.fetch("static/jszip.min-c96375d50e72b199.js",{id:"jszip-js"}).then(()=>{let e=new GLBRenderWorker(this._sceneManager,t,r);e.addListener(this._sceneManager),e.start(a.items).then(t=>{t.generateAsync({type:"blob"}).then(t=>{download("content.zip",URL.createObjectURL(t)),e.removeListener(this._sceneManager)})})})}setOverrides(e){e&&(this._initData.setOverrides(e),this._globalInitData.setOverrides(e))}updateSize(){this._sceneManager.updateCamera()}getMain(){}resumeTest(e){this._domHelper.setDomElement(e),this._lifeCycleManager.resume()}pauseTest(){this._lifeCycleManager.pause()}showGUI(){this._sceneManager.showGUI()}get callbacks(){return{}}getScene(){return this._sceneManager.getScene()}updateScene(){this._sceneManager.updateScene()}getUnitFormatter(){return this._unitFormatter}getStorage(){return this._idbManager}setEnvironmentMap(e){const{url:t,intensity:r,rotation:a,maxLightSources:i}=e;this._sceneManager.setEnvironmentMap(t,r,a,i)}}__decorate([inject],RoomleGLBViewer.prototype,"_rapiAccess",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_domHelper",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_scriptLoader",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_lifeCycleManager",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_initData",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_globalInitData",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_unitFormatter",void 0),__decorate([inject],RoomleGLBViewer.prototype,"_idbManager",void 0);class GlbViewer extends Main{setupGlobals(){}setupDependencies(){RoomleDependencyInjection.setup(INJECTABLES),this.lookup("logger",this._context)}cleanUpGlobals(){throw new Error("Method not implemented.")}cleanUpDependencies(){throw new Error("Method not implemented.")}bootFinished(){this._viewer=new RoomleGLBViewer(this._context),window.RoomleGLBViewer||(window.RoomleGLBViewer=this._viewer)}getApi(){return this._viewer}getContextName(){return"glb-viewer"}}export{GlbViewer};
2
+ //# sourceMappingURL=glb-viewer-039ccdb1.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"glb-viewer-8f01091d.js","sources":["../../node_modules/jszip/dist/jszip.min.js"],"sourcesContent":["export default \"static/jszip.min-c96375d50e72b199.js\""],"names":[],"mappings":"+pRAAe"}
1
+ {"version":3,"file":"glb-viewer-039ccdb1.js","sources":["../../node_modules/jszip/dist/jszip.min.js"],"sourcesContent":["export default \"static/jszip.min-c96375d50e72b199.js\""],"names":[],"mappings":"+pRAAe"}
@@ -1,2 +1,2 @@
1
- System.register(["./script-loader-d1436ad4.nomodule.js","./roomle-dependency-injection-fe1cab4f.nomodule.js","./camera-behaviour-956df474.nomodule.js","./main-thread-to-worker-ff04af1e.nomodule.js","./default-light-setting-c2fd567d.nomodule.js","./glb-viewer-camera-behaviour-d7f286c3.nomodule.js","./query-params-helper-712890e0.nomodule.js"],(function(e){var t,r,i,n,a,s,o,h,c,d,l,u,m,_,p,g,w,v,f,b,C,S,L,B,M,y,I,x,G,E,j,O,F;return{setters:[function(e){t=e.S,r=e.M},function(e){i=e.aw,n=e.D,a=e.L,s=e.R,o=e.a1,h=e._,c=e.i,d=e.m,l=e.q,u=e.r,m=e.w,_=e.b},function(e){p=e.C,g=e.L,w=e.S,v=e.T},function(e){f=e.a,b=e.ad,C=e.ag,S=e.Q,L=e.A,B=e.C,M=e.aE,y=e.aR,I=e.bz,x=e.i,G=e.bn,E=e.N,j=e.bM},function(e){O=e.D},function(e){F=e.G},function(){}],execute:function(){const D=[new n("script-loader",t),new n("glb-input-manager",class extends i{},1),new n("logger",a),new n("rapi-access",s)];class P extends p{constructor(){super(...arguments),this.shouldIgnoreStandardBehavior=!1}adjust(e,t,r,i,n){let a=new f(-e.x/2,0,-e.z/2),s=new f(e.x/2,e.y,e.z/2);this._boundingBox=new b(a,s);let o=new C(-Math.PI/2+i,r,0,"ZYX"),h=(new S).setFromEuler(o);this._camera.updateProjectionMatrix(),this._camera.quaternion.copy(h),this._camera.position.copy(t)}_update(e){this.shouldIgnoreStandardBehavior?this._saveYawAndPitch():super._update(e)}animateCamera(e){return!!this.shouldIgnoreStandardBehavior||super.animateCamera(e)}}class z extends g{constructor(e,t){super(e,t),this._params={ambientLight:{color:"#ffffff"}},this._ambientLight=new L(new B(this._params.ambientLight.color),.5),this.addToScene()}addToScene(){this._scene.add(this._ambientLight)}removeFromScene(){this._scene.remove(this._ambientLight)}reload(){this.removeFromScene(),this.addToScene()}showGUI(){let e=o();if(e&&this._ambientLight){let t=e.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(e=>{this._ambientLight.color=new B(e)})}}}class A extends w{constructor(e,t){super(e,t,d.GLB,M.CAMERA_3D),this._itemsCount=0,this._standardSceneBackgroundColor=this._scene.background,this._initData.legacyLight&&(this._renderer.capabilities.maxTextures>8?this.loadDynamicLightSetting(l.createDynamicLightSettingSource(null,u.CAMERA)):(console.warn("this device has a maximum of 8 texture units thus we are using a simpler light setting"),this._lightSetting=new z(this._scene)))}createCameraControl(e,t){this._changeCameraBehaviour(new F(new P(this._creator_,this._getInputManager(),new f(-1,1,1)),this._cameraBehaviourState))}_getInputManager(){return this._glbInputManager}async loadStaticItem(e,t){const r=await this._rapiAccess.getItem(e);if(r.configuration)return Promise.reject();const i=y(r);return i?this.loadGLB(i,!0,void 0,t):Promise.reject(new Error("GLB Url not detected"))}loadGLB(e,t=!0,r=new f(1,1,1),i){return this.clearScene(),new Promise((n,a)=>{this._loadGLB(e,new f(0,0,0),0,void 0,r,void 0,void 0,i).then(e=>{this._currentGLB=e,this._scene.add(this._currentGLB);let r=(new b).setFromObject(this._currentGLB);t&&this.cameraBehaviour.cameraControl instanceof P&&this.glbViewerCameraBehaviour.updateCameraOnItemLoaded(r),this._updateBounds(r,null,!0),n()},a)})}preparePerspectiveImage(e,t,r){return new Promise(i=>{var n,a;t||(t=1e3),r||(r=1e3),e||((e=new I({antialias:!0})).setSize(t,r),e.outputColorSpace=x,e.autoClear=!1,e.shadowMap.enabled=!0,e.shadowMap.type=G);let s=this.cameraBehaviour.cameraControl.getCamera().clone();s instanceof E&&(s.aspect=t/r,s.updateProjectionMatrix()),null===(n=this._lightSetting)||void 0===n||n.removeFromScene();let o=new O(this._scene);e.render(this._scene,s);let h=e.domElement.toDataURL();e.domElement.toBlob(e=>{i({image:h,width:t,height:r,blob:e})},"image/png"),o.removeFromScene(),null===(a=this._lightSetting)||void 0===a||a.addToScene()})}adjustCamera(e,t,r,i){if(this.cameraBehaviour.cameraControl instanceof P){let n=(new b).setFromObject(this._scene).getSize(new f);this.cameraBehaviour.cameraControl.adjust(n,e,t,r,i),this._requestRender()}}onStart(e){this._itemsCount=e,this._scene.background=null,this.cameraBehaviour.cameraControl instanceof P&&(this.cameraBehaviour.cameraControl.shouldIgnoreStandardBehavior=!0)}onElementFinished(e){this._itemsCount,Math.round(100/this._itemsCount*e)}onFinished(e){this._scene.background=this._standardSceneBackgroundColor,this.cameraBehaviour.cameraControl instanceof P&&(this.cameraBehaviour.cameraControl.shouldIgnoreStandardBehavior=!1)}clearScene(){this._currentGLB&&(this._scene.remove(this._currentGLB),m(this._currentGLB),this._currentGLB=null),super.clearScene()}enableHD(){super.enableHD()}sceneChanged(){}getBounds(){return this._currentGLB?(new b).setFromObject(this._currentGLB):null}get glbViewerCameraBehaviour(){return this.cameraBehaviour}getGeometryBounds(){return null}cameraBehaviourChanged(){super.cameraBehaviourChanged(),this.cameraBehaviour.cameraControl.addEventListener(3,()=>{this._requestRender()},this),this.cameraBehaviour.cameraControl.addEventListener(4,()=>{this._requestRender()},this)}}h([c],A.prototype,"_glbInputManager",void 0),h([c],A.prototype,"_rapiAccess",void 0);class U{constructor(e,t,r){this._prefix="https://furniture.roomle.com/3d/glb/",this._listeners=new Set,this._finishedItems=0,this._sceneManager=e,this._renderer=new I({antialias:!0,alpha:!0}),this._width=t,this._height=r,this._renderer.setSize(t,r),this._renderer.setClearColor(16777215,0),this._renderer.outputColorSpace=x}addListener(e){this._listeners.add(e)}removeListener(e){this._listeners.delete(e)}start(e){return this._entries=[],e.forEach(e=>{this._entries.push(this._transform(e))}),this._finishedItems=0,this._listeners.forEach(e=>e.onStart(this._entries.length)),this._zip=new window.JSZip,this._doNextEntry(),new Promise(e=>{this._resolve=e})}_transform(e){return{name:e.path.replace(".glb",".png"),url:this._prefix+e.path,position:new f(e.camera.position.x,e.camera.position.z,-e.camera.position.y),fov:2*e.camera.fieldOfView,yaw:e.camera.rotation.z,pitch:e.camera.rotation.x}}_doNextEntry(){0===this._entries.length?(this._listeners.forEach(e=>e.onFinished(this._zip)),this._resolve(this._zip)):this._processEntry(this._entries[0])}_processEntry(e){this._sceneManager.loadGLB(e.url,!1,void 0).then(()=>{this._sceneManager.adjustCamera(e.position,e.yaw,e.pitch,e.fov),this._sceneManager.preparePerspectiveImage(this._renderer,this._width,this._height).then(t=>{this._entryFinished(e,t)})})}_entryFinished(e,t){let r=this._entries.indexOf(e);r>-1&&this._entries.splice(r,1),this._finishedItems++,this._listeners.forEach(e=>e.onElementFinished(this._finishedItems)),this._zip.file(e.name,t.blob),this._doNextEntry()}}class R{constructor(e){this._currentIdOrUrl=null,this._creator_=e}setCameraOffset(e){this._sceneManager.setCameraOffset(e)}getCameraOffset(){return this._sceneManager.getCameraOffset()}init(e,t){return this.setOverrides(t),this._domHelper.setDomElement(e),this._sceneManager?(this._lifeCycleManager.resume(),Promise.resolve()):new Promise(this._initPromiseCallback.bind(this))}_initPromiseCallback(e,t){Promise.all([this._scriptLoader.fetch(v,{id:"tween-js"})]).then(()=>{this._sceneManager=new A(this._creator_,{left:0,top:1,right:1,bottom:0}),this._sceneManager.enableHD(),e()})}clearScene(){this._sceneManager.clearScene()}loadGLB(e,t=1,r){return this._currentIdOrUrl=e,this._rapiAccess.trackView(e),this._sceneManager.loadGLB(e,!0,new f(t,t,t),r)}loadStaticItem(e,t){return this._currentIdOrUrl=e,this._rapiAccess.trackView(e),this._sceneManager.loadStaticItem(e,t)}getCurrentId(){return this._currentIdOrUrl}loadSceneSetting(e){return this._sceneManager.loadSceneSettings(e)}preparePerspectiveImage(){return this._sceneManager.preparePerspectiveImage()}processRenderList(e,t=320,r=320){let i=JSON.parse(e);this._scriptLoader.fetch("static/jszip.min-c96375d50e72b199.js",{id:"jszip-js"}).then(()=>{let e=new U(this._sceneManager,t,r);e.addListener(this._sceneManager),e.start(i.items).then(t=>{t.generateAsync({type:"blob"}).then(t=>{j("content.zip",URL.createObjectURL(t)),e.removeListener(this._sceneManager)})})})}setOverrides(e){e&&(this._initData.setOverrides(e),this._globalInitData.setOverrides(e))}updateSize(){this._sceneManager.updateCamera()}getMain(){}resumeTest(e){this._domHelper.setDomElement(e),this._lifeCycleManager.resume()}pauseTest(){this._lifeCycleManager.pause()}showGUI(){this._sceneManager.showGUI()}get callbacks(){return{}}getScene(){return this._sceneManager.getScene()}updateScene(){this._sceneManager.updateScene()}getUnitFormatter(){return this._unitFormatter}getStorage(){return this._idbManager}setEnvironmentMap(e){const{url:t,intensity:r,rotation:i,maxLightSources:n}=e;this._sceneManager.setEnvironmentMap(t,r,i,n)}}h([c],R.prototype,"_rapiAccess",void 0),h([c],R.prototype,"_domHelper",void 0),h([c],R.prototype,"_scriptLoader",void 0),h([c],R.prototype,"_lifeCycleManager",void 0),h([c],R.prototype,"_initData",void 0),h([c],R.prototype,"_globalInitData",void 0),h([c],R.prototype,"_unitFormatter",void 0),h([c],R.prototype,"_idbManager",void 0),e("GlbViewer",class extends r{setupGlobals(){}setupDependencies(){_.setup(D),this.lookup("logger",this._context)}cleanUpGlobals(){throw new Error("Method not implemented.")}cleanUpDependencies(){throw new Error("Method not implemented.")}bootFinished(){this._viewer=new R(this._context),window.RoomleGLBViewer||(window.RoomleGLBViewer=this._viewer)}getApi(){return this._viewer}getContextName(){return"glb-viewer"}})}}}));
2
- //# sourceMappingURL=glb-viewer-597ac257.nomodule.js.map
1
+ System.register(["./script-loader-98a17bbb.nomodule.js","./roomle-dependency-injection-c12e4c00.nomodule.js","./camera-behaviour-1b0b7853.nomodule.js","./main-thread-to-worker-ff04af1e.nomodule.js","./default-light-setting-7f113f35.nomodule.js","./glb-viewer-camera-behaviour-c43375cf.nomodule.js","./query-params-helper-712890e0.nomodule.js"],(function(e){var t,r,i,n,s,a,o,h,c,d,l,u,m,_,p,g,w,v,b,f,C,S,L,B,M,y,I,x,G,E,j,O,F;return{setters:[function(e){t=e.S,r=e.M},function(e){i=e.aw,n=e.D,s=e.L,a=e.R,o=e.a1,h=e._,c=e.i,d=e.m,l=e.q,u=e.r,m=e.w,_=e.b},function(e){p=e.C,g=e.L,w=e.S,v=e.T},function(e){b=e.a,f=e.ad,C=e.ag,S=e.Q,L=e.A,B=e.C,M=e.aE,y=e.aR,I=e.bz,x=e.i,G=e.bn,E=e.N,j=e.bM},function(e){O=e.D},function(e){F=e.G},function(){}],execute:function(){const D=[new n("script-loader",t),new n("glb-input-manager",class extends i{},1),new n("logger",s),new n("rapi-access",a)];class P extends p{constructor(){super(...arguments),this.shouldIgnoreStandardBehavior=!1}adjust(e,t,r,i,n){let s=new b(-e.x/2,0,-e.z/2),a=new b(e.x/2,e.y,e.z/2);this._boundingBox=new f(s,a);let o=new C(-Math.PI/2+i,r,0,"ZYX"),h=(new S).setFromEuler(o);this._camera.updateProjectionMatrix(),this._camera.quaternion.copy(h),this._camera.position.copy(t)}_update(e){this.shouldIgnoreStandardBehavior?this._saveYawAndPitch():super._update(e)}animateCamera(e){return!!this.shouldIgnoreStandardBehavior||super.animateCamera(e)}}class z extends g{constructor(e,t){super(e,t),this._params={ambientLight:{color:"#ffffff"}},this._ambientLight=new L(new B(this._params.ambientLight.color),.5),this.addToScene()}addToScene(){this._scene.add(this._ambientLight)}removeFromScene(){this._scene.remove(this._ambientLight)}reload(){this.removeFromScene(),this.addToScene()}showGUI(){let e=o();if(e&&this._ambientLight){let t=e.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(e=>{this._ambientLight.color=new B(e)})}}}class A extends w{constructor(e,t){super(e,t,d.GLB,M.CAMERA_3D),this._itemsCount=0,this._standardSceneBackgroundColor=this._scene.background,this._initData.legacyLight&&(this._renderer.capabilities.maxTextures>8?this.loadDynamicLightSetting(l.createDynamicLightSettingSource(null,u.CAMERA)):(console.warn("this device has a maximum of 8 texture units thus we are using a simpler light setting"),this._lightSetting=new z(this._scene)))}createCameraControl(e,t){this._changeCameraBehaviour(new F(new P(this._creator_,this._getInputManager(),new b(-1,1,1)),this._cameraBehaviourState))}_getInputManager(){return this._glbInputManager}async loadStaticItem(e,t){const r=await this._rapiAccess.getItem(e);if(r.configuration)return Promise.reject();const i=y(r);return i?this.loadGLB(i,!0,void 0,t):Promise.reject(new Error("GLB Url not detected"))}loadGLB(e,t=!0,r=new b(1,1,1),i){return this.clearScene(),new Promise((n,s)=>{this._loadGLB(e,new b(0,0,0),0,void 0,r,void 0,void 0,i).then(e=>{this._currentGLB=e,this._scene.add(this._currentGLB);let r=(new f).setFromObject(this._currentGLB);t&&this.cameraBehaviour.cameraControl instanceof P&&this.glbViewerCameraBehaviour.updateCameraOnItemLoaded(r),this._updateBounds(r,null,!0),n()},s)})}preparePerspectiveImage(e,t,r){return new Promise(i=>{var n,s;t||(t=1e3),r||(r=1e3),e||((e=new I({antialias:!0})).setSize(t,r),e.outputColorSpace=x,e.autoClear=!1,e.shadowMap.enabled=!0,e.shadowMap.type=G);let a=this.cameraBehaviour.cameraControl.getCamera().clone();a instanceof E&&(a.aspect=t/r,a.updateProjectionMatrix()),null===(n=this._lightSetting)||void 0===n||n.removeFromScene();let o=new O(this._scene);e.render(this._scene,a);let h=e.domElement.toDataURL();e.domElement.toBlob(e=>{i({image:h,width:t,height:r,blob:e})},"image/png"),o.removeFromScene(),null===(s=this._lightSetting)||void 0===s||s.addToScene()})}adjustCamera(e,t,r,i){if(this.cameraBehaviour.cameraControl instanceof P){let n=(new f).setFromObject(this._scene).getSize(new b);this.cameraBehaviour.cameraControl.adjust(n,e,t,r,i),this._requestRender()}}onStart(e){this._itemsCount=e,this._scene.background=null,this.cameraBehaviour.cameraControl instanceof P&&(this.cameraBehaviour.cameraControl.shouldIgnoreStandardBehavior=!0)}onElementFinished(e){this._itemsCount,Math.round(100/this._itemsCount*e)}onFinished(e){this._scene.background=this._standardSceneBackgroundColor,this.cameraBehaviour.cameraControl instanceof P&&(this.cameraBehaviour.cameraControl.shouldIgnoreStandardBehavior=!1)}clearScene(){this._currentGLB&&(this._scene.remove(this._currentGLB),m(this._currentGLB),this._currentGLB=null),super.clearScene()}enableHD(){super.enableHD()}sceneChanged(){}getBounds(){return this._currentGLB?(new f).setFromObject(this._currentGLB):null}get glbViewerCameraBehaviour(){return this.cameraBehaviour}getGeometryBounds(){return null}cameraBehaviourChanged(){super.cameraBehaviourChanged(),this.cameraBehaviour.cameraControl.addEventListener(3,()=>{this._requestRender()},this),this.cameraBehaviour.cameraControl.addEventListener(4,()=>{this._requestRender()},this)}}h([c],A.prototype,"_glbInputManager",void 0),h([c],A.prototype,"_rapiAccess",void 0);class U{constructor(e,t,r){this._prefix="https://furniture.roomle.com/3d/glb/",this._listeners=new Set,this._finishedItems=0,this._sceneManager=e,this._renderer=new I({antialias:!0,alpha:!0}),this._width=t,this._height=r,this._renderer.setSize(t,r),this._renderer.setClearColor(16777215,0),this._renderer.outputColorSpace=x}addListener(e){this._listeners.add(e)}removeListener(e){this._listeners.delete(e)}start(e){return this._entries=[],e.forEach(e=>{this._entries.push(this._transform(e))}),this._finishedItems=0,this._listeners.forEach(e=>e.onStart(this._entries.length)),this._zip=new window.JSZip,this._doNextEntry(),new Promise(e=>{this._resolve=e})}_transform(e){return{name:e.path.replace(".glb",".png"),url:this._prefix+e.path,position:new b(e.camera.position.x,e.camera.position.z,-e.camera.position.y),fov:2*e.camera.fieldOfView,yaw:e.camera.rotation.z,pitch:e.camera.rotation.x}}_doNextEntry(){0===this._entries.length?(this._listeners.forEach(e=>e.onFinished(this._zip)),this._resolve(this._zip)):this._processEntry(this._entries[0])}_processEntry(e){this._sceneManager.loadGLB(e.url,!1,void 0).then(()=>{this._sceneManager.adjustCamera(e.position,e.yaw,e.pitch,e.fov),this._sceneManager.preparePerspectiveImage(this._renderer,this._width,this._height).then(t=>{this._entryFinished(e,t)})})}_entryFinished(e,t){let r=this._entries.indexOf(e);r>-1&&this._entries.splice(r,1),this._finishedItems++,this._listeners.forEach(e=>e.onElementFinished(this._finishedItems)),this._zip.file(e.name,t.blob),this._doNextEntry()}}class R{constructor(e){this._currentIdOrUrl=null,this._creator_=e}setCameraOffset(e){this._sceneManager.setCameraOffset(e)}getCameraOffset(){return this._sceneManager.getCameraOffset()}init(e,t){return this.setOverrides(t),this._domHelper.setDomElement(e),this._sceneManager?(this._lifeCycleManager.resume(),Promise.resolve()):new Promise(this._initPromiseCallback.bind(this))}_initPromiseCallback(e,t){Promise.all([this._scriptLoader.fetch(v,{id:"tween-js"})]).then(()=>{this._sceneManager=new A(this._creator_,{left:0,top:1,right:1,bottom:0}),this._sceneManager.enableHD(),e()})}clearScene(){this._sceneManager.clearScene()}loadGLB(e,t=1,r){return this._currentIdOrUrl=e,this._rapiAccess.trackView(e),this._sceneManager.loadGLB(e,!0,new b(t,t,t),r)}loadStaticItem(e,t){return this._currentIdOrUrl=e,this._rapiAccess.trackView(e),this._sceneManager.loadStaticItem(e,t)}getCurrentId(){return this._currentIdOrUrl}loadSceneSetting(e){return this._sceneManager.loadSceneSettings(e)}preparePerspectiveImage(){return this._sceneManager.preparePerspectiveImage()}processRenderList(e,t=320,r=320){let i=JSON.parse(e);this._scriptLoader.fetch("static/jszip.min-c96375d50e72b199.js",{id:"jszip-js"}).then(()=>{let e=new U(this._sceneManager,t,r);e.addListener(this._sceneManager),e.start(i.items).then(t=>{t.generateAsync({type:"blob"}).then(t=>{j("content.zip",URL.createObjectURL(t)),e.removeListener(this._sceneManager)})})})}setOverrides(e){e&&(this._initData.setOverrides(e),this._globalInitData.setOverrides(e))}updateSize(){this._sceneManager.updateCamera()}getMain(){}resumeTest(e){this._domHelper.setDomElement(e),this._lifeCycleManager.resume()}pauseTest(){this._lifeCycleManager.pause()}showGUI(){this._sceneManager.showGUI()}get callbacks(){return{}}getScene(){return this._sceneManager.getScene()}updateScene(){this._sceneManager.updateScene()}getUnitFormatter(){return this._unitFormatter}getStorage(){return this._idbManager}setEnvironmentMap(e){const{url:t,intensity:r,rotation:i,maxLightSources:n}=e;this._sceneManager.setEnvironmentMap(t,r,i,n)}}h([c],R.prototype,"_rapiAccess",void 0),h([c],R.prototype,"_domHelper",void 0),h([c],R.prototype,"_scriptLoader",void 0),h([c],R.prototype,"_lifeCycleManager",void 0),h([c],R.prototype,"_initData",void 0),h([c],R.prototype,"_globalInitData",void 0),h([c],R.prototype,"_unitFormatter",void 0),h([c],R.prototype,"_idbManager",void 0),e("GlbViewer",class extends r{setupGlobals(){}setupDependencies(){_.setup(D),this.lookup("logger",this._context)}cleanUpGlobals(){throw new Error("Method not implemented.")}cleanUpDependencies(){throw new Error("Method not implemented.")}bootFinished(){this._viewer=new R(this._context),window.RoomleGLBViewer||(window.RoomleGLBViewer=this._viewer)}getApi(){return this._viewer}getContextName(){return"glb-viewer"}})}}}));
2
+ //# sourceMappingURL=glb-viewer-0fd5cc99.nomodule.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"glb-viewer-597ac257.nomodule.js","sources":["../../node_modules/jszip/dist/jszip.min.js"],"sourcesContent":["export default \"static/jszip.min-c96375d50e72b199.js\""],"names":[],"mappings":"yqPAAe"}
1
+ {"version":3,"file":"glb-viewer-0fd5cc99.nomodule.js","sources":["../../node_modules/jszip/dist/jszip.min.js"],"sourcesContent":["export default \"static/jszip.min-c96375d50e72b199.js\""],"names":[],"mappings":"yqPAAe"}
@@ -0,0 +1,2 @@
1
+ import{b as CameraBehaviour}from"./camera-behaviour-4d4e7e7c.js";class GlbViewerCameraBehaviour extends CameraBehaviour{get cameraControl(){return this._cameraControl}updateCameraOnItemLoaded(e){this.cameraControl.updateAndReset(e,!1)}}export{GlbViewerCameraBehaviour as G};
2
+ //# sourceMappingURL=glb-viewer-camera-behaviour-21363fa3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glb-viewer-camera-behaviour-21363fa3.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- System.register(["./camera-behaviour-956df474.nomodule.js"],(function(e){var t;return{setters:[function(e){t=e.b}],execute:function(){e("G",class extends t{get cameraControl(){return this._cameraControl}updateCameraOnItemLoaded(e){this.cameraControl.updateAndReset(e,!1)}})}}}));
2
- //# sourceMappingURL=glb-viewer-camera-behaviour-d7f286c3.nomodule.js.map
1
+ System.register(["./camera-behaviour-1b0b7853.nomodule.js"],(function(e){var t;return{setters:[function(e){t=e.b}],execute:function(){e("G",class extends t{get cameraControl(){return this._cameraControl}updateCameraOnItemLoaded(e){this.cameraControl.updateAndReset(e,!1)}})}}}));
2
+ //# sourceMappingURL=glb-viewer-camera-behaviour-c43375cf.nomodule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glb-viewer-camera-behaviour-c43375cf.nomodule.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import{GlbViewer}from"./glb-viewer-039ccdb1.js";import"./script-loader-ef092985.js";import"./query-params-helper-68ed40a6.js";import"./main-thread-to-worker-82b32425.js";import"./roomle-dependency-injection-56db2f22.js";import"./camera-behaviour-4d4e7e7c.js";import"./default-light-setting-ad52e6de.js";import"./glb-viewer-camera-behaviour-21363fa3.js";(new GlbViewer).boot();
2
+ //# sourceMappingURL=glb-viewer-main-ca829f73.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glb-viewer-main-ca829f73.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- System.register(["./glb-viewer-597ac257.nomodule.js","./script-loader-d1436ad4.nomodule.js","./query-params-helper-712890e0.nomodule.js","./main-thread-to-worker-ff04af1e.nomodule.js","./roomle-dependency-injection-fe1cab4f.nomodule.js","./camera-behaviour-956df474.nomodule.js","./default-light-setting-c2fd567d.nomodule.js","./glb-viewer-camera-behaviour-d7f286c3.nomodule.js"],(function(){var e;return{setters:[function(n){e=n.GlbViewer},function(){},function(){},function(){},function(){},function(){},function(){},function(){}],execute:function(){(new e).boot()}}}));
1
+ System.register(["./glb-viewer-0fd5cc99.nomodule.js","./script-loader-98a17bbb.nomodule.js","./query-params-helper-712890e0.nomodule.js","./main-thread-to-worker-ff04af1e.nomodule.js","./roomle-dependency-injection-c12e4c00.nomodule.js","./camera-behaviour-1b0b7853.nomodule.js","./default-light-setting-7f113f35.nomodule.js","./glb-viewer-camera-behaviour-c43375cf.nomodule.js"],(function(){var e;return{setters:[function(n){e=n.GlbViewer},function(){},function(){},function(){},function(){},function(){},function(){},function(){}],execute:function(){(new e).boot()}}}));
2
2
  //# sourceMappingURL=glb-viewer-main.nomodule.js.map
@@ -1,2 +1,2 @@
1
- System.register(["./roomle-dependency-injection-3fd533e1.legacy.js","./main-thread-to-worker-63c62382.legacy.js"],(function(e){var n,t,a,s,i;return{setters:[function(e){n=e.aI,t=e._,a=e.i},function(e){s=e.g,i=e.a}],execute:function(){class c 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",c),t([a],c.prototype,"_staticItemLoader",void 0)}}}));
2
- //# sourceMappingURL=banana-for-scale-18be7655.legacy.js.map
1
+ System.register(["./roomle-dependency-injection-3542b35a.legacy.js","./main-thread-to-worker-63c62382.legacy.js"],(function(e){var n,t,a,s,i;return{setters:[function(e){n=e.aI,t=e._,a=e.i},function(e){s=e.g,i=e.a}],execute:function(){class c 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",c),t([a],c.prototype,"_staticItemLoader",void 0)}}}));
2
+ //# sourceMappingURL=banana-for-scale-ade37173.legacy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"banana-for-scale-18be7655.legacy.js","sources":["../../../packages/configurator-core/public/geometry/banana_div2.glb"],"sourcesContent":["export default \"static/banana_div2-1351c98ec2986be1.glb\""],"names":[],"mappings":"yTAAe"}
1
+ {"version":3,"file":"banana-for-scale-ade37173.legacy.js","sources":["../../../packages/configurator-core/public/geometry/banana_div2.glb"],"sourcesContent":["export default \"static/banana_div2-1351c98ec2986be1.glb\""],"names":[],"mappings":"yTAAe"}