kitchen-simulator 5.0.0-test.3 → 5.0.0-test.4

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 (694) hide show
  1. package/es/KitchenConfigurator.js +1 -1
  2. package/es/KitchenConfigurator.js.map +1 -1
  3. package/package.json +8 -12
  4. package/src/KitchenConfigurator.jsx +1 -1
  5. package/lib/@history.js +0 -11
  6. package/lib/@history.js.map +0 -1
  7. package/lib/AppContext.js +0 -11
  8. package/lib/AppContext.js.map +0 -1
  9. package/lib/KitchenConfigurator.js +0 -1353
  10. package/lib/KitchenConfigurator.js.map +0 -1
  11. package/lib/KitchenConfiguratorApp.js +0 -539
  12. package/lib/KitchenConfiguratorApp.js.map +0 -1
  13. package/lib/actions/area-actions.js +0 -22
  14. package/lib/actions/area-actions.js.map +0 -1
  15. package/lib/actions/export.js +0 -44
  16. package/lib/actions/export.js.map +0 -1
  17. package/lib/actions/groups-actions.js +0 -108
  18. package/lib/actions/groups-actions.js.map +0 -1
  19. package/lib/actions/holes-actions.js +0 -141
  20. package/lib/actions/holes-actions.js.map +0 -1
  21. package/lib/actions/items-actions.js +0 -365
  22. package/lib/actions/items-actions.js.map +0 -1
  23. package/lib/actions/lines-actions.js +0 -98
  24. package/lib/actions/lines-actions.js.map +0 -1
  25. package/lib/actions/project-actions.js +0 -333
  26. package/lib/actions/project-actions.js.map +0 -1
  27. package/lib/actions/scene-actions.js +0 -44
  28. package/lib/actions/scene-actions.js.map +0 -1
  29. package/lib/actions/user-actions.js +0 -69
  30. package/lib/actions/user-actions.js.map +0 -1
  31. package/lib/actions/vertices-actions.js +0 -36
  32. package/lib/actions/vertices-actions.js.map +0 -1
  33. package/lib/actions/viewer2d-actions.js +0 -74
  34. package/lib/actions/viewer2d-actions.js.map +0 -1
  35. package/lib/actions/viewer3d-actions.js +0 -33
  36. package/lib/actions/viewer3d-actions.js.map +0 -1
  37. package/lib/catalog/areas/area/planner-element.js +0 -47
  38. package/lib/catalog/areas/area/planner-element.js.map +0 -1
  39. package/lib/catalog/catalog.js +0 -283
  40. package/lib/catalog/catalog.js.map +0 -1
  41. package/lib/catalog/factories/area-factory-3d.js +0 -192
  42. package/lib/catalog/factories/area-factory-3d.js.map +0 -1
  43. package/lib/catalog/factories/area-factory.js +0 -90
  44. package/lib/catalog/factories/area-factory.js.map +0 -1
  45. package/lib/catalog/factories/export.js +0 -26
  46. package/lib/catalog/factories/export.js.map +0 -1
  47. package/lib/catalog/factories/wall-factory-3d.js +0 -213
  48. package/lib/catalog/factories/wall-factory-3d.js.map +0 -1
  49. package/lib/catalog/factories/wall-factory.js +0 -279
  50. package/lib/catalog/factories/wall-factory.js.map +0 -1
  51. package/lib/catalog/holes/door-closet/planner-element.js +0 -232
  52. package/lib/catalog/holes/door-closet/planner-element.js.map +0 -1
  53. package/lib/catalog/holes/door-double/planner-element.js +0 -325
  54. package/lib/catalog/holes/door-double/planner-element.js.map +0 -1
  55. package/lib/catalog/holes/door-exterior/planner-element.js +0 -225
  56. package/lib/catalog/holes/door-exterior/planner-element.js.map +0 -1
  57. package/lib/catalog/holes/door-interior/planner-element.js +0 -237
  58. package/lib/catalog/holes/door-interior/planner-element.js.map +0 -1
  59. package/lib/catalog/holes/door-panic/planner-element.js +0 -513
  60. package/lib/catalog/holes/door-panic/planner-element.js.map +0 -1
  61. package/lib/catalog/holes/door-panic-double/planner-element.js +0 -473
  62. package/lib/catalog/holes/door-panic-double/planner-element.js.map +0 -1
  63. package/lib/catalog/holes/door-sliding/planner-element.js +0 -235
  64. package/lib/catalog/holes/door-sliding/planner-element.js.map +0 -1
  65. package/lib/catalog/holes/doorway-framed/planner-element.js +0 -155
  66. package/lib/catalog/holes/doorway-framed/planner-element.js.map +0 -1
  67. package/lib/catalog/holes/doorway-frameless/planner-element.js +0 -114
  68. package/lib/catalog/holes/doorway-frameless/planner-element.js.map +0 -1
  69. package/lib/catalog/holes/window-clear/planner-element.js +0 -176
  70. package/lib/catalog/holes/window-clear/planner-element.js.map +0 -1
  71. package/lib/catalog/holes/window-cross/planner-element.js +0 -175
  72. package/lib/catalog/holes/window-cross/planner-element.js.map +0 -1
  73. package/lib/catalog/holes/window-double-hung/planner-element.js +0 -313
  74. package/lib/catalog/holes/window-double-hung/planner-element.js.map +0 -1
  75. package/lib/catalog/holes/window-vertical/planner-element.js +0 -286
  76. package/lib/catalog/holes/window-vertical/planner-element.js.map +0 -1
  77. package/lib/catalog/lines/wall/planner-element.js +0 -77
  78. package/lib/catalog/lines/wall/planner-element.js.map +0 -1
  79. package/lib/catalog/molding/molding-dcm/planner-element.js +0 -39
  80. package/lib/catalog/molding/molding-dcm/planner-element.js.map +0 -1
  81. package/lib/catalog/molding/molding-fbm/planner-element.js +0 -39
  82. package/lib/catalog/molding/molding-fbm/planner-element.js.map +0 -1
  83. package/lib/catalog/molding/molding-lrm/planner-element.js +0 -39
  84. package/lib/catalog/molding/molding-lrm/planner-element.js.map +0 -1
  85. package/lib/catalog/properties/export.js +0 -82
  86. package/lib/catalog/properties/export.js.map +0 -1
  87. package/lib/catalog/properties/property-checkbox.js +0 -79
  88. package/lib/catalog/properties/property-checkbox.js.map +0 -1
  89. package/lib/catalog/properties/property-color.js +0 -47
  90. package/lib/catalog/properties/property-color.js.map +0 -1
  91. package/lib/catalog/properties/property-enum.js +0 -63
  92. package/lib/catalog/properties/property-enum.js.map +0 -1
  93. package/lib/catalog/properties/property-hidden.js +0 -27
  94. package/lib/catalog/properties/property-hidden.js.map +0 -1
  95. package/lib/catalog/properties/property-lenght-measure.js +0 -109
  96. package/lib/catalog/properties/property-lenght-measure.js.map +0 -1
  97. package/lib/catalog/properties/property-length-measure.js +0 -93
  98. package/lib/catalog/properties/property-length-measure.js.map +0 -1
  99. package/lib/catalog/properties/property-length-measure_hole.js +0 -109
  100. package/lib/catalog/properties/property-length-measure_hole.js.map +0 -1
  101. package/lib/catalog/properties/property-number.js +0 -56
  102. package/lib/catalog/properties/property-number.js.map +0 -1
  103. package/lib/catalog/properties/property-read-only.js +0 -34
  104. package/lib/catalog/properties/property-read-only.js.map +0 -1
  105. package/lib/catalog/properties/property-string.js +0 -56
  106. package/lib/catalog/properties/property-string.js.map +0 -1
  107. package/lib/catalog/properties/property-toggle.js +0 -47
  108. package/lib/catalog/properties/property-toggle.js.map +0 -1
  109. package/lib/catalog/properties/shared-property-style.js +0 -21
  110. package/lib/catalog/properties/shared-property-style.js.map +0 -1
  111. package/lib/catalog/utils/FuseUtils.js +0 -89
  112. package/lib/catalog/utils/FuseUtils.js.map +0 -1
  113. package/lib/catalog/utils/exporter.js +0 -156
  114. package/lib/catalog/utils/exporter.js.map +0 -1
  115. package/lib/catalog/utils/geom-utils.js +0 -206
  116. package/lib/catalog/utils/geom-utils.js.map +0 -1
  117. package/lib/catalog/utils/item-loader.js +0 -1534
  118. package/lib/catalog/utils/item-loader.js.map +0 -1
  119. package/lib/catalog/utils/load-obj.js +0 -100
  120. package/lib/catalog/utils/load-obj.js.map +0 -1
  121. package/lib/catalog/utils/mtl-loader.js +0 -360
  122. package/lib/catalog/utils/mtl-loader.js.map +0 -1
  123. package/lib/catalog/utils/obj-loader.js +0 -479
  124. package/lib/catalog/utils/obj-loader.js.map +0 -1
  125. package/lib/class/FuseUtils.js +0 -89
  126. package/lib/class/FuseUtils.js.map +0 -1
  127. package/lib/class/area.js +0 -151
  128. package/lib/class/area.js.map +0 -1
  129. package/lib/class/export.js +0 -97
  130. package/lib/class/export.js.map +0 -1
  131. package/lib/class/group.js +0 -446
  132. package/lib/class/group.js.map +0 -1
  133. package/lib/class/guide.js +0 -68
  134. package/lib/class/guide.js.map +0 -1
  135. package/lib/class/hole.js +0 -935
  136. package/lib/class/hole.js.map +0 -1
  137. package/lib/class/item.js +0 -1894
  138. package/lib/class/item.js.map +0 -1
  139. package/lib/class/layer.js +0 -673
  140. package/lib/class/layer.js.map +0 -1
  141. package/lib/class/line.js +0 -1296
  142. package/lib/class/line.js.map +0 -1
  143. package/lib/class/project.js +0 -829
  144. package/lib/class/project.js.map +0 -1
  145. package/lib/class/vertex.js +0 -272
  146. package/lib/class/vertex.js.map +0 -1
  147. package/lib/components/atoms/Snackbar/index.js +0 -57
  148. package/lib/components/atoms/Snackbar/index.js.map +0 -1
  149. package/lib/components/atoms/radio-button/index.js +0 -33
  150. package/lib/components/atoms/radio-button/index.js.map +0 -1
  151. package/lib/components/atoms/radio-button/styles.js +0 -12
  152. package/lib/components/atoms/radio-button/styles.js.map +0 -1
  153. package/lib/components/button/MainButton.js +0 -98
  154. package/lib/components/button/MainButton.js.map +0 -1
  155. package/lib/components/button/ToggleMeasureButton.js +0 -63
  156. package/lib/components/button/ToggleMeasureButton.js.map +0 -1
  157. package/lib/components/catalog-view/catalog-breadcrumb.js +0 -61
  158. package/lib/components/catalog-view/catalog-breadcrumb.js.map +0 -1
  159. package/lib/components/catalog-view/catalog-item.js +0 -233
  160. package/lib/components/catalog-view/catalog-item.js.map +0 -1
  161. package/lib/components/catalog-view/catalog-list.js +0 -189
  162. package/lib/components/catalog-view/catalog-list.js.map +0 -1
  163. package/lib/components/catalog-view/catalog-page-item.js +0 -137
  164. package/lib/components/catalog-view/catalog-page-item.js.map +0 -1
  165. package/lib/components/catalog-view/catalog-turn-back-page-item.js +0 -113
  166. package/lib/components/catalog-view/catalog-turn-back-page-item.js.map +0 -1
  167. package/lib/components/configurator/custom-configurator.js +0 -101
  168. package/lib/components/configurator/custom-configurator.js.map +0 -1
  169. package/lib/components/configurator/project-configurator.js +0 -138
  170. package/lib/components/configurator/project-configurator.js.map +0 -1
  171. package/lib/components/content.js +0 -132
  172. package/lib/components/content.js.map +0 -1
  173. package/lib/components/export.js +0 -90
  174. package/lib/components/export.js.map +0 -1
  175. package/lib/components/firstsetting/button/styles.js +0 -34
  176. package/lib/components/firstsetting/button/styles.js.map +0 -1
  177. package/lib/components/firstsetting/export.js +0 -16
  178. package/lib/components/firstsetting/export.js.map +0 -1
  179. package/lib/components/firstsetting/firstsetting-content-button.js +0 -224
  180. package/lib/components/firstsetting/firstsetting-content-button.js.map +0 -1
  181. package/lib/components/firstsetting/firstsetting-toggle-button.js +0 -133
  182. package/lib/components/firstsetting/firstsetting-toggle-button.js.map +0 -1
  183. package/lib/components/firstsetting/firstsetting.js +0 -633
  184. package/lib/components/firstsetting/firstsetting.js.map +0 -1
  185. package/lib/components/footerbar/button/ControlButton.js +0 -79
  186. package/lib/components/footerbar/button/ControlButton.js.map +0 -1
  187. package/lib/components/footerbar/button/DirectionButton.js +0 -76
  188. package/lib/components/footerbar/button/DirectionButton.js.map +0 -1
  189. package/lib/components/footerbar/button/DirectionPanSpinButton.js +0 -57
  190. package/lib/components/footerbar/button/DirectionPanSpinButton.js.map +0 -1
  191. package/lib/components/footerbar/button/ToggleButton.js +0 -83
  192. package/lib/components/footerbar/button/ToggleButton.js.map +0 -1
  193. package/lib/components/footerbar/button/ToggleConvertButton.js +0 -80
  194. package/lib/components/footerbar/button/ToggleConvertButton.js.map +0 -1
  195. package/lib/components/footerbar/button/ToggleMeasureButton.js +0 -59
  196. package/lib/components/footerbar/button/ToggleMeasureButton.js.map +0 -1
  197. package/lib/components/footerbar/button/styles.js +0 -29
  198. package/lib/components/footerbar/button/styles.js.map +0 -1
  199. package/lib/components/footerbar/export.js +0 -16
  200. package/lib/components/footerbar/export.js.map +0 -1
  201. package/lib/components/footerbar/footer-content-button.js +0 -224
  202. package/lib/components/footerbar/footer-content-button.js.map +0 -1
  203. package/lib/components/footerbar/footer-toggle-button.js +0 -133
  204. package/lib/components/footerbar/footer-toggle-button.js.map +0 -1
  205. package/lib/components/footerbar/footerbar.js +0 -808
  206. package/lib/components/footerbar/footerbar.js.map +0 -1
  207. package/lib/components/footerbar/styles.js +0 -41
  208. package/lib/components/footerbar/styles.js.map +0 -1
  209. package/lib/components/header/button/MenuButton.js +0 -77
  210. package/lib/components/header/button/MenuButton.js.map +0 -1
  211. package/lib/components/header/button/SaveButton.js +0 -57
  212. package/lib/components/header/button/SaveButton.js.map +0 -1
  213. package/lib/components/header/button/styles.js +0 -68
  214. package/lib/components/header/button/styles.js.map +0 -1
  215. package/lib/components/header/export.js +0 -12
  216. package/lib/components/header/export.js.map +0 -1
  217. package/lib/components/header/header.js +0 -556
  218. package/lib/components/header/header.js.map +0 -1
  219. package/lib/components/header/styles.js +0 -47
  220. package/lib/components/header/styles.js.map +0 -1
  221. package/lib/components/login/Login.js +0 -94
  222. package/lib/components/login/Login.js.map +0 -1
  223. package/lib/components/login/LoginForm/index.js +0 -140
  224. package/lib/components/login/LoginForm/index.js.map +0 -1
  225. package/lib/components/login/Register.js +0 -104
  226. package/lib/components/login/Register.js.map +0 -1
  227. package/lib/components/login/RegisterForm/index.js +0 -237
  228. package/lib/components/login/RegisterForm/index.js.map +0 -1
  229. package/lib/components/login/jwtService.js +0 -239
  230. package/lib/components/login/jwtService.js.map +0 -1
  231. package/lib/components/molecules/slider/index.js +0 -22
  232. package/lib/components/molecules/slider/index.js.map +0 -1
  233. package/lib/components/molecules/slider/styles.js +0 -2
  234. package/lib/components/molecules/slider/styles.js.map +0 -1
  235. package/lib/components/myprojects/export.js +0 -12
  236. package/lib/components/myprojects/export.js.map +0 -1
  237. package/lib/components/myprojects/index.js +0 -453
  238. package/lib/components/myprojects/index.js.map +0 -1
  239. package/lib/components/myprojects/styles.js +0 -31
  240. package/lib/components/myprojects/styles.js.map +0 -1
  241. package/lib/components/sidebar/custom-accordion.js +0 -45
  242. package/lib/components/sidebar/custom-accordion.js.map +0 -1
  243. package/lib/components/sidebar/export.js +0 -50
  244. package/lib/components/sidebar/export.js.map +0 -1
  245. package/lib/components/sidebar/panel-element-editor/attributes-editor/attributes-editor.js +0 -74
  246. package/lib/components/sidebar/panel-element-editor/attributes-editor/attributes-editor.js.map +0 -1
  247. package/lib/components/sidebar/panel-element-editor/attributes-editor/confirm-popup.js +0 -124
  248. package/lib/components/sidebar/panel-element-editor/attributes-editor/confirm-popup.js.map +0 -1
  249. package/lib/components/sidebar/panel-element-editor/attributes-editor/hole-attributes-editor.js +0 -135
  250. package/lib/components/sidebar/panel-element-editor/attributes-editor/hole-attributes-editor.js.map +0 -1
  251. package/lib/components/sidebar/panel-element-editor/attributes-editor/item-attributes-editor.js +0 -260
  252. package/lib/components/sidebar/panel-element-editor/attributes-editor/item-attributes-editor.js.map +0 -1
  253. package/lib/components/sidebar/panel-element-editor/attributes-editor/line-attributes-editor.js +0 -84
  254. package/lib/components/sidebar/panel-element-editor/attributes-editor/line-attributes-editor.js.map +0 -1
  255. package/lib/components/sidebar/panel-element-editor/element-editor.js +0 -884
  256. package/lib/components/sidebar/panel-element-editor/element-editor.js.map +0 -1
  257. package/lib/components/sidebar/panel-element-editor/multi-elements-editor.js +0 -2
  258. package/lib/components/sidebar/panel-element-editor/multi-elements-editor.js.map +0 -1
  259. package/lib/components/sidebar/panel-element-editor/panel-element-editor.js +0 -56
  260. package/lib/components/sidebar/panel-element-editor/panel-element-editor.js.map +0 -1
  261. package/lib/components/sidebar/panel-element-editor/panel-multi-elements-editor.js +0 -125
  262. package/lib/components/sidebar/panel-element-editor/panel-multi-elements-editor.js.map +0 -1
  263. package/lib/components/sidebar/panel-group-editor.js +0 -218
  264. package/lib/components/sidebar/panel-group-editor.js.map +0 -1
  265. package/lib/components/sidebar/panel-groups.js +0 -274
  266. package/lib/components/sidebar/panel-groups.js.map +0 -1
  267. package/lib/components/sidebar/panel-guides.js +0 -192
  268. package/lib/components/sidebar/panel-guides.js.map +0 -1
  269. package/lib/components/sidebar/panel-layer-elements.js +0 -258
  270. package/lib/components/sidebar/panel-layer-elements.js.map +0 -1
  271. package/lib/components/sidebar/panel-layers.js +0 -347
  272. package/lib/components/sidebar/panel-layers.js.map +0 -1
  273. package/lib/components/sidebar/panel.js +0 -110
  274. package/lib/components/sidebar/panel.js.map +0 -1
  275. package/lib/components/sidebar/sidebar.js +0 -117
  276. package/lib/components/sidebar/sidebar.js.map +0 -1
  277. package/lib/components/sidebar/toolbar-panel.js +0 -171
  278. package/lib/components/sidebar/toolbar-panel.js.map +0 -1
  279. package/lib/components/sign/export.js +0 -18
  280. package/lib/components/sign/export.js.map +0 -1
  281. package/lib/components/sign/main/index.js +0 -567
  282. package/lib/components/sign/main/index.js.map +0 -1
  283. package/lib/components/sign/main/styles.js +0 -27
  284. package/lib/components/sign/main/styles.js.map +0 -1
  285. package/lib/components/style/button.js +0 -121
  286. package/lib/components/style/button.js.map +0 -1
  287. package/lib/components/style/cancel-button.js +0 -30
  288. package/lib/components/style/cancel-button.js.map +0 -1
  289. package/lib/components/style/content-container.js +0 -41
  290. package/lib/components/style/content-container.js.map +0 -1
  291. package/lib/components/style/content-title.js +0 -38
  292. package/lib/components/style/content-title.js.map +0 -1
  293. package/lib/components/style/delete-button.js +0 -35
  294. package/lib/components/style/delete-button.js.map +0 -1
  295. package/lib/components/style/export.js +0 -122
  296. package/lib/components/style/export.js.map +0 -1
  297. package/lib/components/style/form-block.js +0 -32
  298. package/lib/components/style/form-block.js.map +0 -1
  299. package/lib/components/style/form-color-input.js +0 -35
  300. package/lib/components/style/form-color-input.js.map +0 -1
  301. package/lib/components/style/form-label.js +0 -34
  302. package/lib/components/style/form-label.js.map +0 -1
  303. package/lib/components/style/form-number-input.js +0 -197
  304. package/lib/components/style/form-number-input.js.map +0 -1
  305. package/lib/components/style/form-number-input_2.js +0 -214
  306. package/lib/components/style/form-number-input_2.js.map +0 -1
  307. package/lib/components/style/form-select.js +0 -30
  308. package/lib/components/style/form-select.js.map +0 -1
  309. package/lib/components/style/form-slider.js +0 -53
  310. package/lib/components/style/form-slider.js.map +0 -1
  311. package/lib/components/style/form-submit-button.js +0 -36
  312. package/lib/components/style/form-submit-button.js.map +0 -1
  313. package/lib/components/style/form-text-input.js +0 -84
  314. package/lib/components/style/form-text-input.js.map +0 -1
  315. package/lib/components/toolbar/button/ControlButton.js +0 -76
  316. package/lib/components/toolbar/button/ControlButton.js.map +0 -1
  317. package/lib/components/toolbar/button/DirectionButton.js +0 -57
  318. package/lib/components/toolbar/button/DirectionButton.js.map +0 -1
  319. package/lib/components/toolbar/button/RightButton.js +0 -140
  320. package/lib/components/toolbar/button/RightButton.js.map +0 -1
  321. package/lib/components/toolbar/button/ToggleButton.js +0 -66
  322. package/lib/components/toolbar/button/ToggleButton.js.map +0 -1
  323. package/lib/components/toolbar/button/index.js +0 -94
  324. package/lib/components/toolbar/button/index.js.map +0 -1
  325. package/lib/components/toolbar/button/styles.js +0 -21
  326. package/lib/components/toolbar/button/styles.js.map +0 -1
  327. package/lib/components/toolbar/components/DoorStyleMenu.js +0 -112
  328. package/lib/components/toolbar/components/DoorStyleMenu.js.map +0 -1
  329. package/lib/components/toolbar/components/Pricing.js +0 -110
  330. package/lib/components/toolbar/components/Pricing.js.map +0 -1
  331. package/lib/components/toolbar/components/ReviewForQuote.js +0 -485
  332. package/lib/components/toolbar/components/ReviewForQuote.js.map +0 -1
  333. package/lib/components/toolbar/export.js +0 -50
  334. package/lib/components/toolbar/export.js.map +0 -1
  335. package/lib/components/toolbar/main/Alert.js +0 -132
  336. package/lib/components/toolbar/main/Alert.js.map +0 -1
  337. package/lib/components/toolbar/main/TakePictureModal.js +0 -109
  338. package/lib/components/toolbar/main/TakePictureModal.js.map +0 -1
  339. package/lib/components/toolbar/main/confirm-popup.js +0 -95
  340. package/lib/components/toolbar/main/confirm-popup.js.map +0 -1
  341. package/lib/components/toolbar/main/index.js +0 -4619
  342. package/lib/components/toolbar/main/index.js.map +0 -1
  343. package/lib/components/toolbar/main/myComponents.js +0 -125
  344. package/lib/components/toolbar/main/myComponents.js.map +0 -1
  345. package/lib/components/toolbar/main/styles.js +0 -73
  346. package/lib/components/toolbar/main/styles.js.map +0 -1
  347. package/lib/components/toolbar/plugin-item.js +0 -156
  348. package/lib/components/toolbar/plugin-item.js.map +0 -1
  349. package/lib/components/toolbar/popup/appliance/appliance-category/index.js +0 -86
  350. package/lib/components/toolbar/popup/appliance/appliance-category/index.js.map +0 -1
  351. package/lib/components/toolbar/popup/appliance/choose-appliance/index.js +0 -85
  352. package/lib/components/toolbar/popup/appliance/choose-appliance/index.js.map +0 -1
  353. package/lib/components/toolbar/popup/appliance/index.js +0 -89
  354. package/lib/components/toolbar/popup/appliance/index.js.map +0 -1
  355. package/lib/components/toolbar/popup/autosaveprompt/index.js +0 -99
  356. package/lib/components/toolbar/popup/autosaveprompt/index.js.map +0 -1
  357. package/lib/components/toolbar/popup/autosaveprompt/styles.js +0 -16
  358. package/lib/components/toolbar/popup/autosaveprompt/styles.js.map +0 -1
  359. package/lib/components/toolbar/popup/cabinet/cabinet-category/index.js +0 -86
  360. package/lib/components/toolbar/popup/cabinet/cabinet-category/index.js.map +0 -1
  361. package/lib/components/toolbar/popup/cabinet/choose-product/index.js +0 -107
  362. package/lib/components/toolbar/popup/cabinet/choose-product/index.js.map +0 -1
  363. package/lib/components/toolbar/popup/cabinet/index.js +0 -91
  364. package/lib/components/toolbar/popup/cabinet/index.js.map +0 -1
  365. package/lib/components/toolbar/popup/doorStyle/choose-style/index.js +0 -59
  366. package/lib/components/toolbar/popup/doorStyle/choose-style/index.js.map +0 -1
  367. package/lib/components/toolbar/popup/doorStyle/index.js +0 -68
  368. package/lib/components/toolbar/popup/doorStyle/index.js.map +0 -1
  369. package/lib/components/toolbar/popup/doorStyle/style-category/index.js +0 -152
  370. package/lib/components/toolbar/popup/doorStyle/style-category/index.js.map +0 -1
  371. package/lib/components/toolbar/popup/downloadsummary/downloadSummaryContext.js +0 -9
  372. package/lib/components/toolbar/popup/downloadsummary/downloadSummaryContext.js.map +0 -1
  373. package/lib/components/toolbar/popup/downloadsummary/downloadSummaryTemp.js +0 -128
  374. package/lib/components/toolbar/popup/downloadsummary/downloadSummaryTemp.js.map +0 -1
  375. package/lib/components/toolbar/popup/downloadsummary/index.js +0 -572
  376. package/lib/components/toolbar/popup/downloadsummary/index.js.map +0 -1
  377. package/lib/components/toolbar/popup/downloadsummary/show2D/show2DView.js +0 -60
  378. package/lib/components/toolbar/popup/downloadsummary/show2D/show2DView.js.map +0 -1
  379. package/lib/components/toolbar/popup/downloadsummary/show2D/viewer2DDownLoad.js +0 -200
  380. package/lib/components/toolbar/popup/downloadsummary/show2D/viewer2DDownLoad.js.map +0 -1
  381. package/lib/components/toolbar/popup/downloadsummary/show3D/show3DView.js +0 -254
  382. package/lib/components/toolbar/popup/downloadsummary/show3D/show3DView.js.map +0 -1
  383. package/lib/components/toolbar/popup/downloadsummary/show3D/viewer3DDownLoad.js +0 -1762
  384. package/lib/components/toolbar/popup/downloadsummary/show3D/viewer3DDownLoad.js.map +0 -1
  385. package/lib/components/toolbar/popup/downloadsummary/showCabinetInfo.js +0 -96
  386. package/lib/components/toolbar/popup/downloadsummary/showCabinetInfo.js.map +0 -1
  387. package/lib/components/toolbar/popup/downloadsummary/showElevation/showElevationView.js +0 -125
  388. package/lib/components/toolbar/popup/downloadsummary/showElevation/showElevationView.js.map +0 -1
  389. package/lib/components/toolbar/popup/downloadsummary/showElevation/viewer3DElevationDownload.js +0 -1713
  390. package/lib/components/toolbar/popup/downloadsummary/showElevation/viewer3DElevationDownload.js.map +0 -1
  391. package/lib/components/toolbar/popup/downloadsummary/showElevation/viewerElevationDownload.js +0 -184
  392. package/lib/components/toolbar/popup/downloadsummary/showElevation/viewerElevationDownload.js.map +0 -1
  393. package/lib/components/toolbar/popup/downloadsummary/showWarranty.js +0 -115
  394. package/lib/components/toolbar/popup/downloadsummary/showWarranty.js.map +0 -1
  395. package/lib/components/toolbar/popup/downloadsummary/styles.js +0 -47
  396. package/lib/components/toolbar/popup/downloadsummary/styles.js.map +0 -1
  397. package/lib/components/toolbar/popup/finishingtouch/category/index.js +0 -44
  398. package/lib/components/toolbar/popup/finishingtouch/category/index.js.map +0 -1
  399. package/lib/components/toolbar/popup/finishingtouch/index.js +0 -54
  400. package/lib/components/toolbar/popup/finishingtouch/index.js.map +0 -1
  401. package/lib/components/toolbar/popup/finishingtouch/material-edit.js +0 -163
  402. package/lib/components/toolbar/popup/finishingtouch/material-edit.js.map +0 -1
  403. package/lib/components/toolbar/popup/finishingtouch/product/index.js +0 -65
  404. package/lib/components/toolbar/popup/finishingtouch/product/index.js.map +0 -1
  405. package/lib/components/toolbar/popup/floorplan/choose-floor/confirm-popup.js +0 -124
  406. package/lib/components/toolbar/popup/floorplan/choose-floor/confirm-popup.js.map +0 -1
  407. package/lib/components/toolbar/popup/floorplan/choose-floor/index.js +0 -255
  408. package/lib/components/toolbar/popup/floorplan/choose-floor/index.js.map +0 -1
  409. package/lib/components/toolbar/popup/floorplan/choose-floor/styles.js +0 -20
  410. package/lib/components/toolbar/popup/floorplan/choose-floor/styles.js.map +0 -1
  411. package/lib/components/toolbar/popup/floorplan/floor-category/index.js +0 -99
  412. package/lib/components/toolbar/popup/floorplan/floor-category/index.js.map +0 -1
  413. package/lib/components/toolbar/popup/floorplan/index.js +0 -56
  414. package/lib/components/toolbar/popup/floorplan/index.js.map +0 -1
  415. package/lib/components/toolbar/popup/index.js +0 -195
  416. package/lib/components/toolbar/popup/index.js.map +0 -1
  417. package/lib/components/toolbar/popup/newproject/index.js +0 -75
  418. package/lib/components/toolbar/popup/newproject/index.js.map +0 -1
  419. package/lib/components/toolbar/popup/newproject/styles.js +0 -16
  420. package/lib/components/toolbar/popup/newproject/styles.js.map +0 -1
  421. package/lib/components/toolbar/popup/product/appliance.js +0 -73
  422. package/lib/components/toolbar/popup/product/appliance.js.map +0 -1
  423. package/lib/components/toolbar/popup/product/cabinetproduct.js +0 -33
  424. package/lib/components/toolbar/popup/product/cabinetproduct.js.map +0 -1
  425. package/lib/components/toolbar/popup/product/doorstyle.js +0 -59
  426. package/lib/components/toolbar/popup/product/doorstyle.js.map +0 -1
  427. package/lib/components/toolbar/popup/product/doorstyleproduct.js +0 -59
  428. package/lib/components/toolbar/popup/product/doorstyleproduct.js.map +0 -1
  429. package/lib/components/toolbar/popup/product/floor.js +0 -59
  430. package/lib/components/toolbar/popup/product/floor.js.map +0 -1
  431. package/lib/components/toolbar/popup/product/floorproduct.js +0 -68
  432. package/lib/components/toolbar/popup/product/floorproduct.js.map +0 -1
  433. package/lib/components/toolbar/popup/product/index.js +0 -59
  434. package/lib/components/toolbar/popup/product/index.js.map +0 -1
  435. package/lib/components/toolbar/popup/product/primary.js +0 -71
  436. package/lib/components/toolbar/popup/product/primary.js.map +0 -1
  437. package/lib/components/toolbar/popup/product/productline.js +0 -128
  438. package/lib/components/toolbar/popup/product/productline.js.map +0 -1
  439. package/lib/components/toolbar/popup/product/reviewItem.js +0 -346
  440. package/lib/components/toolbar/popup/product/reviewItem.js.map +0 -1
  441. package/lib/components/toolbar/popup/product/reviewMolding.js +0 -291
  442. package/lib/components/toolbar/popup/product/reviewMolding.js.map +0 -1
  443. package/lib/components/toolbar/popup/product/styles.js +0 -79
  444. package/lib/components/toolbar/popup/product/styles.js.map +0 -1
  445. package/lib/components/toolbar/popup/savedesign/FullPictureForm.js +0 -169
  446. package/lib/components/toolbar/popup/savedesign/FullPictureForm.js.map +0 -1
  447. package/lib/components/toolbar/popup/savedesign/index.js +0 -516
  448. package/lib/components/toolbar/popup/savedesign/index.js.map +0 -1
  449. package/lib/components/toolbar/popup/savedesign/styles.js +0 -26
  450. package/lib/components/toolbar/popup/savedesign/styles.js.map +0 -1
  451. package/lib/components/toolbar/popup/setDoorStyleOption/index.js +0 -64
  452. package/lib/components/toolbar/popup/setDoorStyleOption/index.js.map +0 -1
  453. package/lib/components/toolbar/popup/styles.js +0 -104
  454. package/lib/components/toolbar/popup/styles.js.map +0 -1
  455. package/lib/components/toolbar/popup/submitforquote/AddToCartOptions.js +0 -166
  456. package/lib/components/toolbar/popup/submitforquote/AddToCartOptions.js.map +0 -1
  457. package/lib/components/toolbar/popup/submitforquote/CustomerRequestsForm.js +0 -93
  458. package/lib/components/toolbar/popup/submitforquote/CustomerRequestsForm.js.map +0 -1
  459. package/lib/components/toolbar/popup/submitforquote/SkipDesignerReview.js +0 -45
  460. package/lib/components/toolbar/popup/submitforquote/SkipDesignerReview.js.map +0 -1
  461. package/lib/components/toolbar/popup/submitforquote/StepDots.js +0 -40
  462. package/lib/components/toolbar/popup/submitforquote/StepDots.js.map +0 -1
  463. package/lib/components/toolbar/popup/submitforquote/cart-choice.js +0 -141
  464. package/lib/components/toolbar/popup/submitforquote/cart-choice.js.map +0 -1
  465. package/lib/components/toolbar/popup/submitforquote/doorstyle-menus.js +0 -50
  466. package/lib/components/toolbar/popup/submitforquote/doorstyle-menus.js.map +0 -1
  467. package/lib/components/toolbar/popup/submitforquote/index.js +0 -698
  468. package/lib/components/toolbar/popup/submitforquote/index.js.map +0 -1
  469. package/lib/components/toolbar/popup/submitforquote/styles.js +0 -38
  470. package/lib/components/toolbar/popup/submitforquote/styles.js.map +0 -1
  471. package/lib/components/toolbar/popup/submitprompt/index.js +0 -79
  472. package/lib/components/toolbar/popup/submitprompt/index.js.map +0 -1
  473. package/lib/components/toolbar/popup/submitprompt/styles.js +0 -16
  474. package/lib/components/toolbar/popup/submitprompt/styles.js.map +0 -1
  475. package/lib/components/toolbar/toolbar-button.js +0 -111
  476. package/lib/components/toolbar/toolbar-button.js.map +0 -1
  477. package/lib/components/toolbar/toolbar-load-button.js +0 -36
  478. package/lib/components/toolbar/toolbar-load-button.js.map +0 -1
  479. package/lib/components/toolbar/toolbar-save-button.js +0 -34
  480. package/lib/components/toolbar/toolbar-save-button.js.map +0 -1
  481. package/lib/components/tutorial-view/Modal.js +0 -503
  482. package/lib/components/tutorial-view/Modal.js.map +0 -1
  483. package/lib/components/tutorial-view/styles.js +0 -13
  484. package/lib/components/tutorial-view/styles.js.map +0 -1
  485. package/lib/components/viewer2d/area.js +0 -90
  486. package/lib/components/viewer2d/area.js.map +0 -1
  487. package/lib/components/viewer2d/export.js +0 -122
  488. package/lib/components/viewer2d/export.js.map +0 -1
  489. package/lib/components/viewer2d/grids/grid-horizontal-streak.js +0 -45
  490. package/lib/components/viewer2d/grids/grid-horizontal-streak.js.map +0 -1
  491. package/lib/components/viewer2d/grids/grid-streak.js +0 -45
  492. package/lib/components/viewer2d/grids/grid-streak.js.map +0 -1
  493. package/lib/components/viewer2d/grids/grid-vertical-streak.js +0 -45
  494. package/lib/components/viewer2d/grids/grid-vertical-streak.js.map +0 -1
  495. package/lib/components/viewer2d/grids/grids.js +0 -45
  496. package/lib/components/viewer2d/grids/grids.js.map +0 -1
  497. package/lib/components/viewer2d/group.js +0 -63
  498. package/lib/components/viewer2d/group.js.map +0 -1
  499. package/lib/components/viewer2d/item.js +0 -522
  500. package/lib/components/viewer2d/item.js.map +0 -1
  501. package/lib/components/viewer2d/layer.js +0 -172
  502. package/lib/components/viewer2d/layer.js.map +0 -1
  503. package/lib/components/viewer2d/line.js +0 -899
  504. package/lib/components/viewer2d/line.js.map +0 -1
  505. package/lib/components/viewer2d/ruler.js +0 -108
  506. package/lib/components/viewer2d/ruler.js.map +0 -1
  507. package/lib/components/viewer2d/rulerDist.js +0 -154
  508. package/lib/components/viewer2d/rulerDist.js.map +0 -1
  509. package/lib/components/viewer2d/rulerX.js +0 -159
  510. package/lib/components/viewer2d/rulerX.js.map +0 -1
  511. package/lib/components/viewer2d/rulerY.js +0 -161
  512. package/lib/components/viewer2d/rulerY.js.map +0 -1
  513. package/lib/components/viewer2d/scene.js +0 -148
  514. package/lib/components/viewer2d/scene.js.map +0 -1
  515. package/lib/components/viewer2d/snap.js +0 -84
  516. package/lib/components/viewer2d/snap.js.map +0 -1
  517. package/lib/components/viewer2d/state.js +0 -88
  518. package/lib/components/viewer2d/state.js.map +0 -1
  519. package/lib/components/viewer2d/utils.js +0 -174
  520. package/lib/components/viewer2d/utils.js.map +0 -1
  521. package/lib/components/viewer2d/vertex.js +0 -76
  522. package/lib/components/viewer2d/vertex.js.map +0 -1
  523. package/lib/components/viewer2d/viewer2d.js +0 -1409
  524. package/lib/components/viewer2d/viewer2d.js.map +0 -1
  525. package/lib/components/viewer3d/camera-controls-module/camera-controls.module.js +0 -2598
  526. package/lib/components/viewer3d/camera-controls-module/camera-controls.module.js.map +0 -1
  527. package/lib/components/viewer3d/dcm.js +0 -408
  528. package/lib/components/viewer3d/dcm.js.map +0 -1
  529. package/lib/components/viewer3d/fbm.js +0 -421
  530. package/lib/components/viewer3d/fbm.js.map +0 -1
  531. package/lib/components/viewer3d/front3D.js +0 -76
  532. package/lib/components/viewer3d/front3D.js.map +0 -1
  533. package/lib/components/viewer3d/grid-creator.js +0 -35
  534. package/lib/components/viewer3d/grid-creator.js.map +0 -1
  535. package/lib/components/viewer3d/grids/grid-horizontal-streak.js +0 -45
  536. package/lib/components/viewer3d/grids/grid-horizontal-streak.js.map +0 -1
  537. package/lib/components/viewer3d/grids/grid-streak.js +0 -36
  538. package/lib/components/viewer3d/grids/grid-streak.js.map +0 -1
  539. package/lib/components/viewer3d/grids/grid-vertical-streak.js +0 -45
  540. package/lib/components/viewer3d/grids/grid-vertical-streak.js.map +0 -1
  541. package/lib/components/viewer3d/libs/first-person-controls.js +0 -75
  542. package/lib/components/viewer3d/libs/first-person-controls.js.map +0 -1
  543. package/lib/components/viewer3d/libs/helvetiker_regular.typeface.js +0 -1288
  544. package/lib/components/viewer3d/libs/helvetiker_regular.typeface.js.map +0 -1
  545. package/lib/components/viewer3d/libs/mtl-loader.js +0 -360
  546. package/lib/components/viewer3d/libs/mtl-loader.js.map +0 -1
  547. package/lib/components/viewer3d/libs/obj-loader.js +0 -465
  548. package/lib/components/viewer3d/libs/obj-loader.js.map +0 -1
  549. package/lib/components/viewer3d/libs/orbit-controls.js +0 -701
  550. package/lib/components/viewer3d/libs/orbit-controls.js.map +0 -1
  551. package/lib/components/viewer3d/libs/pointer-lock-controls.js +0 -48
  552. package/lib/components/viewer3d/libs/pointer-lock-controls.js.map +0 -1
  553. package/lib/components/viewer3d/lrm.js +0 -312
  554. package/lib/components/viewer3d/lrm.js.map +0 -1
  555. package/lib/components/viewer3d/model.js +0 -715
  556. package/lib/components/viewer3d/model.js.map +0 -1
  557. package/lib/components/viewer3d/pointer-lock-navigation.js +0 -123
  558. package/lib/components/viewer3d/pointer-lock-navigation.js.map +0 -1
  559. package/lib/components/viewer3d/ruler-utils/itemRect.js +0 -69
  560. package/lib/components/viewer3d/ruler-utils/itemRect.js.map +0 -1
  561. package/lib/components/viewer3d/ruler-utils/layer3D.js +0 -503
  562. package/lib/components/viewer3d/ruler-utils/layer3D.js.map +0 -1
  563. package/lib/components/viewer3d/ruler-utils/ruler3D.js +0 -235
  564. package/lib/components/viewer3d/ruler-utils/ruler3D.js.map +0 -1
  565. package/lib/components/viewer3d/ruler-utils/scene3D.js +0 -70
  566. package/lib/components/viewer3d/ruler-utils/scene3D.js.map +0 -1
  567. package/lib/components/viewer3d/ruler-utils/state3D.js +0 -26
  568. package/lib/components/viewer3d/ruler-utils/state3D.js.map +0 -1
  569. package/lib/components/viewer3d/scene-creator.js +0 -3641
  570. package/lib/components/viewer3d/scene-creator.js.map +0 -1
  571. package/lib/components/viewer3d/three-memory-cleaner.js +0 -61
  572. package/lib/components/viewer3d/three-memory-cleaner.js.map +0 -1
  573. package/lib/components/viewer3d/viewer3d-first-person.js +0 -321
  574. package/lib/components/viewer3d/viewer3d-first-person.js.map +0 -1
  575. package/lib/components/viewer3d/viewer3d.js +0 -2508
  576. package/lib/components/viewer3d/viewer3d.js.map +0 -1
  577. package/lib/components/wizardstep/button/styles.js +0 -67
  578. package/lib/components/wizardstep/button/styles.js.map +0 -1
  579. package/lib/components/wizardstep/export.js +0 -12
  580. package/lib/components/wizardstep/export.js.map +0 -1
  581. package/lib/components/wizardstep/index.js +0 -978
  582. package/lib/components/wizardstep/index.js.map +0 -1
  583. package/lib/components/wizardstep/styles.js +0 -68
  584. package/lib/components/wizardstep/styles.js.map +0 -1
  585. package/lib/components/wizardstep/wizardstep-content-button.js +0 -224
  586. package/lib/components/wizardstep/wizardstep-content-button.js.map +0 -1
  587. package/lib/components/wizardstep/wizardstep-toggle-button.js +0 -133
  588. package/lib/components/wizardstep/wizardstep-toggle-button.js.map +0 -1
  589. package/lib/constants.js +0 -646
  590. package/lib/constants.js.map +0 -1
  591. package/lib/hooks/useCheckCart.js +0 -60
  592. package/lib/hooks/useCheckCart.js.map +0 -1
  593. package/lib/hooks/useGetPricesBySku.js +0 -81
  594. package/lib/hooks/useGetPricesBySku.js.map +0 -1
  595. package/lib/hooks/useValidateToken.js +0 -207
  596. package/lib/hooks/useValidateToken.js.map +0 -1
  597. package/lib/index.js +0 -102
  598. package/lib/index.js.map +0 -1
  599. package/lib/models.js +0 -518
  600. package/lib/models.js.map +0 -1
  601. package/lib/plugins/SVGLoader.js +0 -1418
  602. package/lib/plugins/SVGLoader.js.map +0 -1
  603. package/lib/plugins/autosave.js +0 -40
  604. package/lib/plugins/autosave.js.map +0 -1
  605. package/lib/plugins/console-debugger.js +0 -45
  606. package/lib/plugins/console-debugger.js.map +0 -1
  607. package/lib/plugins/export.js +0 -34
  608. package/lib/plugins/export.js.map +0 -1
  609. package/lib/plugins/keyboard.js +0 -108
  610. package/lib/plugins/keyboard.js.map +0 -1
  611. package/lib/reducers/areas-reducer.js +0 -19
  612. package/lib/reducers/areas-reducer.js.map +0 -1
  613. package/lib/reducers/export.js +0 -98
  614. package/lib/reducers/export.js.map +0 -1
  615. package/lib/reducers/groups-reducer.js +0 -45
  616. package/lib/reducers/groups-reducer.js.map +0 -1
  617. package/lib/reducers/holes-reducer.js +0 -69
  618. package/lib/reducers/holes-reducer.js.map +0 -1
  619. package/lib/reducers/items-reducer.js +0 -147
  620. package/lib/reducers/items-reducer.js.map +0 -1
  621. package/lib/reducers/lines-reducer.js +0 -52
  622. package/lib/reducers/lines-reducer.js.map +0 -1
  623. package/lib/reducers/project-reducer.js +0 -136
  624. package/lib/reducers/project-reducer.js.map +0 -1
  625. package/lib/reducers/reducer.js +0 -27
  626. package/lib/reducers/reducer.js.map +0 -1
  627. package/lib/reducers/scene-reducer.js +0 -35
  628. package/lib/reducers/scene-reducer.js.map +0 -1
  629. package/lib/reducers/user-reducer.js +0 -48
  630. package/lib/reducers/user-reducer.js.map +0 -1
  631. package/lib/reducers/vertices-reducer.js +0 -26
  632. package/lib/reducers/vertices-reducer.js.map +0 -1
  633. package/lib/reducers/viewer2d-reducer.js +0 -83
  634. package/lib/reducers/viewer2d-reducer.js.map +0 -1
  635. package/lib/reducers/viewer3d-reducer.js +0 -64
  636. package/lib/reducers/viewer3d-reducer.js.map +0 -1
  637. package/lib/shared-style.js +0 -73
  638. package/lib/shared-style.js.map +0 -1
  639. package/lib/styles/export.js +0 -14
  640. package/lib/styles/export.js.map +0 -1
  641. package/lib/translator/en.js +0 -111
  642. package/lib/translator/en.js.map +0 -1
  643. package/lib/translator/it.js +0 -86
  644. package/lib/translator/it.js.map +0 -1
  645. package/lib/translator/ru.js +0 -86
  646. package/lib/translator/ru.js.map +0 -1
  647. package/lib/translator/translator.js +0 -91
  648. package/lib/translator/translator.js.map +0 -1
  649. package/lib/utils/browser.js +0 -41
  650. package/lib/utils/browser.js.map +0 -1
  651. package/lib/utils/email-validator.js +0 -11
  652. package/lib/utils/email-validator.js.map +0 -1
  653. package/lib/utils/export.js +0 -57
  654. package/lib/utils/export.js.map +0 -1
  655. package/lib/utils/geometry.js +0 -2329
  656. package/lib/utils/geometry.js.map +0 -1
  657. package/lib/utils/get-edges-of-subgraphs.js +0 -29
  658. package/lib/utils/get-edges-of-subgraphs.js.map +0 -1
  659. package/lib/utils/graph-cycles.js +0 -241
  660. package/lib/utils/graph-cycles.js.map +0 -1
  661. package/lib/utils/graph-inner-cycles.js +0 -55
  662. package/lib/utils/graph-inner-cycles.js.map +0 -1
  663. package/lib/utils/graph.js +0 -152
  664. package/lib/utils/graph.js.map +0 -1
  665. package/lib/utils/helper.js +0 -360
  666. package/lib/utils/helper.js.map +0 -1
  667. package/lib/utils/history.js +0 -37
  668. package/lib/utils/history.js.map +0 -1
  669. package/lib/utils/id-broker.js +0 -26
  670. package/lib/utils/id-broker.js.map +0 -1
  671. package/lib/utils/logger.js +0 -15
  672. package/lib/utils/logger.js.map +0 -1
  673. package/lib/utils/math.js +0 -58
  674. package/lib/utils/math.js.map +0 -1
  675. package/lib/utils/molding.js +0 -864
  676. package/lib/utils/molding.js.map +0 -1
  677. package/lib/utils/name-generator.js +0 -24
  678. package/lib/utils/name-generator.js.map +0 -1
  679. package/lib/utils/objects-utils.js +0 -61
  680. package/lib/utils/objects-utils.js.map +0 -1
  681. package/lib/utils/phone-validator.js +0 -11
  682. package/lib/utils/phone-validator.js.map +0 -1
  683. package/lib/utils/process-black-list.js +0 -25
  684. package/lib/utils/process-black-list.js.map +0 -1
  685. package/lib/utils/react-if.js +0 -25
  686. package/lib/utils/react-if.js.map +0 -1
  687. package/lib/utils/snap-scene.js +0 -106
  688. package/lib/utils/snap-scene.js.map +0 -1
  689. package/lib/utils/snap.js +0 -250
  690. package/lib/utils/snap.js.map +0 -1
  691. package/lib/utils/threeCSG.es6.js +0 -504
  692. package/lib/utils/threeCSG.es6.js.map +0 -1
  693. package/lib/version.js +0 -8
  694. package/lib/version.js.map +0 -1
