kitchen-simulator 1.1.1-test.9 → 2.0.1

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 (1034) hide show
  1. package/README.md +24 -1
  2. package/es/LiteKitchenConfigurator.js +480 -0
  3. package/es/LiteRenderer.js +503 -0
  4. package/es/actions/export.js +25 -12
  5. package/es/actions/items-actions.js +11 -6
  6. package/es/actions/project-actions.js +9 -4
  7. package/es/analytics/ga4.js +1 -4
  8. package/es/assets/Window.hdr +2100 -0
  9. package/es/assets/brown_photostudio_02_1k.hdr +0 -0
  10. package/es/assets/fonts/Rene Bieder Milliard Black Italic.woff +0 -0
  11. package/es/assets/fonts/Rene Bieder Milliard Black.woff +0 -0
  12. package/es/assets/fonts/Rene Bieder Milliard Bold Italic.woff +0 -0
  13. package/es/assets/fonts/Rene Bieder Milliard Bold.woff +0 -0
  14. package/es/assets/fonts/Rene Bieder Milliard Book Italic.woff +0 -0
  15. package/es/assets/fonts/Rene Bieder Milliard Book.woff +0 -0
  16. package/es/assets/fonts/Rene Bieder Milliard ExtraBold Italic.woff +0 -0
  17. package/es/assets/fonts/Rene Bieder Milliard ExtraBold.woff +0 -0
  18. package/es/assets/fonts/Rene Bieder Milliard ExtraLight Italic.woff +0 -0
  19. package/es/assets/fonts/Rene Bieder Milliard ExtraLight.woff +0 -0
  20. package/es/assets/fonts/Rene Bieder Milliard Hairline Italic.woff +0 -0
  21. package/es/assets/fonts/Rene Bieder Milliard Hairline.woff +0 -0
  22. package/es/assets/fonts/Rene Bieder Milliard Heavy Italic.woff +0 -0
  23. package/es/assets/fonts/Rene Bieder Milliard Heavy.woff +0 -0
  24. package/es/assets/fonts/Rene Bieder Milliard Light Italic.woff +0 -0
  25. package/es/assets/fonts/Rene Bieder Milliard Light.woff +0 -0
  26. package/es/assets/fonts/Rene Bieder Milliard Medium Italic.woff +0 -0
  27. package/es/assets/fonts/Rene Bieder Milliard Medium.woff +0 -0
  28. package/es/assets/fonts/Rene Bieder Milliard SemiBold Italic.woff +0 -0
  29. package/es/assets/fonts/Rene Bieder Milliard SemiBold.woff +0 -0
  30. package/es/assets/fonts/Rene Bieder Milliard Thin Italic.woff +0 -0
  31. package/es/assets/fonts/Rene Bieder Milliard Thin.woff +0 -0
  32. package/es/assets/fonts/style.css +177 -0
  33. package/es/assets/gltf/door_closet.bin +0 -0
  34. package/es/assets/gltf/door_closet.fbx +0 -0
  35. package/es/assets/gltf/door_closet.gltf +1 -0
  36. package/es/assets/gltf/door_exterior.bin +0 -0
  37. package/es/assets/gltf/door_exterior.fbx +0 -0
  38. package/es/assets/gltf/door_exterior.gltf +1 -0
  39. package/es/assets/gltf/door_interior.bin +0 -0
  40. package/es/assets/gltf/door_interior.fbx +0 -0
  41. package/es/assets/gltf/door_interior.gltf +1 -0
  42. package/es/assets/gltf/door_sliding.bin +0 -0
  43. package/es/assets/gltf/door_sliding.fbx +0 -0
  44. package/es/assets/gltf/door_sliding.gltf +1 -0
  45. package/es/assets/gltf/doorway_framed.bin +0 -0
  46. package/es/assets/gltf/doorway_framed.fbx +0 -0
  47. package/es/assets/gltf/doorway_framed.gltf +1 -0
  48. package/es/assets/gltf/window_clear.bin +0 -0
  49. package/es/assets/gltf/window_clear.fbx +0 -0
  50. package/es/assets/gltf/window_clear.gltf +1 -0
  51. package/es/assets/gltf/window_cross.bin +0 -0
  52. package/es/assets/gltf/window_cross.fbx +0 -0
  53. package/es/assets/gltf/window_cross.gltf +1 -0
  54. package/es/assets/gltf/window_double_hung.bin +0 -0
  55. package/es/assets/gltf/window_double_hung.fbx +0 -0
  56. package/es/assets/gltf/window_double_hung.gltf +1 -0
  57. package/es/assets/gltf/window_vertical.bin +0 -0
  58. package/es/assets/gltf/window_vertical.fbx +0 -0
  59. package/es/assets/gltf/window_vertical.gltf +1 -0
  60. package/es/assets/img/1.jpg +0 -0
  61. package/es/assets/img/TKC_thumbnail.png +0 -0
  62. package/es/assets/img/Toggle.png +0 -0
  63. package/es/assets/img/loading/loading.gif +0 -0
  64. package/es/assets/img/loading/loading_1.svg +11 -0
  65. package/es/assets/img/loading_large.gif +0 -0
  66. package/es/assets/img/png/door/closet.png +0 -0
  67. package/es/assets/img/png/door/doorwaysframed.png +0 -0
  68. package/es/assets/img/png/door/doorwaysframeles.png +0 -0
  69. package/es/assets/img/png/door/doorwaysframeless.png +0 -0
  70. package/es/assets/img/png/door/exterior.png +0 -0
  71. package/es/assets/img/png/door/interior.png +0 -0
  72. package/es/assets/img/png/door/sliding.png +0 -0
  73. package/es/assets/img/png/helper/outcome.png +0 -0
  74. package/es/assets/img/png/helper/video_preview_3d.png +0 -0
  75. package/es/assets/img/png/helper/video_preview_start.png +0 -0
  76. package/es/assets/img/project_img.png +0 -0
  77. package/es/assets/img/rta/rta_logo_box_blue.jpg +0 -0
  78. package/es/assets/img/rta/rta_logo_box_blue_ico.jpg +0 -0
  79. package/es/assets/img/rta/rta_logo_box_blue_ico.svg +55 -0
  80. package/es/assets/img/rta/rta_logo_box_darkGray.jpg +0 -0
  81. package/es/assets/img/rta/rta_logo_box_lightblue.png +0 -0
  82. package/es/assets/img/rta/rta_logo_box_lightmaroon.png +0 -0
  83. package/es/assets/img/rta/rta_logo_box_maroon.png +0 -0
  84. package/es/assets/img/rta/rta_logo_box_white.png +0 -0
  85. package/es/assets/img/rta_menu.png +0 -0
  86. package/es/assets/img/step2.jpg +0 -0
  87. package/es/assets/img/step3.jpg +0 -0
  88. package/es/assets/img/step4.jpg +0 -0
  89. package/es/assets/img/step5.jpg +0 -0
  90. package/es/assets/img/step6.jpg +0 -0
  91. package/es/assets/img/step7.jpg +0 -0
  92. package/es/assets/img/step8.jpg +0 -0
  93. package/es/assets/img/svg/2d_delete_object.svg +33 -0
  94. package/es/assets/img/svg/2d_delete_object1.svg +33 -0
  95. package/es/assets/img/svg/2d_lock_object.svg +33 -0
  96. package/es/assets/img/svg/3d_item_move.svg +106 -0
  97. package/es/assets/img/svg/3d_item_rotation.svg +76 -0
  98. package/es/assets/img/svg/3d_item_warning_edit.svg +77 -0
  99. package/es/assets/img/svg/3d_item_warning_info.svg +81 -0
  100. package/es/assets/img/svg/accessories.svg +4 -0
  101. package/es/assets/img/svg/angle_icon.svg +39 -0
  102. package/es/assets/img/svg/blank_div.svg +14 -0
  103. package/es/assets/img/svg/bottombar/2d3d_button.svg +3 -0
  104. package/es/assets/img/svg/bottombar/2d3d_button_active.svg +3 -0
  105. package/es/assets/img/svg/bottombar/2d3d_toggle.svg +4 -0
  106. package/es/assets/img/svg/bottombar/2d3d_toggle_active.svg +4 -0
  107. package/es/assets/img/svg/bottombar/arrow-down.svg +3 -0
  108. package/es/assets/img/svg/bottombar/arrow-left.svg +3 -0
  109. package/es/assets/img/svg/bottombar/arrow-minus.svg +3 -0
  110. package/es/assets/img/svg/bottombar/arrow-plus.svg +11 -0
  111. package/es/assets/img/svg/bottombar/arrow-right.svg +3 -0
  112. package/es/assets/img/svg/bottombar/arrow-up.svg +3 -0
  113. package/es/assets/img/svg/bottombar/collapse.svg +3 -0
  114. package/es/assets/img/svg/bottombar/elevation-back.svg +6 -0
  115. package/es/assets/img/svg/bottombar/elevation-front.svg +6 -0
  116. package/es/assets/img/svg/bottombar/elevation-left.svg +6 -0
  117. package/es/assets/img/svg/bottombar/elevation-right.svg +7 -0
  118. package/es/assets/img/svg/bottombar/elevation.svg +6 -0
  119. package/es/assets/img/svg/bottombar/expand.svg +3 -0
  120. package/es/assets/img/svg/bottombar/help.svg +72 -0
  121. package/es/assets/img/svg/bottombar/incm_toggle.svg +39 -0
  122. package/es/assets/img/svg/bottombar/pan_1.svg +57 -0
  123. package/es/assets/img/svg/bottombar/pan_2.svg +27 -0
  124. package/es/assets/img/svg/bottombar/pan_3.svg +27 -0
  125. package/es/assets/img/svg/bottombar/pan_4.svg +27 -0
  126. package/es/assets/img/svg/bottombar/pan_5.svg +27 -0
  127. package/es/assets/img/svg/bottombar/settings.svg +23 -0
  128. package/es/assets/img/svg/bottombar/spin-down.svg +76 -0
  129. package/es/assets/img/svg/bottombar/spin-left.svg +75 -0
  130. package/es/assets/img/svg/bottombar/spin-right.svg +75 -0
  131. package/es/assets/img/svg/bottombar/spin-up.svg +76 -0
  132. package/es/assets/img/svg/bottombar/spin_1.svg +48 -0
  133. package/es/assets/img/svg/bottombar/spin_2.svg +31 -0
  134. package/es/assets/img/svg/bottombar/spin_3.svg +31 -0
  135. package/es/assets/img/svg/bottombar/spin_4.svg +31 -0
  136. package/es/assets/img/svg/bottombar/spin_5.svg +31 -0
  137. package/es/assets/img/svg/bottombar/zoomin.svg +29 -0
  138. package/es/assets/img/svg/bottombar/zoomout.svg +26 -0
  139. package/es/assets/img/svg/check.svg +10 -0
  140. package/es/assets/img/svg/close.svg +11 -0
  141. package/es/assets/img/svg/color/Black.svg +3 -0
  142. package/es/assets/img/svg/color/Blue.svg +3 -0
  143. package/es/assets/img/svg/color/Brown.svg +9 -0
  144. package/es/assets/img/svg/color/Cream.svg +3 -0
  145. package/es/assets/img/svg/color/Dark.svg +9 -0
  146. package/es/assets/img/svg/color/Gray.svg +3 -0
  147. package/es/assets/img/svg/color/Green.svg +3 -0
  148. package/es/assets/img/svg/color/Light.svg +9 -0
  149. package/es/assets/img/svg/color/Medium.svg +9 -0
  150. package/es/assets/img/svg/color/Unfinished.svg +9 -0
  151. package/es/assets/img/svg/color/White.svg +3 -0
  152. package/es/assets/img/svg/color/White.svg.bak +3 -0
  153. package/es/assets/img/svg/color/stone2.jpg +0 -0
  154. package/es/assets/img/svg/color/wood2.jpg +0 -0
  155. package/es/assets/img/svg/copy.svg +11 -0
  156. package/es/assets/img/svg/delete.svg +3 -0
  157. package/es/assets/img/svg/detail.svg +77 -0
  158. package/es/assets/img/svg/disclaimer/background.svg +758 -0
  159. package/es/assets/img/svg/disclaimer/logo-dots.svg +11 -0
  160. package/es/assets/img/svg/door/Closet.svg +11 -0
  161. package/es/assets/img/svg/door/Exterior.svg +5 -0
  162. package/es/assets/img/svg/door/Framed_dorway.svg +5 -0
  163. package/es/assets/img/svg/door/Frameless_dorway.svg +5 -0
  164. package/es/assets/img/svg/door/Interior.svg +7 -0
  165. package/es/assets/img/svg/door/Sliding.svg +5 -0
  166. package/es/assets/img/svg/doors_closet.svg +47 -0
  167. package/es/assets/img/svg/doors_exterior.svg +25 -0
  168. package/es/assets/img/svg/doors_interior.svg +29 -0
  169. package/es/assets/img/svg/doors_patio.svg +26 -0
  170. package/es/assets/img/svg/duplicate.svg +11 -0
  171. package/es/assets/img/svg/duplicate_object_left.svg +32 -0
  172. package/es/assets/img/svg/duplicate_object_right.svg +32 -0
  173. package/es/assets/img/svg/filtersActive.svg +19 -0
  174. package/es/assets/img/svg/firstsetting/L.svg +3 -0
  175. package/es/assets/img/svg/firstsetting/L2.svg +3 -0
  176. package/es/assets/img/svg/firstsetting/Open.svg +3 -0
  177. package/es/assets/img/svg/firstsetting/Square.svg +3 -0
  178. package/es/assets/img/svg/firstsetting/bar-active.svg +9 -0
  179. package/es/assets/img/svg/firstsetting/bar-normal.svg +3 -0
  180. package/es/assets/img/svg/firstsetting/bullet-current.svg +3 -0
  181. package/es/assets/img/svg/firstsetting/bullet-done.svg +3 -0
  182. package/es/assets/img/svg/firstsetting/bullet-not-done.svg +3 -0
  183. package/es/assets/img/svg/firstsetting/check-active.svg +3 -0
  184. package/es/assets/img/svg/firstsetting/check-normal.svg +3 -0
  185. package/es/assets/img/svg/firstsetting/pencil.svg +11 -0
  186. package/es/assets/img/svg/green_checkmark.svg +27 -0
  187. package/es/assets/img/svg/headerbar/assist.svg +3 -0
  188. package/es/assets/img/svg/headerbar/cart.svg +3 -0
  189. package/es/assets/img/svg/headerbar/check.svg +10 -0
  190. package/es/assets/img/svg/headerbar/consult_designer.svg +45 -0
  191. package/es/assets/img/svg/headerbar/edit_name.svg +26 -0
  192. package/es/assets/img/svg/headerbar/file-dollar.svg +13 -0
  193. package/es/assets/img/svg/headerbar/hamburger_menu.svg +32 -0
  194. package/es/assets/img/svg/headerbar/plus.svg +11 -0
  195. package/es/assets/img/svg/headerbar/review_quote.svg +44 -0
  196. package/es/assets/img/svg/headerbar/ruler-measure.svg +11 -0
  197. package/es/assets/img/svg/headerbar/save.svg +3 -0
  198. package/es/assets/img/svg/headerbar/setting.svg +75 -0
  199. package/es/assets/img/svg/help/check.svg +10 -0
  200. package/es/assets/img/svg/help/search.svg +76 -0
  201. package/es/assets/img/svg/intro/1-start-with-floorplan-whole.svg +27 -0
  202. package/es/assets/img/svg/intro/1-start-with-floorplan.svg +26 -0
  203. package/es/assets/img/svg/intro/2-start-from-scratch-whole.svg +28 -0
  204. package/es/assets/img/svg/intro/2-start-from-scratch.svg +27 -0
  205. package/es/assets/img/svg/intro/3-retrieve-project-whole.svg +19 -0
  206. package/es/assets/img/svg/intro/3-retrieve-project.svg +18 -0
  207. package/es/assets/img/svg/invert.svg +127 -0
  208. package/es/assets/img/svg/lefttoolbar/appliance-active.svg +13 -0
  209. package/es/assets/img/svg/lefttoolbar/appliance.svg +13 -0
  210. package/es/assets/img/svg/lefttoolbar/cabinet-active.svg +10 -0
  211. package/es/assets/img/svg/lefttoolbar/cabinet-category.svg +3 -0
  212. package/es/assets/img/svg/lefttoolbar/cabinet-one.svg +3 -0
  213. package/es/assets/img/svg/lefttoolbar/cabinet.svg +10 -0
  214. package/es/assets/img/svg/lefttoolbar/disigner_assistance.svg +89 -0
  215. package/es/assets/img/svg/lefttoolbar/door-style-active.svg +20 -0
  216. package/es/assets/img/svg/lefttoolbar/door-style.svg +20 -0
  217. package/es/assets/img/svg/lefttoolbar/door.svg +12 -0
  218. package/es/assets/img/svg/lefttoolbar/error_icon.svg +81 -0
  219. package/es/assets/img/svg/lefttoolbar/finishing-active.svg +13 -0
  220. package/es/assets/img/svg/lefttoolbar/finishing.svg +13 -0
  221. package/es/assets/img/svg/lefttoolbar/reviewforquote-active.svg +86 -0
  222. package/es/assets/img/svg/lefttoolbar/reviewforquote.svg +12 -0
  223. package/es/assets/img/svg/lefttoolbar/room-shape-L.svg +3 -0
  224. package/es/assets/img/svg/lefttoolbar/room-shape-active.svg +18 -0
  225. package/es/assets/img/svg/lefttoolbar/room-shape-custom.svg +12 -0
  226. package/es/assets/img/svg/lefttoolbar/room-shape-irregular.svg +3 -0
  227. package/es/assets/img/svg/lefttoolbar/room-shape-open.svg +3 -0
  228. package/es/assets/img/svg/lefttoolbar/room-shape-square.svg +3 -0
  229. package/es/assets/img/svg/lefttoolbar/room-shape.svg +18 -0
  230. package/es/assets/img/svg/lefttoolbar/search.svg +76 -0
  231. package/es/assets/img/svg/lefttoolbar/view_more.svg +86 -0
  232. package/es/assets/img/svg/lefttoolbar/warning_icon.svg +81 -0
  233. package/es/assets/img/svg/lefttoolbar/window.svg +12 -0
  234. package/es/assets/img/svg/logo.svg +11 -0
  235. package/es/assets/img/svg/logo_with_text.svg +25 -0
  236. package/es/assets/img/svg/menubar/login.svg +84 -0
  237. package/es/assets/img/svg/menubar/my_projects.svg +85 -0
  238. package/es/assets/img/svg/menubar/new_project.svg +110 -0
  239. package/es/assets/img/svg/menubar/save_project.svg +84 -0
  240. package/es/assets/img/svg/options.svg +3 -0
  241. package/es/assets/img/svg/positioning.svg +3 -0
  242. package/es/assets/img/svg/rotate.png +0 -0
  243. package/es/assets/img/svg/rotate.svg +17 -0
  244. package/es/assets/img/svg/rotate_object_clockwise.svg +26 -0
  245. package/es/assets/img/svg/rotate_object_counterclockwise.svg +26 -0
  246. package/es/assets/img/svg/toggleFilters.svg +19 -0
  247. package/es/assets/img/svg/toolbar/add_appliances_active.svg +64 -0
  248. package/es/assets/img/svg/toolbar/add_appliances_inactive.svg +52 -0
  249. package/es/assets/img/svg/toolbar/add_button.svg +36 -0
  250. package/es/assets/img/svg/toolbar/add_cabinets_active.svg +59 -0
  251. package/es/assets/img/svg/toolbar/add_cabinets_inactive.svg +49 -0
  252. package/es/assets/img/svg/toolbar/add_items_doors.svg +25 -0
  253. package/es/assets/img/svg/toolbar/add_items_doorways.svg +24 -0
  254. package/es/assets/img/svg/toolbar/add_items_refrigerator.svg +32 -0
  255. package/es/assets/img/svg/toolbar/add_items_windows.svg +28 -0
  256. package/es/assets/img/svg/toolbar/apply_button.svg +38 -0
  257. package/es/assets/img/svg/toolbar/arrow-plus.svg +11 -0
  258. package/es/assets/img/svg/toolbar/backsplash.svg +8 -0
  259. package/es/assets/img/svg/toolbar/cancel_button.svg +37 -0
  260. package/es/assets/img/svg/toolbar/consult_a_designer_button.svg +47 -0
  261. package/es/assets/img/svg/toolbar/countertop.svg +7 -0
  262. package/es/assets/img/svg/toolbar/dcm.png +0 -0
  263. package/es/assets/img/svg/toolbar/dcm_off.svg +12 -0
  264. package/es/assets/img/svg/toolbar/dcm_on.svg +474 -0
  265. package/es/assets/img/svg/toolbar/delete_button.svg +37 -0
  266. package/es/assets/img/svg/toolbar/download.svg +77 -0
  267. package/es/assets/img/svg/toolbar/draw_custom_floor.svg +31 -0
  268. package/es/assets/img/svg/toolbar/edit_button.svg +75 -0
  269. package/es/assets/img/svg/toolbar/email_quote_button.svg +44 -0
  270. package/es/assets/img/svg/toolbar/fbm.png +0 -0
  271. package/es/assets/img/svg/toolbar/finishing_touches_active.svg +54 -0
  272. package/es/assets/img/svg/toolbar/finishing_touches_inactive.svg +42 -0
  273. package/es/assets/img/svg/toolbar/floorstyle.svg +9 -0
  274. package/es/assets/img/svg/toolbar/fmb.png +0 -0
  275. package/es/assets/img/svg/toolbar/fmb_off.svg +12 -0
  276. package/es/assets/img/svg/toolbar/fmb_on.svg +489 -0
  277. package/es/assets/img/svg/toolbar/furnishings_icon.svg +6 -0
  278. package/es/assets/img/svg/toolbar/get_started_button.svg +41 -0
  279. package/es/assets/img/svg/toolbar/handles.svg +5 -0
  280. package/es/assets/img/svg/toolbar/lighting.svg +7 -0
  281. package/es/assets/img/svg/toolbar/lrm.png +0 -0
  282. package/es/assets/img/svg/toolbar/lrm_off.svg +12 -0
  283. package/es/assets/img/svg/toolbar/lrm_on.svg +470 -0
  284. package/es/assets/img/svg/toolbar/make_floorplan_active.svg +66 -0
  285. package/es/assets/img/svg/toolbar/make_floorplan_inactive.svg +52 -0
  286. package/es/assets/img/svg/toolbar/predefined_room_l_shaped.svg +20 -0
  287. package/es/assets/img/svg/toolbar/predefined_room_layout.svg +20 -0
  288. package/es/assets/img/svg/toolbar/predefined_room_long_narrow.svg +20 -0
  289. package/es/assets/img/svg/toolbar/predefined_room_open_l_shape.svg +20 -0
  290. package/es/assets/img/svg/toolbar/predefined_room_open_pentagon.svg +20 -0
  291. package/es/assets/img/svg/toolbar/predefined_room_open_rectangle.svg +20 -0
  292. package/es/assets/img/svg/toolbar/predefined_room_open_rectangle_2.svg +20 -0
  293. package/es/assets/img/svg/toolbar/predefined_room_pentagon.svg +20 -0
  294. package/es/assets/img/svg/toolbar/predefined_room_rectangle.svg +20 -0
  295. package/es/assets/img/svg/toolbar/predefined_room_rectangle_with_alcove.svg +20 -0
  296. package/es/assets/img/svg/toolbar/redo_button.svg +75 -0
  297. package/es/assets/img/svg/toolbar/redo_button1.svg +75 -0
  298. package/es/assets/img/svg/toolbar/review_quote_active.svg +14 -0
  299. package/es/assets/img/svg/toolbar/review_quote_inactive.svg +44 -0
  300. package/es/assets/img/svg/toolbar/save_project_button.svg +44 -0
  301. package/es/assets/img/svg/toolbar/select_doorstyle_active.svg +67 -0
  302. package/es/assets/img/svg/toolbar/select_doorstyle_inactive.svg +57 -0
  303. package/es/assets/img/svg/toolbar/shopping-cart.svg +13 -0
  304. package/es/assets/img/svg/toolbar/style_change_button.svg +47 -0
  305. package/es/assets/img/svg/toolbar/take_picture.svg +75 -0
  306. package/es/assets/img/svg/toolbar/undo_button.svg +76 -0
  307. package/es/assets/img/svg/toolbar/undo_button1.svg +76 -0
  308. package/es/assets/img/svg/toolbar/use_button.svg +37 -0
  309. package/es/assets/img/svg/toolbar/wall_color_icon.svg +6 -0
  310. package/es/assets/img/svg/topbar/edit_active.svg +10 -0
  311. package/es/assets/img/svg/topbar/edit_inactive.svg +10 -0
  312. package/es/assets/img/svg/topbar/redo_active.svg +42 -0
  313. package/es/assets/img/svg/topbar/redo_inactive.svg +23 -0
  314. package/es/assets/img/svg/topbar/select_all_active.svg +50 -0
  315. package/es/assets/img/svg/topbar/select_all_inactive.svg +32 -0
  316. package/es/assets/img/svg/topbar/take_picture_active.svg +51 -0
  317. package/es/assets/img/svg/topbar/take_picture_inactive.svg +26 -0
  318. package/es/assets/img/svg/topbar/undo_active.svg +42 -0
  319. package/es/assets/img/svg/topbar/undo_inactive.svg +23 -0
  320. package/es/assets/img/svg/warning_info_2d.svg +81 -0
  321. package/es/assets/img/svg/window/Clear.svg +3 -0
  322. package/es/assets/img/svg/window/Cross.svg +5 -0
  323. package/es/assets/img/svg/window/Double_hung.svg +4 -0
  324. package/es/assets/img/svg/window/Vertical.svg +4 -0
  325. package/es/assets/img/svg/windows_clear.svg +23 -0
  326. package/es/assets/img/svg/windows_cross.svg +28 -0
  327. package/es/assets/img/svg/windows_double_hung.svg +24 -0
  328. package/es/assets/img/svg/windows_vertical.svg +24 -0
  329. package/es/assets/img/svg/wizardstep/Custom.svg +3 -0
  330. package/es/assets/img/svg/wizardstep/Dashed_line.svg +3 -0
  331. package/es/assets/img/svg/wizardstep/L.svg +3 -0
  332. package/es/assets/img/svg/wizardstep/L2.svg +3 -0
  333. package/es/assets/img/svg/wizardstep/Open.svg +3 -0
  334. package/es/assets/img/svg/wizardstep/Square.svg +3 -0
  335. package/es/assets/img/svg/wizardstep/bar-active.svg +9 -0
  336. package/es/assets/img/svg/wizardstep/bar-normal.svg +3 -0
  337. package/es/assets/img/svg/wizardstep/bullet-current.svg +3 -0
  338. package/es/assets/img/svg/wizardstep/bullet-done.svg +3 -0
  339. package/es/assets/img/svg/wizardstep/bullet-not-done.svg +3 -0
  340. package/es/assets/img/svg/wizardstep/check-active.svg +3 -0
  341. package/es/assets/img/svg/wizardstep/check-normal.svg +3 -0
  342. package/es/assets/img/svg/wizardstep/detail_view.svg +87 -0
  343. package/es/assets/img/svg/wizardstep/pencil.svg +11 -0
  344. package/es/assets/img/svg/wizardstep/tile_view.svg +95 -0
  345. package/es/assets/img/texture/glass.jpg +0 -0
  346. package/es/assets/img/texture/steel.jpg +0 -0
  347. package/es/assets/img/texture/white1px.jpg +0 -0
  348. package/es/assets/img/texture/wood.jpg +0 -0
  349. package/es/assets/model/DCM.bin +0 -0
  350. package/es/assets/model/DCM.fbx +0 -0
  351. package/es/assets/model/DCM.gltf +1 -0
  352. package/es/assets/model/FBM.bin +0 -0
  353. package/es/assets/model/FBM.fbx +0 -0
  354. package/es/assets/model/FBM.gltf +1 -0
  355. package/es/assets/model/LRM.bin +0 -0
  356. package/es/assets/model/LRM.fbx +0 -0
  357. package/es/assets/model/LRM.gltf +1 -0
  358. package/es/assets/rtastore_logo.png +0 -0
  359. package/es/catalog/areas/area/planner-element.js +12 -7
  360. package/es/catalog/back.png +0 -0
  361. package/es/catalog/catalog.js +4 -16
  362. package/es/catalog/doors.png +0 -0
  363. package/es/catalog/doorways.png +0 -0
  364. package/es/catalog/export.js +0 -0
  365. package/es/catalog/factories/area-factory.js +1 -4
  366. package/es/catalog/factories/wall-factory-3d.js +3 -3
  367. package/es/catalog/factories/wall-factory.js +9 -10
  368. package/es/catalog/lines/wall/planner-element.js +20 -11
  369. package/es/catalog/molding/molding-dcm/planner-element.js +0 -2
  370. package/es/catalog/molding/molding-fbm/planner-element.js +0 -2
  371. package/es/catalog/molding/molding-lrm/planner-element.js +0 -2
  372. package/es/catalog/properties/property-checkbox.js +2 -5
  373. package/es/catalog/properties/property-enum.js +2 -7
  374. package/es/catalog/properties/property-lenght-measure.js +4 -5
  375. package/es/catalog/properties/property-length-measure.js +6 -7
  376. package/es/catalog/properties/property-length-measure_hole.js +4 -5
  377. package/es/catalog/utils/FuseUtils.js +3 -6
  378. package/es/catalog/utils/exporter.js +7 -6
  379. package/es/catalog/utils/item-loader.js +115 -42
  380. package/es/catalog/utils/mtl-loader.js +2 -2
  381. package/es/catalog/utils/obj-loader.js +2 -2
  382. package/es/catalog/windows.png +0 -0
  383. package/es/class/FuseUtils.js +3 -6
  384. package/es/class/area.js +3 -7
  385. package/es/class/group.js +3 -12
  386. package/es/class/guide.js +2 -6
  387. package/es/class/hole.js +2 -6
  388. package/es/class/item.js +124 -164
  389. package/es/class/layer.js +2 -6
  390. package/es/class/line.js +115 -74
  391. package/es/class/project.js +34 -32
  392. package/es/class/vertex.js +4 -8
  393. package/es/components/content.js +30 -5
  394. package/es/components/export.js +3 -5
  395. package/es/components/style/button.js +7 -14
  396. package/es/components/style/cancel-button.js +2 -3
  397. package/es/components/style/content-container.js +1 -4
  398. package/es/components/style/content-title.js +3 -7
  399. package/es/components/style/delete-button.js +2 -3
  400. package/es/components/style/form-block.js +3 -7
  401. package/es/components/style/form-color-input.js +2 -3
  402. package/es/components/style/form-label.js +3 -7
  403. package/es/components/style/form-number-input.js +6 -12
  404. package/es/components/style/form-number-input_2.js +6 -12
  405. package/es/components/style/form-select.js +3 -4
  406. package/es/components/style/form-slider.js +24 -9
  407. package/es/components/style/form-submit-button.js +2 -3
  408. package/es/components/style/form-text-input.js +8 -15
  409. package/es/components/viewer2d/area.js +4 -4
  410. package/es/components/viewer2d/grids/grid-horizontal-streak.js +0 -1
  411. package/es/components/viewer2d/grids/grid-streak.js +1 -2
  412. package/es/components/viewer2d/grids/grid-vertical-streak.js +0 -1
  413. package/es/components/viewer2d/grids/grids.js +1 -6
  414. package/es/components/viewer2d/item.js +25 -91
  415. package/es/components/viewer2d/layer.js +1 -1
  416. package/es/components/viewer2d/line.js +336 -257
  417. package/es/components/viewer2d/ruler.js +17 -38
  418. package/es/components/viewer2d/rulerDist.js +19 -33
  419. package/es/components/viewer2d/rulerX.js +6 -12
  420. package/es/components/viewer2d/rulerY.js +6 -12
  421. package/es/components/viewer2d/scene.js +13 -25
  422. package/es/components/viewer2d/state.js +1 -6
  423. package/es/components/viewer2d/utils.js +27 -2
  424. package/es/components/viewer2d/viewer2d.js +155 -120
  425. package/es/components/viewer3d/camera-controls-module/camera-controls.module.js +6 -13
  426. package/es/components/viewer3d/front3D.js +1 -6
  427. package/es/components/viewer3d/libs/mtl-loader.js +2 -2
  428. package/es/components/viewer3d/libs/obj-loader.js +2 -2
  429. package/es/components/viewer3d/libs/orbit-controls.js +3 -4
  430. package/es/components/viewer3d/libs/pointer-lock-controls.js +6 -7
  431. package/es/components/viewer3d/ruler-utils/itemRect.js +1 -1
  432. package/es/components/viewer3d/ruler-utils/layer3D.js +2 -2
  433. package/es/components/viewer3d/ruler-utils/ruler3D.js +1 -4
  434. package/es/components/viewer3d/ruler-utils/scene3D.js +1 -3
  435. package/es/components/viewer3d/scene-creator.js +27 -18
  436. package/es/components/viewer3d/viewer3d-first-person.js +5 -11
  437. package/es/components/viewer3d/viewer3d.js +379 -254
  438. package/es/constants.js +55 -3
  439. package/es/devLiteRenderer.js +316 -0
  440. package/es/index.js +56 -15
  441. package/es/models.js +16 -20
  442. package/es/plugins/console-debugger.js +1 -4
  443. package/es/plugins/export.js +1 -3
  444. package/es/reducers/items-reducer.js +8 -4
  445. package/es/reducers/project-reducer.js +4 -2
  446. package/es/reducers/viewer2d-reducer.js +2 -2
  447. package/es/reducers/viewer3d-reducer.js +2 -2
  448. package/es/shared-style.js +4 -4
  449. package/es/translator/translator.js +2 -6
  450. package/es/utils/convert-units-lite.js +29 -0
  451. package/es/utils/geometry.js +68 -42
  452. package/es/utils/get-edges-of-subgraphs.js +1 -1
  453. package/es/utils/graph-cycles.js +1 -1
  454. package/es/utils/graph.js +3 -7
  455. package/es/utils/helper.js +4 -6
  456. package/es/utils/id-broker.js +4 -8
  457. package/es/utils/isolate-event-handler.js +683 -0
  458. package/es/utils/molding.js +36 -42
  459. package/es/utils/name-generator.js +2 -6
  460. package/es/utils/objects-utils.js +1 -1
  461. package/es/utils/process-black-list.js +1 -4
  462. package/es/utils/snap-scene.js +1 -6
  463. package/es/utils/snap.js +6 -12
  464. package/es/utils/threeCSG.es6.js +2 -6
  465. package/es/version.js +1 -2
  466. package/lib/@history.js +3 -2
  467. package/lib/AppContext.js +3 -2
  468. package/lib/LiteKitchenConfigurator.js +490 -0
  469. package/lib/LiteRenderer.js +513 -0
  470. package/lib/actions/export.js +35 -39
  471. package/lib/actions/items-actions.js +11 -5
  472. package/lib/actions/project-actions.js +9 -3
  473. package/lib/analytics/ga4.js +3 -6
  474. package/lib/analytics/posthog.js +1 -1
  475. package/lib/assets/Window.hdr +2100 -0
  476. package/lib/assets/brown_photostudio_02_1k.hdr +0 -0
  477. package/lib/assets/fonts/Rene Bieder Milliard Black Italic.woff +0 -0
  478. package/lib/assets/fonts/Rene Bieder Milliard Black.woff +0 -0
  479. package/lib/assets/fonts/Rene Bieder Milliard Bold Italic.woff +0 -0
  480. package/lib/assets/fonts/Rene Bieder Milliard Bold.woff +0 -0
  481. package/lib/assets/fonts/Rene Bieder Milliard Book Italic.woff +0 -0
  482. package/lib/assets/fonts/Rene Bieder Milliard Book.woff +0 -0
  483. package/lib/assets/fonts/Rene Bieder Milliard ExtraBold Italic.woff +0 -0
  484. package/lib/assets/fonts/Rene Bieder Milliard ExtraBold.woff +0 -0
  485. package/lib/assets/fonts/Rene Bieder Milliard ExtraLight Italic.woff +0 -0
  486. package/lib/assets/fonts/Rene Bieder Milliard ExtraLight.woff +0 -0
  487. package/lib/assets/fonts/Rene Bieder Milliard Hairline Italic.woff +0 -0
  488. package/lib/assets/fonts/Rene Bieder Milliard Hairline.woff +0 -0
  489. package/lib/assets/fonts/Rene Bieder Milliard Heavy Italic.woff +0 -0
  490. package/lib/assets/fonts/Rene Bieder Milliard Heavy.woff +0 -0
  491. package/lib/assets/fonts/Rene Bieder Milliard Light Italic.woff +0 -0
  492. package/lib/assets/fonts/Rene Bieder Milliard Light.woff +0 -0
  493. package/lib/assets/fonts/Rene Bieder Milliard Medium Italic.woff +0 -0
  494. package/lib/assets/fonts/Rene Bieder Milliard Medium.woff +0 -0
  495. package/lib/assets/fonts/Rene Bieder Milliard SemiBold Italic.woff +0 -0
  496. package/lib/assets/fonts/Rene Bieder Milliard SemiBold.woff +0 -0
  497. package/lib/assets/fonts/Rene Bieder Milliard Thin Italic.woff +0 -0
  498. package/lib/assets/fonts/Rene Bieder Milliard Thin.woff +0 -0
  499. package/lib/assets/fonts/style.css +177 -0
  500. package/lib/assets/gltf/door_closet.bin +0 -0
  501. package/lib/assets/gltf/door_closet.fbx +0 -0
  502. package/lib/assets/gltf/door_closet.gltf +1 -0
  503. package/lib/assets/gltf/door_exterior.bin +0 -0
  504. package/lib/assets/gltf/door_exterior.fbx +0 -0
  505. package/lib/assets/gltf/door_exterior.gltf +1 -0
  506. package/lib/assets/gltf/door_interior.bin +0 -0
  507. package/lib/assets/gltf/door_interior.fbx +0 -0
  508. package/lib/assets/gltf/door_interior.gltf +1 -0
  509. package/lib/assets/gltf/door_sliding.bin +0 -0
  510. package/lib/assets/gltf/door_sliding.fbx +0 -0
  511. package/lib/assets/gltf/door_sliding.gltf +1 -0
  512. package/lib/assets/gltf/doorway_framed.bin +0 -0
  513. package/lib/assets/gltf/doorway_framed.fbx +0 -0
  514. package/lib/assets/gltf/doorway_framed.gltf +1 -0
  515. package/lib/assets/gltf/window_clear.bin +0 -0
  516. package/lib/assets/gltf/window_clear.fbx +0 -0
  517. package/lib/assets/gltf/window_clear.gltf +1 -0
  518. package/lib/assets/gltf/window_cross.bin +0 -0
  519. package/lib/assets/gltf/window_cross.fbx +0 -0
  520. package/lib/assets/gltf/window_cross.gltf +1 -0
  521. package/lib/assets/gltf/window_double_hung.bin +0 -0
  522. package/lib/assets/gltf/window_double_hung.fbx +0 -0
  523. package/lib/assets/gltf/window_double_hung.gltf +1 -0
  524. package/lib/assets/gltf/window_vertical.bin +0 -0
  525. package/lib/assets/gltf/window_vertical.fbx +0 -0
  526. package/lib/assets/gltf/window_vertical.gltf +1 -0
  527. package/lib/assets/img/1.jpg +0 -0
  528. package/lib/assets/img/TKC_thumbnail.png +0 -0
  529. package/lib/assets/img/Toggle.png +0 -0
  530. package/lib/assets/img/loading/loading.gif +0 -0
  531. package/lib/assets/img/loading/loading_1.svg +11 -0
  532. package/lib/assets/img/loading_large.gif +0 -0
  533. package/lib/assets/img/png/door/closet.png +0 -0
  534. package/lib/assets/img/png/door/doorwaysframed.png +0 -0
  535. package/lib/assets/img/png/door/doorwaysframeles.png +0 -0
  536. package/lib/assets/img/png/door/doorwaysframeless.png +0 -0
  537. package/lib/assets/img/png/door/exterior.png +0 -0
  538. package/lib/assets/img/png/door/interior.png +0 -0
  539. package/lib/assets/img/png/door/sliding.png +0 -0
  540. package/lib/assets/img/png/helper/outcome.png +0 -0
  541. package/lib/assets/img/png/helper/video_preview_3d.png +0 -0
  542. package/lib/assets/img/png/helper/video_preview_start.png +0 -0
  543. package/lib/assets/img/project_img.png +0 -0
  544. package/lib/assets/img/rta/rta_logo_box_blue.jpg +0 -0
  545. package/lib/assets/img/rta/rta_logo_box_blue_ico.jpg +0 -0
  546. package/lib/assets/img/rta/rta_logo_box_blue_ico.svg +55 -0
  547. package/lib/assets/img/rta/rta_logo_box_darkGray.jpg +0 -0
  548. package/lib/assets/img/rta/rta_logo_box_lightblue.png +0 -0
  549. package/lib/assets/img/rta/rta_logo_box_lightmaroon.png +0 -0
  550. package/lib/assets/img/rta/rta_logo_box_maroon.png +0 -0
  551. package/lib/assets/img/rta/rta_logo_box_white.png +0 -0
  552. package/lib/assets/img/rta_menu.png +0 -0
  553. package/lib/assets/img/step2.jpg +0 -0
  554. package/lib/assets/img/step3.jpg +0 -0
  555. package/lib/assets/img/step4.jpg +0 -0
  556. package/lib/assets/img/step5.jpg +0 -0
  557. package/lib/assets/img/step6.jpg +0 -0
  558. package/lib/assets/img/step7.jpg +0 -0
  559. package/lib/assets/img/step8.jpg +0 -0
  560. package/lib/assets/img/svg/2d_delete_object.svg +33 -0
  561. package/lib/assets/img/svg/2d_delete_object1.svg +33 -0
  562. package/lib/assets/img/svg/2d_lock_object.svg +33 -0
  563. package/lib/assets/img/svg/3d_item_move.svg +106 -0
  564. package/lib/assets/img/svg/3d_item_rotation.svg +76 -0
  565. package/lib/assets/img/svg/3d_item_warning_edit.svg +77 -0
  566. package/lib/assets/img/svg/3d_item_warning_info.svg +81 -0
  567. package/lib/assets/img/svg/accessories.svg +4 -0
  568. package/lib/assets/img/svg/angle_icon.svg +39 -0
  569. package/lib/assets/img/svg/blank_div.svg +14 -0
  570. package/lib/assets/img/svg/bottombar/2d3d_button.svg +3 -0
  571. package/lib/assets/img/svg/bottombar/2d3d_button_active.svg +3 -0
  572. package/lib/assets/img/svg/bottombar/2d3d_toggle.svg +4 -0
  573. package/lib/assets/img/svg/bottombar/2d3d_toggle_active.svg +4 -0
  574. package/lib/assets/img/svg/bottombar/arrow-down.svg +3 -0
  575. package/lib/assets/img/svg/bottombar/arrow-left.svg +3 -0
  576. package/lib/assets/img/svg/bottombar/arrow-minus.svg +3 -0
  577. package/lib/assets/img/svg/bottombar/arrow-plus.svg +11 -0
  578. package/lib/assets/img/svg/bottombar/arrow-right.svg +3 -0
  579. package/lib/assets/img/svg/bottombar/arrow-up.svg +3 -0
  580. package/lib/assets/img/svg/bottombar/collapse.svg +3 -0
  581. package/lib/assets/img/svg/bottombar/elevation-back.svg +6 -0
  582. package/lib/assets/img/svg/bottombar/elevation-front.svg +6 -0
  583. package/lib/assets/img/svg/bottombar/elevation-left.svg +6 -0
  584. package/lib/assets/img/svg/bottombar/elevation-right.svg +7 -0
  585. package/lib/assets/img/svg/bottombar/elevation.svg +6 -0
  586. package/lib/assets/img/svg/bottombar/expand.svg +3 -0
  587. package/lib/assets/img/svg/bottombar/help.svg +72 -0
  588. package/lib/assets/img/svg/bottombar/incm_toggle.svg +39 -0
  589. package/lib/assets/img/svg/bottombar/pan_1.svg +57 -0
  590. package/lib/assets/img/svg/bottombar/pan_2.svg +27 -0
  591. package/lib/assets/img/svg/bottombar/pan_3.svg +27 -0
  592. package/lib/assets/img/svg/bottombar/pan_4.svg +27 -0
  593. package/lib/assets/img/svg/bottombar/pan_5.svg +27 -0
  594. package/lib/assets/img/svg/bottombar/settings.svg +23 -0
  595. package/lib/assets/img/svg/bottombar/spin-down.svg +76 -0
  596. package/lib/assets/img/svg/bottombar/spin-left.svg +75 -0
  597. package/lib/assets/img/svg/bottombar/spin-right.svg +75 -0
  598. package/lib/assets/img/svg/bottombar/spin-up.svg +76 -0
  599. package/lib/assets/img/svg/bottombar/spin_1.svg +48 -0
  600. package/lib/assets/img/svg/bottombar/spin_2.svg +31 -0
  601. package/lib/assets/img/svg/bottombar/spin_3.svg +31 -0
  602. package/lib/assets/img/svg/bottombar/spin_4.svg +31 -0
  603. package/lib/assets/img/svg/bottombar/spin_5.svg +31 -0
  604. package/lib/assets/img/svg/bottombar/zoomin.svg +29 -0
  605. package/lib/assets/img/svg/bottombar/zoomout.svg +26 -0
  606. package/lib/assets/img/svg/check.svg +10 -0
  607. package/lib/assets/img/svg/close.svg +11 -0
  608. package/lib/assets/img/svg/color/Black.svg +3 -0
  609. package/lib/assets/img/svg/color/Blue.svg +3 -0
  610. package/lib/assets/img/svg/color/Brown.svg +9 -0
  611. package/lib/assets/img/svg/color/Cream.svg +3 -0
  612. package/lib/assets/img/svg/color/Dark.svg +9 -0
  613. package/lib/assets/img/svg/color/Gray.svg +3 -0
  614. package/lib/assets/img/svg/color/Green.svg +3 -0
  615. package/lib/assets/img/svg/color/Light.svg +9 -0
  616. package/lib/assets/img/svg/color/Medium.svg +9 -0
  617. package/lib/assets/img/svg/color/Unfinished.svg +9 -0
  618. package/lib/assets/img/svg/color/White.svg +3 -0
  619. package/lib/assets/img/svg/color/White.svg.bak +3 -0
  620. package/lib/assets/img/svg/color/stone2.jpg +0 -0
  621. package/lib/assets/img/svg/color/wood2.jpg +0 -0
  622. package/lib/assets/img/svg/copy.svg +11 -0
  623. package/lib/assets/img/svg/delete.svg +3 -0
  624. package/lib/assets/img/svg/detail.svg +77 -0
  625. package/lib/assets/img/svg/disclaimer/background.svg +758 -0
  626. package/lib/assets/img/svg/disclaimer/logo-dots.svg +11 -0
  627. package/lib/assets/img/svg/door/Closet.svg +11 -0
  628. package/lib/assets/img/svg/door/Exterior.svg +5 -0
  629. package/lib/assets/img/svg/door/Framed_dorway.svg +5 -0
  630. package/lib/assets/img/svg/door/Frameless_dorway.svg +5 -0
  631. package/lib/assets/img/svg/door/Interior.svg +7 -0
  632. package/lib/assets/img/svg/door/Sliding.svg +5 -0
  633. package/lib/assets/img/svg/doors_closet.svg +47 -0
  634. package/lib/assets/img/svg/doors_exterior.svg +25 -0
  635. package/lib/assets/img/svg/doors_interior.svg +29 -0
  636. package/lib/assets/img/svg/doors_patio.svg +26 -0
  637. package/lib/assets/img/svg/duplicate.svg +11 -0
  638. package/lib/assets/img/svg/duplicate_object_left.svg +32 -0
  639. package/lib/assets/img/svg/duplicate_object_right.svg +32 -0
  640. package/lib/assets/img/svg/filtersActive.svg +19 -0
  641. package/lib/assets/img/svg/firstsetting/L.svg +3 -0
  642. package/lib/assets/img/svg/firstsetting/L2.svg +3 -0
  643. package/lib/assets/img/svg/firstsetting/Open.svg +3 -0
  644. package/lib/assets/img/svg/firstsetting/Square.svg +3 -0
  645. package/lib/assets/img/svg/firstsetting/bar-active.svg +9 -0
  646. package/lib/assets/img/svg/firstsetting/bar-normal.svg +3 -0
  647. package/lib/assets/img/svg/firstsetting/bullet-current.svg +3 -0
  648. package/lib/assets/img/svg/firstsetting/bullet-done.svg +3 -0
  649. package/lib/assets/img/svg/firstsetting/bullet-not-done.svg +3 -0
  650. package/lib/assets/img/svg/firstsetting/check-active.svg +3 -0
  651. package/lib/assets/img/svg/firstsetting/check-normal.svg +3 -0
  652. package/lib/assets/img/svg/firstsetting/pencil.svg +11 -0
  653. package/lib/assets/img/svg/green_checkmark.svg +27 -0
  654. package/lib/assets/img/svg/headerbar/assist.svg +3 -0
  655. package/lib/assets/img/svg/headerbar/cart.svg +3 -0
  656. package/lib/assets/img/svg/headerbar/check.svg +10 -0
  657. package/lib/assets/img/svg/headerbar/consult_designer.svg +45 -0
  658. package/lib/assets/img/svg/headerbar/edit_name.svg +26 -0
  659. package/lib/assets/img/svg/headerbar/file-dollar.svg +13 -0
  660. package/lib/assets/img/svg/headerbar/hamburger_menu.svg +32 -0
  661. package/lib/assets/img/svg/headerbar/plus.svg +11 -0
  662. package/lib/assets/img/svg/headerbar/review_quote.svg +44 -0
  663. package/lib/assets/img/svg/headerbar/ruler-measure.svg +11 -0
  664. package/lib/assets/img/svg/headerbar/save.svg +3 -0
  665. package/lib/assets/img/svg/headerbar/setting.svg +75 -0
  666. package/lib/assets/img/svg/help/check.svg +10 -0
  667. package/lib/assets/img/svg/help/search.svg +76 -0
  668. package/lib/assets/img/svg/intro/1-start-with-floorplan-whole.svg +27 -0
  669. package/lib/assets/img/svg/intro/1-start-with-floorplan.svg +26 -0
  670. package/lib/assets/img/svg/intro/2-start-from-scratch-whole.svg +28 -0
  671. package/lib/assets/img/svg/intro/2-start-from-scratch.svg +27 -0
  672. package/lib/assets/img/svg/intro/3-retrieve-project-whole.svg +19 -0
  673. package/lib/assets/img/svg/intro/3-retrieve-project.svg +18 -0
  674. package/lib/assets/img/svg/invert.svg +127 -0
  675. package/lib/assets/img/svg/lefttoolbar/appliance-active.svg +13 -0
  676. package/lib/assets/img/svg/lefttoolbar/appliance.svg +13 -0
  677. package/lib/assets/img/svg/lefttoolbar/cabinet-active.svg +10 -0
  678. package/lib/assets/img/svg/lefttoolbar/cabinet-category.svg +3 -0
  679. package/lib/assets/img/svg/lefttoolbar/cabinet-one.svg +3 -0
  680. package/lib/assets/img/svg/lefttoolbar/cabinet.svg +10 -0
  681. package/lib/assets/img/svg/lefttoolbar/disigner_assistance.svg +89 -0
  682. package/lib/assets/img/svg/lefttoolbar/door-style-active.svg +20 -0
  683. package/lib/assets/img/svg/lefttoolbar/door-style.svg +20 -0
  684. package/lib/assets/img/svg/lefttoolbar/door.svg +12 -0
  685. package/lib/assets/img/svg/lefttoolbar/error_icon.svg +81 -0
  686. package/lib/assets/img/svg/lefttoolbar/finishing-active.svg +13 -0
  687. package/lib/assets/img/svg/lefttoolbar/finishing.svg +13 -0
  688. package/lib/assets/img/svg/lefttoolbar/reviewforquote-active.svg +86 -0
  689. package/lib/assets/img/svg/lefttoolbar/reviewforquote.svg +12 -0
  690. package/lib/assets/img/svg/lefttoolbar/room-shape-L.svg +3 -0
  691. package/lib/assets/img/svg/lefttoolbar/room-shape-active.svg +18 -0
  692. package/lib/assets/img/svg/lefttoolbar/room-shape-custom.svg +12 -0
  693. package/lib/assets/img/svg/lefttoolbar/room-shape-irregular.svg +3 -0
  694. package/lib/assets/img/svg/lefttoolbar/room-shape-open.svg +3 -0
  695. package/lib/assets/img/svg/lefttoolbar/room-shape-square.svg +3 -0
  696. package/lib/assets/img/svg/lefttoolbar/room-shape.svg +18 -0
  697. package/lib/assets/img/svg/lefttoolbar/search.svg +76 -0
  698. package/lib/assets/img/svg/lefttoolbar/view_more.svg +86 -0
  699. package/lib/assets/img/svg/lefttoolbar/warning_icon.svg +81 -0
  700. package/lib/assets/img/svg/lefttoolbar/window.svg +12 -0
  701. package/lib/assets/img/svg/logo.svg +11 -0
  702. package/lib/assets/img/svg/logo_with_text.svg +25 -0
  703. package/lib/assets/img/svg/menubar/login.svg +84 -0
  704. package/lib/assets/img/svg/menubar/my_projects.svg +85 -0
  705. package/lib/assets/img/svg/menubar/new_project.svg +110 -0
  706. package/lib/assets/img/svg/menubar/save_project.svg +84 -0
  707. package/lib/assets/img/svg/options.svg +3 -0
  708. package/lib/assets/img/svg/positioning.svg +3 -0
  709. package/lib/assets/img/svg/rotate.png +0 -0
  710. package/lib/assets/img/svg/rotate.svg +17 -0
  711. package/lib/assets/img/svg/rotate_object_clockwise.svg +26 -0
  712. package/lib/assets/img/svg/rotate_object_counterclockwise.svg +26 -0
  713. package/lib/assets/img/svg/toggleFilters.svg +19 -0
  714. package/lib/assets/img/svg/toolbar/add_appliances_active.svg +64 -0
  715. package/lib/assets/img/svg/toolbar/add_appliances_inactive.svg +52 -0
  716. package/lib/assets/img/svg/toolbar/add_button.svg +36 -0
  717. package/lib/assets/img/svg/toolbar/add_cabinets_active.svg +59 -0
  718. package/lib/assets/img/svg/toolbar/add_cabinets_inactive.svg +49 -0
  719. package/lib/assets/img/svg/toolbar/add_items_doors.svg +25 -0
  720. package/lib/assets/img/svg/toolbar/add_items_doorways.svg +24 -0
  721. package/lib/assets/img/svg/toolbar/add_items_refrigerator.svg +32 -0
  722. package/lib/assets/img/svg/toolbar/add_items_windows.svg +28 -0
  723. package/lib/assets/img/svg/toolbar/apply_button.svg +38 -0
  724. package/lib/assets/img/svg/toolbar/arrow-plus.svg +11 -0
  725. package/lib/assets/img/svg/toolbar/backsplash.svg +8 -0
  726. package/lib/assets/img/svg/toolbar/cancel_button.svg +37 -0
  727. package/lib/assets/img/svg/toolbar/consult_a_designer_button.svg +47 -0
  728. package/lib/assets/img/svg/toolbar/countertop.svg +7 -0
  729. package/lib/assets/img/svg/toolbar/dcm.png +0 -0
  730. package/lib/assets/img/svg/toolbar/dcm_off.svg +12 -0
  731. package/lib/assets/img/svg/toolbar/dcm_on.svg +474 -0
  732. package/lib/assets/img/svg/toolbar/delete_button.svg +37 -0
  733. package/lib/assets/img/svg/toolbar/download.svg +77 -0
  734. package/lib/assets/img/svg/toolbar/draw_custom_floor.svg +31 -0
  735. package/lib/assets/img/svg/toolbar/edit_button.svg +75 -0
  736. package/lib/assets/img/svg/toolbar/email_quote_button.svg +44 -0
  737. package/lib/assets/img/svg/toolbar/fbm.png +0 -0
  738. package/lib/assets/img/svg/toolbar/finishing_touches_active.svg +54 -0
  739. package/lib/assets/img/svg/toolbar/finishing_touches_inactive.svg +42 -0
  740. package/lib/assets/img/svg/toolbar/floorstyle.svg +9 -0
  741. package/lib/assets/img/svg/toolbar/fmb.png +0 -0
  742. package/lib/assets/img/svg/toolbar/fmb_off.svg +12 -0
  743. package/lib/assets/img/svg/toolbar/fmb_on.svg +489 -0
  744. package/lib/assets/img/svg/toolbar/furnishings_icon.svg +6 -0
  745. package/lib/assets/img/svg/toolbar/get_started_button.svg +41 -0
  746. package/lib/assets/img/svg/toolbar/handles.svg +5 -0
  747. package/lib/assets/img/svg/toolbar/lighting.svg +7 -0
  748. package/lib/assets/img/svg/toolbar/lrm.png +0 -0
  749. package/lib/assets/img/svg/toolbar/lrm_off.svg +12 -0
  750. package/lib/assets/img/svg/toolbar/lrm_on.svg +470 -0
  751. package/lib/assets/img/svg/toolbar/make_floorplan_active.svg +66 -0
  752. package/lib/assets/img/svg/toolbar/make_floorplan_inactive.svg +52 -0
  753. package/lib/assets/img/svg/toolbar/predefined_room_l_shaped.svg +20 -0
  754. package/lib/assets/img/svg/toolbar/predefined_room_layout.svg +20 -0
  755. package/lib/assets/img/svg/toolbar/predefined_room_long_narrow.svg +20 -0
  756. package/lib/assets/img/svg/toolbar/predefined_room_open_l_shape.svg +20 -0
  757. package/lib/assets/img/svg/toolbar/predefined_room_open_pentagon.svg +20 -0
  758. package/lib/assets/img/svg/toolbar/predefined_room_open_rectangle.svg +20 -0
  759. package/lib/assets/img/svg/toolbar/predefined_room_open_rectangle_2.svg +20 -0
  760. package/lib/assets/img/svg/toolbar/predefined_room_pentagon.svg +20 -0
  761. package/lib/assets/img/svg/toolbar/predefined_room_rectangle.svg +20 -0
  762. package/lib/assets/img/svg/toolbar/predefined_room_rectangle_with_alcove.svg +20 -0
  763. package/lib/assets/img/svg/toolbar/redo_button.svg +75 -0
  764. package/lib/assets/img/svg/toolbar/redo_button1.svg +75 -0
  765. package/lib/assets/img/svg/toolbar/review_quote_active.svg +14 -0
  766. package/lib/assets/img/svg/toolbar/review_quote_inactive.svg +44 -0
  767. package/lib/assets/img/svg/toolbar/save_project_button.svg +44 -0
  768. package/lib/assets/img/svg/toolbar/select_doorstyle_active.svg +67 -0
  769. package/lib/assets/img/svg/toolbar/select_doorstyle_inactive.svg +57 -0
  770. package/lib/assets/img/svg/toolbar/shopping-cart.svg +13 -0
  771. package/lib/assets/img/svg/toolbar/style_change_button.svg +47 -0
  772. package/lib/assets/img/svg/toolbar/take_picture.svg +75 -0
  773. package/lib/assets/img/svg/toolbar/undo_button.svg +76 -0
  774. package/lib/assets/img/svg/toolbar/undo_button1.svg +76 -0
  775. package/lib/assets/img/svg/toolbar/use_button.svg +37 -0
  776. package/lib/assets/img/svg/toolbar/wall_color_icon.svg +6 -0
  777. package/lib/assets/img/svg/topbar/edit_active.svg +10 -0
  778. package/lib/assets/img/svg/topbar/edit_inactive.svg +10 -0
  779. package/lib/assets/img/svg/topbar/redo_active.svg +42 -0
  780. package/lib/assets/img/svg/topbar/redo_inactive.svg +23 -0
  781. package/lib/assets/img/svg/topbar/select_all_active.svg +50 -0
  782. package/lib/assets/img/svg/topbar/select_all_inactive.svg +32 -0
  783. package/lib/assets/img/svg/topbar/take_picture_active.svg +51 -0
  784. package/lib/assets/img/svg/topbar/take_picture_inactive.svg +26 -0
  785. package/lib/assets/img/svg/topbar/undo_active.svg +42 -0
  786. package/lib/assets/img/svg/topbar/undo_inactive.svg +23 -0
  787. package/lib/assets/img/svg/warning_info_2d.svg +81 -0
  788. package/lib/assets/img/svg/window/Clear.svg +3 -0
  789. package/lib/assets/img/svg/window/Cross.svg +5 -0
  790. package/lib/assets/img/svg/window/Double_hung.svg +4 -0
  791. package/lib/assets/img/svg/window/Vertical.svg +4 -0
  792. package/lib/assets/img/svg/windows_clear.svg +23 -0
  793. package/lib/assets/img/svg/windows_cross.svg +28 -0
  794. package/lib/assets/img/svg/windows_double_hung.svg +24 -0
  795. package/lib/assets/img/svg/windows_vertical.svg +24 -0
  796. package/lib/assets/img/svg/wizardstep/Custom.svg +3 -0
  797. package/lib/assets/img/svg/wizardstep/Dashed_line.svg +3 -0
  798. package/lib/assets/img/svg/wizardstep/L.svg +3 -0
  799. package/lib/assets/img/svg/wizardstep/L2.svg +3 -0
  800. package/lib/assets/img/svg/wizardstep/Open.svg +3 -0
  801. package/lib/assets/img/svg/wizardstep/Square.svg +3 -0
  802. package/lib/assets/img/svg/wizardstep/bar-active.svg +9 -0
  803. package/lib/assets/img/svg/wizardstep/bar-normal.svg +3 -0
  804. package/lib/assets/img/svg/wizardstep/bullet-current.svg +3 -0
  805. package/lib/assets/img/svg/wizardstep/bullet-done.svg +3 -0
  806. package/lib/assets/img/svg/wizardstep/bullet-not-done.svg +3 -0
  807. package/lib/assets/img/svg/wizardstep/check-active.svg +3 -0
  808. package/lib/assets/img/svg/wizardstep/check-normal.svg +3 -0
  809. package/lib/assets/img/svg/wizardstep/detail_view.svg +87 -0
  810. package/lib/assets/img/svg/wizardstep/pencil.svg +11 -0
  811. package/lib/assets/img/svg/wizardstep/tile_view.svg +95 -0
  812. package/lib/assets/img/texture/glass.jpg +0 -0
  813. package/lib/assets/img/texture/steel.jpg +0 -0
  814. package/lib/assets/img/texture/white1px.jpg +0 -0
  815. package/lib/assets/img/texture/wood.jpg +0 -0
  816. package/lib/assets/model/DCM.bin +0 -0
  817. package/lib/assets/model/DCM.fbx +0 -0
  818. package/lib/assets/model/DCM.gltf +1 -0
  819. package/lib/assets/model/FBM.bin +0 -0
  820. package/lib/assets/model/FBM.fbx +0 -0
  821. package/lib/assets/model/FBM.gltf +1 -0
  822. package/lib/assets/model/LRM.bin +0 -0
  823. package/lib/assets/model/LRM.fbx +0 -0
  824. package/lib/assets/model/LRM.gltf +1 -0
  825. package/lib/assets/rtastore_logo.png +0 -0
  826. package/lib/catalog/areas/area/planner-element.js +14 -7
  827. package/lib/catalog/areas/area/textures/ceramic-tile.jpg +0 -0
  828. package/lib/catalog/areas/area/textures/grass.jpg +0 -0
  829. package/lib/catalog/areas/area/textures/parquet.jpg +0 -0
  830. package/lib/catalog/areas/area/textures/strand-porcelain.jpg +0 -0
  831. package/lib/catalog/areas/area/textures/tile1.jpg +0 -0
  832. package/lib/catalog/back.png +0 -0
  833. package/lib/catalog/catalog.js +10 -20
  834. package/lib/catalog/doors.png +0 -0
  835. package/lib/catalog/doorways.png +0 -0
  836. package/lib/catalog/envMap/nx.hdr +0 -0
  837. package/lib/catalog/envMap/ny.hdr +0 -0
  838. package/lib/catalog/envMap/nz.hdr +0 -0
  839. package/lib/catalog/envMap/px.hdr +0 -0
  840. package/lib/catalog/envMap/py.hdr +0 -0
  841. package/lib/catalog/envMap/pz.hdr +0 -0
  842. package/lib/catalog/export.js +1 -0
  843. package/lib/catalog/factories/area-factory-3d.js +1 -1
  844. package/lib/catalog/factories/area-factory.js +6 -7
  845. package/lib/catalog/factories/export.js +1 -1
  846. package/lib/catalog/factories/wall-factory-3d.js +6 -6
  847. package/lib/catalog/factories/wall-factory.js +12 -11
  848. package/lib/catalog/holes/door-closet/planner-element.js +4 -3
  849. package/lib/catalog/holes/door-double/door_double.png +0 -0
  850. package/lib/catalog/holes/door-double/planner-element.js +4 -3
  851. package/lib/catalog/holes/door-exterior/planner-element.js +4 -3
  852. package/lib/catalog/holes/door-interior/planner-element.js +4 -3
  853. package/lib/catalog/holes/door-panic/panicDoor.png +0 -0
  854. package/lib/catalog/holes/door-panic/planner-element.js +4 -3
  855. package/lib/catalog/holes/door-panic-double/panicDoorDouble.png +0 -0
  856. package/lib/catalog/holes/door-panic-double/planner-element.js +4 -3
  857. package/lib/catalog/holes/door-sliding/planner-element.js +4 -3
  858. package/lib/catalog/holes/doorway-framed/planner-element.js +4 -3
  859. package/lib/catalog/holes/doorway-frameless/planner-element.js +4 -3
  860. package/lib/catalog/holes/export.js +2 -2
  861. package/lib/catalog/holes/gate/gate.jpg +0 -0
  862. package/lib/catalog/holes/window-clear/planner-element.js +4 -3
  863. package/lib/catalog/holes/window-clear/texture.png +0 -0
  864. package/lib/catalog/holes/window-cross/planner-element.js +4 -3
  865. package/lib/catalog/holes/window-cross/texture.png +0 -0
  866. package/lib/catalog/holes/window-double-hung/planner-element.js +4 -3
  867. package/lib/catalog/holes/window-double-hung/texture.png +0 -0
  868. package/lib/catalog/holes/window-vertical/planner-element.js +4 -3
  869. package/lib/catalog/holes/window-vertical/texture.png +0 -0
  870. package/lib/catalog/lines/wall/planner-element.js +22 -11
  871. package/lib/catalog/lines/wall/textures/bricks-normal.jpg +0 -0
  872. package/lib/catalog/lines/wall/textures/bricks-normal2.jpg +0 -0
  873. package/lib/catalog/lines/wall/textures/bricks.jpg +0 -0
  874. package/lib/catalog/lines/wall/textures/bricks2.jpg +0 -0
  875. package/lib/catalog/lines/wall/textures/bricks3.jpg +0 -0
  876. package/lib/catalog/lines/wall/textures/morden-normal.jpg +0 -0
  877. package/lib/catalog/lines/wall/textures/morden.jpg +0 -0
  878. package/lib/catalog/lines/wall/textures/painted-normal.jpg +0 -0
  879. package/lib/catalog/lines/wall/textures/painted.jpg +0 -0
  880. package/lib/catalog/lines/wall/textures/plaster-normal.jpg +0 -0
  881. package/lib/catalog/lines/wall/textures/plaster.jpg +0 -0
  882. package/lib/catalog/lines/wall/wall.png +0 -0
  883. package/lib/catalog/molding/molding-dcm/planner-element.js +2 -6
  884. package/lib/catalog/molding/molding-dcm/texture.png +0 -0
  885. package/lib/catalog/molding/molding-fbm/planner-element.js +2 -6
  886. package/lib/catalog/molding/molding-fbm/texture.png +0 -0
  887. package/lib/catalog/molding/molding-lrm/planner-element.js +2 -6
  888. package/lib/catalog/molding/molding-lrm/texture.png +0 -0
  889. package/lib/catalog/properties/export.js +1 -1
  890. package/lib/catalog/properties/property-checkbox.js +12 -14
  891. package/lib/catalog/properties/property-color.js +3 -2
  892. package/lib/catalog/properties/property-enum.js +8 -12
  893. package/lib/catalog/properties/property-hidden.js +3 -2
  894. package/lib/catalog/properties/property-lenght-measure.js +11 -11
  895. package/lib/catalog/properties/property-length-measure.js +15 -15
  896. package/lib/catalog/properties/property-length-measure_hole.js +10 -10
  897. package/lib/catalog/properties/property-number.js +3 -2
  898. package/lib/catalog/properties/property-read-only.js +3 -2
  899. package/lib/catalog/properties/property-string.js +3 -2
  900. package/lib/catalog/properties/property-toggle.js +3 -2
  901. package/lib/catalog/properties/shared-property-style.js +2 -1
  902. package/lib/catalog/utils/FuseUtils.js +10 -11
  903. package/lib/catalog/utils/exporter.js +15 -13
  904. package/lib/catalog/utils/geom-utils.js +1 -1
  905. package/lib/catalog/utils/item-loader.js +140 -65
  906. package/lib/catalog/utils/mtl-loader.js +9 -2
  907. package/lib/catalog/utils/obj-loader.js +10 -2
  908. package/lib/catalog/windows.png +0 -0
  909. package/lib/class/FuseUtils.js +10 -11
  910. package/lib/class/area.js +9 -11
  911. package/lib/class/export.js +1 -1
  912. package/lib/class/group.js +13 -20
  913. package/lib/class/guide.js +9 -12
  914. package/lib/class/hole.js +7 -9
  915. package/lib/class/item.js +134 -173
  916. package/lib/class/layer.js +7 -9
  917. package/lib/class/line.js +126 -82
  918. package/lib/class/project.js +40 -35
  919. package/lib/class/vertex.js +10 -12
  920. package/lib/components/content.js +35 -8
  921. package/lib/components/export.js +6 -32
  922. package/lib/components/style/button.js +17 -22
  923. package/lib/components/style/cancel-button.js +7 -7
  924. package/lib/components/style/content-container.js +5 -7
  925. package/lib/components/style/content-title.js +10 -12
  926. package/lib/components/style/delete-button.js +8 -8
  927. package/lib/components/style/export.js +1 -1
  928. package/lib/components/style/form-block.js +9 -12
  929. package/lib/components/style/form-color-input.js +7 -7
  930. package/lib/components/style/form-label.js +9 -12
  931. package/lib/components/style/form-number-input.js +15 -19
  932. package/lib/components/style/form-number-input_2.js +15 -19
  933. package/lib/components/style/form-select.js +10 -10
  934. package/lib/components/style/form-slider.js +28 -12
  935. package/lib/components/style/form-submit-button.js +8 -8
  936. package/lib/components/style/form-text-input.js +19 -24
  937. package/lib/components/viewer2d/area.js +8 -7
  938. package/lib/components/viewer2d/export.js +1 -1
  939. package/lib/components/viewer2d/grids/grid-horizontal-streak.js +3 -3
  940. package/lib/components/viewer2d/grids/grid-streak.js +4 -4
  941. package/lib/components/viewer2d/grids/grid-vertical-streak.js +3 -3
  942. package/lib/components/viewer2d/grids/grids.js +6 -10
  943. package/lib/components/viewer2d/group.js +4 -3
  944. package/lib/components/viewer2d/item.js +34 -98
  945. package/lib/components/viewer2d/layer.js +4 -3
  946. package/lib/components/viewer2d/line.js +338 -258
  947. package/lib/components/viewer2d/ruler.js +21 -41
  948. package/lib/components/viewer2d/rulerDist.js +23 -36
  949. package/lib/components/viewer2d/rulerX.js +15 -19
  950. package/lib/components/viewer2d/rulerY.js +15 -19
  951. package/lib/components/viewer2d/scene.js +23 -33
  952. package/lib/components/viewer2d/snap.js +4 -3
  953. package/lib/components/viewer2d/state.js +7 -11
  954. package/lib/components/viewer2d/utils.js +29 -2
  955. package/lib/components/viewer2d/vertex.js +4 -3
  956. package/lib/components/viewer2d/viewer2d.js +178 -139
  957. package/lib/components/viewer3d/camera-controls-module/camera-controls.module.js +14 -20
  958. package/lib/components/viewer3d/dcm.js +2 -1
  959. package/lib/components/viewer3d/fbm.js +2 -1
  960. package/lib/components/viewer3d/front3D.js +6 -10
  961. package/lib/components/viewer3d/grid-creator.js +4 -3
  962. package/lib/components/viewer3d/grids/grid-horizontal-streak.js +3 -2
  963. package/lib/components/viewer3d/grids/grid-streak.js +3 -2
  964. package/lib/components/viewer3d/grids/grid-vertical-streak.js +3 -2
  965. package/lib/components/viewer3d/libs/mtl-loader.js +9 -2
  966. package/lib/components/viewer3d/libs/obj-loader.js +9 -2
  967. package/lib/components/viewer3d/libs/orbit-controls.js +11 -5
  968. package/lib/components/viewer3d/libs/pointer-lock-controls.js +13 -7
  969. package/lib/components/viewer3d/lrm.js +2 -1
  970. package/lib/components/viewer3d/pointer-lock-navigation.js +1 -1
  971. package/lib/components/viewer3d/ruler-utils/itemRect.js +10 -9
  972. package/lib/components/viewer3d/ruler-utils/layer3D.js +35 -34
  973. package/lib/components/viewer3d/ruler-utils/ruler3D.js +5 -7
  974. package/lib/components/viewer3d/ruler-utils/scene3D.js +3 -5
  975. package/lib/components/viewer3d/ruler-utils/state3D.js +3 -2
  976. package/lib/components/viewer3d/scene-creator.js +62 -52
  977. package/lib/components/viewer3d/three-memory-cleaner.js +1 -1
  978. package/lib/components/viewer3d/viewer3d-first-person.js +13 -17
  979. package/lib/components/viewer3d/viewer3d.js +394 -266
  980. package/lib/constants.js +59 -7
  981. package/lib/devLiteRenderer.js +320 -0
  982. package/lib/index.js +59 -89
  983. package/lib/models.js +64 -68
  984. package/lib/plugins/console-debugger.js +5 -7
  985. package/lib/plugins/export.js +1 -9
  986. package/lib/plugins/keyboard.js +2 -1
  987. package/lib/reducers/areas-reducer.js +2 -1
  988. package/lib/reducers/export.js +1 -1
  989. package/lib/reducers/groups-reducer.js +2 -1
  990. package/lib/reducers/holes-reducer.js +2 -1
  991. package/lib/reducers/items-reducer.js +9 -4
  992. package/lib/reducers/lines-reducer.js +2 -1
  993. package/lib/reducers/project-reducer.js +5 -2
  994. package/lib/reducers/scene-reducer.js +2 -1
  995. package/lib/reducers/user-reducer.js +2 -1
  996. package/lib/reducers/vertices-reducer.js +2 -1
  997. package/lib/reducers/viewer2d-reducer.js +5 -5
  998. package/lib/reducers/viewer3d-reducer.js +5 -5
  999. package/lib/shared-style.js +4 -4
  1000. package/lib/styles/export.js +1 -1
  1001. package/lib/styles/tabs.css +40 -0
  1002. package/lib/translator/en.js +2 -1
  1003. package/lib/translator/it.js +2 -1
  1004. package/lib/translator/ru.js +2 -1
  1005. package/lib/translator/translator.js +7 -10
  1006. package/lib/utils/convert-units-lite.js +35 -0
  1007. package/lib/utils/export.js +2 -2
  1008. package/lib/utils/geometry.js +83 -54
  1009. package/lib/utils/get-edges-of-subgraphs.js +6 -1
  1010. package/lib/utils/graph-cycles.js +7 -8
  1011. package/lib/utils/graph-inner-cycles.js +1 -1
  1012. package/lib/utils/graph.js +13 -11
  1013. package/lib/utils/helper.js +15 -16
  1014. package/lib/utils/history.js +1 -1
  1015. package/lib/utils/id-broker.js +7 -10
  1016. package/lib/utils/isolate-event-handler.js +691 -0
  1017. package/lib/utils/molding.js +66 -71
  1018. package/lib/utils/name-generator.js +7 -9
  1019. package/lib/utils/objects-utils.js +5 -3
  1020. package/lib/utils/process-black-list.js +3 -5
  1021. package/lib/utils/react-if.js +3 -2
  1022. package/lib/utils/snap-scene.js +3 -7
  1023. package/lib/utils/snap.js +22 -26
  1024. package/lib/utils/threeCSG.es6.js +16 -15
  1025. package/lib/version.js +1 -2
  1026. package/package.json +53 -60
  1027. package/es/KitchenConfigurator.js +0 -652
  1028. package/es/KitchenConfiguratorApp.js +0 -495
  1029. package/es/components/disclaimer/disclaimer.js +0 -117
  1030. package/es/plugins/autosave.js +0 -33
  1031. package/lib/KitchenConfigurator.js +0 -660
  1032. package/lib/KitchenConfiguratorApp.js +0 -502
  1033. package/lib/components/disclaimer/disclaimer.js +0 -125
  1034. package/lib/plugins/autosave.js +0 -39
