kitchen-simulator 4.1.7-react-18 → 5.0.0-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 (662) hide show
  1. package/README.md +3 -0
  2. package/es/AppContext.js +1 -1
  3. package/es/LiteKitchenConfigurator.js +139 -103
  4. package/es/LiteRenderer.js +167 -127
  5. package/es/WorkSpace.js +854 -0
  6. package/es/assets/gltf/door_sliding.bin +0 -0
  7. package/es/assets/img/svg/bottombar/elevation.svg +12 -5
  8. package/es/catalog/catalog.js +21 -5
  9. package/es/catalog/factories/area-factory-3d.js +17 -17
  10. package/es/catalog/holes/window-clear/planner-element.js +2 -2
  11. package/es/catalog/properties/export.js +21 -0
  12. package/es/catalog/properties/property-checkbox.js +68 -0
  13. package/es/catalog/properties/property-color.js +39 -0
  14. package/es/catalog/properties/property-enum.js +50 -0
  15. package/es/catalog/properties/property-hidden.js +19 -0
  16. package/es/catalog/properties/property-lenght-measure.js +96 -0
  17. package/es/catalog/properties/property-length-measure.js +80 -0
  18. package/es/catalog/properties/property-length-measure_hole.js +96 -0
  19. package/es/catalog/properties/property-number.js +48 -0
  20. package/es/catalog/properties/property-read-only.js +26 -0
  21. package/es/catalog/properties/property-string.js +48 -0
  22. package/es/catalog/properties/property-toggle.js +39 -0
  23. package/es/catalog/properties/shared-property-style.js +14 -0
  24. package/es/catalog/utils/exporter.js +24 -11
  25. package/es/catalog/utils/item-loader.js +222 -213
  26. package/es/class/hole.js +0 -2
  27. package/es/class/item.js +89 -70
  28. package/es/class/layer.js +1 -1
  29. package/es/class/line.js +4 -8
  30. package/es/class/project.js +95 -80
  31. package/es/components/content.js +5 -92
  32. package/es/components/export.js +1 -1
  33. package/es/components/style/button.js +106 -0
  34. package/es/components/style/cancel-button.js +21 -0
  35. package/es/components/style/content-container.js +30 -0
  36. package/es/components/style/content-title.js +25 -0
  37. package/es/components/style/delete-button.js +24 -0
  38. package/es/components/style/export.js +28 -2
  39. package/es/components/style/form-block.js +20 -0
  40. package/es/components/style/form-color-input.js +26 -0
  41. package/es/components/style/form-label.js +22 -0
  42. package/es/components/style/form-number-input.js +52 -43
  43. package/es/components/style/form-number-input_2.js +238 -0
  44. package/es/components/style/form-select.js +19 -0
  45. package/es/components/style/form-slider.js +60 -0
  46. package/es/components/style/form-submit-button.js +25 -0
  47. package/es/components/style/form-text-input.js +69 -0
  48. package/es/components/viewer2d/grids/grid-streak.js +1 -1
  49. package/es/components/viewer2d/group.js +6 -10
  50. package/es/components/viewer2d/item.js +75 -272
  51. package/es/components/viewer2d/layer.js +1 -1
  52. package/es/components/viewer2d/line.js +19 -19
  53. package/es/components/viewer2d/ruler.js +5 -3
  54. package/es/components/viewer2d/rulerDist.js +8 -7
  55. package/es/components/viewer2d/rulerX.js +1 -2
  56. package/es/components/viewer2d/scene.js +44 -59
  57. package/es/components/viewer2d/utils.js +2 -2
  58. package/es/components/viewer2d/vertex.js +3 -2
  59. package/es/components/viewer2d/viewer2d.js +105 -131
  60. package/es/components/viewer3d/front3D.js +13 -1
  61. package/es/components/viewer3d/ruler-utils/scene3D.js +1 -1
  62. package/es/components/viewer3d/scene-creator.js +77 -39
  63. package/es/components/viewer3d/viewer3d-first-person.js +115 -119
  64. package/es/components/viewer3d/viewer3d.js +89 -127
  65. package/es/constants.js +7 -2
  66. package/es/index.html.ejs +264 -0
  67. package/es/index.js +589 -62
  68. package/es/models.js +13 -8
  69. package/es/plugins/SVGLoader.js +1414 -0
  70. package/es/plugins/console-debugger.js +34 -0
  71. package/es/plugins/export.js +7 -0
  72. package/es/plugins/keyboard.js +110 -0
  73. package/es/reducers/project-reducer.js +3 -0
  74. package/es/reducers/viewer2d-reducer.js +3 -1
  75. package/es/reducers/viewer3d-reducer.js +3 -1
  76. package/es/utils/geometry.js +77 -119
  77. package/es/utils/helper.js +38 -1
  78. package/es/utils/isolate-event-handler.js +831 -611
  79. package/es/utils/molding.js +457 -11
  80. package/package.json +7 -11
  81. package/es/analytics/ga4.js +0 -188
  82. package/es/analytics/posthog.js +0 -60
  83. package/es/devLiteRenderer.js +0 -542
  84. package/es/mocks/appliancePayload.json +0 -27
  85. package/es/mocks/cabinetPayload.json +0 -1914
  86. package/es/mocks/cabinetPayload2.json +0 -76
  87. package/es/mocks/dataBundle2.json +0 -4
  88. package/es/mocks/distancePayload.json +0 -6
  89. package/es/mocks/doorStylePayload2.json +0 -84
  90. package/es/mocks/furnishingPayload.json +0 -23
  91. package/es/mocks/itemCDSPayload.json +0 -27
  92. package/es/mocks/lightingPayload.json +0 -23
  93. package/es/mocks/mockProps.json +0 -43
  94. package/es/mocks/mockProps2.json +0 -9
  95. package/es/mocks/moldingPayload.json +0 -19
  96. package/es/mocks/projectItemsCatalog.json +0 -133
  97. package/es/mocks/rectangleShape.json +0 -238
  98. package/es/mocks/replaceCabinetPayload.json +0 -81
  99. package/es/mocks/roomShapePayload.json +0 -5
  100. package/es/useAppContext.js +0 -8
  101. package/lib/@history.js +0 -11
  102. package/lib/AppContext.js +0 -11
  103. package/lib/LiteKitchenConfigurator.js +0 -468
  104. package/lib/LiteRenderer.js +0 -330
  105. package/lib/actions/area-actions.js +0 -21
  106. package/lib/actions/export.js +0 -40
  107. package/lib/actions/groups-actions.js +0 -107
  108. package/lib/actions/holes-actions.js +0 -140
  109. package/lib/actions/items-actions.js +0 -367
  110. package/lib/actions/lines-actions.js +0 -98
  111. package/lib/actions/project-actions.js +0 -350
  112. package/lib/actions/scene-actions.js +0 -43
  113. package/lib/actions/vertices-actions.js +0 -35
  114. package/lib/actions/viewer2d-actions.js +0 -73
  115. package/lib/actions/viewer3d-actions.js +0 -32
  116. package/lib/analytics/ga4.js +0 -194
  117. package/lib/analytics/posthog.js +0 -68
  118. package/lib/assets/brown_photostudio_02_1k.hdr +0 -0
  119. package/lib/assets/fonts/Rene Bieder Milliard Black Italic.woff +0 -0
  120. package/lib/assets/fonts/Rene Bieder Milliard Black.woff +0 -0
  121. package/lib/assets/fonts/Rene Bieder Milliard Bold Italic.woff +0 -0
  122. package/lib/assets/fonts/Rene Bieder Milliard Bold.woff +0 -0
  123. package/lib/assets/fonts/Rene Bieder Milliard Book Italic.woff +0 -0
  124. package/lib/assets/fonts/Rene Bieder Milliard Book.woff +0 -0
  125. package/lib/assets/fonts/Rene Bieder Milliard ExtraBold Italic.woff +0 -0
  126. package/lib/assets/fonts/Rene Bieder Milliard ExtraBold.woff +0 -0
  127. package/lib/assets/fonts/Rene Bieder Milliard ExtraLight Italic.woff +0 -0
  128. package/lib/assets/fonts/Rene Bieder Milliard ExtraLight.woff +0 -0
  129. package/lib/assets/fonts/Rene Bieder Milliard Hairline Italic.woff +0 -0
  130. package/lib/assets/fonts/Rene Bieder Milliard Hairline.woff +0 -0
  131. package/lib/assets/fonts/Rene Bieder Milliard Heavy Italic.woff +0 -0
  132. package/lib/assets/fonts/Rene Bieder Milliard Heavy.woff +0 -0
  133. package/lib/assets/fonts/Rene Bieder Milliard Light Italic.woff +0 -0
  134. package/lib/assets/fonts/Rene Bieder Milliard Light.woff +0 -0
  135. package/lib/assets/fonts/Rene Bieder Milliard Medium Italic.woff +0 -0
  136. package/lib/assets/fonts/Rene Bieder Milliard Medium.woff +0 -0
  137. package/lib/assets/fonts/Rene Bieder Milliard SemiBold Italic.woff +0 -0
  138. package/lib/assets/fonts/Rene Bieder Milliard SemiBold.woff +0 -0
  139. package/lib/assets/fonts/Rene Bieder Milliard Thin Italic.woff +0 -0
  140. package/lib/assets/fonts/Rene Bieder Milliard Thin.woff +0 -0
  141. package/lib/assets/fonts/style.css +0 -177
  142. package/lib/assets/gltf/door_closet.bin +0 -0
  143. package/lib/assets/gltf/door_closet.fbx +0 -0
  144. package/lib/assets/gltf/door_closet.gltf +0 -1
  145. package/lib/assets/gltf/door_exterior.bin +0 -0
  146. package/lib/assets/gltf/door_exterior.fbx +0 -0
  147. package/lib/assets/gltf/door_exterior.gltf +0 -1
  148. package/lib/assets/gltf/door_interior.bin +0 -0
  149. package/lib/assets/gltf/door_interior.fbx +0 -0
  150. package/lib/assets/gltf/door_interior.gltf +0 -1
  151. package/lib/assets/gltf/door_sliding.fbx +0 -0
  152. package/lib/assets/gltf/door_sliding.gltf +0 -1
  153. package/lib/assets/gltf/doorway_framed.bin +0 -0
  154. package/lib/assets/gltf/doorway_framed.fbx +0 -0
  155. package/lib/assets/gltf/doorway_framed.gltf +0 -1
  156. package/lib/assets/gltf/window_clear.bin +0 -0
  157. package/lib/assets/gltf/window_clear.fbx +0 -0
  158. package/lib/assets/gltf/window_clear.gltf +0 -1
  159. package/lib/assets/gltf/window_cross.bin +0 -0
  160. package/lib/assets/gltf/window_cross.fbx +0 -0
  161. package/lib/assets/gltf/window_cross.gltf +0 -1
  162. package/lib/assets/gltf/window_double_hung.bin +0 -0
  163. package/lib/assets/gltf/window_double_hung.fbx +0 -0
  164. package/lib/assets/gltf/window_double_hung.gltf +0 -1
  165. package/lib/assets/gltf/window_vertical.bin +0 -0
  166. package/lib/assets/gltf/window_vertical.fbx +0 -0
  167. package/lib/assets/gltf/window_vertical.gltf +0 -1
  168. package/lib/assets/img/TKC_thumbnail.png +0 -0
  169. package/lib/assets/img/Toggle.png +0 -0
  170. package/lib/assets/img/loading/loading.gif +0 -0
  171. package/lib/assets/img/loading/loading_1.svg +0 -11
  172. package/lib/assets/img/loading_large.gif +0 -0
  173. package/lib/assets/img/png/door/closet.png +0 -0
  174. package/lib/assets/img/png/door/doorwaysframed.png +0 -0
  175. package/lib/assets/img/png/door/doorwaysframeles.png +0 -0
  176. package/lib/assets/img/png/door/doorwaysframeless.png +0 -0
  177. package/lib/assets/img/png/door/exterior.png +0 -0
  178. package/lib/assets/img/png/door/interior.png +0 -0
  179. package/lib/assets/img/png/door/sliding.png +0 -0
  180. package/lib/assets/img/png/helper/outcome.png +0 -0
  181. package/lib/assets/img/png/helper/video_preview_3d.png +0 -0
  182. package/lib/assets/img/png/helper/video_preview_start.png +0 -0
  183. package/lib/assets/img/project_img.png +0 -0
  184. package/lib/assets/img/rta/rta_logo_box_blue.jpg +0 -0
  185. package/lib/assets/img/rta/rta_logo_box_blue_ico.jpg +0 -0
  186. package/lib/assets/img/rta/rta_logo_box_blue_ico.svg +0 -55
  187. package/lib/assets/img/rta/rta_logo_box_darkGray.jpg +0 -0
  188. package/lib/assets/img/rta/rta_logo_box_lightblue.png +0 -0
  189. package/lib/assets/img/rta/rta_logo_box_lightmaroon.png +0 -0
  190. package/lib/assets/img/rta/rta_logo_box_maroon.png +0 -0
  191. package/lib/assets/img/rta/rta_logo_box_white.png +0 -0
  192. package/lib/assets/img/rta_menu.png +0 -0
  193. package/lib/assets/img/step2.jpg +0 -0
  194. package/lib/assets/img/step3.jpg +0 -0
  195. package/lib/assets/img/step4.jpg +0 -0
  196. package/lib/assets/img/step5.jpg +0 -0
  197. package/lib/assets/img/step6.jpg +0 -0
  198. package/lib/assets/img/step7.jpg +0 -0
  199. package/lib/assets/img/step8.jpg +0 -0
  200. package/lib/assets/img/svg/2d_delete_object.svg +0 -33
  201. package/lib/assets/img/svg/2d_delete_object1.svg +0 -33
  202. package/lib/assets/img/svg/2d_lock_object.svg +0 -33
  203. package/lib/assets/img/svg/3d_item_move.svg +0 -106
  204. package/lib/assets/img/svg/3d_item_rotation.svg +0 -76
  205. package/lib/assets/img/svg/3d_item_warning_edit.svg +0 -77
  206. package/lib/assets/img/svg/3d_item_warning_info.svg +0 -81
  207. package/lib/assets/img/svg/accessories.svg +0 -4
  208. package/lib/assets/img/svg/angle_icon.svg +0 -39
  209. package/lib/assets/img/svg/blank_div.svg +0 -14
  210. package/lib/assets/img/svg/bottombar/2d3d_button.svg +0 -3
  211. package/lib/assets/img/svg/bottombar/2d3d_button_active.svg +0 -3
  212. package/lib/assets/img/svg/bottombar/2d3d_toggle.svg +0 -4
  213. package/lib/assets/img/svg/bottombar/2d3d_toggle_active.svg +0 -4
  214. package/lib/assets/img/svg/bottombar/arrow-down.svg +0 -3
  215. package/lib/assets/img/svg/bottombar/arrow-left.svg +0 -3
  216. package/lib/assets/img/svg/bottombar/arrow-minus.svg +0 -3
  217. package/lib/assets/img/svg/bottombar/arrow-plus.svg +0 -11
  218. package/lib/assets/img/svg/bottombar/arrow-right.svg +0 -3
  219. package/lib/assets/img/svg/bottombar/arrow-up.svg +0 -3
  220. package/lib/assets/img/svg/bottombar/collapse.svg +0 -3
  221. package/lib/assets/img/svg/bottombar/elevation-back.svg +0 -6
  222. package/lib/assets/img/svg/bottombar/elevation-front.svg +0 -6
  223. package/lib/assets/img/svg/bottombar/elevation-left.svg +0 -6
  224. package/lib/assets/img/svg/bottombar/elevation-right.svg +0 -7
  225. package/lib/assets/img/svg/bottombar/elevation.svg +0 -6
  226. package/lib/assets/img/svg/bottombar/expand.svg +0 -3
  227. package/lib/assets/img/svg/bottombar/help.svg +0 -72
  228. package/lib/assets/img/svg/bottombar/incm_toggle.svg +0 -39
  229. package/lib/assets/img/svg/bottombar/pan_1.svg +0 -57
  230. package/lib/assets/img/svg/bottombar/pan_2.svg +0 -27
  231. package/lib/assets/img/svg/bottombar/pan_3.svg +0 -27
  232. package/lib/assets/img/svg/bottombar/pan_4.svg +0 -27
  233. package/lib/assets/img/svg/bottombar/pan_5.svg +0 -27
  234. package/lib/assets/img/svg/bottombar/settings.svg +0 -23
  235. package/lib/assets/img/svg/bottombar/spin-down.svg +0 -76
  236. package/lib/assets/img/svg/bottombar/spin-left.svg +0 -75
  237. package/lib/assets/img/svg/bottombar/spin-right.svg +0 -75
  238. package/lib/assets/img/svg/bottombar/spin-up.svg +0 -76
  239. package/lib/assets/img/svg/bottombar/spin_1.svg +0 -48
  240. package/lib/assets/img/svg/bottombar/spin_2.svg +0 -31
  241. package/lib/assets/img/svg/bottombar/spin_3.svg +0 -31
  242. package/lib/assets/img/svg/bottombar/spin_4.svg +0 -31
  243. package/lib/assets/img/svg/bottombar/spin_5.svg +0 -31
  244. package/lib/assets/img/svg/bottombar/zoomin.svg +0 -29
  245. package/lib/assets/img/svg/bottombar/zoomout.svg +0 -26
  246. package/lib/assets/img/svg/check.svg +0 -10
  247. package/lib/assets/img/svg/close.svg +0 -11
  248. package/lib/assets/img/svg/color/Black.svg +0 -3
  249. package/lib/assets/img/svg/color/Blue.svg +0 -3
  250. package/lib/assets/img/svg/color/Brown.svg +0 -9
  251. package/lib/assets/img/svg/color/Cream.svg +0 -3
  252. package/lib/assets/img/svg/color/Dark.svg +0 -9
  253. package/lib/assets/img/svg/color/Gray.svg +0 -3
  254. package/lib/assets/img/svg/color/Green.svg +0 -3
  255. package/lib/assets/img/svg/color/Light.svg +0 -9
  256. package/lib/assets/img/svg/color/Medium.svg +0 -9
  257. package/lib/assets/img/svg/color/Unfinished.svg +0 -9
  258. package/lib/assets/img/svg/color/White.svg +0 -3
  259. package/lib/assets/img/svg/color/White.svg.bak +0 -3
  260. package/lib/assets/img/svg/color/stone2.jpg +0 -0
  261. package/lib/assets/img/svg/color/wood2.jpg +0 -0
  262. package/lib/assets/img/svg/copy.svg +0 -11
  263. package/lib/assets/img/svg/delete.svg +0 -3
  264. package/lib/assets/img/svg/detail.svg +0 -77
  265. package/lib/assets/img/svg/disclaimer/background.svg +0 -758
  266. package/lib/assets/img/svg/disclaimer/logo-dots.svg +0 -11
  267. package/lib/assets/img/svg/door/Closet.svg +0 -11
  268. package/lib/assets/img/svg/door/Exterior.svg +0 -5
  269. package/lib/assets/img/svg/door/Framed_dorway.svg +0 -5
  270. package/lib/assets/img/svg/door/Frameless_dorway.svg +0 -5
  271. package/lib/assets/img/svg/door/Interior.svg +0 -7
  272. package/lib/assets/img/svg/door/Sliding.svg +0 -5
  273. package/lib/assets/img/svg/doors_closet.svg +0 -47
  274. package/lib/assets/img/svg/doors_exterior.svg +0 -25
  275. package/lib/assets/img/svg/doors_interior.svg +0 -29
  276. package/lib/assets/img/svg/doors_patio.svg +0 -26
  277. package/lib/assets/img/svg/duplicate.svg +0 -11
  278. package/lib/assets/img/svg/duplicate_object_left.svg +0 -32
  279. package/lib/assets/img/svg/duplicate_object_right.svg +0 -32
  280. package/lib/assets/img/svg/filtersActive.svg +0 -19
  281. package/lib/assets/img/svg/firstsetting/L.svg +0 -3
  282. package/lib/assets/img/svg/firstsetting/L2.svg +0 -3
  283. package/lib/assets/img/svg/firstsetting/Open.svg +0 -3
  284. package/lib/assets/img/svg/firstsetting/Square.svg +0 -3
  285. package/lib/assets/img/svg/firstsetting/bar-active.svg +0 -9
  286. package/lib/assets/img/svg/firstsetting/bar-normal.svg +0 -3
  287. package/lib/assets/img/svg/firstsetting/bullet-current.svg +0 -3
  288. package/lib/assets/img/svg/firstsetting/bullet-done.svg +0 -3
  289. package/lib/assets/img/svg/firstsetting/bullet-not-done.svg +0 -3
  290. package/lib/assets/img/svg/firstsetting/check-active.svg +0 -3
  291. package/lib/assets/img/svg/firstsetting/check-normal.svg +0 -3
  292. package/lib/assets/img/svg/firstsetting/pencil.svg +0 -11
  293. package/lib/assets/img/svg/green_checkmark.svg +0 -27
  294. package/lib/assets/img/svg/headerbar/assist.svg +0 -3
  295. package/lib/assets/img/svg/headerbar/cart.svg +0 -3
  296. package/lib/assets/img/svg/headerbar/check.svg +0 -10
  297. package/lib/assets/img/svg/headerbar/consult_designer.svg +0 -45
  298. package/lib/assets/img/svg/headerbar/edit_name.svg +0 -26
  299. package/lib/assets/img/svg/headerbar/file-dollar.svg +0 -13
  300. package/lib/assets/img/svg/headerbar/hamburger_menu.svg +0 -32
  301. package/lib/assets/img/svg/headerbar/plus.svg +0 -11
  302. package/lib/assets/img/svg/headerbar/review_quote.svg +0 -44
  303. package/lib/assets/img/svg/headerbar/ruler-measure.svg +0 -11
  304. package/lib/assets/img/svg/headerbar/save.svg +0 -3
  305. package/lib/assets/img/svg/headerbar/setting.svg +0 -75
  306. package/lib/assets/img/svg/help/check.svg +0 -10
  307. package/lib/assets/img/svg/help/search.svg +0 -76
  308. package/lib/assets/img/svg/intro/1-start-with-floorplan-whole.svg +0 -27
  309. package/lib/assets/img/svg/intro/1-start-with-floorplan.svg +0 -26
  310. package/lib/assets/img/svg/intro/2-start-from-scratch-whole.svg +0 -28
  311. package/lib/assets/img/svg/intro/2-start-from-scratch.svg +0 -27
  312. package/lib/assets/img/svg/intro/3-retrieve-project-whole.svg +0 -19
  313. package/lib/assets/img/svg/intro/3-retrieve-project.svg +0 -18
  314. package/lib/assets/img/svg/invert.svg +0 -127
  315. package/lib/assets/img/svg/lefttoolbar/appliance-active.svg +0 -13
  316. package/lib/assets/img/svg/lefttoolbar/appliance.svg +0 -13
  317. package/lib/assets/img/svg/lefttoolbar/cabinet-active.svg +0 -10
  318. package/lib/assets/img/svg/lefttoolbar/cabinet-category.svg +0 -3
  319. package/lib/assets/img/svg/lefttoolbar/cabinet-one.svg +0 -3
  320. package/lib/assets/img/svg/lefttoolbar/cabinet.svg +0 -10
  321. package/lib/assets/img/svg/lefttoolbar/disigner_assistance.svg +0 -89
  322. package/lib/assets/img/svg/lefttoolbar/door-style-active.svg +0 -20
  323. package/lib/assets/img/svg/lefttoolbar/door-style.svg +0 -20
  324. package/lib/assets/img/svg/lefttoolbar/door.svg +0 -12
  325. package/lib/assets/img/svg/lefttoolbar/error_icon.svg +0 -81
  326. package/lib/assets/img/svg/lefttoolbar/finishing-active.svg +0 -13
  327. package/lib/assets/img/svg/lefttoolbar/finishing.svg +0 -13
  328. package/lib/assets/img/svg/lefttoolbar/reviewforquote-active.svg +0 -86
  329. package/lib/assets/img/svg/lefttoolbar/reviewforquote.svg +0 -12
  330. package/lib/assets/img/svg/lefttoolbar/room-shape-L.svg +0 -3
  331. package/lib/assets/img/svg/lefttoolbar/room-shape-active.svg +0 -18
  332. package/lib/assets/img/svg/lefttoolbar/room-shape-custom.svg +0 -12
  333. package/lib/assets/img/svg/lefttoolbar/room-shape-irregular.svg +0 -3
  334. package/lib/assets/img/svg/lefttoolbar/room-shape-open.svg +0 -3
  335. package/lib/assets/img/svg/lefttoolbar/room-shape-square.svg +0 -3
  336. package/lib/assets/img/svg/lefttoolbar/room-shape.svg +0 -18
  337. package/lib/assets/img/svg/lefttoolbar/search.svg +0 -76
  338. package/lib/assets/img/svg/lefttoolbar/view_more.svg +0 -86
  339. package/lib/assets/img/svg/lefttoolbar/warning_icon.svg +0 -81
  340. package/lib/assets/img/svg/lefttoolbar/window.svg +0 -12
  341. package/lib/assets/img/svg/logo.svg +0 -11
  342. package/lib/assets/img/svg/logo_with_text.svg +0 -25
  343. package/lib/assets/img/svg/menubar/login.svg +0 -84
  344. package/lib/assets/img/svg/menubar/my_projects.svg +0 -85
  345. package/lib/assets/img/svg/menubar/new_project.svg +0 -110
  346. package/lib/assets/img/svg/menubar/save_project.svg +0 -84
  347. package/lib/assets/img/svg/options.svg +0 -3
  348. package/lib/assets/img/svg/positioning.svg +0 -3
  349. package/lib/assets/img/svg/rotate.png +0 -0
  350. package/lib/assets/img/svg/rotate.svg +0 -17
  351. package/lib/assets/img/svg/rotate_object_clockwise.svg +0 -26
  352. package/lib/assets/img/svg/rotate_object_counterclockwise.svg +0 -26
  353. package/lib/assets/img/svg/toggleFilters.svg +0 -19
  354. package/lib/assets/img/svg/toolbar/add_appliances_active.svg +0 -64
  355. package/lib/assets/img/svg/toolbar/add_appliances_inactive.svg +0 -52
  356. package/lib/assets/img/svg/toolbar/add_button.svg +0 -36
  357. package/lib/assets/img/svg/toolbar/add_cabinets_active.svg +0 -59
  358. package/lib/assets/img/svg/toolbar/add_cabinets_inactive.svg +0 -49
  359. package/lib/assets/img/svg/toolbar/add_items_doors.svg +0 -25
  360. package/lib/assets/img/svg/toolbar/add_items_doorways.svg +0 -24
  361. package/lib/assets/img/svg/toolbar/add_items_refrigerator.svg +0 -32
  362. package/lib/assets/img/svg/toolbar/add_items_windows.svg +0 -28
  363. package/lib/assets/img/svg/toolbar/apply_button.svg +0 -38
  364. package/lib/assets/img/svg/toolbar/arrow-plus.svg +0 -11
  365. package/lib/assets/img/svg/toolbar/backsplash.svg +0 -8
  366. package/lib/assets/img/svg/toolbar/cancel_button.svg +0 -37
  367. package/lib/assets/img/svg/toolbar/consult_a_designer_button.svg +0 -47
  368. package/lib/assets/img/svg/toolbar/countertop.svg +0 -7
  369. package/lib/assets/img/svg/toolbar/dcm.png +0 -0
  370. package/lib/assets/img/svg/toolbar/dcm_off.svg +0 -12
  371. package/lib/assets/img/svg/toolbar/dcm_on.svg +0 -474
  372. package/lib/assets/img/svg/toolbar/delete_button.svg +0 -37
  373. package/lib/assets/img/svg/toolbar/download.svg +0 -77
  374. package/lib/assets/img/svg/toolbar/draw_custom_floor.svg +0 -31
  375. package/lib/assets/img/svg/toolbar/edit_button.svg +0 -75
  376. package/lib/assets/img/svg/toolbar/email_quote_button.svg +0 -44
  377. package/lib/assets/img/svg/toolbar/fbm.png +0 -0
  378. package/lib/assets/img/svg/toolbar/finishing_touches_active.svg +0 -54
  379. package/lib/assets/img/svg/toolbar/finishing_touches_inactive.svg +0 -42
  380. package/lib/assets/img/svg/toolbar/floorstyle.svg +0 -9
  381. package/lib/assets/img/svg/toolbar/fmb.png +0 -0
  382. package/lib/assets/img/svg/toolbar/fmb_off.svg +0 -12
  383. package/lib/assets/img/svg/toolbar/fmb_on.svg +0 -489
  384. package/lib/assets/img/svg/toolbar/furnishings_icon.svg +0 -6
  385. package/lib/assets/img/svg/toolbar/get_started_button.svg +0 -41
  386. package/lib/assets/img/svg/toolbar/handles.svg +0 -5
  387. package/lib/assets/img/svg/toolbar/lighting.svg +0 -7
  388. package/lib/assets/img/svg/toolbar/lrm.png +0 -0
  389. package/lib/assets/img/svg/toolbar/lrm_off.svg +0 -12
  390. package/lib/assets/img/svg/toolbar/lrm_on.svg +0 -470
  391. package/lib/assets/img/svg/toolbar/make_floorplan_active.svg +0 -66
  392. package/lib/assets/img/svg/toolbar/make_floorplan_inactive.svg +0 -52
  393. package/lib/assets/img/svg/toolbar/predefined_room_l_shaped.svg +0 -20
  394. package/lib/assets/img/svg/toolbar/predefined_room_layout.svg +0 -20
  395. package/lib/assets/img/svg/toolbar/predefined_room_long_narrow.svg +0 -20
  396. package/lib/assets/img/svg/toolbar/predefined_room_open_l_shape.svg +0 -20
  397. package/lib/assets/img/svg/toolbar/predefined_room_open_pentagon.svg +0 -20
  398. package/lib/assets/img/svg/toolbar/predefined_room_open_rectangle.svg +0 -20
  399. package/lib/assets/img/svg/toolbar/predefined_room_open_rectangle_2.svg +0 -20
  400. package/lib/assets/img/svg/toolbar/predefined_room_pentagon.svg +0 -20
  401. package/lib/assets/img/svg/toolbar/predefined_room_rectangle.svg +0 -20
  402. package/lib/assets/img/svg/toolbar/predefined_room_rectangle_with_alcove.svg +0 -20
  403. package/lib/assets/img/svg/toolbar/redo_button.svg +0 -75
  404. package/lib/assets/img/svg/toolbar/redo_button1.svg +0 -75
  405. package/lib/assets/img/svg/toolbar/review_quote_active.svg +0 -14
  406. package/lib/assets/img/svg/toolbar/review_quote_inactive.svg +0 -44
  407. package/lib/assets/img/svg/toolbar/save_project_button.svg +0 -44
  408. package/lib/assets/img/svg/toolbar/select_doorstyle_active.svg +0 -67
  409. package/lib/assets/img/svg/toolbar/select_doorstyle_inactive.svg +0 -57
  410. package/lib/assets/img/svg/toolbar/shopping-cart.svg +0 -13
  411. package/lib/assets/img/svg/toolbar/style_change_button.svg +0 -47
  412. package/lib/assets/img/svg/toolbar/take_picture.svg +0 -75
  413. package/lib/assets/img/svg/toolbar/undo_button.svg +0 -76
  414. package/lib/assets/img/svg/toolbar/undo_button1.svg +0 -76
  415. package/lib/assets/img/svg/toolbar/use_button.svg +0 -37
  416. package/lib/assets/img/svg/toolbar/wall_color_icon.svg +0 -6
  417. package/lib/assets/img/svg/topbar/edit_active.svg +0 -10
  418. package/lib/assets/img/svg/topbar/edit_inactive.svg +0 -10
  419. package/lib/assets/img/svg/topbar/redo_active.svg +0 -42
  420. package/lib/assets/img/svg/topbar/redo_inactive.svg +0 -23
  421. package/lib/assets/img/svg/topbar/select_all_active.svg +0 -50
  422. package/lib/assets/img/svg/topbar/select_all_inactive.svg +0 -32
  423. package/lib/assets/img/svg/topbar/take_picture_active.svg +0 -51
  424. package/lib/assets/img/svg/topbar/take_picture_inactive.svg +0 -26
  425. package/lib/assets/img/svg/topbar/undo_active.svg +0 -42
  426. package/lib/assets/img/svg/topbar/undo_inactive.svg +0 -23
  427. package/lib/assets/img/svg/warning_info_2d.svg +0 -81
  428. package/lib/assets/img/svg/window/Clear.svg +0 -3
  429. package/lib/assets/img/svg/window/Cross.svg +0 -5
  430. package/lib/assets/img/svg/window/Double_hung.svg +0 -4
  431. package/lib/assets/img/svg/window/Vertical.svg +0 -4
  432. package/lib/assets/img/svg/windows_clear.svg +0 -23
  433. package/lib/assets/img/svg/windows_cross.svg +0 -28
  434. package/lib/assets/img/svg/windows_double_hung.svg +0 -24
  435. package/lib/assets/img/svg/windows_vertical.svg +0 -24
  436. package/lib/assets/img/svg/wizardstep/Custom.svg +0 -3
  437. package/lib/assets/img/svg/wizardstep/Dashed_line.svg +0 -3
  438. package/lib/assets/img/svg/wizardstep/L.svg +0 -3
  439. package/lib/assets/img/svg/wizardstep/L2.svg +0 -3
  440. package/lib/assets/img/svg/wizardstep/Open.svg +0 -3
  441. package/lib/assets/img/svg/wizardstep/Square.svg +0 -3
  442. package/lib/assets/img/svg/wizardstep/bar-active.svg +0 -9
  443. package/lib/assets/img/svg/wizardstep/bar-normal.svg +0 -3
  444. package/lib/assets/img/svg/wizardstep/bullet-current.svg +0 -3
  445. package/lib/assets/img/svg/wizardstep/bullet-done.svg +0 -3
  446. package/lib/assets/img/svg/wizardstep/bullet-not-done.svg +0 -3
  447. package/lib/assets/img/svg/wizardstep/check-active.svg +0 -3
  448. package/lib/assets/img/svg/wizardstep/check-normal.svg +0 -3
  449. package/lib/assets/img/svg/wizardstep/detail_view.svg +0 -87
  450. package/lib/assets/img/svg/wizardstep/pencil.svg +0 -11
  451. package/lib/assets/img/svg/wizardstep/tile_view.svg +0 -95
  452. package/lib/assets/img/texture/glass.jpg +0 -0
  453. package/lib/assets/img/texture/steel.jpg +0 -0
  454. package/lib/assets/img/texture/white1px.jpg +0 -0
  455. package/lib/assets/img/texture/wood.jpg +0 -0
  456. package/lib/assets/model/DCM.bin +0 -0
  457. package/lib/assets/model/DCM.fbx +0 -0
  458. package/lib/assets/model/DCM.gltf +0 -1
  459. package/lib/assets/model/FBM.bin +0 -0
  460. package/lib/assets/model/FBM.fbx +0 -0
  461. package/lib/assets/model/FBM.gltf +0 -1
  462. package/lib/assets/model/LRM.bin +0 -0
  463. package/lib/assets/model/LRM.fbx +0 -0
  464. package/lib/assets/model/LRM.gltf +0 -1
  465. package/lib/assets/rtastore_logo.png +0 -0
  466. package/lib/catalog/areas/area/planner-element.js +0 -53
  467. package/lib/catalog/areas/area/textures/ceramic-tile.jpg +0 -0
  468. package/lib/catalog/areas/area/textures/grass.jpg +0 -0
  469. package/lib/catalog/areas/area/textures/parquet.jpg +0 -0
  470. package/lib/catalog/areas/area/textures/strand-porcelain.jpg +0 -0
  471. package/lib/catalog/areas/area/textures/tile1.jpg +0 -0
  472. package/lib/catalog/back.png +0 -0
  473. package/lib/catalog/catalog.js +0 -256
  474. package/lib/catalog/doors.png +0 -0
  475. package/lib/catalog/doorways.png +0 -0
  476. package/lib/catalog/envMap/nx.hdr +0 -0
  477. package/lib/catalog/envMap/ny.hdr +0 -0
  478. package/lib/catalog/envMap/nz.hdr +0 -0
  479. package/lib/catalog/envMap/px.hdr +0 -0
  480. package/lib/catalog/envMap/py.hdr +0 -0
  481. package/lib/catalog/envMap/pz.hdr +0 -0
  482. package/lib/catalog/export.js +0 -1
  483. package/lib/catalog/factories/area-factory-3d.js +0 -191
  484. package/lib/catalog/factories/area-factory.js +0 -88
  485. package/lib/catalog/factories/export.js +0 -25
  486. package/lib/catalog/factories/wall-factory-3d.js +0 -212
  487. package/lib/catalog/factories/wall-factory.js +0 -279
  488. package/lib/catalog/holes/door-closet/planner-element.js +0 -232
  489. package/lib/catalog/holes/door-double/door_double.png +0 -0
  490. package/lib/catalog/holes/door-double/planner-element.js +0 -325
  491. package/lib/catalog/holes/door-exterior/planner-element.js +0 -225
  492. package/lib/catalog/holes/door-interior/planner-element.js +0 -237
  493. package/lib/catalog/holes/door-panic/panicDoor.png +0 -0
  494. package/lib/catalog/holes/door-panic/planner-element.js +0 -513
  495. package/lib/catalog/holes/door-panic-double/panicDoorDouble.png +0 -0
  496. package/lib/catalog/holes/door-panic-double/planner-element.js +0 -473
  497. package/lib/catalog/holes/door-sliding/planner-element.js +0 -235
  498. package/lib/catalog/holes/doorway-framed/planner-element.js +0 -155
  499. package/lib/catalog/holes/doorway-frameless/planner-element.js +0 -114
  500. package/lib/catalog/holes/export.js +0 -97
  501. package/lib/catalog/holes/gate/gate.jpg +0 -0
  502. package/lib/catalog/holes/window-clear/planner-element.js +0 -176
  503. package/lib/catalog/holes/window-clear/texture.png +0 -0
  504. package/lib/catalog/holes/window-cross/planner-element.js +0 -175
  505. package/lib/catalog/holes/window-cross/texture.png +0 -0
  506. package/lib/catalog/holes/window-double-hung/planner-element.js +0 -313
  507. package/lib/catalog/holes/window-double-hung/texture.png +0 -0
  508. package/lib/catalog/holes/window-vertical/planner-element.js +0 -286
  509. package/lib/catalog/holes/window-vertical/texture.png +0 -0
  510. package/lib/catalog/lines/wall/planner-element.js +0 -87
  511. package/lib/catalog/lines/wall/textures/bricks-normal.jpg +0 -0
  512. package/lib/catalog/lines/wall/textures/bricks-normal2.jpg +0 -0
  513. package/lib/catalog/lines/wall/textures/bricks.jpg +0 -0
  514. package/lib/catalog/lines/wall/textures/bricks2.jpg +0 -0
  515. package/lib/catalog/lines/wall/textures/bricks3.jpg +0 -0
  516. package/lib/catalog/lines/wall/textures/morden-normal.jpg +0 -0
  517. package/lib/catalog/lines/wall/textures/morden.jpg +0 -0
  518. package/lib/catalog/lines/wall/textures/painted-normal.jpg +0 -0
  519. package/lib/catalog/lines/wall/textures/painted.jpg +0 -0
  520. package/lib/catalog/lines/wall/textures/plaster-normal.jpg +0 -0
  521. package/lib/catalog/lines/wall/textures/plaster.jpg +0 -0
  522. package/lib/catalog/lines/wall/wall.png +0 -0
  523. package/lib/catalog/molding/molding-dcm/planner-element.js +0 -33
  524. package/lib/catalog/molding/molding-dcm/texture.png +0 -0
  525. package/lib/catalog/molding/molding-fbm/planner-element.js +0 -33
  526. package/lib/catalog/molding/molding-fbm/texture.png +0 -0
  527. package/lib/catalog/molding/molding-lrm/planner-element.js +0 -33
  528. package/lib/catalog/molding/molding-lrm/texture.png +0 -0
  529. package/lib/catalog/utils/FuseUtils.js +0 -87
  530. package/lib/catalog/utils/exporter.js +0 -156
  531. package/lib/catalog/utils/geom-utils.js +0 -205
  532. package/lib/catalog/utils/item-loader.js +0 -1613
  533. package/lib/catalog/utils/load-obj.js +0 -99
  534. package/lib/catalog/utils/mtl-loader.js +0 -366
  535. package/lib/catalog/utils/obj-loader.js +0 -486
  536. package/lib/catalog/windows.png +0 -0
  537. package/lib/class/FuseUtils.js +0 -87
  538. package/lib/class/area.js +0 -148
  539. package/lib/class/export.js +0 -96
  540. package/lib/class/group.js +0 -438
  541. package/lib/class/guide.js +0 -64
  542. package/lib/class/hole.js +0 -932
  543. package/lib/class/item.js +0 -1866
  544. package/lib/class/layer.js +0 -670
  545. package/lib/class/line.js +0 -1242
  546. package/lib/class/project.js +0 -931
  547. package/lib/class/vertex.js +0 -205
  548. package/lib/components/content.js +0 -233
  549. package/lib/components/export.js +0 -27
  550. package/lib/components/style/export.js +0 -17
  551. package/lib/components/style/form-number-input.js +0 -192
  552. package/lib/components/viewer2d/area.js +0 -89
  553. package/lib/components/viewer2d/export.js +0 -121
  554. package/lib/components/viewer2d/grids/grid-horizontal-streak.js +0 -44
  555. package/lib/components/viewer2d/grids/grid-streak.js +0 -44
  556. package/lib/components/viewer2d/grids/grid-vertical-streak.js +0 -44
  557. package/lib/components/viewer2d/grids/grids.js +0 -40
  558. package/lib/components/viewer2d/group.js +0 -62
  559. package/lib/components/viewer2d/item.js +0 -449
  560. package/lib/components/viewer2d/layer.js +0 -172
  561. package/lib/components/viewer2d/line.js +0 -1007
  562. package/lib/components/viewer2d/ruler.js +0 -87
  563. package/lib/components/viewer2d/rulerDist.js +0 -123
  564. package/lib/components/viewer2d/rulerX.js +0 -152
  565. package/lib/components/viewer2d/rulerY.js +0 -153
  566. package/lib/components/viewer2d/scene.js +0 -132
  567. package/lib/components/viewer2d/snap.js +0 -84
  568. package/lib/components/viewer2d/state.js +0 -83
  569. package/lib/components/viewer2d/utils.js +0 -207
  570. package/lib/components/viewer2d/vertex.js +0 -75
  571. package/lib/components/viewer2d/viewer2d.js +0 -1509
  572. package/lib/components/viewer3d/camera-controls-module/camera-controls.module.js +0 -2591
  573. package/lib/components/viewer3d/dcm.js +0 -408
  574. package/lib/components/viewer3d/fbm.js +0 -421
  575. package/lib/components/viewer3d/front3D.js +0 -60
  576. package/lib/components/viewer3d/grid-creator.js +0 -35
  577. package/lib/components/viewer3d/grids/grid-horizontal-streak.js +0 -45
  578. package/lib/components/viewer3d/grids/grid-streak.js +0 -36
  579. package/lib/components/viewer3d/grids/grid-vertical-streak.js +0 -45
  580. package/lib/components/viewer3d/libs/first-person-controls.js +0 -74
  581. package/lib/components/viewer3d/libs/helvetiker_regular.typeface.js +0 -1287
  582. package/lib/components/viewer3d/libs/mtl-loader.js +0 -366
  583. package/lib/components/viewer3d/libs/obj-loader.js +0 -471
  584. package/lib/components/viewer3d/libs/orbit-controls.js +0 -706
  585. package/lib/components/viewer3d/libs/pointer-lock-controls.js +0 -53
  586. package/lib/components/viewer3d/lrm.js +0 -312
  587. package/lib/components/viewer3d/model.js +0 -714
  588. package/lib/components/viewer3d/pointer-lock-navigation.js +0 -122
  589. package/lib/components/viewer3d/ruler-utils/itemRect.js +0 -69
  590. package/lib/components/viewer3d/ruler-utils/layer3D.js +0 -503
  591. package/lib/components/viewer3d/ruler-utils/ruler3D.js +0 -232
  592. package/lib/components/viewer3d/ruler-utils/scene3D.js +0 -67
  593. package/lib/components/viewer3d/ruler-utils/state3D.js +0 -26
  594. package/lib/components/viewer3d/scene-creator.js +0 -3652
  595. package/lib/components/viewer3d/three-memory-cleaner.js +0 -60
  596. package/lib/components/viewer3d/viewer3d-first-person.js +0 -322
  597. package/lib/components/viewer3d/viewer3d.js +0 -2693
  598. package/lib/constants.js +0 -773
  599. package/lib/devLiteRenderer.js +0 -546
  600. package/lib/index.js +0 -108
  601. package/lib/mocks/appliancePayload.json +0 -27
  602. package/lib/mocks/cabinetPayload.json +0 -1914
  603. package/lib/mocks/cabinetPayload2.json +0 -76
  604. package/lib/mocks/dataBundle2.json +0 -4
  605. package/lib/mocks/distancePayload.json +0 -6
  606. package/lib/mocks/doorStylePayload2.json +0 -84
  607. package/lib/mocks/furnishingPayload.json +0 -23
  608. package/lib/mocks/itemCDSPayload.json +0 -27
  609. package/lib/mocks/lightingPayload.json +0 -23
  610. package/lib/mocks/mockProps.json +0 -43
  611. package/lib/mocks/mockProps2.json +0 -9
  612. package/lib/mocks/moldingPayload.json +0 -19
  613. package/lib/mocks/projectItemsCatalog.json +0 -133
  614. package/lib/mocks/rectangleShape.json +0 -238
  615. package/lib/mocks/replaceCabinetPayload.json +0 -81
  616. package/lib/mocks/roomShapePayload.json +0 -5
  617. package/lib/models.js +0 -514
  618. package/lib/reducers/areas-reducer.js +0 -19
  619. package/lib/reducers/export.js +0 -97
  620. package/lib/reducers/groups-reducer.js +0 -45
  621. package/lib/reducers/holes-reducer.js +0 -69
  622. package/lib/reducers/items-reducer.js +0 -147
  623. package/lib/reducers/lines-reducer.js +0 -52
  624. package/lib/reducers/project-reducer.js +0 -140
  625. package/lib/reducers/reducer.js +0 -26
  626. package/lib/reducers/scene-reducer.js +0 -35
  627. package/lib/reducers/user-reducer.js +0 -48
  628. package/lib/reducers/vertices-reducer.js +0 -26
  629. package/lib/reducers/viewer2d-reducer.js +0 -82
  630. package/lib/reducers/viewer3d-reducer.js +0 -63
  631. package/lib/shared-style.js +0 -72
  632. package/lib/translator/en.js +0 -111
  633. package/lib/translator/it.js +0 -86
  634. package/lib/translator/ru.js +0 -86
  635. package/lib/translator/translator.js +0 -87
  636. package/lib/useAppContext.js +0 -16
  637. package/lib/utils/browser.js +0 -40
  638. package/lib/utils/convert-units-lite.js +0 -35
  639. package/lib/utils/email-validator.js +0 -10
  640. package/lib/utils/export.js +0 -56
  641. package/lib/utils/geometry.js +0 -2751
  642. package/lib/utils/get-edges-of-subgraphs.js +0 -33
  643. package/lib/utils/graph-cycles.js +0 -239
  644. package/lib/utils/graph-inner-cycles.js +0 -54
  645. package/lib/utils/graph.js +0 -153
  646. package/lib/utils/helper.js +0 -425
  647. package/lib/utils/history.js +0 -36
  648. package/lib/utils/id-broker.js +0 -22
  649. package/lib/utils/isolate-event-handler.js +0 -1409
  650. package/lib/utils/logger.js +0 -14
  651. package/lib/utils/math.js +0 -57
  652. package/lib/utils/molding.js +0 -895
  653. package/lib/utils/name-generator.js +0 -21
  654. package/lib/utils/objects-utils.js +0 -62
  655. package/lib/utils/phone-validator.js +0 -10
  656. package/lib/utils/process-black-list.js +0 -22
  657. package/lib/utils/react-if.js +0 -25
  658. package/lib/utils/snap-scene.js +0 -101
  659. package/lib/utils/snap.js +0 -245
  660. package/lib/utils/summarizeCart.js +0 -30
  661. package/lib/utils/threeCSG.es6.js +0 -504
  662. package/lib/version.js +0 -7
