kitchen-simulator 1.1.1-test.47 → 1.1.1-test.49

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 (359) hide show
  1. package/lib/KitchenConfiguratorApp.js +3 -0
  2. package/package.json +15 -16
  3. package/es/@history.js +0 -2
  4. package/es/AppContext.js +0 -3
  5. package/es/KitchenConfigurator.js +0 -645
  6. package/es/KitchenConfiguratorApp.js +0 -478
  7. package/es/actions/area-actions.js +0 -14
  8. package/es/actions/export.js +0 -23
  9. package/es/actions/groups-actions.js +0 -89
  10. package/es/actions/holes-actions.js +0 -119
  11. package/es/actions/items-actions.js +0 -313
  12. package/es/actions/lines-actions.js +0 -81
  13. package/es/actions/project-actions.js +0 -281
  14. package/es/actions/scene-actions.js +0 -33
  15. package/es/actions/vertices-actions.js +0 -27
  16. package/es/actions/viewer2d-actions.js +0 -58
  17. package/es/actions/viewer3d-actions.js +0 -23
  18. package/es/catalog/areas/area/planner-element.js +0 -40
  19. package/es/catalog/areas/area/textures/ceramic-tile.jpg +0 -0
  20. package/es/catalog/areas/area/textures/grass.jpg +0 -0
  21. package/es/catalog/areas/area/textures/parquet.jpg +0 -0
  22. package/es/catalog/areas/area/textures/strand-porcelain.jpg +0 -0
  23. package/es/catalog/areas/area/textures/tile1.jpg +0 -0
  24. package/es/catalog/catalog.js +0 -277
  25. package/es/catalog/envMap/nx.hdr +0 -0
  26. package/es/catalog/envMap/ny.hdr +0 -0
  27. package/es/catalog/envMap/nz.hdr +0 -0
  28. package/es/catalog/envMap/px.hdr +0 -0
  29. package/es/catalog/envMap/py.hdr +0 -0
  30. package/es/catalog/envMap/pz.hdr +0 -0
  31. package/es/catalog/factories/area-factory-3d.js +0 -181
  32. package/es/catalog/factories/area-factory.js +0 -81
  33. package/es/catalog/factories/export.js +0 -7
  34. package/es/catalog/factories/wall-factory-3d.js +0 -202
  35. package/es/catalog/factories/wall-factory.js +0 -268
  36. package/es/catalog/holes/door-closet/planner-element.js +0 -222
  37. package/es/catalog/holes/door-double/door_double.png +0 -0
  38. package/es/catalog/holes/door-double/planner-element.js +0 -315
  39. package/es/catalog/holes/door-exterior/planner-element.js +0 -215
  40. package/es/catalog/holes/door-interior/planner-element.js +0 -227
  41. package/es/catalog/holes/door-panic/panicDoor.png +0 -0
  42. package/es/catalog/holes/door-panic/planner-element.js +0 -503
  43. package/es/catalog/holes/door-panic-double/panicDoorDouble.png +0 -0
  44. package/es/catalog/holes/door-panic-double/planner-element.js +0 -463
  45. package/es/catalog/holes/door-sliding/planner-element.js +0 -225
  46. package/es/catalog/holes/doorway-framed/planner-element.js +0 -145
  47. package/es/catalog/holes/doorway-frameless/planner-element.js +0 -104
  48. package/es/catalog/holes/export.js +0 -13
  49. package/es/catalog/holes/gate/gate.jpg +0 -0
  50. package/es/catalog/holes/window-clear/planner-element.js +0 -166
  51. package/es/catalog/holes/window-clear/texture.png +0 -0
  52. package/es/catalog/holes/window-cross/planner-element.js +0 -165
  53. package/es/catalog/holes/window-cross/texture.png +0 -0
  54. package/es/catalog/holes/window-double-hung/planner-element.js +0 -303
  55. package/es/catalog/holes/window-double-hung/texture.png +0 -0
  56. package/es/catalog/holes/window-vertical/planner-element.js +0 -276
  57. package/es/catalog/holes/window-vertical/texture.png +0 -0
  58. package/es/catalog/lines/wall/planner-element.js +0 -70
  59. package/es/catalog/lines/wall/textures/bricks-normal.jpg +0 -0
  60. package/es/catalog/lines/wall/textures/bricks-normal2.jpg +0 -0
  61. package/es/catalog/lines/wall/textures/bricks.jpg +0 -0
  62. package/es/catalog/lines/wall/textures/bricks2.jpg +0 -0
  63. package/es/catalog/lines/wall/textures/bricks3.jpg +0 -0
  64. package/es/catalog/lines/wall/textures/morden-normal.jpg +0 -0
  65. package/es/catalog/lines/wall/textures/morden.jpg +0 -0
  66. package/es/catalog/lines/wall/textures/painted-normal.jpg +0 -0
  67. package/es/catalog/lines/wall/textures/painted.jpg +0 -0
  68. package/es/catalog/lines/wall/textures/plaster-normal.jpg +0 -0
  69. package/es/catalog/lines/wall/textures/plaster.jpg +0 -0
  70. package/es/catalog/lines/wall/wall.png +0 -0
  71. package/es/catalog/molding/molding-dcm/planner-element.js +0 -28
  72. package/es/catalog/molding/molding-dcm/texture.png +0 -0
  73. package/es/catalog/molding/molding-fbm/planner-element.js +0 -28
  74. package/es/catalog/molding/molding-fbm/texture.png +0 -0
  75. package/es/catalog/molding/molding-lrm/planner-element.js +0 -28
  76. package/es/catalog/molding/molding-lrm/texture.png +0 -0
  77. package/es/catalog/properties/export.js +0 -21
  78. package/es/catalog/properties/property-checkbox.js +0 -116
  79. package/es/catalog/properties/property-color.js +0 -39
  80. package/es/catalog/properties/property-enum.js +0 -97
  81. package/es/catalog/properties/property-hidden.js +0 -19
  82. package/es/catalog/properties/property-lenght-measure.js +0 -101
  83. package/es/catalog/properties/property-length-measure.js +0 -134
  84. package/es/catalog/properties/property-length-measure_hole.js +0 -101
  85. package/es/catalog/properties/property-number.js +0 -48
  86. package/es/catalog/properties/property-read-only.js +0 -26
  87. package/es/catalog/properties/property-string.js +0 -48
  88. package/es/catalog/properties/property-toggle.js +0 -39
  89. package/es/catalog/properties/shared-property-style.js +0 -14
  90. package/es/catalog/utils/FuseUtils.js +0 -82
  91. package/es/catalog/utils/exporter.js +0 -148
  92. package/es/catalog/utils/geom-utils.js +0 -189
  93. package/es/catalog/utils/item-loader.js +0 -1521
  94. package/es/catalog/utils/load-obj.js +0 -91
  95. package/es/catalog/utils/mtl-loader.js +0 -358
  96. package/es/catalog/utils/obj-loader.js +0 -477
  97. package/es/class/FuseUtils.js +0 -82
  98. package/es/class/area.js +0 -145
  99. package/es/class/export.js +0 -24
  100. package/es/class/group.js +0 -440
  101. package/es/class/guide.js +0 -62
  102. package/es/class/hole.js +0 -929
  103. package/es/class/item.js +0 -1883
  104. package/es/class/layer.js +0 -667
  105. package/es/class/line.js +0 -1180
  106. package/es/class/project.js +0 -793
  107. package/es/class/vertex.js +0 -202
  108. package/es/components/content.js +0 -107
  109. package/es/components/disclaimer/disclaimer.js +0 -97
  110. package/es/components/export.js +0 -9
  111. package/es/components/style/button.js +0 -113
  112. package/es/components/style/cancel-button.js +0 -22
  113. package/es/components/style/content-container.js +0 -33
  114. package/es/components/style/content-title.js +0 -29
  115. package/es/components/style/delete-button.js +0 -25
  116. package/es/components/style/export.js +0 -31
  117. package/es/components/style/form-block.js +0 -24
  118. package/es/components/style/form-color-input.js +0 -27
  119. package/es/components/style/form-label.js +0 -26
  120. package/es/components/style/form-number-input.js +0 -213
  121. package/es/components/style/form-number-input_2.js +0 -206
  122. package/es/components/style/form-select.js +0 -68
  123. package/es/components/style/form-slider.js +0 -61
  124. package/es/components/style/form-submit-button.js +0 -26
  125. package/es/components/style/form-text-input.js +0 -95
  126. package/es/components/viewer2d/area.js +0 -81
  127. package/es/components/viewer2d/export.js +0 -31
  128. package/es/components/viewer2d/grids/grid-horizontal-streak.js +0 -37
  129. package/es/components/viewer2d/grids/grid-streak.js +0 -37
  130. package/es/components/viewer2d/grids/grid-vertical-streak.js +0 -37
  131. package/es/components/viewer2d/grids/grids.js +0 -35
  132. package/es/components/viewer2d/group.js +0 -53
  133. package/es/components/viewer2d/item.js +0 -513
  134. package/es/components/viewer2d/layer.js +0 -164
  135. package/es/components/viewer2d/line.js +0 -882
  136. package/es/components/viewer2d/ruler.js +0 -100
  137. package/es/components/viewer2d/rulerDist.js +0 -146
  138. package/es/components/viewer2d/rulerX.js +0 -151
  139. package/es/components/viewer2d/rulerY.js +0 -153
  140. package/es/components/viewer2d/scene.js +0 -140
  141. package/es/components/viewer2d/snap.js +0 -74
  142. package/es/components/viewer2d/state.js +0 -78
  143. package/es/components/viewer2d/utils.js +0 -198
  144. package/es/components/viewer2d/vertex.js +0 -65
  145. package/es/components/viewer2d/viewer2d.js +0 -1398
  146. package/es/components/viewer3d/camera-controls-module/camera-controls.module.js +0 -2592
  147. package/es/components/viewer3d/dcm.js +0 -401
  148. package/es/components/viewer3d/fbm.js +0 -414
  149. package/es/components/viewer3d/front3D.js +0 -66
  150. package/es/components/viewer3d/grid-creator.js +0 -25
  151. package/es/components/viewer3d/grids/grid-horizontal-streak.js +0 -36
  152. package/es/components/viewer3d/grids/grid-streak.js +0 -27
  153. package/es/components/viewer3d/grids/grid-vertical-streak.js +0 -36
  154. package/es/components/viewer3d/libs/first-person-controls.js +0 -67
  155. package/es/components/viewer3d/libs/helvetiker_regular.typeface.js +0 -1281
  156. package/es/components/viewer3d/libs/mtl-loader.js +0 -357
  157. package/es/components/viewer3d/libs/obj-loader.js +0 -462
  158. package/es/components/viewer3d/libs/orbit-controls.js +0 -699
  159. package/es/components/viewer3d/libs/pointer-lock-controls.js +0 -46
  160. package/es/components/viewer3d/lrm.js +0 -305
  161. package/es/components/viewer3d/model.js +0 -708
  162. package/es/components/viewer3d/pointer-lock-navigation.js +0 -115
  163. package/es/components/viewer3d/ruler-utils/itemRect.js +0 -61
  164. package/es/components/viewer3d/ruler-utils/layer3D.js +0 -495
  165. package/es/components/viewer3d/ruler-utils/ruler3D.js +0 -227
  166. package/es/components/viewer3d/ruler-utils/scene3D.js +0 -60
  167. package/es/components/viewer3d/ruler-utils/state3D.js +0 -18
  168. package/es/components/viewer3d/scene-creator.js +0 -3608
  169. package/es/components/viewer3d/three-memory-cleaner.js +0 -51
  170. package/es/components/viewer3d/viewer3d-first-person.js +0 -315
  171. package/es/components/viewer3d/viewer3d.js +0 -2527
  172. package/es/constants.js +0 -636
  173. package/es/index.js +0 -16
  174. package/es/models.js +0 -510
  175. package/es/plugins/SVGLoader.js +0 -1412
  176. package/es/plugins/autosave.js +0 -33
  177. package/es/plugins/console-debugger.js +0 -37
  178. package/es/plugins/export.js +0 -9
  179. package/es/plugins/keyboard.js +0 -101
  180. package/es/reducers/areas-reducer.js +0 -12
  181. package/es/reducers/export.js +0 -25
  182. package/es/reducers/groups-reducer.js +0 -38
  183. package/es/reducers/holes-reducer.js +0 -62
  184. package/es/reducers/items-reducer.js +0 -140
  185. package/es/reducers/lines-reducer.js +0 -45
  186. package/es/reducers/project-reducer.js +0 -129
  187. package/es/reducers/reducer.js +0 -19
  188. package/es/reducers/scene-reducer.js +0 -28
  189. package/es/reducers/user-reducer.js +0 -40
  190. package/es/reducers/vertices-reducer.js +0 -19
  191. package/es/reducers/viewer2d-reducer.js +0 -75
  192. package/es/reducers/viewer3d-reducer.js +0 -56
  193. package/es/shared-style.js +0 -66
  194. package/es/styles/export.js +0 -5
  195. package/es/styles/tabs.css +0 -40
  196. package/es/translator/en.js +0 -104
  197. package/es/translator/it.js +0 -79
  198. package/es/translator/ru.js +0 -79
  199. package/es/translator/translator.js +0 -84
  200. package/es/utils/browser.js +0 -33
  201. package/es/utils/email-validator.js +0 -4
  202. package/es/utils/export.js +0 -25
  203. package/es/utils/geometry.js +0 -2420
  204. package/es/utils/get-edges-of-subgraphs.js +0 -27
  205. package/es/utils/graph-cycles.js +0 -237
  206. package/es/utils/graph-inner-cycles.js +0 -46
  207. package/es/utils/graph.js +0 -150
  208. package/es/utils/helper.js +0 -268
  209. package/es/utils/history.js +0 -29
  210. package/es/utils/id-broker.js +0 -19
  211. package/es/utils/logger.js +0 -8
  212. package/es/utils/math.js +0 -50
  213. package/es/utils/molding.js +0 -871
  214. package/es/utils/name-generator.js +0 -18
  215. package/es/utils/objects-utils.js +0 -50
  216. package/es/utils/phone-validator.js +0 -4
  217. package/es/utils/process-black-list.js +0 -18
  218. package/es/utils/react-if.js +0 -18
  219. package/es/utils/snap-scene.js +0 -99
  220. package/es/utils/snap.js +0 -237
  221. package/es/utils/summarizeCart.js +0 -24
  222. package/es/utils/threeCSG.es6.js +0 -498
  223. package/es/version.js +0 -2
  224. package/lib/catalog/properties/property-string.js +0 -55
  225. package/lib/catalog/properties/property-toggle.js +0 -46
  226. package/lib/catalog/properties/shared-property-style.js +0 -20
  227. package/lib/catalog/utils/FuseUtils.js +0 -88
  228. package/lib/catalog/utils/exporter.js +0 -155
  229. package/lib/catalog/utils/geom-utils.js +0 -205
  230. package/lib/catalog/utils/item-loader.js +0 -1533
  231. package/lib/catalog/utils/load-obj.js +0 -99
  232. package/lib/catalog/utils/mtl-loader.js +0 -363
  233. package/lib/catalog/utils/obj-loader.js +0 -482
  234. package/lib/class/FuseUtils.js +0 -88
  235. package/lib/class/area.js +0 -150
  236. package/lib/class/export.js +0 -96
  237. package/lib/class/group.js +0 -445
  238. package/lib/class/guide.js +0 -67
  239. package/lib/class/hole.js +0 -934
  240. package/lib/class/item.js +0 -1889
  241. package/lib/class/layer.js +0 -672
  242. package/lib/class/line.js +0 -1186
  243. package/lib/class/project.js +0 -799
  244. package/lib/class/vertex.js +0 -207
  245. package/lib/components/content.js +0 -116
  246. package/lib/components/disclaimer/disclaimer.js +0 -105
  247. package/lib/components/export.js +0 -33
  248. package/lib/components/style/button.js +0 -120
  249. package/lib/components/style/cancel-button.js +0 -29
  250. package/lib/components/style/content-container.js +0 -40
  251. package/lib/components/style/content-title.js +0 -37
  252. package/lib/components/style/delete-button.js +0 -34
  253. package/lib/components/style/export.js +0 -121
  254. package/lib/components/style/form-block.js +0 -31
  255. package/lib/components/style/form-color-input.js +0 -34
  256. package/lib/components/style/form-label.js +0 -33
  257. package/lib/components/style/form-number-input.js +0 -220
  258. package/lib/components/style/form-number-input_2.js +0 -213
  259. package/lib/components/style/form-select.js +0 -75
  260. package/lib/components/style/form-slider.js +0 -68
  261. package/lib/components/style/form-submit-button.js +0 -35
  262. package/lib/components/style/form-text-input.js +0 -101
  263. package/lib/components/viewer2d/area.js +0 -88
  264. package/lib/components/viewer2d/export.js +0 -121
  265. package/lib/components/viewer2d/grids/grid-horizontal-streak.js +0 -44
  266. package/lib/components/viewer2d/grids/grid-streak.js +0 -44
  267. package/lib/components/viewer2d/grids/grid-vertical-streak.js +0 -44
  268. package/lib/components/viewer2d/grids/grids.js +0 -44
  269. package/lib/components/viewer2d/group.js +0 -62
  270. package/lib/components/viewer2d/item.js +0 -521
  271. package/lib/components/viewer2d/layer.js +0 -171
  272. package/lib/components/viewer2d/line.js +0 -892
  273. package/lib/components/viewer2d/ruler.js +0 -107
  274. package/lib/components/viewer2d/rulerDist.js +0 -153
  275. package/lib/components/viewer2d/rulerX.js +0 -158
  276. package/lib/components/viewer2d/rulerY.js +0 -160
  277. package/lib/components/viewer2d/scene.js +0 -147
  278. package/lib/components/viewer2d/snap.js +0 -83
  279. package/lib/components/viewer2d/state.js +0 -87
  280. package/lib/components/viewer2d/utils.js +0 -210
  281. package/lib/components/viewer2d/vertex.js +0 -74
  282. package/lib/components/viewer2d/viewer2d.js +0 -1405
  283. package/lib/components/viewer3d/camera-controls-module/camera-controls.module.js +0 -2597
  284. package/lib/components/viewer3d/dcm.js +0 -407
  285. package/lib/components/viewer3d/fbm.js +0 -420
  286. package/lib/components/viewer3d/front3D.js +0 -75
  287. package/lib/components/viewer3d/grid-creator.js +0 -34
  288. package/lib/components/viewer3d/grids/grid-horizontal-streak.js +0 -44
  289. package/lib/components/viewer3d/grids/grid-streak.js +0 -35
  290. package/lib/components/viewer3d/grids/grid-vertical-streak.js +0 -44
  291. package/lib/components/viewer3d/libs/first-person-controls.js +0 -74
  292. package/lib/components/viewer3d/libs/helvetiker_regular.typeface.js +0 -1287
  293. package/lib/components/viewer3d/libs/mtl-loader.js +0 -363
  294. package/lib/components/viewer3d/libs/obj-loader.js +0 -468
  295. package/lib/components/viewer3d/libs/orbit-controls.js +0 -705
  296. package/lib/components/viewer3d/libs/pointer-lock-controls.js +0 -52
  297. package/lib/components/viewer3d/lrm.js +0 -311
  298. package/lib/components/viewer3d/model.js +0 -714
  299. package/lib/components/viewer3d/pointer-lock-navigation.js +0 -122
  300. package/lib/components/viewer3d/ruler-utils/itemRect.js +0 -68
  301. package/lib/components/viewer3d/ruler-utils/layer3D.js +0 -502
  302. package/lib/components/viewer3d/ruler-utils/ruler3D.js +0 -234
  303. package/lib/components/viewer3d/ruler-utils/scene3D.js +0 -68
  304. package/lib/components/viewer3d/ruler-utils/state3D.js +0 -25
  305. package/lib/components/viewer3d/scene-creator.js +0 -3642
  306. package/lib/components/viewer3d/three-memory-cleaner.js +0 -60
  307. package/lib/components/viewer3d/viewer3d-first-person.js +0 -320
  308. package/lib/components/viewer3d/viewer3d.js +0 -2532
  309. package/lib/constants.js +0 -645
  310. package/lib/index.js +0 -96
  311. package/lib/models.js +0 -517
  312. package/lib/plugins/SVGLoader.js +0 -1417
  313. package/lib/plugins/autosave.js +0 -39
  314. package/lib/plugins/console-debugger.js +0 -44
  315. package/lib/plugins/export.js +0 -33
  316. package/lib/plugins/keyboard.js +0 -107
  317. package/lib/reducers/areas-reducer.js +0 -18
  318. package/lib/reducers/export.js +0 -97
  319. package/lib/reducers/groups-reducer.js +0 -44
  320. package/lib/reducers/holes-reducer.js +0 -68
  321. package/lib/reducers/items-reducer.js +0 -146
  322. package/lib/reducers/lines-reducer.js +0 -51
  323. package/lib/reducers/project-reducer.js +0 -135
  324. package/lib/reducers/reducer.js +0 -26
  325. package/lib/reducers/scene-reducer.js +0 -34
  326. package/lib/reducers/user-reducer.js +0 -46
  327. package/lib/reducers/vertices-reducer.js +0 -25
  328. package/lib/reducers/viewer2d-reducer.js +0 -82
  329. package/lib/reducers/viewer3d-reducer.js +0 -63
  330. package/lib/shared-style.js +0 -72
  331. package/lib/styles/export.js +0 -13
  332. package/lib/translator/en.js +0 -110
  333. package/lib/translator/it.js +0 -85
  334. package/lib/translator/ru.js +0 -85
  335. package/lib/translator/translator.js +0 -90
  336. package/lib/utils/browser.js +0 -40
  337. package/lib/utils/email-validator.js +0 -10
  338. package/lib/utils/export.js +0 -56
  339. package/lib/utils/geometry.js +0 -2516
  340. package/lib/utils/get-edges-of-subgraphs.js +0 -34
  341. package/lib/utils/graph-cycles.js +0 -240
  342. package/lib/utils/graph-inner-cycles.js +0 -54
  343. package/lib/utils/graph.js +0 -157
  344. package/lib/utils/helper.js +0 -291
  345. package/lib/utils/history.js +0 -36
  346. package/lib/utils/id-broker.js +0 -26
  347. package/lib/utils/logger.js +0 -14
  348. package/lib/utils/math.js +0 -57
  349. package/lib/utils/molding.js +0 -895
  350. package/lib/utils/name-generator.js +0 -23
  351. package/lib/utils/objects-utils.js +0 -60
  352. package/lib/utils/phone-validator.js +0 -10
  353. package/lib/utils/process-black-list.js +0 -24
  354. package/lib/utils/react-if.js +0 -24
  355. package/lib/utils/snap-scene.js +0 -105
  356. package/lib/utils/snap.js +0 -249
  357. package/lib/utils/summarizeCart.js +0 -30
  358. package/lib/utils/threeCSG.es6.js +0 -503
  359. package/lib/version.js +0 -8
