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

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 (606) hide show
  1. package/README.md +1 -1
  2. package/package.json +22 -63
  3. package/src/KitchenConfiguratorApp.jsx +5 -5
  4. package/src/_KitchenConfigurator.jsx +578 -0
  5. package/src/actions/export.js +2 -5
  6. package/src/assets/Window.hdr +2100 -0
  7. package/src/assets/brown_photostudio_02_1k.hdr +0 -0
  8. package/src/assets/fonts/Rene Bieder Milliard Black Italic.woff +0 -0
  9. package/src/assets/fonts/Rene Bieder Milliard Black.woff +0 -0
  10. package/src/assets/fonts/Rene Bieder Milliard Bold Italic.woff +0 -0
  11. package/src/assets/fonts/Rene Bieder Milliard Bold.woff +0 -0
  12. package/src/assets/fonts/Rene Bieder Milliard Book Italic.woff +0 -0
  13. package/src/assets/fonts/Rene Bieder Milliard Book.woff +0 -0
  14. package/src/assets/fonts/Rene Bieder Milliard ExtraBold Italic.woff +0 -0
  15. package/src/assets/fonts/Rene Bieder Milliard ExtraBold.woff +0 -0
  16. package/src/assets/fonts/Rene Bieder Milliard ExtraLight Italic.woff +0 -0
  17. package/src/assets/fonts/Rene Bieder Milliard ExtraLight.woff +0 -0
  18. package/src/assets/fonts/Rene Bieder Milliard Hairline Italic.woff +0 -0
  19. package/src/assets/fonts/Rene Bieder Milliard Hairline.woff +0 -0
  20. package/src/assets/fonts/Rene Bieder Milliard Heavy Italic.woff +0 -0
  21. package/src/assets/fonts/Rene Bieder Milliard Heavy.woff +0 -0
  22. package/src/assets/fonts/Rene Bieder Milliard Light Italic.woff +0 -0
  23. package/src/assets/fonts/Rene Bieder Milliard Light.woff +0 -0
  24. package/src/assets/fonts/Rene Bieder Milliard Medium Italic.woff +0 -0
  25. package/src/assets/fonts/Rene Bieder Milliard Medium.woff +0 -0
  26. package/src/assets/fonts/Rene Bieder Milliard SemiBold Italic.woff +0 -0
  27. package/src/assets/fonts/Rene Bieder Milliard SemiBold.woff +0 -0
  28. package/src/assets/fonts/Rene Bieder Milliard Thin Italic.woff +0 -0
  29. package/src/assets/fonts/Rene Bieder Milliard Thin.woff +0 -0
  30. package/src/assets/fonts/style.css +177 -0
  31. package/src/assets/gltf/door_closet.bin +0 -0
  32. package/src/assets/gltf/door_closet.fbx +0 -0
  33. package/src/assets/gltf/door_closet.gltf +1 -0
  34. package/src/assets/gltf/door_exterior.bin +0 -0
  35. package/src/assets/gltf/door_exterior.fbx +0 -0
  36. package/src/assets/gltf/door_exterior.gltf +1 -0
  37. package/src/assets/gltf/door_interior.bin +0 -0
  38. package/src/assets/gltf/door_interior.fbx +0 -0
  39. package/src/assets/gltf/door_interior.gltf +1 -0
  40. package/src/assets/gltf/door_sliding.bin +0 -0
  41. package/src/assets/gltf/door_sliding.fbx +0 -0
  42. package/src/assets/gltf/door_sliding.gltf +1 -0
  43. package/src/assets/gltf/doorway_framed.bin +0 -0
  44. package/src/assets/gltf/doorway_framed.fbx +0 -0
  45. package/src/assets/gltf/doorway_framed.gltf +1 -0
  46. package/src/assets/gltf/window_clear.bin +0 -0
  47. package/src/assets/gltf/window_clear.fbx +0 -0
  48. package/src/assets/gltf/window_clear.gltf +1 -0
  49. package/src/assets/gltf/window_cross.bin +0 -0
  50. package/src/assets/gltf/window_cross.fbx +0 -0
  51. package/src/assets/gltf/window_cross.gltf +1 -0
  52. package/src/assets/gltf/window_double_hung.bin +0 -0
  53. package/src/assets/gltf/window_double_hung.fbx +0 -0
  54. package/src/assets/gltf/window_double_hung.gltf +1 -0
  55. package/src/assets/gltf/window_vertical.bin +0 -0
  56. package/src/assets/gltf/window_vertical.fbx +0 -0
  57. package/src/assets/gltf/window_vertical.gltf +1 -0
  58. package/src/assets/img/1.jpg +0 -0
  59. package/src/assets/img/TKC_thumbnail.png +0 -0
  60. package/src/assets/img/Toggle.png +0 -0
  61. package/src/assets/img/loading/loading.gif +0 -0
  62. package/src/assets/img/loading/loading_1.svg +11 -0
  63. package/src/assets/img/loading_large.gif +0 -0
  64. package/src/assets/img/png/door/closet.png +0 -0
  65. package/src/assets/img/png/door/doorwaysframed.png +0 -0
  66. package/src/assets/img/png/door/doorwaysframeles.png +0 -0
  67. package/src/assets/img/png/door/doorwaysframeless.png +0 -0
  68. package/src/assets/img/png/door/exterior.png +0 -0
  69. package/src/assets/img/png/door/interior.png +0 -0
  70. package/src/assets/img/png/door/sliding.png +0 -0
  71. package/src/assets/img/png/helper/outcome.png +0 -0
  72. package/src/assets/img/png/helper/video_preview_3d.png +0 -0
  73. package/src/assets/img/png/helper/video_preview_start.png +0 -0
  74. package/src/assets/img/project_img.png +0 -0
  75. package/src/assets/img/rta/rta_logo_box_blue.jpg +0 -0
  76. package/src/assets/img/rta/rta_logo_box_blue_ico.jpg +0 -0
  77. package/src/assets/img/rta/rta_logo_box_blue_ico.svg +55 -0
  78. package/src/assets/img/rta/rta_logo_box_darkGray.jpg +0 -0
  79. package/src/assets/img/rta/rta_logo_box_lightblue.png +0 -0
  80. package/src/assets/img/rta/rta_logo_box_lightmaroon.png +0 -0
  81. package/src/assets/img/rta/rta_logo_box_maroon.png +0 -0
  82. package/src/assets/img/rta/rta_logo_box_white.png +0 -0
  83. package/src/assets/img/rta_menu.png +0 -0
  84. package/src/assets/img/step2.jpg +0 -0
  85. package/src/assets/img/step3.jpg +0 -0
  86. package/src/assets/img/step4.jpg +0 -0
  87. package/src/assets/img/step5.jpg +0 -0
  88. package/src/assets/img/step6.jpg +0 -0
  89. package/src/assets/img/step7.jpg +0 -0
  90. package/src/assets/img/step8.jpg +0 -0
  91. package/src/assets/img/svg/2d_delete_object.svg +33 -0
  92. package/src/assets/img/svg/2d_delete_object1.svg +33 -0
  93. package/src/assets/img/svg/2d_lock_object.svg +33 -0
  94. package/src/assets/img/svg/3d_item_move.svg +106 -0
  95. package/src/assets/img/svg/3d_item_rotation.svg +76 -0
  96. package/src/assets/img/svg/3d_item_warning_edit.svg +77 -0
  97. package/src/assets/img/svg/3d_item_warning_info.svg +81 -0
  98. package/src/assets/img/svg/accessories.svg +4 -0
  99. package/src/assets/img/svg/angle_icon.svg +39 -0
  100. package/src/assets/img/svg/blank_div.svg +14 -0
  101. package/src/assets/img/svg/bottombar/2d3d_button.svg +3 -0
  102. package/src/assets/img/svg/bottombar/2d3d_button_active.svg +3 -0
  103. package/src/assets/img/svg/bottombar/2d3d_toggle.svg +4 -0
  104. package/src/assets/img/svg/bottombar/2d3d_toggle_active.svg +4 -0
  105. package/src/assets/img/svg/bottombar/arrow-down.svg +3 -0
  106. package/src/assets/img/svg/bottombar/arrow-left.svg +3 -0
  107. package/src/assets/img/svg/bottombar/arrow-minus.svg +3 -0
  108. package/src/assets/img/svg/bottombar/arrow-plus.svg +11 -0
  109. package/src/assets/img/svg/bottombar/arrow-right.svg +3 -0
  110. package/src/assets/img/svg/bottombar/arrow-up.svg +3 -0
  111. package/src/assets/img/svg/bottombar/collapse.svg +3 -0
  112. package/src/assets/img/svg/bottombar/elevation-back.svg +6 -0
  113. package/src/assets/img/svg/bottombar/elevation-front.svg +6 -0
  114. package/src/assets/img/svg/bottombar/elevation-left.svg +6 -0
  115. package/src/assets/img/svg/bottombar/elevation-right.svg +7 -0
  116. package/src/assets/img/svg/bottombar/elevation.svg +6 -0
  117. package/src/assets/img/svg/bottombar/expand.svg +3 -0
  118. package/src/assets/img/svg/bottombar/help.svg +72 -0
  119. package/src/assets/img/svg/bottombar/incm_toggle.svg +39 -0
  120. package/src/assets/img/svg/bottombar/pan_1.svg +57 -0
  121. package/src/assets/img/svg/bottombar/pan_2.svg +27 -0
  122. package/src/assets/img/svg/bottombar/pan_3.svg +27 -0
  123. package/src/assets/img/svg/bottombar/pan_4.svg +27 -0
  124. package/src/assets/img/svg/bottombar/pan_5.svg +27 -0
  125. package/src/assets/img/svg/bottombar/settings.svg +23 -0
  126. package/src/assets/img/svg/bottombar/spin-down.svg +76 -0
  127. package/src/assets/img/svg/bottombar/spin-left.svg +75 -0
  128. package/src/assets/img/svg/bottombar/spin-right.svg +75 -0
  129. package/src/assets/img/svg/bottombar/spin-up.svg +76 -0
  130. package/src/assets/img/svg/bottombar/spin_1.svg +48 -0
  131. package/src/assets/img/svg/bottombar/spin_2.svg +31 -0
  132. package/src/assets/img/svg/bottombar/spin_3.svg +31 -0
  133. package/src/assets/img/svg/bottombar/spin_4.svg +31 -0
  134. package/src/assets/img/svg/bottombar/spin_5.svg +31 -0
  135. package/src/assets/img/svg/bottombar/zoomin.svg +29 -0
  136. package/src/assets/img/svg/bottombar/zoomout.svg +26 -0
  137. package/src/assets/img/svg/check.svg +10 -0
  138. package/src/assets/img/svg/close.svg +11 -0
  139. package/src/assets/img/svg/color/Black.svg +3 -0
  140. package/src/assets/img/svg/color/Blue.svg +3 -0
  141. package/src/assets/img/svg/color/Brown.svg +9 -0
  142. package/src/assets/img/svg/color/Cream.svg +3 -0
  143. package/src/assets/img/svg/color/Dark.svg +9 -0
  144. package/src/assets/img/svg/color/Gray.svg +3 -0
  145. package/src/assets/img/svg/color/Green.svg +3 -0
  146. package/src/assets/img/svg/color/Light.svg +9 -0
  147. package/src/assets/img/svg/color/Medium.svg +9 -0
  148. package/src/assets/img/svg/color/Unfinished.svg +9 -0
  149. package/src/assets/img/svg/color/White.svg +3 -0
  150. package/src/assets/img/svg/color/White.svg.bak +3 -0
  151. package/src/assets/img/svg/color/stone2.jpg +0 -0
  152. package/src/assets/img/svg/color/wood2.jpg +0 -0
  153. package/src/assets/img/svg/copy.svg +11 -0
  154. package/src/assets/img/svg/delete.svg +3 -0
  155. package/src/assets/img/svg/detail.svg +77 -0
  156. package/src/assets/img/svg/door/Closet.svg +11 -0
  157. package/src/assets/img/svg/door/Exterior.svg +5 -0
  158. package/src/assets/img/svg/door/Framed_dorway.svg +5 -0
  159. package/src/assets/img/svg/door/Frameless_dorway.svg +5 -0
  160. package/src/assets/img/svg/door/Interior.svg +7 -0
  161. package/src/assets/img/svg/door/Sliding.svg +5 -0
  162. package/src/assets/img/svg/doors_closet.svg +47 -0
  163. package/src/assets/img/svg/doors_exterior.svg +25 -0
  164. package/src/assets/img/svg/doors_interior.svg +29 -0
  165. package/src/assets/img/svg/doors_patio.svg +26 -0
  166. package/src/assets/img/svg/duplicate.svg +11 -0
  167. package/src/assets/img/svg/duplicate_object_left.svg +32 -0
  168. package/src/assets/img/svg/duplicate_object_right.svg +32 -0
  169. package/src/assets/img/svg/filtersActive.svg +19 -0
  170. package/src/assets/img/svg/firstsetting/L.svg +3 -0
  171. package/src/assets/img/svg/firstsetting/L2.svg +3 -0
  172. package/src/assets/img/svg/firstsetting/Open.svg +3 -0
  173. package/src/assets/img/svg/firstsetting/Square.svg +3 -0
  174. package/src/assets/img/svg/firstsetting/bar-active.svg +9 -0
  175. package/src/assets/img/svg/firstsetting/bar-normal.svg +3 -0
  176. package/src/assets/img/svg/firstsetting/bullet-current.svg +3 -0
  177. package/src/assets/img/svg/firstsetting/bullet-done.svg +3 -0
  178. package/src/assets/img/svg/firstsetting/bullet-not-done.svg +3 -0
  179. package/src/assets/img/svg/firstsetting/check-active.svg +3 -0
  180. package/src/assets/img/svg/firstsetting/check-normal.svg +3 -0
  181. package/src/assets/img/svg/firstsetting/pencil.svg +11 -0
  182. package/src/assets/img/svg/green_checkmark.svg +27 -0
  183. package/src/assets/img/svg/headerbar/assist.svg +3 -0
  184. package/src/assets/img/svg/headerbar/cart.svg +3 -0
  185. package/src/assets/img/svg/headerbar/check.svg +10 -0
  186. package/src/assets/img/svg/headerbar/consult_designer.svg +45 -0
  187. package/src/assets/img/svg/headerbar/edit_name.svg +26 -0
  188. package/src/assets/img/svg/headerbar/file-dollar.svg +13 -0
  189. package/src/assets/img/svg/headerbar/hamburger_menu.svg +32 -0
  190. package/src/assets/img/svg/headerbar/plus.svg +11 -0
  191. package/src/assets/img/svg/headerbar/review_quote.svg +44 -0
  192. package/src/assets/img/svg/headerbar/ruler-measure.svg +11 -0
  193. package/src/assets/img/svg/headerbar/save.svg +3 -0
  194. package/src/assets/img/svg/headerbar/setting.svg +75 -0
  195. package/src/assets/img/svg/help/check.svg +10 -0
  196. package/src/assets/img/svg/help/search.svg +76 -0
  197. package/src/assets/img/svg/intro/1-start-with-floorplan-whole.svg +27 -0
  198. package/src/assets/img/svg/intro/1-start-with-floorplan.svg +26 -0
  199. package/src/assets/img/svg/intro/2-start-from-scratch-whole.svg +28 -0
  200. package/src/assets/img/svg/intro/2-start-from-scratch.svg +27 -0
  201. package/src/assets/img/svg/intro/3-retrieve-project-whole.svg +19 -0
  202. package/src/assets/img/svg/intro/3-retrieve-project.svg +18 -0
  203. package/src/assets/img/svg/invert.svg +127 -0
  204. package/src/assets/img/svg/lefttoolbar/appliance-active.svg +13 -0
  205. package/src/assets/img/svg/lefttoolbar/appliance.svg +13 -0
  206. package/src/assets/img/svg/lefttoolbar/cabinet-active.svg +10 -0
  207. package/src/assets/img/svg/lefttoolbar/cabinet-category.svg +3 -0
  208. package/src/assets/img/svg/lefttoolbar/cabinet-one.svg +3 -0
  209. package/src/assets/img/svg/lefttoolbar/cabinet.svg +10 -0
  210. package/src/assets/img/svg/lefttoolbar/disigner_assistance.svg +89 -0
  211. package/src/assets/img/svg/lefttoolbar/door-style-active.svg +20 -0
  212. package/src/assets/img/svg/lefttoolbar/door-style.svg +20 -0
  213. package/src/assets/img/svg/lefttoolbar/door.svg +12 -0
  214. package/src/assets/img/svg/lefttoolbar/error_icon.svg +81 -0
  215. package/src/assets/img/svg/lefttoolbar/finishing-active.svg +13 -0
  216. package/src/assets/img/svg/lefttoolbar/finishing.svg +13 -0
  217. package/src/assets/img/svg/lefttoolbar/reviewforquote-active.svg +86 -0
  218. package/src/assets/img/svg/lefttoolbar/reviewforquote.svg +12 -0
  219. package/src/assets/img/svg/lefttoolbar/room-shape-L.svg +3 -0
  220. package/src/assets/img/svg/lefttoolbar/room-shape-active.svg +18 -0
  221. package/src/assets/img/svg/lefttoolbar/room-shape-custom.svg +12 -0
  222. package/src/assets/img/svg/lefttoolbar/room-shape-irregular.svg +3 -0
  223. package/src/assets/img/svg/lefttoolbar/room-shape-open.svg +3 -0
  224. package/src/assets/img/svg/lefttoolbar/room-shape-square.svg +3 -0
  225. package/src/assets/img/svg/lefttoolbar/room-shape.svg +18 -0
  226. package/src/assets/img/svg/lefttoolbar/search.svg +76 -0
  227. package/src/assets/img/svg/lefttoolbar/view_more.svg +86 -0
  228. package/src/assets/img/svg/lefttoolbar/warning_icon.svg +81 -0
  229. package/src/assets/img/svg/lefttoolbar/window.svg +12 -0
  230. package/src/assets/img/svg/menubar/login.svg +84 -0
  231. package/src/assets/img/svg/menubar/my_projects.svg +85 -0
  232. package/src/assets/img/svg/menubar/new_project.svg +110 -0
  233. package/src/assets/img/svg/menubar/save_project.svg +84 -0
  234. package/src/assets/img/svg/options.svg +3 -0
  235. package/src/assets/img/svg/positioning.svg +3 -0
  236. package/src/assets/img/svg/rotate.png +0 -0
  237. package/src/assets/img/svg/rotate.svg +17 -0
  238. package/src/assets/img/svg/rotate_object_clockwise.svg +26 -0
  239. package/src/assets/img/svg/rotate_object_counterclockwise.svg +26 -0
  240. package/src/assets/img/svg/toggleFilters.svg +19 -0
  241. package/src/assets/img/svg/toolbar/add_appliances_active.svg +64 -0
  242. package/src/assets/img/svg/toolbar/add_appliances_inactive.svg +52 -0
  243. package/src/assets/img/svg/toolbar/add_button.svg +36 -0
  244. package/src/assets/img/svg/toolbar/add_cabinets_active.svg +59 -0
  245. package/src/assets/img/svg/toolbar/add_cabinets_inactive.svg +49 -0
  246. package/src/assets/img/svg/toolbar/add_items_doors.svg +25 -0
  247. package/src/assets/img/svg/toolbar/add_items_doorways.svg +24 -0
  248. package/src/assets/img/svg/toolbar/add_items_refrigerator.svg +32 -0
  249. package/src/assets/img/svg/toolbar/add_items_windows.svg +28 -0
  250. package/src/assets/img/svg/toolbar/apply_button.svg +38 -0
  251. package/src/assets/img/svg/toolbar/arrow-plus.svg +11 -0
  252. package/src/assets/img/svg/toolbar/backsplash.svg +8 -0
  253. package/src/assets/img/svg/toolbar/cancel_button.svg +37 -0
  254. package/src/assets/img/svg/toolbar/consult_a_designer_button.svg +47 -0
  255. package/src/assets/img/svg/toolbar/countertop.svg +7 -0
  256. package/src/assets/img/svg/toolbar/dcm.png +0 -0
  257. package/src/assets/img/svg/toolbar/dcm_off.svg +12 -0
  258. package/src/assets/img/svg/toolbar/dcm_on.svg +474 -0
  259. package/src/assets/img/svg/toolbar/delete_button.svg +37 -0
  260. package/src/assets/img/svg/toolbar/download.svg +77 -0
  261. package/src/assets/img/svg/toolbar/draw_custom_floor.svg +31 -0
  262. package/src/assets/img/svg/toolbar/edit_button.svg +75 -0
  263. package/src/assets/img/svg/toolbar/email_quote_button.svg +44 -0
  264. package/src/assets/img/svg/toolbar/fbm.png +0 -0
  265. package/src/assets/img/svg/toolbar/finishing_touches_active.svg +54 -0
  266. package/src/assets/img/svg/toolbar/finishing_touches_inactive.svg +42 -0
  267. package/src/assets/img/svg/toolbar/floorstyle.svg +9 -0
  268. package/src/assets/img/svg/toolbar/fmb.png +0 -0
  269. package/src/assets/img/svg/toolbar/fmb_off.svg +12 -0
  270. package/src/assets/img/svg/toolbar/fmb_on.svg +489 -0
  271. package/src/assets/img/svg/toolbar/furnishings_icon.svg +6 -0
  272. package/src/assets/img/svg/toolbar/get_started_button.svg +41 -0
  273. package/src/assets/img/svg/toolbar/handles.svg +5 -0
  274. package/src/assets/img/svg/toolbar/lighting.svg +7 -0
  275. package/src/assets/img/svg/toolbar/lrm.png +0 -0
  276. package/src/assets/img/svg/toolbar/lrm_off.svg +12 -0
  277. package/src/assets/img/svg/toolbar/lrm_on.svg +470 -0
  278. package/src/assets/img/svg/toolbar/make_floorplan_active.svg +66 -0
  279. package/src/assets/img/svg/toolbar/make_floorplan_inactive.svg +52 -0
  280. package/src/assets/img/svg/toolbar/predefined_room_l_shaped.svg +20 -0
  281. package/src/assets/img/svg/toolbar/predefined_room_layout.svg +20 -0
  282. package/src/assets/img/svg/toolbar/predefined_room_long_narrow.svg +20 -0
  283. package/src/assets/img/svg/toolbar/predefined_room_open_l_shape.svg +20 -0
  284. package/src/assets/img/svg/toolbar/predefined_room_open_pentagon.svg +20 -0
  285. package/src/assets/img/svg/toolbar/predefined_room_open_rectangle.svg +20 -0
  286. package/src/assets/img/svg/toolbar/predefined_room_open_rectangle_2.svg +20 -0
  287. package/src/assets/img/svg/toolbar/predefined_room_pentagon.svg +20 -0
  288. package/src/assets/img/svg/toolbar/predefined_room_rectangle.svg +20 -0
  289. package/src/assets/img/svg/toolbar/predefined_room_rectangle_with_alcove.svg +20 -0
  290. package/src/assets/img/svg/toolbar/redo_button.svg +75 -0
  291. package/src/assets/img/svg/toolbar/redo_button1.svg +75 -0
  292. package/src/assets/img/svg/toolbar/review_quote_active.svg +14 -0
  293. package/src/assets/img/svg/toolbar/review_quote_inactive.svg +44 -0
  294. package/src/assets/img/svg/toolbar/save_project_button.svg +44 -0
  295. package/src/assets/img/svg/toolbar/select_doorstyle_active.svg +67 -0
  296. package/src/assets/img/svg/toolbar/select_doorstyle_inactive.svg +57 -0
  297. package/src/assets/img/svg/toolbar/shopping-cart.svg +13 -0
  298. package/src/assets/img/svg/toolbar/style_change_button.svg +47 -0
  299. package/src/assets/img/svg/toolbar/take_picture.svg +75 -0
  300. package/src/assets/img/svg/toolbar/undo_button.svg +76 -0
  301. package/src/assets/img/svg/toolbar/undo_button1.svg +76 -0
  302. package/src/assets/img/svg/toolbar/use_button.svg +37 -0
  303. package/src/assets/img/svg/toolbar/wall_color_icon.svg +6 -0
  304. package/src/assets/img/svg/topbar/edit_active.svg +10 -0
  305. package/src/assets/img/svg/topbar/edit_inactive.svg +10 -0
  306. package/src/assets/img/svg/topbar/redo_active.svg +42 -0
  307. package/src/assets/img/svg/topbar/redo_inactive.svg +23 -0
  308. package/src/assets/img/svg/topbar/select_all_active.svg +50 -0
  309. package/src/assets/img/svg/topbar/select_all_inactive.svg +32 -0
  310. package/src/assets/img/svg/topbar/take_picture_active.svg +51 -0
  311. package/src/assets/img/svg/topbar/take_picture_inactive.svg +26 -0
  312. package/src/assets/img/svg/topbar/undo_active.svg +42 -0
  313. package/src/assets/img/svg/topbar/undo_inactive.svg +23 -0
  314. package/src/assets/img/svg/warning_info_2d.svg +81 -0
  315. package/src/assets/img/svg/window/Clear.svg +3 -0
  316. package/src/assets/img/svg/window/Cross.svg +5 -0
  317. package/src/assets/img/svg/window/Double_hung.svg +4 -0
  318. package/src/assets/img/svg/window/Vertical.svg +4 -0
  319. package/src/assets/img/svg/windows_clear.svg +23 -0
  320. package/src/assets/img/svg/windows_cross.svg +28 -0
  321. package/src/assets/img/svg/windows_double_hung.svg +24 -0
  322. package/src/assets/img/svg/windows_vertical.svg +24 -0
  323. package/src/assets/img/svg/wizardstep/Custom.svg +3 -0
  324. package/src/assets/img/svg/wizardstep/Dashed_line.svg +3 -0
  325. package/src/assets/img/svg/wizardstep/L.svg +3 -0
  326. package/src/assets/img/svg/wizardstep/L2.svg +3 -0
  327. package/src/assets/img/svg/wizardstep/Open.svg +3 -0
  328. package/src/assets/img/svg/wizardstep/Square.svg +3 -0
  329. package/src/assets/img/svg/wizardstep/bar-active.svg +9 -0
  330. package/src/assets/img/svg/wizardstep/bar-normal.svg +3 -0
  331. package/src/assets/img/svg/wizardstep/bullet-current.svg +3 -0
  332. package/src/assets/img/svg/wizardstep/bullet-done.svg +3 -0
  333. package/src/assets/img/svg/wizardstep/bullet-not-done.svg +3 -0
  334. package/src/assets/img/svg/wizardstep/check-active.svg +3 -0
  335. package/src/assets/img/svg/wizardstep/check-normal.svg +3 -0
  336. package/src/assets/img/svg/wizardstep/detail_view.svg +87 -0
  337. package/src/assets/img/svg/wizardstep/pencil.svg +11 -0
  338. package/src/assets/img/svg/wizardstep/tile_view.svg +95 -0
  339. package/src/assets/img/texture/glass.jpg +0 -0
  340. package/src/assets/img/texture/steel.jpg +0 -0
  341. package/src/assets/img/texture/white1px.jpg +0 -0
  342. package/src/assets/img/texture/wood.jpg +0 -0
  343. package/src/assets/model/DCM.bin +0 -0
  344. package/src/assets/model/DCM.fbx +0 -0
  345. package/src/assets/model/DCM.gltf +1 -0
  346. package/src/assets/model/FBM.bin +0 -0
  347. package/src/assets/model/FBM.fbx +0 -0
  348. package/src/assets/model/FBM.gltf +1 -0
  349. package/src/assets/model/LRM.bin +0 -0
  350. package/src/assets/model/LRM.fbx +0 -0
  351. package/src/assets/model/LRM.gltf +1 -0
  352. package/src/assets/rtastore_logo.png +0 -0
  353. package/src/catalog/areas/area/planner-element.jsx +1 -1
  354. package/src/catalog/factories/wall-factory-3d.js +11 -18
  355. package/src/catalog/holes/index.js +13 -0
  356. package/src/catalog/lines/wall/planner-element.jsx +1 -1
  357. package/src/catalog/mycatalog.js +26 -0
  358. package/src/catalog/properties/property-checkbox.jsx +64 -68
  359. package/src/catalog/properties/property-color.jsx +1 -1
  360. package/src/catalog/properties/property-enum.jsx +37 -40
  361. package/src/catalog/properties/property-hidden.jsx +1 -1
  362. package/src/catalog/properties/property-lenght-measure.jsx +2 -2
  363. package/src/catalog/properties/property-length-measure.jsx +37 -40
  364. package/src/catalog/properties/property-length-measure_hole.jsx +2 -2
  365. package/src/catalog/properties/property-number.jsx +1 -1
  366. package/src/catalog/properties/property-read-only.jsx +1 -1
  367. package/src/catalog/properties/property-string.jsx +1 -1
  368. package/src/catalog/properties/property-toggle.jsx +1 -1
  369. package/src/catalog/utils/exporter.js +1 -1
  370. package/src/catalog/utils/item-loader.jsx +1 -1
  371. package/src/class/item.js +1 -1
  372. package/src/components/content.jsx +1 -19
  373. package/src/components/export.js +2 -29
  374. package/src/components/style/button.jsx +1 -1
  375. package/src/components/style/export.js +24 -0
  376. package/src/components/style/form-number-input.jsx +3 -29
  377. package/src/components/style/form-select.jsx +2 -31
  378. package/src/components/style/form-text-input.jsx +20 -22
  379. package/src/components/viewer2d/area.jsx +2 -2
  380. package/src/components/viewer2d/grids/grid-horizontal-streak.jsx +2 -2
  381. package/src/components/viewer2d/grids/grid-streak.jsx +2 -2
  382. package/src/components/viewer2d/grids/grid-vertical-streak.jsx +2 -2
  383. package/src/components/viewer2d/grids/grids.jsx +1 -1
  384. package/src/components/viewer2d/group.jsx +1 -1
  385. package/src/components/viewer2d/item.jsx +3 -11
  386. package/src/components/viewer2d/layer.jsx +1 -1
  387. package/src/components/viewer2d/line.jsx +30 -33
  388. package/src/components/viewer2d/ruler.jsx +2 -3
  389. package/src/components/viewer2d/rulerDist.jsx +6 -6
  390. package/src/components/viewer2d/rulerX.jsx +1 -1
  391. package/src/components/viewer2d/rulerY.jsx +1 -1
  392. package/src/components/viewer2d/scene.jsx +1 -1
  393. package/src/components/viewer2d/snap.jsx +1 -1
  394. package/src/components/viewer2d/state.jsx +1 -1
  395. package/src/components/viewer2d/vertex.jsx +2 -2
  396. package/src/components/viewer2d/viewer2d.jsx +3 -3
  397. package/src/components/viewer3d/pointer-lock-navigation.js +1 -1
  398. package/src/components/viewer3d/ruler-utils/itemRect.jsx +91 -91
  399. package/src/components/viewer3d/ruler-utils/layer3D.jsx +528 -528
  400. package/src/components/viewer3d/ruler-utils/scene3D.jsx +85 -87
  401. package/src/components/viewer3d/scene-creator.js +1 -1
  402. package/src/components/viewer3d/viewer3d-first-person.js +2 -2
  403. package/src/components/viewer3d/{viewer3d.js → viewer3d.jsx} +3 -3
  404. package/src/constants.js +3 -0
  405. package/src/index.js +0 -2
  406. package/src/models.js +1 -1
  407. package/src/reducers/viewer2d-reducer.js +1 -1
  408. package/src/reducers/viewer3d-reducer.js +1 -1
  409. package/src/styles/export.js +7 -0
  410. package/src/styles/tabs.css +40 -0
  411. package/src/utils/geometry.js +2 -2
  412. package/src/utils/graph-inner-cycles.js +3 -3
  413. package/src/utils/helper.js +1 -1
  414. package/src/utils/history.js +1 -1
  415. package/src/utils/molding.js +973 -973
  416. package/src/utils/react-if.jsx +1 -1
  417. package/src/KitchenConfigurator.jsx +0 -1517
  418. package/src/actions/user-actions.js +0 -75
  419. package/src/components/atoms/Snackbar/index.jsx +0 -43
  420. package/src/components/atoms/radio-button/index.jsx +0 -20
  421. package/src/components/atoms/radio-button/styles.js +0 -56
  422. package/src/components/button/MainButton.jsx +0 -157
  423. package/src/components/button/ToggleMeasureButton.jsx +0 -65
  424. package/src/components/catalog-view/catalog-breadcrumb.jsx +0 -53
  425. package/src/components/catalog-view/catalog-item.jsx +0 -229
  426. package/src/components/catalog-view/catalog-list.jsx +0 -173
  427. package/src/components/catalog-view/catalog-page-item.jsx +0 -110
  428. package/src/components/catalog-view/catalog-turn-back-page-item.jsx +0 -80
  429. package/src/components/configurator/custom-configurator.jsx +0 -77
  430. package/src/components/configurator/project-configurator.jsx +0 -120
  431. package/src/components/firstsetting/button/styles.js +0 -223
  432. package/src/components/firstsetting/export.js +0 -9
  433. package/src/components/firstsetting/firstsetting-content-button.jsx +0 -198
  434. package/src/components/firstsetting/firstsetting-toggle-button.jsx +0 -101
  435. package/src/components/firstsetting/firstsetting.jsx +0 -814
  436. package/src/components/footerbar/button/ControlButton.jsx +0 -43
  437. package/src/components/footerbar/button/DirectionButton.jsx +0 -54
  438. package/src/components/footerbar/button/DirectionPanSpinButton.jsx +0 -36
  439. package/src/components/footerbar/button/ToggleButton.jsx +0 -58
  440. package/src/components/footerbar/button/ToggleConvertButton.jsx +0 -48
  441. package/src/components/footerbar/button/ToggleMeasureButton.jsx +0 -33
  442. package/src/components/footerbar/button/styles.js +0 -217
  443. package/src/components/footerbar/export.js +0 -9
  444. package/src/components/footerbar/footer-content-button.jsx +0 -198
  445. package/src/components/footerbar/footer-toggle-button.jsx +0 -101
  446. package/src/components/footerbar/footerbar.jsx +0 -1103
  447. package/src/components/footerbar/styles.js +0 -263
  448. package/src/components/header/button/MenuButton.jsx +0 -46
  449. package/src/components/header/button/SaveButton.jsx +0 -54
  450. package/src/components/header/button/styles.js +0 -181
  451. package/src/components/header/export.js +0 -5
  452. package/src/components/header/header.jsx +0 -631
  453. package/src/components/header/header.style.css +0 -47
  454. package/src/components/header/styles.js +0 -320
  455. package/src/components/login/Login.js +0 -77
  456. package/src/components/login/LoginForm/index.js +0 -108
  457. package/src/components/login/Register.js +0 -83
  458. package/src/components/login/RegisterForm/index.js +0 -171
  459. package/src/components/login/jwtService.js +0 -201
  460. package/src/components/login/style.css +0 -158
  461. package/src/components/login/style.scss +0 -260
  462. package/src/components/molecules/slider/index.jsx +0 -15
  463. package/src/components/molecules/slider/styles.js +0 -0
  464. package/src/components/molecules/slider/styles.scss +0 -3
  465. package/src/components/myprojects/export.js +0 -5
  466. package/src/components/myprojects/index.jsx +0 -445
  467. package/src/components/myprojects/styles.js +0 -241
  468. package/src/components/sidebar/custom-accordion.jsx +0 -48
  469. package/src/components/sidebar/export.js +0 -15
  470. package/src/components/sidebar/panel-element-editor/attributes-editor/attributes-editor.jsx +0 -73
  471. package/src/components/sidebar/panel-element-editor/attributes-editor/confirm-popup.jsx +0 -101
  472. package/src/components/sidebar/panel-element-editor/attributes-editor/hole-attributes-editor.jsx +0 -149
  473. package/src/components/sidebar/panel-element-editor/attributes-editor/item-attributes-editor.jsx +0 -316
  474. package/src/components/sidebar/panel-element-editor/attributes-editor/line-attributes-editor.jsx +0 -108
  475. package/src/components/sidebar/panel-element-editor/element-editor.jsx +0 -1070
  476. package/src/components/sidebar/panel-element-editor/multi-elements-editor.jsx +0 -0
  477. package/src/components/sidebar/panel-element-editor/panel-element-editor.jsx +0 -104
  478. package/src/components/sidebar/panel-element-editor/panel-multi-elements-editor.jsx +0 -155
  479. package/src/components/sidebar/panel-group-editor.jsx +0 -272
  480. package/src/components/sidebar/panel-groups.jsx +0 -310
  481. package/src/components/sidebar/panel-guides.jsx +0 -192
  482. package/src/components/sidebar/panel-layer-elements.jsx +0 -298
  483. package/src/components/sidebar/panel-layers.jsx +0 -381
  484. package/src/components/sidebar/panel.jsx +0 -71
  485. package/src/components/sidebar/sidebar.jsx +0 -106
  486. package/src/components/sidebar/toolbar-panel.jsx +0 -139
  487. package/src/components/sign/export.js +0 -7
  488. package/src/components/sign/main/index.jsx +0 -523
  489. package/src/components/sign/main/styles.js +0 -163
  490. package/src/components/style/cancel-button.jsx +0 -20
  491. package/src/components/style/content-container.jsx +0 -29
  492. package/src/components/style/content-title.jsx +0 -20
  493. package/src/components/style/delete-button.jsx +0 -23
  494. package/src/components/style/export.jsx +0 -48
  495. package/src/components/style/form-block.jsx +0 -13
  496. package/src/components/style/form-number-input_2.jsx +0 -191
  497. package/src/components/style/form-slider.jsx +0 -36
  498. package/src/components/style/form-submit-button.jsx +0 -23
  499. package/src/components/toolbar/button/ControlButton.jsx +0 -41
  500. package/src/components/toolbar/button/DirectionButton.jsx +0 -34
  501. package/src/components/toolbar/button/RightButton.jsx +0 -103
  502. package/src/components/toolbar/button/ToggleButton.jsx +0 -41
  503. package/src/components/toolbar/button/index.jsx +0 -55
  504. package/src/components/toolbar/button/styles.js +0 -127
  505. package/src/components/toolbar/components/DoorStyleMenu.jsx +0 -103
  506. package/src/components/toolbar/components/Pricing.jsx +0 -126
  507. package/src/components/toolbar/components/ReviewForQuote.jsx +0 -635
  508. package/src/components/toolbar/export.js +0 -21
  509. package/src/components/toolbar/main/Alert.js +0 -122
  510. package/src/components/toolbar/main/TakePictureModal.jsx +0 -104
  511. package/src/components/toolbar/main/confirm-popup.jsx +0 -99
  512. package/src/components/toolbar/main/index.jsx +0 -5627
  513. package/src/components/toolbar/main/lShaped.json +0 -311
  514. package/src/components/toolbar/main/longNarrow.json +0 -238
  515. package/src/components/toolbar/main/myComponents.js +0 -123
  516. package/src/components/toolbar/main/oRectangle.json +0 -220
  517. package/src/components/toolbar/main/rectangle.json +0 -238
  518. package/src/components/toolbar/main/style.css +0 -107
  519. package/src/components/toolbar/main/styles.js +0 -696
  520. package/src/components/toolbar/plugin-item.jsx +0 -123
  521. package/src/components/toolbar/popup/appliance/appliance-category/index.jsx +0 -73
  522. package/src/components/toolbar/popup/appliance/choose-appliance/index.jsx +0 -102
  523. package/src/components/toolbar/popup/appliance/index.jsx +0 -83
  524. package/src/components/toolbar/popup/autosaveprompt/index.jsx +0 -150
  525. package/src/components/toolbar/popup/autosaveprompt/styles.css +0 -64
  526. package/src/components/toolbar/popup/autosaveprompt/styles.js +0 -40
  527. package/src/components/toolbar/popup/cabinet/cabinet-category/index.jsx +0 -73
  528. package/src/components/toolbar/popup/cabinet/choose-product/index.jsx +0 -119
  529. package/src/components/toolbar/popup/cabinet/index.jsx +0 -85
  530. package/src/components/toolbar/popup/doorStyle/choose-style/index.jsx +0 -63
  531. package/src/components/toolbar/popup/doorStyle/index.jsx +0 -71
  532. package/src/components/toolbar/popup/doorStyle/style-category/index.jsx +0 -139
  533. package/src/components/toolbar/popup/downloadsummary/downloadSummaryContext.js +0 -2
  534. package/src/components/toolbar/popup/downloadsummary/downloadSummaryTemp.jsx +0 -157
  535. package/src/components/toolbar/popup/downloadsummary/index.jsx +0 -643
  536. package/src/components/toolbar/popup/downloadsummary/show2D/show2DView.jsx +0 -51
  537. package/src/components/toolbar/popup/downloadsummary/show2D/viewer2DDownLoad.jsx +0 -175
  538. package/src/components/toolbar/popup/downloadsummary/show3D/show3DView.jsx +0 -283
  539. package/src/components/toolbar/popup/downloadsummary/show3D/viewer3DDownLoad.jsx +0 -2257
  540. package/src/components/toolbar/popup/downloadsummary/showCabinetInfo.js +0 -93
  541. package/src/components/toolbar/popup/downloadsummary/showElevation/showElevationView.jsx +0 -132
  542. package/src/components/toolbar/popup/downloadsummary/showElevation/viewer3DElevationDownload.jsx +0 -2198
  543. package/src/components/toolbar/popup/downloadsummary/showElevation/viewerElevationDownload.jsx +0 -152
  544. package/src/components/toolbar/popup/downloadsummary/showWarranty.jsx +0 -149
  545. package/src/components/toolbar/popup/downloadsummary/styles.css +0 -177
  546. package/src/components/toolbar/popup/downloadsummary/styles.js +0 -453
  547. package/src/components/toolbar/popup/finishingtouch/category/index.jsx +0 -34
  548. package/src/components/toolbar/popup/finishingtouch/index.jsx +0 -58
  549. package/src/components/toolbar/popup/finishingtouch/material-edit.jsx +0 -112
  550. package/src/components/toolbar/popup/finishingtouch/product/index.jsx +0 -116
  551. package/src/components/toolbar/popup/floorplan/choose-floor/confirm-popup.jsx +0 -101
  552. package/src/components/toolbar/popup/floorplan/choose-floor/index.jsx +0 -254
  553. package/src/components/toolbar/popup/floorplan/choose-floor/lShaped.json +0 -311
  554. package/src/components/toolbar/popup/floorplan/choose-floor/longNarrow.json +0 -238
  555. package/src/components/toolbar/popup/floorplan/choose-floor/oRectangle.json +0 -220
  556. package/src/components/toolbar/popup/floorplan/choose-floor/rectangle.json +0 -238
  557. package/src/components/toolbar/popup/floorplan/choose-floor/styles.js +0 -86
  558. package/src/components/toolbar/popup/floorplan/floor-category/index.jsx +0 -109
  559. package/src/components/toolbar/popup/floorplan/index.jsx +0 -60
  560. package/src/components/toolbar/popup/index.jsx +0 -241
  561. package/src/components/toolbar/popup/newproject/index.jsx +0 -59
  562. package/src/components/toolbar/popup/newproject/styles.css +0 -64
  563. package/src/components/toolbar/popup/newproject/styles.js +0 -41
  564. package/src/components/toolbar/popup/product/appliance.jsx +0 -54
  565. package/src/components/toolbar/popup/product/cabinetproduct.jsx +0 -15
  566. package/src/components/toolbar/popup/product/doorstyle.jsx +0 -58
  567. package/src/components/toolbar/popup/product/doorstyleproduct.jsx +0 -47
  568. package/src/components/toolbar/popup/product/floor.jsx +0 -36
  569. package/src/components/toolbar/popup/product/floorproduct.jsx +0 -42
  570. package/src/components/toolbar/popup/product/index.jsx +0 -36
  571. package/src/components/toolbar/popup/product/primary.jsx +0 -77
  572. package/src/components/toolbar/popup/product/productline.jsx +0 -93
  573. package/src/components/toolbar/popup/product/reviewItem.jsx +0 -427
  574. package/src/components/toolbar/popup/product/reviewMolding.jsx +0 -310
  575. package/src/components/toolbar/popup/product/style.css +0 -54
  576. package/src/components/toolbar/popup/product/styles.js +0 -260
  577. package/src/components/toolbar/popup/savedesign/FullPictureForm.jsx +0 -146
  578. package/src/components/toolbar/popup/savedesign/index.jsx +0 -495
  579. package/src/components/toolbar/popup/savedesign/savedesign.style.css +0 -16
  580. package/src/components/toolbar/popup/savedesign/styles.js +0 -151
  581. package/src/components/toolbar/popup/setDoorStyleOption/index.jsx +0 -87
  582. package/src/components/toolbar/popup/styles.js +0 -909
  583. package/src/components/toolbar/popup/submitforquote/AddToCartOptions.jsx +0 -192
  584. package/src/components/toolbar/popup/submitforquote/CustomerRequestsForm.jsx +0 -96
  585. package/src/components/toolbar/popup/submitforquote/SkipDesignerReview.jsx +0 -54
  586. package/src/components/toolbar/popup/submitforquote/StepDots.jsx +0 -25
  587. package/src/components/toolbar/popup/submitforquote/cart-choice.jsx +0 -116
  588. package/src/components/toolbar/popup/submitforquote/doorstyle-menus.js +0 -38
  589. package/src/components/toolbar/popup/submitforquote/index.jsx +0 -698
  590. package/src/components/toolbar/popup/submitforquote/styles.css +0 -105
  591. package/src/components/toolbar/popup/submitforquote/styles.js +0 -294
  592. package/src/components/toolbar/popup/submitprompt/index.jsx +0 -89
  593. package/src/components/toolbar/popup/submitprompt/styles.css +0 -64
  594. package/src/components/toolbar/popup/submitprompt/styles.js +0 -42
  595. package/src/components/toolbar/toolbar-button.jsx +0 -90
  596. package/src/components/toolbar/toolbar-load-button.jsx +0 -36
  597. package/src/components/toolbar/toolbar-save-button.jsx +0 -32
  598. package/src/components/tutorial-view/Modal.jsx +0 -584
  599. package/src/components/tutorial-view/style.css +0 -111
  600. package/src/components/tutorial-view/styles.js +0 -65
  601. package/src/components/wizardstep/button/styles.js +0 -677
  602. package/src/components/wizardstep/export.js +0 -5
  603. package/src/components/wizardstep/index.jsx +0 -1372
  604. package/src/components/wizardstep/styles.js +0 -688
  605. package/src/components/wizardstep/wizardstep-content-button.jsx +0 -198
  606. package/src/components/wizardstep/wizardstep-toggle-button.jsx +0 -101
