kitchen-simulator 4.1.6-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 +130 -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 +0 -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 +100 -131
  60. package/es/components/viewer3d/front3D.js +2 -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 +85 -127
  65. package/es/constants.js +7 -2
  66. package/es/index.html.ejs +264 -0
  67. package/es/index.js +589 -61
  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 -477
  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 -238
  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 -1514
  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 -71
  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 -2697
  598. package/lib/constants.js +0 -773
  599. package/lib/devLiteRenderer.js +0 -546
  600. package/lib/index.js +0 -107
  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
Binary file
@@ -1,6 +1,13 @@
1
- <svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path d="M14.5566 21L1.90534 17.3692L0.994629 4.08225L14.8953 6.34589L14.5566 21Z" stroke="#4C12A1" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round" stroke-dasharray="5 3"/>
3
- <path d="M14.5564 21L20.2416 14.9342L21.0051 2.53974L14.8952 6.34589" stroke="#4C12A1" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round" stroke-dasharray="5 3"/>
4
- <path d="M8.91868 1L9.14126 12.3969L1.90534 17.3692L0.994629 4.08224L8.91868 1Z" stroke="#4C12A1" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round" stroke-dasharray="5 3"/>
5
- <path d="M8.9187 1L21.0053 2.53972L20.2418 14.9342L9.14128 12.3969L8.9187 1Z" stroke="#4C12A1" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round" stroke-dasharray="5 3"/>
1
+ <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g clip-path="url(#clip0_1516_100789)">
3
+ <path d="M4.25 6L2 7.125L8 10.125L14 7.125L11.75 6" stroke="rgba(58, 11, 128, 1)" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
4
+ <path d="M2 10.125L8 13.125L14 10.125" stroke="rgba(58, 11, 128, 1)" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
5
+ <path d="M8 7.125V1.875" stroke="rgba(58, 11, 128, 1)" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
6
+ <path d="M5.75 4.125L8 1.875L10.25 4.125" stroke="rgba(58, 11, 128, 1)" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
7
+ </g>
8
+ <defs>
9
+ <clipPath id="clip0_1516_100789">
10
+ <rect width="16" height="16" fill="white"/>
11
+ </clipPath>
12
+ </defs>
6
13
  </svg>
@@ -1,7 +1,8 @@
1
1
  import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
2
  import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
3
3
  import _createClass from "@babel/runtime/helpers/esm/createClass";
4
- import { UNIT_CENTIMETER } from "../constants";
4
+ import { PropertyColor, PropertyEnum, PropertyString, PropertyNumber, PropertyLengthMeasure, PropertyToggle, PropertyCheckbox, PropertyHidden, PropertyReadOnly } from "./properties/export";
5
+ import { UNIT_CENTIMETER, UNIT_INCH } from "../constants";
5
6
  import { returnReplaceableDeepSearchType } from "../components/viewer2d/utils";
6
7
  var Catalog = /*#__PURE__*/function () {
7
8
  function Catalog() {
@@ -18,6 +19,7 @@ var Catalog = /*#__PURE__*/function () {
18
19
  };
19
20
  this.propertyTypes = {};
20
21
  this.unit = unit;
22
+ this.registerMultiplePropertyType([['color', PropertyColor, PropertyColor], ['enum', PropertyEnum, PropertyEnum], ['string', PropertyString, PropertyString], ['number', PropertyNumber, PropertyNumber], ['length-measure', PropertyLengthMeasure, PropertyLengthMeasure], ['toggle', PropertyToggle, PropertyToggle], ['checkbox', PropertyCheckbox, PropertyCheckbox], ['hidden', PropertyHidden, PropertyHidden], ['read-only', PropertyReadOnly, PropertyReadOnly]]);
21
23
  }
22
24
 
23
25
  /**
@@ -83,6 +85,20 @@ var Catalog = /*#__PURE__*/function () {
83
85
  }
84
86
  }
85
87
 