package/README.md CHANGED
@@ -44,12 +44,15 @@ You need to check **webpack.config.js** to change the API server.
44
44
  Webpack is used as the module bundler. The source code is in the **src** folder.
45
45
 
46
46
  entry: {
47
+ // app: './src/renderer.jsx', // For production build WITH API
47
48
  app: './src/devLiteRenderer.jsx', // For development of LiteRenderer
48
49
  vendor: VENDORS_LIBRARIES
49
50
  },
50
51
 
51
52
  - **index.html**: The main HTML file.
52
53
 
54
+ - **[renderer.jsx](src/renderer.jsx)**: The main JavaScript file that bootstraps the React application. WTH API CALLS
55
+
53
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
54
57
  - **[LiteRenderer.js](src/LiteRenderer.js)**: The Lite React component that uses mock data and creates the store / catalog etc
55
58
  - [LiteKitchenConfigurator.jsx](src/LiteKitchenConfigurator.jsx)
package/es/AppContext.js CHANGED
@@ -1,3 +1,3 @@
1
1
  import React from 'react';
2
- var AppContext = /*#__PURE__*/React.createContext(null);
2
+ var AppContext = /*#__PURE__*/React.createContext({});
3
3
  export default AppContext;
@@ -6,12 +6,15 @@ import _createClass from "@babel/runtime/helpers/esm/createClass";
6
6
  import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