@@ -1,11 +1,14 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
8
+ exports.STYLE_ROOM_SHAPE = void 0;
7
9
  exports.compareVertices = compareVertices;
8
10
  exports["default"] = Line;
11
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
12
  var _react = _interopRequireDefault(require("react"));
10
13
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
14
  var _export = require("../../utils/export");
@@ -13,12 +16,13 @@ var _ruler = _interopRequireDefault(require("./ruler"));
13
16
  var _constants = require("../../constants");
14
17
  var Three = _interopRequireWildcard(require("three"));
15
18
  var _utils = require("./utils");
16
- var _Tooltip = _interopRequireDefault(require("@material-ui/core/Tooltip"));
17
19
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
18
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
20
+ 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; }
21
+ 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) { (0, _defineProperty2["default"])(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; }
19
22
  var STYLE = {
20
- stroke: 'rgb(77, 77, 77)',
21
- strokeWidth: '1px'
23
+ stroke: '#78909C',
24
+ strokeWidth: '1px',
25
+ strokeDasharray: '4 8'
22
26
  };
23
27
  var STYLE_ANGLE = {
24
28
  stroke: 'rgb(77, 77, 77)',
@@ -32,7 +36,40 @@ var STYLE_TEXT = {
32
36
  textAnchor: 'middle',
33
37
  fontSize: '7px',
34
38
  fontWeight: 'middle',
35
- fontFamily: "'Microsoft YaHei UI', Courier, monospace"
39
+ fontFamily: "'Courier New', Courier, monospace"
40
+ };
41
+ var STYLE_ROOM_SHAPE = exports.STYLE_ROOM_SHAPE = {
42
+ stroke: _constants.ROOM_SHAPE_MEASUREMENT_LINE_COLOR,
43
+ strokeWidth: '2px'
44
+ };
45
+ var STYLE_DASH = {
46
+ stroke: _constants.DASH_LINE_COLOR,
47
+ strokeDasharray: '4 4',
48
+ strokeWidth: '2px',
49
+ strokeLinecap: 'round'
50
+ };
51
+ var STYLE_ROOM_ELEMENT = {
52
+ fill: _constants.ROOM_ELEMENT_MEASUREMENT_LINE_COLOR,
53
+ stroke: _constants.ROOM_ELEMENT_MEASUREMENT_LINE_COLOR,
54
+ strokeWidth: '2px'
55
+ };
56
+ var STYLE_BASE_ITEM = {
57
+ fill: _constants.BASE_ITEM_MEASUREMENT_LINE_COLOR,
58
+ stroke: _constants.BASE_ITEM_MEASUREMENT_LINE_COLOR,
59
+ strokeWidth: '2px'
60
+ };
61
+ var STYLE_WALL_ITEM = {
62
+ fill: _constants.WALL_ITEM_MEASUREMENT_LINE_COLOR,
63
+ stroke: _constants.WALL_ITEM_MEASUREMENT_LINE_COLOR,
64
+ strokeWidth: '2px'
65
+ };
66
+ var STYLE_DISTANCE = {
67
+ fill: _constants.DISTANCE_MEASUREMENT_LINE_COLOR,
68
+ stroke: _constants.DISTANCE_MEASUREMENT_LINE_COLOR,
69
+ strokeWidth: '2px'
70
+ };
71
+ var selectStyle = function selectStyle(element, style) {
72
+ return element.iFlag ? style : STYLE_DISTANCE;
36
73
  };
37
74
  function compareVertices(v0, v1) {
38
75
  return v0.x === v1.x ? v0.y - v1.y : v0.x - v1.x;
@@ -58,9 +95,27 @@ function Line(_ref) {
58
95
  y1 = vertex0.y;
59
96
  var x2 = vertex1.x,
60
97
  y2 = vertex1.y;
98
+ var l2 = {
99
+ x: x1,
100
+ y: y1
101
+ };
102
+ var l3 = {
103
+ x: x2,
104
+ y: y2
105
+ };
106
+ var isSnapped = function isSnapped(itemRect) {
107
+ var r0 = itemRect.rect[0];
108
+ var r1 = itemRect.rect[1];
109
+ var r2 = itemRect.rect[2];
110
+ var r3 = itemRect.rect[3];
111
+ var delta23 = _export.GeometryUtils.verticesDistance(l2, r3) + _export.GeometryUtils.verticesDistance(r3, r2) + _export.GeometryUtils.verticesDistance(r2, l3) - _export.GeometryUtils.verticesDistance(l3, l2);
112
+ if (delta23 < 0.1) {
113
+ return true;
114
+ } else {
115
+ return false;
116
+ }
117
+ };
61
118
  var relatedvertice0x, relatedvertice0y, relatedvertice1x, relatedvertice1y;
62
- // relatedvertice0x = relatedVertice.point.x;
63
- // relatedvertice0y = relatedVertice.point.y;
64
119
  line.relatedVertices.forEach(function (relatedVertice) {
65
120
  if (relatedVertice.index == undefined) relatedVertice = relatedVertice.toJSON();
66
121
  if (relatedVertice.index == 0) {
@@ -73,17 +128,19 @@ function Line(_ref) {
73
128
  });
74
129
  var thickness = _constants.LINE_THICKNESS;
75
130
  var half_thickness = thickness / 2;
76
- // if (compareVertices(vertex0, vertex1) >= 0 && vertex0.x !== vertex1.x) {
77
- // ({ x: x1, y: y1 } = vertex1);
78
- // ({ x: x2, y: y2 } = vertex0);
79
- // }
80
-
131
+ var STEP = 20;
81
132
  var length = _export.GeometryUtils.pointsDistance(x1, y1, x2, y2);
82
133
  // let length = GeometryUtils.pointsDistance(relatedvertice0x,relatedvertice0y,relatedvertice1x,relatedvertice1y);
83
134
  var rightHoleLength, leftHoleLength, holeLength;
84
135
  var angle = _export.GeometryUtils.angleBetweenTwoPointsAndOrigin(x1, y1, x2, y2);
85
- var baseSpace = 20;
86
- var base_item = _export.GeometryUtils.getAllItemSpecified(scene, catalog, _constants.BASE_CABINET_LAYOUTPOS);
136
+ // wall cabinet
137
+ var wallSpace = STEP;
138
+ var wall_item = _export.GeometryUtils.getAllItemSpecified(scene, catalog, [_constants.WALL_CABINET_LAYOUTPOS, _constants.TALL_CABINET_LAYOUTPOS]);
139
+ var wallRuler = [];
140
+ var wall_posArray = [];
141
+ if (wall_item.cur) {
142
+ wall_item.others.push(wall_item.cur);
143
+ }
87
144
  // let relatedLines = [];
88
145
  var angleVertices = [];
89
146
  var layerID = state.getIn(['scene', 'selectedLayer']);
@@ -145,117 +202,108 @@ function Line(_ref) {
145
202
  });
146
203
  }
147
204
  }
148
- var l2 = {
149
- x: x1,
150
- y: y1
151
- };
152
- var l3 = {
153
- x: x2,
154
- y: y2
155
- };
156
- var isSnapped = function isSnapped(itemRect) {
157
- var r0 = itemRect.rect[0];
158
- var r1 = itemRect.rect[1];
159
- var r2 = itemRect.rect[2];
160
- var r3 = itemRect.rect[3];
161
- var delta23 = _export.GeometryUtils.verticesDistance(l2, r3) + _export.GeometryUtils.verticesDistance(r3, r2) + _export.GeometryUtils.verticesDistance(r2, l3) - _export.GeometryUtils.verticesDistance(l3, l2);
162
- if (delta23 < 0.1) {
163
- return true;
164
- } else {
165
- return false;
166
- }
167
- };
168
- // base cabinet
169
- var baseRuler = [];
170
- var base_posArray = [];
171
- if (base_item.cur) {
172
- base_item.others.push(base_item.cur);
173
- }
174
- base_item.others.forEach(function (itemRect) {
175
- var r2 = itemRect.rect[2];
176
- var r3 = itemRect.rect[3];
205
+ if (Math.sin(angle) === 0 || _export.GeometryUtils.almostEqual(y1, y2)) wall_item.others.sort(function (a, b) {
206
+ return a.pos.x - b.pos.x;
207
+ });else wall_item.others.sort(function (a, b) {
208
+ return a.pos.y - b.pos.y;
209
+ });
210
+ wall_posArray.push(_objectSpread(_objectSpread({}, l2), {}, {
211
+ iFlag: false
212
+ }));
213
+ wall_item.others.forEach(function (itemRect) {
214
+ var r2 = l2 > l3 ? itemRect.rect[2] : itemRect.rect[3];
215
+ var r3 = l2 > l3 ? itemRect.rect[3] : itemRect.rect[2];
177
216
  if (isSnapped(itemRect)) {
178
- base_posArray.push(r2);
179
- base_posArray.push(r3);
217
+ wall_posArray.push(_objectSpread(_objectSpread({}, r2), {}, {
218
+ iFlag: itemRect.itemInfo.id
219
+ }));
220
+ wall_posArray.push(_objectSpread(_objectSpread({}, r3), {}, {
221
+ iFlag: itemRect.itemInfo.id
222
+ }));
180
223
  }
181
224
  });
182
- base_posArray.push(l2);
183
- base_posArray.push(l3);
184
- var base_posAndwidth = [];
185
- if (Math.abs(angle) === 0 || Math.abs(angle) === 180 || _export.GeometryUtils.almostEqual(y1, y2)) {
186
- base_posArray.sort(function (a, b) {
225
+ wall_posArray.push(_objectSpread(_objectSpread({}, l3), {}, {
226
+ iFlag: false
227
+ }));
228
+ var wall_posAndwidth = [];
229
+ if (Math.sin(angle) === 0 || _export.GeometryUtils.almostEqual(y1, y2)) {
230
+ wall_posArray.sort(function (a, b) {
187
231
  return a.x - b.x;
188
232
  });
189
- if (base_posArray.length > 2) {
190
- for (var index = 0; index < base_posArray.length - 1; index++) {
191
- var element = base_posArray[index];
192
- base_posAndwidth.push({
233
+ if (wall_posArray.length > 2) {
234
+ for (var index = 0; index < wall_posArray.length - 1; index++) {
235
+ var element = wall_posArray[index];
236
+ wall_posAndwidth.push({
193
237
  pos: element,
194
- length: base_posArray[index + 1].x - element.x
238
+ length: wall_posArray[index + 1].x - element.x,
239
+ iFlag: wall_posArray[index + 1].iFlag === element.iFlag ? true : false
195
240
  });
196
241
  }
197
242
  }
198
243
  } else {
199
- base_posArray.sort(function (a, b) {
244
+ wall_posArray.sort(function (a, b) {
200
245
  return a.y - b.y;
201
246
  });
202
- if (base_posArray.length > 2) {
203
- for (var _index = 0; _index < base_posArray.length - 1; _index++) {
204
- var _element = base_posArray[_index];
205
- base_posAndwidth.push({
247
+ if (wall_posArray.length > 2) {
248
+ for (var _index = 0; _index < wall_posArray.length - 1; _index++) {
249
+ var _element = wall_posArray[_index];
250
+ wall_posAndwidth.push({
206
251
  pos: _element,
207
- length: Math.abs((base_posArray[_index + 1].y - _element.y) / Math.sin(angle / 180 * Math.PI))
252
+ length: Math.abs((wall_posArray[_index + 1].y - _element.y) / Math.sin(angle / 180 * Math.PI)),
253
+ iFlag: wall_posArray[_index + 1].iFlag === _element.iFlag ? true : false
208
254
  });
209
255
  }
210
256
  }
211
257
  }
212
- if (!showBaseCabinetMeasure || base_posArray.length <= 2) {
213
- baseSpace -= 20;
258
+ if (!showWallCabinetMeasure || wall_posArray.length <= 2) {
259
+ wallSpace = 0;
214
260
  }
215
- baseRuler = base_posAndwidth.map(function (pAw) {
261
+ wallRuler = wall_posAndwidth.map(function (pAw) {
216
262
  if (pAw.length > 1) {
217
- if (Math.abs(angle) === 0 || Math.abs(angle) === 180 || _export.GeometryUtils.almostEqual(y1, y2)) {
263
+ if (Math.sin(angle) === 0 || _export.GeometryUtils.almostEqual(y1, y2)) {
218
264
  if (x1 - x2 > 0) {
219
265
  return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
220
266
  x1: pAw.pos.x + pAw.length,
221
267
  y1: pAw.pos.y,
222
268
  x2: pAw.pos.x + pAw.length,
223
- y2: pAw.pos.y - thickness / 2 - baseSpace,
224
- style: STYLE
269
+ y2: pAw.pos.y - thickness / 2 - wallSpace,
270
+ style: STYLE_DASH
225
271
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
226
272
  key: 4,
227
273
  layer: layer,
228
274
  unit: scene.unit,
229
275
  rulerUnit: scene.rulerUnit,
230
276
  length: pAw.length,
231
- transform: "translate(".concat(pAw.pos.x, ", ").concat(pAw.pos.y - thickness / 2 - baseSpace, " ) rotate(").concat(angle + 180, ", 0, 0)")
277
+ transform: "translate(".concat(pAw.pos.x, ", ").concat(pAw.pos.y - thickness / 2 - wallSpace, " ) rotate(").concat(angle + 180, ", 0, 0)"),
278
+ style: selectStyle(pAw, STYLE_WALL_ITEM)
232
279
  }), /*#__PURE__*/_react["default"].createElement("line", {
233
280
  x1: pAw.pos.x,
234
281
  y1: pAw.pos.y,
235
282
  x2: pAw.pos.x,
236
- y2: pAw.pos.y - thickness / 2 - baseSpace,
237
- style: STYLE
283
+ y2: pAw.pos.y - thickness / 2 - wallSpace,
284
+ style: STYLE_DASH
238
285
  }));
239
286
  } else {
240
287
  return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
241
288
  x1: pAw.pos.x + pAw.length,
242
289
  y1: pAw.pos.y,
243
290
  x2: pAw.pos.x + pAw.length,
244
- y2: pAw.pos.y + thickness / 2 + baseSpace,
245
- style: STYLE
291
+ y2: pAw.pos.y + thickness / 2 + wallSpace,
292
+ style: STYLE_DASH
246
293
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
247
294
  key: 4,
248
295
  layer: layer,
249
296
  unit: scene.unit,
250
297
  rulerUnit: scene.rulerUnit,
251
298
  length: pAw.length,
252
- transform: "translate(".concat(pAw.pos.x, ", ").concat(pAw.pos.y + thickness / 2 + baseSpace, " ) rotate(").concat(angle, ", 0, 0)")
299
+ transform: "translate(".concat(pAw.pos.x, ", ").concat(pAw.pos.y + thickness / 2 + wallSpace, " ) rotate(").concat(angle, ", 0, 0)"),
300
+ style: selectStyle(pAw, STYLE_WALL_ITEM)
253
301
  }), /*#__PURE__*/_react["default"].createElement("line", {
254
302
  x1: pAw.pos.x,
255
303
  y1: pAw.pos.y,
256
304
  x2: pAw.pos.x,
257
- y2: pAw.pos.y + thickness / 2 + baseSpace,
258
- style: STYLE
305
+ y2: pAw.pos.y + thickness / 2 + wallSpace,
306
+ style: STYLE_DASH
259
307
  }));
260
308
  }
261
309
  } else {
@@ -264,43 +312,45 @@ function Line(_ref) {
264
312
  return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
265
313
  x1: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI),
266
314
  y1: pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI),
267
- x2: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
268
- y2: pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
269
- style: STYLE
315
+ x2: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
316
+ y2: pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
317
+ style: STYLE_DASH
270
318
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
271
319
  key: 5,
272
320
  layer: layer,
273
321
  unit: scene.unit,
274
322
  rulerUnit: scene.rulerUnit,
275
323
  length: pAw.length,
276
- transform: "translate(".concat(pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0)")
324
+ transform: "translate(".concat(pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0)"),
325
+ style: selectStyle(pAw, STYLE_WALL_ITEM)
277
326
  }), /*#__PURE__*/_react["default"].createElement("line", {
278
327
  x1: pAw.pos.x,
279
328
  y1: pAw.pos.y,
280
- x2: pAw.pos.x - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
281
- y2: pAw.pos.y + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
282
- style: STYLE
329
+ x2: pAw.pos.x - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
330
+ y2: pAw.pos.y + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
331
+ style: STYLE_DASH
283
332
  }));
284
333
  } else {
285
334
  return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
286
335
  x1: pAw.pos.x,
287
336
  y1: pAw.pos.y,
288
- x2: pAw.pos.x - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
289
- y2: pAw.pos.y + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
290
- style: STYLE
337
+ x2: pAw.pos.x - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
338
+ y2: pAw.pos.y + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
339
+ style: STYLE_DASH
291
340
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
292
341
  key: 5,
293
342
  layer: layer,
294
343
  unit: scene.unit,
295
344
  rulerUnit: scene.rulerUnit,
296
345
  length: pAw.length,
297
- transform: "translate(".concat(pAw.pos.x - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0) scale(-1, -1)")
346
+ transform: "translate(".concat(pAw.pos.x - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0) scale(-1, -1)"),
347
+ style: selectStyle(pAw, STYLE_WALL_ITEM)
298
348
  }), /*#__PURE__*/_react["default"].createElement("line", {
299
349
  x1: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI),
300
350
  y1: pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI),
301
- x2: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
302
- y2: pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
303
- style: STYLE
351
+ x2: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
352
+ y2: pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
353
+ style: STYLE_DASH
304
354
  }));
305
355
  }
306
356
  } else {
@@ -308,185 +358,164 @@ function Line(_ref) {
308
358
  return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
309
359
  x1: pAw.pos.x,
310
360
  y1: pAw.pos.y,
311
- x2: pAw.pos.x - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
312
- y2: pAw.pos.y + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
313
- style: STYLE
361
+ x2: pAw.pos.x - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
362
+ y2: pAw.pos.y + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
363
+ style: STYLE_DASH
314
364
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
315
365
  key: 5,
316
366
  layer: layer,
317
367
  unit: scene.unit,
318
368
  rulerUnit: scene.rulerUnit,
319
369
  length: pAw.length,
320
- transform: "translate(".concat(pAw.pos.x - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0)")
370
+ transform: "translate(".concat(pAw.pos.x - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0)"),
371
+ style: selectStyle(pAw, STYLE_WALL_ITEM)
321
372
  }), /*#__PURE__*/_react["default"].createElement("line", {
322
373
  x1: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI),
323
374
  y1: pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI),
324
- x2: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
325
- y2: pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
326
- style: STYLE
375
+ x2: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
376
+ y2: pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
377
+ style: STYLE_DASH
327
378
  }));
328
379
  } else {
329
380
  return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
330
381
  x1: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI),
331
382
  y1: pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI),
332
- x2: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
333
- y2: pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
334
- style: STYLE
383
+ x2: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
384
+ y2: pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
385
+ style: STYLE_DASH
335
386
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
336
387
  key: 5,
337
388
  layer: layer,
338
389
  unit: scene.unit,
339
390
  rulerUnit: scene.rulerUnit,
340
391
  length: pAw.length,
341
- transform: "translate(".concat(pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0) scale(-1, -1)")
392
+ transform: "translate(".concat(pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0) scale(-1, -1)"),
393
+ style: selectStyle(pAw, STYLE_WALL_ITEM)
342
394
  }), /*#__PURE__*/_react["default"].createElement("line", {
343
395
  x1: pAw.pos.x,
344
396
  y1: pAw.pos.y,
345
- x2: pAw.pos.x - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
346
- y2: pAw.pos.y + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
347
- style: STYLE
397
+ x2: pAw.pos.x - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
398
+ y2: pAw.pos.y + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
399
+ style: STYLE_DASH
348
400
  }));
349
401
  }
