kitchen-simulator 1.1.1-test.60 → 1.1.1-test.62

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 (321) hide show
  1. package/es/@history.js +10 -2
  2. package/es/AppContext.js +10 -3
  3. package/es/KitchenConfigurator.js +92 -96
  4. package/es/KitchenConfiguratorApp.js +143 -136
  5. package/es/actions/area-actions.js +12 -5
  6. package/es/actions/export.js +29 -12
  7. package/es/actions/groups-actions.js +45 -27
  8. package/es/actions/holes-actions.js +55 -34
  9. package/es/actions/items-actions.js +145 -94
  10. package/es/actions/lines-actions.js +36 -21
  11. package/es/actions/project-actions.js +145 -94
  12. package/es/actions/scene-actions.js +21 -11
  13. package/es/actions/vertices-actions.js +15 -7
  14. package/es/actions/viewer2d-actions.js +36 -21
  15. package/es/actions/viewer3d-actions.js +18 -9
  16. package/es/catalog/areas/area/planner-element.js +9 -2
  17. package/es/catalog/catalog.js +21 -24
  18. package/es/catalog/factories/area-factory-3d.js +31 -22
  19. package/es/catalog/factories/area-factory.js +20 -14
  20. package/es/catalog/factories/export.js +24 -6
  21. package/es/catalog/factories/wall-factory-3d.js +41 -31
  22. package/es/catalog/factories/wall-factory.js +31 -21
  23. package/es/catalog/holes/door-closet/planner-element.js +24 -15
  24. package/es/catalog/holes/door-double/planner-element.js +24 -15
  25. package/es/catalog/holes/door-exterior/planner-element.js +25 -16
  26. package/es/catalog/holes/door-interior/planner-element.js +25 -16
  27. package/es/catalog/holes/door-panic/planner-element.js +16 -7
  28. package/es/catalog/holes/door-panic-double/planner-element.js +24 -15
  29. package/es/catalog/holes/door-sliding/planner-element.js +25 -16
  30. package/es/catalog/holes/doorway-framed/planner-element.js +20 -11
  31. package/es/catalog/holes/doorway-frameless/planner-element.js +16 -7
  32. package/es/catalog/holes/export.js +97 -13
  33. package/es/catalog/holes/window-clear/planner-element.js +19 -10
  34. package/es/catalog/holes/window-cross/planner-element.js +19 -10
  35. package/es/catalog/holes/window-double-hung/planner-element.js +19 -10
  36. package/es/catalog/holes/window-vertical/planner-element.js +19 -10
  37. package/es/catalog/lines/wall/planner-element.js +9 -2
  38. package/es/catalog/molding/molding-dcm/planner-element.js +14 -5
  39. package/es/catalog/molding/molding-fbm/planner-element.js +14 -5
  40. package/es/catalog/molding/molding-lrm/planner-element.js +14 -5
  41. package/es/catalog/properties/export.js +80 -20
  42. package/es/catalog/properties/property-checkbox.js +31 -27
  43. package/es/catalog/properties/property-color.js +23 -16
  44. package/es/catalog/properties/property-enum.js +31 -29
  45. package/es/catalog/properties/property-hidden.js +16 -9
  46. package/es/catalog/properties/property-lenght-measure.js +45 -39
  47. package/es/catalog/properties/property-length-measure.js +43 -42
  48. package/es/catalog/properties/property-length-measure_hole.js +45 -39
  49. package/es/catalog/properties/property-number.js +24 -17
  50. package/es/catalog/properties/property-read-only.js +23 -16
  51. package/es/catalog/properties/property-string.js +23 -16
  52. package/es/catalog/properties/property-toggle.js +23 -16
  53. package/es/catalog/properties/shared-property-style.js +7 -1
  54. package/es/catalog/utils/FuseUtils.js +15 -11
  55. package/es/catalog/utils/exporter.js +15 -11
  56. package/es/catalog/utils/geom-utils.js +29 -13
  57. package/es/catalog/utils/item-loader.js +97 -91
  58. package/es/catalog/utils/load-obj.js +28 -20
  59. package/es/catalog/utils/mtl-loader.js +8 -3
  60. package/es/catalog/utils/obj-loader.js +8 -3
  61. package/es/class/FuseUtils.js +15 -11
  62. package/es/class/area.js +28 -26
  63. package/es/class/export.js +95 -23
  64. package/es/class/group.js +59 -62
  65. package/es/class/guide.js +21 -19
  66. package/es/class/hole.js +89 -87
  67. package/es/class/item.js +147 -150
  68. package/es/class/layer.js +65 -63
  69. package/es/class/line.js +143 -144
  70. package/es/class/project.js +98 -94
  71. package/es/class/vertex.js +35 -33
  72. package/es/components/content.js +28 -19
  73. package/es/components/disclaimer/disclaimer.js +18 -10
  74. package/es/components/export.js +32 -8
  75. package/es/components/style/button.js +31 -30
  76. package/es/components/style/cancel-button.js +14 -8
  77. package/es/components/style/content-container.js +16 -12
  78. package/es/components/style/content-title.js +20 -15
  79. package/es/components/style/delete-button.js +17 -9
  80. package/es/components/style/export.js +120 -30
  81. package/es/components/style/form-block.js +15 -12
  82. package/es/components/style/form-color-input.js +14 -8
  83. package/es/components/style/form-label.js +15 -12
  84. package/es/components/style/form-number-input.js +49 -47
  85. package/es/components/style/form-number-input_2.js +44 -42
  86. package/es/components/style/form-select.js +24 -26
  87. package/es/components/style/form-slider.js +17 -11
  88. package/es/components/style/form-submit-button.js +17 -9
  89. package/es/components/style/form-text-input.js +34 -33
  90. package/es/components/viewer2d/area.js +24 -17
  91. package/es/components/viewer2d/export.js +120 -30
  92. package/es/components/viewer2d/grids/grid-horizontal-streak.js +17 -10
  93. package/es/components/viewer2d/grids/grid-streak.js +17 -10
  94. package/es/components/viewer2d/grids/grid-vertical-streak.js +17 -10
  95. package/es/components/viewer2d/grids/grids.js +19 -15
  96. package/es/components/viewer2d/group.js +24 -15
  97. package/es/components/viewer2d/item.js +70 -66
  98. package/es/components/viewer2d/layer.js +30 -23
  99. package/es/components/viewer2d/line.js +111 -101
  100. package/es/components/viewer2d/ruler.js +29 -22
  101. package/es/components/viewer2d/rulerDist.js +28 -21
  102. package/es/components/viewer2d/rulerX.js +47 -45
  103. package/es/components/viewer2d/rulerY.js +45 -43
  104. package/es/components/viewer2d/scene.js +41 -45
  105. package/es/components/viewer2d/snap.js +22 -13
  106. package/es/components/viewer2d/state.js +27 -23
  107. package/es/components/viewer2d/utils.js +37 -29
  108. package/es/components/viewer2d/vertex.js +17 -8
  109. package/es/components/viewer2d/viewer2d.js +163 -164
  110. package/es/components/viewer3d/camera-controls-module/camera-controls.module.js +23 -24
  111. package/es/components/viewer3d/dcm.js +7 -1
  112. package/es/components/viewer3d/fbm.js +7 -1
  113. package/es/components/viewer3d/front3D.js +21 -17
  114. package/es/components/viewer3d/grid-creator.js +17 -8
  115. package/es/components/viewer3d/grids/grid-horizontal-streak.js +14 -6
  116. package/es/components/viewer3d/grids/grid-streak.js +13 -5
  117. package/es/components/viewer3d/grids/grid-vertical-streak.js +14 -6
  118. package/es/components/viewer3d/libs/first-person-controls.js +9 -2
  119. package/es/components/viewer3d/libs/helvetiker_regular.typeface.js +7 -1
  120. package/es/components/viewer3d/libs/mtl-loader.js +7 -1
  121. package/es/components/viewer3d/libs/obj-loader.js +7 -1
  122. package/es/components/viewer3d/libs/orbit-controls.js +8 -2
  123. package/es/components/viewer3d/libs/pointer-lock-controls.js +8 -2
  124. package/es/components/viewer3d/lrm.js +7 -1
  125. package/es/components/viewer3d/model.js +7 -1
  126. package/es/components/viewer3d/pointer-lock-navigation.js +10 -3
  127. package/es/components/viewer3d/ruler-utils/itemRect.js +25 -18
  128. package/es/components/viewer3d/ruler-utils/layer3D.js +66 -59
  129. package/es/components/viewer3d/ruler-utils/ruler3D.js +46 -42
  130. package/es/components/viewer3d/ruler-utils/scene3D.js +17 -9
  131. package/es/components/viewer3d/ruler-utils/state3D.js +11 -4
  132. package/es/components/viewer3d/scene-creator.js +227 -198
  133. package/es/components/viewer3d/three-memory-cleaner.js +12 -3
  134. package/es/components/viewer3d/viewer3d-first-person.js +46 -46
  135. package/es/components/viewer3d/viewer3d.js +202 -202
  136. package/es/constants.js +358 -349
  137. package/es/index.js +15 -14
  138. package/es/models.js +184 -183
  139. package/es/plugins/SVGLoader.js +53 -48
  140. package/es/plugins/autosave.js +9 -3
  141. package/es/plugins/console-debugger.js +12 -8
  142. package/es/plugins/export.js +32 -8
  143. package/es/plugins/keyboard.js +35 -29
  144. package/es/reducers/areas-reducer.js +13 -7
  145. package/es/reducers/export.js +96 -24
  146. package/es/reducers/groups-reducer.js +37 -31
  147. package/es/reducers/holes-reducer.js +49 -43
  148. package/es/reducers/items-reducer.js +112 -106
  149. package/es/reducers/lines-reducer.js +34 -28
  150. package/es/reducers/project-reducer.js +111 -105
  151. package/es/reducers/reducer.js +23 -16
  152. package/es/reducers/scene-reducer.js +21 -15
  153. package/es/reducers/user-reducer.js +11 -5
  154. package/es/reducers/vertices-reducer.js +17 -11
  155. package/es/reducers/viewer2d-reducer.js +24 -18
  156. package/es/reducers/viewer3d-reducer.js +22 -16
  157. package/es/shared-style.js +16 -10
  158. package/es/styles/export.js +11 -3
  159. package/es/translator/en.js +7 -1
  160. package/es/translator/it.js +7 -1
  161. package/es/translator/ru.js +7 -1
  162. package/es/translator/translator.js +19 -17
  163. package/es/utils/browser.js +9 -2
  164. package/es/utils/convert-units-lite.js +7 -1
  165. package/es/utils/email-validator.js +7 -1
  166. package/es/utils/export.js +46 -15
  167. package/es/utils/geometry.js +278 -190
  168. package/es/utils/get-edges-of-subgraphs.js +9 -2
  169. package/es/utils/graph-cycles.js +11 -8
  170. package/es/utils/graph-inner-cycles.js +18 -10
  171. package/es/utils/graph.js +17 -13
  172. package/es/utils/helper.js +63 -41
  173. package/es/utils/history.js +15 -8
  174. package/es/utils/id-broker.js +15 -12
  175. package/es/utils/logger.js +7 -1
  176. package/es/utils/math.js +12 -5
  177. package/es/utils/molding.js +144 -125
  178. package/es/utils/name-generator.js +13 -11
  179. package/es/utils/objects-utils.js +19 -7
  180. package/es/utils/phone-validator.js +7 -1
  181. package/es/utils/process-black-list.js +10 -6
  182. package/es/utils/react-if.js +12 -6
  183. package/es/utils/snap-scene.js +34 -32
  184. package/es/utils/snap.js +59 -51
  185. package/es/utils/summarizeCart.js +7 -1
  186. package/es/utils/threeCSG.es6.js +22 -17
  187. package/es/version.js +7 -1
  188. package/lib/@history.js +1 -1
  189. package/lib/AppContext.js +1 -1
  190. package/lib/KitchenConfigurator.js +37 -49
  191. package/lib/KitchenConfiguratorApp.js +60 -61
  192. package/lib/actions/export.js +1 -1
  193. package/lib/catalog/areas/area/planner-element.js +1 -1
  194. package/lib/catalog/catalog.js +7 -15
  195. package/lib/catalog/factories/area-factory-3d.js +1 -1
  196. package/lib/catalog/factories/area-factory.js +4 -6
  197. package/lib/catalog/factories/export.js +1 -1
  198. package/lib/catalog/factories/wall-factory-3d.js +2 -2
  199. package/lib/catalog/factories/wall-factory.js +2 -2
  200. package/lib/catalog/holes/door-closet/planner-element.js +2 -2
  201. package/lib/catalog/holes/door-double/planner-element.js +2 -2
  202. package/lib/catalog/holes/door-exterior/planner-element.js +2 -2
  203. package/lib/catalog/holes/door-interior/planner-element.js +2 -2
  204. package/lib/catalog/holes/door-panic/planner-element.js +2 -2
  205. package/lib/catalog/holes/door-panic-double/planner-element.js +2 -2
  206. package/lib/catalog/holes/door-sliding/planner-element.js +2 -2
  207. package/lib/catalog/holes/doorway-framed/planner-element.js +2 -2
  208. package/lib/catalog/holes/doorway-frameless/planner-element.js +2 -2
  209. package/lib/catalog/holes/export.js +2 -2
  210. package/lib/catalog/holes/window-clear/planner-element.js +2 -2
  211. package/lib/catalog/holes/window-cross/planner-element.js +2 -2
  212. package/lib/catalog/holes/window-double-hung/planner-element.js +2 -2
  213. package/lib/catalog/holes/window-vertical/planner-element.js +2 -2
  214. package/lib/catalog/lines/wall/planner-element.js +1 -1
  215. package/lib/catalog/molding/molding-dcm/planner-element.js +2 -2
  216. package/lib/catalog/molding/molding-fbm/planner-element.js +2 -2
  217. package/lib/catalog/molding/molding-lrm/planner-element.js +2 -2
  218. package/lib/catalog/properties/export.js +1 -1
  219. package/lib/catalog/properties/property-checkbox.js +3 -6
  220. package/lib/catalog/properties/property-color.js +1 -1
  221. package/lib/catalog/properties/property-enum.js +4 -9
  222. package/lib/catalog/properties/property-hidden.js +1 -1
  223. package/lib/catalog/properties/property-lenght-measure.js +5 -6
  224. package/lib/catalog/properties/property-length-measure.js +7 -13
  225. package/lib/catalog/properties/property-length-measure_hole.js +5 -6
  226. package/lib/catalog/properties/property-number.js +1 -1
  227. package/lib/catalog/properties/property-read-only.js +1 -1
  228. package/lib/catalog/properties/property-string.js +1 -1
  229. package/lib/catalog/properties/property-toggle.js +1 -1
  230. package/lib/catalog/utils/FuseUtils.js +8 -10
  231. package/lib/catalog/utils/exporter.js +3 -5
  232. package/lib/catalog/utils/geom-utils.js +1 -1
  233. package/lib/catalog/utils/item-loader.js +9 -14
  234. package/lib/class/FuseUtils.js +8 -10
  235. package/lib/class/area.js +7 -10
  236. package/lib/class/export.js +1 -1
  237. package/lib/class/group.js +11 -19
  238. package/lib/class/guide.js +9 -12
  239. package/lib/class/hole.js +5 -8
  240. package/lib/class/item.js +10 -18
  241. package/lib/class/layer.js +5 -8
  242. package/lib/class/line.js +12 -19
  243. package/lib/class/project.js +8 -10
  244. package/lib/class/vertex.js +7 -10
  245. package/lib/components/content.js +2 -2
  246. package/lib/components/disclaimer/disclaimer.js +1 -1
  247. package/lib/components/export.js +1 -1
  248. package/lib/components/style/button.js +15 -21
  249. package/lib/components/style/cancel-button.js +5 -6
  250. package/lib/components/style/content-container.js +3 -6
  251. package/lib/components/style/content-title.js +8 -11
  252. package/lib/components/style/delete-button.js +6 -7
  253. package/lib/components/style/export.js +1 -1
  254. package/lib/components/style/form-block.js +7 -11
  255. package/lib/components/style/form-color-input.js +5 -6
  256. package/lib/components/style/form-label.js +7 -11
  257. package/lib/components/style/form-number-input.js +13 -18
  258. package/lib/components/style/form-number-input_2.js +13 -18
  259. package/lib/components/style/form-select.js +10 -19
  260. package/lib/components/style/form-slider.js +5 -6
  261. package/lib/components/style/form-submit-button.js +6 -7
  262. package/lib/components/style/form-text-input.js +17 -22
  263. package/lib/components/viewer2d/area.js +1 -1
  264. package/lib/components/viewer2d/export.js +1 -1
  265. package/lib/components/viewer2d/grids/grid-horizontal-streak.js +1 -1
  266. package/lib/components/viewer2d/grids/grid-streak.js +1 -1
  267. package/lib/components/viewer2d/grids/grid-vertical-streak.js +1 -1
  268. package/lib/components/viewer2d/grids/grids.js +4 -9
  269. package/lib/components/viewer2d/group.js +2 -2
  270. package/lib/components/viewer2d/item.js +5 -10
  271. package/lib/components/viewer2d/layer.js +1 -1
  272. package/lib/components/viewer2d/line.js +2 -2
  273. package/lib/components/viewer2d/ruler.js +1 -1
  274. package/lib/components/viewer2d/rulerDist.js +1 -1
  275. package/lib/components/viewer2d/rulerX.js +13 -18
  276. package/lib/components/viewer2d/rulerY.js +13 -18
  277. package/lib/components/viewer2d/scene.js +21 -32
  278. package/lib/components/viewer2d/snap.js +2 -2
  279. package/lib/components/viewer2d/state.js +5 -10
  280. package/lib/components/viewer2d/utils.js +5 -9
  281. package/lib/components/viewer2d/vertex.js +2 -2
  282. package/lib/components/viewer2d/viewer2d.js +13 -23
  283. package/lib/components/viewer3d/camera-controls-module/camera-controls.module.js +14 -20
  284. package/lib/components/viewer3d/front3D.js +4 -9
  285. package/lib/components/viewer3d/grid-creator.js +2 -2
  286. package/lib/components/viewer3d/grids/grid-horizontal-streak.js +1 -1
  287. package/lib/components/viewer3d/grids/grid-streak.js +1 -1
  288. package/lib/components/viewer3d/grids/grid-vertical-streak.js +1 -1
  289. package/lib/components/viewer3d/pointer-lock-navigation.js +1 -1
  290. package/lib/components/viewer3d/ruler-utils/itemRect.js +1 -1
  291. package/lib/components/viewer3d/ruler-utils/layer3D.js +1 -1
  292. package/lib/components/viewer3d/ruler-utils/ruler3D.js +3 -6
  293. package/lib/components/viewer3d/ruler-utils/scene3D.js +1 -1
  294. package/lib/components/viewer3d/ruler-utils/state3D.js +1 -1
  295. package/lib/components/viewer3d/scene-creator.js +16 -21
  296. package/lib/components/viewer3d/three-memory-cleaner.js +1 -1
  297. package/lib/components/viewer3d/viewer3d-first-person.js +11 -16
  298. package/lib/components/viewer3d/viewer3d.js +15 -20
  299. package/lib/index.js +8 -14
  300. package/lib/models.js +51 -56
  301. package/lib/plugins/console-debugger.js +3 -6
  302. package/lib/plugins/export.js +1 -1
  303. package/lib/reducers/export.js +1 -1
  304. package/lib/styles/export.js +1 -1
  305. package/lib/translator/translator.js +5 -9
  306. package/lib/utils/export.js +2 -2
  307. package/lib/utils/geometry.js +11 -18
  308. package/lib/utils/graph-inner-cycles.js +1 -1
  309. package/lib/utils/graph.js +7 -10
  310. package/lib/utils/helper.js +7 -7
  311. package/lib/utils/history.js +1 -1
  312. package/lib/utils/id-broker.js +5 -8
  313. package/lib/utils/molding.js +14 -19
  314. package/lib/utils/name-generator.js +5 -8
  315. package/lib/utils/objects-utils.js +5 -3
  316. package/lib/utils/process-black-list.js +3 -5
  317. package/lib/utils/react-if.js +1 -1
  318. package/lib/utils/snap-scene.js +3 -7
  319. package/lib/utils/snap.js +22 -26
  320. package/lib/utils/threeCSG.es6.js +14 -14
  321. package/package.json +24 -18