7
7
  import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
8
8
  import _inherits from "@babel/runtime/helpers/esm/inherits";
9
- var _excluded = ["width", "height", "state", "stateExtractor"];
9
+ import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
10
+ var _excluded = ["width", "height", "extractedState"];
11
+ var _templateObject, _templateObject2;
10
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; }
11
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; }
12
14
  function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
13
15
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
14
- import { convert } from "./utils/convert-units-lite";
16
+ // LiteKitchenConfigurator.jsx
17
+ import styled from 'styled-components';
15
18
  import PropTypes from 'prop-types';
16
19
  import React, { Component } from 'react';
17
20
  import { connect } from 'react-redux';
@@ -31,14 +34,16 @@ var wrapperStyle = {
31
34
  display: 'flex',
32
35
  flexFlow: 'row nowrap'
33
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
+ });
34
41
  var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
35
42
  function LiteKitchenConfigurator(props) {
36
43
  var _utmRequestData2, _utmRequestData3, _utmRequestData4, _utmRequestData5, _utmRequestData6, _utmRequestData7, _utmRequestData8, _utmRequestData9, _utmRequestData0;
37
44
  var _this;
38
45
  _classCallCheck(this, LiteKitchenConfigurator);
39
46
  _this = _callSuper(this, LiteKitchenConfigurator, [props]);
40
-
41
- // utm tracking
42
47
  var utmDetailParams = new URLSearchParams(_this.props.location && _this.props.location.search);
43
48
  var utmStrEncoded = utmDetailParams.get('details');
44
49
  var utmRequestData = null;
@@ -48,7 +53,7 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
48
53
  utmRequestData = JSON.parse(base64Decode(utmStrEncoded));
49
54
  utmRequestData = JSON.parse((_utmRequestData = utmRequestData) === null || _utmRequestData === void 0 ? void 0 : _utmRequestData.utm);
50
55
  } catch (e) {
51
- console.error('Cannot parse utm parameter: ', error);
56
+ console.error('Cannot parse utm parameter: ', e);
52
57
  utmRequestData = null;
53
58
  }