350
402
  }
351
403
  }
352
404
  }
353
405
  });
354
- var doorSpace = baseSpace + 20;
355
- var renderedHoles = line.holes.map(function (holeID) {
356
- var hole = layer.holes.get(holeID);
357
- if (hole === undefined) {
358
- return '';
359
- }
360
- var startAt = length * hole.offset;
361
- var renderedHole = catalog.getElement(hole.type).render2D(hole, layer, scene);
362
- return /*#__PURE__*/_react["default"].createElement("g", {
363
- key: holeID,
364
- transform: "translate(".concat(startAt, ", 3.5)"),
365
- "data-element-root": true,
366
- "data-prototype": hole.prototype,
367
- "data-id": hole.id,
368
- "data-selected": hole.selected,
369
- "data-layer": layer.id
370
- }, renderedHole);
371
- });
372
- var renderedLine = catalog.getElement(line.type).render2D(line, layer, scene, state);
373
- var holeTemp = [];
374
- var renderedRuler = [];
375
- var renderedAllRuler = [];
376
- if (!line.holes.size || !showWindowDoorMeasure) {
377
- doorSpace -= 20;
378
- }
379
- var allRuler = [0],
380
- holeData = [];
381
- var lineHoles = line.holes.sortBy(function (holeID) {
382
- var hole = layer.holes.get(holeID);
383
- return !hole ? 0 : hole.offset;
384
- });
385
- lineHoles.forEach(function (holeID) {
386
- var hole = layer.holes.get(holeID);
387
- if (hole !== undefined) {
388
- var startAt = length * hole.offset;
389
- var holeWidth = hole.properties.toJS().width.length;
390
- allRuler.push(startAt - holeWidth / 2);
391
- allRuler.push(startAt + holeWidth / 2);
392
- holeData["".concat(startAt - holeWidth / 2, "_").concat(startAt + holeWidth / 2)] = holeID;
393
- }
394
- });
395
- allRuler.push(length);
396
406
 