@@ -1,513 +0,0 @@
1
- function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
2
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
4
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
5
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
6
- function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
7
- import React from 'react';
8
- import { useState } from 'react';
9
- import PropTypes from 'prop-types';
10
- import If from "../../utils/react-if";
11
- import RulerDist from "./rulerDist";
12
- import convert from 'convert-units';
13
- import { GeometryUtils } from "../../utils/export";
14
- import { MODE_ROTATING_ITEM, SECONDARY_PURPLE_COLOR, STATUS_NEGATIVE_COLOR, BG_COLOR_1, STATUS_WARNING_COLOR, WALL_CABINET_LAYOUTPOS } from "../../constants";
15
- import { returnReplaceableDeepSearchType } from "./utils";
16
- var STYLE_LINE = {
17
- fill: '#0096fd',
18
- stroke: '#0096fd'
19
- };
20
- var STYLE_CIRCLE = {
21
- fill: '#0096fd',
22
- stroke: '#0096fd',
23
- cursor: 'ew-resize'
24
- };
25
- var STYLE_CIRCLE2 = {
26
- fill: 'none',
27
- stroke: '#0096fd',
28
- cursor: 'ew-resize'
29
- };
30
- export default function Item(_ref, _ref2) {
31
- var layer = _ref.layer,
32
- item = _ref.item,
33
- scene = _ref.scene,
34
- catalog = _ref.catalog,
35
- mode = _ref.mode;
36
- var itemsActions = _ref2.itemsActions;
37
- var x = item.x,
38
- y = item.y,
39
- rotation = item.rotation;
40
- var showBaseCabinetMeasure = scene.showBaseCabinetMeasure,
41
- showWallCabinetMeasure = scene.showWallCabinetMeasure;
42
- var vertices = layer.vertices;
43
- var layerID = scene.selectedLayer;
44
- var element = catalog.getElement(item.type);
45
- var allLines;
46
- var curiteminfo;
47
- var allLineRects;
48
- var allItemRect;
49
- var width, height;
50
- var _useState = useState(false),
51
- _useState2 = _slicedToArray(_useState, 2),
52
- clockRotateState = _useState2[0],
53
- setClockRotateState = _useState2[1];
54
- var _useState3 = useState(false),
55
- _useState4 = _slicedToArray(_useState3, 2),
56
- antiClockRotateState = _useState4[0],
57
- setAntiClockRotateState = _useState4[1];
58
- var val = {
59
- pos: {
60
- x: item.x,
61
- y: item.y
62
- },
63
- rotRad: item.rotation / 180 * Math.PI
64
- };
65
- var tempWidth = item.properties.get('width');
66
- var tempHeight = item.properties.get('depth');
67
- if (tempWidth || tempHeight) {
68
- width = convert(tempWidth.get('_length')).from(tempWidth.get('_unit')).to('cm');
69
- height = convert(tempHeight.get('_length')).from(tempHeight.get('_unit')).to('cm');
70
- } else {
71
- width = convert(element.info.sizeinfo.width).from('in').to('cm');
72
- height = convert(element.info.sizeinfo.depth).from('in').to('cm');
73
- }
74
- var angle = rotation + 90;
75
- val.size = {
76
- width: width,
77
- height: height
78
- };
79
- function point(x, y) {
80
- return {
81
- x: x,
82
- y: y
83
- };
84
- }
85
- var buttons = [{
86
- name: 'Edit',
87
- thumbnail: '/assets/img/svg/3d_item_warning_edit.svg'
88
- }, {
89
- name: 'Info',
90
- thumbnail: '/assets/img/svg/3d_item_warning_info.svg'
91
- }];
92
- function getCalcRectFromItem(items) {
93
- var x = items.pos.x;
94
- var y = items.pos.y;
95
- var w = items.size.width / 2;
96
- var h = items.size.height / 2;
97
- var rotRad = items.rotRad;
98
- var mh = 3 * h / 4;
99
- var mx = x - w * Math.cos(rotRad) - mh * Math.sin(rotRad);
100
- var my = y - w * Math.sin(rotRad) + mh * Math.cos(rotRad);
101
- var m2x = x + w * Math.cos(rotRad) - mh * Math.sin(rotRad);
102
- var m2y = y + w * Math.sin(rotRad) + mh * Math.cos(rotRad);
103
- var m3x = x - h * Math.sin(rotRad);
104
- var m3y = y + h * Math.cos(rotRad);
105
- var m1x = x + h * Math.sin(rotRad);
106
- var m1y = y - h * Math.cos(rotRad);
107
- var x0 = mx + h * Math.sin(rotRad);
108
- var y0 = my - h * Math.cos(rotRad);
109
- var x3 = mx * 2 - x0;
110
- var y3 = my * 2 - y0;
111
- var x1 = x * 2 - x3;
112
- var y1 = y * 2 - y3;
113
- var x2 = x * 2 - x0;
114
- var y2 = y * 2 - y0;
115
- return {
116
- rectCenterPoint: [[point(mx, my), 180], [point(m1x, m1y), -90], [point(m2x, m2y), 0], [point(m3x, m3y), 90]]
117
- };
118
- }
119
- function getAllItems() {
120
- var rectarray = [];
121
- var currentItem;
122
- var selectedItem;
123
- if (layer.selected.items.size > 0) {
124
- selectedItem = layer.getIn(['items', layer.selected.items.get(0)]);
125
- var catid = selectedItem.type;
126
- var cat = catalog.elements[catid];
127
- if (!cat) cat = catalog.elements[returnReplaceableDeepSearchType(catid)];
128
- if (cat === undefined || cat === null) {
129
- cat = catalog.getIn(['elements', catid]);
130
- if (!cat) cat = catalog.getIn(['elements', returnReplaceableDeepSearchType(catid)]);
131
- }
132
- currentItem = {
133
- selectedItem: selectedItem,
134
- cat: cat
135
- };
136
- }
137
- layer.items.forEach(function (item) {
138
- var val = {
139
- pos: {
140
- x: item.x,
141
- y: item.y
142
- },
143
- rotRad: item.rotation / 180 * Math.PI
144
- };
145
- var catid = item.type;
146
- var cat = catalog.elements[catid];
147
- if (!cat) cat = catalog.elements[returnReplaceableDeepSearchType(catid)];
148
- var width = convert(item.properties.getIn(['width', '_length'])).from('in').to('cm');
149
- var height = convert(item.properties.getIn(['depth', '_length'])).from('in').to('cm');
150
- // let width = cat.info.sizeinfo.width;
151
- // let height = cat.info.sizeinfo.depth;
152
- val.size = {
153
- width: width,
154
- height: height
155
- };
156
- var otherItem = {
157
- item: item,
158
- cat: cat
159
- };
160
-
161
- // if (!GeometryUtils.needSnap(currentItem, otherItem)) {
162
- // return;
163
- // }
164
-
165
- if (!item.selected) {
166
- var _x = val.pos.x;
167
- var _y = val.pos.y;
168
- var rotRad = val.rotRad;
169
- var w = val.size.width / 2;
170
- var h = val.size.height / 2;
171
- var mx = _x - w * Math.cos(rotRad);
172
- var my = _y - w * Math.sin(rotRad);
173
- var x0 = mx + h * Math.sin(rotRad);
174
- var y0 = my - h * Math.cos(rotRad);
175
- var x3 = mx * 2 - x0;
176
- var y3 = my * 2 - y0;
177
- var x1 = _x * 2 - x3;
178
- var y1 = _y * 2 - y3;
179
- var x2 = _x * 2 - x0;
180
- var y2 = _y * 2 - y0;
181
- rectarray.push({
182
- rect: [point(x0, y0), point(x1, y1), point(x0, y0), point(x1, y1)]
183
- });
184
- rectarray.push({
185
- rect: [point(x1, y1), point(x2, y2), point(x1, y1), point(x2, y2)]
186
- });
187
- rectarray.push({
188
- rect: [point(x2, y2), point(x3, y3), point(x2, y2), point(x3, y3)]
189
- });
190
- rectarray.push({
191
- rect: [point(x3, y3), point(x0, y0), point(x3, y3), point(x0, y0)]
192
- });
193
- }
194
- });
195
-
196
- // layer.holes.forEach(hole => {
197
- // let val = {pos:{x:hole.x, y:hole.y}, rotRad:hole.rotation};
198
- // let catid = hole.type;
199
- // let cat = catalog.elements[catid];
200
- // let width = hole.properties.getIn(['width']).getIn(['length']);
201
- // let height = hole.properties.getIn(['height']).getIn(['length']);
202
- // val.size = {width, height};
203
- // let otherItem = {
204
- // hole,
205
- // cat
206
- // }
207
-
208
- // // if (!GeometryUtils.needSnap(currentItem, otherItem)) {
209
- // // return;
210
- // // }
211
-
212
- // if (!hole.selected) {
213
- // let x = val.pos.x;
214
- // let y = val.pos.y;
215
- // let rotRad = val.rotRad;
216
- // let w = val.size.width / 2;
217
- // let mx = x - w * Math.cos(rotRad);
218
- // let my = y - w * Math.sin(rotRad);
219
- // let kx = x + w * Math.cos(rotRad);
220
- // let ky = y + w * Math.sin(rotRad);
221
- // let x0 = mx - 10 * Math.sin(rotRad);
222
- // let y0 = my + 10 * Math.cos(rotRad);
223
- // let x3 = mx + 10 * Math.sin(rotRad);
224
- // let y3 = my - 10 * Math.cos(rotRad);
225
- // let x1 = kx - 10 * Math.sin(rotRad);
226
- // let y1 = ky + 10 * Math.cos(rotRad);
227
- // let x2 = kx + 10 * Math.sin(rotRad);
228
- // let y2 = ky - 10 * Math.cos(rotRad);
229
- // rectarray.push({'rect':[point(x0,y0), point(x1,y1) ,point(x0,y0), point(x1,y1)]});
230
- // rectarray.push({'rect':[point(x1,y1), point(x2,y2), point(x1,y1), point(x2,y2)]}); // right
231
- // rectarray.push({'rect':[point(x2,y2), point(x3,y3), point(x2,y2), point(x3,y3)]}); // front
232
- // rectarray.push({'rect':[point(x3,y3), point(x0,y0), point(x3,y3), point(x0,y0)]}); // left
233
- // }
234
- // });
235
- return {
236
- others: rectarray
237
- };
238
- }
239
- allItemRect = getAllItems();
240
- allLines = GeometryUtils.getAllLines(layer);
241
- allLineRects = GeometryUtils.buildRectFromLines(layer, allLines);
242
- var allRect = allLineRects.concat(allItemRect.others);
243
- curiteminfo = getCalcRectFromItem(val);
244
-
245
- /**
246
- *
247
- * @param x y position
248
- * @param y x position
249
- * @param rotRad item's rotation in radian
250
- */
251
- var getDistant = function getDistant(x, y, rotRad) {
252
- var center_h = 3 * height / 8;
253
- var center_x = x;
254
- var center_y = y;
255
- var center_x1 = x - center_h * Math.sin(rotRad);
256
- var center_y1 = y + center_h * Math.cos(rotRad);
257
- var PointArray = [];
258
- curiteminfo.rectCenterPoint.forEach(function (centerpoint) {
259
- var comparelength = [];
260
- var a;
261
- var RectLineFuction;
262
- if (centerpoint[1] === 180 || centerpoint[1] === 0) RectLineFuction = GeometryUtils.linePassingThroughTwoPoints(centerpoint[0].x, centerpoint[0].y, center_x1, center_y1);else RectLineFuction = GeometryUtils.linePassingThroughTwoPoints(centerpoint[0].x, centerpoint[0].y, center_x, center_y);
263
- allRect.forEach(function (linerect) {
264
- var p0 = GeometryUtils.clone_point(linerect.rect[2]);
265
- var p1 = GeometryUtils.clone_point(linerect.rect[3]);
266
- var lineFunction = {};
267
- if (p0.x !== p1.x || p0.y !== p1.y) lineFunction = GeometryUtils.linePassingThroughTwoPoints(p0.x, p0.y, p1.x, p1.y);
268
- var coordinatePoint = GeometryUtils.twoLinesIntersection(lineFunction.a, lineFunction.b, lineFunction.c, RectLineFuction.a, RectLineFuction.b, RectLineFuction.c);
269
- if (coordinatePoint !== undefined) {
270
- if (GeometryUtils.pointsDistance(p0.x, p0.y, p1.x, p1.y) > GeometryUtils.pointsDistance(p0.x, p0.y, coordinatePoint.x, coordinatePoint.y) && GeometryUtils.pointsDistance(p0.x, p0.y, p1.x, p1.y) > GeometryUtils.pointsDistance(p1.x, p1.y, coordinatePoint.x, coordinatePoint.y)) {
271
- if (GeometryUtils.pointsDistance(coordinatePoint.x, coordinatePoint.y, center_x, center_y) > GeometryUtils.pointsDistance(centerpoint[0].x, centerpoint[0].y, coordinatePoint.x, coordinatePoint.y)) {
272
- comparelength.push(GeometryUtils.pointsDistance(centerpoint[0].x, centerpoint[0].y, coordinatePoint.x, coordinatePoint.y));
273
- a = Math.min.apply(null, comparelength);
274
- }
275
- }
276
- }
277
- });
278
- PointArray.push([a, centerpoint[1]]);
279
- });
280
- return {
281
- PointArray: PointArray
282
- };
283
- };
284
- var nw = width / 2;
285
- var nh = height / 2;
286
- var _getDistant = getDistant(x, y, val.rotRad),
287
- PointArray = _getDistant.PointArray;
288
- PointArray.forEach(function (pointElement, index) {
289
- if (pointElement[0] == undefined) PointArray[index][0] = 0;
290
- });
291
- var renderedRuler = [];
292
- var ep = 0.1;
293
- if (item.selected) {
294
- PointArray.forEach(function (element, key) {
295
- var itemDistanceFromLine = element[0];
296
- var length = itemDistanceFromLine;
297
- if (itemDistanceFromLine > ep || itemDistanceFromLine < -ep) {
298
- renderedRuler.push(/*#__PURE__*/React.createElement("g", {
299
- "data-element-root": true,
300
- "data-prototype": "rulerDist",
301
- "data-id": item.id,
302
- "data-selected": item.selected,
303
- "data-layer": layer.id,
304
- key: key,
305
- "data-length": length,
306
- "data-direct": element[1]
307
- }, /*#__PURE__*/React.createElement(RulerDist, {
308
- key: key,
309
- layer: layer,
310
- unit: scene.unit,
311
- rulerUnit: scene.rulerUnit,
312
- length: itemDistanceFromLine,
313
- angle: rotation,
314
- rotation: element[1],
315
- transform: "translate(".concat(element[1] === 180 ? -nw : element[1] === 0 ? nw : 0, ", ").concat(element[1] === 90 ? nh : element[1] === -90 ? -nh : 3 * nh / 4, ") rotate(").concat(element[1], ", 0, 0)")
316
- })));
317
- }
318
- });
319
- }
320
- var renderedItem = element.render2D.call(element, item, layer, scene);
321
- var isSmall = false;
322
- if (width < 40) isSmall = true;
323
- var parts = [];
324
- var warning_buttons = '';
325
- var newWidth = item.toJS().properties.width.length;
326
- if (item.toJS().doorStyle.doorStyles && item.toJS().doorStyle.doorStyles.cds && item.toJS().doorStyle.doorStyles.cds.filter(function (cd) {
327
- return cd.itemID == item.getIn(['itemID']);
328
- }).length === 0 && item.category === 'cabinet') warning_buttons = /*#__PURE__*/React.createElement("g", null, /*#__PURE__*/React.createElement("g", {
329
- id: "warning_info_2d",
330
- style: {
331
- transform: "translate(0px,20px)",
332
- cursor: 'pointer'
333
- },
334
- onMouseEnter: function onMouseEnter(event) {
335
- var bbox = event.target.getBoundingClientRect();
336
- document.getElementById('warning_box_2d').style.display = 'flex';
337
- document.getElementById('warning_box_2d').style.top = "".concat(bbox.top - 60, "px");
338
- document.getElementById('warning_box_2d').style.left = "".concat(bbox.left, "px");
339
- },
340
- onMouseLeave: function onMouseLeave() {
341
- document.getElementById('warning_box_2d').style.display = 'none';
342
- }
343
- }, /*#__PURE__*/React.createElement("circle", {
344
- cx: 0,
345
- cy: 0,
346
- r: 8,
347
- fill: "white"
348
- }), /*#__PURE__*/React.createElement("image", {
349
- width: 15,
350
- height: 15,
351
- x: -7.5,
352
- y: -7.5,
353
- style: {
354
- transform: "rotate(".concat(180 - item.rotation, "deg)")
355
- },
356
- href: buttons[1].thumbnail
357
- })), /*#__PURE__*/React.createElement("g", {
358
- style: {
359
- cursor: 'pointer'
360
- },
361
- "data-element-root": true,
362
- "data-prototype": item.prototype,
363
- "data-id": item.id,
364
- "data-selected": item.selected,
365
- "data-layer": layer.id,
366
- "data-part": "warning_edit"
367
- }, /*#__PURE__*/React.createElement("circle", {
368
- cx: 0,
369
- cy: 0,
370
- r: 8,
371
- fill: "white"
372
- }), /*#__PURE__*/React.createElement("image", {
373
- width: 15,
374
- height: 15,
375
- x: -7.5,
376
- y: -7.5,
377
- style: {
378
- transform: "rotate(".concat(90 - item.rotation, "deg)")
379
- },
380
- href: buttons[0].thumbnail
381
- })));
382
- if (item.selected) parts = [/*#__PURE__*/React.createElement("g", {
383
- key: 0,
384
- "data-element-root": true,
385
- "data-prototype": item.prototype,
386
- "data-id": item.id,
387
- "data-selected": item.selected,
388
- "data-layer": layer.id,
389
- "data-part": "rotation-anchor",
390
- style: {
391
- cursor: 'w-resize'
392
- }
393
- }, /*#__PURE__*/React.createElement("image", {
394
- href: clockRotateState ? '/assets/img/svg/rotate.png' : '/assets/img/svg/blank_div.svg',
395
- style: {
396
- transform: "scale(-1, -1) translate(".concat(width / 2, "px, ").concat(height / 2, "px) rotate(25deg)")
397
- },
398
- height: "20",
399
- width: "20",
400
- onMouseEnter: function onMouseEnter() {
401
- setClockRotateState(true);
402
- setAntiClockRotateState(false);
403
- },
404
- onMouseLeave: function onMouseLeave() {
405
- return setClockRotateState(mode === MODE_ROTATING_ITEM ? true : false);
406
- }
407
- }), /*#__PURE__*/React.createElement("image", {
408
- href: antiClockRotateState ? '/assets/img/svg/rotate.png' : '/assets/img/svg/blank_div.svg',
409
- style: {
410
- transform: "scale(1, -1) translate(".concat(width / 2, "px, ").concat(height / 2, "px) rotate(25deg)")
411
- },
412
- height: "20",
413
- width: "20",
414
- onMouseEnter: function onMouseEnter() {
415
- setAntiClockRotateState(true);
416
- setClockRotateState(false);
417
- },
418
- onMouseLeave: function onMouseLeave() {
419
- return setAntiClockRotateState(mode === MODE_ROTATING_ITEM ? true : false);
420
- }
421
- })), /*#__PURE__*/React.createElement("g", {
422
- key: 1
423
- // transform={`translate(${-width / 2 - (!isSmall ? 40 : 0)},${height / 2 + 40})`}
424
- ,
425
- style: {
426
- cursor: 'pointer',
427
- transform: "rotate(".concat(360 - item.rotation, "deg) translate(").concat(-width / 2 - 27, "px, ", 0, "px)")
428
- },
429
- "data-element-root": true,
430
- "data-prototype": item.prototype,
431
- "data-id": item.id,
432
- "data-selected": item.selected,
433
- "data-layer": layer.id,
434
- "data-part": "duplicate"
435
- }, /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("filter", {
436
- id: "shadow"
437
- }, /*#__PURE__*/React.createElement("feDropShadow", {
438
- dx: "0",
439
- dy: "0",
440
- stdDeviation: "0.6"
441
- }))), /*#__PURE__*/React.createElement("rect", {
442
- rx: "4",
443
- ry: "4",
444
- height: "22",
445
- width: "22",
446
- fill: "white",
447
- filter: "url(#shadow)"
448
- }), /*#__PURE__*/React.createElement("image", {
449
- href: "/assets/img/svg/duplicate.svg",
450
- x: "3",
451
- y: "-19",
452
- height: "16",
453
- width: "16",
454
- style: {
455
- transform: 'rotateX(180deg)'
456
- }
457
- })), /*#__PURE__*/React.createElement("g", {
458
- key: 2
459
- // transform={`translate(${-width / 2 - (!isSmall ? 40 : 0)},${height / 2})`}
460
- ,
461
- style: {
462
- cursor: 'pointer',
463
- transform: "rotate(".concat(360 - item.rotation, "deg) translate(").concat(-width / 2 - 27, "px, ").concat(-27, "px)")
464
- },
465
- "data-element-root": true,
466
- "data-prototype": item.prototype,
467
- "data-id": item.id,
468
- "data-selected": item.selected,
469
- "data-layer": layer.id,
470
- "data-part": "remove"
471
- }, /*#__PURE__*/React.createElement("rect", {
472
- rx: "4",
473
- ry: "4",
474
- height: "22",
475
- width: "22",
476
- fill: "white",
477
- filter: "url(#shadow)"
478
- }), /*#__PURE__*/React.createElement("image", {
479
- href: "/assets/img/svg/delete.svg",
480
- x: "3",
481
- y: "-19",
482
- height: "16",
483
- width: "16",
484
- style: {
485
- transform: 'rotateX(180deg)'
486
- }
487
- }))];
488
- var measure = item.layoutpos === WALL_CABINET_LAYOUTPOS ? showWallCabinetMeasure : showBaseCabinetMeasure;
489
- return /*#__PURE__*/React.createElement("g", {
490
- "data-element-root": true,
491
- "data-prototype": item.prototype,
492
- "data-id": item.id,
493
- "data-selected": item.selected,
494
- "data-layer": layer.id,
495
- style: item.selected ? {
496
- cursor: 'move'
497
- } : {}
498
- }, renderedItem, /*#__PURE__*/React.createElement("g", {
499
- transform: "translate(".concat(x, ",").concat(y, ") rotate(").concat(rotation, ")"),
500
- style: {
501
- cursor: 'initial'
502
- }
503
- }, measure ? renderedRuler : null, parts, warning_buttons));
504
- }
505
- Item.propTypes = {
506
- item: PropTypes.object.isRequired,
507
- layer: PropTypes.object.isRequired,
508
- scene: PropTypes.object.isRequired,
509
- catalog: PropTypes.object.isRequired
510
- };
511
- Item.contextTypes = {
512
- itemsActions: PropTypes.object.isRequired
513
- };
@@ -1,164 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import { Line, Area, Vertex, Item, Group } from "./export";
4
- import { GeometryUtils } from "../../utils/export";
5
- import { MODE_DRAWING_LINE, WALL_CABINET_LAYOUTPOS } from "../../constants";
6
- import { returnReplaceableDeepSearchType } from "./utils";
7
- var STYLE = {
8
- stroke: '#494949',
9
- strokeWidth: 1,
10
- strokeLinecap: 'round',
11
- strokeLinejoin: 'round',
12
- strokeMiterlimit: 2.613,
13
- fill: '#D6F0EE'
14
- };
15
- var STYLE_TEXT = {
16
- textAnchor: 'middle',
17
- fontSize: 10,
18
- fontFamily: "'Courier New', Courier, monospace",
19
- fontWeight: 'bold',
20
- fill: '#506ad3'
21
- };
22
- var HINT_STYLE_TEXT = {
23
- textAnchor: 'middle',
24
- fontSize: '10px',
25
- fontFamily: "'Microsoft YaHei UI', Courier, monospace",
26
- fontWeight: 'bold',
27
- fill: '1a75ff'
28
- };
29
- export default function Layer(_ref) {
30
- var layer = _ref.layer,
31
- scene = _ref.scene,
32
- catalog = _ref.catalog,
33
- mode = _ref.mode,
34
- state = _ref.state,
35
- relatedLines = _ref.relatedLines;
36
- var unit = scene.unit,
37
- groups = scene.groups;
38
- var lines = layer.lines,
39
- areas = layer.areas,
40
- vertices = layer.vertices,
41
- holes = layer.holes,
42
- layerID = layer.id,
43
- items = layer.items,
44
- opacity = layer.opacity;
45
- var allLines;
46
- var allLineRects;
47
- allLines = GeometryUtils.getAllLines(layer);
48
- allLineRects = GeometryUtils.buildRectFromLines(layer, allLines);
49
- var hintVertex = {
50
- x: 0,
51
- y: 0
52
- };
53
- var angleVertexes = [];
54
- vertices.valueSeq().forEach(function (vert) {
55
- var vertexes = [vert];
56
- lines.valueSeq().forEach(function (line) {
57
- var vertex0 = layer.vertices.get(line.vertices.get(0));
58
- var vertex1 = layer.vertices.get(line.vertices.get(1));
59
- if (vertex0 === vert) vertexes.push(vertex1);
60
- if (vertex1 === vert) vertexes.push(vertex0);
61
- });
62
- if (vertexes.length === 3) {
63
- angleVertexes.push(vertexes);
64
- }
65
- hintVertex.x += vert.x;
66
- hintVertex.y += vert.y;
67
- });
68
- hintVertex.x /= vertices.size;
69
- hintVertex.y /= vertices.size;
70
- var itemData = [];
71
- var itemWall = [];
72
- var itemSelected = [];
73
- items = items.sort(function (a, b) {
74
- return a.getIn(['properties', 'altitude', '_length']) - b.getIn(['properties', 'altitude', '_length']);
75
- });
76
- items.valueSeq().filter(function (a) {
77
- return a.selected === true;
78
- }).forEach(function (item) {
79
- itemSelected.push(/*#__PURE__*/React.createElement(Item, {
80
- key: item.id,
81
- layer: layer,
82
- item: item,
83
- scene: scene,
84
- catalog: catalog,
85
- mode: mode
86
- }));
87
- });
88
- items.valueSeq().forEach(function (item) {
89
- if (item.layoutpos !== WALL_CABINET_LAYOUTPOS) {
90
- if (catalog.elements.hasOwnProperty(item.type) || !catalog.elements[item.type] && !!catalog.elements[returnReplaceableDeepSearchType(item.type)]) itemData.push(/*#__PURE__*/React.createElement(Item, {
91
- key: item.id,
92
- layer: layer,
93
- item: item,
94
- scene: scene,
95
- catalog: catalog
96
- }));else {
97
- console.log("Element ".concat(item.type, " does not exist in catalog."));
98
- }
99
- }
100
- });
101
- items.valueSeq().filter(function (a) {
102
- return a.selected === false;
103
- }).forEach(function (item) {
104
- if (item.layoutpos === WALL_CABINET_LAYOUTPOS) {
105
- if (catalog.elements.hasOwnProperty(item.type) || !catalog.elements[item.type] && !!catalog.elements[returnReplaceableDeepSearchType(item.type)]) itemWall.push(/*#__PURE__*/React.createElement(Item, {
106
- key: item.id,
107
- layer: layer,
108
- item: item,
109
- scene: scene,
110
- catalog: catalog
111
- }));else {
112
- console.log("Element ".concat(item.type, " does not exist in catalog."));
113
- }
114
- }
115
- });
116
- var lineData = [];
117
- lines.sort(function compare(a, b) {
118
- return a.createdDateTime - b.createdDateTime;
119
- }).valueSeq().forEach(function (line) {
120
- lineData.push(/*#__PURE__*/React.createElement(Line, {
121
- key: line.id,
122
- layer: layer,
123
- line: line,
124
- scene: scene,
125
- catalog: catalog,
126
- state: state,
127
- relatedLines: relatedLines
128
- }));
129
- });
130
- return /*#__PURE__*/React.createElement("g", {
131
- opacity: opacity
132
- }, areas.valueSeq().map(function (area) {
133
- return /*#__PURE__*/React.createElement(Area, {
134
- key: area.id,
135
- layer: layer,
136
- area: area,
137
- unit: unit,
138
- catalog: catalog
139
- });
140
- }), lineData, itemData, itemWall, itemSelected, mode !== MODE_DRAWING_LINE && vertices.valueSeq().filter(function (v) {
141
- return v.selected;
142
- }).map(function (vertex) {
143
- return /*#__PURE__*/React.createElement(Vertex, {
144
- key: vertex.id,
145
- layer: layer,
146
- vertex: vertex
147
- });
148
- }), groups.valueSeq().filter(function (g) {
149
- return g.hasIn(['elements', layerID]) && g.get('selected');
150
- }).map(function (group) {
151
- return /*#__PURE__*/React.createElement(Group, {
152
- key: group.get('id'),
153
- layer: layer,
154
- group: group,
155
- scene: scene,
156
- catalog: catalog
157
- });
158
- }));
159
- }
160
- Layer.propTypes = {
161
- layer: PropTypes.object.isRequired,
162
- scene: PropTypes.object.isRequired,
163
- catalog: PropTypes.object.isRequired
164
- };