kitchen-simulator 5.0.0-test.8 → 5.0.1-react.18

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 (723) hide show
  1. package/README.md +24 -1
  2. package/es/@history.js +2 -0
  3. package/es/AppContext.js +3 -0
  4. package/es/LiteKitchenConfigurator.js +494 -0
  5. package/es/LiteRenderer.js +360 -0
  6. package/es/WorkSpace.js +854 -0
  7. package/{src → es}/actions/area-actions.js +14 -15
  8. package/es/actions/export.js +23 -0
  9. package/{src → es}/actions/groups-actions.js +89 -102
  10. package/{src → es}/actions/holes-actions.js +119 -152
  11. package/{src → es}/actions/items-actions.js +316 -393
  12. package/{src → es}/actions/lines-actions.js +83 -103
  13. package/{src → es}/actions/project-actions.js +297 -391
  14. package/{src → es}/actions/scene-actions.js +33 -44
  15. package/{src → es}/actions/vertices-actions.js +27 -34
  16. package/{src → es}/actions/viewer2d-actions.js +58 -79
  17. package/{src → es}/actions/viewer3d-actions.js +23 -32
  18. package/es/assets/brown_photostudio_02_1k.hdr +0 -0
  19. package/es/assets/fonts/Rene Bieder Milliard Black Italic.woff +0 -0
  20. package/es/assets/fonts/Rene Bieder Milliard Black.woff +0 -0
  21. package/es/assets/fonts/Rene Bieder Milliard Bold Italic.woff +0 -0
  22. package/es/assets/fonts/Rene Bieder Milliard Bold.woff +0 -0
  23. package/es/assets/fonts/Rene Bieder Milliard Book Italic.woff +0 -0
  24. package/es/assets/fonts/Rene Bieder Milliard Book.woff +0 -0
  25. package/es/assets/fonts/Rene Bieder Milliard ExtraBold Italic.woff +0 -0
  26. package/es/assets/fonts/Rene Bieder Milliard ExtraBold.woff +0 -0
  27. package/es/assets/fonts/Rene Bieder Milliard ExtraLight Italic.woff +0 -0
  28. package/es/assets/fonts/Rene Bieder Milliard ExtraLight.woff +0 -0
  29. package/es/assets/fonts/Rene Bieder Milliard Hairline Italic.woff +0 -0
  30. package/es/assets/fonts/Rene Bieder Milliard Hairline.woff +0 -0
  31. package/es/assets/fonts/Rene Bieder Milliard Heavy Italic.woff +0 -0
  32. package/es/assets/fonts/Rene Bieder Milliard Heavy.woff +0 -0
  33. package/es/assets/fonts/Rene Bieder Milliard Light Italic.woff +0 -0
  34. package/es/assets/fonts/Rene Bieder Milliard Light.woff +0 -0
  35. package/es/assets/fonts/Rene Bieder Milliard Medium Italic.woff +0 -0
  36. package/es/assets/fonts/Rene Bieder Milliard Medium.woff +0 -0
  37. package/es/assets/fonts/Rene Bieder Milliard SemiBold Italic.woff +0 -0
  38. package/es/assets/fonts/Rene Bieder Milliard SemiBold.woff +0 -0
  39. package/es/assets/fonts/Rene Bieder Milliard Thin Italic.woff +0 -0
  40. package/es/assets/fonts/Rene Bieder Milliard Thin.woff +0 -0
  41. package/es/assets/fonts/style.css +177 -0
  42. package/es/assets/gltf/door_closet.bin +0 -0
  43. package/es/assets/gltf/door_closet.fbx +0 -0
  44. package/es/assets/gltf/door_closet.gltf +1 -0
  45. package/es/assets/gltf/door_exterior.bin +0 -0
  46. package/es/assets/gltf/door_exterior.fbx +0 -0
  47. package/es/assets/gltf/door_exterior.gltf +1 -0
  48. package/es/assets/gltf/door_interior.bin +0 -0
  49. package/es/assets/gltf/door_interior.fbx +0 -0
  50. package/es/assets/gltf/door_interior.gltf +1 -0
  51. package/es/assets/gltf/door_sliding.bin +0 -0
  52. package/es/assets/gltf/door_sliding.fbx +0 -0
  53. package/es/assets/gltf/door_sliding.gltf +1 -0
  54. package/es/assets/gltf/doorway_framed.bin +0 -0
  55. package/es/assets/gltf/doorway_framed.fbx +0 -0
  56. package/es/assets/gltf/doorway_framed.gltf +1 -0
  57. package/es/assets/gltf/window_clear.bin +0 -0
  58. package/es/assets/gltf/window_clear.fbx +0 -0
  59. package/es/assets/gltf/window_clear.gltf +1 -0
  60. package/es/assets/gltf/window_cross.bin +0 -0
  61. package/es/assets/gltf/window_cross.fbx +0 -0
  62. package/es/assets/gltf/window_cross.gltf +1 -0
  63. package/es/assets/gltf/window_double_hung.bin +0 -0
  64. package/es/assets/gltf/window_double_hung.fbx +0 -0
  65. package/es/assets/gltf/window_double_hung.gltf +1 -0
  66. package/es/assets/gltf/window_vertical.bin +0 -0
  67. package/es/assets/gltf/window_vertical.fbx +0 -0
  68. package/es/assets/gltf/window_vertical.gltf +1 -0
  69. package/es/assets/img/TKC_thumbnail.png +0 -0
  70. package/es/assets/img/Toggle.png +0 -0
  71. package/es/assets/img/loading/loading.gif +0 -0
  72. package/es/assets/img/loading/loading_1.svg +11 -0
  73. package/es/assets/img/loading_large.gif +0 -0
  74. package/es/assets/img/png/door/closet.png +0 -0
  75. package/es/assets/img/png/door/doorwaysframed.png +0 -0
  76. package/es/assets/img/png/door/doorwaysframeles.png +0 -0
  77. package/es/assets/img/png/door/doorwaysframeless.png +0 -0
  78. package/es/assets/img/png/door/exterior.png +0 -0
  79. package/es/assets/img/png/door/interior.png +0 -0
  80. package/es/assets/img/png/door/sliding.png +0 -0
  81. package/es/assets/img/png/helper/outcome.png +0 -0
  82. package/es/assets/img/png/helper/video_preview_3d.png +0 -0
  83. package/es/assets/img/png/helper/video_preview_start.png +0 -0
  84. package/es/assets/img/project_img.png +0 -0
  85. package/es/assets/img/rta/rta_logo_box_blue.jpg +0 -0
  86. package/es/assets/img/rta/rta_logo_box_blue_ico.jpg +0 -0
  87. package/es/assets/img/rta/rta_logo_box_blue_ico.svg +55 -0
  88. package/es/assets/img/rta/rta_logo_box_darkGray.jpg +0 -0
  89. package/es/assets/img/rta/rta_logo_box_lightblue.png +0 -0
  90. package/es/assets/img/rta/rta_logo_box_lightmaroon.png +0 -0
  91. package/es/assets/img/rta/rta_logo_box_maroon.png +0 -0
  92. package/es/assets/img/rta/rta_logo_box_white.png +0 -0
  93. package/es/assets/img/rta_menu.png +0 -0
  94. package/es/assets/img/step2.jpg +0 -0
  95. package/es/assets/img/step3.jpg +0 -0
  96. package/es/assets/img/step4.jpg +0 -0
  97. package/es/assets/img/step5.jpg +0 -0
  98. package/es/assets/img/step6.jpg +0 -0
  99. package/es/assets/img/step7.jpg +0 -0
  100. package/es/assets/img/step8.jpg +0 -0
  101. package/es/assets/img/svg/2d_delete_object.svg +33 -0
  102. package/es/assets/img/svg/2d_delete_object1.svg +33 -0
  103. package/es/assets/img/svg/2d_lock_object.svg +33 -0
  104. package/es/assets/img/svg/3d_item_move.svg +106 -0
  105. package/es/assets/img/svg/3d_item_rotation.svg +76 -0
  106. package/es/assets/img/svg/3d_item_warning_edit.svg +77 -0
  107. package/es/assets/img/svg/3d_item_warning_info.svg +81 -0
  108. package/es/assets/img/svg/accessories.svg +4 -0
  109. package/es/assets/img/svg/angle_icon.svg +39 -0
  110. package/es/assets/img/svg/blank_div.svg +14 -0
  111. package/es/assets/img/svg/bottombar/2d3d_button.svg +3 -0
  112. package/es/assets/img/svg/bottombar/2d3d_button_active.svg +3 -0
  113. package/es/assets/img/svg/bottombar/2d3d_toggle.svg +4 -0
  114. package/es/assets/img/svg/bottombar/2d3d_toggle_active.svg +4 -0
  115. package/es/assets/img/svg/bottombar/arrow-down.svg +3 -0
  116. package/es/assets/img/svg/bottombar/arrow-left.svg +3 -0
  117. package/es/assets/img/svg/bottombar/arrow-minus.svg +3 -0
  118. package/es/assets/img/svg/bottombar/arrow-plus.svg +11 -0
  119. package/es/assets/img/svg/bottombar/arrow-right.svg +3 -0
  120. package/es/assets/img/svg/bottombar/arrow-up.svg +3 -0
  121. package/es/assets/img/svg/bottombar/collapse.svg +3 -0
  122. package/es/assets/img/svg/bottombar/elevation-back.svg +6 -0
  123. package/es/assets/img/svg/bottombar/elevation-front.svg +6 -0
  124. package/es/assets/img/svg/bottombar/elevation-left.svg +6 -0
  125. package/es/assets/img/svg/bottombar/elevation-right.svg +7 -0
  126. package/es/assets/img/svg/bottombar/elevation.svg +13 -0
  127. package/es/assets/img/svg/bottombar/expand.svg +3 -0
  128. package/es/assets/img/svg/bottombar/help.svg +72 -0
  129. package/es/assets/img/svg/bottombar/incm_toggle.svg +39 -0
  130. package/es/assets/img/svg/bottombar/pan_1.svg +57 -0
  131. package/es/assets/img/svg/bottombar/pan_2.svg +27 -0
  132. package/es/assets/img/svg/bottombar/pan_3.svg +27 -0
  133. package/es/assets/img/svg/bottombar/pan_4.svg +27 -0
  134. package/es/assets/img/svg/bottombar/pan_5.svg +27 -0
  135. package/es/assets/img/svg/bottombar/settings.svg +23 -0
  136. package/es/assets/img/svg/bottombar/spin-down.svg +76 -0
  137. package/es/assets/img/svg/bottombar/spin-left.svg +75 -0
  138. package/es/assets/img/svg/bottombar/spin-right.svg +75 -0
  139. package/es/assets/img/svg/bottombar/spin-up.svg +76 -0
  140. package/es/assets/img/svg/bottombar/spin_1.svg +48 -0
  141. package/es/assets/img/svg/bottombar/spin_2.svg +31 -0
  142. package/es/assets/img/svg/bottombar/spin_3.svg +31 -0
  143. package/es/assets/img/svg/bottombar/spin_4.svg +31 -0
  144. package/es/assets/img/svg/bottombar/spin_5.svg +31 -0
  145. package/es/assets/img/svg/bottombar/zoomin.svg +29 -0
  146. package/es/assets/img/svg/bottombar/zoomout.svg +26 -0
  147. package/es/assets/img/svg/check.svg +10 -0
  148. package/es/assets/img/svg/close.svg +11 -0
  149. package/es/assets/img/svg/color/Black.svg +3 -0
  150. package/es/assets/img/svg/color/Blue.svg +3 -0
  151. package/es/assets/img/svg/color/Brown.svg +9 -0
  152. package/es/assets/img/svg/color/Cream.svg +3 -0
  153. package/es/assets/img/svg/color/Dark.svg +9 -0
  154. package/es/assets/img/svg/color/Gray.svg +3 -0
  155. package/es/assets/img/svg/color/Green.svg +3 -0
  156. package/es/assets/img/svg/color/Light.svg +9 -0
  157. package/es/assets/img/svg/color/Medium.svg +9 -0
  158. package/es/assets/img/svg/color/Unfinished.svg +9 -0
  159. package/es/assets/img/svg/color/White.svg +3 -0
  160. package/es/assets/img/svg/color/White.svg.bak +3 -0
  161. package/es/assets/img/svg/color/stone2.jpg +0 -0
  162. package/es/assets/img/svg/color/wood2.jpg +0 -0
  163. package/es/assets/img/svg/copy.svg +11 -0
  164. package/es/assets/img/svg/delete.svg +3 -0
  165. package/es/assets/img/svg/detail.svg +77 -0
  166. package/es/assets/img/svg/disclaimer/background.svg +758 -0
  167. package/es/assets/img/svg/disclaimer/logo-dots.svg +11 -0
  168. package/es/assets/img/svg/door/Closet.svg +11 -0
  169. package/es/assets/img/svg/door/Exterior.svg +5 -0
  170. package/es/assets/img/svg/door/Framed_dorway.svg +5 -0
  171. package/es/assets/img/svg/door/Frameless_dorway.svg +5 -0
  172. package/es/assets/img/svg/door/Interior.svg +7 -0
  173. package/es/assets/img/svg/door/Sliding.svg +5 -0
  174. package/es/assets/img/svg/doors_closet.svg +47 -0
  175. package/es/assets/img/svg/doors_exterior.svg +25 -0
  176. package/es/assets/img/svg/doors_interior.svg +29 -0
  177. package/es/assets/img/svg/doors_patio.svg +26 -0
  178. package/es/assets/img/svg/duplicate.svg +11 -0
  179. package/es/assets/img/svg/duplicate_object_left.svg +32 -0
  180. package/es/assets/img/svg/duplicate_object_right.svg +32 -0
  181. package/es/assets/img/svg/filtersActive.svg +19 -0
  182. package/es/assets/img/svg/firstsetting/L.svg +3 -0
  183. package/es/assets/img/svg/firstsetting/L2.svg +3 -0
  184. package/es/assets/img/svg/firstsetting/Open.svg +3 -0
  185. package/es/assets/img/svg/firstsetting/Square.svg +3 -0
  186. package/es/assets/img/svg/firstsetting/bar-active.svg +9 -0
  187. package/es/assets/img/svg/firstsetting/bar-normal.svg +3 -0
  188. package/es/assets/img/svg/firstsetting/bullet-current.svg +3 -0
  189. package/es/assets/img/svg/firstsetting/bullet-done.svg +3 -0
  190. package/es/assets/img/svg/firstsetting/bullet-not-done.svg +3 -0
  191. package/es/assets/img/svg/firstsetting/check-active.svg +3 -0
  192. package/es/assets/img/svg/firstsetting/check-normal.svg +3 -0
  193. package/es/assets/img/svg/firstsetting/pencil.svg +11 -0
  194. package/es/assets/img/svg/green_checkmark.svg +27 -0
  195. package/es/assets/img/svg/headerbar/assist.svg +3 -0
  196. package/es/assets/img/svg/headerbar/cart.svg +3 -0
  197. package/es/assets/img/svg/headerbar/check.svg +10 -0
  198. package/es/assets/img/svg/headerbar/consult_designer.svg +45 -0
  199. package/es/assets/img/svg/headerbar/edit_name.svg +26 -0
  200. package/es/assets/img/svg/headerbar/file-dollar.svg +13 -0
  201. package/es/assets/img/svg/headerbar/hamburger_menu.svg +32 -0
  202. package/es/assets/img/svg/headerbar/plus.svg +11 -0
  203. package/es/assets/img/svg/headerbar/review_quote.svg +44 -0
  204. package/es/assets/img/svg/headerbar/ruler-measure.svg +11 -0
  205. package/es/assets/img/svg/headerbar/save.svg +3 -0
  206. package/es/assets/img/svg/headerbar/setting.svg +75 -0
  207. package/es/assets/img/svg/help/check.svg +10 -0
  208. package/es/assets/img/svg/help/search.svg +76 -0
  209. package/es/assets/img/svg/intro/1-start-with-floorplan-whole.svg +27 -0
  210. package/es/assets/img/svg/intro/1-start-with-floorplan.svg +26 -0
  211. package/es/assets/img/svg/intro/2-start-from-scratch-whole.svg +28 -0
  212. package/es/assets/img/svg/intro/2-start-from-scratch.svg +27 -0
  213. package/es/assets/img/svg/intro/3-retrieve-project-whole.svg +19 -0
  214. package/es/assets/img/svg/intro/3-retrieve-project.svg +18 -0
  215. package/es/assets/img/svg/invert.svg +127 -0
  216. package/es/assets/img/svg/lefttoolbar/appliance-active.svg +13 -0
  217. package/es/assets/img/svg/lefttoolbar/appliance.svg +13 -0
  218. package/es/assets/img/svg/lefttoolbar/cabinet-active.svg +10 -0
  219. package/es/assets/img/svg/lefttoolbar/cabinet-category.svg +3 -0
  220. package/es/assets/img/svg/lefttoolbar/cabinet-one.svg +3 -0
  221. package/es/assets/img/svg/lefttoolbar/cabinet.svg +10 -0
  222. package/es/assets/img/svg/lefttoolbar/disigner_assistance.svg +89 -0
  223. package/es/assets/img/svg/lefttoolbar/door-style-active.svg +20 -0
  224. package/es/assets/img/svg/lefttoolbar/door-style.svg +20 -0
  225. package/es/assets/img/svg/lefttoolbar/door.svg +12 -0
  226. package/es/assets/img/svg/lefttoolbar/error_icon.svg +81 -0
  227. package/es/assets/img/svg/lefttoolbar/finishing-active.svg +13 -0
  228. package/es/assets/img/svg/lefttoolbar/finishing.svg +13 -0
  229. package/es/assets/img/svg/lefttoolbar/reviewforquote-active.svg +86 -0
  230. package/es/assets/img/svg/lefttoolbar/reviewforquote.svg +12 -0
  231. package/es/assets/img/svg/lefttoolbar/room-shape-L.svg +3 -0
  232. package/es/assets/img/svg/lefttoolbar/room-shape-active.svg +18 -0
  233. package/es/assets/img/svg/lefttoolbar/room-shape-custom.svg +12 -0
  234. package/es/assets/img/svg/lefttoolbar/room-shape-irregular.svg +3 -0
  235. package/es/assets/img/svg/lefttoolbar/room-shape-open.svg +3 -0
  236. package/es/assets/img/svg/lefttoolbar/room-shape-square.svg +3 -0
  237. package/es/assets/img/svg/lefttoolbar/room-shape.svg +18 -0
  238. package/es/assets/img/svg/lefttoolbar/search.svg +76 -0
  239. package/es/assets/img/svg/lefttoolbar/view_more.svg +86 -0
  240. package/es/assets/img/svg/lefttoolbar/warning_icon.svg +81 -0
  241. package/es/assets/img/svg/lefttoolbar/window.svg +12 -0
  242. package/es/assets/img/svg/logo.svg +11 -0
  243. package/es/assets/img/svg/logo_with_text.svg +25 -0
  244. package/es/assets/img/svg/menubar/login.svg +84 -0
  245. package/es/assets/img/svg/menubar/my_projects.svg +85 -0
  246. package/es/assets/img/svg/menubar/new_project.svg +110 -0
  247. package/es/assets/img/svg/menubar/save_project.svg +84 -0
  248. package/es/assets/img/svg/options.svg +3 -0
  249. package/es/assets/img/svg/positioning.svg +3 -0
  250. package/es/assets/img/svg/rotate.png +0 -0
  251. package/es/assets/img/svg/rotate.svg +17 -0
  252. package/es/assets/img/svg/rotate_object_clockwise.svg +26 -0
  253. package/es/assets/img/svg/rotate_object_counterclockwise.svg +26 -0
  254. package/es/assets/img/svg/toggleFilters.svg +19 -0
  255. package/es/assets/img/svg/toolbar/add_appliances_active.svg +64 -0
  256. package/es/assets/img/svg/toolbar/add_appliances_inactive.svg +52 -0
  257. package/es/assets/img/svg/toolbar/add_button.svg +36 -0
  258. package/es/assets/img/svg/toolbar/add_cabinets_active.svg +59 -0
  259. package/es/assets/img/svg/toolbar/add_cabinets_inactive.svg +49 -0
  260. package/es/assets/img/svg/toolbar/add_items_doors.svg +25 -0
  261. package/es/assets/img/svg/toolbar/add_items_doorways.svg +24 -0
  262. package/es/assets/img/svg/toolbar/add_items_refrigerator.svg +32 -0
  263. package/es/assets/img/svg/toolbar/add_items_windows.svg +28 -0
  264. package/es/assets/img/svg/toolbar/apply_button.svg +38 -0
  265. package/es/assets/img/svg/toolbar/arrow-plus.svg +11 -0
  266. package/es/assets/img/svg/toolbar/backsplash.svg +8 -0
  267. package/es/assets/img/svg/toolbar/cancel_button.svg +37 -0
  268. package/es/assets/img/svg/toolbar/consult_a_designer_button.svg +47 -0
  269. package/es/assets/img/svg/toolbar/countertop.svg +7 -0
  270. package/es/assets/img/svg/toolbar/dcm.png +0 -0
  271. package/es/assets/img/svg/toolbar/dcm_off.svg +12 -0
  272. package/es/assets/img/svg/toolbar/dcm_on.svg +474 -0
  273. package/es/assets/img/svg/toolbar/delete_button.svg +37 -0
  274. package/es/assets/img/svg/toolbar/download.svg +77 -0
  275. package/es/assets/img/svg/toolbar/draw_custom_floor.svg +31 -0
  276. package/es/assets/img/svg/toolbar/edit_button.svg +75 -0
  277. package/es/assets/img/svg/toolbar/email_quote_button.svg +44 -0
  278. package/es/assets/img/svg/toolbar/fbm.png +0 -0
  279. package/es/assets/img/svg/toolbar/finishing_touches_active.svg +54 -0
  280. package/es/assets/img/svg/toolbar/finishing_touches_inactive.svg +42 -0
  281. package/es/assets/img/svg/toolbar/floorstyle.svg +9 -0
  282. package/es/assets/img/svg/toolbar/fmb.png +0 -0
  283. package/es/assets/img/svg/toolbar/fmb_off.svg +12 -0
  284. package/es/assets/img/svg/toolbar/fmb_on.svg +489 -0
  285. package/es/assets/img/svg/toolbar/furnishings_icon.svg +6 -0
  286. package/es/assets/img/svg/toolbar/get_started_button.svg +41 -0
  287. package/es/assets/img/svg/toolbar/handles.svg +5 -0
  288. package/es/assets/img/svg/toolbar/lighting.svg +7 -0
  289. package/es/assets/img/svg/toolbar/lrm.png +0 -0
  290. package/es/assets/img/svg/toolbar/lrm_off.svg +12 -0
  291. package/es/assets/img/svg/toolbar/lrm_on.svg +470 -0
  292. package/es/assets/img/svg/toolbar/make_floorplan_active.svg +66 -0
  293. package/es/assets/img/svg/toolbar/make_floorplan_inactive.svg +52 -0
  294. package/es/assets/img/svg/toolbar/predefined_room_l_shaped.svg +20 -0
  295. package/es/assets/img/svg/toolbar/predefined_room_layout.svg +20 -0
  296. package/es/assets/img/svg/toolbar/predefined_room_long_narrow.svg +20 -0
  297. package/es/assets/img/svg/toolbar/predefined_room_open_l_shape.svg +20 -0
  298. package/es/assets/img/svg/toolbar/predefined_room_open_pentagon.svg +20 -0
  299. package/es/assets/img/svg/toolbar/predefined_room_open_rectangle.svg +20 -0
  300. package/es/assets/img/svg/toolbar/predefined_room_open_rectangle_2.svg +20 -0
  301. package/es/assets/img/svg/toolbar/predefined_room_pentagon.svg +20 -0
  302. package/es/assets/img/svg/toolbar/predefined_room_rectangle.svg +20 -0
  303. package/es/assets/img/svg/toolbar/predefined_room_rectangle_with_alcove.svg +20 -0
  304. package/es/assets/img/svg/toolbar/redo_button.svg +75 -0
  305. package/es/assets/img/svg/toolbar/redo_button1.svg +75 -0
  306. package/es/assets/img/svg/toolbar/review_quote_active.svg +14 -0
  307. package/es/assets/img/svg/toolbar/review_quote_inactive.svg +44 -0
  308. package/es/assets/img/svg/toolbar/save_project_button.svg +44 -0
  309. package/es/assets/img/svg/toolbar/select_doorstyle_active.svg +67 -0
  310. package/es/assets/img/svg/toolbar/select_doorstyle_inactive.svg +57 -0
  311. package/es/assets/img/svg/toolbar/shopping-cart.svg +13 -0
  312. package/es/assets/img/svg/toolbar/style_change_button.svg +47 -0
  313. package/es/assets/img/svg/toolbar/take_picture.svg +75 -0
  314. package/es/assets/img/svg/toolbar/undo_button.svg +76 -0
  315. package/es/assets/img/svg/toolbar/undo_button1.svg +76 -0
  316. package/es/assets/img/svg/toolbar/use_button.svg +37 -0
  317. package/es/assets/img/svg/toolbar/wall_color_icon.svg +6 -0
  318. package/es/assets/img/svg/topbar/edit_active.svg +10 -0
  319. package/es/assets/img/svg/topbar/edit_inactive.svg +10 -0
  320. package/es/assets/img/svg/topbar/redo_active.svg +42 -0
  321. package/es/assets/img/svg/topbar/redo_inactive.svg +23 -0
  322. package/es/assets/img/svg/topbar/select_all_active.svg +50 -0
  323. package/es/assets/img/svg/topbar/select_all_inactive.svg +32 -0
  324. package/es/assets/img/svg/topbar/take_picture_active.svg +51 -0
  325. package/es/assets/img/svg/topbar/take_picture_inactive.svg +26 -0
  326. package/es/assets/img/svg/topbar/undo_active.svg +42 -0
  327. package/es/assets/img/svg/topbar/undo_inactive.svg +23 -0
  328. package/es/assets/img/svg/warning_info_2d.svg +81 -0
  329. package/es/assets/img/svg/window/Clear.svg +3 -0
  330. package/es/assets/img/svg/window/Cross.svg +5 -0
  331. package/es/assets/img/svg/window/Double_hung.svg +4 -0
  332. package/es/assets/img/svg/window/Vertical.svg +4 -0
  333. package/es/assets/img/svg/windows_clear.svg +23 -0
  334. package/es/assets/img/svg/windows_cross.svg +28 -0
  335. package/es/assets/img/svg/windows_double_hung.svg +24 -0
  336. package/es/assets/img/svg/windows_vertical.svg +24 -0
  337. package/es/assets/img/svg/wizardstep/Custom.svg +3 -0
  338. package/es/assets/img/svg/wizardstep/Dashed_line.svg +3 -0
  339. package/es/assets/img/svg/wizardstep/L.svg +3 -0
  340. package/es/assets/img/svg/wizardstep/L2.svg +3 -0
  341. package/es/assets/img/svg/wizardstep/Open.svg +3 -0
  342. package/es/assets/img/svg/wizardstep/Square.svg +3 -0
  343. package/es/assets/img/svg/wizardstep/bar-active.svg +9 -0
  344. package/es/assets/img/svg/wizardstep/bar-normal.svg +3 -0
  345. package/es/assets/img/svg/wizardstep/bullet-current.svg +3 -0
  346. package/es/assets/img/svg/wizardstep/bullet-done.svg +3 -0
  347. package/es/assets/img/svg/wizardstep/bullet-not-done.svg +3 -0
  348. package/es/assets/img/svg/wizardstep/check-active.svg +3 -0
  349. package/es/assets/img/svg/wizardstep/check-normal.svg +3 -0
  350. package/es/assets/img/svg/wizardstep/detail_view.svg +87 -0
  351. package/es/assets/img/svg/wizardstep/pencil.svg +11 -0
  352. package/es/assets/img/svg/wizardstep/tile_view.svg +95 -0
  353. package/es/assets/img/texture/glass.jpg +0 -0
  354. package/es/assets/img/texture/steel.jpg +0 -0
  355. package/es/assets/img/texture/white1px.jpg +0 -0
  356. package/es/assets/img/texture/wood.jpg +0 -0
  357. package/es/assets/model/DCM.bin +0 -0
  358. package/es/assets/model/DCM.fbx +0 -0
  359. package/es/assets/model/DCM.gltf +1 -0
  360. package/es/assets/model/FBM.bin +0 -0
  361. package/es/assets/model/FBM.fbx +0 -0
  362. package/es/assets/model/FBM.gltf +1 -0
  363. package/es/assets/model/LRM.bin +0 -0
  364. package/es/assets/model/LRM.fbx +0 -0
  365. package/es/assets/model/LRM.gltf +1 -0
  366. package/es/assets/rtastore_logo.png +0 -0
  367. package/{src/catalog/areas/area/planner-element.jsx → es/catalog/areas/area/planner-element.js} +45 -43
  368. package/es/catalog/catalog.js +265 -0
  369. package/es/catalog/factories/area-factory-3d.js +182 -0
  370. package/es/catalog/factories/area-factory.js +78 -0
  371. package/es/catalog/factories/export.js +7 -0
  372. package/es/catalog/factories/wall-factory-3d.js +202 -0
  373. package/es/catalog/factories/wall-factory.js +267 -0
  374. package/es/catalog/holes/door-closet/planner-element.js +222 -0
  375. package/es/catalog/holes/door-double/planner-element.js +315 -0
  376. package/es/catalog/holes/door-exterior/planner-element.js +215 -0
  377. package/es/catalog/holes/door-interior/planner-element.js +227 -0
  378. package/es/catalog/holes/door-panic/planner-element.js +503 -0
  379. package/es/catalog/holes/door-panic-double/planner-element.js +463 -0
  380. package/es/catalog/holes/door-sliding/planner-element.js +225 -0
  381. package/es/catalog/holes/doorway-framed/planner-element.js +145 -0
  382. package/es/catalog/holes/doorway-frameless/planner-element.js +104 -0
  383. package/es/catalog/holes/export.js +13 -0
  384. package/{src/catalog/holes/window-clear/planner-element.jsx → es/catalog/holes/window-clear/planner-element.js} +166 -181
  385. package/{src/catalog/holes/window-cross/planner-element.jsx → es/catalog/holes/window-cross/planner-element.js} +165 -180
  386. package/{src/catalog/holes/window-double-hung/planner-element.jsx → es/catalog/holes/window-double-hung/planner-element.js} +303 -366
  387. package/{src/catalog/holes/window-vertical/planner-element.jsx → es/catalog/holes/window-vertical/planner-element.js} +276 -290
  388. package/{src/catalog/lines/wall/planner-element.jsx → es/catalog/lines/wall/planner-element.js} +79 -73
  389. package/{src/catalog/molding/molding-dcm/planner-element.jsx → es/catalog/molding/molding-dcm/planner-element.js} +26 -35
  390. package/{src/catalog/molding/molding-fbm/planner-element.jsx → es/catalog/molding/molding-fbm/planner-element.js} +26 -35
  391. package/{src/catalog/molding/molding-lrm/planner-element.jsx → es/catalog/molding/molding-lrm/planner-element.js} +26 -35
  392. package/es/catalog/properties/export.js +21 -0
  393. package/es/catalog/properties/property-checkbox.js +68 -0
  394. package/es/catalog/properties/property-color.js +39 -0
  395. package/es/catalog/properties/property-enum.js +50 -0
  396. package/{src/catalog/properties/property-hidden.jsx → es/catalog/properties/property-hidden.js} +19 -22
  397. package/es/catalog/properties/property-lenght-measure.js +96 -0
  398. package/es/catalog/properties/property-length-measure.js +80 -0
  399. package/es/catalog/properties/property-length-measure_hole.js +96 -0
  400. package/es/catalog/properties/property-number.js +48 -0
  401. package/es/catalog/properties/property-read-only.js +26 -0
  402. package/es/catalog/properties/property-string.js +48 -0
  403. package/es/catalog/properties/property-toggle.js +39 -0
  404. package/es/catalog/properties/shared-property-style.js +14 -0
  405. package/es/catalog/utils/FuseUtils.js +79 -0
  406. package/es/catalog/utils/exporter.js +161 -0
  407. package/es/catalog/utils/geom-utils.js +189 -0
  408. package/es/catalog/utils/item-loader.js +1608 -0
  409. package/es/catalog/utils/load-obj.js +91 -0
  410. package/{src → es}/catalog/utils/mtl-loader.js +296 -401
  411. package/{src → es}/catalog/utils/obj-loader.js +464 -532
  412. package/es/class/FuseUtils.js +79 -0
  413. package/es/class/area.js +141 -0
  414. package/es/class/export.js +24 -0
  415. package/es/class/group.js +431 -0
  416. package/es/class/guide.js +58 -0
  417. package/es/class/hole.js +924 -0
  418. package/es/class/item.js +1878 -0
  419. package/es/class/layer.js +663 -0
  420. package/es/class/line.js +1229 -0
  421. package/es/class/project.js +939 -0
  422. package/es/class/vertex.js +198 -0
  423. package/es/components/content.js +135 -0
  424. package/es/components/export.js +9 -0
  425. package/es/components/style/button.js +106 -0
  426. package/es/components/style/cancel-button.js +21 -0
  427. package/es/components/style/content-container.js +30 -0
  428. package/es/components/style/content-title.js +25 -0
  429. package/es/components/style/delete-button.js +24 -0
  430. package/es/components/style/export.js +31 -0
  431. package/es/components/style/form-block.js +20 -0
  432. package/es/components/style/form-color-input.js +26 -0
  433. package/es/components/style/form-label.js +22 -0
  434. package/es/components/style/form-number-input.js +192 -0
  435. package/es/components/style/form-number-input_2.js +238 -0
  436. package/es/components/style/form-select.js +19 -0
  437. package/es/components/style/form-slider.js +60 -0
  438. package/es/components/style/form-submit-button.js +25 -0
  439. package/es/components/style/form-text-input.js +69 -0
  440. package/es/components/viewer2d/area.js +81 -0
  441. package/es/components/viewer2d/export.js +31 -0
  442. package/es/components/viewer2d/grids/grid-horizontal-streak.js +36 -0
  443. package/es/components/viewer2d/grids/grid-streak.js +36 -0
  444. package/es/components/viewer2d/grids/grid-vertical-streak.js +36 -0
  445. package/es/components/viewer2d/grids/grids.js +30 -0
  446. package/es/components/viewer2d/group.js +48 -0
  447. package/es/components/viewer2d/item.js +242 -0
  448. package/es/components/viewer2d/layer.js +164 -0
  449. package/es/components/viewer2d/line.js +996 -0
  450. package/es/components/viewer2d/ruler.js +84 -0
  451. package/es/components/viewer2d/rulerDist.js +102 -0
  452. package/es/components/viewer2d/rulerX.js +142 -0
  453. package/es/components/viewer2d/rulerY.js +144 -0
  454. package/es/components/viewer2d/scene.js +108 -0
  455. package/es/components/viewer2d/snap.js +74 -0
  456. package/es/components/viewer2d/state.js +73 -0
  457. package/es/components/viewer2d/utils.js +193 -0
  458. package/es/components/viewer2d/vertex.js +66 -0
  459. package/es/components/viewer2d/viewer2d.js +1478 -0
  460. package/es/components/viewer3d/camera-controls-module/camera-controls.module.js +2585 -0
  461. package/es/components/viewer3d/dcm.js +401 -0
  462. package/es/components/viewer3d/fbm.js +414 -0
  463. package/es/components/viewer3d/front3D.js +62 -0
  464. package/{src → es}/components/viewer3d/grid-creator.js +25 -25
  465. package/es/components/viewer3d/grids/grid-horizontal-streak.js +36 -0
  466. package/es/components/viewer3d/grids/grid-streak.js +27 -0
  467. package/es/components/viewer3d/grids/grid-vertical-streak.js +36 -0
  468. package/es/components/viewer3d/libs/first-person-controls.js +67 -0
  469. package/{src → es}/components/viewer3d/libs/helvetiker_regular.typeface.js +1281 -1265
  470. package/{src → es}/components/viewer3d/libs/mtl-loader.js +296 -401
  471. package/{src → es}/components/viewer3d/libs/obj-loader.js +460 -651
  472. package/{src → es}/components/viewer3d/libs/orbit-controls.js +691 -939
  473. package/{src → es}/components/viewer3d/libs/pointer-lock-controls.js +42 -65
  474. package/es/components/viewer3d/lrm.js +305 -0
  475. package/es/components/viewer3d/model.js +708 -0
  476. package/{src → es}/components/viewer3d/pointer-lock-navigation.js +91 -116
  477. package/es/components/viewer3d/ruler-utils/itemRect.js +61 -0
  478. package/es/components/viewer3d/ruler-utils/layer3D.js +495 -0
  479. package/es/components/viewer3d/ruler-utils/ruler3D.js +224 -0
  480. package/es/components/viewer3d/ruler-utils/scene3D.js +59 -0
  481. package/es/components/viewer3d/ruler-utils/state3D.js +18 -0
  482. package/es/components/viewer3d/scene-creator.js +3673 -0
  483. package/{src → es}/components/viewer3d/three-memory-cleaner.js +51 -65
  484. package/es/components/viewer3d/viewer3d-first-person.js +311 -0
  485. package/es/components/viewer3d/viewer3d.js +2654 -0
  486. package/es/constants.js +768 -0
  487. package/es/index.html.ejs +264 -0
  488. package/es/index.js +627 -0
  489. package/es/models.js +512 -0
  490. package/{src → es}/plugins/SVGLoader.js +1404 -1981
  491. package/es/plugins/console-debugger.js +34 -0
  492. package/es/plugins/export.js +7 -0
  493. package/es/plugins/keyboard.js +110 -0
  494. package/{src → es}/reducers/areas-reducer.js +12 -13
  495. package/es/reducers/export.js +25 -0
  496. package/{src → es}/reducers/groups-reducer.js +38 -73
  497. package/{src → es}/reducers/holes-reducer.js +62 -125
  498. package/{src → es}/reducers/items-reducer.js +143 -286
  499. package/es/reducers/lines-reducer.js +45 -0
  500. package/{src → es}/reducers/project-reducer.js +136 -239
  501. package/es/reducers/reducer.js +19 -0
  502. package/{src → es}/reducers/scene-reducer.js +28 -41
  503. package/es/reducers/user-reducer.js +41 -0
  504. package/{src → es}/reducers/vertices-reducer.js +19 -34
  505. package/es/reducers/viewer2d-reducer.js +77 -0
  506. package/es/reducers/viewer3d-reducer.js +58 -0
  507. package/{src → es}/shared-style.js +66 -72
  508. package/{src → es}/translator/en.js +104 -106
  509. package/{src → es}/translator/it.js +79 -80
  510. package/{src → es}/translator/ru.js +79 -80
  511. package/es/translator/translator.js +80 -0
  512. package/{src → es}/utils/browser.js +33 -36
  513. package/es/utils/convert-units-lite.js +29 -0
  514. package/es/utils/email-validator.js +4 -0
  515. package/es/utils/export.js +25 -0
  516. package/es/utils/geometry.js +2609 -0
  517. package/{src → es}/utils/get-edges-of-subgraphs.js +26 -29
  518. package/{src → es}/utils/graph-cycles.js +230 -251
  519. package/es/utils/graph-inner-cycles.js +46 -0
  520. package/es/utils/graph.js +145 -0
  521. package/es/utils/helper.js +436 -0
  522. package/{src → es}/utils/history.js +29 -37
  523. package/es/utils/id-broker.js +15 -0
  524. package/es/utils/isolate-event-handler.js +1622 -0
  525. package/es/utils/logger.js +8 -0
  526. package/{src → es}/utils/math.js +39 -40
  527. package/es/utils/molding.js +1317 -0
  528. package/es/utils/name-generator.js +14 -0
  529. package/{src → es}/utils/objects-utils.js +50 -56
  530. package/es/utils/phone-validator.js +4 -0
  531. package/es/utils/process-black-list.js +15 -0
  532. package/es/utils/react-if.js +18 -0
  533. package/es/utils/ruler.js +58 -0
  534. package/es/utils/snap-scene.js +94 -0
  535. package/es/utils/snap.js +231 -0
  536. package/es/utils/summarizeCart.js +24 -0
  537. package/es/utils/threeCSG.es6.js +494 -0
  538. package/es/version.js +1 -0
  539. package/package.json +75 -101
  540. package/src/@history.js +0 -3
  541. package/src/AppContext.js +0 -5
  542. package/src/KitchenConfigurator.jsx +0 -1517
  543. package/src/KitchenConfiguratorApp.jsx +0 -443
  544. package/src/actions/export.js +0 -38
  545. package/src/actions/user-actions.js +0 -75
  546. package/src/catalog/catalog.js +0 -258
  547. package/src/catalog/factories/area-factory-3d.js +0 -252
  548. package/src/catalog/factories/area-factory.jsx +0 -102
  549. package/src/catalog/factories/export.js +0 -9
  550. package/src/catalog/factories/wall-factory-3d.js +0 -296
  551. package/src/catalog/factories/wall-factory.jsx +0 -321
  552. package/src/catalog/holes/door-closet/planner-element.jsx +0 -251
  553. package/src/catalog/holes/door-double/planner-element.jsx +0 -391
  554. package/src/catalog/holes/door-exterior/planner-element.jsx +0 -245
  555. package/src/catalog/holes/door-interior/planner-element.jsx +0 -256
  556. package/src/catalog/holes/door-panic/planner-element.jsx +0 -594
  557. package/src/catalog/holes/door-panic-double/planner-element.jsx +0 -574
  558. package/src/catalog/holes/door-sliding/planner-element.jsx +0 -256
  559. package/src/catalog/holes/doorway-framed/planner-element.jsx +0 -169
  560. package/src/catalog/holes/doorway-frameless/planner-element.jsx +0 -116
  561. package/src/catalog/properties/export.js +0 -33
  562. package/src/catalog/properties/property-checkbox.jsx +0 -123
  563. package/src/catalog/properties/property-color.jsx +0 -52
  564. package/src/catalog/properties/property-enum.jsx +0 -87
  565. package/src/catalog/properties/property-lenght-measure.jsx +0 -113
  566. package/src/catalog/properties/property-length-measure.jsx +0 -129
  567. package/src/catalog/properties/property-length-measure_hole.jsx +0 -110
  568. package/src/catalog/properties/property-number.jsx +0 -63
  569. package/src/catalog/properties/property-read-only.jsx +0 -37
  570. package/src/catalog/properties/property-string.jsx +0 -59
  571. package/src/catalog/properties/property-toggle.jsx +0 -51
  572. package/src/catalog/properties/shared-property-style.js +0 -13
  573. package/src/catalog/utils/FuseUtils.js +0 -61
  574. package/src/catalog/utils/exporter.js +0 -173
  575. package/src/catalog/utils/geom-utils.js +0 -301
  576. package/src/catalog/utils/item-loader.jsx +0 -2122
  577. package/src/catalog/utils/load-obj.js +0 -113
  578. package/src/class/FuseUtils.js +0 -61
  579. package/src/class/area.js +0 -159
  580. package/src/class/export.js +0 -37
  581. package/src/class/group.js +0 -565
  582. package/src/class/guide.js +0 -44
  583. package/src/class/hole.js +0 -1359
  584. package/src/class/item.js +0 -2050
  585. package/src/class/layer.js +0 -926
  586. package/src/class/line.js +0 -1780
  587. package/src/class/project.js +0 -875
  588. package/src/class/vertex.js +0 -409
  589. package/src/components/_export.js +0 -11
  590. package/src/components/atoms/Snackbar/index.jsx +0 -43
  591. package/src/components/atoms/radio-button/index.jsx +0 -20
  592. package/src/components/atoms/radio-button/styles.js +0 -56
  593. package/src/components/button/MainButton.jsx +0 -157
  594. package/src/components/button/ToggleMeasureButton.jsx +0 -65
  595. package/src/components/content.jsx +0 -136
  596. package/src/components/molecules/slider/index.jsx +0 -15
  597. package/src/components/molecules/slider/styles.scss +0 -3
  598. package/src/components/style/button.jsx +0 -95
  599. package/src/components/style/cancel-button.jsx +0 -20
  600. package/src/components/style/content-container.jsx +0 -29
  601. package/src/components/style/content-title.jsx +0 -20
  602. package/src/components/style/delete-button.jsx +0 -23
  603. package/src/components/style/export.jsx +0 -48
  604. package/src/components/style/form-block.jsx +0 -13
  605. package/src/components/style/form-color-input.jsx +0 -27
  606. package/src/components/style/form-label.jsx +0 -15
  607. package/src/components/style/form-number-input.jsx +0 -196
  608. package/src/components/style/form-number-input_2.jsx +0 -191
  609. package/src/components/style/form-select.jsx +0 -38
  610. package/src/components/style/form-slider.jsx +0 -36
  611. package/src/components/style/form-submit-button.jsx +0 -23
  612. package/src/components/style/form-text-input.jsx +0 -65
  613. package/src/components/tutorial-view/Modal.jsx +0 -584
  614. package/src/components/tutorial-view/style.css +0 -111
  615. package/src/components/tutorial-view/styles.js +0 -65
  616. package/src/components/viewer2d/area.jsx +0 -98
  617. package/src/components/viewer2d/export.js +0 -48
  618. package/src/components/viewer2d/grids/grid-horizontal-streak.jsx +0 -40
  619. package/src/components/viewer2d/grids/grid-streak.jsx +0 -32
  620. package/src/components/viewer2d/grids/grid-vertical-streak.jsx +0 -41
  621. package/src/components/viewer2d/grids/grids.jsx +0 -30
  622. package/src/components/viewer2d/group.jsx +0 -57
  623. package/src/components/viewer2d/item.jsx +0 -618
  624. package/src/components/viewer2d/layer.jsx +0 -214
  625. package/src/components/viewer2d/line.jsx +0 -1358
  626. package/src/components/viewer2d/ruler.jsx +0 -136
  627. package/src/components/viewer2d/rulerDist.jsx +0 -192
  628. package/src/components/viewer2d/rulerX.jsx +0 -141
  629. package/src/components/viewer2d/rulerY.jsx +0 -138
  630. package/src/components/viewer2d/scene.jsx +0 -94
  631. package/src/components/viewer2d/snap.jsx +0 -118
  632. package/src/components/viewer2d/state.jsx +0 -77
  633. package/src/components/viewer2d/utils.js +0 -195
  634. package/src/components/viewer2d/vertex.jsx +0 -76
  635. package/src/components/viewer2d/viewer2d.jsx +0 -1830
  636. package/src/components/viewer3d/camera-controls-module/camera-controls.module.js +0 -3078
  637. package/src/components/viewer3d/dcm.js +0 -226
  638. package/src/components/viewer3d/fbm.js +0 -383
  639. package/src/components/viewer3d/front3D.jsx +0 -63
  640. package/src/components/viewer3d/grids/grid-horizontal-streak.js +0 -41
  641. package/src/components/viewer3d/grids/grid-streak.js +0 -34
  642. package/src/components/viewer3d/grids/grid-vertical-streak.js +0 -42
  643. package/src/components/viewer3d/libs/first-person-controls.js +0 -70
  644. package/src/components/viewer3d/lrm.js +0 -358
  645. package/src/components/viewer3d/model.js +0 -830
  646. package/src/components/viewer3d/ruler-utils/itemRect.jsx +0 -91
  647. package/src/components/viewer3d/ruler-utils/layer3D.jsx +0 -528
  648. package/src/components/viewer3d/ruler-utils/ruler3D.jsx +0 -218
  649. package/src/components/viewer3d/ruler-utils/scene3D.jsx +0 -87
  650. package/src/components/viewer3d/ruler-utils/state3D.jsx +0 -25
  651. package/src/components/viewer3d/scene-creator.js +0 -5169
  652. package/src/components/viewer3d/viewer3d-first-person.js +0 -395
  653. package/src/components/viewer3d/viewer3d.js +0 -3376
  654. package/src/constants.js +0 -731
  655. package/src/index.js +0 -32
  656. package/src/models.js +0 -541
  657. package/src/plugins/autosave.js +0 -39
  658. package/src/plugins/console-debugger.js +0 -36
  659. package/src/plugins/export.js +0 -11
  660. package/src/plugins/keyboard.js +0 -194
  661. package/src/reducers/export.js +0 -39
  662. package/src/reducers/lines-reducer.js +0 -96
  663. package/src/reducers/reducer.js +0 -59
  664. package/src/reducers/user-reducer.js +0 -30
  665. package/src/reducers/viewer2d-reducer.js +0 -81
  666. package/src/reducers/viewer3d-reducer.js +0 -65
  667. package/src/translator/translator.js +0 -81
  668. package/src/utils/email-validator.js +0 -5
  669. package/src/utils/export.js +0 -39
  670. package/src/utils/geometry.js +0 -2572
  671. package/src/utils/graph-inner-cycles.js +0 -49
  672. package/src/utils/graph.js +0 -147
  673. package/src/utils/helper.js +0 -431
  674. package/src/utils/id-broker.js +0 -9
  675. package/src/utils/logger.js +0 -8
  676. package/src/utils/molding.js +0 -973
  677. package/src/utils/name-generator.js +0 -5
  678. package/src/utils/phone-validator.js +0 -4
  679. package/src/utils/process-black-list.js +0 -10
  680. package/src/utils/react-if.jsx +0 -20
  681. package/src/utils/snap-scene.js +0 -102
  682. package/src/utils/snap.js +0 -184
  683. package/src/utils/threeCSG.es6.js +0 -578
  684. package/src/version.js +0 -1
  685. /package/{src → es}/catalog/areas/area/textures/ceramic-tile.jpg +0 -0
  686. /package/{src → es}/catalog/areas/area/textures/grass.jpg +0 -0
  687. /package/{src → es}/catalog/areas/area/textures/parquet.jpg +0 -0
  688. /package/{src → es}/catalog/areas/area/textures/strand-porcelain.jpg +0 -0
  689. /package/{src → es}/catalog/areas/area/textures/tile1.jpg +0 -0
  690. /package/{src → es}/catalog/back.png +0 -0
  691. /package/{src → es}/catalog/doors.png +0 -0
  692. /package/{src → es}/catalog/doorways.png +0 -0
  693. /package/{src → es}/catalog/envMap/nx.hdr +0 -0
  694. /package/{src → es}/catalog/envMap/ny.hdr +0 -0
  695. /package/{src → es}/catalog/envMap/nz.hdr +0 -0
  696. /package/{src → es}/catalog/envMap/px.hdr +0 -0
  697. /package/{src → es}/catalog/envMap/py.hdr +0 -0
  698. /package/{src → es}/catalog/envMap/pz.hdr +0 -0
  699. /package/{src/components/molecules/slider/styles.js → es/catalog/export.js} +0 -0
  700. /package/{src → es}/catalog/holes/door-double/door_double.png +0 -0
  701. /package/{src → es}/catalog/holes/door-panic/panicDoor.png +0 -0
  702. /package/{src → es}/catalog/holes/door-panic-double/panicDoorDouble.png +0 -0
  703. /package/{src → es}/catalog/holes/gate/gate.jpg +0 -0
  704. /package/{src → es}/catalog/holes/window-clear/texture.png +0 -0
  705. /package/{src → es}/catalog/holes/window-cross/texture.png +0 -0
  706. /package/{src → es}/catalog/holes/window-double-hung/texture.png +0 -0
  707. /package/{src → es}/catalog/holes/window-vertical/texture.png +0 -0
  708. /package/{src → es}/catalog/lines/wall/textures/bricks-normal.jpg +0 -0
  709. /package/{src → es}/catalog/lines/wall/textures/bricks-normal2.jpg +0 -0
  710. /package/{src → es}/catalog/lines/wall/textures/bricks.jpg +0 -0
  711. /package/{src → es}/catalog/lines/wall/textures/bricks2.jpg +0 -0
  712. /package/{src → es}/catalog/lines/wall/textures/bricks3.jpg +0 -0
  713. /package/{src → es}/catalog/lines/wall/textures/morden-normal.jpg +0 -0
  714. /package/{src → es}/catalog/lines/wall/textures/morden.jpg +0 -0
  715. /package/{src → es}/catalog/lines/wall/textures/painted-normal.jpg +0 -0
  716. /package/{src → es}/catalog/lines/wall/textures/painted.jpg +0 -0
  717. /package/{src → es}/catalog/lines/wall/textures/plaster-normal.jpg +0 -0
  718. /package/{src → es}/catalog/lines/wall/textures/plaster.jpg +0 -0
  719. /package/{src → es}/catalog/lines/wall/wall.png +0 -0
  720. /package/{src → es}/catalog/molding/molding-dcm/texture.png +0 -0
  721. /package/{src → es}/catalog/molding/molding-fbm/texture.png +0 -0
  722. /package/{src → es}/catalog/molding/molding-lrm/texture.png +0 -0
  723. /package/{src → es}/catalog/windows.png +0 -0