397
- // wall cabinet
398
- var wallSpace = doorSpace + 20;
399
- var wall_item = _export.GeometryUtils.getAllItemSpecified(scene, catalog, _constants.WALL_CABINET_LAYOUTPOS);
400
- var wallRuler = [];
401
- var wall_posArray = [];
402
- if (wall_item.cur) {
403
- wall_item.others.push(wall_item.cur);
407
+ //base cabinet
408
+ var baseSpace = wallSpace + STEP;
409
+ var base_item = _export.GeometryUtils.getAllItemSpecified(scene, catalog, _constants.BASE_CABINET_LAYOUTPOS);
410
+
411
+ // base cabinet
412
+ var baseRuler = [];
413
+ var base_posArray = [];
414
+ if (base_item.cur) {
415
+ base_item.others.push(base_item.cur);
404
416
  }
405
- wall_item.others.forEach(function (itemRect) {
406
- var r2 = itemRect.rect[2];
407
- var r3 = itemRect.rect[3];
417
+ if (Math.sin(angle) === 0 || _export.GeometryUtils.almostEqual(y1, y2)) base_item.others.sort(function (a, b) {
418
+ return a.pos.x - b.pos.x;
419
+ });else base_item.others.sort(function (a, b) {
420
+ return a.pos.y - b.pos.y;
421
+ });
422
+ base_posArray.push(_objectSpread(_objectSpread({}, l2), {}, {
423
+ iFlag: false
424
+ }));
425
+ base_item.others.forEach(function (itemRect) {
426
+ var r2 = l2 > l3 ? itemRect.rect[2] : itemRect.rect[3];
427
+ var r3 = l2 > l3 ? itemRect.rect[3] : itemRect.rect[2];
408
428
  if (isSnapped(itemRect)) {
409
- wall_posArray.push(r2);
410
- wall_posArray.push(r3);
429
+ base_posArray.push(_objectSpread(_objectSpread({}, r2), {}, {
430
+ iFlag: itemRect.itemInfo.id
431
+ }));
432
+ base_posArray.push(_objectSpread(_objectSpread({}, r3), {}, {
433
+ iFlag: itemRect.itemInfo.id
434
+ }));
411
435
  }
412
436
  });
413
- wall_posArray.push(l2);
414
- wall_posArray.push(l3);
415
- var wall_posAndwidth = [];
416
- if (Math.abs(angle) === 0 || Math.abs(angle) === 180 || _export.GeometryUtils.almostEqual(y1, y2)) {
417
- wall_posArray.sort(function (a, b) {
437
+ base_posArray.push(_objectSpread(_objectSpread({}, l3), {}, {
438
+ iFlag: false
439
+ }));
440
+ var base_posAndwidth = [];
441
+ if (Math.sin(angle) === 0 || _export.GeometryUtils.almostEqual(y1, y2)) {
442
+ base_posArray.sort(function (a, b) {
418
443
  return a.x - b.x;
419
444
  });
420
- if (wall_posArray.length > 2) {
421
- for (var _index2 = 0; _index2 < wall_posArray.length - 1; _index2++) {
422
- var _element2 = wall_posArray[_index2];
423
- wall_posAndwidth.push({
445
+ if (base_posArray.length > 2) {
446
+ for (var _index2 = 0; _index2 < base_posArray.length - 1; _index2++) {
447
+ var _element2 = base_posArray[_index2];
448
+ base_posAndwidth.push({
424
449
  pos: _element2,
425
- length: wall_posArray[_index2 + 1].x - _element2.x
450
+ length: base_posArray[_index2 + 1].x - _element2.x,
451
+ iFlag: base_posArray[_index2 + 1].iFlag === _element2.iFlag ? true : false
426
452
  });
427
453
  }
428
454
  }
429
455
  } else {
430
- wall_posArray.sort(function (a, b) {
456
+ base_posArray.sort(function (a, b) {
431
457
  return a.y - b.y;
432
458
  });
433
- if (wall_posArray.length > 2) {
434
- for (var _index3 = 0; _index3 < wall_posArray.length - 1; _index3++) {
435
- var _element3 = wall_posArray[_index3];
436
- wall_posAndwidth.push({
459
+ if (base_posArray.length > 2) {
460
+ for (var _index3 = 0; _index3 < base_posArray.length - 1; _index3++) {
461
+ var _element3 = base_posArray[_index3];
462
+ base_posAndwidth.push({
437
463
  pos: _element3,
438
- length: Math.abs((wall_posArray[_index3 + 1].y - _element3.y) / Math.sin(angle / 180 * Math.PI))
464
+ length: Math.abs((base_posArray[_index3 + 1].y - _element3.y) / Math.sin(angle / 180 * Math.PI)),
465
+ iFlag: base_posArray[_index3 + 1].iFlag === _element3.iFlag ? true : false
439
466
  });
440
467
  }
441
468
  }
442
469
  }
443
- if (!showWallCabinetMeasure || wall_posArray.length <= 2) {
444
- wallSpace -= 20;
470
+ if (!showBaseCabinetMeasure || base_posArray.length <= 2) {
471
+ baseSpace -= STEP;
445
472
  }
446
- wallRuler = wall_posAndwidth.map(function (pAw) {
473
+ baseRuler = base_posAndwidth.map(function (pAw) {
447
474
  if (pAw.length > 1) {
448
- if (Math.abs(angle) === 0 || Math.abs(angle) === 180 || _export.GeometryUtils.almostEqual(y1, y2)) {
475
+ if (Math.sin(angle) === 0 || _export.GeometryUtils.almostEqual(y1, y2)) {
449
476
  if (x1 - x2 > 0) {
450
477
  return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
451
478
  x1: pAw.pos.x + pAw.length,
452
479
  y1: pAw.pos.y,
453
480
  x2: pAw.pos.x + pAw.length,
454
- y2: pAw.pos.y - thickness / 2 - wallSpace,
455
- style: STYLE
481
+ y2: pAw.pos.y - thickness / 2 - baseSpace,
482
+ style: STYLE_DASH
456
483
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
457
484
  key: 4,
458
485
  layer: layer,
459
486
  unit: scene.unit,
460
487
  rulerUnit: scene.rulerUnit,
461
488
  length: pAw.length,
462
- transform: "translate(".concat(pAw.pos.x, ", ").concat(pAw.pos.y - thickness / 2 - wallSpace, " ) rotate(").concat(angle + 180, ", 0, 0)")
489
+ transform: "translate(".concat(pAw.pos.x, ", ").concat(pAw.pos.y - thickness / 2 - baseSpace, " ) rotate(").concat(angle + 180, ", 0, 0)"),
490
+ style: selectStyle(pAw, STYLE_BASE_ITEM)
463
491
  }), /*#__PURE__*/_react["default"].createElement("line", {
464
492
  x1: pAw.pos.x,
465
493
  y1: pAw.pos.y,
466
494
  x2: pAw.pos.x,
467
- y2: pAw.pos.y - thickness / 2 - wallSpace,
468
- style: STYLE
495
+ y2: pAw.pos.y - thickness / 2 - baseSpace,
496
+ style: STYLE_DASH
469
497
  }));
470
498
  } else {
471
499
  return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
472
500
  x1: pAw.pos.x + pAw.length,
473
501
  y1: pAw.pos.y,
474
502
  x2: pAw.pos.x + pAw.length,
475
- y2: pAw.pos.y + thickness / 2 + wallSpace,
476
- style: STYLE
503
+ y2: pAw.pos.y + thickness / 2 + baseSpace,
504
+ style: STYLE_DASH
477
505
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
478
506
  key: 4,
479
507
  layer: layer,
480
508
  unit: scene.unit,
481
509
  rulerUnit: scene.rulerUnit,
482
510
  length: pAw.length,
483
- transform: "translate(".concat(pAw.pos.x, ", ").concat(pAw.pos.y + thickness / 2 + wallSpace, " ) rotate(").concat(angle, ", 0, 0)")
511
+ transform: "translate(".concat(pAw.pos.x, ", ").concat(pAw.pos.y + thickness / 2 + baseSpace, " ) rotate(").concat(angle, ", 0, 0)"),
512
+ style: selectStyle(pAw, STYLE_BASE_ITEM)
484
513
  }), /*#__PURE__*/_react["default"].createElement("line", {
485
514
  x1: pAw.pos.x,
486
515
  y1: pAw.pos.y,
487
516
  x2: pAw.pos.x,
488
- y2: pAw.pos.y + thickness / 2 + wallSpace,
489
- style: STYLE
517
+ y2: pAw.pos.y + thickness / 2 + baseSpace,
518
+ style: STYLE_DASH
490
519
  }));
491
520
  }
492
521
  } else {
@@ -495,43 +524,45 @@ function Line(_ref) {
495
524
  return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
496
525
  x1: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI),
497
526
  y1: pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI),
498
- x2: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
499
- y2: pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
500
- style: STYLE
527
+ x2: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
528
+ y2: pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
529
+ style: STYLE_DASH
501
530
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
502
531
  key: 5,
503
532
  layer: layer,
504
533
  unit: scene.unit,
505
534
  rulerUnit: scene.rulerUnit,
506
535
  length: pAw.length,
507
- transform: "translate(".concat(pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0)")
536
+ transform: "translate(".concat(pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0)"),
537
+ style: selectStyle(pAw, STYLE_BASE_ITEM)
508
538
  }), /*#__PURE__*/_react["default"].createElement("line", {
509
539
  x1: pAw.pos.x,
510
540
  y1: pAw.pos.y,
511
- x2: pAw.pos.x - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
512
- y2: pAw.pos.y + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
513
- style: STYLE
541
+ x2: pAw.pos.x - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
542
+ y2: pAw.pos.y + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
543
+ style: STYLE_DASH
514
544
  }));
515
545
  } else {
516
546
  return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
517
547
  x1: pAw.pos.x,
518
548
  y1: pAw.pos.y,
519
- x2: pAw.pos.x - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
520
- y2: pAw.pos.y + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
521
- style: STYLE
549
+ x2: pAw.pos.x - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
550
+ y2: pAw.pos.y + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
551
+ style: STYLE_DASH
522
552
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
523
553
  key: 5,
524
554
  layer: layer,
525
555
  unit: scene.unit,
526
556
  rulerUnit: scene.rulerUnit,
527
557
  length: pAw.length,
528
- transform: "translate(".concat(pAw.pos.x - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0) scale(-1, -1)")
558
+ transform: "translate(".concat(pAw.pos.x - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0) scale(-1, -1)"),
559
+ style: selectStyle(pAw, STYLE_BASE_ITEM)
529
560
  }), /*#__PURE__*/_react["default"].createElement("line", {
530
561
  x1: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI),
531
562
  y1: pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI),
532
- x2: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
533
- y2: pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
534
- style: STYLE
563
+ x2: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
564
+ y2: pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
565
+ style: STYLE_DASH
535
566
  }));
536
567
  }
537
568
  } else {
@@ -539,95 +570,141 @@ function Line(_ref) {
539
570
  return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
540
571
  x1: pAw.pos.x,
541
572
  y1: pAw.pos.y,
542
- x2: pAw.pos.x - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
543
- y2: pAw.pos.y + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
544
- style: STYLE
573
+ x2: pAw.pos.x - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
574
+ y2: pAw.pos.y + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
575
+ style: STYLE_DASH
545
576
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
546
577
  key: 5,
547
578
  layer: layer,
548
579
  unit: scene.unit,
549
580
  rulerUnit: scene.rulerUnit,
550
581
  length: pAw.length,
551
- transform: "translate(".concat(pAw.pos.x - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0)")
582
+ transform: "translate(".concat(pAw.pos.x - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0)"),
583
+ style: selectStyle(pAw, STYLE_BASE_ITEM)
552
584
  }), /*#__PURE__*/_react["default"].createElement("line", {
553
585
  x1: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI),
554
586
  y1: pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI),
555
- x2: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
556
- y2: pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
557
- style: STYLE
587
+ x2: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
588
+ y2: pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
589
+ style: STYLE_DASH
558
590
  }));
559
591
  } else {
560
592
  return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
561
593
  x1: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI),
562
594
  y1: pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI),
563
- x2: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
564
- y2: pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
565
- style: STYLE
595
+ x2: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
596
+ y2: pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
597
+ style: STYLE_DASH
566
598
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
567
599
  key: 5,
568
600
  layer: layer,
569
601
  unit: scene.unit,
570
602
  rulerUnit: scene.rulerUnit,
571
603
  length: pAw.length,
572
- transform: "translate(".concat(pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0) scale(-1, -1)")
604
+ transform: "translate(".concat(pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI), ", ").concat(pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI) + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI), " ) rotate(").concat(angle, ", 0, 0) scale(-1, -1)"),
605
+ style: selectStyle(pAw, STYLE_BASE_ITEM)
573
606
  }), /*#__PURE__*/_react["default"].createElement("line", {
574
607
  x1: pAw.pos.x,
575
608
  y1: pAw.pos.y,
576
- x2: pAw.pos.x - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
577
- y2: pAw.pos.y + (thickness / 2 + wallSpace) * Math.cos(angle / 180 * Math.PI),
578
- style: STYLE
609
+ x2: pAw.pos.x - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
610
+ y2: pAw.pos.y + (thickness / 2 + baseSpace) * Math.cos(angle / 180 * Math.PI),
611
+ style: STYLE_DASH
579
612
  }));