@@ -1,1418 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.SVGLoader = void 0;
7
- var _three = require("three");
8
- var SVGLoader = exports.SVGLoader = function SVGLoader(manager) {
9
- _three.Loader.call(this, manager);
10
-
11
- // Default dots per inch
12
- this.defaultDPI = 90;
13
-
14
- // Accepted units: 'mm', 'cm', 'in', 'pt', 'pc', 'px'
15
- this.defaultUnit = 'px';
16
- };
17
- SVGLoader.prototype = Object.assign(Object.create(_three.Loader.prototype), {
18
- constructor: SVGLoader,
19
- load: function load(url, onLoad, onProgress, onError) {
20
- var scope = this;
21
- var loader = new _three.FileLoader(scope.manager);
22
- loader.setPath(scope.path);
23
- loader.setRequestHeader(scope.requestHeader);
24
- loader.setWithCredentials(scope.withCredentials);
25
- loader.load(url, function (text) {
26
- try {
27
- onLoad(scope.parse(text));
28
- } catch (e) {
29
- if (onError) {
30
- onError(e);
31
- } else {
32
- console.error(e);
33
- }
34
- scope.manager.itemError(url);
35
- }
36
- }, onProgress, onError);
37
- },
38
- parse: function parse(text) {
39
- var scope = this;
40
- function parseNode(node, style) {
41
- if (node.nodeType !== 1) return;
42
- var transform = getNodeTransform(node);
43
- var traverseChildNodes = true;
44
- var path = null;
45
- switch (node.nodeName) {
46
- case 'svg':
47
- break;
48
- case 'style':
49
- parseCSSStylesheet(node);
50
- break;
51
- case 'g':
52
- style = parseStyle(node, style);
53
- break;
54
- case 'path':
55
- style = parseStyle(node, style);
56
- if (node.hasAttribute('d')) path = parsePathNode(node);
57
- break;
58
- case 'rect':
59
- style = parseStyle(node, style);
60
- path = parseRectNode(node);
61
- break;
62
- case 'polygon':
63
- style = parseStyle(node, style);
64
- path = parsePolygonNode(node);
65
- break;
66
- case 'polyline':
67
- style = parseStyle(node, style);
68
- path = parsePolylineNode(node);
69
- break;
70
- case 'circle':
71
- style = parseStyle(node, style);
72
- path = parseCircleNode(node);
73
- break;
74
- case 'ellipse':
75
- style = parseStyle(node, style);
76
- path = parseEllipseNode(node);
77
- break;
78
- case 'line':
79
- style = parseStyle(node, style);
80
- path = parseLineNode(node);
81
- break;
82
- case 'defs':
83
- traverseChildNodes = false;
84
- break;
85
- case 'use':
86
- style = parseStyle(node, style);
87
- var usedNodeId = node.href.baseVal.substring(1);
88
- var usedNode = node.viewportElement.getElementById(usedNodeId);
89
- if (usedNode) {
90
- parseNode(usedNode, style);
91
- } else {
92
- console.warn("SVGLoader: 'use node' references non-existent node id: " + usedNodeId);
93
- }
94
- break;
95
- default:
96
- // console.log( node );
97
- }
98
- if (path) {
99
- if (style.fill !== undefined && style.fill !== 'none') {
100
- path.color.setStyle(style.fill);
101
- }
102
- transformPath(path, currentTransform);
103
- paths.push(path);
104
- path.userData = {
105
- node: node,
106
- style: style
107
- };
108
- }
109
- if (traverseChildNodes) {
110
- var nodes = node.childNodes;
111
- for (var i = 0; i < nodes.length; i++) {
112
- parseNode(nodes[i], style);
113
- }
114
- }
115
- if (transform) {
116
- transformStack.pop();
117
- if (transformStack.length > 0) {
118
- currentTransform.copy(transformStack[transformStack.length - 1]);
119
- } else {
120
- currentTransform.identity();
121
- }
122
- }
123
- }
124
- function parsePathNode(node) {
125
- var path = new _three.ShapePath();
126
- var point = new _three.Vector2();
127
- var control = new _three.Vector2();
128
- var firstPoint = new _three.Vector2();
129
- var isFirstPoint = true;
130
- var doSetFirstPoint = false;
131
- var d = node.getAttribute('d');
132
-
133
- // console.log( d );
134
-
135
- var commands = d.match(/[a-df-z][^a-df-z]*/gi);
136
- for (var i = 0, l = commands.length; i < l; i++) {
137
- var command = commands[i];
138
- var type = command.charAt(0);
139
- var data = command.substr(1).trim();
140
- if (isFirstPoint === true) {
141
- doSetFirstPoint = true;
142
- isFirstPoint = false;
143
- }
144
- switch (type) {
145
- case 'M':
146
- var numbers = parseFloats(data);
147
- for (var j = 0, jl = numbers.length; j < jl; j += 2) {
148
- point.x = numbers[j + 0];
149
- point.y = numbers[j + 1];
150
- control.x = point.x;
151
- control.y = point.y;
152
- if (j === 0) {
153
- path.moveTo(point.x, point.y);
154
- } else {
155
- path.lineTo(point.x, point.y);
156
- }
157
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
158
- }
159
- break;
160
- case 'H':
161
- var numbers = parseFloats(data);
162
- for (var j = 0, jl = numbers.length; j < jl; j++) {
163
- point.x = numbers[j];
164
- control.x = point.x;
165
- control.y = point.y;
166
- path.lineTo(point.x, point.y);
167
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
168
- }
169
- break;
170
- case 'V':
171
- var numbers = parseFloats(data);
172
- for (var j = 0, jl = numbers.length; j < jl; j++) {
173
- point.y = numbers[j];
174
- control.x = point.x;
175
- control.y = point.y;
176
- path.lineTo(point.x, point.y);
177
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
178
- }
179
- break;
180
- case 'L':
181
- var numbers = parseFloats(data);
182
- for (var j = 0, jl = numbers.length; j < jl; j += 2) {
183
- point.x = numbers[j + 0];
184
- point.y = numbers[j + 1];
185
- control.x = point.x;
186
- control.y = point.y;
187
- path.lineTo(point.x, point.y);
188
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
189
- }
190
- break;
191
- case 'C':
192
- var numbers = parseFloats(data);
193
- for (var j = 0, jl = numbers.length; j < jl; j += 6) {
194
- path.bezierCurveTo(numbers[j + 0], numbers[j + 1], numbers[j + 2], numbers[j + 3], numbers[j + 4], numbers[j + 5]);
195
- control.x = numbers[j + 2];
196
- control.y = numbers[j + 3];
197
- point.x = numbers[j + 4];
198
- point.y = numbers[j + 5];
199
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
200
- }
201
- break;
202
- case 'S':
203
- var numbers = parseFloats(data);
204
- for (var j = 0, jl = numbers.length; j < jl; j += 4) {
205
- path.bezierCurveTo(getReflection(point.x, control.x), getReflection(point.y, control.y), numbers[j + 0], numbers[j + 1], numbers[j + 2], numbers[j + 3]);
206
- control.x = numbers[j + 0];
207
- control.y = numbers[j + 1];
208
- point.x = numbers[j + 2];
209
- point.y = numbers[j + 3];
210
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
211
- }
212
- break;
213
- case 'Q':
214
- var numbers = parseFloats(data);
215
- for (var j = 0, jl = numbers.length; j < jl; j += 4) {
216
- path.quadraticCurveTo(numbers[j + 0], numbers[j + 1], numbers[j + 2], numbers[j + 3]);
217
- control.x = numbers[j + 0];
218
- control.y = numbers[j + 1];
219
- point.x = numbers[j + 2];
220
- point.y = numbers[j + 3];
221
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
222
- }
223
- break;
224
- case 'T':
225
- var numbers = parseFloats(data);
226
- for (var j = 0, jl = numbers.length; j < jl; j += 2) {
227
- var rx = getReflection(point.x, control.x);
228
- var ry = getReflection(point.y, control.y);
229
- path.quadraticCurveTo(rx, ry, numbers[j + 0], numbers[j + 1]);
230
- control.x = rx;
231
- control.y = ry;
232
- point.x = numbers[j + 0];
233
- point.y = numbers[j + 1];
234
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
235
- }
236
- break;
237
- case 'A':
238
- var numbers = parseFloats(data);
239
- for (var j = 0, jl = numbers.length; j < jl; j += 7) {
240
- var start = point.clone();
241
- point.x = numbers[j + 5];
242
- point.y = numbers[j + 6];
243
- control.x = point.x;
244
- control.y = point.y;
245
- parseArcCommand(path, numbers[j], numbers[j + 1], numbers[j + 2], numbers[j + 3], numbers[j + 4], start, point);
246
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
247
- }
248
- break;
249
- case 'm':
250
- var numbers = parseFloats(data);
251
- for (var j = 0, jl = numbers.length; j < jl; j += 2) {
252
- point.x += numbers[j + 0];
253
- point.y += numbers[j + 1];
254
- control.x = point.x;
255
- control.y = point.y;
256
- if (j === 0) {
257
- path.moveTo(point.x, point.y);
258
- } else {
259
- path.lineTo(point.x, point.y);
260
- }
261
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
262
- }
263
- break;
264
- case 'h':
265
- var numbers = parseFloats(data);
266
- for (var j = 0, jl = numbers.length; j < jl; j++) {
267
- point.x += numbers[j];
268
- control.x = point.x;
269
- control.y = point.y;
270
- path.lineTo(point.x, point.y);
271
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
272
- }
273
- break;
274
- case 'v':
275
- var numbers = parseFloats(data);
276
- for (var j = 0, jl = numbers.length; j < jl; j++) {
277
- point.y += numbers[j];
278
- control.x = point.x;
279
- control.y = point.y;
280
- path.lineTo(point.x, point.y);
281
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
282
- }
283
- break;
284
- case 'l':
285
- var numbers = parseFloats(data);
286
- for (var j = 0, jl = numbers.length; j < jl; j += 2) {
287
- point.x += numbers[j + 0];
288
- point.y += numbers[j + 1];
289
- control.x = point.x;
290
- control.y = point.y;
291
- path.lineTo(point.x, point.y);
292
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
293
- }
294
- break;
295
- case 'c':
296
- var numbers = parseFloats(data);
297
- for (var j = 0, jl = numbers.length; j < jl; j += 6) {
298
- path.bezierCurveTo(point.x + numbers[j + 0], point.y + numbers[j + 1], point.x + numbers[j + 2], point.y + numbers[j + 3], point.x + numbers[j + 4], point.y + numbers[j + 5]);
299
- control.x = point.x + numbers[j + 2];
300
- control.y = point.y + numbers[j + 3];
301
- point.x += numbers[j + 4];
302
- point.y += numbers[j + 5];
303
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
304
- }
305
- break;
306
- case 's':
307
- var numbers = parseFloats(data);
308
- for (var j = 0, jl = numbers.length; j < jl; j += 4) {
309
- path.bezierCurveTo(getReflection(point.x, control.x), getReflection(point.y, control.y), point.x + numbers[j + 0], point.y + numbers[j + 1], point.x + numbers[j + 2], point.y + numbers[j + 3]);
310
- control.x = point.x + numbers[j + 0];
311
- control.y = point.y + numbers[j + 1];
312
- point.x += numbers[j + 2];
313
- point.y += numbers[j + 3];
314
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
315
- }
316
- break;
317
- case 'q':
318
- var numbers = parseFloats(data);
319
- for (var j = 0, jl = numbers.length; j < jl; j += 4) {
320
- path.quadraticCurveTo(point.x + numbers[j + 0], point.y + numbers[j + 1], point.x + numbers[j + 2], point.y + numbers[j + 3]);
321
- control.x = point.x + numbers[j + 0];
322
- control.y = point.y + numbers[j + 1];
323
- point.x += numbers[j + 2];
324
- point.y += numbers[j + 3];
325
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
326
- }
327
- break;
328
- case 't':
329
- var numbers = parseFloats(data);
330
- for (var j = 0, jl = numbers.length; j < jl; j += 2) {
331
- var rx = getReflection(point.x, control.x);
332
- var ry = getReflection(point.y, control.y);
333
- path.quadraticCurveTo(rx, ry, point.x + numbers[j + 0], point.y + numbers[j + 1]);
334
- control.x = rx;
335
- control.y = ry;
336
- point.x = point.x + numbers[j + 0];
337
- point.y = point.y + numbers[j + 1];
338
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
339
- }
340
- break;
341
- case 'a':
342
- var numbers = parseFloats(data);
343
- for (var j = 0, jl = numbers.length; j < jl; j += 7) {
344
- var start = point.clone();
345
- point.x += numbers[j + 5];
346
- point.y += numbers[j + 6];
347
- control.x = point.x;
348
- control.y = point.y;
349
- parseArcCommand(path, numbers[j], numbers[j + 1], numbers[j + 2], numbers[j + 3], numbers[j + 4], start, point);
350
- if (j === 0 && doSetFirstPoint === true) firstPoint.copy(point);
351
- }
352
- break;
353
- case 'Z':
354
- case 'z':
355
- path.currentPath.autoClose = true;
356
- if (path.currentPath.curves.length > 0) {
357
- // Reset point to beginning of Path
358
- point.copy(firstPoint);
359
- path.currentPath.currentPoint.copy(point);
360
- isFirstPoint = true;
361
- }
362
- break;
363
- default:
364
- console.warn(command);
365
- }
366
-
367
- // console.log( type, parseFloats( data ), parseFloats( data ).length )
368
-
369
- doSetFirstPoint = false;
370
- }
371
- return path;
372
- }
373
- function parseCSSStylesheet(node) {
374
- if (!node.sheet || !node.sheet.cssRules || !node.sheet.cssRules.length) return;
375
- for (var i = 0; i < node.sheet.cssRules.length; i++) {
376
- var stylesheet = node.sheet.cssRules[i];
377
- if (stylesheet.type !== 1) continue;
378
- var selectorList = stylesheet.selectorText.split(/,/gm).filter(Boolean).map(function (i) {
379
- return i.trim();
380
- });
381
- for (var j = 0; j < selectorList.length; j++) {
382
- stylesheets[selectorList[j]] = Object.assign(stylesheets[selectorList[j]] || {}, stylesheet.style);
383
- }
384
- }
385
- }
386
-
387
- /**
388
- * https://www.w3.org/TR/SVG/implnote.html#ArcImplementationNotes
389
- * https://mortoray.com/2017/02/16/rendering-an-svg-elliptical-arc-as-bezier-curves/ Appendix: Endpoint to center arc conversion
390
- * From
391
- * rx ry x-axis-rotation large-arc-flag sweep-flag x y
392
- * To
393
- * aX, aY, xRadius, yRadius, aStartAngle, aEndAngle, aClockwise, aRotation
394
- */
395
-
396
- function parseArcCommand(path, rx, ry, x_axis_rotation, large_arc_flag, sweep_flag, start, end) {
397
- x_axis_rotation = x_axis_rotation * Math.PI / 180;
398
-
399
- // Ensure radii are positive
400
- rx = Math.abs(rx);
401
- ry = Math.abs(ry);
402
-
403
- // Compute (x1', y1')
404
- var dx2 = (start.x - end.x) / 2.0;
405
- var dy2 = (start.y - end.y) / 2.0;
406
- var x1p = Math.cos(x_axis_rotation) * dx2 + Math.sin(x_axis_rotation) * dy2;
407
- var y1p = -Math.sin(x_axis_rotation) * dx2 + Math.cos(x_axis_rotation) * dy2;
408
-
409
- // Compute (cx', cy')
410
- var rxs = rx * rx;
411
- var rys = ry * ry;
412
- var x1ps = x1p * x1p;
413
- var y1ps = y1p * y1p;
414
-
415
- // Ensure radii are large enough
416
- var cr = x1ps / rxs + y1ps / rys;
417
- if (cr > 1) {
418
- // scale up rx,ry equally so cr == 1
419
- var s = Math.sqrt(cr);
420
- rx = s * rx;
421
- ry = s * ry;
422
- rxs = rx * rx;
423
- rys = ry * ry;
424
- }
425
- var dq = rxs * y1ps + rys * x1ps;
426
- var pq = (rxs * rys - dq) / dq;
427
- var q = Math.sqrt(Math.max(0, pq));
428
- if (large_arc_flag === sweep_flag) q = -q;
429
- var cxp = q * rx * y1p / ry;
430
- var cyp = -q * ry * x1p / rx;
431
-
432
- // Step 3: Compute (cx, cy) from (cx', cy')
433
- var cx = Math.cos(x_axis_rotation) * cxp - Math.sin(x_axis_rotation) * cyp + (start.x + end.x) / 2;
434
- var cy = Math.sin(x_axis_rotation) * cxp + Math.cos(x_axis_rotation) * cyp + (start.y + end.y) / 2;
435
-
436
- // Step 4: Compute ��1 and ����
437
- var theta = svgAngle(1, 0, (x1p - cxp) / rx, (y1p - cyp) / ry);
438
- var delta = svgAngle((x1p - cxp) / rx, (y1p - cyp) / ry, (-x1p - cxp) / rx, (-y1p - cyp) / ry) % (Math.PI * 2);
439
- path.currentPath.absellipse(cx, cy, rx, ry, theta, theta + delta, sweep_flag === 0, x_axis_rotation);
440
- }
441
- function svgAngle(ux, uy, vx, vy) {
442
- var dot = ux * vx + uy * vy;
443
- var len = Math.sqrt(ux * ux + uy * uy) * Math.sqrt(vx * vx + vy * vy);
444
- var ang = Math.acos(Math.max(-1, Math.min(1, dot / len))); // floating point precision, slightly over values appear
445
- if (ux * vy - uy * vx < 0) ang = -ang;
446
- return ang;
447
- }
448
-
449
- /*
450
- * According to https://www.w3.org/TR/SVG/shapes.html#RectElementRXAttribute
451
- * rounded corner should be rendered to elliptical arc, but bezier curve does the job well enough
452
- */
453
- function parseRectNode(node) {
454
- var x = parseFloatWithUnits(node.getAttribute('x') || 0);
455
- var y = parseFloatWithUnits(node.getAttribute('y') || 0);
456
- var rx = parseFloatWithUnits(node.getAttribute('rx') || 0);
457
- var ry = parseFloatWithUnits(node.getAttribute('ry') || 0);
458
- var w = parseFloatWithUnits(node.getAttribute('width'));
459
- var h = parseFloatWithUnits(node.getAttribute('height'));
460
- var path = new _three.ShapePath();
461
- path.moveTo(x + 2 * rx, y);
462
- path.lineTo(x + w - 2 * rx, y);
463
- if (rx !== 0 || ry !== 0) path.bezierCurveTo(x + w, y, x + w, y, x + w, y + 2 * ry);
464
- path.lineTo(x + w, y + h - 2 * ry);
465
- if (rx !== 0 || ry !== 0) path.bezierCurveTo(x + w, y + h, x + w, y + h, x + w - 2 * rx, y + h);
466
- path.lineTo(x + 2 * rx, y + h);
467
- if (rx !== 0 || ry !== 0) {
468
- path.bezierCurveTo(x, y + h, x, y + h, x, y + h - 2 * ry);
469
- }
470
- path.lineTo(x, y + 2 * ry);
471
- if (rx !== 0 || ry !== 0) {
472
- path.bezierCurveTo(x, y, x, y, x + 2 * rx, y);
473
- }
474
- return path;
475
- }
476
- function parsePolygonNode(node) {
477
- function iterator(match, a, b) {
478
- var x = parseFloatWithUnits(a);
479
- var y = parseFloatWithUnits(b);
480
- if (index === 0) {
481
- path.moveTo(x, y);
482
- } else {
483
- path.lineTo(x, y);
484
- }
485
- index++;
486
- }
487
- var regex = /(-?[\d\.?]+)[,|\s](-?[\d\.?]+)/g;
488
- var path = new _three.ShapePath();
489
- var index = 0;
490
- node.getAttribute('points').replace(regex, iterator);
491
- path.currentPath.autoClose = true;
492
- return path;
493
- }
494
- function parsePolylineNode(node) {
495
- function iterator(match, a, b) {
496
- var x = parseFloatWithUnits(a);
497
- var y = parseFloatWithUnits(b);
498
- if (index === 0) {
499
- path.moveTo(x, y);
500
- } else {
501
- path.lineTo(x, y);
502
- }
503
- index++;
504
- }
505
- var regex = /(-?[\d\.?]+)[,|\s](-?[\d\.?]+)/g;
506
- var path = new _three.ShapePath();
507
- var index = 0;
508
- node.getAttribute('points').replace(regex, iterator);
509
- path.currentPath.autoClose = false;
510
- return path;
511
- }
512
- function parseCircleNode(node) {
513
- var x = parseFloatWithUnits(node.getAttribute('cx'));
514
- var y = parseFloatWithUnits(node.getAttribute('cy'));
515
- var r = parseFloatWithUnits(node.getAttribute('r'));
516
- var subpath = new _three.Path();
517
- subpath.absarc(x, y, r, 0, Math.PI * 2);
518
- var path = new _three.ShapePath();
519
- path.subPaths.push(subpath);
520
- return path;
521
- }
522
- function parseEllipseNode(node) {
523
- var x = parseFloatWithUnits(node.getAttribute('cx'));
524
- var y = parseFloatWithUnits(node.getAttribute('cy'));
525
- var rx = parseFloatWithUnits(node.getAttribute('rx'));
526
- var ry = parseFloatWithUnits(node.getAttribute('ry'));
527
- var subpath = new _three.Path();
528
- subpath.absellipse(x, y, rx, ry, 0, Math.PI * 2);
529
- var path = new _three.ShapePath();
530
- path.subPaths.push(subpath);
531
- return path;
532
- }
533
- function parseLineNode(node) {
534
- var x1 = parseFloatWithUnits(node.getAttribute('x1'));
535
- var y1 = parseFloatWithUnits(node.getAttribute('y1'));
536
- var x2 = parseFloatWithUnits(node.getAttribute('x2'));
537
- var y2 = parseFloatWithUnits(node.getAttribute('y2'));
538
- var path = new _three.ShapePath();
539
- path.moveTo(x1, y1);
540
- path.lineTo(x2, y2);
541
- path.currentPath.autoClose = false;
542
- return path;
543
- }
544
-
545
- //
546
-
547
- function parseStyle(node, style) {
548
- style = Object.assign({}, style); // clone style
549
-
550
- var stylesheetStyles = {};
551
- if (node.hasAttribute('class')) {
552
- var classSelectors = node.getAttribute('class').split(/\s/).filter(Boolean).map(function (i) {
553
- return i.trim();
554
- });
555
- for (var i = 0; i < classSelectors.length; i++) {
556
- stylesheetStyles = Object.assign(stylesheetStyles, stylesheets['.' + classSelectors[i]]);
557
- }
558
- }
559
- if (node.hasAttribute('id')) {
560
- stylesheetStyles = Object.assign(stylesheetStyles, stylesheets['#' + node.getAttribute('id')]);
561
- }
562
- function addStyle(svgName, jsName, adjustFunction) {
563
- if (adjustFunction === undefined) adjustFunction = function copy(v) {
564
- if (v.startsWith('url')) console.warn('SVGLoader: url access in attributes is not implemented.');
565
- return v;
566
- };
567
- if (node.hasAttribute(svgName)) style[jsName] = adjustFunction(node.getAttribute(svgName));
568
- if (stylesheetStyles[svgName]) style[jsName] = adjustFunction(stylesheetStyles[svgName]);
569
- if (node.style && node.style[svgName] !== '') style[jsName] = adjustFunction(node.style[svgName]);
570
- }
571
- function clamp(v) {
572
- return Math.max(0, Math.min(1, parseFloatWithUnits(v)));
573
- }
574
- function positive(v) {
575
- return Math.max(0, parseFloatWithUnits(v));
576
- }
577
- addStyle('fill', 'fill');
578
- addStyle('fill-opacity', 'fillOpacity', clamp);
579
- addStyle('opacity', 'opacity', clamp);
580
- addStyle('stroke', 'stroke');
581
- addStyle('stroke-opacity', 'strokeOpacity', clamp);
582
- addStyle('stroke-width', 'strokeWidth', positive);
583
- addStyle('stroke-linejoin', 'strokeLineJoin');
584
- addStyle('stroke-linecap', 'strokeLineCap');
585
- addStyle('stroke-miterlimit', 'strokeMiterLimit', positive);
586
- addStyle('visibility', 'visibility');
587
- return style;
588
- }
589
-
590
- // http://www.w3.org/TR/SVG11/implnote.html#PathElementImplementationNotes
591
-
592
- function getReflection(a, b) {
593
- return a - (b - a);
594
- }
595
- function parseFloats(string) {
596
- var array = string.split(/[\s,]+|(?=\s?[+\-])/);
597
- for (var i = 0; i < array.length; i++) {
598
- var number = array[i];
599
-
600
- // Handle values like 48.6037.7.8
601
- // TODO Find a regex for this
602
-
603
- if (number.indexOf('.') !== number.lastIndexOf('.')) {
604
- var split = number.split('.');
605
- for (var s = 2; s < split.length; s++) {
606
- array.splice(i + s - 1, 0, '0.' + split[s]);
607
- }
608
- }
609
- array[i] = parseFloatWithUnits(number);
610
- }
611
- return array;
612
- }
613
-
614
- // Units
615
-
616
- var units = ['mm', 'cm', 'in', 'pt', 'pc', 'px'];
617
-
618
- // Conversion: [ fromUnit ][ toUnit ] (-1 means dpi dependent)
619
- var unitConversion = {
620
- mm: {
621
- mm: 1,
622
- cm: 0.1,
623
- "in": 1 / 25.4,
624
- pt: 72 / 25.4,
625
- pc: 6 / 25.4,
626
- px: -1
627
- },
628
- cm: {
629
- mm: 10,
630
- cm: 1,
631
- "in": 1 / 2.54,
632
- pt: 72 / 2.54,
633
- pc: 6 / 2.54,
634
- px: -1
635
- },
636
- "in": {
637
- mm: 25.4,
638
- cm: 2.54,
639
- "in": 1,
640
- pt: 72,
641
- pc: 6,
642
- px: -1
643
- },
644
- pt: {
645
- mm: 25.4 / 72,
646
- cm: 2.54 / 72,
647
- "in": 1 / 72,
648
- pt: 1,
649
- pc: 6 / 72,
650
- px: -1
651
- },
652
- pc: {
653
- mm: 25.4 / 6,
654
- cm: 2.54 / 6,
655
- "in": 1 / 6,
656
- pt: 72 / 6,
657
- pc: 1,
658
- px: -1
659
- },
660
- px: {
661
- px: 1
662
- }
663
- };
664
- function parseFloatWithUnits(string) {
665
- var theUnit = 'px';
666
- if (typeof string === 'string' || string instanceof String) {
667
- for (var i = 0, n = units.length; i < n; i++) {
668
- var u = units[i];
669
- if (string.endsWith(u)) {
670
- theUnit = u;
671
- string = string.substring(0, string.length - u.length);
672
- break;
673
- }
674
- }
675
- }
676
- var scale = undefined;
677
- if (theUnit === 'px' && scope.defaultUnit !== 'px') {
678
- // Conversion scale from pixels to inches, then to default units
679
-
680
- scale = unitConversion['in'][scope.defaultUnit] / scope.defaultDPI;
681
- } else {
682
- scale = unitConversion[theUnit][scope.defaultUnit];
683
- if (scale < 0) {
684
- // Conversion scale to pixels
685
-
686
- scale = unitConversion[theUnit]['in'] * scope.defaultDPI;
687
- }
688
- }
689
- return scale * parseFloat(string);
690
- }
691
-
692
- // Transforms
693
-
694
- function getNodeTransform(node) {
695
- if (!(node.hasAttribute('transform') || node.nodeName === 'use' && (node.hasAttribute('x') || node.hasAttribute('y')))) {
696
- return null;
697
- }
698
- var transform = parseNodeTransform(node);
699
- if (transformStack.length > 0) {
700
- transform.premultiply(transformStack[transformStack.length - 1]);
701
- }
702
- currentTransform.copy(transform);
703
- transformStack.push(transform);
704
- return transform;
705
- }
706
- function parseNodeTransform(node) {
707
- var transform = new _three.Matrix3();
708
- var currentTransform = tempTransform0;
709
- if (node.nodeName === 'use' && (node.hasAttribute('x') || node.hasAttribute('y'))) {
710
- var tx = parseFloatWithUnits(node.getAttribute('x'));
711
- var ty = parseFloatWithUnits(node.getAttribute('y'));
712
- transform.translate(tx, ty);
713
- }
714
- if (node.hasAttribute('transform')) {
715
- var transformsTexts = node.getAttribute('transform').split(')');
716
- for (var tIndex = transformsTexts.length - 1; tIndex >= 0; tIndex--) {
717
- var transformText = transformsTexts[tIndex].trim();
718
- if (transformText === '') continue;
719
- var openParPos = transformText.indexOf('(');
720
- var closeParPos = transformText.length;
721
- if (openParPos > 0 && openParPos < closeParPos) {
722
- var transformType = transformText.substr(0, openParPos);
723
- var array = parseFloats(transformText.substr(openParPos + 1, closeParPos - openParPos - 1));
724
- currentTransform.identity();
725
- switch (transformType) {
726
- case 'translate':
727
- if (array.length >= 1) {
728
- var tx = array[0];
729
- var ty = tx;
730
- if (array.length >= 2) {
731
- ty = array[1];
732
- }
733
- currentTransform.translate(tx, ty);
734
- }
735
- break;
736
- case 'rotate':
737
- if (array.length >= 1) {
738
- var angle = 0;
739
- var cx = 0;
740
- var cy = 0;
741
-
742
- // Angle
743
- angle = -array[0] * Math.PI / 180;
744
- if (array.length >= 3) {
745
- // Center x, y
746
- cx = array[1];
747
- cy = array[2];
748
- }
749
-
750
- // Rotate around center (cx, cy)
751
- tempTransform1.identity().translate(-cx, -cy);
752
- tempTransform2.identity().rotate(angle);
753
- tempTransform3.multiplyMatrices(tempTransform2, tempTransform1);
754
- tempTransform1.identity().translate(cx, cy);
755
- currentTransform.multiplyMatrices(tempTransform1, tempTransform3);
756
- }
757
- break;
758
- case 'scale':
759
- if (array.length >= 1) {
760
- var scaleX = array[0];
761
- var scaleY = scaleX;
762
- if (array.length >= 2) {
763
- scaleY = array[1];
764
- }
765
- currentTransform.scale(scaleX, scaleY);
766
- }
767
- break;
768
- case 'skewX':
769
- if (array.length === 1) {
770
- currentTransform.set(1, Math.tan(array[0] * Math.PI / 180), 0, 0, 1, 0, 0, 0, 1);
771
- }
772
- break;
773
- case 'skewY':
774
- if (array.length === 1) {
775
- currentTransform.set(1, 0, 0, Math.tan(array[0] * Math.PI / 180), 1, 0, 0, 0, 1);
776
- }
777
- break;
778
- case 'matrix':
779
- if (array.length === 6) {
780
- currentTransform.set(array[0], array[2], array[4], array[1], array[3], array[5], 0, 0, 1);
781
- }
782
- break;
783
- }
784
- }
785
- transform.premultiply(currentTransform);
786
- }
787
- }
788
- return transform;
789
- }
790
- function transformPath(path, m) {
791
- function transfVec2(v2) {
792
- tempV3.set(v2.x, v2.y, 1).applyMatrix3(m);
793
- v2.set(tempV3.x, tempV3.y);
794
- }
795
- var isRotated = isTransformRotated(m);
796
- var subPaths = path.subPaths;
797
- for (var i = 0, n = subPaths.length; i < n; i++) {
798
- var subPath = subPaths[i];
799
- var curves = subPath.curves;
800
- for (var j = 0; j < curves.length; j++) {
801
- var curve = curves[j];
802
- if (curve.isLineCurve) {
803
- transfVec2(curve.v1);
804
- transfVec2(curve.v2);
805
- } else if (curve.isCubicBezierCurve) {
806
- transfVec2(curve.v0);
807
- transfVec2(curve.v1);
808
- transfVec2(curve.v2);
809
- transfVec2(curve.v3);
810
- } else if (curve.isQuadraticBezierCurve) {
811
- transfVec2(curve.v0);
812
- transfVec2(curve.v1);
813
- transfVec2(curve.v2);
814
- } else if (curve.isEllipseCurve) {
815
- if (isRotated) {
816
- console.warn('SVGLoader: Elliptic arc or ellipse rotation or skewing is not implemented.');
817
- }
818
- tempV2.set(curve.aX, curve.aY);
819
- transfVec2(tempV2);
820
- curve.aX = tempV2.x;
821
- curve.aY = tempV2.y;
822
- curve.xRadius *= getTransformScaleX(m);
823
- curve.yRadius *= getTransformScaleY(m);
824
- }
825
- }
826
- }
827
- }
828
- function isTransformRotated(m) {
829
- return m.elements[1] !== 0 || m.elements[3] !== 0;
830
- }
831
- function getTransformScaleX(m) {
832
- var te = m.elements;
833
- return Math.sqrt(te[0] * te[0] + te[1] * te[1]);
834
- }
835
- function getTransformScaleY(m) {
836
- var te = m.elements;
837
- return Math.sqrt(te[3] * te[3] + te[4] * te[4]);
838
- }
839
-
840
- //
841
-
842
- var paths = [];
843
- var stylesheets = {};
844
- var transformStack = [];
845
- var tempTransform0 = new _three.Matrix3();
846
- var tempTransform1 = new _three.Matrix3();
847
- var tempTransform2 = new _three.Matrix3();
848
- var tempTransform3 = new _three.Matrix3();
849
- var tempV2 = new _three.Vector2();
850
- var tempV3 = new _three.Vector3();
851
- var currentTransform = new _three.Matrix3();
852
- var xml = new DOMParser().parseFromString(text, 'image/svg+xml'); // application/xml
853
-
854
- parseNode(xml.documentElement, {
855
- fill: '#000',
856
- fillOpacity: 1,
857
- strokeOpacity: 1,
858
- strokeWidth: 1,
859
- strokeLineJoin: 'miter',
860
- strokeLineCap: 'butt',
861
- strokeMiterLimit: 4
862
- });
863
- var data = {
864
- paths: paths,
865
- xml: xml.documentElement
866
- };
867
-
868
- // console.log( paths );
869
- return data;
870
- }
871
- });
872
- SVGLoader.getStrokeStyle = function (width, color, lineJoin, lineCap, miterLimit) {
873
- // Param width: Stroke width
874
- // Param color: As returned by THREE.Color.getStyle()
875
- // Param lineJoin: One of "round", "bevel", "miter" or "miter-limit"
876
- // Param lineCap: One of "round", "square" or "butt"
877
- // Param miterLimit: Maximum join length, in multiples of the "width" parameter (join is truncated if it exceeds that distance)
878
- // Returns style object
879
-
880
- width = width !== undefined ? width : 1;
881
- color = color !== undefined ? color : '#000';
882
- lineJoin = lineJoin !== undefined ? lineJoin : 'miter';
883
- lineCap = lineCap !== undefined ? lineCap : 'butt';
884
- miterLimit = miterLimit !== undefined ? miterLimit : 4;
885
- return {
886
- strokeColor: color,
887
- strokeWidth: width,
888
- strokeLineJoin: lineJoin,
889
- strokeLineCap: lineCap,
890
- strokeMiterLimit: miterLimit
891
- };
892
- };
893
- SVGLoader.pointsToStroke = function (points, style, arcDivisions, minDistance) {
894
- // Generates a stroke with some witdh around the given path.
895
- // The path can be open or closed (last point equals to first point)
896
- // Param points: Array of Vector2D (the path). Minimum 2 points.
897
- // Param style: Object with SVG properties as returned by SVGLoader.getStrokeStyle(), or SVGLoader.parse() in the path.userData.style object
898
- // Params arcDivisions: Arc divisions for round joins and endcaps. (Optional)
899
- // Param minDistance: Points closer to this distance will be merged. (Optional)
900
- // Returns BufferGeometry with stroke triangles (In plane z = 0). UV coordinates are generated ('u' along path. 'v' across it, from left to right)
901
-
902
- var vertices = [];
903
- var normals = [];
904
- var uvs = [];
905
- if (SVGLoader.pointsToStrokeWithBuffers(points, style, arcDivisions, minDistance, vertices, normals, uvs) === 0) {
906
- return null;
907
- }
908
- var geometry = new _three.BufferGeometry();
909
- geometry.setAttribute('position', new _three.Float32BufferAttribute(vertices, 3));
910
- geometry.setAttribute('normal', new _three.Float32BufferAttribute(normals, 3));
911
- geometry.setAttribute('uv', new _three.Float32BufferAttribute(uvs, 2));
912
- return geometry;
913
- };
914
- SVGLoader.pointsToStrokeWithBuffers = function () {
915
- var tempV2_1 = new _three.Vector2();
916
- var tempV2_2 = new _three.Vector2();
917
- var tempV2_3 = new _three.Vector2();
918
- var tempV2_4 = new _three.Vector2();
919
- var tempV2_5 = new _three.Vector2();
920
- var tempV2_6 = new _three.Vector2();
921
- var tempV2_7 = new _three.Vector2();
922
- var lastPointL = new _three.Vector2();
923
- var lastPointR = new _three.Vector2();
924
- var point0L = new _three.Vector2();
925
- var point0R = new _three.Vector2();
926
- var currentPointL = new _three.Vector2();
927
- var currentPointR = new _three.Vector2();
928
- var nextPointL = new _three.Vector2();
929
- var nextPointR = new _three.Vector2();
930
- var innerPoint = new _three.Vector2();
931
- var outerPoint = new _three.Vector2();
932
- return function (points, style, arcDivisions, minDistance, vertices, normals, uvs, vertexOffset) {
933
- // This function can be called to update existing arrays or buffers.
934
- // Accepts same parameters as pointsToStroke, plus the buffers and optional offset.
935
- // Param vertexOffset: Offset vertices to start writing in the buffers (3 elements/vertex for vertices and normals, and 2 elements/vertex for uvs)
936
- // Returns number of written vertices / normals / uvs pairs
937
- // if 'vertices' parameter is undefined no triangles will be generated, but the returned vertices count will still be valid (useful to preallocate the buffers)
938
- // 'normals' and 'uvs' buffers are optional
939
-
940
- arcDivisions = arcDivisions !== undefined ? arcDivisions : 12;
941
- minDistance = minDistance !== undefined ? minDistance : 0.001;
942
- vertexOffset = vertexOffset !== undefined ? vertexOffset : 0;
943
-
944
- // First ensure there are no duplicated points
945
- points = removeDuplicatedPoints(points);
946
- var numPoints = points.length;
947
- if (numPoints < 2) return 0;
948
- var isClosed = points[0].equals(points[numPoints - 1]);
949
- var currentPoint;
950
- var previousPoint = points[0];
951
- var nextPoint;
952
- var strokeWidth2 = style.strokeWidth / 2;
953
- var deltaU = 1 / (numPoints - 1);
954
- var u0 = 0;
955
- var innerSideModified;
956
- var joinIsOnLeftSide;
957
- var isMiter;
958
- var initialJoinIsOnLeftSide = false;
959
- var numVertices = 0;
960
- var currentCoordinate = vertexOffset * 3;
961
- var currentCoordinateUV = vertexOffset * 2;
962
-
963
- // Get initial left and right stroke points
964
- getNormal(points[0], points[1], tempV2_1).multiplyScalar(strokeWidth2);
965
- lastPointL.copy(points[0]).sub(tempV2_1);
966
- lastPointR.copy(points[0]).add(tempV2_1);
967
- point0L.copy(lastPointL);
968
- point0R.copy(lastPointR);
969
- for (var iPoint = 1; iPoint < numPoints; iPoint++) {
970
- currentPoint = points[iPoint];
971
-
972
- // Get next point
973
- if (iPoint === numPoints - 1) {
974
- if (isClosed) {
975
- // Skip duplicated initial point
976
- nextPoint = points[1];
977
- } else nextPoint = undefined;
978
- } else {
979
- nextPoint = points[iPoint + 1];
980
- }
981
-
982
- // Normal of previous segment in tempV2_1
983
- var normal1 = tempV2_1;
984
- getNormal(previousPoint, currentPoint, normal1);
985
- tempV2_3.copy(normal1).multiplyScalar(strokeWidth2);
986
- currentPointL.copy(currentPoint).sub(tempV2_3);
987
- currentPointR.copy(currentPoint).add(tempV2_3);
988
- var u1 = u0 + deltaU;
989
- innerSideModified = false;
990
- if (nextPoint !== undefined) {
991
- // Normal of next segment in tempV2_2
992
- getNormal(currentPoint, nextPoint, tempV2_2);
993
- tempV2_3.copy(tempV2_2).multiplyScalar(strokeWidth2);
994
- nextPointL.copy(currentPoint).sub(tempV2_3);
995
- nextPointR.copy(currentPoint).add(tempV2_3);
996
- joinIsOnLeftSide = true;
997
- tempV2_3.subVectors(nextPoint, previousPoint);
998
- if (normal1.dot(tempV2_3) < 0) {
999
- joinIsOnLeftSide = false;
1000
- }
1001
- if (iPoint === 1) initialJoinIsOnLeftSide = joinIsOnLeftSide;
1002
- tempV2_3.subVectors(nextPoint, currentPoint);
1003
- tempV2_3.normalize();
1004
- var dot = Math.abs(normal1.dot(tempV2_3));
1005
-
1006
- // If path is straight, don't create join
1007
- if (dot !== 0) {
1008
- // Compute inner and outer segment intersections
1009
- var miterSide = strokeWidth2 / dot;
1010
- tempV2_3.multiplyScalar(-miterSide);
1011
- tempV2_4.subVectors(currentPoint, previousPoint);
1012
- tempV2_5.copy(tempV2_4).setLength(miterSide).add(tempV2_3);
1013
- innerPoint.copy(tempV2_5).negate();
1014
- var miterLength2 = tempV2_5.length();
1015
- var segmentLengthPrev = tempV2_4.length();
1016
- tempV2_4.divideScalar(segmentLengthPrev);
1017
- tempV2_6.subVectors(nextPoint, currentPoint);
1018
- var segmentLengthNext = tempV2_6.length();
1019
- tempV2_6.divideScalar(segmentLengthNext);
1020
- // Check that previous and next segments doesn't overlap with the innerPoint of intersection
1021
- if (tempV2_4.dot(innerPoint) < segmentLengthPrev && tempV2_6.dot(innerPoint) < segmentLengthNext) {
1022
- innerSideModified = true;
1023
- }
1024
- outerPoint.copy(tempV2_5).add(currentPoint);
1025
- innerPoint.add(currentPoint);
1026
- isMiter = false;
1027
- if (innerSideModified) {
1028
- if (joinIsOnLeftSide) {
1029
- nextPointR.copy(innerPoint);
1030
- currentPointR.copy(innerPoint);
1031
- } else {
1032
- nextPointL.copy(innerPoint);
1033
- currentPointL.copy(innerPoint);
1034
- }
1035
- } else {
1036
- // The segment triangles are generated here if there was overlapping
1037
-
1038
- makeSegmentTriangles();
1039
- }
1040
- switch (style.strokeLineJoin) {
1041
- case 'bevel':
1042
- makeSegmentWithBevelJoin(joinIsOnLeftSide, innerSideModified, u1);
1043
- break;
1044
- case 'round':
1045
- // Segment triangles
1046
-
1047
- createSegmentTrianglesWithMiddleSection(joinIsOnLeftSide, innerSideModified);
1048
-
1049
- // Join triangles
1050
-
1051
- if (joinIsOnLeftSide) {
1052
- makeCircularSector(currentPoint, currentPointL, nextPointL, u1, 0);
1053
- } else {
1054
- makeCircularSector(currentPoint, nextPointR, currentPointR, u1, 1);
1055
- }
1056
- break;
1057
- case 'miter':
1058
- case 'miter-clip':
1059
- default:
1060
- var miterFraction = strokeWidth2 * style.strokeMiterLimit / miterLength2;
1061
- if (miterFraction < 1) {
1062
- // The join miter length exceeds the miter limit
1063
-
1064
- if (style.strokeLineJoin !== 'miter-clip') {
1065
- makeSegmentWithBevelJoin(joinIsOnLeftSide, innerSideModified, u1);
1066
- break;
1067
- } else {
1068
- // Segment triangles
1069
-
1070
- createSegmentTrianglesWithMiddleSection(joinIsOnLeftSide, innerSideModified);
1071
-
1072
- // Miter-clip join triangles
1073
-
1074
- if (joinIsOnLeftSide) {
1075
- tempV2_6.subVectors(outerPoint, currentPointL).multiplyScalar(miterFraction).add(currentPointL);
1076
- tempV2_7.subVectors(outerPoint, nextPointL).multiplyScalar(miterFraction).add(nextPointL);
1077
- addVertex(currentPointL, u1, 0);
1078
- addVertex(tempV2_6, u1, 0);
1079
- addVertex(currentPoint, u1, 0.5);
1080
- addVertex(currentPoint, u1, 0.5);
1081
- addVertex(tempV2_6, u1, 0);
1082
- addVertex(tempV2_7, u1, 0);
1083
- addVertex(currentPoint, u1, 0.5);
1084
- addVertex(tempV2_7, u1, 0);
1085
- addVertex(nextPointL, u1, 0);
1086
- } else {
1087
- tempV2_6.subVectors(outerPoint, currentPointR).multiplyScalar(miterFraction).add(currentPointR);
1088
- tempV2_7.subVectors(outerPoint, nextPointR).multiplyScalar(miterFraction).add(nextPointR);
1089
- addVertex(currentPointR, u1, 1);
1090
- addVertex(tempV2_6, u1, 1);
1091
- addVertex(currentPoint, u1, 0.5);
1092
- addVertex(currentPoint, u1, 0.5);
1093
- addVertex(tempV2_6, u1, 1);
1094
- addVertex(tempV2_7, u1, 1);
1095
- addVertex(currentPoint, u1, 0.5);
1096
- addVertex(tempV2_7, u1, 1);
1097
- addVertex(nextPointR, u1, 1);
1098
- }
1099
- }
1100
- } else {
1101
- // Miter join segment triangles
1102
-
1103
- if (innerSideModified) {
1104
- // Optimized segment + join triangles
1105
-
1106
- if (joinIsOnLeftSide) {
1107
- addVertex(lastPointR, u0, 1);
1108
- addVertex(lastPointL, u0, 0);
1109
- addVertex(outerPoint, u1, 0);
1110
- addVertex(lastPointR, u0, 1);
1111
- addVertex(outerPoint, u1, 0);
1112
- addVertex(innerPoint, u1, 1);
1113
- } else {
1114
- addVertex(lastPointR, u0, 1);
1115
- addVertex(lastPointL, u0, 0);
1116
- addVertex(outerPoint, u1, 1);
1117
- addVertex(lastPointL, u0, 0);
1118
- addVertex(innerPoint, u1, 0);
1119
- addVertex(outerPoint, u1, 1);
1120
- }
1121
- if (joinIsOnLeftSide) {
1122
- nextPointL.copy(outerPoint);
1123
- } else {
1124
- nextPointR.copy(outerPoint);
1125
- }
1126
- } else {
1127
- // Add extra miter join triangles
1128
-
1129
- if (joinIsOnLeftSide) {
1130
- addVertex(currentPointL, u1, 0);
1131
- addVertex(outerPoint, u1, 0);
1132
- addVertex(currentPoint, u1, 0.5);
1133
- addVertex(currentPoint, u1, 0.5);
1134
- addVertex(outerPoint, u1, 0);
1135
- addVertex(nextPointL, u1, 0);
1136
- } else {
1137
- addVertex(currentPointR, u1, 1);
1138
- addVertex(outerPoint, u1, 1);
1139
- addVertex(currentPoint, u1, 0.5);
1140
- addVertex(currentPoint, u1, 0.5);
1141
- addVertex(outerPoint, u1, 1);
1142
- addVertex(nextPointR, u1, 1);
1143
- }
1144
- }
1145
- isMiter = true;
1146
- }
1147
- break;
1148
- }
1149
- } else {
1150
- // The segment triangles are generated here when two consecutive points are collinear
1151
-
1152
- makeSegmentTriangles();
1153
- }
1154
- } else {
1155
- // The segment triangles are generated here if it is the ending segment
1156
-
1157
- makeSegmentTriangles();
1158
- }
1159
- if (!isClosed && iPoint === numPoints - 1) {
1160
- // Start line endcap
1161
- addCapGeometry(points[0], point0L, point0R, joinIsOnLeftSide, true, u0);
1162
- }
1163
-
1164
- // Increment loop variables
1165
-
1166
- u0 = u1;
1167
- previousPoint = currentPoint;
1168
- lastPointL.copy(nextPointL);
1169
- lastPointR.copy(nextPointR);
1170
- }
1171
- if (!isClosed) {
1172
- // Ending line endcap
1173
- addCapGeometry(currentPoint, currentPointL, currentPointR, joinIsOnLeftSide, false, u1);
1174
- } else if (innerSideModified && vertices) {
1175
- // Modify path first segment vertices to adjust to the segments inner and outer intersections
1176
-
1177
- var lastOuter = outerPoint;
1178
- var lastInner = innerPoint;
1179
- if (initialJoinIsOnLeftSide !== joinIsOnLeftSide) {
1180
- lastOuter = innerPoint;
1181
- lastInner = outerPoint;
1182
- }
1183
- if (joinIsOnLeftSide) {
1184
- if (isMiter || initialJoinIsOnLeftSide) {
1185
- lastInner.toArray(vertices, 0 * 3);
1186
- lastInner.toArray(vertices, 3 * 3);
1187
- if (isMiter) {
1188
- lastOuter.toArray(vertices, 1 * 3);
1189
- }
1190
- }
1191
- } else {
1192
- if (isMiter || !initialJoinIsOnLeftSide) {
1193
- lastInner.toArray(vertices, 1 * 3);
1194
- lastInner.toArray(vertices, 3 * 3);
1195
- if (isMiter) {
1196
- lastOuter.toArray(vertices, 0 * 3);
1197
- }
1198
- }
1199
- }
1200
- }
1201
- return numVertices;
1202
-
1203
- // -- End of algorithm
1204
-
1205
- // -- Functions
1206
-
1207
- function getNormal(p1, p2, result) {
1208
- result.subVectors(p2, p1);
1209
- return result.set(-result.y, result.x).normalize();
1210
- }
1211
- function addVertex(position, u, v) {
1212
- if (vertices) {
1213
- vertices[currentCoordinate] = position.x;
1214
- vertices[currentCoordinate + 1] = position.y;
1215
- vertices[currentCoordinate + 2] = 0;
1216
- if (normals) {
1217
- normals[currentCoordinate] = 0;
1218
- normals[currentCoordinate + 1] = 0;
1219
- normals[currentCoordinate + 2] = 1;
1220
- }
1221
- currentCoordinate += 3;
1222
- if (uvs) {
1223
- uvs[currentCoordinateUV] = u;
1224
- uvs[currentCoordinateUV + 1] = v;
1225
- currentCoordinateUV += 2;
1226
- }
1227
- }
1228
- numVertices += 3;
1229
- }
1230
- function makeCircularSector(center, p1, p2, u, v) {
1231
- // param p1, p2: Points in the circle arc.
1232
- // p1 and p2 are in clockwise direction.
1233
-
1234
- tempV2_1.copy(p1).sub(center).normalize();
1235
- tempV2_2.copy(p2).sub(center).normalize();
1236
- var angle = Math.PI;
1237
- var dot = tempV2_1.dot(tempV2_2);
1238
- if (Math.abs(dot) < 1) angle = Math.abs(Math.acos(dot));
1239
- angle /= arcDivisions;
1240
- tempV2_3.copy(p1);
1241
- for (var i = 0, il = arcDivisions - 1; i < il; i++) {
1242
- tempV2_4.copy(tempV2_3).rotateAround(center, angle);
1243
- addVertex(tempV2_3, u, v);
1244
- addVertex(tempV2_4, u, v);
1245
- addVertex(center, u, 0.5);
1246
- tempV2_3.copy(tempV2_4);
1247
- }
1248
- addVertex(tempV2_4, u, v);
1249
- addVertex(p2, u, v);
1250
- addVertex(center, u, 0.5);
1251
- }
1252
- function makeSegmentTriangles() {
1253
- addVertex(lastPointR, u0, 1);
1254
- addVertex(lastPointL, u0, 0);
1255
- addVertex(currentPointL, u1, 0);
1256
- addVertex(lastPointR, u0, 1);
1257
- addVertex(currentPointL, u1, 1);
1258
- addVertex(currentPointR, u1, 0);
1259
- }
1260
- function makeSegmentWithBevelJoin(joinIsOnLeftSide, innerSideModified, u) {
1261
- if (innerSideModified) {
1262
- // Optimized segment + bevel triangles
1263
-
1264
- if (joinIsOnLeftSide) {
1265
- // Path segments triangles
1266
-
1267
- addVertex(lastPointR, u0, 1);
1268
- addVertex(lastPointL, u0, 0);
1269
- addVertex(currentPointL, u1, 0);
1270
- addVertex(lastPointR, u0, 1);
1271
- addVertex(currentPointL, u1, 0);
1272
- addVertex(innerPoint, u1, 1);
1273
-
1274
- // Bevel join triangle
1275
-
1276
- addVertex(currentPointL, u, 0);
1277
- addVertex(nextPointL, u, 0);
1278
- addVertex(innerPoint, u, 0.5);
1279
- } else {
1280
- // Path segments triangles
1281
-
1282
- addVertex(lastPointR, u0, 1);
1283
- addVertex(lastPointL, u0, 0);
1284
- addVertex(currentPointR, u1, 1);
1285
- addVertex(lastPointL, u0, 0);
1286
- addVertex(innerPoint, u1, 0);
1287
- addVertex(currentPointR, u1, 1);
1288
-
1289
- // Bevel join triangle
1290
-
1291
- addVertex(currentPointR, u, 1);
1292
- addVertex(nextPointR, u, 0);
1293
- addVertex(innerPoint, u, 0.5);
1294
- }
1295
- } else {
1296
- // Bevel join triangle. The segment triangles are done in the main loop
1297
-
1298
- if (joinIsOnLeftSide) {
1299
- addVertex(currentPointL, u, 0);
1300
- addVertex(nextPointL, u, 0);
1301
- addVertex(currentPoint, u, 0.5);
1302
- } else {
1303
- addVertex(currentPointR, u, 1);
1304
- addVertex(nextPointR, u, 0);
1305
- addVertex(currentPoint, u, 0.5);
1306
- }
1307
- }
1308
- }
1309
- function createSegmentTrianglesWithMiddleSection(joinIsOnLeftSide, innerSideModified) {
1310
- if (innerSideModified) {
1311
- if (joinIsOnLeftSide) {
1312
- addVertex(lastPointR, u0, 1);
1313
- addVertex(lastPointL, u0, 0);
1314
- addVertex(currentPointL, u1, 0);
1315
- addVertex(lastPointR, u0, 1);
1316
- addVertex(currentPointL, u1, 0);
1317
- addVertex(innerPoint, u1, 1);
1318
- addVertex(currentPointL, u0, 0);
1319
- addVertex(currentPoint, u1, 0.5);
1320
- addVertex(innerPoint, u1, 1);
1321
- addVertex(currentPoint, u1, 0.5);
1322
- addVertex(nextPointL, u0, 0);
1323
- addVertex(innerPoint, u1, 1);
1324
- } else {
1325
- addVertex(lastPointR, u0, 1);
1326
- addVertex(lastPointL, u0, 0);
1327
- addVertex(currentPointR, u1, 1);
1328
- addVertex(lastPointL, u0, 0);
1329
- addVertex(innerPoint, u1, 0);
1330
- addVertex(currentPointR, u1, 1);
1331
- addVertex(currentPointR, u0, 1);
1332
- addVertex(innerPoint, u1, 0);
1333
- addVertex(currentPoint, u1, 0.5);
1334
- addVertex(currentPoint, u1, 0.5);
1335
- addVertex(innerPoint, u1, 0);
1336
- addVertex(nextPointR, u0, 1);
1337
- }
1338
- }
1339
- }
1340
- function addCapGeometry(center, p1, p2, joinIsOnLeftSide, start, u) {
1341
- // param center: End point of the path
1342
- // param p1, p2: Left and right cap points
1343
-
1344
- switch (style.strokeLineCap) {
1345
- case 'round':
1346
- if (start) {
1347
- makeCircularSector(center, p2, p1, u, 0.5);
1348
- } else {
1349
- makeCircularSector(center, p1, p2, u, 0.5);
1350
- }
1351
- break;
1352
- case 'square':
1353
- if (start) {
1354
- tempV2_1.subVectors(p1, center);
1355
- tempV2_2.set(tempV2_1.y, -tempV2_1.x);
1356
- tempV2_3.addVectors(tempV2_1, tempV2_2).add(center);
1357
- tempV2_4.subVectors(tempV2_2, tempV2_1).add(center);
1358
-
1359
- // Modify already existing vertices
1360
- if (joinIsOnLeftSide) {
1361
- tempV2_3.toArray(vertices, 1 * 3);
1362
- tempV2_4.toArray(vertices, 0 * 3);
1363
- tempV2_4.toArray(vertices, 3 * 3);
1364
- } else {
1365
- tempV2_3.toArray(vertices, 1 * 3);
1366
- tempV2_3.toArray(vertices, 3 * 3);
1367
- tempV2_4.toArray(vertices, 0 * 3);
1368
- }
1369
- } else {
1370
- tempV2_1.subVectors(p2, center);
1371
- tempV2_2.set(tempV2_1.y, -tempV2_1.x);
1372
- tempV2_3.addVectors(tempV2_1, tempV2_2).add(center);
1373
- tempV2_4.subVectors(tempV2_2, tempV2_1).add(center);
1374
- var vl = vertices.length;
1375
-
1376
- // Modify already existing vertices
1377
- if (joinIsOnLeftSide) {
1378
- tempV2_3.toArray(vertices, vl - 1 * 3);
1379
- tempV2_4.toArray(vertices, vl - 2 * 3);
1380
- tempV2_4.toArray(vertices, vl - 4 * 3);
1381
- } else {
1382
- tempV2_3.toArray(vertices, vl - 2 * 3);
1383
- tempV2_4.toArray(vertices, vl - 1 * 3);
1384
- tempV2_4.toArray(vertices, vl - 4 * 3);
1385
- }
1386
- }
1387
- break;
1388
- case 'butt':
1389
- default:
1390
- // Nothing to do here
1391
- break;
1392
- }
1393
- }
1394
- function removeDuplicatedPoints(points) {
1395
- // Creates a new array if necessary with duplicated points removed.
1396
- // This does not remove duplicated initial and ending points of a closed path.
1397
-
1398
- var dupPoints = false;
1399
- for (var i = 1, n = points.length - 1; i < n; i++) {
1400
- if (points[i].distanceTo(points[i + 1]) < minDistance) {
1401
- dupPoints = true;
1402
- break;
1403
- }
1404
- }
1405
- if (!dupPoints) return points;
1406
- var newPoints = [];
1407
- newPoints.push(points[0]);
1408
- for (var i = 1, n = points.length - 1; i < n; i++) {
1409
- if (points[i].distanceTo(points[i + 1]) >= minDistance) {
1410
- newPoints.push(points[i]);
1411
- }
1412
- }
1413
- newPoints.push(points[points.length - 1]);
1414
- return newPoints;
1415
- }
1416
- };
1417
- }();
1418
- //# sourceMappingURL=SVGLoader.js.map