@@ -1,26 +1,32 @@
1
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
5
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
6
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
- function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
8
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
10
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
11
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
12
- function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
13
- import { convert } from "../../utils/convert-units-lite";
14
- import { fromJS, Map } from 'immutable';
15
- import React, { useState } from 'react';
16
- import * as Three from 'three';
17
- import * as SceneCreator from "../../components/viewer3d/scene-creator";
18
- import { ARROW_COLOR, BASE_CABINET_LAYOUTPOS, OBJTYPE_GROUP, OBJTYPE_MESH, SHADE_DARK_PURPLE_COLOR, SHAPE_SVG_DEPTH, SHAPE_SVG_PADDING, SHAPE_SVG_WIDTH, STATUS_WARNING_COLOR, STATUS_WARNING_LIGHT_COLOR, TALL_CABINET_LAYOUTPOS, UNIT_CENTIMETER, UNIT_INCH, WALL_CABINET_LAYOUTPOS } from "../../constants";
19
- import { Item } from "../../models";
20
- import * as GeomUtils from "./geom-utils";
21
- import { loadGLTF } from "./load-obj";
22
- import { animateDoor, translateDrawer } from "../../utils/helper";
1
+ "use strict";
23
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.addEdgesToMesh = addEdgesToMesh;
9
+ exports.loadTexture = loadTexture;
10
+ exports.render2DItem = render2DItem;
11
+ exports.render3DApplianceItem = render3DApplianceItem;
12
+ exports.render3DItem = render3DItem;
13
+ exports.render3DLightingItem = render3DLightingItem;
14
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
+ var _convertUnitsLite = require("../../utils/convert-units-lite");
18
+ var _immutable = require("immutable");
19
+ var _react = _interopRequireWildcard(require("react"));
20
+ var Three = _interopRequireWildcard(require("three"));
21
+ var SceneCreator = _interopRequireWildcard(require("../../components/viewer3d/scene-creator"));
22
+ var _constants = require("../../constants");
23
+ var _models = require("../../models");
24
+ var GeomUtils = _interopRequireWildcard(require("./geom-utils"));
25
+ var _loadObj = require("./load-obj");
26
+ var _helper = require("../../utils/helper");
27
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); }
28
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
29
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24
30
  // env Map ///////////////