580
613
  }
581
614
  }
582
615
  }
583
616
  }
584
617
  });
585
- var lineSpace = wallSpace + 20;
618
+ var doorSpace = baseSpace + STEP;
619
+ var renderedHoles = line.holes.map(function (holeID) {
620
+ var hole = layer.holes.get(holeID);
621
+ if (hole === undefined) {
622
+ return '';
623
+ }
624
+ var startAt = length * hole.offset;
625
+ var renderedHole = catalog.getElement(hole.type).render2D(hole, layer, scene);
626
+ return /*#__PURE__*/_react["default"].createElement("g", {
627
+ key: holeID,
628
+ transform: "translate(".concat(startAt, ", 3.5)"),
629
+ "data-element-root": true,
630
+ "data-prototype": hole.prototype,
631
+ "data-id": hole.id,
632
+ "data-selected": hole.selected,
633
+ "data-layer": layer.id
634
+ }, renderedHole);
635
+ });
636
+ var renderedLine = catalog.getElement(line.type).render2D(line, layer, scene, state);
637
+ var holeTemp = [];
638
+ var renderedRuler = [];
639
+ var renderedAllRuler = [];
640
+ if (!line.holes.size || !showWindowDoorMeasure) {
641
+ doorSpace -= STEP;
642
+ }
643
+ var allRuler = [0],
644
+ holeData = [];
645
+ var lineHoles = line.holes.sortBy(function (holeID) {
646
+ var hole = layer.holes.get(holeID);
647
+ return !hole ? 0 : hole.offset;
648
+ });
649
+ lineHoles.forEach(function (holeID) {
650
+ var hole = layer.holes.get(holeID);
651
+ if (hole !== undefined) {
652
+ var startAt = length * hole.offset;
653
+ var holeWidth = hole.properties.toJS().width.length;
654
+ allRuler.push(startAt - holeWidth / 2);
655
+ allRuler.push(startAt + holeWidth / 2);
656
+ holeData["".concat(startAt - holeWidth / 2, "_").concat(startAt + holeWidth / 2)] = holeID;
657
+ }
658
+ });
659
+ allRuler.push(length);
660
+ var lineSpace = doorSpace + STEP;
586
661
  //the space from the dimensioning line to the top