@@ -1,1372 +0,0 @@
1
- import React, { Component } from 'react';
2
- import PropTypes, { element, elementType } from 'prop-types';
3
- import convert from 'convert-units';
4
- import * as S from './styles';
5
- import * as rectangleData from '../toolbar/main/rectangle.json';
6
- import * as lShaped from '../toolbar/main/lShaped.json';
7
- import * as oRectangle from '../toolbar/main/oRectangle.json';
8
- import * as longNarrow from '../toolbar/main/longNarrow.json';
9
- import {
10
- TEXT_COLOR_NEUTRAL_5,
11
- TEXT_COLOR_NEUTRAL_0,
12
- TEXT_COLOR_NEUTRAL_2,
13
- STATUS_NEGATIVE_COLOR,
14
- BG_COLOR_HOVER,
15
- BG_COLOR_1,
16
- TEXT_COLOR_NEUTRAL_3,
17
- SECONDARY_PURPLE_COLOR,
18
- DEFAULT_FONT_FAMILY,
19
- SHADE_LIGHT_PURPLE_COLOR,
20
- TEXT_COLOR_NEUTRAL_1,
21
- TEXT_COLOR_NEUTRAL_4,
22
- DECIMAL_PLACES_2
23
- } from '../../constants';
24
- import Dialog from '@material-ui/core/Dialog';
25
- import styled from 'styled-components';
26
- import { formatNumber, toFixedFloat } from '../../utils/math';
27
-
28
- const StyledDialog = styled(Dialog)`
29
- .MuiDialog-paperWidthSm {
30
- border-radius: 10px;
31
- }
32
- `;
33
-
34
- let roomShapeData = [
35
- {
36
- type: 'square',
37
- name: 'Square',
38
- url: '/assets/img/svg/wizardstep/Square.svg',
39
- data: rectangleData,
40
- key: 1
41
- },
42
- {
43
- type: 'l-shape',
44
- name: 'L-Shaped',
45
- url: '/assets/img/svg/wizardstep/L.svg',
46
- data: lShaped,
47
- key: 2
48
- },
49
- {
50
- type: 'irregular',
51
- name: 'Irregular',
52
- url: '/assets/img/svg/wizardstep/L2.svg',
53
- data: longNarrow,
54
- key: 3
55
- },
56
- {
57
- type: 'open',
58
- name: 'Open',
59
- url: '/assets/img/svg/wizardstep/Open.svg',
60
- data: oRectangle,
61
- key: 4
62
- }
63
- ];
64
-
65
- let unitData = [
66
- {
67
- _name: 'inch',
68
- _unit: 'in'
69
- },
70
- {
71
- _name: 'centimeter',
72
- _unit: 'cm'
73
- },
74
- {
75
- _name: 'millimeter',
76
- _unit: 'mm'
77
- },
78
- {
79
- _name: 'meter',
80
- _unit: 'm'
81
- },
82
- {
83
- _name: 'feet',
84
- _unit: 'ft'
85
- }
86
- ];
87
-
88
- export default class WizardStep extends Component {
89
- constructor(props, context) {
90
- super(props, context);
91
-
92
- const getDoorStyle = items => {
93
- if (!items || items.length === 0) return undefined;
94
-
95
- const brilliantWhiteShaker = items.find(
96
- item => item.name === 'Brilliant White Shaker'
97
- );
98
-
99
- if (brilliantWhiteShaker) {
100
- return brilliantWhiteShaker;
101
- }
102
-
103
- return items[0];
104
- };
105
-
106
- this.state = {
107
- type: 1, //1: wizard, 2: retrieve
108
- step: 0,
109
- measurementUnit: {
110
- _name: 'inch',
111
- _unit: 'in'
112
- },
113
- ceilingHeight: 96,
114
- roomShape: {
115
- type: '',
116
- data: {}
117
- },
118
- colorFamily: {},
119
- installation: this.props.categoryData.data.doorStyles.items.filter(
120
- item =>
121
- item.items.filter(item1 => item1.items.length !== 0).length !== 0
122
- )[0],
123
- doorCategory: this.props.categoryData.data.doorStyles.items
124
- .filter(
125
- item =>
126
- item.items.filter(item1 => item1.items.length !== 0).length !== 0
127
- )[0]
128
- .items.filter(item => item.items.length !== 0)[0],
129
- doorStyle: getDoorStyle(
130
- this.props.categoryData.data.doorStyles.items
131
- .filter(
132
- item =>
133
- item.items.filter(item1 => item1.items.length !== 0).length !== 0
134
- )[0]
135
- .items.filter(item => item.items.length !== 0)[0].items
136
- ),
137
- cancelDialogVisible: false,
138
- hover: 0
139
- };
140
- }
141
-
142
- loadProject(data) {
143
- this.context.projectActions.loadProject(data, this.props.categoryData);
144
- }
145
-
146
- _confirm(type) {
147
- this.props.close();
148
- if (this.state.roomShape.type === 'custom')
149
- this.context.linesActions.selectToolDrawingLine('wall');
150
- else if (this.state.roomShape.type === '') {
151
- } else this.loadProject(this.state.roomShape.data, this.props.categoryData);
152
- this.context.viewer2DActions.updateCeilHeight(
153
- toFixedFloat(this.state.ceilingHeight)
154
- );
155
- this.context.viewer2DActions.updateCeilHeightUnit(
156
- this.state.measurementUnit._unit
157
- );
158
- this.context.viewer3DActions.update3DCeilHeight(
159
- toFixedFloat(this.state.ceilingHeight)
160
- );
161
- this.context.viewer3DActions.update3DCeilHeightUnit(
162
- this.state.measurementUnit._unit
163
- );
164
- let doorStyle = {
165
- ...this.state.doorStyle,
166
- install: this.state.installation.name
167
- };
168
- !!type && this.context.itemsActions.setDoorStyle(doorStyle);
169
- }
170
-
171
- _ok() {
172
- if (this.state.step === 1 && this.state.roomShape.type === '') {
173
- roomShapeData.map(item => {
174
- document.getElementById(
175
- `roomshape&${item.type}`
176
- ).style.backgroundColor = STATUS_NEGATIVE_COLOR;
177
- document.getElementById(`roomlabel&${item.type}`).style.color =
178
- TEXT_COLOR_NEUTRAL_0;
179
- });
180
- document.getElementById('roomshape&custom').style.backgroundColor =
181
- STATUS_NEGATIVE_COLOR;
182
- document.getElementById('roomshape&pencil').style.backgroundColor =
183
- STATUS_NEGATIVE_COLOR;
184
- document.getElementById('roomlabel&custom').style.color =
185
- TEXT_COLOR_NEUTRAL_0;
186
- document.getElementById('description').style.color =
187
- STATUS_NEGATIVE_COLOR;
188
- } else this.setState({ step: this.state.step + 1 });
189
- }
190
-
191
- onStepChange(e) {
192
- if (this.state.step === 1 && this.state.roomShape.type === '') {
193
- roomShapeData.map(item => {
194
- document.getElementById(
195
- `roomshape&${item.type}`
196
- ).style.backgroundColor = STATUS_NEGATIVE_COLOR;
197
- document.getElementById(`roomlabel&${item.type}`).style.color =
198
- TEXT_COLOR_NEUTRAL_0;
199
- });
200
- document.getElementById('roomshape&custom').style.backgroundColor =
201
- STATUS_NEGATIVE_COLOR;
202
- document.getElementById('roomshape&pencil').style.backgroundColor =
203
- STATUS_NEGATIVE_COLOR;
204
- document.getElementById('roomlabel&custom').style.color =
205
- TEXT_COLOR_NEUTRAL_0;
206
- document.getElementById('description').style.color =
207
- STATUS_NEGATIVE_COLOR;
208
- } else {
209
- this.setState({ step: e });
210
- }
211
- }
212
-
213
- componentDidUpdate(prevProps, prevState, snapshot) {
214
- const img = document.querySelector(
215
- 'img[src="/assets/img/svg/wizardstep/check-active.svg"]'
216
- );
217
- if (img) {
218
- img.scrollIntoView({ behavior: 'smooth', block: 'center' });
219
- }
220
- }
221
-
222
- render() {
223
- const {
224
- step,
225
- roomShape,
226
- installation,
227
- doorCategory,
228
- doorStyle,
229
- measurementUnit,
230
- ceilingHeight,
231
- cancelDialogVisible,
232
- colorFamily,
233
- hover,
234
- type
235
- } = this.state;
236
- let regexp = new RegExp(`^-?([0-9]+)?\\.?([0-9]{0,2})?$`);
237
-
238
- const stepBar = [
239
- {
240
- index: 1,
241
- title: 'ROOM SHAPE',
242
- description: (
243
- <div>
244
- Select units, add ceiling height and a predefined shape or draw your
245
- own.
246
- <br />
247
- To get professional help, click on the Help button.
248
- </div>
249
- ),
250
- content: (
251
- <S.ContentWrapper>
252
- <S.ContentWrapper1 style={{ marginBottom: 25 }}>
253
- <div
254
- style={{
255
- position: 'relative',
256
- display: 'flex',
257
- alignItems: 'center'
258
- }}
259
- >
260
- <S.MeasurementUnitLabel>
261
- Measurement Unit
262
- </S.MeasurementUnitLabel>
263
- <S.MeasurementUnitSelect
264
- id="measurement_select"
265
- onClick={() => {
266
- document.getElementById(
267
- 'measurement_option'
268
- ).style.display =
269
- document.getElementById('measurement_option').style
270
- .display === 'none'
271
- ? 'block'
272
- : 'none';
273
- document.getElementById(
274
- 'measurement_select'
275
- ).style.borderColor = SECONDARY_PURPLE_COLOR;
276
- document.getElementById('arrow-down').style.display =
277
- document.getElementById('arrow-down').style.display ===
278
- 'none'
279
- ? 'block'
280
- : 'none';
281
- document.getElementById('arrow-up').style.display =
282
- document.getElementById('arrow-up').style.display ===
283
- 'block'
284
- ? 'none'
285
- : 'block';
286
- }}
287
- >
288
- {`${measurementUnit._name}(${measurementUnit._unit})`}
289
- </S.MeasurementUnitSelect>
290
- <S.SelectArrow
291
- id="arrow-down"
292
- style={{ display: 'block' }}
293
- maskImage="/assets/img/svg/bottombar/arrow-down.svg"
294
- />
295
- <S.SelectArrow
296
- id="arrow-up"
297
- style={{ display: 'none' }}
298
- maskImage="/assets/img/svg/bottombar/arrow-up.svg"
299
- />
300
- <div
301
- id="measurement_option"
302
- style={{
303
- display: 'none',
304
- width: '100%',
305
- zIndex: 3,
306
- top: 55,
307
- position: 'absolute',
308
- borderRadius: 5,
309
- backgroundColor: 'white',
310
- boxShadow:
311
- '0px 3px 5px -1px rgba(156, 154, 154, 0.2), 0px 6px 10px 0px rgba(156, 154, 154, 0.39), 0px 1px 18px 0px rgba(156, 154, 154, 0.12)'
312
- }}
313
- >
314
- {unitData.map((unit, key) => {
315
- return (
316
- <S.MeasurementUnitOption
317
- onClick={() => {
318
- document.getElementById(
319
- 'measurement_option'
320
- ).style.display = 'none';
321
- document.getElementById('arrow-down').style.display =
322
- 'block';
323
- document.getElementById('arrow-up').style.display =
324
- 'none';
325
- this.setState({
326
- ceilingHeight: formatNumber(
327
- convert(ceilingHeight)
328
- .from(measurementUnit._unit)
329
- .to(unit._unit),
330
- DECIMAL_PLACES_2
331
- ),
332
- measurementUnit: unit
333
- });
334
- }}
335
- key={key}
336
- >
337
- {`${unit._name}(${unit._unit})`}
338
- </S.MeasurementUnitOption>
339
- );
340
- })}
341
- </div>
342
- </div>
343
- <div
344
- style={{
345
- position: 'relative',
346
- display: 'flex',
347
- alignItems: 'center',
348
- marginLeft: 40
349
- }}
350
- >
351
- <S.MeasurementUnitLabel>Ceiling Height</S.MeasurementUnitLabel>
352
- <input
353
- style={{
354
- width: 167,
355
- textAlign: 'left',
356
- padding: '15px 15px',
357
- color: '#000f33',
358
- fontSize: '13px',
359
- lineHeight: '18px',
360
- border: '2px solid #8791ab',
361
- borderRadius: '5px',
362
- outline: 0,
363
- fontWeight: 600,
364
- paddingRight: 90
365
- }}
366
- value={ceilingHeight}
367
- onChange={evt => {
368
- if (regexp.test(evt.target.value))
369
- this.setState({
370
- ceilingHeight: evt.target.value
371
- });
372
- else this.setState({ ceilingHeight: ceilingHeight });
373
- }}
374
- />
375
- <span
376
- style={{
377
- position: 'absolute',
378
- color: TEXT_COLOR_NEUTRAL_1,
379
- fontSize: 16,
380
- fontFamily: DEFAULT_FONT_FAMILY,
381
- fontWeight: 400,
382
- lineHeight: '22px',
383
- textAlign: 'right',
384
- right: 10
385
- }}
386
- >
387
- {measurementUnit._unit === 'in'
388
- ? `${measurementUnit._unit}(default)`
389
- : measurementUnit._unit}
390
- </span>
391
- </div>
392
- </S.ContentWrapper1>
393
- <S.ContentWrapper1>
394
- {roomShapeData.map((item, key) => {
395
- return (
396
- <S.ContentItem
397
- onClick={() => {
398
- this.setState({ roomShape: item });
399
- document.getElementById('description').style.color =
400
- TEXT_COLOR_NEUTRAL_0;
401
- }}
402
- key={item.key}
403
- >
404
- <S.MaskImageWrapper
405
- style={{
406
- backgroundColor:
407
- roomShape.type === item.type && BG_COLOR_HOVER
408
- }}
409
- >
410
- <S.RoomContentImage
411
- id={`roomshape&${item.type}`}
412
- maskImage={item.url}
413
- style={{
414
- backgroundColor:
415
- roomShape.type === item.type
416
- ? SECONDARY_PURPLE_COLOR
417
- : roomShape.type
418
- ? TEXT_COLOR_NEUTRAL_3
419
- : TEXT_COLOR_NEUTRAL_0
420
- }}
421
- />
422
- </S.MaskImageWrapper>
423
- <S.ContentCheckImage
424
- id="check"
425
- src="/assets/img/svg/wizardstep/check-normal.svg"
426
- />
427
- {roomShape.type === item.type && (
428
- <S.ContentCheckImage src="/assets/img/svg/wizardstep/check-active.svg" />
429
- )}
430
- <S.ContentItemLabel
431
- id={`roomlabel&${item.type}`}
432
- style={{
433
- fontWeight: roomShape.type === item.type && 400,
434
- color:
435
- roomShape.type === item.type
436
- ? SECONDARY_PURPLE_COLOR
437
- : roomShape.type
438
- ? TEXT_COLOR_NEUTRAL_3
439
- : TEXT_COLOR_NEUTRAL_0
440
- }}
441
- >
442
- {item.name}
443
- </S.ContentItemLabel>
444
- </S.ContentItem>
445
- );
446
- })}
447
- </S.ContentWrapper1>
448
- <S.ContentWrapper1>
449
- <S.ContentItem
450
- onClick={() => {
451
- this.setState({ roomShape: { type: 'custom', data: {} } });
452
- document.getElementById('description').style.color =
453
- TEXT_COLOR_NEUTRAL_0;
454
- }}
455
- >
456
- <S.MaskImageWrapper
457
- style={{
458
- backgroundColor:
459
- roomShape.type === 'custom' && BG_COLOR_HOVER
460
- }}
461
- >
462
- <S.RoomContentImage
463
- id="roomshape&custom"
464
- maskImage="/assets/img/svg/wizardstep/Custom.svg"
465
- style={{
466
- backgroundColor:
467
- roomShape.type === 'custom'
468
- ? SECONDARY_PURPLE_COLOR
469
- : roomShape.type
470
- ? TEXT_COLOR_NEUTRAL_3
471
- : TEXT_COLOR_NEUTRAL_0
472
- }}
473
- />
474
- <S.RoomContentImage
475
- id="roomshape&pencil"
476
- maskImage="/assets/img/svg/wizardstep/pencil.svg"
477
- style={{
478
- position: 'absolute',
479
- top: 10,
480
- right: 10,
481
- height: 25,
482
- width: 25,
483
- backgroundColor:
484
- roomShape.type === 'custom'
485
- ? SECONDARY_PURPLE_COLOR
486
- : roomShape.type
487
- ? TEXT_COLOR_NEUTRAL_3
488
- : TEXT_COLOR_NEUTRAL_0
489
- }}
490
- />
491
- </S.MaskImageWrapper>
492
- <S.ContentCheckImage
493
- id="check"
494
- src="/assets/img/svg/wizardstep/check-normal.svg"
495
- />
496
- {roomShape.type === 'custom' && (
497
- <S.ContentCheckImage src="/assets/img/svg/wizardstep/check-active.svg" />
498
- )}
499
- <S.ContentItemLabel
500
- id="roomlabel&custom"
501
- style={{
502
- fontWeight: roomShape.type === 'custom' && 600,
503
- color:
504
- roomShape.type === 'custom'
505
- ? SECONDARY_PURPLE_COLOR
506
- : roomShape.type
507
- ? TEXT_COLOR_NEUTRAL_3
508
- : TEXT_COLOR_NEUTRAL_0
509
- }}
510
- >
511
- Draw Custom
512
- </S.ContentItemLabel>
513
- <span
514
- id="hint"
515
- style={{
516
- position: 'absolute',
517
- fontFamily: DEFAULT_FONT_FAMILY,
518
- fontSize: 16,
519
- lineHeight: '20px',
520
- textAlign: 'left',
521
- backgroundColor: TEXT_COLOR_NEUTRAL_1,
522
- opacity: 0.8,
523
- color: BG_COLOR_1,
524
- borderRadius: 3,
525
- zIndex: 3,
526
- width: 'max-content',
527
- top: -30,
528
- left: -10,
529
- padding: '3px 8px'
530
- }}
531
- >
532
- You will be able to draw your own space
533
- </span>
534
- </S.ContentItem>
535
- </S.ContentWrapper1>
536
- </S.ContentWrapper>
537
- )
538
- },
539
- {
540
- index: 2,
541
- title: 'COLOR & STYLE',
542
- description:
543
- 'Customize your door style. To get professional help, click on the Help button.',
544
- content: (
545
- <S.ContentWrapper>
546
- <S.Title>Installation</S.Title>
547
- <S.ContentWrapper1>
548
- {this.props.categoryData.data.doorStyles.items.map(
549
- (item, key) => {
550
- return (
551
- <S.DoorStyleContentItem
552
- onClick={() =>
553
- this.setState({
554
- installation: item,
555
- doorCategory: item.items[0]
556
- })
557
- }
558
- key={key}
559
- >
560
- <S.DoorStyleContentImageWrapper
561
- id="item"
562
- style={{
563
- backgroundColor:
564
- installation.name === item.name &&
565
- TEXT_COLOR_NEUTRAL_5,
566
- borderColor:
567
- installation.name === item.name &&
568
- SECONDARY_PURPLE_COLOR
569
- }}
570
- >
571
- <S.DoorStyleContentImage
572
- id={`doorstyle&${item.name}&image`}
573
- maskImage={item.thumbnail}
574
- style={{
575
- backgroundColor:
576
- installation.name === item.name &&
577
- SECONDARY_PURPLE_COLOR
578
- }}
579
- />
580
- </S.DoorStyleContentImageWrapper>
581
- <S.ContentItemLabel
582
- style={{
583
- color:
584
- installation.name === item.name &&
585
- SECONDARY_PURPLE_COLOR,
586
- fontSize: 15,
587
- fontWeight: installation.name === item.name && 700
588
- }}
589
- >
590
- {item.name}
591
- </S.ContentItemLabel>
592
- </S.DoorStyleContentItem>
593
- );
594
- }
595
- )}
596
- </S.ContentWrapper1>
597
- <S.Title style={{ marginTop: 20 }}>Door Style</S.Title>
598
- <S.ContentWrapper1>
599
- {this.props.categoryData.data.doorStyles.items
600
- .filter(item => item.name === installation.name)[0]
601
- .items.map((element, key) => {
602
- return (
603
- <S.DoorStyleContentItem
604
- onClick={() => this.setState({ doorCategory: element })}
605
- key={key}
606
- >
607
- <S.DoorStyleContentImageWrapper
608
- id="item"
609
- style={{
610
- backgroundColor:
611
- doorCategory.name === element.name &&
612
- TEXT_COLOR_NEUTRAL_5,
613
- borderColor:
614
- doorCategory.name === element.name &&
615
- SECONDARY_PURPLE_COLOR
616
- }}
617
- >
618
- <S.DoorCategoryContentImage
619
- style={{
620
- margin:
621
- doorCategory.name === element.name && 'unset',
622
- backgroundColor:
623
- doorCategory.name === element.name &&
624
- SECONDARY_PURPLE_COLOR
625
- }}
626
- maskImage={element.thumbnail}
627
- />
628
- </S.DoorStyleContentImageWrapper>
629
- <S.ContentItemLabel
630
- id={`doorcategory&${element.name}&label`}
631
- style={{
632
- color:
633
- doorCategory.name === element.name
634
- ? SECONDARY_PURPLE_COLOR
635
- : TEXT_COLOR_NEUTRAL_0,
636
- fontSize: 15,
637
- fontWeight: doorCategory.name === element.name && 700
638
- }}
639
- >
640
- {element.name}
641
- </S.ContentItemLabel>
642
- </S.DoorStyleContentItem>
643
- );
644
- })}
645
- </S.ContentWrapper1>
646
- <div
647
- style={{
648
- display: 'flex',
649
- gap: '1rem',
650
- alignItems: 'center',
651
- marginTop: 20,
652
- height: 30
653
- }}
654
- >
655
- <S.Title>Color family</S.Title>
656
- {Object.keys(this.state.colorFamily).length !== 0 && (
657
- <S.Button
658
- style={{
659
- fontSize: 12,
660
- padding: '5px 10px',
661
- border: '1px solid'
662
- }}
663
- onClick={() => this.setState({ colorFamily: {} })}
664
- >
665
- Clear filter
666
- </S.Button>
667
- )}
668
- </div>
669
- <S.ContentWrapper1>
670
- <div
671
- style={{
672
- display: 'flex',
673
- flexWrap: 'wrap',
674
- gap: '0.5rem'
675
- }}
676
- >
677
- {this.props.categoryData.data.doorColorFamily &&
678
- this.props.categoryData.data.doorColorFamily.map(
679
- (element, key) => {
680
- return (
681
- <S.ColorContentItem
682
- onClick={() =>
683
- this.setState({ colorFamily: element })
684
- }
685
- key={key}
686
- >
687
- <S.ColorContentImage src={element.thumbnail} />
688
- <S.ContentCheckImage
689
- id="check"
690
- src="/assets/img/svg/wizardstep/check-normal.svg"
691
- style={{
692
- height: 70,
693
- width: 70,
694
- borderRadius: '50%',
695
- backgroundColor: 'unset',
696
- zIndex: 2,
697
- padding: 16
698
- }}
699
- />
700
- {colorFamily.id === element.id && (
701
- <S.ContentCheckImage
702
- src="/assets/img/svg/wizardstep/check-active.svg"
703
- style={{
704
- height: 70,
705
- width: 70,
706
- borderRadius: '50%',
707
- backgroundColor: 'unset',
708
- zIndex: 2,
709
- padding: 16,
710
- border: `2px solid ${SECONDARY_PURPLE_COLOR}`
711
- }}
712
- />
713
- )}
714
- </S.ColorContentItem>
715
- );
716
- }
717
- )}
718
- </div>
719
- </S.ContentWrapper1>
720
- </S.ContentWrapper>
721
- )
722
- },
723
- {
724
- index: 3,
725
- title: 'SUMMARY',
726
- description: (
727
- <div>
728
- <div>Select from the door collection for all cabinets.</div>
729
- <div>To get professional help, click on the Help button.</div>
730
- </div>
731
- ),
732
- content: (
733
- <S.ContentWrapper>
734
- <S.ContentWrapper1>
735
- <S.ContentWrapper2>
736
- <S.Title>Room Shape</S.Title>
737
- {roomShapeData.map((item, key) => {
738
- return (
739
- roomShape.type === item.type && (
740
- <S.ContentItem
741
- style={{ margin: 'unset', marginTop: 20 }}
742
- key={key}
743
- >
744
- <S.MaskImageWrapper>
745
- <S.RoomContentImage
746
- maskImage={item.url}
747
- style={{ backgroundColor: SECONDARY_PURPLE_COLOR }}
748
- />
749
- </S.MaskImageWrapper>
750
- <S.ContentCheckImage src="/assets/img/svg/wizardstep/check-active.svg" />
751
- <S.ContentItemLabel
752
- style={{ color: SECONDARY_PURPLE_COLOR }}
753
- >
754
- {item.name}
755
- </S.ContentItemLabel>
756
- </S.ContentItem>
757
- )
758
- );
759
- })}
760
- {roomShape.type === 'custom' && (
761
- <S.ContentItem style={{ margin: 'unset', marginTop: 20 }}>
762
- <S.MaskImageWrapper>
763
- <S.RoomContentImage
764
- maskImage="/assets/img/svg/wizardstep/Custom.svg"
765
- style={{ backgroundColor: SECONDARY_PURPLE_COLOR }}
766
- />
767
- <S.RoomContentImage
768
- maskImage="/assets/img/svg/wizardstep/pencil.svg"
769
- style={{
770
- position: 'absolute',
771
- top: 10,
772
- right: 25,
773
- height: 25,
774
- width: 25,
775
- backgroundColor: SECONDARY_PURPLE_COLOR
776
- }}
777
- />
778
- </S.MaskImageWrapper>
779
- <S.ContentCheckImage src="/assets/img/svg/wizardstep/check-active.svg" />
780
- <S.ContentItemLabel
781
- style={{ color: SECONDARY_PURPLE_COLOR }}
782
- >
783
- Draw Custom
784
- </S.ContentItemLabel>
785
- <span
786
- id="hint"
787
- style={{
788
- position: 'absolute',
789
- fontFamily: DEFAULT_FONT_FAMILY,
790
- fontSize: 16,
791
- lineHeight: '20px',
792
- textAlign: 'left',
793
- backgroundColor: TEXT_COLOR_NEUTRAL_1,
794
- opacity: 0.8,
795
- color: BG_COLOR_1,
796
- borderRadius: 3,
797
- zIndex: 3,
798
- width: 'max-content',
799
- top: -30,
800
- left: -10,
801
- padding: '3px 8px'
802
- }}
803
- >
804
- You will be able to draw your own space
805
- </span>
806
- </S.ContentItem>
807
- )}
808
- </S.ContentWrapper2>
809
- <S.ContentWrapper2>
810
- <S.Title>Installation</S.Title>
811
- <S.DoorStyleContentItem
812
- style={{ margin: 'unset', marginTop: 20 }}
813
- >
814
- <S.DoorStyleContentImageWrapper
815
- style={{
816
- borderColor: SECONDARY_PURPLE_COLOR,
817
- backgroundColor: TEXT_COLOR_NEUTRAL_5
818
- }}
819
- >
820
- <S.DoorStyleContentImage
821
- maskImage={installation.thumbnail}
822
- style={{ backgroundColor: SECONDARY_PURPLE_COLOR }}
823
- />
824
- </S.DoorStyleContentImageWrapper>
825
- <S.ContentItemLabel style={{ color: SECONDARY_PURPLE_COLOR }}>
826
- {installation.name}
827
- </S.ContentItemLabel>
828
- </S.DoorStyleContentItem>
829
- </S.ContentWrapper2>
830
- <S.ContentWrapper2>
831
- <S.Title>Color Family</S.Title>
832
- <S.ColorContentItem style={{ margin: 'unset', marginTop: 20 }}>
833
- {colorFamily.thumbnail && (
834
- <S.ColorContentImage
835
- src={colorFamily.thumbnail}
836
- style={{ height: 120, width: 120, borderRadius: '100%' }}
837
- />
838
- )}
839
- <S.ContentCheckImage
840
- src="/assets/img/svg/wizardstep/check-active.svg"
841
- style={{
842
- height: 120,
843
- width: 120,
844
- borderRadius: '50%',
845
- backgroundColor: 'unset',
846
- zIndex: 2,
847
- padding: 41,
848
- border: `2px solid ${SECONDARY_PURPLE_COLOR}`
849
- }}
850
- />
851
- <S.ContentItemLabel style={{ color: SECONDARY_PURPLE_COLOR }}>
852
- {colorFamily.name}
853
- </S.ContentItemLabel>
854
- </S.ColorContentItem>
855
- </S.ContentWrapper2>
856
- <S.ContentWrapper2>
857
- <S.Title>Style</S.Title>
858
- <S.DoorStyleContentItem
859
- style={{ margin: 'unset', marginTop: 20 }}
860
- >
861
- <S.DoorStyleContentImageWrapper
862
- style={{
863
- backgroundColor: TEXT_COLOR_NEUTRAL_5,
864
- borderColor: SECONDARY_PURPLE_COLOR
865
- }}
866
- >
867
- <S.DoorCategoryContentImage
868
- style={{
869
- margin: 'unset',
870
- backgroundColor: SECONDARY_PURPLE_COLOR
871
- }}
872
- maskImage={doorCategory.thumbnail}
873
- />
874
- </S.DoorStyleContentImageWrapper>
875
- <S.ContentItemLabel style={{ color: SECONDARY_PURPLE_COLOR }}>
876
- {doorCategory.name}
877
- </S.ContentItemLabel>
878
- </S.DoorStyleContentItem>
879
- </S.ContentWrapper2>
880
- <S.ContentWrapper2>
881
- <S.Title>Finish</S.Title>
882
- <S.DoorStyleContentItem
883
- style={{ margin: 'unset', marginTop: 20 }}
884
- >
885
- <S.FinishContentImageWrapper
886
- style={{
887
- border: `2px solid ${SECONDARY_PURPLE_COLOR}`,
888
- backgroundColor: 'unset',
889
- minHeight: 120,
890
- height: 120,
891
- width: 120
892
- }}
893
- >
894
- <S.FinishContentImage
895
- src={doorStyle.thumbnail}
896
- style={{
897
- height: '70%',
898
- width: '100%',
899
- objectFit: 'contain'
900
- }}
901
- />
902
- </S.FinishContentImageWrapper>
903
- <S.ContentItemLabel
904
- style={{
905
- color: SECONDARY_PURPLE_COLOR,
906
- marginBottom: 15,
907
- width: 120
908
- }}
909
- >
910
- {doorStyle.name}
911
- </S.ContentItemLabel>
912
- </S.DoorStyleContentItem>
913
- </S.ContentWrapper2>
914
- </S.ContentWrapper1>
915
- </S.ContentWrapper>
916
- )
917
- }
918
- ];
919
-
920
- return (
921
- <div>
922
- {step === 0 ? (
923
- <S.WizardIntro>
924
- <S.IntroPlane>
925
- <S.IntroMark>
926
- <img src="/assets/img/loading/loading_1.svg" width={80} />
927
- </S.IntroMark>
928
- <S.IntroTitle>Welcome to DIY Design Space</S.IntroTitle>
929
- <S.IntroDescription>
930
- Let's start designing your kitchen. Select the type of project
931
- you want to start.
932
- </S.IntroDescription>
933
- <S.IntroSelect>
934
- <S.IntroItem
935
- onClick={() => {
936
- this.setState({ step: 1 });
937
- }}
938
- >
939
- <img
940
- src={`/assets/img/svg/intro/1-start-with-floorplan${
941
- hover === 1 ? '-whole' : ''
942
- }.svg`}
943
- onMouseOut={() => {
944
- this.setState({ hover: 0 });
945
- }}
946
- onMouseOver={() => {
947
- this.setState({ hover: 1 });
948
- }}
949
- width={140}
950
- />
951
- <S.IntroItemText>Start with Floorplan</S.IntroItemText>
952
- </S.IntroItem>
953
- <S.IntroItem
954
- onClick={() => {
955
- this.props.close();
956
- this.context.viewer2DActions.updateCeilHeight(96);
957
- this.context.viewer2DActions.updateCeilHeightUnit('in');
958
- this.context.viewer3DActions.update3DCeilHeight(96);
959
- this.context.viewer3DActions.update3DCeilHeightUnit('in');
960
- }}
961
- >
962
- <img
963
- src={`/assets/img/svg/intro/2-start-from-scratch${
964
- hover === 2 ? '-whole' : ''
965
- }.svg`}
966
- onMouseOut={() => {
967
- this.setState({ hover: 0 });
968
- }}
969
- onMouseOver={() => {
970
- this.setState({ hover: 2 });
971
- }}
972
- width={140}
973
- />
974
- <S.IntroItemText>Start from Scratch</S.IntroItemText>
975
- </S.IntroItem>
976
- {/* <S.IntroItem
977
- style={{
978
- position: 'relative'
979
- }}
980
- onClick={() => {
981
- if (!this.props.match.params.token) {
982
- this.props.setSignOpen(true);
983
- this.props.setMyProjectsToLogin(true);
984
- } else {
985
- this.props.setMyProjectsOpen(true);
986
- }
987
- }}
988
- >
989
- <img
990
- src={`/assets/img/svg/intro/3-retrieve-project${
991
- hover === 3 ? '-whole' : ''
992
- }.svg`}
993
- onMouseOut={() => {
994
- this.setState({ hover: 0 });
995
- }}
996
- onMouseOver={() => {
997
- this.setState({ hover: 3 });
998
- }}
999
- width={140}
1000
- />
1001
- <S.IntroItemText>Retrieve a saved project</S.IntroItemText>
1002
- <div
1003
- id="scratch_hint"
1004
- style={{
1005
- position: 'absolute',
1006
- display: this.state.hover === 3 ? 'block' : 'none',
1007
- fontFamily: DEFAULT_FONT_FAMILY,
1008
- fontSize: 16,
1009
- lineHeight: '20px',
1010
- textAlign: 'left',
1011
- backgroundColor: TEXT_COLOR_NEUTRAL_1,
1012
- opacity: 0.8,
1013
- color: BG_COLOR_1,
1014
- borderRadius: 3,
1015
- zIndex: 3,
1016
- width: 'max-content',
1017
- top: -30,
1018
- left: -10,
1019
- padding: '3px 8px'
1020
- }}
1021
- >
1022
- We need to log you in to retrieve your saved projects.
1023
- </div>
1024
- </S.IntroItem> */}
1025
- </S.IntroSelect>
1026
- </S.IntroPlane>
1027
- </S.WizardIntro>
1028
- ) : (
1029
- <S.WizardStepWrapper>
1030
- <S.TitleBarWrapper>
1031
- <S.TitleBar>
1032
- {step === 1
1033
- ? 'Choose your room shape'
1034
- : step === 3
1035
- ? 'Summary'
1036
- : 'Choose your door style'}
1037
- </S.TitleBar>
1038
- <S.TitleBarButtonWrapper>
1039
- <S.TitleBarButton
1040
- style={{
1041
- border: `3px solid ${BG_COLOR_1}`,
1042
- cursor: step === 1 && 'no-drop',
1043
- backgroundColor: step === 1 && BG_COLOR_1,
1044
- color: step === 1 && TEXT_COLOR_NEUTRAL_4
1045
- }}
1046
- onClick={() =>
1047
- step !== 1 && this.setState({ cancelDialogVisible: true })
1048
- }
1049
- >
1050
- Cancel
1051
- </S.TitleBarButton>
1052
- {step > 1 && (
1053
- <S.TitleBarButton
1054
- onClick={() => {
1055
- this.setState({ step: step - 1 });
1056
- // switch (step) {
1057
- // case 5:
1058
- // this.setState({ doorStyle: '' });
1059
- // break;
1060
- // case 4:
1061
- // this.setState({ doorCategory: { name: '', url: '' }});
1062
- // break;
1063
- // case 3:
1064
- // this.setState({ installation: '', doorCategory: { name: '', url: '' } });
1065
- // break;
1066
- // case 2:
1067
- // this.setState({ installation: '' });
1068
- // this.setState({ doorColor: { name: '', url: '', color: '' } });
1069
- // default:
1070
- // break;
1071
- // }
1072
- }}
1073
- >
1074
- <img
1075
- style={{ paddingRight: 10 }}
1076
- height="10px"
1077
- src="/assets/img/svg/toolbar/undo_button.svg"
1078
- />
1079
- Back
1080
- </S.TitleBarButton>
1081
- )}
1082
- <S.ConfirmButton
1083
- style={{ minWidth: 89 }}
1084
- onClick={() => (step < 3 ? this._ok() : this._confirm(1))}
1085
- >
1086
- <img
1087
- style={{
1088
- marginRight: 10,
1089
- height: 18,
1090
- width: 18,
1091
- WebkitMaskImage:
1092
- 'url(/assets/img/svg/headerbar/check.svg)',
1093
- backgroundColor: BG_COLOR_1,
1094
- WebkitMaskSize: '100%',
1095
- WebkitMaskPosition: 'center'
1096
- }}
1097
- />
1098
- {step > 2 ? 'Confirm' : 'OK'}
1099
- </S.ConfirmButton>
1100
- </S.TitleBarButtonWrapper>
1101
- </S.TitleBarWrapper>
1102
- <div
1103
- style={{
1104
- display: 'flex',
1105
- gap: '2rem'
1106
- }}
1107
- >
1108
- <div style={{ display: 'flex', flexDirection: 'column' }}>
1109
- <S.StepBarWrapper>
1110
- {stepBar.map((element, key) => {
1111
- switch (element.index) {
1112
- case 1:
1113
- return (
1114
- <S.StepBullet key={key}>
1115
- <S.StepBulletLabel
1116
- style={{
1117
- color:
1118
- step === element.index &&
1119
- SHADE_LIGHT_PURPLE_COLOR,
1120
- fontWeight: step >= element.index && 700
1121
- }}
1122
- >
1123
- {element.title}
1124
- </S.StepBulletLabel>
1125
- <S.StepBulletIcon
1126
- src={
1127
- step === element.index
1128
- ? '/assets/img/svg/wizardstep/bullet-current.svg'
1129
- : '/assets/img/svg/wizardstep/bullet-done.svg'
1130
- }
1131
- onClick={() =>
1132
- this.setState({ step: element.index })
1133
- }
1134
- />
1135
- </S.StepBullet>
1136
- );
1137
- default:
1138
- return (
1139
- <S.StepBullet key={key}>
1140
- <S.StepBulletLabel
1141
- style={{
1142
- color:
1143
- step === element.index &&
1144
- SHADE_LIGHT_PURPLE_COLOR,
1145
- fontWeight: step >= element.index && 700
1146
- }}
1147
- >
1148
- {element.title}
1149
- </S.StepBulletLabel>
1150
- <div
1151
- style={{
1152
- display: 'flex',
1153
- position: 'relative',
1154
- width: '100%',
1155
- right: 'calc((100% - 10px) / 2)'
1156
- }}
1157
- >
1158
- <S.StepBarIcon
1159
- src={
1160
- step >= element.index - 1
1161
- ? '/assets/img/svg/wizardstep/bar-active.svg'
1162
- : '/assets/img/svg/wizardstep/bar-normal.svg'
1163
- }
1164
- />
1165
- <S.StepBulletIcon
1166
- src={
1167
- step === element.index
1168
- ? '/assets/img/svg/wizardstep/bullet-current.svg'
1169
- : step > element.index
1170
- ? '/assets/img/svg/wizardstep/bullet-done.svg'
1171
- : '/assets/img/svg/wizardstep/bullet-not-done.svg'
1172
- }
1173
- onClick={() => this.onStepChange(element.index)}
1174
- />
1175
- </div>
1176
- </S.StepBullet>
1177
- );
1178
- }
1179
- })}
1180
- </S.StepBarWrapper>
1181
- <div>
1182
- <S.Description>
1183
- <span id="description">
1184
- {stepBar[step - 1].description}
1185
- </span>
1186
- </S.Description>
1187
- </div>
1188
- {stepBar[step - 1].content}
1189
- </div>
1190
- {step === 2 && (
1191
- <div
1192
- style={{
1193
- display: 'flex',
1194
- flexDirection: 'column',
1195
- width: '100%'
1196
- }}
1197
- >
1198
- <S.DoorStyleWrapper>
1199
- {this.props.categoryData.data.doorStyles.items
1200
- .filter(item => item.name === installation.name)[0]
1201
- .items.filter(
1202
- item1 => item1.name === doorCategory.name
1203
- )[0].items.length === 0 ? (
1204
- <span
1205
- style={{
1206
- fontFamily: DEFAULT_FONT_FAMILY,
1207
- fontSize: 22,
1208
- lineHeight: '28px',
1209
- fontWeight: 700,
1210
- margin: 'auto',
1211
- marginTop: 50,
1212
- color: STATUS_NEGATIVE_COLOR,
1213
- padding: '2rem'
1214
- }}
1215
- >
1216
- There is no door style with current dealer
1217
- </span>
1218
- ) : colorFamily.id &&
1219
- this.props.categoryData.data.doorStyles.items
1220
- .filter(item => item.name === installation.name)[0]
1221
- .items.filter(
1222
- item1 => item1.name === doorCategory.name
1223
- )[0]
1224
- .items.filter(
1225
- element =>
1226
- element.color_family.search(
1227
- `,${colorFamily.id},`
1228
- ) === 0
1229
- ).length === 0 ? (
1230
- <span
1231
- style={{
1232
- fontFamily: DEFAULT_FONT_FAMILY,
1233
- fontSize: 22,
1234
- lineHeight: '28px',
1235
- fontWeight: 700,
1236
- margin: 'auto',
1237
- marginTop: 50,
1238
- color: STATUS_NEGATIVE_COLOR,
1239
- padding: '2rem'
1240
- }}
1241
- >
1242
- There is no door style with current door color family
1243
- </span>
1244
- ) : (
1245
- this.props.categoryData.data.doorStyles.items
1246
- .filter(item => item.name === installation.name)[0]
1247
- .items.filter(
1248
- item1 => item1.name === doorCategory.name
1249
- )[0]
1250
- .items.map((element, key) => {
1251
- return !colorFamily.id ||
1252
- element.color_family.search(
1253
- `,${colorFamily.id},`
1254
- ) === 0 ? (
1255
- <S.DoorStyleContentItem
1256
- style={{
1257
- margin: 0,
1258
- height: 340,
1259
- width: 160,
1260
- backgroundColor:
1261
- doorStyle.name === element.name && '#EDF1FB',
1262
- borderRadius: 6
1263
- }}
1264
- onClick={() =>
1265
- this.setState({ doorStyle: element })
1266
- }
1267
- key={key}
1268
- >
1269
- <S.FinishContentImageWrapper
1270
- id={`door&${element.name}&item`}
1271
- style={{
1272
- marginTop: 15,
1273
- border:
1274
- doorStyle.name === element.name &&
1275
- `2px solid ${SECONDARY_PURPLE_COLOR}`,
1276
- backgroundColor:
1277
- doorStyle.name === element.name &&
1278
- TEXT_COLOR_NEUTRAL_5
1279
- }}
1280
- >
1281
- <S.FinishContentImage
1282
- src={element.thumbnail}
1283
- style={{ width: '100%', height: '100%' }}
1284
- />
1285
- <S.ContentCheckImage
1286
- id="check"
1287
- src="/assets/img/svg/wizardstep/check-normal.svg"
1288
- style={{
1289
- height: 160,
1290
- width: 120,
1291
- borderRadius: 10,
1292
- backgroundColor: 'unset',
1293
- zIndex: 2
1294
- }}
1295
- />
1296
- {doorStyle.name === element.name && (
1297
- <S.ContentCheckImage
1298
- src="/assets/img/svg/wizardstep/check-active.svg"
1299
- style={{
1300
- height: 160,
1301
- width: 120,
1302
- borderRadius: 10,
1303
- backgroundColor: 'unset'
1304
- }}
1305
- />
1306
- )}
1307
- </S.FinishContentImageWrapper>
1308
- <S.ContentItemLabel
1309
- id={`door&${element.name}&label`}
1310
- style={{
1311
- fontWeight:
1312
- doorStyle.name === element.name && 700,
1313
- color:
1314
- doorStyle.name === element.name
1315
- ? SECONDARY_PURPLE_COLOR
1316
- : TEXT_COLOR_NEUTRAL_0,
1317
- maxWidth: '130px'
1318
- }}
1319
- >
1320
- {element.name}
1321
- </S.ContentItemLabel>
1322
- </S.DoorStyleContentItem>
1323
- ) : null;
1324
- })
1325
- )}
1326
- </S.DoorStyleWrapper>
1327
- </div>
1328
- )}
1329
- </div>
1330
- <StyledDialog
1331
- open={cancelDialogVisible}
1332
- onClose={() => this.setState({ cancelDialogVisible: false })}
1333
- >
1334
- <S.DialogContent>
1335
- Do you want to apply your current selections or start from
1336
- scratch?
1337
- </S.DialogContent>
1338
- <S.DialogAction>
1339
- <S.Button
1340
- onClick={() => {
1341
- this.props.close();
1342
- this.context.viewer2DActions.updateCeilHeight(96);
1343
- this.context.viewer2DActions.updateCeilHeightUnit('in');
1344
- this.context.viewer3DActions.update3DCeilHeight(96);
1345
- this.context.viewer3DActions.update3DCeilHeightUnit('in');
1346
- }}
1347
- >
1348
- Discard
1349
- </S.Button>
1350
- <S.Button onClick={() => this._confirm(0)}>Apply</S.Button>
1351
- </S.DialogAction>
1352
- </StyledDialog>
1353
- </S.WizardStepWrapper>
1354
- )}
1355
- </div>
1356
- );
1357
- }
1358
- }
1359
-
1360
- WizardStep.propTypes = {
1361
- state: PropTypes.object.isRequired,
1362
- content: PropTypes.number.isRequired
1363
- };
1364
-
1365
- WizardStep.contextTypes = {
1366
- projectActions: PropTypes.object.isRequired,
1367
- viewer2DActions: PropTypes.object.isRequired,
1368
- viewer3DActions: PropTypes.object.isRequired,
1369
- linesActions: PropTypes.object.isRequired,
1370
- itemsActions: PropTypes.object.isRequired,
1371
- catalog: PropTypes.object.isRequired
1372
- };