25
31
  var paramsCounter = {
26
32
  envMap: 'HDR',
@@ -50,9 +56,9 @@ var paramsModel = {
50
56
  var cachedObject = {}; // cached Object for quickly load-3d
51
57
 
52
58
  // render 2d function//////
53
- export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corner, shape_svg) {
54
- var _useState = useState(false),
55
- _useState2 = _slicedToArray(_useState, 2),
59
+ function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corner, shape_svg) {
60
+ var _useState = (0, _react.useState)(false),
61
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
56
62
  hover = _useState2[0],
57
63
  setHover = _useState2[1];
58
64
  var x = element.x,
@@ -95,24 +101,24 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
95
101
  length: tempDepth.get('_length'),
96
102
  unit: tempDepth.get('_unit')
97
103
  };
98
- var originalWidth = convert(sizeinfo.width).from('in').to('cm');
99
- var originalDepth = convert(sizeinfo.depth).from('in').to('cm');
100
- var newWidth = convert(width.length).from(width.unit).to('cm');
101
- var newDepth = convert(depth.length).from(depth.unit).to('cm');
102
- var padding = convert(SHAPE_SVG_PADDING).from(UNIT_INCH).to(UNIT_CENTIMETER);
104
+ var originalWidth = (0, _convertUnitsLite.convert)(sizeinfo.width).from('in').to('cm');
105
+ var originalDepth = (0, _convertUnitsLite.convert)(sizeinfo.depth).from('in').to('cm');
106
+ var newWidth = (0, _convertUnitsLite.convert)(width.length).from(width.unit).to('cm');
107
+ var newDepth = (0, _convertUnitsLite.convert)(depth.length).from(depth.unit).to('cm');
108
+ var padding = (0, _convertUnitsLite.convert)(_constants.SHAPE_SVG_PADDING).from(_constants.UNIT_INCH).to(_constants.UNIT_CENTIMETER);
103
109
  var angle = element.rotation + 90;
104
110
  var textRotation = 0;
105
111
  if (Math.sin(angle * Math.PI / 180) < 0) {
106
112
  textRotation = 180;
107
113
  }
108
114
  var color = '#eee';
109
- if (layoutpos == BASE_CABINET_LAYOUTPOS) {
115
+ if (layoutpos == _constants.BASE_CABINET_LAYOUTPOS) {
110
116
  color = '#3f8db3';
111
117
  }
112
- if (layoutpos == TALL_CABINET_LAYOUTPOS) {
118
+ if (layoutpos == _constants.TALL_CABINET_LAYOUTPOS) {
113
119
  color = '#93b3be';
114
120
  }
115
- if (layoutpos == WALL_CABINET_LAYOUTPOS) {
121
+ if (layoutpos == _constants.WALL_CABINET_LAYOUTPOS) {
116
122
  color = '#48b08dcc';
117
123
  }
118
124
  var splitStr = [];
@@ -126,7 +132,7 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
126
132
  if (objSKU.length !== 0) {
127
133
  var dcId,
128
134
  doorStyle = element.doorStyle;
129
- if (doorStyle instanceof Map) {
135
+ if (doorStyle instanceof _immutable.Map) {
130
136
  dcId = doorStyle.get('id');
131
137
  } else {
132
138
  dcId = doorStyle.id;
@@ -145,7 +151,7 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
145
151
  }
146
152
  splitStr.push(type.slice(lineCount * rowCount));
147
153
  splitStr.forEach(function (el, key) {
148
- txtContent.push(/*#__PURE__*/React.createElement("text", {
154
+ txtContent.push(/*#__PURE__*/_react["default"].createElement("text", {
149
155
  key: 'text' + key,
150
156
  x: "0",
151
157
  y: newDepth / 2 - 12,
@@ -189,12 +195,12 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
189
195
  // } else {
190
196
  // }
191
197
  svg_url = shape_svg.url;
192
- svg_width = convert(SHAPE_SVG_WIDTH).from(UNIT_INCH).to(UNIT_CENTIMETER);
193
- svg_depth = convert(SHAPE_SVG_DEPTH).from(UNIT_INCH).to(UNIT_CENTIMETER);
198
+ svg_width = (0, _convertUnitsLite.convert)(_constants.SHAPE_SVG_WIDTH).from(_constants.UNIT_INCH).to(_constants.UNIT_CENTIMETER);
199
+ svg_depth = (0, _convertUnitsLite.convert)(_constants.SHAPE_SVG_DEPTH).from(_constants.UNIT_INCH).to(_constants.UNIT_CENTIMETER);
194
200
  }
195
201
  var padding_width = padding * newWidth / svg_width;
196
202
  var padding_depth = padding * newDepth / svg_depth;
197
- rendered = /*#__PURE__*/React.createElement("g", {
203
+ rendered = /*#__PURE__*/_react["default"].createElement("g", {
198
204
  onMouseOver: function onMouseOver(event) {
199
205
  setHover(true);
200
206
  },
@@ -202,11 +208,11 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
202
208
  setHover(false);
203
209
  },
204
210
  transform: "translate(".concat(x, ",").concat(y, ")")
205
- }, /*#__PURE__*/React.createElement("g", {
211
+ }, /*#__PURE__*/_react["default"].createElement("g", {
206
212
  transform: "rotate(".concat(rotation, ")")
207
- }, /*#__PURE__*/React.createElement("g", {
213
+ }, /*#__PURE__*/_react["default"].createElement("g", {
208
214
  transform: "translate(".concat(-newWidth / 2 - padding_width, ",").concat(-newDepth / 2 - padding_depth, ")")
209
- }, /*#__PURE__*/React.createElement("image", {
215
+ }, /*#__PURE__*/_react["default"].createElement("image", {
210
216
  preserveAspectRatio: "none",
211
217
  style: {
212
218
  pointerEvents: 'none'
@@ -217,7 +223,7 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
217
223
  transform: "scale(1, -1)",
218
224
  x: "0",
219
225
  y: "".concat(-newDepth - 2 * padding_depth)
220
- }), /*#__PURE__*/React.createElement("rect", {
226
+ }), /*#__PURE__*/_react["default"].createElement("rect", {
221
227
  x: "".concat(padding_width),
222
228
  y: "".concat(padding_depth),
223
229
  width: "".concat(newWidth),
@@ -230,14 +236,14 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
230
236
  opacity: 0.7,
231
237
  postion: 'relative'
232
238
  },
233
- fill: STATUS_WARNING_LIGHT_COLOR,
234
- stroke: STATUS_WARNING_COLOR,
239
+ fill: _constants.STATUS_WARNING_LIGHT_COLOR,
240
+ stroke: _constants.STATUS_WARNING_COLOR,
235
241
  strokeWidth: "2px"
236
- }), /*#__PURE__*/React.createElement("g", {
242
+ }), /*#__PURE__*/_react["default"].createElement("g", {
237
243
  transform: "translate(".concat(padding_width, ",").concat(padding_depth, ")")
238
244
  }, txtContent))));
239
245
  } else {
240
- rendered = /*#__PURE__*/React.createElement("g", {
246
+ rendered = /*#__PURE__*/_react["default"].createElement("g", {
241
247
  onMouseOver: function onMouseOver(event) {
242
248
  setHover(true);
243
249
  },
@@ -245,22 +251,22 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
245
251
  setHover(false);
246
252
  },
247
253
  transform: "translate(".concat(x, ",").concat(y, ")")
248
- }, /*#__PURE__*/React.createElement("g", {
254
+ }, /*#__PURE__*/_react["default"].createElement("g", {
249
255
  transform: "rotate(".concat(rotation, ")")
250
- }, /*#__PURE__*/React.createElement("g", {
256
+ }, /*#__PURE__*/_react["default"].createElement("g", {
251
257
  transform: "translate(".concat(-newWidth / 2, ",").concat(-newDepth / 2, ")")
252
- }, newDepth > 15 ? [/*#__PURE__*/React.createElement("rect", {
258
+ }, newDepth > 15 ? [/*#__PURE__*/_react["default"].createElement("rect", {
253
259
  key: "base",
254
260
  x: "0",
255
261
  y: "12",
256
262
  width: newWidth,
257
263
  height: newDepth - 12,
258
264
  style: style
259
- }), /*#__PURE__*/React.createElement("polygon", {
265
+ }), /*#__PURE__*/_react["default"].createElement("polygon", {
260
266
  key: "door",
261
267
  style: style,
262
268
  points: "0,9 ".concat(newWidth, ",9 ").concat(newWidth, ",6 ").concat(newWidth - 5, ",6 ").concat(newWidth - 5, ",3 ").concat(newWidth - 2, ",3 ").concat(newWidth - 2, " 0 ").concat(newWidth - 10, " 0 ").concat(newWidth - 10, ",3 ").concat(newWidth - 7, ",3 ").concat(newWidth - 7, ",6 0 6")
263
- })] : /*#__PURE__*/React.createElement("rect", {
269
+ })] : /*#__PURE__*/_react["default"].createElement("rect", {
264
270
  key: "base",
265
271
  x: "0",
266
272
  y: "0",
@@ -273,7 +279,7 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
273
279
  }
274
280
  // end of render 2d function /////////////////////////
275
281
 
276
- export function loadTexture(url) {
282
+ function loadTexture(url) {
277
283
  var texture = new Three.TextureLoader().load(url);
278
284
  texture.colorSpace = Three.SRGBColorSpace;
279
285
  texture.wrapS = Three.MirroredRepeatWrapping;
@@ -318,10 +324,10 @@ var assignUVs = function assignUVs(geometry) {
318
324
  * @param sizeinfo Dimesion of the item
319
325
  * @param structure_json Structure of the item such as place holders and meshes, etc
320
326
  */
321
- export function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner) {
327
+ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner) {
322
328
  var mode = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
323
- if (element.doorStyle.constructor !== Map) {
324
- element = element.set('doorStyle', fromJS(element.doorStyle));
329
+ if (element.doorStyle.constructor !== _immutable.Map) {
330
+ element = element.set('doorStyle', (0, _immutable.fromJS)(element.doorStyle));
325
331
  }
326
332
  if (element.doorStyle.toJS().handle_gltf !== '') {
327
333
  // Check element has doorHandle
@@ -343,9 +349,9 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
343
349
  length: sizeinfo.height,
344
350
  unit: 'in'
345
351
  };
346
- var newWidth = convert(width.length).from(width.unit).to('in');
347
- var newDepth = convert(depth.length).from(depth.unit).to('in');
348
- var newHeight = convert(height.length).from(height.unit).to('in');
352
+ var newWidth = (0, _convertUnitsLite.convert)(width.length).from(width.unit).to('in');
353
+ var newDepth = (0, _convertUnitsLite.convert)(depth.length).from(depth.unit).to('in');
354
+ var newHeight = (0, _convertUnitsLite.convert)(height.length).from(height.unit).to('in');
349
355
  var mainName = ''; // to get name structure//
350
356
  if (element.properties.get('width')) newWidth = element.getIn(['properties', 'width', '_length']);
351
357
  if (element.properties.get('depth')) newDepth = element.getIn(['properties', 'depth', '_length']);
@@ -363,7 +369,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
363
369
  counterTop.uri = layer.toJS().counterTop.uri;
364
370
  }
365
371
  if ('name' in element.doorStyle) {
366
- doorStyles = new Map(element.doorStyle.doorStyles);
372
+ doorStyles = new _immutable.Map(element.doorStyle.doorStyles);
367
373
  color = element.doorStyle.color;
368
374
  glossness = element.doorStyle.glossness;
369
375
  handleMaterial.metalness = element.doorStyle.metalness;
@@ -406,7 +412,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
406
412
  var object1 = object;
407
413
  var newAltitude = element.properties.get('altitude').get('_length');
408
414
  var newUnit = element.properties.get('altitude').get('_unit') || 'in';
409
- newAltitude = convert(newAltitude).from(newUnit).to(scene.unit);
415
+ newAltitude = (0, _convertUnitsLite.convert)(newAltitude).from(newUnit).to(scene.unit);
410
416
  var _element = element.toJS();
411
417
  if (!_element.doorStyle.doorStyles.is_euro_cds) {
412
418
  object1.scale.set(100 * newWidth / sizeinfo.width, 100 * newHeight / sizeinfo.height, 100 * newDepth / sizeinfo.depth);
@@ -544,7 +550,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
544
550
  transparent: true,
545
551
  opacity: 0.4
546
552
  }));
547
- var _color = new Three.Color(SHADE_DARK_PURPLE_COLOR).convertLinearToSRGB();
553
+ var _color = new Three.Color(_constants.SHADE_DARK_PURPLE_COLOR).convertLinearToSRGB();
548
554
  var vLine = new Three.Line(vLineGeom, new Three.LineBasicMaterial({
549
555
  color: _color
550
556
  }));
@@ -626,7 +632,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
626
632
  SceneCreator.updateDoorHandleMesh(element, object1, true);
627
633
  }
628
634
  object1.traverse(function (obj) {
629
- if (obj.type === OBJTYPE_MESH) {
635
+ if (obj.type === _constants.OBJTYPE_MESH) {
630
636
  var name = obj.name;
631
637
  if (name.match(/_door_.*_glass_/)) {
632
638
  var material = new Three.MeshPhysicalMaterial({
@@ -681,10 +687,10 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
681
687
  if (isDoor) {
682
688
  var offsetData = object1.userData.door_animate_offset[obj.name];
683
689
  // Open Door
684
- animateDoor(offsetData, obj, open_doors, element.toJS(), is_corner, 'Opened2D');
690
+ (0, _helper.animateDoor)(offsetData, obj, open_doors, element.toJS(), is_corner, 'Opened2D');
685
691
  } else {
686
692
  // Open Drawer
687
- translateDrawer(element.toJS(), obj, open_doors, 'Opened2D');
693
+ (0, _helper.translateDrawer)(element.toJS(), obj, open_doors, 'Opened2D');
688
694
  }
689
695
  }
690
696
  }
@@ -756,7 +762,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
756
762
  _url = structure[temp[k - 1] + '_doorStyle' + element.type + 'doorStyle' + JSON.stringify(doorStyles.toJS())];
757
763
  }
758
764
  }
759
- if (_typeof(_url) == Array) _url = _url[0];
765
+ if ((0, _typeof2["default"])(_url) == Array) _url = _url[0];
760
766
  var uData = _url.split('/');
761
767
  uData = uData[uData.length - 1];
762
768
  uData = uData.slice(0, -5);
@@ -801,7 +807,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
801
807
  } else {
802
808
  structure[keys[i] + '_doorStyle' + element.type + 'doorStyle' + JSON.stringify(doorStyles.toJS())] = null;
803
809
  }
804
- return loadGLTF(loadUrl).then(function (object) {
810
+ return (0, _loadObj.loadGLTF)(loadUrl).then(function (object) {
805
811
  if (normalMap !== '') {
806
812
  var normalUrl = normalMap.split('.')[0] + '-normal.' + normalMap.split('.')[1];
807
813
  var t = loadTexture(normalMap);
@@ -814,7 +820,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
814
820
  mat2.normalMap = _m;
815
821
  // mat2.envMap = textureCube;
816
822
  for (var _j3 = 0; _j3 < object.children.length; _j3++) {
817
- if (object.children[_j3].type === OBJTYPE_MESH) {
823
+ if (object.children[_j3].type === _constants.OBJTYPE_MESH) {
818
824
  object.children[_j3].material = mat2;
819
825
  object.children[_j3].receiveShadow = true;
820
826
  }
@@ -846,12 +852,12 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
846
852
  }
847
853
  // mat2.envMap = textureCube;
848
854
  for (var _j4 = 0; _j4 < object.children.length; _j4++) {
849
- if (object.children[_j4].type === OBJTYPE_MESH) {
855
+ if (object.children[_j4].type === _constants.OBJTYPE_MESH) {
850
856
  object.children[_j4].material = _mat;
851
857
  object.children[_j4].receiveShadow = true;
852
858
  object.children[_j4].castShadow = true;
853
859
  !object.children[_j4].name.includes('handle') && addEdgesToMesh(object.children[_j4]);
854
- } else if (!object.children[_j4].name.startsWith('ph_') && object.children[_j4].type === OBJTYPE_GROUP) {
860
+ } else if (!object.children[_j4].name.startsWith('ph_') && object.children[_j4].type === _constants.OBJTYPE_GROUP) {
855
861
  object.children[_j4].traverse(function (prim) {
856
862
  prim.material = _mat;
857
863
  prim.receiveShadow = true;
@@ -865,7 +871,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
865
871
  });
866
872
  // mat2.envMap = textureCube;
867
873
  for (var _j5 = 0; _j5 < object.children.length; _j5++) {
868
- if (object.children[_j5].type === OBJTYPE_MESH) {
874
+ if (object.children[_j5].type === _constants.OBJTYPE_MESH) {
869
875
  object.children[_j5].material = _mat2;
870
876
  object.children[_j5].receiveShadow = true;
871
877
  }
@@ -889,7 +895,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
889
895
  if (placeholder.includes('drawer_door') && placeholder.includes('_handle')) {
890
896
  tmp.rotateZ(Math.PI / 2);
891
897
  }
892
- if (placeholder.includes('_handle') && tmp.children[0].type === OBJTYPE_MESH) {
898
+ if (placeholder.includes('_handle') && tmp.children[0].type === _constants.OBJTYPE_MESH) {
893
899
  // NOTE: change metalness of handle
894
900
  tmp.children[0].material.metalness = 1;
895
901
  // handleMaterial.metalness || 0.2;
@@ -910,7 +916,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
910
916
  });
911
917
  }
912
918
  };
913
- return loadGLTF(structure['base']).then(function (object) {
919
+ return (0, _loadObj.loadGLTF)(structure['base']).then(function (object) {
914
920
  object.name = 'MainObject';
915
921
  object.receiveShadow = true;
916
922
  objGroup = object;
@@ -987,7 +993,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
987
993
  addEdgesToMesh(object.children[j]);
988
994
  } else if (object.children[j].name.includes('_interior_')) {
989
995
  object.children[j].material = mat4;
990
- } else if (object.children[j].type === OBJTYPE_MESH) {
996
+ } else if (object.children[j].type === _constants.OBJTYPE_MESH) {
991
997
  object.children[j].material = mat2;
992
998
  object.children[j].receiveShadow = true;
993
999
  object.children[j].castShadow = true;
@@ -1003,7 +1009,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
1003
1009
  }
1004
1010
 
1005
1011
  // render 3d appliance function ////////////////////////////////
1006
- export function render3DApplianceItem(element, layer, scene, sizeinfo, structure_json) {
1012
+ function render3DApplianceItem(element, layer, scene, sizeinfo, structure_json) {
1007
1013
  var mode = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
1008
1014
  var structure = structure_json;
1009
1015
  var applianceMaterial = element.applianceMaterial;
@@ -1011,16 +1017,16 @@ export function render3DApplianceItem(element, layer, scene, sizeinfo, structure
1011
1017
  var onLoadItem = function onLoadItem(object) {
1012
1018
  var newAltitude = element.properties.get('altitude').get('_length');
1013
1019
  var newUnit = element.properties.get('altitude').get('_unit') || 'in';
1014
- newAltitude = convert(newAltitude).from(newUnit).to(scene.unit);
1020
+ newAltitude = (0, _convertUnitsLite.convert)(newAltitude).from(newUnit).to(scene.unit);
1015
1021
  var newWidth = element.properties.get('width').get('_length');
1016
1022
  var newWidthUnit = element.properties.get('width').get('_unit') || 'in';
1017
- newWidth = convert(newWidth).from(newWidthUnit).to('in');
1023
+ newWidth = (0, _convertUnitsLite.convert)(newWidth).from(newWidthUnit).to('in');
1018
1024
  var newHeight = element.properties.get('height').get('_length');
1019
1025
  var newHeightUnit = element.properties.get('height').get('_unit') || 'in';
1020
- newHeight = convert(newHeight).from(newHeightUnit).to('in');
1026
+ newHeight = (0, _convertUnitsLite.convert)(newHeight).from(newHeightUnit).to('in');
1021
1027
  var newDepth = element.properties.get('depth').get('_length');
1022
1028
  var newDepthUnit = element.properties.get('depth').get('_unit') || 'in';
1023
- newDepth = convert(newDepth).from(newDepthUnit).to('in');
1029
+ newDepth = (0, _convertUnitsLite.convert)(newDepth).from(newDepthUnit).to('in');
1024
1030
  object.scale.set(100 * newWidth / sizeinfo.width, 100 * newHeight / sizeinfo.height, 100 * newDepth / sizeinfo.depth);
1025
1031
  // Normalize the origin of the object
1026
1032
  var boundingBox = new Three.Box3().setFromObject(object);
@@ -1031,7 +1037,7 @@ export function render3DApplianceItem(element, layer, scene, sizeinfo, structure
1031
1037
  object.position.z -= center[2];
1032
1038
  object.position.y += newAltitude;
1033
1039
  object.traverse(function (obj) {
1034
- if (obj.type === OBJTYPE_MESH) {
1040
+ if (obj.type === _constants.OBJTYPE_MESH) {
1035
1041
  var name = obj.name;
1036
1042
  var texture,
1037
1043
  textureLoader = new Three.TextureLoader();
@@ -1143,7 +1149,7 @@ export function render3DApplianceItem(element, layer, scene, sizeinfo, structure
1143
1149
  transparent: true,
1144
1150
  opacity: 0.4
1145
1151
  }));
1146
- var color = new Three.Color(ARROW_COLOR).convertLinearToSRGB();
1152
+ var color = new Three.Color(_constants.ARROW_COLOR).convertLinearToSRGB();
1147
1153
  var vLine = new Three.Line(vLineGeom, new Three.LineBasicMaterial({
1148
1154
  color: color
1149
1155
  }));
@@ -1243,7 +1249,7 @@ export function render3DApplianceItem(element, layer, scene, sizeinfo, structure
1243
1249
 
1244
1250
  // load base to start //
1245
1251
  // return loadGLTF(dirName + structure["base"])
1246
- return loadGLTF(structure['base']).then(function (object) {
1252
+ return (0, _loadObj.loadGLTF)(structure['base']).then(function (object) {
1247
1253
  // let textureURL = `${API_SERVER_URL}/uploads/assets/default/steel.jpg`;
1248
1254
  // let texture = loadTexture(textureURL);
1249
1255
  // texture.wrapS = Three.MirroredRepeatWrapping;
@@ -1259,7 +1265,7 @@ export function render3DApplianceItem(element, layer, scene, sizeinfo, structure
1259
1265
  // mat2.envMap = textureCube;
1260
1266
  object.material = mat2;
1261
1267
  for (var j = 0; j < object.children.length; j++) {
1262
- if (object.children[j].type === OBJTYPE_MESH) {
1268
+ if (object.children[j].type === _constants.OBJTYPE_MESH) {
1263
1269
  object.children[j].material = mat2;
1264
1270
  object.children[j].receiveShadow = true;
1265
1271
  object.children[j].castShadow = true; // change
@@ -1274,7 +1280,7 @@ export function render3DApplianceItem(element, layer, scene, sizeinfo, structure
1274
1280
  });
1275
1281
  }
1276
1282
  // render 3d appliance function ////////////////////////////////
1277
- export function render3DLightingItem(element, layer, scene, sizeinfo, structure_json) {
1283
+ function render3DLightingItem(element, layer, scene, sizeinfo, structure_json) {
1278
1284
  var mode = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
1279
1285
  var structure = structure_json;
1280
1286
  var onLoadItem = function onLoadItem(object) {
@@ -1290,12 +1296,12 @@ export function render3DLightingItem(element, layer, scene, sizeinfo, structure_
1290
1296
  length: sizeinfo.height,
1291
1297
  unit: 'in'
1292
1298
  };
1293
- var newWidth = convert(width.length).from(width.unit).to('cm');
1294
- var newDepth = convert(depth.length).from(depth.unit).to('cm');
1295
- var newHeight = convert(height.length).from(height.unit).to('cm');
1299
+ var newWidth = (0, _convertUnitsLite.convert)(width.length).from(width.unit).to('cm');
1300
+ var newDepth = (0, _convertUnitsLite.convert)(depth.length).from(depth.unit).to('cm');
1301
+ var newHeight = (0, _convertUnitsLite.convert)(height.length).from(height.unit).to('cm');
1296
1302
  var newAltitude = element.properties.get('altitude').get('_length');
1297
1303
  var newUnit = element.properties.get('altitude').get('_unit') || 'in';
1298
- newAltitude = convert(newAltitude).from(newUnit).to(scene.unit);
1304
+ newAltitude = (0, _convertUnitsLite.convert)(newAltitude).from(newUnit).to(scene.unit);
1299
1305
 
1300
1306
  //object.scale.set(newWidth, newHeight, newDepth);
1301
1307
  object.scale.set(100, 100, 100);
@@ -1375,7 +1381,7 @@ export function render3DLightingItem(element, layer, scene, sizeinfo, structure_
1375
1381
  transparent: true,
1376
1382
  opacity: 0.4
1377
1383
  }));
1378
- var color = new Three.Color(ARROW_COLOR).convertLinearToSRGB();
1384
+ var color = new Three.Color(_constants.ARROW_COLOR).convertLinearToSRGB();
1379
1385
  var vLine = new Three.Line(vLineGeom, new Three.LineBasicMaterial({
1380
1386
  color: color
1381
1387
  }));
@@ -1481,7 +1487,7 @@ export function render3DLightingItem(element, layer, scene, sizeinfo, structure_
1481
1487
 
1482
1488
  // load base to start //
1483
1489
  // return loadGLTF(dirName + structure["base"])
1484
- return loadGLTF(structure['base']).then(function (object) {
1490
+ return (0, _loadObj.loadGLTF)(structure['base']).then(function (object) {
1485
1491
  // let textureURL = `${API_SERVER_URL}/uploads/assets/default/steel.jpg`;
1486
1492
  // let texture = loadTexture(textureURL);
1487
1493
  // texture.wrapS = Three.MirroredRepeatWrapping;
@@ -1496,7 +1502,7 @@ export function render3DLightingItem(element, layer, scene, sizeinfo, structure_
1496
1502
  // mat2.envMap = textureCube;
1497
1503
  object.material = mat2;
1498
1504
  for (var j = 0; j < object.children.length; j++) {
1499
- if (object.children[j].type === OBJTYPE_MESH) {
1505
+ if (object.children[j].type === _constants.OBJTYPE_MESH) {
1500
1506
  object.children[j].material = mat2;
1501
1507
  object.children[j].receiveShadow = true;
1502
1508
  }
@@ -1509,7 +1515,7 @@ export function render3DLightingItem(element, layer, scene, sizeinfo, structure_
1509
1515
  return _loadGLTFs3(0);
1510
1516
  });
1511
1517
  }
1512
- export function addEdgesToMesh(inChild) {
1518
+ function addEdgesToMesh(inChild) {
1513
1519
  var boxEdge = new Three.EdgesGeometry(inChild.geometry, 10);
1514
1520
  var boxEdgeMaterial = new Three.LineBasicMaterial({
1515
1521
  color: 0x000000,
@@ -1,18 +1,26 @@
1
- import { Box3, BufferAttribute, BufferGeometry, LoaderUtils, LoadingManager, Vector3 } from 'three';
2
- import { MTLLoader } from 'three/examples/jsm/loaders/MTLLoader.js';
3
- import { OBJLoader } from 'three/examples/jsm/loaders/OBJLoader.js';
4
- import { GLTFLoader } from 'three/examples/jsm/loaders/GLTFLoader.js';
5
- import { DRACOLoader } from 'three/examples/jsm/loaders/DRACOLoader.js';
6
- import { OBJTYPE_MESH } from "../../constants";
7
- export function loadObjWithMaterial(mtlFile, objFile, imgPath) {
8
- var manager = new LoadingManager();
9
- var mtlLoader = new MTLLoader(manager);
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.loadGLTF = loadGLTF;
7
+ exports.loadObjWithMaterial = loadObjWithMaterial;
8
+ exports.scaleObject = scaleObject;
9
+ var _three = require("three");
10
+ var _MTLLoader = require("three/examples/jsm/loaders/MTLLoader.js");
11
+ var _OBJLoader = require("three/examples/jsm/loaders/OBJLoader.js");
12
+ var _GLTFLoader = require("three/examples/jsm/loaders/GLTFLoader.js");
13
+ var _DRACOLoader = require("three/examples/jsm/loaders/DRACOLoader.js");
14
+ var _constants = require("../../constants");
15
+ function loadObjWithMaterial(mtlFile, objFile, imgPath) {
16
+ var manager = new _three.LoadingManager();
17
+ var mtlLoader = new _MTLLoader.MTLLoader(manager);
10
18
  // mtlLoader.setPath(imgPath);
11
19
  var url = mtlFile;
12
20
  return new Promise(function (resolve, reject) {
13
21
  mtlLoader.load(url, function (materials) {
14
22
  materials.preload();
15
- var objLoader = new OBJLoader();
23
+ var objLoader = new _OBJLoader.OBJLoader();
16
24
  objLoader.setMaterials(materials);
17
25
  objLoader.load(objFile, function (object) {
18
26
  return resolve(object);
@@ -20,12 +28,12 @@ export function loadObjWithMaterial(mtlFile, objFile, imgPath) {
20
28
  });
21
29
  });
22
30
  }
23
- export function loadGLTF(url) {
31
+ function loadGLTF(url) {
24
32
  if (url == undefined) {
25
33
  return Promise.reject('No url is passed');
26
34
  }
27
- var baseURL = LoaderUtils.extractUrlBase(url);
28
- var manager = new LoadingManager();
35
+ var baseURL = _three.LoaderUtils.extractUrlBase(url);
36
+ var manager = new _three.LoadingManager();
29
37
 
30
38
  // Intercept and override relative URLs.
31
39
  manager.setURLModifier(function (url, path) {
@@ -42,9 +50,9 @@ export function loadGLTF(url) {
42
50
  // }
43
51
  return (path || '') + url;
44
52
  });
45
- var loader = new GLTFLoader(manager);
53
+ var loader = new _GLTFLoader.GLTFLoader(manager);
46
54
  loader.setCrossOrigin('anonymous');
47
- var dracoLoader = new DRACOLoader();
55
+ var dracoLoader = new _DRACOLoader.DRACOLoader();
48
56
  dracoLoader.setDecoderPath('/assets/draco/');
49
57
  loader.setDRACOLoader(dracoLoader);
50
58
  return new Promise(function (resolve, reject) {
@@ -62,15 +70,15 @@ export function loadGLTF(url) {
62
70
  });
63
71
  });
64
72
  }
65
- export function scaleObject(object, defaultSizeArray, scaleSizeArray) {
66
- var boundingBox = new Box3().setFromObject(object);
67
- var initialSizeArray = boundingBox.getSize(new Vector3()).toArray();
73
+ function scaleObject(object, defaultSizeArray, scaleSizeArray) {
74
+ var boundingBox = new _three.Box3().setFromObject(object);
75
+ var initialSizeArray = boundingBox.getSize(new _three.Vector3()).toArray();
68
76
  for (var i = 0; i < 3; i++) {
69
77
  scaleSizeArray[i] -= defaultSizeArray[i];
70
78
  defaultSizeArray[i] /= initialSizeArray[i];
71
79
  }
72
80
  object.children.forEach(function (child) {
73
- if (child.type == OBJTYPE_MESH && child.geometry instanceof BufferGeometry) {
81
+ if (child.type == _constants.OBJTYPE_MESH && child.geometry instanceof _three.BufferGeometry) {
74
82
  var position = child.geometry.attributes.position;
75
83
  var new_pos = position.array.map(function (v, i, a) {
76
84
  var j = i % 3;
@@ -81,7 +89,7 @@ export function scaleObject(object, defaultSizeArray, scaleSizeArray) {
81
89
  }
82
90
  return v;
83
91
  });
84
- var new_geom = child.geometry.clone().setAttribute('position', new BufferAttribute(new_pos, 3));
92
+ var new_geom = child.geometry.clone().setAttribute('position', new _three.BufferAttribute(new_pos, 3));
85
93
  new_geom.computeBoundingBox();
86
94
  new_geom.computeBoundingSphere();
87
95
  child.geometry.dispose();
@@ -1,3 +1,9 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = exports.MTLLoader = void 0;
1
7
  /**
2
8
  * Loads a Wavefront .mtl file specifying materials
3
9
  *
@@ -6,7 +12,7 @@
6
12
 
7
13
  var THREE = window.THREE;
8
14
  var MTLLoader;
9
- MTLLoader = function MTLLoader(manager) {
15
+ exports.MTLLoader = MTLLoader = function MTLLoader(manager) {
10
16
  this.manager = manager !== undefined ? manager : THREE.DefaultLoadingManager;
11
17
  };
12
18
  Object.assign(MTLLoader.prototype, THREE.EventDispatcher.prototype, {
@@ -354,5 +360,4 @@ MTLLoader.MaterialCreator.prototype = {
354
360
  return texture;
355
361
  }
356
362
  };
357
- export default MTLLoader;
358
- export { MTLLoader };
363
+ var _default = exports["default"] = MTLLoader;
@@ -1,9 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = exports.OBJLoader = void 0;
1
7
  /**
2
8
  * @author mrdoob / http://mrdoob.com/
3
9
  */
4
10
  var THREE = window.THREE;
5
11
  var OBJLoader;
6
- OBJLoader = function () {
12
+ exports.OBJLoader = OBJLoader = function () {
7
13
  // o object_name | g group_name
8
14
  var object_pattern = /^[og]\s*(.+)?/;
9
15
  // mtllib file_reference
@@ -473,5 +479,4 @@ OBJLoader = function () {
473
479
  };
474
480
  return OBJLoader;
475
481
  }();
476
- export default OBJLoader;
477
- export { OBJLoader };
482
+ var _default = exports["default"] = OBJLoader;