587
- var lineSpacedimension1 = 5;
662
+ var lineSpacedimension1 = 4;
588
663
  //the space from the dimensioning line to the bottom
589
- var lineSpacedimension2 = 15;
664
+ var lineSpacedimension2 = 14;
590
665
  if (compareVertices(vertex0, vertex1) >= 0 && vertex0.x !== vertex1.x) {
591
666
  renderedRuler.push(/*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
592
667
  x1: length,
593
- y1: half_thickness + lineSpace + lineSpacedimension1,
668
+ y1: lineSpace + lineSpacedimension1,
594
669
  x2: length,
595
- y2: half_thickness + lineSpacedimension2,
596
- style: STYLE
670
+ y2: lineSpace + lineSpacedimension2,
671
+ style: STYLE_ROOM_SHAPE
597
672
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
598
673
  key: 0,
599
674
  layer: layer,
600
675
  unit: scene.unit,
601
676
  rulerUnit: scene.rulerUnit,
602
677
  length: length,
603
- transform: "translate(".concat(length, ", ").concat(half_thickness + lineSpace, ") scale(-1, -1)")
678
+ transform: "translate(".concat(length, ", ").concat(half_thickness + lineSpace, ") scale(-1, -1)"),
679
+ style: STYLE_ROOM_SHAPE
604
680
  }), /*#__PURE__*/_react["default"].createElement("line", {
605
681
  x1: 0,
606
- y1: half_thickness + lineSpace + lineSpacedimension1,
682
+ y1: lineSpace + lineSpacedimension1,
607
683
  x2: 0,
608
- y2: half_thickness + lineSpacedimension2,
609
- style: STYLE
684
+ y2: lineSpace + lineSpacedimension2,
685
+ style: STYLE_ROOM_SHAPE
610
686
  })));