54
59
  }
@@ -67,7 +72,6 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
67
72
  myProjectsOpen: false,
68
73
  myProjectsToLogin: false,
69
74
  downloadPopupVisible: false,
70
- // For Toolbar Item
71
75
  toolbar: '',
72
76
  reviewQuotePopupOpened: false,
73
77
  floorOpened: false,
@@ -85,8 +89,6 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
85
89
  isSaved: false,
86
90
  isLeaving: false
87
91
  };
88
-
89
- // For UTM tracking
90
92
  _this.utm = {
91
93
  utm_source: ((_utmRequestData2 = utmRequestData) === null || _utmRequestData2 === void 0 ? void 0 : _utmRequestData2.source) || 'source',
92
94
  utm_medium: ((_utmRequestData3 = utmRequestData) === null || _utmRequestData3 === void 0 ? void 0 : _utmRequestData3.medium) || 'medium',
@@ -108,6 +110,7 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
108
110
  _this.closeCabinetTB = _this.closeCabinetTB.bind(_this);
109
111
  _this.closeFinishingTB = _this.closeFinishingTB.bind(_this);
110
112
  _this.closeApplianceTB = _this.closeApplianceTB.bind(_this);
113
+ _this.setToolbar = _this.setToolbar.bind(_this);
111
114
  _this.replaceCabinet = _this.replaceCabinet.bind(_this);
112
115
  _this.setSubmitToSave = _this.setSubmitToSave.bind(_this);
113
116
  _this.setSignOpen = _this.setSignOpen.bind(_this);
@@ -116,12 +119,22 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
116
119
  _this.setDownloadPopupVisible = _this.setDownloadPopupVisible.bind(_this);
117
120
  _this.neverShowInput = /*#__PURE__*/React.createRef(null);
118
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;
119
127
  return _this;
120
128
  }