88
+ /**
89
+ * @description Register multiple elements
90
+ * @param {array} [elementArray] Array of elements
91
+ * @return {void}
92
+ */
93
+ }, {
94
+ key: "registerMultipleElements",
95
+ value: function registerMultipleElements(elementArray) {
96
+ var _this = this;
97
+ elementArray.forEach(function (el) {
98
+ return _this.registerElement(el);
99
+ });
100
+ }
101
+
86
102
  /**
87
103
  * @description Register a new property
88
104
  * @param {string} type Type of property
@@ -108,9 +124,9 @@ var Catalog = /*#__PURE__*/function () {
108
124
  }, {
109
125
  key: "registerMultiplePropertyType",
110
126
  value: function registerMultiplePropertyType(propertyTypeArray) {
111
- var _this = this;
127
+ var _this2 = this;
112
128
  propertyTypeArray.forEach(function (el) {
113
- return _this.registerPropertyType.apply(_this, _toConsumableArray(el));
129
+ return _this2.registerPropertyType.apply(_this2, _toConsumableArray(el));
114
130
  });
115
131
  }
116
132
 
@@ -163,7 +179,7 @@ var Catalog = /*#__PURE__*/function () {
163
179
  }, {
164
180
  key: "registerCategory",
165
181
  value: function registerCategory(name, label, childs) {
166
- var _this2 = this;
182
+ var _this3 = this;
167
183
  if (this.validateCategory(name, label)) {
168
184
  this.categories[name] = {
169
185
  name: name,
@@ -174,7 +190,7 @@ var Catalog = /*#__PURE__*/function () {
174
190
  this.categories.root.categories.push(this.categories[name]);
175
191
  if (childs && childs.length) {
176
192
  childs.forEach(function (el) {
177
- return _this2.addToCategory(name, el);
193
+ return _this3.addToCategory(name, el);
178
194
  });
179
195
  }
180
196
  return this.categories[name];
@@ -1,9 +1,9 @@
1
- import * as Three from "three";
2
- import { Box3, Mesh, MeshBasicMaterial, MeshPhysicalMaterial, RepeatWrapping, Shape, TextureLoader, Vector2 } from "three";
1
+ import * as Three from 'three';
2
+ import { Box3, Mesh, MeshBasicMaterial, MeshPhysicalMaterial, RepeatWrapping, Shape, TextureLoader, Vector2 } from 'three';
3
3
  import * as SharedStyle from "../../shared-style";
4
- import { RGBELoader } from "three/examples/jsm/loaders/RGBELoader";
4
+ import { RGBELoader } from 'three/examples/jsm/loaders/RGBELoader.js';
5
5
  var params = {
6
- envMap: "HDR",
6
+ envMap: 'HDR',
7
7
  roughness: 0.9,
8
8
  metalness: 0.8,
9
9
  exposure: 1.0
@@ -58,7 +58,7 @@ var assignUVs = function assignUVs(geometry) {
58
58
  var y3 = position.getY(i + 2);
59
59
  uvArray.push((x1 + offset.x) / range.x, (y1 + offset.y) / range.y, (x2 + offset.x) / range.x, (y2 + offset.y) / range.y, (x3 + offset.x) / range.x, (y3 + offset.y) / range.y);
60
60
  }
61
- geometry.setAttribute("uv", new Three.BufferAttribute(new Float32Array(uvArray), 2));
61
+ geometry.setAttribute('uv', new Three.BufferAttribute(new Float32Array(uvArray), 2));
62
62
  geometry.needsUpdate = true;
63
63
  };
64
64
  export function createArea(element, layer, scene, textures) {
@@ -69,15 +69,15 @@ export function createArea(element, layer, scene, textures) {
69
69
  var texture = element.texture;
70
70
  texture.lengthRepeatScale = 0.01;
71
71
  texture.heightRepeatScale = 0.01;
72
- var color = element.properties.get("patternColor");
72
+ var color = element.properties.get('patternColor');
73
73
  if (element.selected) {
74
74
  color = SharedStyle.AREA_MESH_COLOR.selected;
75
75
  } else {
76
76
  color = SharedStyle.AREA_MESH_COLOR.unselected;
77
77
  }
78
- if (texture.uri === undefined || texture.uri == "") {
78
+ if (texture.uri === undefined || texture.uri == '') {
79
79
  // @todo THIS IS A TEMPORARY FIX TO HAVE A DEFAULT FLOOR TEXTURE
80
- texture.uri = layer.floorStyle.uri || "https://media.test.diydesignspace.com/uploads/CountTop/202203162950_2/texture/oak-barcelona-s.jpg";
80
+ texture.uri = layer.floorStyle.uri || 'https://media.test.diydesignspace.com/uploads/CountTop/202203162950_2/texture/oak-barcelona-s.jpg';
81
81
  }
82
82
  var shape = new Shape();
83
83
  shape.moveTo(vertices[0].x, vertices[0].y);
@@ -85,7 +85,7 @@ export function createArea(element, layer, scene, textures) {
85
85
  shape.lineTo(vertices[i].x, vertices[i].y);
86
86
  }
87
87
  function loadFloorENV() {
88
- return new RGBELoader().load("/assets/Window.hdr", function (texture) {
88
+ return new RGBELoader().load('/assets/Window.hdr', function (texture) {
89
89
  texture.mapping = Three.EquirectangularReflectionMapping;
90
90
  return texture;
91
91
  });
@@ -105,8 +105,8 @@ export function createArea(element, layer, scene, textures) {
105
105
  /* Create holes for the area */
106
106
  element.holes.forEach(function (holeID) {
107
107
  var holeCoords = [];
108
- layer.getIn(["areas", holeID, "vertices"]).forEach(function (vertexID) {
109
- var _layer$getIn = layer.getIn(["vertices", vertexID]),
108
+ layer.getIn(['areas', holeID, 'vertices']).forEach(function (vertexID) {
109
+ var _layer$getIn = layer.getIn(['vertices', vertexID]),
110
110
  x = _layer$getIn.x,
111
111
  y = _layer$getIn.y;
112
112
  holeCoords.push([x, y]);
@@ -133,7 +133,7 @@ export function createArea(element, layer, scene, textures) {
133
133
  var area = new Mesh(shapeGeometry, areaMaterial);
134
134
  area.rotation.x -= Math.PI / 2;
135
135
  area.receiveShadow = true;
136
- area.name = "floor";
136
+ area.name = 'floor';
137
137
  // This mesh is use for creating ceiling mesh
138
138
 
139
139
  var shapeGeometry2 = new Three.ShapeGeometry(shape);
@@ -144,7 +144,7 @@ export function createArea(element, layer, scene, textures) {
144
144
  area2.castShadow = true;
145
145
  area2.rotation.x -= Math.PI / 2;
146
146
  area2.receiveShadow = true;
147
- area2.name = "floorSupport";
147
+ area2.name = 'floorSupport';
148
148
  var floorSupport = area2.clone();
149
149
  area.userData.floorSupport = floorSupport;
150
150
  return Promise.resolve(area);
@@ -154,13 +154,13 @@ export function updatedArea(element, layer, scene, textures, mesh, oldElement, d
154
154
  selfDestroy();
155
155
  return selfBuild();
156
156
  };
157
- var floor = mesh.getObjectByName("floor");
157
+ var floor = mesh.getObjectByName('floor');
158
158
  floor.receiveShadow = true;
159
- if (differences[0] == "selected") {
159
+ if (differences[0] == 'selected') {
160
160
  var color = element.selected ? SharedStyle.AREA_MESH_COLOR.selected : SharedStyle.AREA_MESH_COLOR.unselected;
161
161
  floor.material.color.set(color);
162
- } else if (differences[0] == "properties") {
163
- if (differences[1] === "texture") {
162
+ } else if (differences[0] == 'properties') {
163
+ if (differences[1] === 'texture') {
164
164
  return noPerf();
165
165
  }
166
166
  } else return noPerf();
@@ -4,12 +4,12 @@ import { loadGLTF, scaleObject } from "../../utils/load-obj";
4
4
  import { OBJTYPE_MESH } from "../../../constants";
5
5
  var cached3DWindow = null;
6
6
  export default {
7
- name: 'Clear Window',
7
+ name: 'Window',
8
8
  prototype: 'holes',
9
9
  info: {
10
10
  title: 'Clear',
11
11
  tag: ['window'],
12
- description: 'Clear Window',
12
+ description: 'Window',
13
13
  image: '/assets/img/svg/window/Clear.svg',
14
14
  url: '/assets/gltf/window_clear.gltf'
15
15
  },
@@ -0,0 +1,21 @@
1
+ import PropertyColor from "./property-color";
2
+ import PropertyEnum from "./property-enum";
3
+ import PropertyString from "./property-string";
4
+ import PropertyNumber from "./property-number";
5
+ import PropertyLengthMeasure from "./property-length-measure";
6
+ import PropertyToggle from "./property-toggle";
7
+ import PropertyCheckbox from "./property-checkbox";
8
+ import PropertyHidden from "./property-hidden";
9
+ import PropertyReadOnly from "./property-read-only";
10
+ export { PropertyColor, PropertyEnum, PropertyString, PropertyNumber, PropertyLengthMeasure, PropertyToggle, PropertyCheckbox, PropertyHidden, PropertyReadOnly };
11
+ export default {
12
+ PropertyColor: PropertyColor,
13
+ PropertyEnum: PropertyEnum,
14
+ PropertyString: PropertyString,
15
+ PropertyNumber: PropertyNumber,
16
+ PropertyLengthMeasure: PropertyLengthMeasure,
17
+ PropertyToggle: PropertyToggle,
18
+ PropertyCheckbox: PropertyCheckbox,
19
+ PropertyHidden: PropertyHidden,
20
+ PropertyReadOnly: PropertyReadOnly
21
+ };
@@ -0,0 +1,68 @@
1
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
+ import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
3
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
4
+ 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; }
5
+ 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; }
6
+ import React from 'react';
7
+ import PropTypes from 'prop-types';
8
+ import { FormLabel } from "../../components/style/export";
9
+ import PropertyStyle from "./shared-property-style";
10
+ import styled from 'styled-components';
11
+ import { DEFAULT_FONT_FAMILY, SECONDARY_PURPLE_COLOR, TEXT_COLOR_NEUTRAL_0 } from "../../constants";
12
+ var FlipWrapper = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n margin: 15px 0;\n justify-content: space-between;\n"])));
13
+ var FlipTitle = styled.span(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n margin-right: auto;\n color: ", ";\n font-family: ", ";\n font-size: 16px;\n font-weight: 600;\n line-height: 18px;\n text-align: left;\n"])), SECONDARY_PURPLE_COLOR, DEFAULT_FONT_FAMILY);
14
+ var FlipDescription = styled.span(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n margin-right: auto;\n color: ", ";\n font-family: ", ";\n font-size: 13px;\n font-weight: 400;\n line-height: 18px;\n text-align: left;\n"])), TEXT_COLOR_NEUTRAL_0, DEFAULT_FONT_FAMILY);
15
+ var FlipInfoWrapper = styled.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n"])));
16
+ var FlipToggle = styled.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n display: flex;\n position: relative;\n align-items: center;\n justify-content: center;\n font-size: 14px;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n"])));
17
+ var FlipToggleIcon = styled.div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n top: 0;\n position: absolute;\n ", "\n img {\n font-size: 1.4rem;\n box-sizing: border-box;\n border-radius: 50%;\n }\n"])), '' /* transition-duration: .3s; */);
18
+ export default function PropertyCheckbox(_ref) {
19
+ var value = _ref.value,
20
+ onUpdate = _ref.onUpdate,
21
+ configs = _ref.configs,
22
+ sourceElement = _ref.sourceElement,
23
+ internalState = _ref.internalState,
24
+ state = _ref.state;
25
+ var update = function update(val) {
26
+ if (configs.hook) {
27
+ return configs.hook(val, sourceElement, internalState, state).then(function (_val) {
28
+ return onUpdate(_val);
29
+ });
30
+ }
31
+ return onUpdate(val);
32
+ };
33
+ var activeStyle = value == 0 ? {
34
+ left: 0
35
+ } : {
36
+ right: 0
37
+ };
38
+ return /*#__PURE__*/React.createElement(FlipWrapper, null, /*#__PURE__*/React.createElement(FlipInfoWrapper, null, /*#__PURE__*/React.createElement(FlipTitle, null, configs.label), configs.description && /*#__PURE__*/React.createElement(FlipDescription, null, configs.description)), /*#__PURE__*/React.createElement(FlipToggle, {
39
+ style: {
40
+ color: 'black'
41
+ },
42
+ onClick: function onClick(e) {
43
+ return update(!value);
44
+ }
45
+ }, /*#__PURE__*/React.createElement("img", {
46
+ src: "/assets/img/svg/bottombar/".concat(value != 0 ? '2d3d_toggle_active.svg' : '2d3d_toggle.svg'),
47
+ style: {
48
+ width: '55px',
49
+ height: '30px'
50
+ }
51
+ }), /*#__PURE__*/React.createElement(FlipToggleIcon, {
52
+ style: _objectSpread({}, activeStyle)
53
+ }, /*#__PURE__*/React.createElement("img", {
54
+ src: "/assets/img/svg/bottombar/".concat(value != 0 ? '2d3d_button_active.svg' : '2d3d_button.svg'),
55
+ style: {
56
+ width: '30px',
57
+ height: '30px'
58
+ }
59
+ }))));
60
+ }
61
+ PropertyCheckbox.propTypes = {
62
+ value: PropTypes.any.isRequired,
63
+ onUpdate: PropTypes.func.isRequired,
64
+ configs: PropTypes.object.isRequired,
65
+ sourceElement: PropTypes.object,
66
+ internalState: PropTypes.object,
67
+ state: PropTypes.object.isRequired
68
+ };
@@ -0,0 +1,39 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { FormLabel, FormColorInput } from "../../components/style/export";
4
+ import PropertyStyle from "./shared-property-style";
5
+ export default function PropertyColor(_ref) {
6
+ var value = _ref.value,
7
+ onUpdate = _ref.onUpdate,
8
+ configs = _ref.configs,
9
+ sourceElement = _ref.sourceElement,
10
+ internalState = _ref.internalState,
11
+ state = _ref.state;
12
+ var update = function update(val) {
13
+ if (configs.hook) {
14
+ return configs.hook(val, sourceElement, internalState, state).then(function (_val) {
15
+ return onUpdate(_val);
16
+ });
17
+ }
18
+ return onUpdate(val);
19
+ };
20
+ return /*#__PURE__*/React.createElement("table", {
21
+ className: "PropertyColor",
22
+ style: PropertyStyle.tableStyle
23
+ }, /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", {
24
+ style: PropertyStyle.firstTdStyle
25
+ }, /*#__PURE__*/React.createElement(FormLabel, null, configs.label)), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement(FormColorInput, {
26
+ value: value,
27
+ onChange: function onChange(event) {
28
+ return update(event.target.value);
29
+ }
30
+ })))));
31
+ }
32
+ PropertyColor.propTypes = {
33
+ value: PropTypes.any.isRequired,
34
+ onUpdate: PropTypes.func.isRequired,
35
+ configs: PropTypes.object.isRequired,
36
+ sourceElement: PropTypes.object,
37
+ internalState: PropTypes.object,
38
+ state: PropTypes.object.isRequired
39
+ };
@@ -0,0 +1,50 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
+ import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
3
+ var _templateObject, _templateObject2;
4
+ import React from 'react';
5
+ import PropTypes from 'prop-types';
6
+ import { Seq } from 'immutable';
7
+ import { FormLabel, FormSelect } from "../../components/style/export";
8
+ import PropertyStyle from "./shared-property-style";
9
+ import styled from 'styled-components';
10
+ import { TEXT_COLOR_NEUTRAL_0, DEFAULT_FONT_FAMILY } from "../../constants";
11
+ var EnumWrapper = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n margin-top: 3px;\n"])));
12
+ var EnumTitle = styled.span(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n margin-right: auto;\n width: 110px;\n color: ", ";\n font-family: ", ";\n\n @media screen and (min-width: 1024) {\n font-size: 11px;\n }\n @media screen and (max-width: 1024) {\n font-size: 11px;\n }\n @media screen and (min-width: 1366) {\n font-size: 13px;\n }\n @media screen and (max-width: 1366) {\n font-size: 13px;\n }\n @media screen and (min-width: 1440) {\n font-size: 16px;\n }\n @media screen and (max-width: 1440) {\n font-size: 16px;\n }\n font-weight: 400;\n line-height: 15px;\n text-align: left;\n"])), TEXT_COLOR_NEUTRAL_0, DEFAULT_FONT_FAMILY);
13
+ export default function PropertyEnum(_ref) {
14
+ var value = _ref.value,
15
+ onUpdate = _ref.onUpdate,
16
+ configs = _ref.configs,
17
+ sourceElement = _ref.sourceElement,
18
+ internalState = _ref.internalState,
19
+ state = _ref.state;
20
+ var update = function update(val) {
21
+ if (configs.hook) {
22
+ return configs.hook(val, sourceElement, internalState, state).then(function (_val) {
23
+ return onUpdate(_val);
24
+ });
25
+ }
26
+ return onUpdate(val);
27
+ };
28
+ return /*#__PURE__*/React.createElement(EnumWrapper, null, /*#__PURE__*/React.createElement(EnumTitle, null, configs.label), /*#__PURE__*/React.createElement(FormSelect, {
29
+ value: value,
30
+ onChange: function onChange(event) {
31
+ return update(event.target.value);
32
+ }
33
+ }, Seq(configs.values).entrySeq().map(function (_ref2) {
34
+ var _ref3 = _slicedToArray(_ref2, 2),
35
+ key = _ref3[0],
36
+ value = _ref3[1];
37
+ return /*#__PURE__*/React.createElement("option", {
38
+ key: key,
39
+ value: key
40
+ }, value);
41
+ })));
42
+ }
43
+ PropertyEnum.propTypes = {
44
+ value: PropTypes.any.isRequired,
45
+ onUpdate: PropTypes.func.isRequired,
46
+ configs: PropTypes.object.isRequired,
47
+ sourceElement: PropTypes.object,
48
+ internalState: PropTypes.object,
49
+ state: PropTypes.object.isRequired
50
+ };
@@ -0,0 +1,19 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ export default function PropertyHidden(_ref) {
4
+ var value = _ref.value,
5
+ onUpdate = _ref.onUpdate,
6
+ configs = _ref.configs,
7
+ sourceElement = _ref.sourceElement,
8
+ internalState = _ref.internalState,
9
+ state = _ref.state;
10
+ return null;
11
+ }
12
+ PropertyHidden.propTypes = {
13
+ value: PropTypes.any.isRequired,
14
+ onUpdate: PropTypes.func.isRequired,
15
+ configs: PropTypes.object.isRequired,
16
+ sourceElement: PropTypes.object,
17
+ internalState: PropTypes.object,
18
+ state: PropTypes.object.isRequired
19
+ };
@@ -0,0 +1,96 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
+ var _excluded = ["hook", "label"];
4
+ import React from 'react';
5
+ import PropTypes from 'prop-types';
6
+ import { BASE_CABINET_LAYOUTPOS, TALL_CABINET_LAYOUTPOS, UNITS_LENGTH, UNIT_INCH } from "../../constants";
7
+ import { convert } from "../../utils/convert-units-lite";
8
+ import { FormLabel, FormNumberInput, FormSelect } from "../../components/style/export";
9
+ import { Map } from 'immutable';
10
+ import { toFixedFloat } from "../../utils/math";
11
+ import PropertyStyle from "./shared-property-style";
12
+ var internalTableStyle = {
13
+ borderCollapse: 'collapse'
14
+ };
15
+ var secondTdStyle = {
16
+ padding: 0
17
+ };
18
+ var unitContainerStyle = {
19
+ width: '5em'
20
+ };
21
+ export default function PropertyLengthMeasure(_ref) {
22
+ var value = _ref.value,
23
+ onUpdate = _ref.onUpdate,
24
+ onValid = _ref.onValid,
25
+ configs = _ref.configs,
26
+ sourceElement = _ref.sourceElement,
27
+ internalState = _ref.internalState,
28
+ state = _ref.state;
29
+ var length = value.get('length') || 0; // length in inch
30
+ var _length = value.get('_length') || length; // length in unit
31
+ var _unit = value.get('_unit') || UNIT_INCH;
32
+ var type = value.get('type') || BASE_CABINET_LAYOUTPOS;
33
+ var hook = configs.hook,
34
+ label = configs.label,
35
+ configRest = _objectWithoutProperties(configs, _excluded);
36
+ var update = function update(lengthInput, unitInput, type) {
37
+ var newLength = toFixedFloat(lengthInput);
38
+ var merged = null;
39
+ if (type === 0) {
40
+ merged = value.merge({
41
+ length: unitInput !== UNIT_INCH ? convert(newLength).from(unitInput).to(UNIT_INCH) : newLength,
42
+ _length: newLength
43
+ });
44
+ } else {
45
+ merged = value.merge({
46
+ _length: convert(newLength).from(UNIT_INCH).to(unitInput),
47
+ _unit: unitInput
48
+ });
49
+ }
50
+ if (hook) {
51
+ return hook(merged, sourceElement, internalState, state).then(function (val) {
52
+ return onUpdate(val);
53
+ });
54
+ }
55
+ return onUpdate(merged);
56
+ };
57
+ return /*#__PURE__*/React.createElement("table", {
58
+ className: "PropertyLengthMeasure",
59
+ style: PropertyStyle.tableStyle
60
+ }, /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", {
61
+ style: PropertyStyle.firstTdStyle
62
+ }, /*#__PURE__*/React.createElement(FormLabel, null, label)), /*#__PURE__*/React.createElement("td", {
63
+ style: secondTdStyle
64
+ }, /*#__PURE__*/React.createElement("table", {
65
+ style: internalTableStyle
66
+ }, /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement(FormNumberInput, _extends({
67
+ disabled: type === TALL_CABINET_LAYOUTPOS,
68
+ value: _length,
69
+ onChange: function onChange(event) {
70
+ return update(event.target.value, _unit, 0);
71
+ },
72
+ onValid: onValid
73
+ }, configRest))), /*#__PURE__*/React.createElement("td", {
74
+ style: unitContainerStyle
75
+ }, /*#__PURE__*/React.createElement(FormSelect, {
76
+ disabled: type === TALL_CABINET_LAYOUTPOS,
77
+ value: _unit,
78
+ onChange: function onChange(event) {
79
+ return update(length, event.target.value, 1);
80
+ }
81
+ }, UNITS_LENGTH.map(function (el) {
82
+ return /*#__PURE__*/React.createElement("option", {
83
+ key: el,
84
+ value: el
85
+ }, el);
86
+ }))))))))));
87
+ }
88
+ PropertyLengthMeasure.propTypes = {
89
+ value: PropTypes.instanceOf(Map).isRequired,
90
+ onUpdate: PropTypes.func.isRequired,
91
+ onValid: PropTypes.func,
92
+ configs: PropTypes.object.isRequired,
93
+ sourceElement: PropTypes.object,
94
+ internalState: PropTypes.object,
95
+ state: PropTypes.object.isRequired
96
+ };
@@ -0,0 +1,80 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
+ import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
4
+ var _excluded = ["hook", "label"];
5
+ var _templateObject, _templateObject2;
6
+ import React from 'react';
7
+ import PropTypes from 'prop-types';
8
+ import { BASE_CABINET_LAYOUTPOS, DEFAULT_FONT_FAMILY, TALL_CABINET_LAYOUTPOS, TEXT_COLOR_NEUTRAL_0, UNIT_CENTIMETER, UNIT_INCH } from "../../constants";
9
+ import { convert } from "../../utils/convert-units-lite";
10
+ import { FormNumberInput } from "../../components/style/export";
11
+ import { Map } from 'immutable';
12
+ import { toFixedFloat } from "../../utils/math";
13
+ import styled from 'styled-components';
14
+ var DistanceFloorWrapper = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n margin-top: 3px;\n"])));
15
+ var DistanceFloorTitle = styled.span(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n margin-right: auto;\n width: 110px;\n color: ", ";\n font-family: ", ";\n font-size: 16px;\n\n @media screen and (min-width: 1024) {\n font-size: 11px;\n }\n @media screen and (max-width: 1024) {\n font-size: 11px;\n }\n @media screen and (min-width: 1366) {\n font-size: 13px;\n }\n @media screen and (max-width: 1366) {\n font-size: 13px;\n }\n @media screen and (min-width: 1440) {\n font-size: 16px;\n }\n @media screen and (max-width: 1440) {\n font-size: 16px;\n }\n font-weight: 400;\n line-height: 15px;\n text-align: left;\n"])), TEXT_COLOR_NEUTRAL_0, DEFAULT_FONT_FAMILY);
16
+ export default function PropertyLengthMeasure(_ref) {
17
+ var value = _ref.value,
18
+ onUpdate = _ref.onUpdate,
19
+ onValid = _ref.onValid,
20
+ configs = _ref.configs,
21
+ sourceElement = _ref.sourceElement,
22
+ internalState = _ref.internalState,
23
+ state = _ref.state;
24
+ var _unit = value.get('_unit');
25
+ var unit = state.getIn(['scene', 'layers', state.scene.selectedLayer, 'unit']);
26
+ var length = value.get('length') || 0; // in centi
27
+ var _length = value.get('_length') || length; // in _unit
28
+ if (!_unit) {
29
+ _unit = UNIT_INCH;
30
+ _length = convert(length).from(UNIT_CENTIMETER).to(UNIT_INCH);
31
+ }
32
+ var type = value.get('type') || BASE_CABINET_LAYOUTPOS;
33
+ var hook = configs.hook,
34
+ label = configs.label,
35
+ configRest = _objectWithoutProperties(configs, _excluded);
36
+ var update = function update(lengthInput, unitInput, type) {
37
+ var newLength = toFixedFloat(lengthInput);
38
+ var merged = null;
39
+ if (type === 0) {
40
+ merged = value.merge({
41
+ _length: newLength,
42
+ _unit: unitInput,
43
+ length: convert(newLength).from(unitInput).to(UNIT_CENTIMETER)
44
+ });
45
+ } else {
46
+ merged = value.merge({
47
+ _length: convert(newLength).from(UNIT_CENTIMETER).to(unitInput),
48
+ _unit: unitInput,
49
+ length: newLength
50
+ });
51
+ }
52
+ if (hook) {
53
+ return hook(merged, sourceElement, internalState, state).then(function (val) {
54
+ return onUpdate(val);
55
+ });
56
+ }
57
+ return onUpdate(merged);
58
+ };
59
+ return /*#__PURE__*/React.createElement(DistanceFloorWrapper, null, /*#__PURE__*/React.createElement(DistanceFloorTitle, null, label), /*#__PURE__*/React.createElement(FormNumberInput, _extends({
60
+ disabled: type === TALL_CABINET_LAYOUTPOS,
61
+ value: convert(_length).from('in').to(unit),
62
+ onChange: function onChange(event) {
63
+ return update(event.target.value, _unit, 0);
64
+ },
65
+ onValid: onValid,
66
+ labelName: label,
67
+ style: {
68
+ paddingRight: '40px'
69
+ }
70
+ }, configRest)));
71
+ }
72
+ PropertyLengthMeasure.propTypes = {
73
+ value: PropTypes.instanceOf(Map).isRequired,
74
+ onUpdate: PropTypes.func.isRequired,
75
+ onValid: PropTypes.func,
76
+ configs: PropTypes.object.isRequired,
77
+ sourceElement: PropTypes.object,
78
+ internalState: PropTypes.object,
79
+ state: PropTypes.object.isRequired
80
+ };