611
687
  } else {
612
688
  renderedRuler.push(/*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
613
689
  x1: 0,
614
- y1: half_thickness + lineSpace + lineSpacedimension1,
690
+ y1: lineSpace + lineSpacedimension1,
615
691
  x2: 0,
616
- y2: half_thickness + lineSpacedimension2,
617
- style: STYLE
692
+ y2: lineSpace + lineSpacedimension2,
693
+ style: STYLE_ROOM_SHAPE
618
694
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
619
695
  key: 0,
620
696
  layer: layer,
621
697
  unit: scene.unit,
622
698
  rulerUnit: scene.rulerUnit,
623
699
  length: length,
624
- transform: "translate(0, ".concat(half_thickness + lineSpace, ")")
700
+ transform: "translate(0, ".concat(half_thickness + lineSpace, ")"),
701
+ style: STYLE_ROOM_SHAPE
625
702
  }), /*#__PURE__*/_react["default"].createElement("line", {
626
703
  x1: length,
627
- y1: half_thickness + lineSpace + lineSpacedimension1,
704
+ y1: lineSpace + lineSpacedimension1,
628
705
  x2: length,
629
- y2: half_thickness + lineSpacedimension2,
630
- style: STYLE
706
+ y2: lineSpace + lineSpacedimension2,
707
+ style: STYLE_ROOM_SHAPE
631
708
  })));