121
-
122
- // Toolbar control functions
123
129
  _inherits(LiteKitchenConfigurator, _Component);
124
130
  return _createClass(LiteKitchenConfigurator, [{
131
+ key: "setToolbar",
132
+ value: function setToolbar(toolBarKey) {
133
+ this.setState({
134
+ toolbar: toolBarKey
135
+ });
136
+ }
137
+ }, {
125
138
  key: "setShowProperty",
126
139
  value: function setShowProperty(value) {
127
140
  this.setState({
@@ -196,26 +209,32 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
196
209
  }, {
197
210
  key: "openFloor",
198
211
  value: function openFloor() {
212
+ var _el$parentElement;
199
213
  this.setState({
200
214
  floorOpened: true
201
215
  });
202
- document.getElementById('make_floorplan_inactive').parentElement.parentElement.style.zIndex = 999;
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;
203
218
  }
204
219
  }, {
205
220
  key: "openCabinet",
206
221
  value: function openCabinet() {
222
+ var _el$parentElement2;
207
223
  this.setState({
208
224
  cabinetOpened: true
209
225
  });
210
- document.getElementById('add_cabinets_inactive').parentElement.parentElement.style.zIndex = 999;
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;
211
228
  }
212
229
  }, {
213
230
  key: "toggleDoorStyle",
214
231
  value: function toggleDoorStyle(visible) {
232
+ var _el$parentElement3;
215
233
  this.setState({
216
234
  doorStyleOpen: visible
217
235
  });
218
- document.getElementById('select_doorstyle_inactive').parentElement.parentElement.style.zIndex = visible ? 999 : 6;
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;
219
238
  }
220
239
  }, {
221
240
  key: "replaceCabinet",
@@ -227,70 +246,72 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
227
246
  }, {
228
247
  key: "openAppliance",
229
248
  value: function openAppliance() {
249
+ var _el$parentElement4;
230
250
  this.setState({
231
251
  applianceOpened: true
232
252
  });
233
- document.getElementById('add_appliances_inactive').parentElement.parentElement.style.zIndex = 999;
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;
234
255
  }
235
256
  }, {
236
257
  key: "openFinishing",
237
258
  value: function openFinishing() {
259
+ var _el$parentElement5;
238
260
  this.setState({
239
261
  finishingOpened: true
240
262
  });
241
- document.getElementById('finishing_touches_inactive').parentElement.parentElement.style.zIndex = 999;
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;
242
265
  }
243
266
  }, {
244
267
  key: "onReviewQuoteClicked",
245
268
  value: function onReviewQuoteClicked(visible) {
269
+ var _el$parentElement6;
246
270
  this.setState({
247
271
  reviewQuotePopupOpened: visible
248
272
  });
249
- document.getElementById('review_quote_inactive').parentElement.parentElement.style.zIndex = visible ? 999 : 6;
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;
250
275
  }
251
276
  }, {
252
277
  key: "closeFloorTB",
253
278
  value: function closeFloorTB() {
279
+ var _el$parentElement7;
254
280
  this.setState({
255
281
  floorOpened: false
256
282
  });
257
- document.getElementById('make_floorplan_inactive') && (document.getElementById('make_floorplan_inactive').parentElement.parentElement.style.zIndex = 6);
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;
258
285
  }
259
286
  }, {
260
287
  key: "closeCabinetTB",
261
288
  value: function closeCabinetTB() {
289
+ var _el$parentElement8;
262
290
  this.setState({
263
291
  cabinetOpened: false
264
292
  });
265
- document.getElementById('add_cabinets_inactive').parentElement.parentElement.style.zIndex = 6;
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;
266
295
  }
267
296
  }, {
268
297
  key: "closeFinishingTB",
269
298
  value: function closeFinishingTB() {
299
+ var _el$parentElement9;
270
300
  this.setState({
271
301
  finishingOpened: false
272
302
  });
273
- document.getElementById('finishing_touches_inactive').parentElement.parentElement.style.zIndex = 6;
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;
274
305
  }
275
306
  }, {
276
307
  key: "closeApplianceTB",
277
308
  value: function closeApplianceTB() {
309
+ var _el$parentElement0;
278
310
  this.setState({
279
311
  applianceOpened: false
280
312
  });
281
- document.getElementById('add_appliances_inactive').parentElement.parentElement.style.zIndex = 6;
282
- }
283
- }, {
284
- key: "closeDoorstyle",
285
- value: function closeDoorstyle() {
286
- this.setState({});
287
- document.getElementById('select_doorstyle_inactive').parentElement.parentElement.style.zIndex = 6;
288
- }
289
- }, {
290
- key: "closeReviewQuote",
291
- value: function closeReviewQuote() {
292
- this.setState({});
293
- document.getElementById('review_quote_inactive').parentElement.parentElement.style.zIndex = 6;
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;
294
315
  }
295
316
  }, {
296
317
  key: "componentDidMount",
@@ -300,28 +321,21 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
300
321
  }, {
301
322
  key: "componentDidUpdate",
302
323
  value: function componentDidUpdate(prevProps) {
324
+ var _extractedState$getIn;
303
325
  var _this$props = this.props,
304
- stateExtractor = _this$props.stateExtractor,
305
- state = _this$props.state,
326
+ externalEvent = _this$props.externalEvent,
327
+ extractedState = _this$props.extractedState,
306
328
  projectActions = _this$props.projectActions,
307
- catalog = _this$props.catalog,
308
- externalEvent = _this$props.externalEvent;
309
- var plannerState = stateExtractor(state);
310
- var catalogReady = plannerState.getIn(['catalog', 'ready']);
311
- if (!catalogReady) {
312
- projectActions.initCatalog(catalog);
313
- }
314
- if (prevProps.externalEvent !== externalEvent && externalEvent) {
315
- var _externalEvent$id, _externalEvent$payloa, _externalEvent$payloa2;
316
- var key = (_externalEvent$id = externalEvent.id) !== null && _externalEvent$id !== void 0 ? _externalEvent$id : JSON.stringify({
317
- type: externalEvent.type,
318
- payload: (_externalEvent$payloa = (_externalEvent$payloa2 = externalEvent.payload) === null || _externalEvent$payloa2 === void 0 ? void 0 : _externalEvent$payloa2.mode) !== null && _externalEvent$payloa !== void 0 ? _externalEvent$payloa : externalEvent.payload
319
- });
320
- if (key !== this.lastHandledExternalEventKey) {
321
- this.lastHandledExternalEventKey = key;
322
- handleExternalEvent(this.props);
323
- }
329
+ catalog = _this$props.catalog;
330
+
331
+ // same behavior: handle external event when it changes
332
+ if (prevProps.externalEvent !== externalEvent) {
333
+ handleExternalEvent(this.props);
324
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);
325
339
  }
326
340
  }, {
327
341
  key: "isProjectEmpty",
@@ -331,6 +345,43 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
331
345
  var layer = layers.get(selectedLayer);
332
346
  return layer.areas.size + layer.lines.size + layer.holes.size + layer.items.size === 0;
333
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
+ }
334
385
  }, {
335
386
  key: "render",
336
387
  value: function render() {
@@ -338,16 +389,8 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
338
389
  var _this$props2 = this.props,
339
390
  width = _this$props2.width,
340
391
  height = _this$props2.height,
341
- state = _this$props2.state,
342
- stateExtractor = _this$props2.stateExtractor,
392
+ extractedState = _this$props2.extractedState,
343
393
  props = _objectWithoutProperties(_this$props2, _excluded);
344
- var actionsFromProps = objectsMap(actions, function (ns) {
345
- return _this2.props[ns];
346
- });
347
- var appCtxValue = _objectSpread(_objectSpread({}, actionsFromProps), {}, {
348
- translator: this.props.translator,
349
- catalog: this.props.catalog
350
- });
351
394
  var _this$state = this.state,
352
395
  savePopupVisible = _this$state.savePopupVisible,
353
396
  quotePopupVisible = _this$state.quotePopupVisible,
@@ -355,42 +398,16 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
355
398
  signOpen = _this$state.signOpen,
356
399
  myProjectsOpen = _this$state.myProjectsOpen;
357
400
  var contentW = width - toolbarW;
358
- // let contentW = width - toolbarW - sidebarW;
359
- // let toolbarH = height - footerBarH;
360
- // let contentH = height - footerBarH;
361
- // let sidebarH = height - footerBarH;
362
- var toolbarH = height;
363
401
  var contentH = height;
364
- var sidebarH = height;
365
- var headerW = width;
366
- var headerH = 60;
367
- var extractedState = stateExtractor(state);
368
- var firstVisit = this.state.wizardStepOpend && this.isProjectEmpty(extractedState.scene);
369
- var allVisible = firstVisit || signOpen || myProjectsOpen;
370
- var _scene = extractedState.getIn(['scene']);
371
- var len = convert(_scene.width).from(_scene.unit).to('cm');
372
- var _viewer2D = extractedState.getIn(['viewer2D']);
373
- if (_viewer2D.size > 0) {
374
- var scaleX = width / len * 3;
375
- var scaleY = height / len * 3;
376
- var scale = scaleX > scaleY ? scaleY : scaleX;
377
- var _e = width - len * scale,
378
- _f = height - len * scale;
379
- var viewer = _viewer2D.toJS();
380
- if (viewer.e === 0 && viewer.f === 0) {
381
- _viewer2D = _viewer2D.merge({
382
- e: viewer.viewerWidth / 2 - viewer.SVGWidth / 2,
383
- f: viewer.viewerHeight / 2 - viewer.SVGHeight / 2,
384
- a: 0.99,
385
- d: 0.99
386
- });
387
- }
388
- }
389
- extractedState = extractedState.merge({
390
- viewer2D: _viewer2D
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
391
408
  });
392
409
  return /*#__PURE__*/React.createElement(AppContext.Provider, {
393
- value: appCtxValue
410
+ value: ctxValue
394
411
  }, /*#__PURE__*/React.createElement("section", null, /*#__PURE__*/React.createElement("div", {
395
412
  style: _objectSpread(_objectSpread({}, wrapperStyle), {}, {
396
413
  height: height,
@@ -402,8 +419,9 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
402
419
  width: contentW,
403
420
  height: contentH,
404
421
  catalog: this.props.catalog,
405
- state: extractedState,
422
+ state: extracted,
406
423
  toolBar: this.state.toolbar,
424
+ setToolbar: this.setToolbar,
407
425
  replaceCabinet: this.replaceCabinet,
408
426
  keyDownEnable: !savePopupVisible && !quotePopupVisible && !assistPopupVisible
409
427
  }, props, {
@@ -411,7 +429,20 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
411
429
  return event.preventDefault();
412
430
  },
413
431
  onInternalEvent: this.props.onInternalEvent
414
- })))));
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."))));
415
446
  }
416
447
  }]);
417
448
  }(Component);
@@ -425,12 +456,11 @@ LiteKitchenConfigurator.propTypes = {
425
456
  width: PropTypes.number.isRequired,
426
457
  height: PropTypes.number.isRequired,
427
458
  stateExtractor: PropTypes.func.isRequired,
428
- sidebarComponents: PropTypes.array,
429
- footerbarComponents: PropTypes.array,
430
- customContents: PropTypes.object,
431
- softwareSignature: PropTypes.string,
432
459
  configData: PropTypes.object,
433
- onInternalEvent: PropTypes.func
460
+ onInternalEvent: PropTypes.func,
461
+ extractedState: PropTypes.object,
462
+ // ✅ injected by connect
463
+ externalEvent: PropTypes.object
434
464
  };
435
465
  LiteKitchenConfigurator.defaultProps = {
436
466
  translator: new Translator(),
@@ -444,10 +474,16 @@ LiteKitchenConfigurator.defaultProps = {
444
474
  configData: {}
445
475
  };
446
476
 
447
- //redux connect
448
- function mapStateToProps(reduxState) {
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);
449
484
  return {
450
- state: reduxState
485
+ extractedState: extractedState,
486
+ state: extractedState
451
487
  };
452
488
  }
453
489
  function mapDispatchToProps(dispatch) {