package/README.md CHANGED
@@ -10,7 +10,7 @@ yarn
10
10
  yarn start
11
11
  ```
12
12
 
13
- You need to check **demo/webpack.config.js** to change the API server.
13
+ You need to check **webpack.config.js** to change the API server.
14
14
 
15
15
  ```
16
16
  if (isProduction) {
@@ -39,3 +39,26 @@ You need to check **demo/webpack.config.js** to change the API server.
39
39
  - `NODE_ENV`: **production** or **development** environment
40
40
  - `API_URL`: the API server URL
41
41
  - `MODE`: **development** environment usually needs **staging** mode. **staging** mode exposes the unfinished features to the user.
42
+
43
+ ## 2. Project Structure
44
+ Webpack is used as the module bundler. The source code is in the **src** folder.
45
+
46
+ entry: {
47
+ // app: './src/renderer.jsx', // For production build WITH API
48
+ app: './src/devLiteRenderer.jsx', // For development of LiteRenderer
49
+ vendor: VENDORS_LIBRARIES
50
+ },
51
+
52
+ - **index.html**: The main HTML file.
53
+
54
+ - **[renderer.jsx](src/renderer.jsx)**: The main JavaScript file that bootstraps the React application. WTH API CALLS
55
+
56
+ - **[devLiteRenderer.jsx](src/devLiteRenderer.jsx).jsx**: The main JavaScript file that bootstraps the React application. For development lite version without API calls. WITH MOCKS
57
+ - **[LiteRenderer.js](src/LiteRenderer.js)**: The Lite React component that uses mock data and creates the store / catalog etc
58
+ - [LiteKitchenConfigurator.jsx](src/LiteKitchenConfigurator.jsx)
59
+
60
+ - **components/**: Contains all React components used in the application.
61
+ - **styles/**: Contains CSS files for styling the application.
62
+ - **assets/**: Contains static assets like images and fonts.
63
+ - **utils/**: Contains utility functions and helpers.
64
+ -
package/es/@history.js ADDED
@@ -0,0 +1,2 @@
1
+ import * as history from 'history';
2
+ export default history.createBrowserHistory();
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ var AppContext = /*#__PURE__*/React.createContext({});
3
+ export default AppContext;
@@ -0,0 +1,494 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
+ import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
5
+ import _createClass from "@babel/runtime/helpers/esm/createClass";
6
+ import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
7
+ import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
8
+ import _inherits from "@babel/runtime/helpers/esm/inherits";
9
+ import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
10
+ var _excluded = ["width", "height", "extractedState"];
11
+ var _templateObject, _templateObject2;
12
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
13
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
14
+ function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
15
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
16
+ // LiteKitchenConfigurator.jsx
17
+ import styled from 'styled-components';
18
+ import PropTypes from 'prop-types';
19
+ import React, { Component } from 'react';
20
+ import { connect } from 'react-redux';
21
+ import { bindActionCreators } from 'redux';
22
+ import * as constants from "./constants";
23
+ import { base64Decode } from "./utils/helper";
24
+ import actions from "./actions/export";
25
+ import Catalog from "./catalog/catalog";
26
+ import { Content } from "./components/export";
27
+ import Translator from "./translator/translator";
28
+ import { objectsMap } from "./utils/objects-utils";
29
+ import { VERSION } from "./version";
30
+ import { handleExternalEvent } from "./utils/isolate-event-handler";
31
+ import AppContext from "./AppContext";
32
+ var toolbarW = 0;
33
+ var wrapperStyle = {
34
+ display: 'flex',
35
+ flexFlow: 'row nowrap'
36
+ };
37
+ var WarningItem = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n opacity: 0.8;\n position: absolute;\n border-radius: 6px;\n z-index: 11;\n background-color: #ff7400;\n width: max-content;\n align-items: center;\n padding: 10px;\n display: none;\n box-shadow:\n 0px 3px 5px -1px rgba(0, 0, 0, 0.2),\n 0px 6px 10px 0px rgba(0, 0, 0, 0.39),\n 0px 1px 18px 0px rgba(0, 0, 0, 0.12);\n top: -50px;\n left: 5px;\n color: white;\n"])));
38
+ var SubCategoryItemImage = styled.img(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n background-color: ", ";\n height: 30px;\n width: 30px;\n -webkit-mask-image: url(", ");\n -webkit-mask-size: calc(100% - 2px) calc(100% - 2px);\n -webkit-mask-repeat: no-repeat;\n -webkit-mask-position: 1px 1px;\n"])), constants.SECONDARY_PURPLE_COLOR, function (props) {
39
+ return props.maskImage + '?nocache=2025';
40
+ });
41
+ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
42
+ function LiteKitchenConfigurator(props) {
43
+ var _utmRequestData2, _utmRequestData3, _utmRequestData4, _utmRequestData5, _utmRequestData6, _utmRequestData7, _utmRequestData8, _utmRequestData9, _utmRequestData0;
44
+ var _this;
45
+ _classCallCheck(this, LiteKitchenConfigurator);
46
+ _this = _callSuper(this, LiteKitchenConfigurator, [props]);
47
+ var utmDetailParams = new URLSearchParams(_this.props.location && _this.props.location.search);
48
+ var utmStrEncoded = utmDetailParams.get('details');
49
+ var utmRequestData = null;
50
+ if (utmStrEncoded) {
51
+ try {
52
+ var _utmRequestData;
53
+ utmRequestData = JSON.parse(base64Decode(utmStrEncoded));
54
+ utmRequestData = JSON.parse((_utmRequestData = utmRequestData) === null || _utmRequestData === void 0 ? void 0 : _utmRequestData.utm);
55
+ } catch (e) {
56
+ console.error('Cannot parse utm parameter: ', e);
57
+ utmRequestData = null;
58
+ }
59
+ }
60
+ _this.state = {
61
+ savePopupVisible: false,
62
+ quotePopupVisible: false,
63
+ assistPopupVisible: false,
64
+ newProjectPopupVisible: false,
65
+ isModalVisible: false,
66
+ submitPromptVisible: false,
67
+ stateSubmitType: constants.SUBMIT_REQUEST_ASSIST,
68
+ savePromptVisible: false,
69
+ isShowProperty: true,
70
+ submitTosave: false,
71
+ signOpen: false,
72
+ myProjectsOpen: false,
73
+ myProjectsToLogin: false,
74
+ downloadPopupVisible: false,
75
+ toolbar: '',
76
+ reviewQuotePopupOpened: false,
77
+ floorOpened: false,
78
+ cabinetOpened: false,
79
+ applianceOpened: false,
80
+ finishingOpened: false,
81
+ doorStyleOpen: false,
82
+ wizardStepOpend: false,
83
+ tutorialMouseEventsAdd: false,
84
+ replaceCabinetFlag: false,
85
+ isSnackBarOpen: false,
86
+ isSnackBar1Open: false,
87
+ redirectURL: '',
88
+ snackBarMessage: '',
89
+ isSaved: false,
90
+ isLeaving: false
91
+ };
92
+ _this.utm = {
93
+ utm_source: ((_utmRequestData2 = utmRequestData) === null || _utmRequestData2 === void 0 ? void 0 : _utmRequestData2.source) || 'source',
94
+ utm_medium: ((_utmRequestData3 = utmRequestData) === null || _utmRequestData3 === void 0 ? void 0 : _utmRequestData3.medium) || 'medium',
95
+ utm_campaign: ((_utmRequestData4 = utmRequestData) === null || _utmRequestData4 === void 0 ? void 0 : _utmRequestData4.campaign) || 'campaign',
96
+ utm_term: ((_utmRequestData5 = utmRequestData) === null || _utmRequestData5 === void 0 ? void 0 : _utmRequestData5.term) || 'term',
97
+ utm_content: ((_utmRequestData6 = utmRequestData) === null || _utmRequestData6 === void 0 ? void 0 : _utmRequestData6.content) || 'content',
98
+ gclid: ((_utmRequestData7 = utmRequestData) === null || _utmRequestData7 === void 0 ? void 0 : _utmRequestData7.gclid) || 'gclid',
99
+ msclkid: ((_utmRequestData8 = utmRequestData) === null || _utmRequestData8 === void 0 ? void 0 : _utmRequestData8.msclkid) || 'msclkid',
100
+ fbclid: ((_utmRequestData9 = utmRequestData) === null || _utmRequestData9 === void 0 ? void 0 : _utmRequestData9.fbclid) || 'fbclid',
101
+ ttclid: ((_utmRequestData0 = utmRequestData) === null || _utmRequestData0 === void 0 ? void 0 : _utmRequestData0.ttclid) || 'ttclid'
102
+ };
103
+ _this.openFloor = _this.openFloor.bind(_this);
104
+ _this.openCabinet = _this.openCabinet.bind(_this);
105
+ _this.openFinishing = _this.openFinishing.bind(_this);
106
+ _this.openAppliance = _this.openAppliance.bind(_this);
107
+ _this.toggleDoorStyle = _this.toggleDoorStyle.bind(_this);
108
+ _this.onReviewQuoteClicked = _this.onReviewQuoteClicked.bind(_this);
109
+ _this.closeFloorTB = _this.closeFloorTB.bind(_this);
110
+ _this.closeCabinetTB = _this.closeCabinetTB.bind(_this);
111
+ _this.closeFinishingTB = _this.closeFinishingTB.bind(_this);
112
+ _this.closeApplianceTB = _this.closeApplianceTB.bind(_this);
113
+ _this.setToolbar = _this.setToolbar.bind(_this);
114
+ _this.replaceCabinet = _this.replaceCabinet.bind(_this);
115
+ _this.setSubmitToSave = _this.setSubmitToSave.bind(_this);
116
+ _this.setSignOpen = _this.setSignOpen.bind(_this);
117
+ _this.setMyProjectsOpen = _this.setMyProjectsOpen.bind(_this);
118
+ _this.setMyProjectsToLogin = _this.setMyProjectsToLogin.bind(_this);
119
+ _this.setDownloadPopupVisible = _this.setDownloadPopupVisible.bind(_this);
120
+ _this.neverShowInput = /*#__PURE__*/React.createRef(null);
121
+ _this.setShowProperty = _this.setShowProperty.bind(_this);
122
+
123
+ // cache for viewer2D init so we don't allocate merges every render
124
+ _this._lastExtractedStateRef = null;
125
+ _this._cachedViewer2DKey = null;
126
+ _this._cachedExtractedState = null;
127
+ return _this;
128
+ }
129
+ _inherits(LiteKitchenConfigurator, _Component);
130
+ return _createClass(LiteKitchenConfigurator, [{
131
+ key: "setToolbar",
132
+ value: function setToolbar(toolBarKey) {
133
+ this.setState({
134
+ toolbar: toolBarKey
135
+ });
136
+ }
137
+ }, {
138
+ key: "setShowProperty",
139
+ value: function setShowProperty(value) {
140
+ this.setState({
141
+ isShowProperty: value
142
+ });
143
+ }
144
+ }, {
145
+ key: "setMyProjectsOpen",
146
+ value: function setMyProjectsOpen(value) {
147
+ this.setState({
148
+ myProjectsOpen: value
149
+ });
150
+ this.setState({
151
+ signOpen: false
152
+ });
153
+ this.setState({
154
+ wizardStepOpend: false
155
+ });
156
+ }
157
+ }, {
158
+ key: "setMyProjectsToLogin",
159
+ value: function setMyProjectsToLogin(value) {
160
+ this.setState({
161
+ myProjectsToLogin: value
162
+ });
163
+ }
164
+ }, {
165
+ key: "setDownloadPopupVisible",
166
+ value: function setDownloadPopupVisible(value) {
167
+ this.setState({
168
+ reviewQuotePopupOpened: false
169
+ });
170
+ this.setState({
171
+ savePopupVisible: false
172
+ });
173
+ this.setState({
174
+ quotePopupVisible: false
175
+ });
176
+ this.setState({
177
+ submitTosave: false
178
+ });
179
+ this.setState({
180
+ assistPopupVisible: false
181
+ });
182
+ this.setState({
183
+ newProjectPopupVisible: false
184
+ });
185
+ this.setState({
186
+ downloadPopupVisible: value
187
+ });
188
+ }
189
+ }, {
190
+ key: "setSubmitToSave",
191
+ value: function setSubmitToSave(value) {
192
+ this.setState({
193
+ submitTosave: value
194
+ });
195
+ }
196
+ }, {
197
+ key: "setSignOpen",
198
+ value: function setSignOpen(value) {
199
+ this.setState({
200
+ wizardStepOpend: false
201
+ });
202
+ this.setState({
203
+ myProjectsOpen: false
204
+ });
205
+ this.setState({
206
+ signOpen: value
207
+ });
208
+ }
209
+ }, {
210
+ key: "openFloor",
211
+ value: function openFloor() {
212
+ var _el$parentElement;
213
+ this.setState({
214
+ floorOpened: true
215
+ });
216
+ var el = document.getElementById('make_floorplan_inactive');
217
+ if (el !== null && el !== void 0 && (_el$parentElement = el.parentElement) !== null && _el$parentElement !== void 0 && _el$parentElement.parentElement) el.parentElement.parentElement.style.zIndex = 999;
218
+ }
219
+ }, {
220
+ key: "openCabinet",
221
+ value: function openCabinet() {
222
+ var _el$parentElement2;
223
+ this.setState({
224
+ cabinetOpened: true
225
+ });
226
+ var el = document.getElementById('add_cabinets_inactive');
227
+ if (el !== null && el !== void 0 && (_el$parentElement2 = el.parentElement) !== null && _el$parentElement2 !== void 0 && _el$parentElement2.parentElement) el.parentElement.parentElement.style.zIndex = 999;
228
+ }
229
+ }, {
230
+ key: "toggleDoorStyle",
231
+ value: function toggleDoorStyle(visible) {
232
+ var _el$parentElement3;
233
+ this.setState({
234
+ doorStyleOpen: visible
235
+ });
236
+ var el = document.getElementById('select_doorstyle_inactive');
237
+ if (el !== null && el !== void 0 && (_el$parentElement3 = el.parentElement) !== null && _el$parentElement3 !== void 0 && _el$parentElement3.parentElement) el.parentElement.parentElement.style.zIndex = visible ? 999 : 6;
238
+ }
239
+ }, {
240
+ key: "replaceCabinet",
241
+ value: function replaceCabinet(value) {
242
+ this.setState({
243
+ replaceCabinetFlag: value
244
+ });
245
+ }
246
+ }, {
247
+ key: "openAppliance",
248
+ value: function openAppliance() {
249
+ var _el$parentElement4;
250
+ this.setState({
251
+ applianceOpened: true
252
+ });
253
+ var el = document.getElementById('add_appliances_inactive');
254
+ if (el !== null && el !== void 0 && (_el$parentElement4 = el.parentElement) !== null && _el$parentElement4 !== void 0 && _el$parentElement4.parentElement) el.parentElement.parentElement.style.zIndex = 999;
255
+ }
256
+ }, {
257
+ key: "openFinishing",
258
+ value: function openFinishing() {
259
+ var _el$parentElement5;
260
+ this.setState({
261
+ finishingOpened: true
262
+ });
263
+ var el = document.getElementById('finishing_touches_inactive');
264
+ if (el !== null && el !== void 0 && (_el$parentElement5 = el.parentElement) !== null && _el$parentElement5 !== void 0 && _el$parentElement5.parentElement) el.parentElement.parentElement.style.zIndex = 999;
265
+ }
266
+ }, {
267
+ key: "onReviewQuoteClicked",
268
+ value: function onReviewQuoteClicked(visible) {
269
+ var _el$parentElement6;
270
+ this.setState({
271
+ reviewQuotePopupOpened: visible
272
+ });
273
+ var el = document.getElementById('review_quote_inactive');
274
+ if (el !== null && el !== void 0 && (_el$parentElement6 = el.parentElement) !== null && _el$parentElement6 !== void 0 && _el$parentElement6.parentElement) el.parentElement.parentElement.style.zIndex = visible ? 999 : 6;
275
+ }
276
+ }, {
277
+ key: "closeFloorTB",
278
+ value: function closeFloorTB() {
279
+ var _el$parentElement7;
280
+ this.setState({
281
+ floorOpened: false
282
+ });
283
+ var el = document.getElementById('make_floorplan_inactive');
284
+ if (el !== null && el !== void 0 && (_el$parentElement7 = el.parentElement) !== null && _el$parentElement7 !== void 0 && _el$parentElement7.parentElement) el.parentElement.parentElement.style.zIndex = 6;
285
+ }
286
+ }, {
287
+ key: "closeCabinetTB",
288
+ value: function closeCabinetTB() {
289
+ var _el$parentElement8;
290
+ this.setState({
291
+ cabinetOpened: false
292
+ });
293
+ var el = document.getElementById('add_cabinets_inactive');
294
+ if (el !== null && el !== void 0 && (_el$parentElement8 = el.parentElement) !== null && _el$parentElement8 !== void 0 && _el$parentElement8.parentElement) el.parentElement.parentElement.style.zIndex = 6;
295
+ }
296
+ }, {
297
+ key: "closeFinishingTB",
298
+ value: function closeFinishingTB() {
299
+ var _el$parentElement9;
300
+ this.setState({
301
+ finishingOpened: false
302
+ });
303
+ var el = document.getElementById('finishing_touches_inactive');
304
+ if (el !== null && el !== void 0 && (_el$parentElement9 = el.parentElement) !== null && _el$parentElement9 !== void 0 && _el$parentElement9.parentElement) el.parentElement.parentElement.style.zIndex = 6;
305
+ }
306
+ }, {
307
+ key: "closeApplianceTB",
308
+ value: function closeApplianceTB() {
309
+ var _el$parentElement0;
310
+ this.setState({
311
+ applianceOpened: false
312
+ });
313
+ var el = document.getElementById('add_appliances_inactive');
314
+ if (el !== null && el !== void 0 && (_el$parentElement0 = el.parentElement) !== null && _el$parentElement0 !== void 0 && _el$parentElement0.parentElement) el.parentElement.parentElement.style.zIndex = 6;
315
+ }
316
+ }, {
317
+ key: "componentDidMount",
318
+ value: function componentDidMount() {
319
+ window.forRedo = [];
320
+ }
321
+ }, {
322
+ key: "componentDidUpdate",
323
+ value: function componentDidUpdate(prevProps) {
324
+ var _extractedState$getIn;
325
+ var _this$props = this.props,
326
+ externalEvent = _this$props.externalEvent,
327
+ extractedState = _this$props.extractedState,
328
+ projectActions = _this$props.projectActions,
329
+ catalog = _this$props.catalog;
330
+
331
+ // same behavior: handle external event when it changes
332
+ if (prevProps.externalEvent !== externalEvent) {
333
+ handleExternalEvent(this.props);
334
+ }
335
+
336
+ // same behavior: init catalog until ready
337
+ var catalogReady = extractedState === null || extractedState === void 0 || (_extractedState$getIn = extractedState.getIn) === null || _extractedState$getIn === void 0 ? void 0 : _extractedState$getIn.call(extractedState, ['catalog', 'ready']);
338
+ if (!catalogReady) projectActions.initCatalog(catalog);
339
+ }
340
+ }, {
341
+ key: "isProjectEmpty",
342
+ value: function isProjectEmpty(scene) {
343
+ var layers = scene.layers,
344
+ selectedLayer = scene.selectedLayer;
345
+ var layer = layers.get(selectedLayer);
346
+ return layer.areas.size + layer.lines.size + layer.holes.size + layer.items.size === 0;
347
+ }
348
+ }, {
349
+ key: "getExtractedStateWithViewer2DInit",
350
+ value: function getExtractedStateWithViewer2DInit(extractedState, width, height) {
351
+ if (!extractedState) return extractedState;
352
+
353
+ // ✅ If the extractedState reference changed, drop cache immediately.
354
+ if (this._lastExtractedStateRef !== extractedState) {
355
+ this._lastExtractedStateRef = extractedState;
356
+ this._cachedViewer2DKey = null;
357
+ this._cachedExtractedState = null;
358
+ }
359
+ var _viewer2D = extractedState.getIn(['viewer2D']);
360
+ if (!_viewer2D || _viewer2D.size <= 0) return extractedState;
361
+ var v = _viewer2D.toJS();
362
+
363
+ // Only do the "center viewer2D if e/f are zero" logic.
364
+ // ✅ No need to build keys from unrelated parts of state.
365
+ if (v.e !== 0 || v.f !== 0) return extractedState;
366
+
367
+ // Build a cache key ONLY for this viewer2D-centering computation.
368
+ var cacheKey = "".concat(width, ":").concat(height, ":").concat(v.viewerWidth, ":").concat(v.viewerHeight, ":").concat(v.SVGWidth, ":").concat(v.SVGHeight);
369
+ if (this._cachedViewer2DKey === cacheKey && this._cachedExtractedState) {
370
+ return this._cachedExtractedState;
371
+ }
372
+ var centeredViewer2D = _viewer2D.merge({
373
+ e: v.viewerWidth / 2 - v.SVGWidth / 2,
374
+ f: v.viewerHeight / 2 - v.SVGHeight / 2,
375
+ a: 0.99,
376
+ d: 0.99
377
+ });
378
+ var merged = extractedState.merge({
379
+ viewer2D: centeredViewer2D
380
+ });
381
+ this._cachedViewer2DKey = cacheKey;
382
+ this._cachedExtractedState = merged;
383
+ return merged;
384
+ }
385
+ }, {
386
+ key: "render",
387
+ value: function render() {
388
+ var _this2 = this;
389
+ var _this$props2 = this.props,
390
+ width = _this$props2.width,
391
+ height = _this$props2.height,
392
+ extractedState = _this$props2.extractedState,
393
+ props = _objectWithoutProperties(_this$props2, _excluded);
394
+ var _this$state = this.state,
395
+ savePopupVisible = _this$state.savePopupVisible,
396
+ quotePopupVisible = _this$state.quotePopupVisible,
397
+ assistPopupVisible = _this$state.assistPopupVisible,
398
+ signOpen = _this$state.signOpen,
399
+ myProjectsOpen = _this$state.myProjectsOpen;
400
+ var contentW = width - toolbarW;
401
+ var contentH = height;
402
+ var extracted = this.getExtractedStateWithViewer2DInit(extractedState, width, height);
403
+ var ctxValue = _objectSpread(_objectSpread({}, objectsMap(actions, function (actionNamespace) {
404
+ return _this2.props[actionNamespace];
405
+ })), {}, {
406
+ translator: this.props.translator,
407
+ catalog: this.props.catalog
408
+ });
409
+ return /*#__PURE__*/React.createElement(AppContext.Provider, {
410
+ value: ctxValue
411
+ }, /*#__PURE__*/React.createElement("section", null, /*#__PURE__*/React.createElement("div", {
412
+ style: _objectSpread(_objectSpread({}, wrapperStyle), {}, {
413
+ height: height,
414
+ display: 'flex',
415
+ justifyContent: 'center',
416
+ position: 'relative'
417
+ })
418
+ }, /*#__PURE__*/React.createElement(Content, _extends({
419
+ width: contentW,
420
+ height: contentH,
421
+ catalog: this.props.catalog,
422
+ state: extracted,
423
+ toolBar: this.state.toolbar,
424
+ setToolbar: this.setToolbar,
425
+ replaceCabinet: this.replaceCabinet,
426
+ keyDownEnable: !savePopupVisible && !quotePopupVisible && !assistPopupVisible
427
+ }, props, {
428
+ onWheel: function onWheel(event) {
429
+ return event.preventDefault();
430
+ },
431
+ onInternalEvent: this.props.onInternalEvent
432
+ })), /*#__PURE__*/React.createElement(WarningItem, {
433
+ id: "warning_box_2d",
434
+ style: {
435
+ display: 'none'
436
+ }
437
+ }, /*#__PURE__*/React.createElement(SubCategoryItemImage, {
438
+ maskImage: "/assets/img/svg/3d_item_warning_info.svg",
439
+ style: {
440
+ backgroundColor: constants.BG_COLOR_1,
441
+ marginRight: 10,
442
+ height: 30,
443
+ width: 30
444
+ }
445
+ }), "This item is not available in the current door style. Replace it with another one."))));
446
+ }
447
+ }]);
448
+ }(Component);
449
+ LiteKitchenConfigurator.propTypes = {
450
+ translator: PropTypes.instanceOf(Translator),
451
+ catalog: PropTypes.instanceOf(Catalog),
452
+ allowProjectFileSupport: PropTypes.bool,
453
+ plugins: PropTypes.arrayOf(PropTypes.func),
454
+ autosaveKey: PropTypes.string,
455
+ autosaveDelay: PropTypes.number,
456
+ width: PropTypes.number.isRequired,
457
+ height: PropTypes.number.isRequired,
458
+ stateExtractor: PropTypes.func.isRequired,
459
+ configData: PropTypes.object,
460
+ onInternalEvent: PropTypes.func,
461
+ extractedState: PropTypes.object,
462
+ // ✅ injected by connect
463
+ externalEvent: PropTypes.object
464
+ };
465
+ LiteKitchenConfigurator.defaultProps = {
466
+ translator: new Translator(),
467
+ catalog: new Catalog(),
468
+ plugins: [],
469
+ allowProjectFileSupport: true,
470
+ softwareSignature: "LiteKitchenConfigurator ".concat(VERSION),
471
+ sidebarComponents: [],
472
+ footerbarComponents: [],
473
+ customContents: {},
474
+ configData: {}
475
+ };
476
+
477
+ // ✅ Only select the slice you actually use.
478
+ // This preserves behavior but massively reduces rerenders.
479
+ function mapStateToProps(reduxState, ownProps) {
480
+ var stateExtractor = ownProps.stateExtractor || function (s) {
481
+ return s;
482
+ };
483
+ var extractedState = stateExtractor(reduxState);
484
+ return {
485
+ extractedState: extractedState,
486
+ state: extractedState
487
+ };
488
+ }
489
+ function mapDispatchToProps(dispatch) {
490
+ return objectsMap(actions, function (actionNamespace) {
491
+ return bindActionCreators(actions[actionNamespace], dispatch);
492
+ });
493
+ }
494
+ export default connect(mapStateToProps, mapDispatchToProps)(LiteKitchenConfigurator);