632
709
  }
633
710
  allRuler.sort(function (a, b) {
@@ -663,20 +740,21 @@ function Line(_ref) {
663
740
  y1: half_thickness,
664
741
  x2: allRuler[index],
665
742
  y2: half_thickness + doorSpace,
666
- style: STYLE
743
+ style: STYLE_DASH
667
744
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
668
745
  key: "allRuler_".concat(index),
669
746
  layer: layer,
670
747
  unit: scene.unit,
671
748
  rulerUnit: scene.rulerUnit,
672
749
  length: element,
673
- transform: "translate(".concat(allRuler[index] + element, ", ").concat(half_thickness + doorSpace, " ) scale(-1, -1)")
750
+ transform: "translate(".concat(allRuler[index] + element, ", ").concat(half_thickness + doorSpace, " ) scale(-1, -1)"),
751
+ style: STYLE_ROOM_ELEMENT
674
752
  }), /*#__PURE__*/_react["default"].createElement("line", {
675
753
  x1: allRuler[index] + element,
676
754
  y1: half_thickness,
677
755
  x2: allRuler[index] + element,
678
756
  y2: half_thickness + doorSpace,
679
- style: STYLE
757
+ style: STYLE_DASH
680
758
  })));
681
759
  } else {
682
760
  renderedAllRuler.push(/*#__PURE__*/_react["default"].createElement("g", {
@@ -686,20 +764,21 @@ function Line(_ref) {
686
764
  y1: half_thickness,
687
765
  x2: allRuler[index],
688
766
  y2: half_thickness + doorSpace,
689
- style: STYLE
767
+ style: STYLE_DASH
690
768
  }), /*#__PURE__*/_react["default"].createElement(_ruler["default"], {
691
769
  key: "allRuler_".concat(index),
692
770
  layer: layer,
693
771
  unit: scene.unit,
694
772
  rulerUnit: scene.rulerUnit,
695
773
  length: element,
696
- transform: "translate(".concat(allRuler[index], ", ").concat(half_thickness + doorSpace, " )")
774
+ transform: "translate(".concat(allRuler[index], ", ").concat(half_thickness + doorSpace, " )"),
775
+ style: STYLE_ROOM_ELEMENT
697
776
  }), /*#__PURE__*/_react["default"].createElement("line", {
698
777
  x1: allRuler[index] + element,
699
778
  y1: half_thickness,
700
779
  x2: allRuler[index] + element,
701
780
  y2: half_thickness + doorSpace,
702
- style: STYLE
781
+ style: STYLE_DASH
703
782
  })));
704
783
  }
705
784
  }
@@ -714,22 +793,32 @@ function Line(_ref) {
714
793
  "data-layer": layer.id,
715
794
  "data-length": length
716
795
  }, showWallLengthMeasure ? renderedRuler : null), line.selected && angleVertices.map(function (vertex, index) {
796
+ var _relateLineLengthArra2;
717
797
  var lineGroup = vertex[0].lines;
718
798
  var angles = [];
719
799
  var thickness = [];
720
800
  var vectories = [];
801
+ var relateLineLengthArray = [];
802
+
721
803
  // get the vector of lines
722
804
  lineGroup.forEach(function (line) {
805
+ var _relateLineLengthArra;
723
806
  line = layer.lines.get(line);
724
807
  var vertex0 = layer.vertices.get(line.vertices.get(0));
725
808
  var vertex1 = layer.vertices.get(line.vertices.get(1));
726
809
  var vec = vertex0 === vertex[0] ? new Three.Vector2(vertex1.x - vertex0.x, vertex1.y - vertex0.y) : new Three.Vector2(vertex0.x - vertex1.x, vertex0.y - vertex1.y);
810
+ (_relateLineLengthArra = relateLineLengthArray) === null || _relateLineLengthArra === void 0 || _relateLineLengthArra.push(_export.GeometryUtils.verticesDistance(vertex0, vertex1));
727
811
  var angle = vec.angle();
728
812
  var thick = 15;
729
813
  angles.push(angle);
730
814
  thickness.push(thick);
731
815
  vectories.push(vec.normalize());
732
816
  });
817
+ relateLineLengthArray = (_relateLineLengthArra2 = relateLineLengthArray) === null || _relateLineLengthArra2 === void 0 ? void 0 : _relateLineLengthArra2.sort(function (a, b) {
818
+ return a - b;
819
+ });
820
+ var minLineLength = relateLineLengthArray[0] < _constants.MAX_ANGLE_SCALE * 2 ? relateLineLengthArray[0] / 2 // scale down to half of the smallest adjacent surface
821
+ : _constants.MAX_ANGLE_SCALE;
733
822
 
734
823
  // calculate the angle between two lines
735
824
  var center = new Three.Vector2(vertex[0].x, vertex[0].y);
@@ -748,16 +837,15 @@ function Line(_ref) {
748
837
  var rotDir = vec1.cross(vec2) > 0; // true: rotate CCW, false: rotate CW
749
838
 
750
839
  // Angle Text Position
751
-
752
840
  var angleTextO = center.clone();
753
- var textTranslation = vec1.clone().add(vec2).normalize().multiplyScalar(25);
841
+ var textTranslation = vec1.clone().add(vec2).normalize().multiplyScalar(minLineLength * 2 / 3);
754
842
  angleTextO.add(textTranslation);
755
- angleTextO.y -= 5; // half the height of text `angle`
756
-
843
+ angleTextO.y -= minLineLength / 10; // half the height of text `angle`
844
+ angleTextO.x += minLineLength / 10;
757
845
  var tx = 0;
758
846
  var ty = 0;
759
- vec = vec.multiplyScalar(35);
760
- vec1 = vec1.multiplyScalar(35);
847
+ vec = vec.multiplyScalar(minLineLength);
848
+ vec1 = vec1.multiplyScalar(minLineLength);
761
849
  var cen1 = center.clone(),
762
850
  cen2 = center.clone();
763
851
  center = center.add(vec);
@@ -770,7 +858,7 @@ function Line(_ref) {
770
858
  // Angle SVG Path
771
859
  lines.push(/*#__PURE__*/_react["default"].createElement("path", {
772
860
  style: STYLE_ANGLE,
773
- d: "\n M ".concat(vertex[0].x, ",").concat(vertex[0].y, " L ").concat(pos1.x, ",").concat(pos1.y, " A 30,30 ").concat(angle, " 0 ").concat(t > 0 ? 1 : 0, " ").concat(pos2.x, ",").concat(pos2.y, " z\n ")
861
+ d: "\n M ".concat(vertex[0].x, ",").concat(vertex[0].y, " L ").concat(pos1.x, ",").concat(pos1.y, " A ").concat(minLineLength, " ").concat(minLineLength, " ").concat(angle, " 0 ").concat(t > 0 ? 1 : 0, " ").concat(pos2.x, ",").concat(pos2.y, " z\n ")
774
862
  }));
775
863
  var length = angle;
776
864
  // draw angle and angle text
@@ -784,15 +872,9 @@ function Line(_ref) {
784
872
  "data-id": [vertex[0].id, vertex[1].id, rotDir],
785
873
  "data-length": length
786
874
  }, lines, /*#__PURE__*/_react["default"].createElement("text", {
787
- transform: "translate(".concat(angleTextO.x, ", ").concat(angleTextO.y, ") scale(1.5, -1.5)"),
875
+ transform: "translate(".concat(angleTextO.x, ", ").concat(angleTextO.y, ") scale(").concat(minLineLength / 20, ", ").concat(-minLineLength / 20, ")"),
788
876
  style: STYLE_TEXT
789
- }, angle), /*#__PURE__*/_react["default"].createElement("circle", {
790
- transform: "translate(".concat(angleTextO.x, ", ").concat(angleTextO.y, ") translate(10, 9)"),
791
- fill: "transparent",
792
- stroke: "rgb(77, 77, 77)",
793
- strokeWidth: 1,
794
- r: 2
795
- }));
877
+ }, angle + '° '));
796
878
  }), showWindowDoorMeasure ? renderedAllRuler : null, showBaseCabinetMeasure ? baseRuler : null, showWallCabinetMeasure ? wallRuler : null, /*#__PURE__*/_react["default"].createElement("g", {
797
879
  "data-element-root": true,
798
880
  "data-prototype": line.prototype,
@@ -805,9 +887,7 @@ function Line(_ref) {
805
887
  } : {}
806
888
  }, renderedLine, /*#__PURE__*/_react["default"].createElement("g", {
807
889
  transform: "translate(".concat(x1, ", ").concat(y1, ") rotate(").concat(angle, ", 0, 0)")
808
- }, renderedHoles)), line.selected && /*#__PURE__*/_react["default"].createElement(_Tooltip["default"], {
809
- title: "Elevation View"
810
- }, /*#__PURE__*/_react["default"].createElement("g", {
890
+ }, renderedHoles)), line.selected && /*#__PURE__*/_react["default"].createElement("g", {
811
891
  id: 'elevation-button',
812
892
  key: 1,
813
893
  transform: "translate(".concat(x1 + 35, ", ").concat(y1 - 15, ")"),
@@ -837,7 +917,7 @@ function Line(_ref) {
837
917
  style: {
838
918
  transform: 'rotateX(180deg)'
839
919
  }
840
- }))), line.selected && /*#__PURE__*/_react["default"].createElement("g", {
920
+ })), line.selected && /*#__PURE__*/_react["default"].createElement("g", {
841
921
  id: 'remove-button',
842
922
  key: 2,
843
923
  transform: "translate(".concat(x1 + 10, ", ").concat(y1, ")"),