kitchen-simulator 5.0.0-test.5 → 5.0.0-test.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1092) hide show
  1. package/package.json +34 -41
  2. package/src/@history.js +3 -0
  3. package/src/AppContext.js +5 -0
  4. package/src/KitchenConfigurator.jsx +1517 -0
  5. package/src/KitchenConfiguratorApp.jsx +443 -0
  6. package/src/actions/area-actions.js +15 -0
  7. package/src/actions/export.js +38 -0
  8. package/src/actions/groups-actions.js +102 -0
  9. package/src/actions/holes-actions.js +152 -0
  10. package/src/actions/items-actions.js +393 -0
  11. package/src/actions/lines-actions.js +103 -0
  12. package/src/actions/project-actions.js +391 -0
  13. package/src/actions/scene-actions.js +44 -0
  14. package/src/actions/user-actions.js +75 -0
  15. package/src/actions/vertices-actions.js +34 -0
  16. package/src/actions/viewer2d-actions.js +79 -0
  17. package/src/actions/viewer3d-actions.js +32 -0
  18. package/src/catalog/areas/area/planner-element.jsx +43 -0
  19. package/src/catalog/catalog.js +258 -0
  20. package/src/catalog/factories/area-factory-3d.js +252 -0
  21. package/src/catalog/factories/area-factory.jsx +102 -0
  22. package/src/catalog/factories/export.js +9 -0
  23. package/src/catalog/factories/wall-factory-3d.js +296 -0
  24. package/src/catalog/factories/wall-factory.jsx +321 -0
  25. package/src/catalog/holes/door-closet/planner-element.jsx +251 -0
  26. package/src/catalog/holes/door-double/planner-element.jsx +391 -0
  27. package/src/catalog/holes/door-exterior/planner-element.jsx +245 -0
  28. package/src/catalog/holes/door-interior/planner-element.jsx +256 -0
  29. package/src/catalog/holes/door-panic/planner-element.jsx +594 -0
  30. package/src/catalog/holes/door-panic-double/planner-element.jsx +574 -0
  31. package/src/catalog/holes/door-sliding/planner-element.jsx +256 -0
  32. package/src/catalog/holes/doorway-framed/planner-element.jsx +169 -0
  33. package/src/catalog/holes/doorway-frameless/planner-element.jsx +116 -0
  34. package/src/catalog/holes/window-clear/planner-element.jsx +181 -0
  35. package/src/catalog/holes/window-cross/planner-element.jsx +180 -0
  36. package/src/catalog/holes/window-double-hung/planner-element.jsx +366 -0
  37. package/src/catalog/holes/window-vertical/planner-element.jsx +290 -0
  38. package/src/catalog/lines/wall/planner-element.jsx +73 -0
  39. package/src/catalog/molding/molding-dcm/planner-element.jsx +35 -0
  40. package/src/catalog/molding/molding-fbm/planner-element.jsx +35 -0
  41. package/src/catalog/molding/molding-lrm/planner-element.jsx +35 -0
  42. package/src/catalog/properties/export.js +33 -0
  43. package/src/catalog/properties/property-checkbox.jsx +123 -0
  44. package/src/catalog/properties/property-color.jsx +52 -0
  45. package/src/catalog/properties/property-enum.jsx +87 -0
  46. package/src/catalog/properties/property-hidden.jsx +22 -0
  47. package/src/catalog/properties/property-lenght-measure.jsx +113 -0
  48. package/src/catalog/properties/property-length-measure.jsx +129 -0
  49. package/src/catalog/properties/property-length-measure_hole.jsx +110 -0
  50. package/src/catalog/properties/property-number.jsx +63 -0
  51. package/src/catalog/properties/property-read-only.jsx +37 -0
  52. package/src/catalog/properties/property-string.jsx +59 -0
  53. package/src/catalog/properties/property-toggle.jsx +51 -0
  54. package/src/catalog/properties/shared-property-style.js +13 -0
  55. package/src/catalog/utils/FuseUtils.js +61 -0
  56. package/src/catalog/utils/exporter.js +173 -0
  57. package/src/catalog/utils/geom-utils.js +301 -0
  58. package/src/catalog/utils/item-loader.jsx +2122 -0
  59. package/src/catalog/utils/load-obj.js +113 -0
  60. package/src/catalog/utils/mtl-loader.js +462 -0
  61. package/src/catalog/utils/obj-loader.js +544 -0
  62. package/src/class/FuseUtils.js +61 -0
  63. package/src/class/area.js +159 -0
  64. package/src/class/export.js +37 -0
  65. package/src/class/group.js +565 -0
  66. package/src/class/guide.js +44 -0
  67. package/src/class/hole.js +1359 -0
  68. package/src/class/item.js +2050 -0
  69. package/src/class/layer.js +926 -0
  70. package/src/class/line.js +1780 -0
  71. package/src/class/project.js +875 -0
  72. package/src/class/vertex.js +409 -0
  73. package/src/components/atoms/Snackbar/index.jsx +43 -0
  74. package/src/components/atoms/radio-button/index.jsx +20 -0
  75. package/src/components/atoms/radio-button/styles.js +56 -0
  76. package/src/components/button/MainButton.jsx +157 -0
  77. package/src/components/button/ToggleMeasureButton.jsx +65 -0
  78. package/src/components/catalog-view/catalog-breadcrumb.jsx +53 -0
  79. package/src/components/catalog-view/catalog-item.jsx +229 -0
  80. package/src/components/catalog-view/catalog-list.jsx +173 -0
  81. package/src/components/catalog-view/catalog-page-item.jsx +110 -0
  82. package/src/components/catalog-view/catalog-turn-back-page-item.jsx +80 -0
  83. package/src/components/configurator/custom-configurator.jsx +77 -0
  84. package/src/components/configurator/project-configurator.jsx +120 -0
  85. package/src/components/content.jsx +136 -0
  86. package/src/components/export.js +36 -0
  87. package/src/components/firstsetting/button/styles.js +223 -0
  88. package/src/components/firstsetting/export.js +9 -0
  89. package/src/components/firstsetting/firstsetting-content-button.jsx +198 -0
  90. package/src/components/firstsetting/firstsetting-toggle-button.jsx +101 -0
  91. package/src/components/firstsetting/firstsetting.jsx +814 -0
  92. package/src/components/footerbar/button/ControlButton.jsx +43 -0
  93. package/src/components/footerbar/button/DirectionButton.jsx +54 -0
  94. package/src/components/footerbar/button/DirectionPanSpinButton.jsx +36 -0
  95. package/src/components/footerbar/button/ToggleButton.jsx +58 -0
  96. package/src/components/footerbar/button/ToggleConvertButton.jsx +48 -0
  97. package/src/components/footerbar/button/ToggleMeasureButton.jsx +33 -0
  98. package/src/components/footerbar/button/styles.js +217 -0
  99. package/src/components/footerbar/export.js +9 -0
  100. package/src/components/footerbar/footer-content-button.jsx +198 -0
  101. package/src/components/footerbar/footer-toggle-button.jsx +101 -0
  102. package/src/components/footerbar/footerbar.jsx +1103 -0
  103. package/src/components/footerbar/styles.js +263 -0
  104. package/src/components/header/button/MenuButton.jsx +46 -0
  105. package/src/components/header/button/SaveButton.jsx +54 -0
  106. package/src/components/header/button/styles.js +181 -0
  107. package/src/components/header/export.js +5 -0
  108. package/src/components/header/header.jsx +631 -0
  109. package/src/components/header/styles.js +320 -0
  110. package/src/components/login/Login.js +77 -0
  111. package/src/components/login/LoginForm/index.js +108 -0
  112. package/src/components/login/Register.js +83 -0
  113. package/src/components/login/RegisterForm/index.js +171 -0
  114. package/src/components/login/jwtService.js +201 -0
  115. package/src/components/molecules/slider/index.jsx +15 -0
  116. package/src/components/molecules/slider/styles.js +0 -0
  117. package/src/components/myprojects/export.js +5 -0
  118. package/src/components/myprojects/index.jsx +445 -0
  119. package/src/components/myprojects/styles.js +241 -0
  120. package/src/components/sidebar/custom-accordion.jsx +48 -0
  121. package/src/components/sidebar/export.js +15 -0
  122. package/src/components/sidebar/panel-element-editor/attributes-editor/attributes-editor.jsx +73 -0
  123. package/src/components/sidebar/panel-element-editor/attributes-editor/confirm-popup.jsx +101 -0
  124. package/src/components/sidebar/panel-element-editor/attributes-editor/hole-attributes-editor.jsx +149 -0
  125. package/src/components/sidebar/panel-element-editor/attributes-editor/item-attributes-editor.jsx +316 -0
  126. package/src/components/sidebar/panel-element-editor/attributes-editor/line-attributes-editor.jsx +108 -0
  127. package/src/components/sidebar/panel-element-editor/element-editor.jsx +1070 -0
  128. package/src/components/sidebar/panel-element-editor/multi-elements-editor.jsx +0 -0
  129. package/src/components/sidebar/panel-element-editor/panel-element-editor.jsx +104 -0
  130. package/src/components/sidebar/panel-element-editor/panel-multi-elements-editor.jsx +155 -0
  131. package/src/components/sidebar/panel-group-editor.jsx +272 -0
  132. package/src/components/sidebar/panel-groups.jsx +310 -0
  133. package/src/components/sidebar/panel-guides.jsx +192 -0
  134. package/src/components/sidebar/panel-layer-elements.jsx +298 -0
  135. package/src/components/sidebar/panel-layers.jsx +381 -0
  136. package/src/components/sidebar/panel.jsx +71 -0
  137. package/src/components/sidebar/sidebar.jsx +106 -0
  138. package/src/components/sidebar/toolbar-panel.jsx +139 -0
  139. package/src/components/sign/export.js +7 -0
  140. package/src/components/sign/main/index.jsx +523 -0
  141. package/src/components/sign/main/styles.js +163 -0
  142. package/src/components/style/button.jsx +95 -0
  143. package/src/components/style/cancel-button.jsx +20 -0
  144. package/src/components/style/content-container.jsx +29 -0
  145. package/src/components/style/content-title.jsx +20 -0
  146. package/src/components/style/delete-button.jsx +23 -0
  147. package/src/components/style/export.jsx +48 -0
  148. package/src/components/style/form-block.jsx +13 -0
  149. package/src/components/style/form-color-input.jsx +27 -0
  150. package/src/components/style/form-label.jsx +15 -0
  151. package/src/components/style/form-number-input.jsx +196 -0
  152. package/src/components/style/form-number-input_2.jsx +191 -0
  153. package/src/components/style/form-select.jsx +38 -0
  154. package/src/components/style/form-slider.jsx +36 -0
  155. package/src/components/style/form-submit-button.jsx +23 -0
  156. package/src/components/style/form-text-input.jsx +65 -0
  157. package/src/components/toolbar/button/ControlButton.jsx +41 -0
  158. package/src/components/toolbar/button/DirectionButton.jsx +34 -0
  159. package/src/components/toolbar/button/RightButton.jsx +103 -0
  160. package/src/components/toolbar/button/ToggleButton.jsx +41 -0
  161. package/src/components/toolbar/button/index.jsx +55 -0
  162. package/src/components/toolbar/button/styles.js +127 -0
  163. package/src/components/toolbar/components/DoorStyleMenu.jsx +103 -0
  164. package/src/components/toolbar/components/Pricing.jsx +126 -0
  165. package/src/components/toolbar/components/ReviewForQuote.jsx +635 -0
  166. package/src/components/toolbar/export.js +21 -0
  167. package/src/components/toolbar/main/Alert.js +122 -0
  168. package/src/components/toolbar/main/TakePictureModal.jsx +104 -0
  169. package/src/components/toolbar/main/confirm-popup.jsx +99 -0
  170. package/src/components/toolbar/main/index.jsx +5627 -0
  171. package/src/components/toolbar/main/myComponents.js +123 -0
  172. package/src/components/toolbar/main/styles.js +696 -0
  173. package/src/components/toolbar/plugin-item.jsx +123 -0
  174. package/src/components/toolbar/popup/appliance/appliance-category/index.jsx +73 -0
  175. package/src/components/toolbar/popup/appliance/choose-appliance/index.jsx +102 -0
  176. package/src/components/toolbar/popup/appliance/index.jsx +83 -0
  177. package/src/components/toolbar/popup/autosaveprompt/index.jsx +150 -0
  178. package/src/components/toolbar/popup/autosaveprompt/styles.js +40 -0
  179. package/src/components/toolbar/popup/cabinet/cabinet-category/index.jsx +73 -0
  180. package/src/components/toolbar/popup/cabinet/choose-product/index.jsx +119 -0
  181. package/src/components/toolbar/popup/cabinet/index.jsx +85 -0
  182. package/src/components/toolbar/popup/doorStyle/choose-style/index.jsx +63 -0
  183. package/src/components/toolbar/popup/doorStyle/index.jsx +71 -0
  184. package/src/components/toolbar/popup/doorStyle/style-category/index.jsx +139 -0
  185. package/src/components/toolbar/popup/downloadsummary/downloadSummaryContext.js +2 -0
  186. package/src/components/toolbar/popup/downloadsummary/downloadSummaryTemp.jsx +157 -0
  187. package/src/components/toolbar/popup/downloadsummary/index.jsx +643 -0
  188. package/src/components/toolbar/popup/downloadsummary/show2D/show2DView.jsx +51 -0
  189. package/src/components/toolbar/popup/downloadsummary/show2D/viewer2DDownLoad.jsx +175 -0
  190. package/src/components/toolbar/popup/downloadsummary/show3D/show3DView.jsx +283 -0
  191. package/src/components/toolbar/popup/downloadsummary/show3D/viewer3DDownLoad.jsx +2257 -0
  192. package/src/components/toolbar/popup/downloadsummary/showCabinetInfo.js +93 -0
  193. package/src/components/toolbar/popup/downloadsummary/showElevation/showElevationView.jsx +132 -0
  194. package/src/components/toolbar/popup/downloadsummary/showElevation/viewer3DElevationDownload.jsx +2198 -0
  195. package/src/components/toolbar/popup/downloadsummary/showElevation/viewerElevationDownload.jsx +152 -0
  196. package/src/components/toolbar/popup/downloadsummary/showWarranty.jsx +149 -0
  197. package/src/components/toolbar/popup/downloadsummary/styles.js +453 -0
  198. package/src/components/toolbar/popup/finishingtouch/category/index.jsx +34 -0
  199. package/src/components/toolbar/popup/finishingtouch/index.jsx +58 -0
  200. package/src/components/toolbar/popup/finishingtouch/material-edit.jsx +112 -0
  201. package/src/components/toolbar/popup/finishingtouch/product/index.jsx +116 -0
  202. package/src/components/toolbar/popup/floorplan/choose-floor/confirm-popup.jsx +101 -0
  203. package/src/components/toolbar/popup/floorplan/choose-floor/index.jsx +254 -0
  204. package/src/components/toolbar/popup/floorplan/choose-floor/styles.js +86 -0
  205. package/src/components/toolbar/popup/floorplan/floor-category/index.jsx +109 -0
  206. package/src/components/toolbar/popup/floorplan/index.jsx +60 -0
  207. package/src/components/toolbar/popup/index.jsx +241 -0
  208. package/src/components/toolbar/popup/newproject/index.jsx +59 -0
  209. package/src/components/toolbar/popup/newproject/styles.js +41 -0
  210. package/src/components/toolbar/popup/product/appliance.jsx +54 -0
  211. package/src/components/toolbar/popup/product/cabinetproduct.jsx +15 -0
  212. package/src/components/toolbar/popup/product/doorstyle.jsx +58 -0
  213. package/src/components/toolbar/popup/product/doorstyleproduct.jsx +47 -0
  214. package/src/components/toolbar/popup/product/floor.jsx +36 -0
  215. package/src/components/toolbar/popup/product/floorproduct.jsx +42 -0
  216. package/src/components/toolbar/popup/product/index.jsx +36 -0
  217. package/src/components/toolbar/popup/product/primary.jsx +77 -0
  218. package/src/components/toolbar/popup/product/productline.jsx +93 -0
  219. package/src/components/toolbar/popup/product/reviewItem.jsx +427 -0
  220. package/src/components/toolbar/popup/product/reviewMolding.jsx +310 -0
  221. package/src/components/toolbar/popup/product/styles.js +260 -0
  222. package/src/components/toolbar/popup/savedesign/FullPictureForm.jsx +146 -0
  223. package/src/components/toolbar/popup/savedesign/index.jsx +495 -0
  224. package/src/components/toolbar/popup/savedesign/styles.js +151 -0
  225. package/src/components/toolbar/popup/setDoorStyleOption/index.jsx +87 -0
  226. package/src/components/toolbar/popup/styles.js +909 -0
  227. package/src/components/toolbar/popup/submitforquote/AddToCartOptions.jsx +192 -0
  228. package/src/components/toolbar/popup/submitforquote/CustomerRequestsForm.jsx +96 -0
  229. package/src/components/toolbar/popup/submitforquote/SkipDesignerReview.jsx +54 -0
  230. package/src/components/toolbar/popup/submitforquote/StepDots.jsx +25 -0
  231. package/src/components/toolbar/popup/submitforquote/cart-choice.jsx +116 -0
  232. package/src/components/toolbar/popup/submitforquote/doorstyle-menus.js +38 -0
  233. package/src/components/toolbar/popup/submitforquote/index.jsx +698 -0
  234. package/src/components/toolbar/popup/submitforquote/styles.js +294 -0
  235. package/src/components/toolbar/popup/submitprompt/index.jsx +89 -0
  236. package/src/components/toolbar/popup/submitprompt/styles.js +42 -0
  237. package/src/components/toolbar/toolbar-button.jsx +90 -0
  238. package/src/components/toolbar/toolbar-load-button.jsx +36 -0
  239. package/src/components/toolbar/toolbar-save-button.jsx +32 -0
  240. package/src/components/tutorial-view/Modal.jsx +584 -0
  241. package/src/components/tutorial-view/styles.js +65 -0
  242. package/src/components/viewer2d/area.jsx +98 -0
  243. package/src/components/viewer2d/export.js +48 -0
  244. package/src/components/viewer2d/grids/grid-horizontal-streak.jsx +40 -0
  245. package/src/components/viewer2d/grids/grid-streak.jsx +32 -0
  246. package/src/components/viewer2d/grids/grid-vertical-streak.jsx +41 -0
  247. package/src/components/viewer2d/grids/grids.jsx +30 -0
  248. package/src/components/viewer2d/group.jsx +57 -0
  249. package/src/components/viewer2d/item.jsx +618 -0
  250. package/src/components/viewer2d/layer.jsx +214 -0
  251. package/src/components/viewer2d/line.jsx +1358 -0
  252. package/src/components/viewer2d/ruler.jsx +136 -0
  253. package/src/components/viewer2d/rulerDist.jsx +192 -0
  254. package/src/components/viewer2d/rulerX.jsx +141 -0
  255. package/src/components/viewer2d/rulerY.jsx +138 -0
  256. package/src/components/viewer2d/scene.jsx +94 -0
  257. package/src/components/viewer2d/snap.jsx +118 -0
  258. package/src/components/viewer2d/state.jsx +77 -0
  259. package/src/components/viewer2d/utils.js +195 -0
  260. package/src/components/viewer2d/vertex.jsx +76 -0
  261. package/src/components/viewer2d/viewer2d.jsx +1830 -0
  262. package/src/components/viewer3d/camera-controls-module/camera-controls.module.js +3078 -0
  263. package/src/components/viewer3d/dcm.js +226 -0
  264. package/src/components/viewer3d/fbm.js +383 -0
  265. package/src/components/viewer3d/front3D.jsx +63 -0
  266. package/src/components/viewer3d/grid-creator.js +25 -0
  267. package/src/components/viewer3d/grids/grid-horizontal-streak.js +41 -0
  268. package/src/components/viewer3d/grids/grid-streak.js +34 -0
  269. package/src/components/viewer3d/grids/grid-vertical-streak.js +42 -0
  270. package/src/components/viewer3d/libs/first-person-controls.js +70 -0
  271. package/src/components/viewer3d/libs/helvetiker_regular.typeface.js +1265 -0
  272. package/src/components/viewer3d/libs/mtl-loader.js +462 -0
  273. package/src/components/viewer3d/libs/obj-loader.js +653 -0
  274. package/src/components/viewer3d/libs/orbit-controls.js +945 -0
  275. package/src/components/viewer3d/libs/pointer-lock-controls.js +67 -0
  276. package/src/components/viewer3d/lrm.js +358 -0
  277. package/src/components/viewer3d/model.js +830 -0
  278. package/src/components/viewer3d/pointer-lock-navigation.js +140 -0
  279. package/src/components/viewer3d/ruler-utils/itemRect.jsx +91 -0
  280. package/src/components/viewer3d/ruler-utils/layer3D.jsx +528 -0
  281. package/src/components/viewer3d/ruler-utils/ruler3D.jsx +218 -0
  282. package/src/components/viewer3d/ruler-utils/scene3D.jsx +87 -0
  283. package/src/components/viewer3d/ruler-utils/state3D.jsx +25 -0
  284. package/src/components/viewer3d/scene-creator.js +5169 -0
  285. package/src/components/viewer3d/three-memory-cleaner.js +65 -0
  286. package/src/components/viewer3d/viewer3d-first-person.js +395 -0
  287. package/src/components/viewer3d/viewer3d.js +3376 -0
  288. package/src/components/wizardstep/button/styles.js +677 -0
  289. package/src/components/wizardstep/export.js +5 -0
  290. package/src/components/wizardstep/index.jsx +1372 -0
  291. package/src/components/wizardstep/styles.js +688 -0
  292. package/src/components/wizardstep/wizardstep-content-button.jsx +198 -0
  293. package/src/components/wizardstep/wizardstep-toggle-button.jsx +101 -0
  294. package/src/constants.js +731 -0
  295. package/src/index.js +32 -0
  296. package/src/models.js +541 -0
  297. package/src/plugins/SVGLoader.js +1991 -0
  298. package/src/plugins/autosave.js +39 -0
  299. package/src/plugins/console-debugger.js +36 -0
  300. package/src/plugins/export.js +11 -0
  301. package/src/plugins/keyboard.js +194 -0
  302. package/src/reducers/areas-reducer.js +13 -0
  303. package/src/reducers/export.js +39 -0
  304. package/src/reducers/groups-reducer.js +73 -0
  305. package/src/reducers/holes-reducer.js +125 -0
  306. package/src/reducers/items-reducer.js +286 -0
  307. package/src/reducers/lines-reducer.js +96 -0
  308. package/src/reducers/project-reducer.js +239 -0
  309. package/src/reducers/reducer.js +59 -0
  310. package/src/reducers/scene-reducer.js +41 -0
  311. package/src/reducers/user-reducer.js +30 -0
  312. package/src/reducers/vertices-reducer.js +34 -0
  313. package/src/reducers/viewer2d-reducer.js +81 -0
  314. package/src/reducers/viewer3d-reducer.js +65 -0
  315. package/src/shared-style.js +72 -0
  316. package/src/translator/en.js +106 -0
  317. package/src/translator/it.js +80 -0
  318. package/src/translator/ru.js +80 -0
  319. package/src/translator/translator.js +81 -0
  320. package/src/utils/browser.js +36 -0
  321. package/src/utils/email-validator.js +5 -0
  322. package/src/utils/export.js +39 -0
  323. package/src/utils/geometry.js +2572 -0
  324. package/src/utils/get-edges-of-subgraphs.js +29 -0
  325. package/src/utils/graph-cycles.js +259 -0
  326. package/src/utils/graph-inner-cycles.js +49 -0
  327. package/src/utils/graph.js +147 -0
  328. package/src/utils/helper.js +431 -0
  329. package/src/utils/history.js +37 -0
  330. package/src/utils/id-broker.js +9 -0
  331. package/src/utils/logger.js +8 -0
  332. package/src/utils/math.js +51 -0
  333. package/src/utils/molding.js +973 -0
  334. package/src/utils/name-generator.js +5 -0
  335. package/src/utils/objects-utils.js +56 -0
  336. package/src/utils/phone-validator.js +4 -0
  337. package/src/utils/process-black-list.js +10 -0
  338. package/src/utils/react-if.jsx +20 -0
  339. package/src/utils/snap-scene.js +102 -0
  340. package/src/utils/snap.js +184 -0
  341. package/src/utils/threeCSG.es6.js +578 -0
  342. package/src/version.js +1 -0
  343. package/es/@history.js +0 -3
  344. package/es/@history.js.map +0 -1
  345. package/es/AppContext.js +0 -4
  346. package/es/AppContext.js.map +0 -1
  347. package/es/KitchenConfigurator.js +0 -1345
  348. package/es/KitchenConfigurator.js.map +0 -1
  349. package/es/KitchenConfiguratorApp.js +0 -532
  350. package/es/KitchenConfiguratorApp.js.map +0 -1
  351. package/es/actions/area-actions.js +0 -15
  352. package/es/actions/area-actions.js.map +0 -1
  353. package/es/actions/export.js +0 -26
  354. package/es/actions/export.js.map +0 -1
  355. package/es/actions/groups-actions.js +0 -90
  356. package/es/actions/groups-actions.js.map +0 -1
  357. package/es/actions/holes-actions.js +0 -120
  358. package/es/actions/holes-actions.js.map +0 -1
  359. package/es/actions/items-actions.js +0 -314
  360. package/es/actions/items-actions.js.map +0 -1
  361. package/es/actions/lines-actions.js +0 -83
  362. package/es/actions/lines-actions.js.map +0 -1
  363. package/es/actions/project-actions.js +0 -282
  364. package/es/actions/project-actions.js.map +0 -1
  365. package/es/actions/scene-actions.js +0 -34
  366. package/es/actions/scene-actions.js.map +0 -1
  367. package/es/actions/user-actions.js +0 -59
  368. package/es/actions/user-actions.js.map +0 -1
  369. package/es/actions/vertices-actions.js +0 -28
  370. package/es/actions/vertices-actions.js.map +0 -1
  371. package/es/actions/viewer2d-actions.js +0 -59
  372. package/es/actions/viewer2d-actions.js.map +0 -1
  373. package/es/actions/viewer3d-actions.js +0 -24
  374. package/es/actions/viewer3d-actions.js.map +0 -1
  375. package/es/catalog/areas/area/planner-element.js +0 -41
  376. package/es/catalog/areas/area/planner-element.js.map +0 -1
  377. package/es/catalog/catalog.js +0 -278
  378. package/es/catalog/catalog.js.map +0 -1
  379. package/es/catalog/factories/area-factory-3d.js +0 -183
  380. package/es/catalog/factories/area-factory-3d.js.map +0 -1
  381. package/es/catalog/factories/area-factory.js +0 -82
  382. package/es/catalog/factories/area-factory.js.map +0 -1
  383. package/es/catalog/factories/export.js +0 -8
  384. package/es/catalog/factories/export.js.map +0 -1
  385. package/es/catalog/factories/wall-factory-3d.js +0 -203
  386. package/es/catalog/factories/wall-factory-3d.js.map +0 -1
  387. package/es/catalog/factories/wall-factory.js +0 -269
  388. package/es/catalog/factories/wall-factory.js.map +0 -1
  389. package/es/catalog/holes/door-closet/planner-element.js +0 -223
  390. package/es/catalog/holes/door-closet/planner-element.js.map +0 -1
  391. package/es/catalog/holes/door-double/planner-element.js +0 -316
  392. package/es/catalog/holes/door-double/planner-element.js.map +0 -1
  393. package/es/catalog/holes/door-exterior/planner-element.js +0 -216
  394. package/es/catalog/holes/door-exterior/planner-element.js.map +0 -1
  395. package/es/catalog/holes/door-interior/planner-element.js +0 -228
  396. package/es/catalog/holes/door-interior/planner-element.js.map +0 -1
  397. package/es/catalog/holes/door-panic/planner-element.js +0 -504
  398. package/es/catalog/holes/door-panic/planner-element.js.map +0 -1
  399. package/es/catalog/holes/door-panic-double/planner-element.js +0 -464
  400. package/es/catalog/holes/door-panic-double/planner-element.js.map +0 -1
  401. package/es/catalog/holes/door-sliding/planner-element.js +0 -226
  402. package/es/catalog/holes/door-sliding/planner-element.js.map +0 -1
  403. package/es/catalog/holes/doorway-framed/planner-element.js +0 -146
  404. package/es/catalog/holes/doorway-framed/planner-element.js.map +0 -1
  405. package/es/catalog/holes/doorway-frameless/planner-element.js +0 -105
  406. package/es/catalog/holes/doorway-frameless/planner-element.js.map +0 -1
  407. package/es/catalog/holes/window-clear/planner-element.js +0 -167
  408. package/es/catalog/holes/window-clear/planner-element.js.map +0 -1
  409. package/es/catalog/holes/window-cross/planner-element.js +0 -166
  410. package/es/catalog/holes/window-cross/planner-element.js.map +0 -1
  411. package/es/catalog/holes/window-double-hung/planner-element.js +0 -304
  412. package/es/catalog/holes/window-double-hung/planner-element.js.map +0 -1
  413. package/es/catalog/holes/window-vertical/planner-element.js +0 -277
  414. package/es/catalog/holes/window-vertical/planner-element.js.map +0 -1
  415. package/es/catalog/lines/wall/planner-element.js +0 -71
  416. package/es/catalog/lines/wall/planner-element.js.map +0 -1
  417. package/es/catalog/molding/molding-dcm/planner-element.js +0 -30
  418. package/es/catalog/molding/molding-dcm/planner-element.js.map +0 -1
  419. package/es/catalog/molding/molding-fbm/planner-element.js +0 -30
  420. package/es/catalog/molding/molding-fbm/planner-element.js.map +0 -1
  421. package/es/catalog/molding/molding-lrm/planner-element.js +0 -30
  422. package/es/catalog/molding/molding-lrm/planner-element.js.map +0 -1
  423. package/es/catalog/properties/export.js +0 -22
  424. package/es/catalog/properties/export.js.map +0 -1
  425. package/es/catalog/properties/property-checkbox.js +0 -72
  426. package/es/catalog/properties/property-checkbox.js.map +0 -1
  427. package/es/catalog/properties/property-color.js +0 -40
  428. package/es/catalog/properties/property-color.js.map +0 -1
  429. package/es/catalog/properties/property-enum.js +0 -56
  430. package/es/catalog/properties/property-enum.js.map +0 -1
  431. package/es/catalog/properties/property-hidden.js +0 -20
  432. package/es/catalog/properties/property-hidden.js.map +0 -1
  433. package/es/catalog/properties/property-lenght-measure.js +0 -102
  434. package/es/catalog/properties/property-lenght-measure.js.map +0 -1
  435. package/es/catalog/properties/property-length-measure.js +0 -86
  436. package/es/catalog/properties/property-length-measure.js.map +0 -1
  437. package/es/catalog/properties/property-length-measure_hole.js +0 -102
  438. package/es/catalog/properties/property-length-measure_hole.js.map +0 -1
  439. package/es/catalog/properties/property-number.js +0 -49
  440. package/es/catalog/properties/property-number.js.map +0 -1
  441. package/es/catalog/properties/property-read-only.js +0 -27
  442. package/es/catalog/properties/property-read-only.js.map +0 -1
  443. package/es/catalog/properties/property-string.js +0 -49
  444. package/es/catalog/properties/property-string.js.map +0 -1
  445. package/es/catalog/properties/property-toggle.js +0 -40
  446. package/es/catalog/properties/property-toggle.js.map +0 -1
  447. package/es/catalog/properties/shared-property-style.js +0 -15
  448. package/es/catalog/properties/shared-property-style.js.map +0 -1
  449. package/es/catalog/utils/FuseUtils.js +0 -83
  450. package/es/catalog/utils/FuseUtils.js.map +0 -1
  451. package/es/catalog/utils/exporter.js +0 -149
  452. package/es/catalog/utils/exporter.js.map +0 -1
  453. package/es/catalog/utils/geom-utils.js +0 -190
  454. package/es/catalog/utils/geom-utils.js.map +0 -1
  455. package/es/catalog/utils/item-loader.js +0 -1522
  456. package/es/catalog/utils/item-loader.js.map +0 -1
  457. package/es/catalog/utils/load-obj.js +0 -92
  458. package/es/catalog/utils/load-obj.js.map +0 -1
  459. package/es/catalog/utils/mtl-loader.js +0 -358
  460. package/es/catalog/utils/mtl-loader.js.map +0 -1
  461. package/es/catalog/utils/obj-loader.js +0 -477
  462. package/es/catalog/utils/obj-loader.js.map +0 -1
  463. package/es/class/FuseUtils.js +0 -83
  464. package/es/class/FuseUtils.js.map +0 -1
  465. package/es/class/area.js +0 -146
  466. package/es/class/area.js.map +0 -1
  467. package/es/class/export.js +0 -25
  468. package/es/class/export.js.map +0 -1
  469. package/es/class/group.js +0 -441
  470. package/es/class/group.js.map +0 -1
  471. package/es/class/guide.js +0 -63
  472. package/es/class/guide.js.map +0 -1
  473. package/es/class/hole.js +0 -931
  474. package/es/class/hole.js.map +0 -1
  475. package/es/class/item.js +0 -1888
  476. package/es/class/item.js.map +0 -1
  477. package/es/class/layer.js +0 -668
  478. package/es/class/layer.js.map +0 -1
  479. package/es/class/line.js +0 -1290
  480. package/es/class/line.js.map +0 -1
  481. package/es/class/project.js +0 -823
  482. package/es/class/project.js.map +0 -1
  483. package/es/class/vertex.js +0 -267
  484. package/es/class/vertex.js.map +0 -1
  485. package/es/components/atoms/Snackbar/index.js +0 -50
  486. package/es/components/atoms/Snackbar/index.js.map +0 -1
  487. package/es/components/atoms/radio-button/index.js +0 -26
  488. package/es/components/atoms/radio-button/index.js.map +0 -1
  489. package/es/components/atoms/radio-button/styles.js +0 -5
  490. package/es/components/atoms/radio-button/styles.js.map +0 -1
  491. package/es/components/button/MainButton.js +0 -92
  492. package/es/components/button/MainButton.js.map +0 -1
  493. package/es/components/button/ToggleMeasureButton.js +0 -56
  494. package/es/components/button/ToggleMeasureButton.js.map +0 -1
  495. package/es/components/catalog-view/catalog-breadcrumb.js +0 -53
  496. package/es/components/catalog-view/catalog-breadcrumb.js.map +0 -1
  497. package/es/components/catalog-view/catalog-item.js +0 -226
  498. package/es/components/catalog-view/catalog-item.js.map +0 -1
  499. package/es/components/catalog-view/catalog-list.js +0 -182
  500. package/es/components/catalog-view/catalog-list.js.map +0 -1
  501. package/es/components/catalog-view/catalog-page-item.js +0 -130
  502. package/es/components/catalog-view/catalog-page-item.js.map +0 -1
  503. package/es/components/catalog-view/catalog-turn-back-page-item.js +0 -106
  504. package/es/components/catalog-view/catalog-turn-back-page-item.js.map +0 -1
  505. package/es/components/configurator/custom-configurator.js +0 -94
  506. package/es/components/configurator/custom-configurator.js.map +0 -1
  507. package/es/components/configurator/project-configurator.js +0 -131
  508. package/es/components/configurator/project-configurator.js.map +0 -1
  509. package/es/components/content.js +0 -123
  510. package/es/components/content.js.map +0 -1
  511. package/es/components/export.js +0 -24
  512. package/es/components/export.js.map +0 -1
  513. package/es/components/firstsetting/button/styles.js +0 -27
  514. package/es/components/firstsetting/button/styles.js.map +0 -1
  515. package/es/components/firstsetting/export.js +0 -9
  516. package/es/components/firstsetting/export.js.map +0 -1
  517. package/es/components/firstsetting/firstsetting-content-button.js +0 -217
  518. package/es/components/firstsetting/firstsetting-content-button.js.map +0 -1
  519. package/es/components/firstsetting/firstsetting-toggle-button.js +0 -126
  520. package/es/components/firstsetting/firstsetting-toggle-button.js.map +0 -1
  521. package/es/components/firstsetting/firstsetting.js +0 -626
  522. package/es/components/firstsetting/firstsetting.js.map +0 -1
  523. package/es/components/footerbar/button/ControlButton.js +0 -72
  524. package/es/components/footerbar/button/ControlButton.js.map +0 -1
  525. package/es/components/footerbar/button/DirectionButton.js +0 -69
  526. package/es/components/footerbar/button/DirectionButton.js.map +0 -1
  527. package/es/components/footerbar/button/DirectionPanSpinButton.js +0 -50
  528. package/es/components/footerbar/button/DirectionPanSpinButton.js.map +0 -1
  529. package/es/components/footerbar/button/ToggleButton.js +0 -76
  530. package/es/components/footerbar/button/ToggleButton.js.map +0 -1
  531. package/es/components/footerbar/button/ToggleConvertButton.js +0 -73
  532. package/es/components/footerbar/button/ToggleConvertButton.js.map +0 -1
  533. package/es/components/footerbar/button/ToggleMeasureButton.js +0 -52
  534. package/es/components/footerbar/button/ToggleMeasureButton.js.map +0 -1
  535. package/es/components/footerbar/button/styles.js +0 -22
  536. package/es/components/footerbar/button/styles.js.map +0 -1
  537. package/es/components/footerbar/export.js +0 -9
  538. package/es/components/footerbar/export.js.map +0 -1
  539. package/es/components/footerbar/footer-content-button.js +0 -217
  540. package/es/components/footerbar/footer-content-button.js.map +0 -1
  541. package/es/components/footerbar/footer-toggle-button.js +0 -126
  542. package/es/components/footerbar/footer-toggle-button.js.map +0 -1
  543. package/es/components/footerbar/footerbar.js +0 -801
  544. package/es/components/footerbar/footerbar.js.map +0 -1
  545. package/es/components/footerbar/styles.js +0 -34
  546. package/es/components/footerbar/styles.js.map +0 -1
  547. package/es/components/header/button/MenuButton.js +0 -70
  548. package/es/components/header/button/MenuButton.js.map +0 -1
  549. package/es/components/header/button/SaveButton.js +0 -48
  550. package/es/components/header/button/SaveButton.js.map +0 -1
  551. package/es/components/header/button/styles.js +0 -59
  552. package/es/components/header/button/styles.js.map +0 -1
  553. package/es/components/header/export.js +0 -5
  554. package/es/components/header/export.js.map +0 -1
  555. package/es/components/header/header.js +0 -550
  556. package/es/components/header/header.js.map +0 -1
  557. package/es/components/header/styles.js +0 -41
  558. package/es/components/header/styles.js.map +0 -1
  559. package/es/components/login/Login.js +0 -86
  560. package/es/components/login/Login.js.map +0 -1
  561. package/es/components/login/LoginForm/index.js +0 -132
  562. package/es/components/login/LoginForm/index.js.map +0 -1
  563. package/es/components/login/Register.js +0 -96
  564. package/es/components/login/Register.js.map +0 -1
  565. package/es/components/login/RegisterForm/index.js +0 -230
  566. package/es/components/login/RegisterForm/index.js.map +0 -1
  567. package/es/components/login/jwtService.js +0 -232
  568. package/es/components/login/jwtService.js.map +0 -1
  569. package/es/components/molecules/slider/index.js +0 -13
  570. package/es/components/molecules/slider/index.js.map +0 -1
  571. package/es/components/molecules/slider/styles.js +0 -2
  572. package/es/components/molecules/slider/styles.js.map +0 -1
  573. package/es/components/myprojects/export.js +0 -5
  574. package/es/components/myprojects/export.js.map +0 -1
  575. package/es/components/myprojects/index.js +0 -446
  576. package/es/components/myprojects/index.js.map +0 -1
  577. package/es/components/myprojects/styles.js +0 -24
  578. package/es/components/myprojects/styles.js.map +0 -1
  579. package/es/components/sidebar/custom-accordion.js +0 -38
  580. package/es/components/sidebar/custom-accordion.js.map +0 -1
  581. package/es/components/sidebar/export.js +0 -14
  582. package/es/components/sidebar/export.js.map +0 -1
  583. package/es/components/sidebar/panel-element-editor/attributes-editor/attributes-editor.js +0 -65
  584. package/es/components/sidebar/panel-element-editor/attributes-editor/attributes-editor.js.map +0 -1
  585. package/es/components/sidebar/panel-element-editor/attributes-editor/confirm-popup.js +0 -116
  586. package/es/components/sidebar/panel-element-editor/attributes-editor/confirm-popup.js.map +0 -1
  587. package/es/components/sidebar/panel-element-editor/attributes-editor/hole-attributes-editor.js +0 -126
  588. package/es/components/sidebar/panel-element-editor/attributes-editor/hole-attributes-editor.js.map +0 -1
  589. package/es/components/sidebar/panel-element-editor/attributes-editor/item-attributes-editor.js +0 -251
  590. package/es/components/sidebar/panel-element-editor/attributes-editor/item-attributes-editor.js.map +0 -1
  591. package/es/components/sidebar/panel-element-editor/attributes-editor/line-attributes-editor.js +0 -75
  592. package/es/components/sidebar/panel-element-editor/attributes-editor/line-attributes-editor.js.map +0 -1
  593. package/es/components/sidebar/panel-element-editor/element-editor.js +0 -878
  594. package/es/components/sidebar/panel-element-editor/element-editor.js.map +0 -1
  595. package/es/components/sidebar/panel-element-editor/multi-elements-editor.js +0 -2
  596. package/es/components/sidebar/panel-element-editor/multi-elements-editor.js.map +0 -1
  597. package/es/components/sidebar/panel-element-editor/panel-element-editor.js +0 -49
  598. package/es/components/sidebar/panel-element-editor/panel-element-editor.js.map +0 -1
  599. package/es/components/sidebar/panel-element-editor/panel-multi-elements-editor.js +0 -118
  600. package/es/components/sidebar/panel-element-editor/panel-multi-elements-editor.js.map +0 -1
  601. package/es/components/sidebar/panel-group-editor.js +0 -211
  602. package/es/components/sidebar/panel-group-editor.js.map +0 -1
  603. package/es/components/sidebar/panel-groups.js +0 -267
  604. package/es/components/sidebar/panel-groups.js.map +0 -1
  605. package/es/components/sidebar/panel-guides.js +0 -185
  606. package/es/components/sidebar/panel-guides.js.map +0 -1
  607. package/es/components/sidebar/panel-layer-elements.js +0 -251
  608. package/es/components/sidebar/panel-layer-elements.js.map +0 -1
  609. package/es/components/sidebar/panel-layers.js +0 -340
  610. package/es/components/sidebar/panel-layers.js.map +0 -1
  611. package/es/components/sidebar/panel.js +0 -103
  612. package/es/components/sidebar/panel.js.map +0 -1
  613. package/es/components/sidebar/sidebar.js +0 -109
  614. package/es/components/sidebar/sidebar.js.map +0 -1
  615. package/es/components/sidebar/toolbar-panel.js +0 -164
  616. package/es/components/sidebar/toolbar-panel.js.map +0 -1
  617. package/es/components/sign/export.js +0 -6
  618. package/es/components/sign/export.js.map +0 -1
  619. package/es/components/sign/main/index.js +0 -560
  620. package/es/components/sign/main/index.js.map +0 -1
  621. package/es/components/sign/main/styles.js +0 -20
  622. package/es/components/sign/main/styles.js.map +0 -1
  623. package/es/components/style/button.js +0 -114
  624. package/es/components/style/button.js.map +0 -1
  625. package/es/components/style/cancel-button.js +0 -23
  626. package/es/components/style/cancel-button.js.map +0 -1
  627. package/es/components/style/content-container.js +0 -34
  628. package/es/components/style/content-container.js.map +0 -1
  629. package/es/components/style/content-title.js +0 -30
  630. package/es/components/style/content-title.js.map +0 -1
  631. package/es/components/style/delete-button.js +0 -26
  632. package/es/components/style/delete-button.js.map +0 -1
  633. package/es/components/style/export.js +0 -32
  634. package/es/components/style/export.js.map +0 -1
  635. package/es/components/style/form-block.js +0 -25
  636. package/es/components/style/form-block.js.map +0 -1
  637. package/es/components/style/form-color-input.js +0 -28
  638. package/es/components/style/form-color-input.js.map +0 -1
  639. package/es/components/style/form-label.js +0 -27
  640. package/es/components/style/form-label.js.map +0 -1
  641. package/es/components/style/form-number-input.js +0 -190
  642. package/es/components/style/form-number-input.js.map +0 -1
  643. package/es/components/style/form-number-input_2.js +0 -207
  644. package/es/components/style/form-number-input_2.js.map +0 -1
  645. package/es/components/style/form-select.js +0 -21
  646. package/es/components/style/form-select.js.map +0 -1
  647. package/es/components/style/form-slider.js +0 -46
  648. package/es/components/style/form-slider.js.map +0 -1
  649. package/es/components/style/form-submit-button.js +0 -27
  650. package/es/components/style/form-submit-button.js.map +0 -1
  651. package/es/components/style/form-text-input.js +0 -77
  652. package/es/components/style/form-text-input.js.map +0 -1
  653. package/es/components/toolbar/button/ControlButton.js +0 -69
  654. package/es/components/toolbar/button/ControlButton.js.map +0 -1
  655. package/es/components/toolbar/button/DirectionButton.js +0 -50
  656. package/es/components/toolbar/button/DirectionButton.js.map +0 -1
  657. package/es/components/toolbar/button/RightButton.js +0 -133
  658. package/es/components/toolbar/button/RightButton.js.map +0 -1
  659. package/es/components/toolbar/button/ToggleButton.js +0 -59
  660. package/es/components/toolbar/button/ToggleButton.js.map +0 -1
  661. package/es/components/toolbar/button/index.js +0 -88
  662. package/es/components/toolbar/button/index.js.map +0 -1
  663. package/es/components/toolbar/button/styles.js +0 -14
  664. package/es/components/toolbar/button/styles.js.map +0 -1
  665. package/es/components/toolbar/components/DoorStyleMenu.js +0 -105
  666. package/es/components/toolbar/components/DoorStyleMenu.js.map +0 -1
  667. package/es/components/toolbar/components/Pricing.js +0 -101
  668. package/es/components/toolbar/components/Pricing.js.map +0 -1
  669. package/es/components/toolbar/components/ReviewForQuote.js +0 -476
  670. package/es/components/toolbar/components/ReviewForQuote.js.map +0 -1
  671. package/es/components/toolbar/export.js +0 -14
  672. package/es/components/toolbar/export.js.map +0 -1
  673. package/es/components/toolbar/main/Alert.js +0 -125
  674. package/es/components/toolbar/main/Alert.js.map +0 -1
  675. package/es/components/toolbar/main/TakePictureModal.js +0 -100
  676. package/es/components/toolbar/main/TakePictureModal.js.map +0 -1
  677. package/es/components/toolbar/main/confirm-popup.js +0 -88
  678. package/es/components/toolbar/main/confirm-popup.js.map +0 -1
  679. package/es/components/toolbar/main/index.js +0 -4612
  680. package/es/components/toolbar/main/index.js.map +0 -1
  681. package/es/components/toolbar/main/myComponents.js +0 -118
  682. package/es/components/toolbar/main/myComponents.js.map +0 -1
  683. package/es/components/toolbar/main/styles.js +0 -64
  684. package/es/components/toolbar/main/styles.js.map +0 -1
  685. package/es/components/toolbar/plugin-item.js +0 -150
  686. package/es/components/toolbar/plugin-item.js.map +0 -1
  687. package/es/components/toolbar/popup/appliance/appliance-category/index.js +0 -77
  688. package/es/components/toolbar/popup/appliance/appliance-category/index.js.map +0 -1
  689. package/es/components/toolbar/popup/appliance/choose-appliance/index.js +0 -76
  690. package/es/components/toolbar/popup/appliance/choose-appliance/index.js.map +0 -1
  691. package/es/components/toolbar/popup/appliance/index.js +0 -81
  692. package/es/components/toolbar/popup/appliance/index.js.map +0 -1
  693. package/es/components/toolbar/popup/autosaveprompt/index.js +0 -91
  694. package/es/components/toolbar/popup/autosaveprompt/index.js.map +0 -1
  695. package/es/components/toolbar/popup/autosaveprompt/styles.js +0 -9
  696. package/es/components/toolbar/popup/autosaveprompt/styles.js.map +0 -1
  697. package/es/components/toolbar/popup/cabinet/cabinet-category/index.js +0 -77
  698. package/es/components/toolbar/popup/cabinet/cabinet-category/index.js.map +0 -1
  699. package/es/components/toolbar/popup/cabinet/choose-product/index.js +0 -98
  700. package/es/components/toolbar/popup/cabinet/choose-product/index.js.map +0 -1
  701. package/es/components/toolbar/popup/cabinet/index.js +0 -83
  702. package/es/components/toolbar/popup/cabinet/index.js.map +0 -1
  703. package/es/components/toolbar/popup/doorStyle/choose-style/index.js +0 -50
  704. package/es/components/toolbar/popup/doorStyle/choose-style/index.js.map +0 -1
  705. package/es/components/toolbar/popup/doorStyle/index.js +0 -61
  706. package/es/components/toolbar/popup/doorStyle/index.js.map +0 -1
  707. package/es/components/toolbar/popup/doorStyle/style-category/index.js +0 -143
  708. package/es/components/toolbar/popup/doorStyle/style-category/index.js.map +0 -1
  709. package/es/components/toolbar/popup/downloadsummary/downloadSummaryContext.js +0 -3
  710. package/es/components/toolbar/popup/downloadsummary/downloadSummaryContext.js.map +0 -1
  711. package/es/components/toolbar/popup/downloadsummary/downloadSummaryTemp.js +0 -119
  712. package/es/components/toolbar/popup/downloadsummary/downloadSummaryTemp.js.map +0 -1
  713. package/es/components/toolbar/popup/downloadsummary/index.js +0 -564
  714. package/es/components/toolbar/popup/downloadsummary/index.js.map +0 -1
  715. package/es/components/toolbar/popup/downloadsummary/show2D/show2DView.js +0 -51
  716. package/es/components/toolbar/popup/downloadsummary/show2D/show2DView.js.map +0 -1
  717. package/es/components/toolbar/popup/downloadsummary/show2D/viewer2DDownLoad.js +0 -191
  718. package/es/components/toolbar/popup/downloadsummary/show2D/viewer2DDownLoad.js.map +0 -1
  719. package/es/components/toolbar/popup/downloadsummary/show3D/show3DView.js +0 -245
  720. package/es/components/toolbar/popup/downloadsummary/show3D/show3DView.js.map +0 -1
  721. package/es/components/toolbar/popup/downloadsummary/show3D/viewer3DDownLoad.js +0 -1758
  722. package/es/components/toolbar/popup/downloadsummary/show3D/viewer3DDownLoad.js.map +0 -1
  723. package/es/components/toolbar/popup/downloadsummary/showCabinetInfo.js +0 -87
  724. package/es/components/toolbar/popup/downloadsummary/showCabinetInfo.js.map +0 -1
  725. package/es/components/toolbar/popup/downloadsummary/showElevation/showElevationView.js +0 -116
  726. package/es/components/toolbar/popup/downloadsummary/showElevation/showElevationView.js.map +0 -1
  727. package/es/components/toolbar/popup/downloadsummary/showElevation/viewer3DElevationDownload.js +0 -1710
  728. package/es/components/toolbar/popup/downloadsummary/showElevation/viewer3DElevationDownload.js.map +0 -1
  729. package/es/components/toolbar/popup/downloadsummary/showElevation/viewerElevationDownload.js +0 -175
  730. package/es/components/toolbar/popup/downloadsummary/showElevation/viewerElevationDownload.js.map +0 -1
  731. package/es/components/toolbar/popup/downloadsummary/showWarranty.js +0 -106
  732. package/es/components/toolbar/popup/downloadsummary/showWarranty.js.map +0 -1
  733. package/es/components/toolbar/popup/downloadsummary/styles.js +0 -40
  734. package/es/components/toolbar/popup/downloadsummary/styles.js.map +0 -1
  735. package/es/components/toolbar/popup/finishingtouch/category/index.js +0 -35
  736. package/es/components/toolbar/popup/finishingtouch/category/index.js.map +0 -1
  737. package/es/components/toolbar/popup/finishingtouch/index.js +0 -47
  738. package/es/components/toolbar/popup/finishingtouch/index.js.map +0 -1
  739. package/es/components/toolbar/popup/finishingtouch/material-edit.js +0 -156
  740. package/es/components/toolbar/popup/finishingtouch/material-edit.js.map +0 -1
  741. package/es/components/toolbar/popup/finishingtouch/product/index.js +0 -56
  742. package/es/components/toolbar/popup/finishingtouch/product/index.js.map +0 -1
  743. package/es/components/toolbar/popup/floorplan/choose-floor/confirm-popup.js +0 -116
  744. package/es/components/toolbar/popup/floorplan/choose-floor/confirm-popup.js.map +0 -1
  745. package/es/components/toolbar/popup/floorplan/choose-floor/index.js +0 -246
  746. package/es/components/toolbar/popup/floorplan/choose-floor/index.js.map +0 -1
  747. package/es/components/toolbar/popup/floorplan/choose-floor/styles.js +0 -11
  748. package/es/components/toolbar/popup/floorplan/choose-floor/styles.js.map +0 -1
  749. package/es/components/toolbar/popup/floorplan/floor-category/index.js +0 -90
  750. package/es/components/toolbar/popup/floorplan/floor-category/index.js.map +0 -1
  751. package/es/components/toolbar/popup/floorplan/index.js +0 -49
  752. package/es/components/toolbar/popup/floorplan/index.js.map +0 -1
  753. package/es/components/toolbar/popup/index.js +0 -188
  754. package/es/components/toolbar/popup/index.js.map +0 -1
  755. package/es/components/toolbar/popup/newproject/index.js +0 -67
  756. package/es/components/toolbar/popup/newproject/index.js.map +0 -1
  757. package/es/components/toolbar/popup/newproject/styles.js +0 -9
  758. package/es/components/toolbar/popup/newproject/styles.js.map +0 -1
  759. package/es/components/toolbar/popup/product/appliance.js +0 -65
  760. package/es/components/toolbar/popup/product/appliance.js.map +0 -1
  761. package/es/components/toolbar/popup/product/cabinetproduct.js +0 -25
  762. package/es/components/toolbar/popup/product/cabinetproduct.js.map +0 -1
  763. package/es/components/toolbar/popup/product/doorstyle.js +0 -50
  764. package/es/components/toolbar/popup/product/doorstyle.js.map +0 -1
  765. package/es/components/toolbar/popup/product/doorstyleproduct.js +0 -51
  766. package/es/components/toolbar/popup/product/doorstyleproduct.js.map +0 -1
  767. package/es/components/toolbar/popup/product/floor.js +0 -52
  768. package/es/components/toolbar/popup/product/floor.js.map +0 -1
  769. package/es/components/toolbar/popup/product/floorproduct.js +0 -61
  770. package/es/components/toolbar/popup/product/floorproduct.js.map +0 -1
  771. package/es/components/toolbar/popup/product/index.js +0 -52
  772. package/es/components/toolbar/popup/product/index.js.map +0 -1
  773. package/es/components/toolbar/popup/product/primary.js +0 -63
  774. package/es/components/toolbar/popup/product/primary.js.map +0 -1
  775. package/es/components/toolbar/popup/product/productline.js +0 -120
  776. package/es/components/toolbar/popup/product/productline.js.map +0 -1
  777. package/es/components/toolbar/popup/product/reviewItem.js +0 -338
  778. package/es/components/toolbar/popup/product/reviewItem.js.map +0 -1
  779. package/es/components/toolbar/popup/product/reviewMolding.js +0 -282
  780. package/es/components/toolbar/popup/product/reviewMolding.js.map +0 -1
  781. package/es/components/toolbar/popup/product/styles.js +0 -71
  782. package/es/components/toolbar/popup/product/styles.js.map +0 -1
  783. package/es/components/toolbar/popup/savedesign/FullPictureForm.js +0 -161
  784. package/es/components/toolbar/popup/savedesign/FullPictureForm.js.map +0 -1
  785. package/es/components/toolbar/popup/savedesign/index.js +0 -508
  786. package/es/components/toolbar/popup/savedesign/index.js.map +0 -1
  787. package/es/components/toolbar/popup/savedesign/styles.js +0 -19
  788. package/es/components/toolbar/popup/savedesign/styles.js.map +0 -1
  789. package/es/components/toolbar/popup/setDoorStyleOption/index.js +0 -57
  790. package/es/components/toolbar/popup/setDoorStyleOption/index.js.map +0 -1
  791. package/es/components/toolbar/popup/styles.js +0 -98
  792. package/es/components/toolbar/popup/styles.js.map +0 -1
  793. package/es/components/toolbar/popup/submitforquote/AddToCartOptions.js +0 -157
  794. package/es/components/toolbar/popup/submitforquote/AddToCartOptions.js.map +0 -1
  795. package/es/components/toolbar/popup/submitforquote/CustomerRequestsForm.js +0 -85
  796. package/es/components/toolbar/popup/submitforquote/CustomerRequestsForm.js.map +0 -1
  797. package/es/components/toolbar/popup/submitforquote/SkipDesignerReview.js +0 -36
  798. package/es/components/toolbar/popup/submitforquote/SkipDesignerReview.js.map +0 -1
  799. package/es/components/toolbar/popup/submitforquote/StepDots.js +0 -33
  800. package/es/components/toolbar/popup/submitforquote/StepDots.js.map +0 -1
  801. package/es/components/toolbar/popup/submitforquote/cart-choice.js +0 -132
  802. package/es/components/toolbar/popup/submitforquote/cart-choice.js.map +0 -1
  803. package/es/components/toolbar/popup/submitforquote/doorstyle-menus.js +0 -43
  804. package/es/components/toolbar/popup/submitforquote/doorstyle-menus.js.map +0 -1
  805. package/es/components/toolbar/popup/submitforquote/index.js +0 -690
  806. package/es/components/toolbar/popup/submitforquote/index.js.map +0 -1
  807. package/es/components/toolbar/popup/submitforquote/styles.js +0 -31
  808. package/es/components/toolbar/popup/submitforquote/styles.js.map +0 -1
  809. package/es/components/toolbar/popup/submitprompt/index.js +0 -71
  810. package/es/components/toolbar/popup/submitprompt/index.js.map +0 -1
  811. package/es/components/toolbar/popup/submitprompt/styles.js +0 -9
  812. package/es/components/toolbar/popup/submitprompt/styles.js.map +0 -1
  813. package/es/components/toolbar/toolbar-button.js +0 -105
  814. package/es/components/toolbar/toolbar-button.js.map +0 -1
  815. package/es/components/toolbar/toolbar-load-button.js +0 -29
  816. package/es/components/toolbar/toolbar-load-button.js.map +0 -1
  817. package/es/components/toolbar/toolbar-save-button.js +0 -27
  818. package/es/components/toolbar/toolbar-save-button.js.map +0 -1
  819. package/es/components/tutorial-view/Modal.js +0 -498
  820. package/es/components/tutorial-view/Modal.js.map +0 -1
  821. package/es/components/tutorial-view/styles.js +0 -6
  822. package/es/components/tutorial-view/styles.js.map +0 -1
  823. package/es/components/viewer2d/area.js +0 -83
  824. package/es/components/viewer2d/area.js.map +0 -1
  825. package/es/components/viewer2d/export.js +0 -32
  826. package/es/components/viewer2d/export.js.map +0 -1
  827. package/es/components/viewer2d/grids/grid-horizontal-streak.js +0 -38
  828. package/es/components/viewer2d/grids/grid-horizontal-streak.js.map +0 -1
  829. package/es/components/viewer2d/grids/grid-streak.js +0 -38
  830. package/es/components/viewer2d/grids/grid-streak.js.map +0 -1
  831. package/es/components/viewer2d/grids/grid-vertical-streak.js +0 -38
  832. package/es/components/viewer2d/grids/grid-vertical-streak.js.map +0 -1
  833. package/es/components/viewer2d/grids/grids.js +0 -36
  834. package/es/components/viewer2d/grids/grids.js.map +0 -1
  835. package/es/components/viewer2d/group.js +0 -54
  836. package/es/components/viewer2d/group.js.map +0 -1
  837. package/es/components/viewer2d/item.js +0 -514
  838. package/es/components/viewer2d/item.js.map +0 -1
  839. package/es/components/viewer2d/layer.js +0 -165
  840. package/es/components/viewer2d/layer.js.map +0 -1
  841. package/es/components/viewer2d/line.js +0 -889
  842. package/es/components/viewer2d/line.js.map +0 -1
  843. package/es/components/viewer2d/ruler.js +0 -101
  844. package/es/components/viewer2d/ruler.js.map +0 -1
  845. package/es/components/viewer2d/rulerDist.js +0 -147
  846. package/es/components/viewer2d/rulerDist.js.map +0 -1
  847. package/es/components/viewer2d/rulerX.js +0 -152
  848. package/es/components/viewer2d/rulerX.js.map +0 -1
  849. package/es/components/viewer2d/rulerY.js +0 -154
  850. package/es/components/viewer2d/rulerY.js.map +0 -1
  851. package/es/components/viewer2d/scene.js +0 -141
  852. package/es/components/viewer2d/scene.js.map +0 -1
  853. package/es/components/viewer2d/snap.js +0 -75
  854. package/es/components/viewer2d/snap.js.map +0 -1
  855. package/es/components/viewer2d/state.js +0 -79
  856. package/es/components/viewer2d/state.js.map +0 -1
  857. package/es/components/viewer2d/utils.js +0 -163
  858. package/es/components/viewer2d/utils.js.map +0 -1
  859. package/es/components/viewer2d/vertex.js +0 -67
  860. package/es/components/viewer2d/vertex.js.map +0 -1
  861. package/es/components/viewer2d/viewer2d.js +0 -1402
  862. package/es/components/viewer2d/viewer2d.js.map +0 -1
  863. package/es/components/viewer3d/camera-controls-module/camera-controls.module.js +0 -2593
  864. package/es/components/viewer3d/camera-controls-module/camera-controls.module.js.map +0 -1
  865. package/es/components/viewer3d/dcm.js +0 -402
  866. package/es/components/viewer3d/dcm.js.map +0 -1
  867. package/es/components/viewer3d/fbm.js +0 -415
  868. package/es/components/viewer3d/fbm.js.map +0 -1
  869. package/es/components/viewer3d/front3D.js +0 -67
  870. package/es/components/viewer3d/front3D.js.map +0 -1
  871. package/es/components/viewer3d/grid-creator.js +0 -26
  872. package/es/components/viewer3d/grid-creator.js.map +0 -1
  873. package/es/components/viewer3d/grids/grid-horizontal-streak.js +0 -37
  874. package/es/components/viewer3d/grids/grid-horizontal-streak.js.map +0 -1
  875. package/es/components/viewer3d/grids/grid-streak.js +0 -28
  876. package/es/components/viewer3d/grids/grid-streak.js.map +0 -1
  877. package/es/components/viewer3d/grids/grid-vertical-streak.js +0 -37
  878. package/es/components/viewer3d/grids/grid-vertical-streak.js.map +0 -1
  879. package/es/components/viewer3d/libs/first-person-controls.js +0 -68
  880. package/es/components/viewer3d/libs/first-person-controls.js.map +0 -1
  881. package/es/components/viewer3d/libs/helvetiker_regular.typeface.js +0 -1282
  882. package/es/components/viewer3d/libs/helvetiker_regular.typeface.js.map +0 -1
  883. package/es/components/viewer3d/libs/mtl-loader.js +0 -358
  884. package/es/components/viewer3d/libs/mtl-loader.js.map +0 -1
  885. package/es/components/viewer3d/libs/obj-loader.js +0 -463
  886. package/es/components/viewer3d/libs/obj-loader.js.map +0 -1
  887. package/es/components/viewer3d/libs/orbit-controls.js +0 -699
  888. package/es/components/viewer3d/libs/orbit-controls.js.map +0 -1
  889. package/es/components/viewer3d/libs/pointer-lock-controls.js +0 -46
  890. package/es/components/viewer3d/libs/pointer-lock-controls.js.map +0 -1
  891. package/es/components/viewer3d/lrm.js +0 -306
  892. package/es/components/viewer3d/lrm.js.map +0 -1
  893. package/es/components/viewer3d/model.js +0 -709
  894. package/es/components/viewer3d/model.js.map +0 -1
  895. package/es/components/viewer3d/pointer-lock-navigation.js +0 -116
  896. package/es/components/viewer3d/pointer-lock-navigation.js.map +0 -1
  897. package/es/components/viewer3d/ruler-utils/itemRect.js +0 -62
  898. package/es/components/viewer3d/ruler-utils/itemRect.js.map +0 -1
  899. package/es/components/viewer3d/ruler-utils/layer3D.js +0 -496
  900. package/es/components/viewer3d/ruler-utils/layer3D.js.map +0 -1
  901. package/es/components/viewer3d/ruler-utils/ruler3D.js +0 -228
  902. package/es/components/viewer3d/ruler-utils/ruler3D.js.map +0 -1
  903. package/es/components/viewer3d/ruler-utils/scene3D.js +0 -62
  904. package/es/components/viewer3d/ruler-utils/scene3D.js.map +0 -1
  905. package/es/components/viewer3d/ruler-utils/state3D.js +0 -19
  906. package/es/components/viewer3d/ruler-utils/state3D.js.map +0 -1
  907. package/es/components/viewer3d/scene-creator.js +0 -3607
  908. package/es/components/viewer3d/scene-creator.js.map +0 -1
  909. package/es/components/viewer3d/three-memory-cleaner.js +0 -52
  910. package/es/components/viewer3d/three-memory-cleaner.js.map +0 -1
  911. package/es/components/viewer3d/viewer3d-first-person.js +0 -316
  912. package/es/components/viewer3d/viewer3d-first-person.js.map +0 -1
  913. package/es/components/viewer3d/viewer3d.js +0 -2504
  914. package/es/components/viewer3d/viewer3d.js.map +0 -1
  915. package/es/components/wizardstep/button/styles.js +0 -60
  916. package/es/components/wizardstep/button/styles.js.map +0 -1
  917. package/es/components/wizardstep/export.js +0 -5
  918. package/es/components/wizardstep/export.js.map +0 -1
  919. package/es/components/wizardstep/index.js +0 -971
  920. package/es/components/wizardstep/index.js.map +0 -1
  921. package/es/components/wizardstep/styles.js +0 -61
  922. package/es/components/wizardstep/styles.js.map +0 -1
  923. package/es/components/wizardstep/wizardstep-content-button.js +0 -217
  924. package/es/components/wizardstep/wizardstep-content-button.js.map +0 -1
  925. package/es/components/wizardstep/wizardstep-toggle-button.js +0 -126
  926. package/es/components/wizardstep/wizardstep-toggle-button.js.map +0 -1
  927. package/es/constants.js +0 -637
  928. package/es/constants.js.map +0 -1
  929. package/es/hooks/useCheckCart.js +0 -53
  930. package/es/hooks/useCheckCart.js.map +0 -1
  931. package/es/hooks/useGetPricesBySku.js +0 -74
  932. package/es/hooks/useGetPricesBySku.js.map +0 -1
  933. package/es/hooks/useValidateToken.js +0 -201
  934. package/es/hooks/useValidateToken.js.map +0 -1
  935. package/es/index.js +0 -17
  936. package/es/index.js.map +0 -1
  937. package/es/models.js +0 -511
  938. package/es/models.js.map +0 -1
  939. package/es/plugins/SVGLoader.js +0 -1413
  940. package/es/plugins/SVGLoader.js.map +0 -1
  941. package/es/plugins/autosave.js +0 -34
  942. package/es/plugins/autosave.js.map +0 -1
  943. package/es/plugins/console-debugger.js +0 -38
  944. package/es/plugins/console-debugger.js.map +0 -1
  945. package/es/plugins/export.js +0 -10
  946. package/es/plugins/export.js.map +0 -1
  947. package/es/plugins/keyboard.js +0 -102
  948. package/es/plugins/keyboard.js.map +0 -1
  949. package/es/reducers/areas-reducer.js +0 -13
  950. package/es/reducers/areas-reducer.js.map +0 -1
  951. package/es/reducers/export.js +0 -26
  952. package/es/reducers/export.js.map +0 -1
  953. package/es/reducers/groups-reducer.js +0 -39
  954. package/es/reducers/groups-reducer.js.map +0 -1
  955. package/es/reducers/holes-reducer.js +0 -63
  956. package/es/reducers/holes-reducer.js.map +0 -1
  957. package/es/reducers/items-reducer.js +0 -144
  958. package/es/reducers/items-reducer.js.map +0 -1
  959. package/es/reducers/lines-reducer.js +0 -46
  960. package/es/reducers/lines-reducer.js.map +0 -1
  961. package/es/reducers/project-reducer.js +0 -130
  962. package/es/reducers/project-reducer.js.map +0 -1
  963. package/es/reducers/reducer.js +0 -20
  964. package/es/reducers/reducer.js.map +0 -1
  965. package/es/reducers/scene-reducer.js +0 -29
  966. package/es/reducers/scene-reducer.js.map +0 -1
  967. package/es/reducers/user-reducer.js +0 -42
  968. package/es/reducers/user-reducer.js.map +0 -1
  969. package/es/reducers/vertices-reducer.js +0 -20
  970. package/es/reducers/vertices-reducer.js.map +0 -1
  971. package/es/reducers/viewer2d-reducer.js +0 -76
  972. package/es/reducers/viewer2d-reducer.js.map +0 -1
  973. package/es/reducers/viewer3d-reducer.js +0 -57
  974. package/es/reducers/viewer3d-reducer.js.map +0 -1
  975. package/es/shared-style.js +0 -67
  976. package/es/shared-style.js.map +0 -1
  977. package/es/styles/export.js +0 -6
  978. package/es/styles/export.js.map +0 -1
  979. package/es/styles/tabs.css +0 -40
  980. package/es/translator/en.js +0 -105
  981. package/es/translator/en.js.map +0 -1
  982. package/es/translator/it.js +0 -80
  983. package/es/translator/it.js.map +0 -1
  984. package/es/translator/ru.js +0 -80
  985. package/es/translator/ru.js.map +0 -1
  986. package/es/translator/translator.js +0 -85
  987. package/es/translator/translator.js.map +0 -1
  988. package/es/utils/browser.js +0 -34
  989. package/es/utils/browser.js.map +0 -1
  990. package/es/utils/email-validator.js +0 -5
  991. package/es/utils/email-validator.js.map +0 -1
  992. package/es/utils/export.js +0 -26
  993. package/es/utils/export.js.map +0 -1
  994. package/es/utils/geometry.js +0 -2237
  995. package/es/utils/geometry.js.map +0 -1
  996. package/es/utils/get-edges-of-subgraphs.js +0 -27
  997. package/es/utils/get-edges-of-subgraphs.js.map +0 -1
  998. package/es/utils/graph-cycles.js +0 -239
  999. package/es/utils/graph-cycles.js.map +0 -1
  1000. package/es/utils/graph-inner-cycles.js +0 -47
  1001. package/es/utils/graph-inner-cycles.js.map +0 -1
  1002. package/es/utils/graph.js +0 -150
  1003. package/es/utils/graph.js.map +0 -1
  1004. package/es/utils/helper.js +0 -337
  1005. package/es/utils/helper.js.map +0 -1
  1006. package/es/utils/history.js +0 -30
  1007. package/es/utils/history.js.map +0 -1
  1008. package/es/utils/id-broker.js +0 -20
  1009. package/es/utils/id-broker.js.map +0 -1
  1010. package/es/utils/logger.js +0 -9
  1011. package/es/utils/logger.js.map +0 -1
  1012. package/es/utils/math.js +0 -51
  1013. package/es/utils/math.js.map +0 -1
  1014. package/es/utils/molding.js +0 -840
  1015. package/es/utils/molding.js.map +0 -1
  1016. package/es/utils/name-generator.js +0 -19
  1017. package/es/utils/name-generator.js.map +0 -1
  1018. package/es/utils/objects-utils.js +0 -51
  1019. package/es/utils/objects-utils.js.map +0 -1
  1020. package/es/utils/phone-validator.js +0 -5
  1021. package/es/utils/phone-validator.js.map +0 -1
  1022. package/es/utils/process-black-list.js +0 -19
  1023. package/es/utils/process-black-list.js.map +0 -1
  1024. package/es/utils/react-if.js +0 -19
  1025. package/es/utils/react-if.js.map +0 -1
  1026. package/es/utils/snap-scene.js +0 -100
  1027. package/es/utils/snap-scene.js.map +0 -1
  1028. package/es/utils/snap.js +0 -238
  1029. package/es/utils/snap.js.map +0 -1
  1030. package/es/utils/threeCSG.es6.js +0 -499
  1031. package/es/utils/threeCSG.es6.js.map +0 -1
  1032. package/es/version.js +0 -2
  1033. package/es/version.js.map +0 -1
  1034. /package/{es → src}/catalog/areas/area/textures/ceramic-tile.jpg +0 -0
  1035. /package/{es → src}/catalog/areas/area/textures/grass.jpg +0 -0
  1036. /package/{es → src}/catalog/areas/area/textures/parquet.jpg +0 -0
  1037. /package/{es → src}/catalog/areas/area/textures/strand-porcelain.jpg +0 -0
  1038. /package/{es → src}/catalog/areas/area/textures/tile1.jpg +0 -0
  1039. /package/{es → src}/catalog/back.png +0 -0
  1040. /package/{es → src}/catalog/doors.png +0 -0
  1041. /package/{es → src}/catalog/doorways.png +0 -0
  1042. /package/{es → src}/catalog/envMap/nx.hdr +0 -0
  1043. /package/{es → src}/catalog/envMap/ny.hdr +0 -0
  1044. /package/{es → src}/catalog/envMap/nz.hdr +0 -0
  1045. /package/{es → src}/catalog/envMap/px.hdr +0 -0
  1046. /package/{es → src}/catalog/envMap/py.hdr +0 -0
  1047. /package/{es → src}/catalog/envMap/pz.hdr +0 -0
  1048. /package/{es → src}/catalog/holes/door-double/door_double.png +0 -0
  1049. /package/{es → src}/catalog/holes/door-panic/panicDoor.png +0 -0
  1050. /package/{es → src}/catalog/holes/door-panic-double/panicDoorDouble.png +0 -0
  1051. /package/{es → src}/catalog/holes/gate/gate.jpg +0 -0
  1052. /package/{es → src}/catalog/holes/window-clear/texture.png +0 -0
  1053. /package/{es → src}/catalog/holes/window-cross/texture.png +0 -0
  1054. /package/{es → src}/catalog/holes/window-double-hung/texture.png +0 -0
  1055. /package/{es → src}/catalog/holes/window-vertical/texture.png +0 -0
  1056. /package/{es → src}/catalog/lines/wall/textures/bricks-normal.jpg +0 -0
  1057. /package/{es → src}/catalog/lines/wall/textures/bricks-normal2.jpg +0 -0
  1058. /package/{es → src}/catalog/lines/wall/textures/bricks.jpg +0 -0
  1059. /package/{es → src}/catalog/lines/wall/textures/bricks2.jpg +0 -0
  1060. /package/{es → src}/catalog/lines/wall/textures/bricks3.jpg +0 -0
  1061. /package/{es → src}/catalog/lines/wall/textures/morden-normal.jpg +0 -0
  1062. /package/{es → src}/catalog/lines/wall/textures/morden.jpg +0 -0
  1063. /package/{es → src}/catalog/lines/wall/textures/painted-normal.jpg +0 -0
  1064. /package/{es → src}/catalog/lines/wall/textures/painted.jpg +0 -0
  1065. /package/{es → src}/catalog/lines/wall/textures/plaster-normal.jpg +0 -0
  1066. /package/{es → src}/catalog/lines/wall/textures/plaster.jpg +0 -0
  1067. /package/{es → src}/catalog/lines/wall/wall.png +0 -0
  1068. /package/{es → src}/catalog/molding/molding-dcm/texture.png +0 -0
  1069. /package/{es → src}/catalog/molding/molding-fbm/texture.png +0 -0
  1070. /package/{es → src}/catalog/molding/molding-lrm/texture.png +0 -0
  1071. /package/{es → src}/catalog/windows.png +0 -0
  1072. /package/{es → src}/components/header/header.style.css +0 -0
  1073. /package/{es → src}/components/login/style.css +0 -0
  1074. /package/{es → src}/components/login/style.scss +0 -0
  1075. /package/{es → src}/components/molecules/slider/styles.scss +0 -0
  1076. /package/{es → src}/components/toolbar/main/lShaped.json +0 -0
  1077. /package/{es → src}/components/toolbar/main/longNarrow.json +0 -0
  1078. /package/{es → src}/components/toolbar/main/oRectangle.json +0 -0
  1079. /package/{es → src}/components/toolbar/main/rectangle.json +0 -0
  1080. /package/{es → src}/components/toolbar/main/style.css +0 -0
  1081. /package/{es → src}/components/toolbar/popup/autosaveprompt/styles.css +0 -0
  1082. /package/{es → src}/components/toolbar/popup/downloadsummary/styles.css +0 -0
  1083. /package/{es → src}/components/toolbar/popup/floorplan/choose-floor/lShaped.json +0 -0
  1084. /package/{es → src}/components/toolbar/popup/floorplan/choose-floor/longNarrow.json +0 -0
  1085. /package/{es → src}/components/toolbar/popup/floorplan/choose-floor/oRectangle.json +0 -0
  1086. /package/{es → src}/components/toolbar/popup/floorplan/choose-floor/rectangle.json +0 -0
  1087. /package/{es → src}/components/toolbar/popup/newproject/styles.css +0 -0
  1088. /package/{es → src}/components/toolbar/popup/product/style.css +0 -0
  1089. /package/{es → src}/components/toolbar/popup/savedesign/savedesign.style.css +0 -0
  1090. /package/{es → src}/components/toolbar/popup/submitforquote/styles.css +0 -0
  1091. /package/{es → src}/components/toolbar/popup/submitprompt/styles.css +0 -0
  1092. /package/{es → src}/components/tutorial-view/style.css +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"hole.js","names":["Map","List","fromJS","Layer","Group","IDBroker","NameGenerator","nearestSnap","addLineSegmentSnap","MODE_IDLE","MODE_IDLE_3D","MODE_DRAWING_HOLE","MODE_DRAWING_HOLE_3D","MODE_DRAGGING_HOLE","MODE_DRAGGING_HOLE_3D","GeometryUtils","Hole","_classCallCheck","_createClass","key","value","create","state","layerID","type","lineID","offset","properties","holeX","holeY","holeID","acquireID","hole","catalog","factoryElement","id","url","getIn","line","x","y","setIn","updateIn","holes","push","element","scene","layers","layer","vetName0","vertices","get","vetName1","verticesArray","areas","forEach","data","toJS","i","length","includes","index0","indexOf","index1","updatedState","hasOwnProperty","setJsProperties","select","selectElement","remove","unselect","removeElement","index","findIndex","ID","group","selectToolDrawingHole","sceneComponentType","snapElements","withMutations","_state$getIn","selectedLayer","lines","_vertices$get","x1","y1","_vertices$get2","x2","y2","merge","mode","drawingSupport","selectToolDrawingHole3D","_state$getIn2","_vertices$get3","_vertices$get4","mergeIn","updateDrawingHole","snap","snapMask","SNAP_SEGMENT","_snap$point","point","selectedHole","first","related","_state$getIn3","_state$getIn4","minVertex","maxVertex","width","lineLength","pointsDistance","alpha","absAngleBetweenTwoPoints","cosAlpha","cosWithThreshold","Math","abs","sinAlpha","sinWithThreshold","minLeftVertexHole","maxRightVertexHole","pointPositionOnLineSegment","checkHoleCollide","rotation","findEntry","contains","removed","filter","hl","line_holes","undefined","_this$create","stateH","updateDrawingHole3D","_snap$point2","_state$getIn5","_state$getIn6","_this$create2","reduce","oldReduceState","endCreatingHole","isOpen","openedType","updatePopupOpen","endDrawingHole","unselectAll","popup","endDrawingHole3D","beginDraggingHole","v0","v1","draggingSupport","startPointX","startPointY","beginDraggingHole3D","updateDraggingHole","_state","_snap$point3","atan2","alpha1","angle_temp","PI","cos","sin","set","console","log","updateDraggingHoleChanged","_state2","updateDraggingHoleRulerChanged","_state3","endDraggingHole3D","_ref","size","selectedHoleID","hx","hy","hw","bCollide","some","dx","dy","dw","endDraggingHole","setProperties","updateProperties","v","k","hasIn","updateJsProperties","setAttributes","holesAttributes","hAttr","offsetA","offsetB","misc","_unitA","_unit","_unitB","mergeDeepIn","default"],"sources":["../../src/class/hole.js"],"sourcesContent":["import { Map, List, fromJS } from 'immutable';\r\nimport { Layer, Group } from './export';\r\n\r\nimport { IDBroker, NameGenerator } from '../utils/export';\r\n\r\nimport { nearestSnap, addLineSegmentSnap } from '../utils/snap';\r\n\r\nimport {\r\n MODE_IDLE,\r\n MODE_IDLE_3D,\r\n MODE_DRAWING_HOLE,\r\n MODE_DRAWING_HOLE_3D,\r\n MODE_DRAGGING_HOLE,\r\n MODE_DRAGGING_HOLE_3D\r\n} from '../constants';\r\n\r\nimport { GeometryUtils } from '../utils/export';\r\n\r\nclass Hole {\r\n static create(\r\n state,\r\n layerID,\r\n type,\r\n lineID,\r\n offset,\r\n properties,\r\n holeX,\r\n holeY\r\n ) {\r\n let holeID = IDBroker.acquireID();\r\n let hole = state.catalog.factoryElement(\r\n type,\r\n {\r\n id: holeID,\r\n url: state.catalog.getIn(['elements', type, 'info', 'url']),\r\n type,\r\n offset,\r\n line: lineID,\r\n x: holeX,\r\n y: holeY\r\n },\r\n properties\r\n );\r\n\r\n state = state.setIn(['scene', 'layers', layerID, 'holes', holeID], hole);\r\n state = state.updateIn(\r\n ['scene', 'layers', layerID, 'lines', lineID, 'holes'],\r\n holes => holes.push(holeID)\r\n );\r\n // get vertex order/////\r\n let element = state.scene.layers.getIn([layerID, 'lines', lineID]);\r\n let layer = state.getIn(['scene', 'layers', layerID]);\r\n let vetName0 = element.vertices.get(0);\r\n let vetName1 = element.vertices.get(1);\r\n let verticesArray = [];\r\n layer.areas.forEach(data => {\r\n verticesArray.push(data.vertices.toJS());\r\n });\r\n for (let i = 0; i < verticesArray.length; i++) {\r\n let vertices = verticesArray[i];\r\n if (vertices.includes(vetName0) && vertices.includes(vetName1)) {\r\n let index0 = vertices.indexOf(vetName0);\r\n let index1 = vertices.indexOf(vetName1);\r\n // if vertex order chanege//\r\n if (index1 + 1 == index0) {\r\n return { updatedState: state, hole };\r\n }\r\n if (index0 == 0 && index1 == vertices.length - 1) {\r\n return { updatedState: state, hole };\r\n }\r\n // ////////////////////////\r\n }\r\n }\r\n // ///////////////////////////\r\n properties = hole.properties.toJS();\r\n if (properties.hasOwnProperty('flip_orizzontal')) {\r\n properties['flip_orizzontal'] = true;\r\n }\r\n if (properties.hasOwnProperty('flip_horizontal')) {\r\n properties['flip_horizontal'] = true;\r\n }\r\n state = this.setJsProperties(\r\n state,\r\n layerID,\r\n holeID,\r\n properties\r\n ).updatedState;\r\n return { updatedState: state, hole };\r\n }\r\n\r\n static select(state, layerID, holeID) {\r\n state = Layer.select(state, layerID).updatedState;\r\n state = Layer.selectElement(state, layerID, 'holes', holeID).updatedState;\r\n\r\n return { updatedState: state };\r\n }\r\n\r\n static remove(state, layerID, holeID) {\r\n let hole = state.getIn(['scene', 'layers', layerID, 'holes', holeID]);\r\n state = this.unselect(state, layerID, holeID).updatedState;\r\n state = Layer.removeElement(state, layerID, 'holes', holeID).updatedState;\r\n\r\n state = state.updateIn(\r\n ['scene', 'layers', layerID, 'lines', hole.line, 'holes'],\r\n holes => {\r\n let index = holes.findIndex(ID => holeID === ID);\r\n return index !== -1 ? holes.remove(index) : holes;\r\n }\r\n );\r\n\r\n state\r\n .getIn(['scene', 'groups'])\r\n .forEach(\r\n group =>\r\n (state = Group.removeElement(\r\n state,\r\n group.id,\r\n layerID,\r\n 'holes',\r\n holeID\r\n ).updatedState)\r\n );\r\n\r\n return { updatedState: state };\r\n }\r\n\r\n static unselect(state, layerID, holeID) {\r\n state = Layer.unselect(state, layerID, 'holes', holeID).updatedState;\r\n\r\n return { updatedState: state };\r\n }\r\n\r\n static selectToolDrawingHole(state, sceneComponentType) {\r\n let snapElements = new List().withMutations(snapElements => {\r\n let { lines, vertices } = state.getIn([\r\n 'scene',\r\n 'layers',\r\n state.scene.selectedLayer\r\n ]);\r\n\r\n lines.forEach(line => {\r\n let { x: x1, y: y1 } = vertices.get(line.vertices.get(0));\r\n let { x: x2, y: y2 } = vertices.get(line.vertices.get(1));\r\n addLineSegmentSnap(snapElements, x1, y1, x2, y2, 20, 1, line.id);\r\n });\r\n });\r\n\r\n state = state.merge({\r\n mode: MODE_DRAWING_HOLE,\r\n snapElements,\r\n drawingSupport: Map({\r\n type: sceneComponentType\r\n })\r\n });\r\n\r\n return { updatedState: state };\r\n }\r\n\r\n static selectToolDrawingHole3D(state, sceneComponentType) {\r\n let snapElements = new List().withMutations(snapElements => {\r\n let { lines, vertices } = state.getIn([\r\n 'scene',\r\n 'layers',\r\n state.scene.selectedLayer\r\n ]);\r\n\r\n lines.forEach(line => {\r\n let { x: x1, y: y1 } = vertices.get(line.vertices.get(0));\r\n let { x: x2, y: y2 } = vertices.get(line.vertices.get(1));\r\n addLineSegmentSnap(snapElements, x1, y1, x2, y2, 20, 1, line.id);\r\n });\r\n });\r\n\r\n state = state.merge({\r\n mode: MODE_DRAWING_HOLE_3D,\r\n snapElements,\r\n drawingSupport: Map({\r\n type: sceneComponentType\r\n })\r\n });\r\n state = state.mergeIn(['scene', 'loadFlag'], false);\r\n\r\n return { updatedState: state };\r\n }\r\n\r\n static updateDrawingHole(state, layerID, x, y) {\r\n let catalog = state.catalog;\r\n //calculate snap and overwrite coords if needed\r\n //force snap to segment\r\n let snap = nearestSnap(\r\n state.snapElements,\r\n x,\r\n y,\r\n state.snapMask.merge({ SNAP_SEGMENT: true })\r\n );\r\n if (snap) ({ x, y } = snap.point);\r\n\r\n let selectedHole = state\r\n .getIn(['scene', 'layers', layerID, 'selected', 'holes'])\r\n .first();\r\n\r\n if (snap) {\r\n let lineID = snap.snap.related.get(0);\r\n let vertices = state.getIn([\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'lines',\r\n lineID,\r\n 'vertices'\r\n ]);\r\n let { x: x1, y: y1 } = state.getIn([\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'vertices',\r\n vertices.get(0)\r\n ]);\r\n let { x: x2, y: y2 } = state.getIn([\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'vertices',\r\n vertices.get(1)\r\n ]);\r\n\r\n // // I need min and max vertices on this line segment\r\n let minVertex = GeometryUtils.minVertex(\r\n { x: x1, y: y1 },\r\n { x: x2, y: y2 }\r\n );\r\n let maxVertex = GeometryUtils.maxVertex(\r\n { x: x1, y: y1 },\r\n { x: x2, y: y2 }\r\n );\r\n\r\n let width = catalog\r\n .factoryElement(state.drawingSupport.get('type'))\r\n .properties.getIn(['width', 'length']);\r\n\r\n // // Now I need min and max possible coordinates for the hole on the line. They depend on the width of the hole\r\n let lineLength = GeometryUtils.pointsDistance(x1, y1, x2, y2);\r\n let alpha = GeometryUtils.absAngleBetweenTwoPoints(x1, y1, x2, y2);\r\n let cosAlpha = GeometryUtils.cosWithThreshold(Math.abs(alpha), 0.0000001);\r\n let sinAlpha = GeometryUtils.sinWithThreshold(Math.abs(alpha), 0.0000001);\r\n let minLeftVertexHole = {\r\n x:\r\n minVertex.x +\r\n ((state.mode.includes('ING_HOLE') ? width + 1 : width) / 2) *\r\n cosAlpha,\r\n y:\r\n minVertex.y +\r\n ((state.mode.includes('ING_HOLE') ? width + 1 : width) / 2) * sinAlpha\r\n };\r\n\r\n let maxRightVertexHole = {\r\n x:\r\n minVertex.x +\r\n lineLength * cosAlpha -\r\n ((state.mode.includes('ING_HOLE') ? width + 1 : width) / 2) *\r\n cosAlpha,\r\n y:\r\n minVertex.y +\r\n lineLength * sinAlpha -\r\n ((state.mode.includes('ING_HOLE') ? width + 1 : width) / 2) * sinAlpha\r\n };\r\n\r\n let offset;\r\n if (x < minLeftVertexHole.x) {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n minVertex.x,\r\n minVertex.y,\r\n maxVertex.x,\r\n maxVertex.y,\r\n minLeftVertexHole.x,\r\n minLeftVertexHole.y\r\n );\r\n offset = minVertex.x === x1 && minVertex.y === y1 ? offset : 1 - offset;\r\n } else {\r\n if (x > maxRightVertexHole.x) {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n minVertex.x,\r\n minVertex.y,\r\n maxVertex.x,\r\n maxVertex.y,\r\n maxRightVertexHole.x,\r\n maxRightVertexHole.y\r\n );\r\n offset =\r\n minVertex.x === x1 && minVertex.y === y1 ? offset : 1 - offset;\r\n } else if (x === minLeftVertexHole.x && x === maxRightVertexHole.x) {\r\n if (y < minLeftVertexHole.y) {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n minVertex.x,\r\n minVertex.y,\r\n maxVertex.x,\r\n maxVertex.y,\r\n minLeftVertexHole.x,\r\n minLeftVertexHole.y\r\n );\r\n offset =\r\n minVertex.x === x1 && minVertex.y === y1 ? offset : 1 - offset;\r\n } else if (y > maxRightVertexHole.y) {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n minVertex.x,\r\n minVertex.y,\r\n maxVertex.x,\r\n maxVertex.y,\r\n maxRightVertexHole.x,\r\n maxRightVertexHole.y\r\n );\r\n offset =\r\n minVertex.x === x1 && minVertex.y === y1 ? offset : 1 - offset;\r\n } else {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n x1,\r\n y1,\r\n x2,\r\n y2,\r\n x,\r\n y\r\n );\r\n }\r\n } else {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n x1,\r\n y1,\r\n x2,\r\n y2,\r\n x,\r\n y\r\n );\r\n // offset =\r\n // minVertex.x === x1 && minVertex.y === y1 ? offset : 1 - offset;\r\n }\r\n }\r\n\r\n if (\r\n this.checkHoleCollide(\r\n state.getIn(['scene', 'layers', layerID]),\r\n lineID,\r\n selectedHole,\r\n x,\r\n y,\r\n width\r\n )\r\n ) {\r\n return { updatedState: state };\r\n }\r\n\r\n //if hole does exist, update\r\n if (state.getIn(['drawingSupport', 'currentID'])) {\r\n let hole = state.getIn([\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'holes',\r\n state.getIn(['drawingSupport', 'currentID'])\r\n ]);\r\n hole = hole.merge({\r\n offset: offset,\r\n line: lineID,\r\n x: x,\r\n y: y,\r\n rotation: alpha\r\n });\r\n state = state.mergeIn(\r\n [\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'holes',\r\n state.getIn(['drawingSupport', 'currentID'])\r\n ],\r\n hole\r\n );\r\n //remove from old line ( if present )\r\n let index = state\r\n .getIn(['scene', 'layers', layerID, 'lines'])\r\n .findEntry(line => {\r\n return (\r\n line.id !== lineID &&\r\n line\r\n .get('holes')\r\n .contains(state.getIn(['drawingSupport', 'currentID']))\r\n );\r\n });\r\n\r\n if (index) {\r\n let removed = index[1]\r\n .get('holes')\r\n .filter(hl => hl !== state.getIn(['drawingSupport', 'currentID']));\r\n state = state.setIn(\r\n ['scene', 'layers', layerID, 'lines', index[0], 'holes'],\r\n removed\r\n );\r\n }\r\n\r\n // //add to line\r\n let line_holes = state.getIn([\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'lines',\r\n lineID,\r\n 'holes'\r\n ]);\r\n if (\r\n !line_holes.contains(state.getIn(['drawingSupport', 'currentID']))\r\n ) {\r\n state = state.setIn(\r\n ['scene', 'layers', layerID, 'lines', lineID, 'holes'],\r\n line_holes.push(state.getIn(['drawingSupport', 'currentID']))\r\n );\r\n }\r\n // get vertex order/////\r\n let element = state.scene.layers.getIn([layerID, 'lines', lineID]);\r\n\r\n let layer = state.getIn(['scene', 'layers', layerID]);\r\n let vetName0 = element.vertices.get(0);\r\n let vetName1 = element.vertices.get(1);\r\n let verticesArray = [];\r\n layer.areas.forEach(data => {\r\n verticesArray.push(data.vertices.toJS());\r\n });\r\n for (let i = 0; i < verticesArray.length; i++) {\r\n let vertices = verticesArray[i];\r\n if (vertices.includes(vetName0) && vertices.includes(vetName1)) {\r\n let index0 = vertices.indexOf(vetName0);\r\n let index1 = vertices.indexOf(vetName1);\r\n // if vertex order chanege//\r\n if (index1 + 1 == index0) {\r\n if (hole != undefined) {\r\n let properties = hole.properties.toJS();\r\n if (properties.hasOwnProperty('flip_orizzontal')) {\r\n properties['flip_orizzontal'] = false;\r\n }\r\n if (properties.hasOwnProperty('flip_horizontal')) {\r\n properties['flip_horizontal'] = false;\r\n }\r\n state = this.setJsProperties(\r\n state,\r\n layerID,\r\n state.getIn(['drawingSupport', 'currentID']),\r\n properties\r\n ).updatedState;\r\n }\r\n return { updatedState: state };\r\n }\r\n if (index0 == 0 && index1 == vertices.length - 1) {\r\n if (hole != undefined) {\r\n let properties = hole.properties.toJS();\r\n if (properties.hasOwnProperty('flip_orizzontal')) {\r\n properties['flip_orizzontal'] = false;\r\n }\r\n if (properties.hasOwnProperty('flip_horizontal')) {\r\n properties['flip_horizontal'] = false;\r\n }\r\n state = this.setJsProperties(\r\n state,\r\n layerID,\r\n state.getIn(['drawingSupport', 'currentID']),\r\n properties\r\n ).updatedState;\r\n }\r\n return { updatedState: state };\r\n }\r\n // ////////////////////////\r\n }\r\n }\r\n // ///////////////////////////\r\n if (hole != undefined) {\r\n let properties = hole.properties.toJS();\r\n if (properties.hasOwnProperty('flip_orizzontal')) {\r\n properties['flip_orizzontal'] = true;\r\n }\r\n if (properties.hasOwnProperty('flip_horizontal')) {\r\n properties['flip_horizontal'] = true;\r\n }\r\n\r\n state = this.setJsProperties(\r\n state,\r\n layerID,\r\n state.getIn(['drawingSupport', 'currentID']),\r\n properties\r\n ).updatedState;\r\n }\r\n } else {\r\n //if hole does not exist, create\r\n let { updatedState: stateH, hole } = this.create(\r\n state,\r\n layerID,\r\n state.drawingSupport.get('type'),\r\n lineID,\r\n offset\r\n );\r\n state = Hole.select(stateH, layerID, hole.id).updatedState;\r\n state = state.setIn(['drawingSupport', 'currentID'], hole.id);\r\n }\r\n }\r\n //i've lost the snap while trying to drop the hole\r\n else if (false && selectedHole) {\r\n //think if enable\r\n state = Hole.remove(state, layerID, selectedHole).updatedState;\r\n }\r\n\r\n return { updatedState: state };\r\n }\r\n\r\n static updateDrawingHole3D(state, layerID, x, y) {\r\n let catalog = state.catalog;\r\n //calculate snap and overwrite coords if needed\r\n //force snap to segment\r\n let snap = nearestSnap(\r\n state.snapElements,\r\n x,\r\n y,\r\n state.snapMask.merge({ SNAP_SEGMENT: true })\r\n );\r\n if (snap) ({ x, y } = snap.point);\r\n\r\n let selectedHole = state\r\n .getIn(['scene', 'layers', layerID, 'selected', 'holes'])\r\n .first();\r\n\r\n if (snap) {\r\n let lineID = snap.snap.related.get(0);\r\n let vertices = state.getIn([\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'lines',\r\n lineID,\r\n 'vertices'\r\n ]);\r\n let { x: x1, y: y1 } = state.getIn([\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'vertices',\r\n vertices.get(0)\r\n ]);\r\n let { x: x2, y: y2 } = state.getIn([\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'vertices',\r\n vertices.get(1)\r\n ]);\r\n\r\n // // I need min and max vertices on this line segment\r\n let minVertex = GeometryUtils.minVertex(\r\n { x: x1, y: y1 },\r\n { x: x2, y: y2 }\r\n );\r\n let maxVertex = GeometryUtils.maxVertex(\r\n { x: x1, y: y1 },\r\n { x: x2, y: y2 }\r\n );\r\n\r\n let width = catalog\r\n .factoryElement(state.drawingSupport.get('type'))\r\n .properties.getIn(['width', 'length']);\r\n\r\n // // Now I need min and max possible coordinates for the hole on the line. They depend on the width of the hole\r\n let lineLength = GeometryUtils.pointsDistance(x1, y1, x2, y2);\r\n let alpha = GeometryUtils.absAngleBetweenTwoPoints(x1, y1, x2, y2);\r\n let cosAlpha = GeometryUtils.cosWithThreshold(Math.abs(alpha), 0.0000001);\r\n let sinAlpha = GeometryUtils.sinWithThreshold(Math.abs(alpha), 0.0000001);\r\n let minLeftVertexHole = {\r\n x:\r\n minVertex.x +\r\n ((state.mode.includes('ING_HOLE_3D') ? width + 1 : width) / 2) *\r\n cosAlpha,\r\n y:\r\n minVertex.y +\r\n ((state.mode.includes('ING_HOLE_3D') ? width + 1 : width) / 2) *\r\n sinAlpha\r\n };\r\n\r\n let maxRightVertexHole = {\r\n x:\r\n minVertex.x +\r\n lineLength * cosAlpha -\r\n ((state.mode.includes('ING_HOLE_3D') ? width + 1 : width) / 2) *\r\n cosAlpha,\r\n y:\r\n minVertex.y +\r\n lineLength * sinAlpha -\r\n ((state.mode.includes('ING_HOLE_3D') ? width + 1 : width) / 2) *\r\n sinAlpha\r\n };\r\n\r\n let offset;\r\n if (x < minLeftVertexHole.x) {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n minVertex.x,\r\n minVertex.y,\r\n maxVertex.x,\r\n maxVertex.y,\r\n minLeftVertexHole.x,\r\n minLeftVertexHole.y\r\n );\r\n } else if (x > maxRightVertexHole.x) {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n minVertex.x,\r\n minVertex.y,\r\n maxVertex.x,\r\n maxVertex.y,\r\n maxRightVertexHole.x,\r\n maxRightVertexHole.y\r\n );\r\n } else {\r\n if (x === minLeftVertexHole.x && x === maxRightVertexHole.x) {\r\n if (y < minLeftVertexHole.y) {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n minVertex.x,\r\n minVertex.y,\r\n maxVertex.x,\r\n maxVertex.y,\r\n minLeftVertexHole.x,\r\n minLeftVertexHole.y\r\n );\r\n /*\r\n offset =\r\n minVertex.x === x1 && minVertex.y === y1 ? offset : 1 - offset;\r\n */\r\n } else if (y > maxRightVertexHole.y) {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n minVertex.x,\r\n minVertex.y,\r\n maxVertex.x,\r\n maxVertex.y,\r\n maxRightVertexHole.x,\r\n maxRightVertexHole.y\r\n );\r\n /*\r\n offset =\r\n minVertex.x === x1 && minVertex.y === y1 ? offset : 1 - offset;\r\n */\r\n } else {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n x1,\r\n y1,\r\n x2,\r\n y2,\r\n x,\r\n y\r\n );\r\n }\r\n } else {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n x1,\r\n y1,\r\n x2,\r\n y2,\r\n x,\r\n y\r\n );\r\n }\r\n }\r\n\r\n if (\r\n this.checkHoleCollide(\r\n state.getIn(['scene', 'layers', layerID]),\r\n lineID,\r\n selectedHole,\r\n x,\r\n y,\r\n width\r\n )\r\n ) {\r\n return { updatedState: state };\r\n }\r\n\r\n //if hole does exist, update\r\n if (state.getIn(['drawingSupport', 'currentID'])) {\r\n let hole = state.getIn([\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'holes',\r\n state.getIn(['drawingSupport', 'currentID'])\r\n ]);\r\n hole = hole.merge({\r\n offset: offset,\r\n line: lineID,\r\n x: x,\r\n y: y,\r\n rotation: alpha\r\n });\r\n state = state.mergeIn(\r\n [\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'holes',\r\n state.getIn(['drawingSupport', 'currentID'])\r\n ],\r\n hole\r\n );\r\n\r\n //remove from old line ( if present )\r\n let index = state\r\n .getIn(['scene', 'layers', layerID, 'lines'])\r\n .findEntry(line => {\r\n return (\r\n line.id !== lineID &&\r\n line\r\n .get('holes')\r\n .contains(state.getIn(['drawingSupport', 'currentID']))\r\n );\r\n });\r\n\r\n if (index && state.mode !== 'MODE_DRAWING_HOLE_3D') {\r\n let removed = index[1]\r\n .get('holes')\r\n .filter(hl => hl !== state.getIn(['drawingSupport', 'currentID']));\r\n state = state.setIn(\r\n ['scene', 'layers', layerID, 'lines', index[0], 'holes'],\r\n removed\r\n );\r\n }\r\n\r\n //add to line\r\n let line_holes = state.getIn([\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'lines',\r\n lineID,\r\n 'holes'\r\n ]);\r\n if (\r\n !line_holes.contains(state.getIn(['drawingSupport', 'currentID'])) &&\r\n state.mode !== 'MODE_DRAWING_HOLE_3D'\r\n ) {\r\n state = state.setIn(\r\n ['scene', 'layers', layerID, 'lines', lineID, 'holes'],\r\n line_holes.push(state.getIn(['drawingSupport', 'currentID']))\r\n );\r\n }\r\n\r\n // get vertex order/////\r\n let element = state.scene.layers.getIn([layerID, 'lines', lineID]);\r\n\r\n let layer = state.getIn(['scene', 'layers', layerID]);\r\n let vetName0 = element.vertices.get(0);\r\n let vetName1 = element.vertices.get(1);\r\n let verticesArray = [];\r\n layer.areas.forEach(data => {\r\n verticesArray.push(data.vertices.toJS());\r\n });\r\n for (let i = 0; i < verticesArray.length; i++) {\r\n let vertices = verticesArray[i];\r\n if (vertices.includes(vetName0) && vertices.includes(vetName1)) {\r\n let index0 = vertices.indexOf(vetName0);\r\n let index1 = vertices.indexOf(vetName1);\r\n // if vertex order chanege//\r\n if (index1 + 1 == index0) {\r\n if (hole != undefined) {\r\n let properties = hole.properties.toJS();\r\n if (properties.hasOwnProperty('flip_orizzontal')) {\r\n properties['flip_orizzontal'] = false;\r\n }\r\n if (properties.hasOwnProperty('flip_horizontal')) {\r\n properties['flip_horizontal'] = false;\r\n }\r\n state = this.setJsProperties(\r\n state,\r\n layerID,\r\n state.getIn(['drawingSupport', 'currentID']),\r\n properties\r\n ).updatedState;\r\n if (state.mode === 'MODE_DRAWING_HOLE_3D') {\r\n state = state.setIn(\r\n [\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'holes',\r\n state.getIn(['drawingSupport', 'currentID']),\r\n 'visible'\r\n ],\r\n false\r\n );\r\n } else {\r\n state = state.setIn(\r\n [\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'holes',\r\n state.getIn(['drawingSupport', 'currentID']),\r\n 'visible'\r\n ],\r\n true\r\n );\r\n }\r\n }\r\n return { updatedState: state };\r\n }\r\n if (index0 == 0 && index1 == vertices.length - 1) {\r\n if (hole != undefined) {\r\n let properties = hole.properties.toJS();\r\n if (properties.hasOwnProperty('flip_orizzontal')) {\r\n properties['flip_orizzontal'] = false;\r\n }\r\n if (properties.hasOwnProperty('flip_horizontal')) {\r\n properties['flip_horizontal'] = false;\r\n }\r\n state = this.setJsProperties(\r\n state,\r\n layerID,\r\n state.getIn(['drawingSupport', 'currentID']),\r\n properties\r\n ).updatedState;\r\n if (state.mode === 'MODE_DRAWING_HOLE_3D') {\r\n state = state.setIn(\r\n [\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'holes',\r\n state.getIn(['drawingSupport', 'currentID']),\r\n 'visible'\r\n ],\r\n false\r\n );\r\n } else {\r\n state = state.setIn(\r\n [\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'holes',\r\n state.getIn(['drawingSupport', 'currentID']),\r\n 'visible'\r\n ],\r\n true\r\n );\r\n }\r\n }\r\n return { updatedState: state };\r\n }\r\n // ////////////////////////\r\n }\r\n }\r\n // ///////////////////////////\r\n if (hole != undefined) {\r\n let properties = hole.properties.toJS();\r\n if (properties.hasOwnProperty('flip_orizzontal')) {\r\n properties['flip_orizzontal'] = true;\r\n }\r\n if (properties.hasOwnProperty('flip_horizontal')) {\r\n properties['flip_horizontal'] = true;\r\n }\r\n\r\n state = this.setJsProperties(\r\n state,\r\n layerID,\r\n state.getIn(['drawingSupport', 'currentID']),\r\n properties\r\n ).updatedState;\r\n if (state.mode === 'MODE_DRAWING_HOLE_3D') {\r\n state = state.setIn(\r\n [\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'holes',\r\n state.getIn(['drawingSupport', 'currentID']),\r\n 'visible'\r\n ],\r\n false\r\n );\r\n } else {\r\n state = state.setIn(\r\n [\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'holes',\r\n state.getIn(['drawingSupport', 'currentID']),\r\n 'visible'\r\n ],\r\n true\r\n );\r\n }\r\n }\r\n } else {\r\n //if hole does not exist, create\r\n let { updatedState: stateH, hole } = this.create(\r\n state,\r\n layerID,\r\n state.drawingSupport.get('type'),\r\n lineID,\r\n offset\r\n );\r\n state = Hole.select(stateH, layerID, hole.id).updatedState;\r\n state = state.setIn(['drawingSupport', 'currentID'], hole.id);\r\n }\r\n }\r\n if (state.mode !== 'MODE_DRAWING_HOLE_3D') {\r\n state = state\r\n .getIn(['scene', 'layers', layerID, 'holes'])\r\n .reduce((oldReduceState, element) => {\r\n oldReduceState = oldReduceState.setIn(\r\n ['scene', 'layers', layerID, 'holes', element.id, 'visible'],\r\n true\r\n );\r\n return oldReduceState;\r\n }, state);\r\n }\r\n return { updatedState: state };\r\n }\r\n\r\n static endCreatingHole(state) {\r\n state = state.merge({\r\n isOpen: false,\r\n openedType: 0\r\n });\r\n return { updatedState: state };\r\n }\r\n static updatePopupOpen(state, value) {\r\n state = state.merge({\r\n openedType: value\r\n });\r\n return { updatedState: state };\r\n }\r\n\r\n static endDrawingHole(state, layerID, x, y) {\r\n state = this.updateDrawingHole(state, layerID, x, y).updatedState;\r\n state = Layer.unselectAll(state, layerID).updatedState;\r\n let popup = state.get('popup');\r\n state = state.merge({\r\n drawingSupport: Map({\r\n type: state.drawingSupport.get('type')\r\n }),\r\n isOpen: !popup,\r\n mode: MODE_IDLE\r\n });\r\n state = Layer.unselectAll(state, layerID).updatedState;\r\n return { updatedState: state };\r\n }\r\n\r\n static endDrawingHole3D(state, layerID, x, y) {\r\n state = state.merge({\r\n mode: MODE_IDLE_3D\r\n });\r\n state = this.updateDrawingHole3D(state, layerID, x, y).updatedState;\r\n state = Layer.unselectAll(state, layerID).updatedState;\r\n let popup = state.get('popup');\r\n state = state.merge({\r\n drawingSupport: Map({\r\n type: state.drawingSupport.get('type')\r\n }),\r\n isOpen: !popup,\r\n mode: MODE_IDLE_3D\r\n });\r\n return { updatedState: state };\r\n }\r\n\r\n static beginDraggingHole(state, layerID, holeID, x, y) {\r\n let layer = state.getIn(['scene', 'layers', layerID]);\r\n let hole = layer.getIn(['holes', holeID]);\r\n let line = layer.getIn(['lines', hole.line]);\r\n let v0 = layer.getIn(['vertices', line.vertices.get(0)]);\r\n let v1 = layer.getIn(['vertices', line.vertices.get(1)]);\r\n\r\n let snapElements = addLineSegmentSnap(\r\n List(),\r\n v0.x,\r\n v0.y,\r\n v1.x,\r\n v1.y,\r\n 9999999,\r\n 1,\r\n null\r\n );\r\n\r\n state = state.merge({\r\n mode: MODE_DRAGGING_HOLE,\r\n snapElements,\r\n draggingSupport: Map({\r\n layerID,\r\n holeID,\r\n startPointX: x,\r\n startPointY: y\r\n })\r\n });\r\n\r\n return { updatedState: state };\r\n }\r\n\r\n static beginDraggingHole3D(state, layerID, holeID, x, y) {\r\n let layer = state.getIn(['scene', 'layers', layerID]);\r\n let hole = layer.getIn(['holes', holeID]);\r\n let line = layer.getIn(['lines', hole.line]);\r\n let v0 = layer.getIn(['vertices', line.vertices.get(0)]);\r\n let v1 = layer.getIn(['vertices', line.vertices.get(1)]);\r\n\r\n let snapElements = addLineSegmentSnap(\r\n List(),\r\n v0.x,\r\n v0.y,\r\n v1.x,\r\n v1.y,\r\n 9999999,\r\n 1,\r\n null\r\n );\r\n\r\n state = state.updateIn(\r\n ['scene', 'layers', layerID, 'lines', hole.line, 'holes'],\r\n holes => {\r\n let index = holes.findIndex(ID => holeID === ID);\r\n return index !== -1 ? holes.remove(index) : holes;\r\n }\r\n );\r\n\r\n state = state.merge({\r\n mode: MODE_DRAGGING_HOLE_3D,\r\n snapElements,\r\n draggingSupport: Map({\r\n layerID,\r\n holeID,\r\n startPointX: x,\r\n startPointY: y\r\n })\r\n });\r\n\r\n return { updatedState: state };\r\n }\r\n\r\n static updateDraggingHole(state, x, y) {\r\n //calculate snap and overwrite coords if needed\r\n //force snap to segment\r\n let snap = nearestSnap(\r\n state.snapElements,\r\n x,\r\n y,\r\n state.snapMask.merge({ SNAP_SEGMENT: true })\r\n );\r\n if (!snap) return state;\r\n\r\n let { draggingSupport, scene } = state;\r\n\r\n let layerID = draggingSupport.get('layerID');\r\n let holeID = draggingSupport.get('holeID');\r\n let startPointX = draggingSupport.get('startPointX');\r\n let startPointY = draggingSupport.get('startPointY');\r\n\r\n let layer = state.getIn(['scene', 'layers', layerID]);\r\n let hole = layer.getIn(['holes', holeID]);\r\n let line = layer.getIn(['lines', hole.line]);\r\n let v0 = layer.getIn(['vertices', line.vertices.get(0)]);\r\n let v1 = layer.getIn(['vertices', line.vertices.get(1)]);\r\n ({ x, y } = snap.point);\r\n\r\n // I need min and max vertices on this line segment\r\n let minVertex = GeometryUtils.minVertex(v0, v1);\r\n let maxVertex = GeometryUtils.maxVertex(v0, v1);\r\n\r\n // Now I need min and max possible coordinates for the hole on the line. They depend on the width of the hole\r\n\r\n let width = hole.properties.get('width').get('length');\r\n let lineLength = GeometryUtils.pointsDistance(v0.x, v0.y, v1.x, v1.y);\r\n let alpha = Math.atan2(v1.y - v0.y, Math.abs(v1.x - v0.x));\r\n let alpha1 = Math.atan2(v1.y - v0.y, v1.x - v0.x);\r\n let angle_temp;\r\n if ((180 * alpha1) / Math.PI < 0) {\r\n angle_temp = (180 * alpha1) / Math.PI + 360;\r\n } else {\r\n angle_temp = (180 * alpha1) / Math.PI;\r\n }\r\n let cosWithThreshold = alpha => {\r\n let cos = Math.cos(Math.abs(alpha));\r\n return cos < 0.0000001 ? 0 : cos;\r\n };\r\n\r\n let sinWithThreshold = alpha => {\r\n let sin = Math.sin(Math.abs(alpha));\r\n return sin < 0.0000001 ? 0 : sin;\r\n };\r\n\r\n let cosAlpha = cosWithThreshold(Math.abs(alpha));\r\n let sinAlpha = sinWithThreshold(Math.abs(alpha));\r\n\r\n let minLeftVertexHole = {\r\n x:\r\n minVertex.x +\r\n ((state.mode.includes('ING_HOLE') ? width + 1 : width) / 2) * cosAlpha,\r\n y:\r\n minVertex.y +\r\n ((state.mode.includes('ING_HOLE') ? width + 1 : width) / 2) * sinAlpha\r\n };\r\n\r\n let maxRightVertexHole = {\r\n x:\r\n minVertex.x +\r\n lineLength * cosAlpha -\r\n ((state.mode.includes('ING_HOLE') ? width + 1 : width) / 2) * cosAlpha,\r\n y:\r\n minVertex.y +\r\n lineLength * sinAlpha -\r\n ((state.mode.includes('ING_HOLE') ? width + 1 : width) / 2) * sinAlpha\r\n };\r\n // Now I need to verify if the snap vertex (with coordinates x and y) is on the line segment\r\n\r\n let offset;\r\n\r\n if (x < minLeftVertexHole.x) {\r\n // Snap point is previous the the line\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n minVertex.x,\r\n minVertex.y,\r\n maxVertex.x,\r\n maxVertex.y,\r\n minLeftVertexHole.x,\r\n minLeftVertexHole.y\r\n );\r\n offset = minVertex === v0 ? offset : 1 - offset;\r\n } else {\r\n // Snap point is after the line or on the line\r\n if (x > maxRightVertexHole.x) {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n minVertex.x,\r\n minVertex.y,\r\n maxVertex.x,\r\n maxVertex.y,\r\n maxRightVertexHole.x,\r\n maxRightVertexHole.y\r\n );\r\n offset = minVertex === v0 ? offset : 1 - offset;\r\n } else if (x === minLeftVertexHole.x && x === maxRightVertexHole.x) {\r\n // I am on a vertical line, I need to check y coordinates\r\n if (y < minLeftVertexHole.y) {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n minVertex.x,\r\n minVertex.y,\r\n maxVertex.x,\r\n maxVertex.y,\r\n minLeftVertexHole.x,\r\n minLeftVertexHole.y\r\n );\r\n offset = minVertex === v0 ? offset : 1 - offset;\r\n } else if (y > maxRightVertexHole.y) {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n minVertex.x,\r\n minVertex.y,\r\n maxVertex.x,\r\n maxVertex.y,\r\n maxRightVertexHole.x,\r\n maxRightVertexHole.y\r\n );\r\n offset = minVertex === v0 ? offset : 1 - offset;\r\n } else {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n minVertex.x,\r\n minVertex.y,\r\n maxVertex.x,\r\n maxVertex.y,\r\n x,\r\n y\r\n );\r\n offset = minVertex === v0 ? offset : 1 - offset;\r\n }\r\n } else {\r\n offset = GeometryUtils.pointPositionOnLineSegment(\r\n minVertex.x,\r\n minVertex.y,\r\n maxVertex.x,\r\n maxVertex.y,\r\n x,\r\n y\r\n );\r\n if (angle_temp > 90 && angle_temp < 270) {\r\n offset = 1 - offset;\r\n }\r\n }\r\n }\r\n if (this.checkHoleCollide(layer, hole.line, holeID, x, y, width)) {\r\n return { updatedState: state };\r\n }\r\n\r\n hole = hole.set('offset', offset);\r\n hole = hole.merge({\r\n x: x,\r\n y: y,\r\n rotation: alpha\r\n });\r\n state = state.merge({\r\n scene: scene.mergeIn(['layers', layerID, 'holes', holeID], hole)\r\n });\r\n state = state.updateIn(\r\n ['scene', 'layers', layerID, 'lines', hole.line, 'holes'],\r\n holes => {\r\n console.log(holes, 'holes');\r\n let index = holes.findIndex(ID => holeID === ID);\r\n console.log(index, 'index');\r\n return index === -1 ? holes.push(holeID) : holes;\r\n }\r\n );\r\n return { updatedState: state };\r\n }\r\n\r\n static updateDraggingHoleChanged(state, x, y, layerID, holeID) {\r\n let { scene } = state;\r\n\r\n let hole = scene.getIn(['layers', layerID, 'holes', holeID]);\r\n hole = hole.merge({\r\n x: x,\r\n y: y\r\n });\r\n\r\n state = state.merge({\r\n scene: scene.mergeIn(['layers', layerID, 'holes', holeID], hole)\r\n });\r\n\r\n return { updatedState: state };\r\n }\r\n\r\n static updateDraggingHoleRulerChanged(state, width, layerID, holeID) {\r\n let { scene } = state;\r\n state = state.mergeIn(\r\n [\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'holes',\r\n holeID,\r\n 'properties',\r\n 'width',\r\n 'length'\r\n ],\r\n width\r\n );\r\n\r\n return { updatedState: state };\r\n }\r\n\r\n static endDraggingHole3D(state, x, y) {\r\n if (state === undefined) return;\r\n state = this.updateDraggingHole(state, x, y).updatedState;\r\n let { draggingSupport } =\r\n state.draggingSupport !== undefined ? state : null;\r\n if (\r\n draggingSupport &&\r\n draggingSupport.size === 0 &&\r\n draggingSupport === null\r\n )\r\n return { updatedState: state };\r\n let layerID = draggingSupport.get('layerID');\r\n let holeID = draggingSupport.get('holeID');\r\n let layer = state.getIn(['scene', 'layers', layerID]);\r\n let hole = layer.getIn(['holes', holeID]);\r\n state = state.updateIn(\r\n ['scene', 'layers', layerID, 'lines', hole.line, 'holes'],\r\n holes => {\r\n let index = holes.findIndex(ID => holeID === ID);\r\n return index === -1 ? holes.push(holeID) : holes;\r\n }\r\n );\r\n state = state.merge({\r\n mode: MODE_IDLE_3D,\r\n draggingSupport: Map({})\r\n });\r\n\r\n return { updatedState: state };\r\n }\r\n\r\n static checkHoleCollide(layer, lineID, selectedHoleID, hx, hy, hw) {\r\n let line = layer.getIn(['lines', lineID]);\r\n let holes = line.getIn(['holes']);\r\n\r\n let bCollide = holes.some(holeID => {\r\n if (holeID == selectedHoleID) return false;\r\n\r\n let hole = layer.getIn(['holes', holeID]);\r\n let dx = hole.get('x') - hx;\r\n let dy = hole.get('y') - hy;\r\n let dw = (hole.properties.get('width').get('length') + hw) / 2;\r\n if (dx * dx + dy * dy < dw * dw) {\r\n return true;\r\n }\r\n });\r\n\r\n return bCollide;\r\n }\r\n\r\n static endDraggingHole(state, x, y) {\r\n state = this.updateDraggingHole(state, x, y).updatedState;\r\n state = state.merge({ mode: MODE_IDLE });\r\n\r\n return { updatedState: state };\r\n }\r\n\r\n static setProperties(state, layerID, holeID, properties) {\r\n state = state.setIn(\r\n ['scene', 'layers', layerID, 'holes', holeID, 'properties'],\r\n properties\r\n );\r\n\r\n return { updatedState: state };\r\n }\r\n\r\n static setJsProperties(state, layerID, holeID, properties) {\r\n return this.setProperties(state, layerID, holeID, fromJS(properties));\r\n }\r\n\r\n static updateProperties(state, layerID, holeID, properties) {\r\n properties.forEach((v, k) => {\r\n if (\r\n state.hasIn([\r\n 'scene',\r\n 'layers',\r\n layerID,\r\n 'holes',\r\n holeID,\r\n 'properties',\r\n k\r\n ])\r\n )\r\n state = state.mergeIn(\r\n ['scene', 'layers', layerID, 'holes', holeID, 'properties', k],\r\n v\r\n );\r\n });\r\n\r\n return { updatedState: state };\r\n }\r\n\r\n static updateJsProperties(state, layerID, holeID, properties) {\r\n return this.updateProperties(state, layerID, holeID, fromJS(properties));\r\n }\r\n\r\n static setAttributes(state, layerID, holeID, holesAttributes) {\r\n let hAttr = holesAttributes.toJS();\r\n let { offsetA, offsetB, offset } = hAttr;\r\n\r\n delete hAttr['offsetA'];\r\n delete hAttr['offsetB'];\r\n delete hAttr['offset'];\r\n\r\n let misc = new Map({ _unitA: offsetA._unit, _unitB: offsetB._unit });\r\n\r\n state = state\r\n .mergeIn(['scene', 'layers', layerID, 'holes', holeID], fromJS(hAttr))\r\n .mergeDeepIn(\r\n ['scene', 'layers', layerID, 'holes', holeID],\r\n new Map({ offset, misc })\r\n );\r\n\r\n return { updatedState: state };\r\n }\r\n}\r\n\r\nexport { Hole as default };\r\n"],"mappings":"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","ignoreList":[]}