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

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 (358) hide show
  1. package/es/@history.js +2 -0
  2. package/es/AppContext.js +3 -0
  3. package/es/KitchenConfigurator.js +645 -0
  4. package/es/KitchenConfiguratorApp.js +480 -0
  5. package/es/actions/area-actions.js +14 -0
  6. package/es/actions/export.js +23 -0
  7. package/es/actions/groups-actions.js +89 -0
  8. package/es/actions/holes-actions.js +119 -0
  9. package/es/actions/items-actions.js +313 -0
  10. package/es/actions/lines-actions.js +81 -0
  11. package/es/actions/project-actions.js +281 -0
  12. package/es/actions/scene-actions.js +33 -0
  13. package/es/actions/vertices-actions.js +27 -0
  14. package/es/actions/viewer2d-actions.js +58 -0
  15. package/es/actions/viewer3d-actions.js +23 -0
  16. package/es/catalog/areas/area/planner-element.js +40 -0
  17. package/es/catalog/areas/area/textures/ceramic-tile.jpg +0 -0
  18. package/es/catalog/areas/area/textures/grass.jpg +0 -0
  19. package/es/catalog/areas/area/textures/parquet.jpg +0 -0
  20. package/es/catalog/areas/area/textures/strand-porcelain.jpg +0 -0
  21. package/es/catalog/areas/area/textures/tile1.jpg +0 -0
  22. package/es/catalog/catalog.js +277 -0
  23. package/es/catalog/envMap/nx.hdr +0 -0
  24. package/es/catalog/envMap/ny.hdr +0 -0
  25. package/es/catalog/envMap/nz.hdr +0 -0
  26. package/es/catalog/envMap/px.hdr +0 -0
  27. package/es/catalog/envMap/py.hdr +0 -0
  28. package/es/catalog/envMap/pz.hdr +0 -0
  29. package/es/catalog/factories/area-factory-3d.js +181 -0
  30. package/es/catalog/factories/area-factory.js +81 -0
  31. package/es/catalog/factories/export.js +7 -0
  32. package/es/catalog/factories/wall-factory-3d.js +202 -0
  33. package/es/catalog/factories/wall-factory.js +268 -0
  34. package/es/catalog/holes/door-closet/planner-element.js +222 -0
  35. package/es/catalog/holes/door-double/door_double.png +0 -0
  36. package/es/catalog/holes/door-double/planner-element.js +315 -0
  37. package/es/catalog/holes/door-exterior/planner-element.js +215 -0
  38. package/es/catalog/holes/door-interior/planner-element.js +227 -0
  39. package/es/catalog/holes/door-panic/panicDoor.png +0 -0
  40. package/es/catalog/holes/door-panic/planner-element.js +503 -0
  41. package/es/catalog/holes/door-panic-double/panicDoorDouble.png +0 -0
  42. package/es/catalog/holes/door-panic-double/planner-element.js +463 -0
  43. package/es/catalog/holes/door-sliding/planner-element.js +225 -0
  44. package/es/catalog/holes/doorway-framed/planner-element.js +145 -0
  45. package/es/catalog/holes/doorway-frameless/planner-element.js +104 -0
  46. package/es/catalog/holes/export.js +13 -0
  47. package/es/catalog/holes/gate/gate.jpg +0 -0
  48. package/es/catalog/holes/window-clear/planner-element.js +166 -0
  49. package/es/catalog/holes/window-clear/texture.png +0 -0
  50. package/es/catalog/holes/window-cross/planner-element.js +165 -0
  51. package/es/catalog/holes/window-cross/texture.png +0 -0
  52. package/es/catalog/holes/window-double-hung/planner-element.js +303 -0
  53. package/es/catalog/holes/window-double-hung/texture.png +0 -0
  54. package/es/catalog/holes/window-vertical/planner-element.js +276 -0
  55. package/es/catalog/holes/window-vertical/texture.png +0 -0
  56. package/es/catalog/lines/wall/planner-element.js +70 -0
  57. package/es/catalog/lines/wall/textures/bricks-normal.jpg +0 -0
  58. package/es/catalog/lines/wall/textures/bricks-normal2.jpg +0 -0
  59. package/es/catalog/lines/wall/textures/bricks.jpg +0 -0
  60. package/es/catalog/lines/wall/textures/bricks2.jpg +0 -0
  61. package/es/catalog/lines/wall/textures/bricks3.jpg +0 -0
  62. package/es/catalog/lines/wall/textures/morden-normal.jpg +0 -0
  63. package/es/catalog/lines/wall/textures/morden.jpg +0 -0
  64. package/es/catalog/lines/wall/textures/painted-normal.jpg +0 -0
  65. package/es/catalog/lines/wall/textures/painted.jpg +0 -0
  66. package/es/catalog/lines/wall/textures/plaster-normal.jpg +0 -0
  67. package/es/catalog/lines/wall/textures/plaster.jpg +0 -0
  68. package/es/catalog/lines/wall/wall.png +0 -0
  69. package/es/catalog/molding/molding-dcm/planner-element.js +28 -0
  70. package/es/catalog/molding/molding-dcm/texture.png +0 -0
  71. package/es/catalog/molding/molding-fbm/planner-element.js +28 -0
  72. package/es/catalog/molding/molding-fbm/texture.png +0 -0
  73. package/es/catalog/molding/molding-lrm/planner-element.js +28 -0
  74. package/es/catalog/molding/molding-lrm/texture.png +0 -0
  75. package/es/catalog/properties/export.js +21 -0
  76. package/es/catalog/properties/property-checkbox.js +116 -0
  77. package/es/catalog/properties/property-color.js +39 -0
  78. package/es/catalog/properties/property-enum.js +97 -0
  79. package/es/catalog/properties/property-hidden.js +19 -0
  80. package/es/catalog/properties/property-lenght-measure.js +101 -0
  81. package/es/catalog/properties/property-length-measure.js +134 -0
  82. package/es/catalog/properties/property-length-measure_hole.js +101 -0
  83. package/es/catalog/properties/property-number.js +48 -0
  84. package/es/catalog/properties/property-read-only.js +26 -0
  85. package/es/catalog/properties/property-string.js +48 -0
  86. package/es/catalog/properties/property-toggle.js +39 -0
  87. package/es/catalog/properties/shared-property-style.js +14 -0
  88. package/es/catalog/utils/FuseUtils.js +82 -0
  89. package/es/catalog/utils/exporter.js +148 -0
  90. package/es/catalog/utils/geom-utils.js +189 -0
  91. package/es/catalog/utils/item-loader.js +1521 -0
  92. package/es/catalog/utils/load-obj.js +91 -0
  93. package/es/catalog/utils/mtl-loader.js +358 -0
  94. package/es/catalog/utils/obj-loader.js +477 -0
  95. package/es/class/FuseUtils.js +82 -0
  96. package/es/class/area.js +145 -0
  97. package/es/class/export.js +24 -0
  98. package/es/class/group.js +440 -0
  99. package/es/class/guide.js +62 -0
  100. package/es/class/hole.js +929 -0
  101. package/es/class/item.js +1883 -0
  102. package/es/class/layer.js +667 -0
  103. package/es/class/line.js +1180 -0
  104. package/es/class/project.js +793 -0
  105. package/es/class/vertex.js +202 -0
  106. package/es/components/content.js +107 -0
  107. package/es/components/disclaimer/disclaimer.js +97 -0
  108. package/es/components/export.js +9 -0
  109. package/es/components/style/button.js +113 -0
  110. package/es/components/style/cancel-button.js +22 -0
  111. package/es/components/style/content-container.js +33 -0
  112. package/es/components/style/content-title.js +29 -0
  113. package/es/components/style/delete-button.js +25 -0
  114. package/es/components/style/export.js +31 -0
  115. package/es/components/style/form-block.js +24 -0
  116. package/es/components/style/form-color-input.js +27 -0
  117. package/es/components/style/form-label.js +26 -0
  118. package/es/components/style/form-number-input.js +213 -0
  119. package/es/components/style/form-number-input_2.js +206 -0
  120. package/es/components/style/form-select.js +68 -0
  121. package/es/components/style/form-slider.js +61 -0
  122. package/es/components/style/form-submit-button.js +26 -0
  123. package/es/components/style/form-text-input.js +95 -0
  124. package/es/components/viewer2d/area.js +81 -0
  125. package/es/components/viewer2d/export.js +31 -0
  126. package/es/components/viewer2d/grids/grid-horizontal-streak.js +37 -0
  127. package/es/components/viewer2d/grids/grid-streak.js +37 -0
  128. package/es/components/viewer2d/grids/grid-vertical-streak.js +37 -0
  129. package/es/components/viewer2d/grids/grids.js +35 -0
  130. package/es/components/viewer2d/group.js +53 -0
  131. package/es/components/viewer2d/item.js +513 -0
  132. package/es/components/viewer2d/layer.js +164 -0
  133. package/es/components/viewer2d/line.js +882 -0
  134. package/es/components/viewer2d/ruler.js +100 -0
  135. package/es/components/viewer2d/rulerDist.js +146 -0
  136. package/es/components/viewer2d/rulerX.js +151 -0
  137. package/es/components/viewer2d/rulerY.js +153 -0
  138. package/es/components/viewer2d/scene.js +140 -0
  139. package/es/components/viewer2d/snap.js +74 -0
  140. package/es/components/viewer2d/state.js +78 -0
  141. package/es/components/viewer2d/utils.js +198 -0
  142. package/es/components/viewer2d/vertex.js +65 -0
  143. package/es/components/viewer2d/viewer2d.js +1398 -0
  144. package/es/components/viewer3d/camera-controls-module/camera-controls.module.js +2592 -0
  145. package/es/components/viewer3d/dcm.js +401 -0
  146. package/es/components/viewer3d/fbm.js +414 -0
  147. package/es/components/viewer3d/front3D.js +66 -0
  148. package/es/components/viewer3d/grid-creator.js +25 -0
  149. package/es/components/viewer3d/grids/grid-horizontal-streak.js +36 -0
  150. package/es/components/viewer3d/grids/grid-streak.js +27 -0
  151. package/es/components/viewer3d/grids/grid-vertical-streak.js +36 -0
  152. package/es/components/viewer3d/libs/first-person-controls.js +67 -0
  153. package/es/components/viewer3d/libs/helvetiker_regular.typeface.js +1281 -0
  154. package/es/components/viewer3d/libs/mtl-loader.js +357 -0
  155. package/es/components/viewer3d/libs/obj-loader.js +462 -0
  156. package/es/components/viewer3d/libs/orbit-controls.js +699 -0
  157. package/es/components/viewer3d/libs/pointer-lock-controls.js +46 -0
  158. package/es/components/viewer3d/lrm.js +305 -0
  159. package/es/components/viewer3d/model.js +708 -0
  160. package/es/components/viewer3d/pointer-lock-navigation.js +115 -0
  161. package/es/components/viewer3d/ruler-utils/itemRect.js +61 -0
  162. package/es/components/viewer3d/ruler-utils/layer3D.js +495 -0
  163. package/es/components/viewer3d/ruler-utils/ruler3D.js +227 -0
  164. package/es/components/viewer3d/ruler-utils/scene3D.js +60 -0
  165. package/es/components/viewer3d/ruler-utils/state3D.js +18 -0
  166. package/es/components/viewer3d/scene-creator.js +3608 -0
  167. package/es/components/viewer3d/three-memory-cleaner.js +51 -0
  168. package/es/components/viewer3d/viewer3d-first-person.js +315 -0
  169. package/es/components/viewer3d/viewer3d.js +2527 -0
  170. package/es/constants.js +636 -0
  171. package/es/index.js +16 -0
  172. package/es/models.js +510 -0
  173. package/es/plugins/SVGLoader.js +1412 -0
  174. package/es/plugins/autosave.js +33 -0
  175. package/es/plugins/console-debugger.js +37 -0
  176. package/es/plugins/export.js +9 -0
  177. package/es/plugins/keyboard.js +101 -0
  178. package/es/reducers/areas-reducer.js +12 -0
  179. package/es/reducers/export.js +25 -0
  180. package/es/reducers/groups-reducer.js +38 -0
  181. package/es/reducers/holes-reducer.js +62 -0
  182. package/es/reducers/items-reducer.js +140 -0
  183. package/es/reducers/lines-reducer.js +45 -0
  184. package/es/reducers/project-reducer.js +129 -0
  185. package/es/reducers/reducer.js +19 -0
  186. package/es/reducers/scene-reducer.js +28 -0
  187. package/es/reducers/user-reducer.js +40 -0
  188. package/es/reducers/vertices-reducer.js +19 -0
  189. package/es/reducers/viewer2d-reducer.js +75 -0
  190. package/es/reducers/viewer3d-reducer.js +56 -0
  191. package/es/shared-style.js +66 -0
  192. package/es/styles/export.js +5 -0
  193. package/es/styles/tabs.css +40 -0
  194. package/es/translator/en.js +104 -0
  195. package/es/translator/it.js +79 -0
  196. package/es/translator/ru.js +79 -0
  197. package/es/translator/translator.js +84 -0
  198. package/es/utils/browser.js +33 -0
  199. package/es/utils/email-validator.js +4 -0
  200. package/es/utils/export.js +25 -0
  201. package/es/utils/geometry.js +2420 -0
  202. package/es/utils/get-edges-of-subgraphs.js +27 -0
  203. package/es/utils/graph-cycles.js +237 -0
  204. package/es/utils/graph-inner-cycles.js +46 -0
  205. package/es/utils/graph.js +150 -0
  206. package/es/utils/helper.js +268 -0
  207. package/es/utils/history.js +29 -0
  208. package/es/utils/id-broker.js +19 -0
  209. package/es/utils/logger.js +8 -0
  210. package/es/utils/math.js +50 -0
  211. package/es/utils/molding.js +871 -0
  212. package/es/utils/name-generator.js +18 -0
  213. package/es/utils/objects-utils.js +50 -0
  214. package/es/utils/phone-validator.js +4 -0
  215. package/es/utils/process-black-list.js +18 -0
  216. package/es/utils/react-if.js +18 -0
  217. package/es/utils/snap-scene.js +99 -0
  218. package/es/utils/snap.js +237 -0
  219. package/es/utils/summarizeCart.js +24 -0
  220. package/es/utils/threeCSG.es6.js +498 -0
  221. package/es/version.js +2 -0
  222. package/lib/catalog/properties/property-string.js +55 -0
  223. package/lib/catalog/properties/property-toggle.js +46 -0
  224. package/lib/catalog/properties/shared-property-style.js +20 -0
  225. package/lib/catalog/utils/FuseUtils.js +88 -0
  226. package/lib/catalog/utils/exporter.js +155 -0
  227. package/lib/catalog/utils/geom-utils.js +205 -0
  228. package/lib/catalog/utils/item-loader.js +1533 -0
  229. package/lib/catalog/utils/load-obj.js +99 -0
  230. package/lib/catalog/utils/mtl-loader.js +363 -0
  231. package/lib/catalog/utils/obj-loader.js +482 -0
  232. package/lib/class/FuseUtils.js +88 -0
  233. package/lib/class/area.js +150 -0
  234. package/lib/class/export.js +96 -0
  235. package/lib/class/group.js +445 -0
  236. package/lib/class/guide.js +67 -0
  237. package/lib/class/hole.js +934 -0
  238. package/lib/class/item.js +1889 -0
  239. package/lib/class/layer.js +672 -0
  240. package/lib/class/line.js +1186 -0
  241. package/lib/class/project.js +799 -0
  242. package/lib/class/vertex.js +207 -0
  243. package/lib/components/content.js +116 -0
  244. package/lib/components/disclaimer/disclaimer.js +105 -0
  245. package/lib/components/export.js +33 -0
  246. package/lib/components/style/button.js +120 -0
  247. package/lib/components/style/cancel-button.js +29 -0
  248. package/lib/components/style/content-container.js +40 -0
  249. package/lib/components/style/content-title.js +37 -0
  250. package/lib/components/style/delete-button.js +34 -0
  251. package/lib/components/style/export.js +121 -0
  252. package/lib/components/style/form-block.js +31 -0
  253. package/lib/components/style/form-color-input.js +34 -0
  254. package/lib/components/style/form-label.js +33 -0
  255. package/lib/components/style/form-number-input.js +220 -0
  256. package/lib/components/style/form-number-input_2.js +213 -0
  257. package/lib/components/style/form-select.js +75 -0
  258. package/lib/components/style/form-slider.js +68 -0
  259. package/lib/components/style/form-submit-button.js +35 -0
  260. package/lib/components/style/form-text-input.js +101 -0
  261. package/lib/components/viewer2d/area.js +88 -0
  262. package/lib/components/viewer2d/export.js +121 -0
  263. package/lib/components/viewer2d/grids/grid-horizontal-streak.js +44 -0
  264. package/lib/components/viewer2d/grids/grid-streak.js +44 -0
  265. package/lib/components/viewer2d/grids/grid-vertical-streak.js +44 -0
  266. package/lib/components/viewer2d/grids/grids.js +44 -0
  267. package/lib/components/viewer2d/group.js +62 -0
  268. package/lib/components/viewer2d/item.js +521 -0
  269. package/lib/components/viewer2d/layer.js +171 -0
  270. package/lib/components/viewer2d/line.js +892 -0
  271. package/lib/components/viewer2d/ruler.js +107 -0
  272. package/lib/components/viewer2d/rulerDist.js +153 -0
  273. package/lib/components/viewer2d/rulerX.js +158 -0
  274. package/lib/components/viewer2d/rulerY.js +160 -0
  275. package/lib/components/viewer2d/scene.js +147 -0
  276. package/lib/components/viewer2d/snap.js +83 -0
  277. package/lib/components/viewer2d/state.js +87 -0
  278. package/lib/components/viewer2d/utils.js +210 -0
  279. package/lib/components/viewer2d/vertex.js +74 -0
  280. package/lib/components/viewer2d/viewer2d.js +1405 -0
  281. package/lib/components/viewer3d/camera-controls-module/camera-controls.module.js +2597 -0
  282. package/lib/components/viewer3d/dcm.js +407 -0
  283. package/lib/components/viewer3d/fbm.js +420 -0
  284. package/lib/components/viewer3d/front3D.js +75 -0
  285. package/lib/components/viewer3d/grid-creator.js +34 -0
  286. package/lib/components/viewer3d/grids/grid-horizontal-streak.js +44 -0
  287. package/lib/components/viewer3d/grids/grid-streak.js +35 -0
  288. package/lib/components/viewer3d/grids/grid-vertical-streak.js +44 -0
  289. package/lib/components/viewer3d/libs/first-person-controls.js +74 -0
  290. package/lib/components/viewer3d/libs/helvetiker_regular.typeface.js +1287 -0
  291. package/lib/components/viewer3d/libs/mtl-loader.js +363 -0
  292. package/lib/components/viewer3d/libs/obj-loader.js +468 -0
  293. package/lib/components/viewer3d/libs/orbit-controls.js +705 -0
  294. package/lib/components/viewer3d/libs/pointer-lock-controls.js +52 -0
  295. package/lib/components/viewer3d/lrm.js +311 -0
  296. package/lib/components/viewer3d/model.js +714 -0
  297. package/lib/components/viewer3d/pointer-lock-navigation.js +122 -0
  298. package/lib/components/viewer3d/ruler-utils/itemRect.js +68 -0
  299. package/lib/components/viewer3d/ruler-utils/layer3D.js +502 -0
  300. package/lib/components/viewer3d/ruler-utils/ruler3D.js +234 -0
  301. package/lib/components/viewer3d/ruler-utils/scene3D.js +68 -0
  302. package/lib/components/viewer3d/ruler-utils/state3D.js +25 -0
  303. package/lib/components/viewer3d/scene-creator.js +3642 -0
  304. package/lib/components/viewer3d/three-memory-cleaner.js +60 -0
  305. package/lib/components/viewer3d/viewer3d-first-person.js +320 -0
  306. package/lib/components/viewer3d/viewer3d.js +2532 -0
  307. package/lib/constants.js +645 -0
  308. package/lib/index.js +96 -0
  309. package/lib/models.js +517 -0
  310. package/lib/plugins/SVGLoader.js +1417 -0
  311. package/lib/plugins/autosave.js +39 -0
  312. package/lib/plugins/console-debugger.js +44 -0
  313. package/lib/plugins/export.js +33 -0
  314. package/lib/plugins/keyboard.js +107 -0
  315. package/lib/reducers/areas-reducer.js +18 -0
  316. package/lib/reducers/export.js +97 -0
  317. package/lib/reducers/groups-reducer.js +44 -0
  318. package/lib/reducers/holes-reducer.js +68 -0
  319. package/lib/reducers/items-reducer.js +146 -0
  320. package/lib/reducers/lines-reducer.js +51 -0
  321. package/lib/reducers/project-reducer.js +135 -0
  322. package/lib/reducers/reducer.js +26 -0
  323. package/lib/reducers/scene-reducer.js +34 -0
  324. package/lib/reducers/user-reducer.js +46 -0
  325. package/lib/reducers/vertices-reducer.js +25 -0
  326. package/lib/reducers/viewer2d-reducer.js +82 -0
  327. package/lib/reducers/viewer3d-reducer.js +63 -0
  328. package/lib/shared-style.js +72 -0
  329. package/lib/styles/export.js +13 -0
  330. package/lib/translator/en.js +110 -0
  331. package/lib/translator/it.js +85 -0
  332. package/lib/translator/ru.js +85 -0
  333. package/lib/translator/translator.js +90 -0
  334. package/lib/utils/browser.js +40 -0
  335. package/lib/utils/email-validator.js +10 -0
  336. package/lib/utils/export.js +56 -0
  337. package/lib/utils/geometry.js +2516 -0
  338. package/lib/utils/get-edges-of-subgraphs.js +34 -0
  339. package/lib/utils/graph-cycles.js +240 -0
  340. package/lib/utils/graph-inner-cycles.js +54 -0
  341. package/lib/utils/graph.js +157 -0
  342. package/lib/utils/helper.js +291 -0
  343. package/lib/utils/history.js +36 -0
  344. package/lib/utils/id-broker.js +25 -0
  345. package/lib/utils/logger.js +14 -0
  346. package/lib/utils/math.js +57 -0
  347. package/lib/utils/molding.js +895 -0
  348. package/lib/utils/name-generator.js +23 -0
  349. package/lib/utils/objects-utils.js +60 -0
  350. package/lib/utils/phone-validator.js +10 -0
  351. package/lib/utils/process-black-list.js +24 -0
  352. package/lib/utils/react-if.js +24 -0
  353. package/lib/utils/snap-scene.js +105 -0
  354. package/lib/utils/snap.js +249 -0
  355. package/lib/utils/summarizeCart.js +30 -0
  356. package/lib/utils/threeCSG.es6.js +503 -0
  357. package/lib/version.js +8 -0
  358. package/package.json +3 -3
@@ -0,0 +1,61 @@
1
+ var _excluded = ["value", "onChange", "min", "max", "step"];
2
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
3
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
4
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
5
+ import React from 'react';
6
+ import FormTextInput from "./form-text-input";
7
+ var sliderContainerStyle = {
8
+ display: 'inline-block',
9
+ width: '80%',
10
+ marginRight: '5%'
11
+ };
12
+ var sliderStyle = {
13
+ display: 'block',
14
+ width: '100%',
15
+ height: '30px'
16
+ };
17
+ var textContainerStyle = {
18
+ display: 'inline-block',
19
+ width: '15%',
20
+ "float": 'right'
21
+ };
22
+ var textStyle = {
23
+ height: '34px',
24
+ textAlign: 'center'
25
+ };
26
+ export default function FormNumberInput(_ref) {
27
+ var value = _ref.value,
28
+ onChange = _ref.onChange,
29
+ _ref$min = _ref.min,
30
+ min = _ref$min === void 0 ? 0 : _ref$min,
31
+ _ref$max = _ref.max,
32
+ max = _ref$max === void 0 ? 100 : _ref$max,
33
+ _ref$step = _ref.step,
34
+ step = _ref$step === void 0 ? 1 : _ref$step,
35
+ rest = _objectWithoutProperties(_ref, _excluded);
36
+ // Handle both slider and text input changes
37
+ var handleSliderChange = function handleSliderChange(e) {
38
+ onChange(Number(e.target.value));
39
+ };
40
+ var handleTextChange = function handleTextChange(e) {
41
+ var val = e.target.value === '' ? '' : Number(e.target.value);
42
+ onChange(val);
43
+ };
44
+ return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
45
+ style: sliderContainerStyle
46
+ }, /*#__PURE__*/React.createElement("input", _extends({
47
+ type: "range",
48
+ style: sliderStyle,
49
+ min: min,
50
+ max: max,
51
+ step: step,
52
+ value: value,
53
+ onChange: handleSliderChange
54
+ }, rest))), /*#__PURE__*/React.createElement("div", {
55
+ style: textContainerStyle
56
+ }, /*#__PURE__*/React.createElement(FormTextInput, {
57
+ value: value,
58
+ onChange: handleTextChange,
59
+ style: textStyle
60
+ })));
61
+ }
@@ -0,0 +1,26 @@
1
+ var _excluded = ["children"];
2
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
3
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
4
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
5
+ import React from 'react';
6
+ import Button from "./button";
7
+ import * as SharedStyle from "../../shared-style";
8
+ var STYLE = {
9
+ borderColor: '#415375',
10
+ backgroundColor: '#415375',
11
+ color: SharedStyle.COLORS.white
12
+ };
13
+ var STYLE_HOVER = {
14
+ borderColor: '#1f3149',
15
+ backgroundColor: '#1f3149',
16
+ color: SharedStyle.COLORS.white
17
+ };
18
+ export default function FormSubmitButton(_ref) {
19
+ var children = _ref.children,
20
+ rest = _objectWithoutProperties(_ref, _excluded);
21
+ return /*#__PURE__*/React.createElement(Button, _extends({
22
+ type: "submit",
23
+ style: STYLE,
24
+ styleHover: STYLE_HOVER
25
+ }, rest), children);
26
+ }
@@ -0,0 +1,95 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ var _excluded = ["style"];
3
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
4
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
7
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
8
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
9
+ function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
10
+ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
11
+ function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
12
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
13
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
14
+ function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
15
+ function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); }
16
+ function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
17
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
18
+ function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); }
19
+ function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); }
20
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
21
+ import React, { Component } from 'react';
22
+ import { BG_COLOR_0, DEFAULT_FONT_FAMILY, PROJECT_NAME_LENGTH_LIMIT, SECONDARY_PURPLE_COLOR, TEXT_COLOR_NEUTRAL_3 } from "../../constants";
23
+ var styles = {
24
+ input: {
25
+ display: 'block',
26
+ padding: '15px 10px 12px 0px',
27
+ width: 120,
28
+ fontFamily: DEFAULT_FONT_FAMILY,
29
+ fontSize: 12,
30
+ fontWeight: 600,
31
+ lineHeight: '17px',
32
+ color: TEXT_COLOR_NEUTRAL_3,
33
+ backgroundColor: BG_COLOR_0,
34
+ border: '2px solid',
35
+ textAlign: 'right',
36
+ "float": 'right',
37
+ borderRadius: 5,
38
+ outline: 0,
39
+ transition: 'border-color 0.2s'
40
+ }
41
+ };
42
+ var FormTextInput = /*#__PURE__*/function (_Component) {
43
+ function FormTextInput(props) {
44
+ var _this;
45
+ _classCallCheck(this, FormTextInput);
46
+ _this = _callSuper(this, FormTextInput, [props]);
47
+ _this.state = {
48
+ focus: false
49
+ };
50
+ _this.input = /*#__PURE__*/React.createRef(null);
51
+ return _this;
52
+ }
53
+ _inherits(FormTextInput, _Component);
54
+ return _createClass(FormTextInput, [{
55
+ key: "componentDidMount",
56
+ value: function componentDidMount() {
57
+ if (this.input.current) {
58
+ this.input.current.select();
59
+ }
60
+ }
61
+ }, {
62
+ key: "render",
63
+ value: function render() {
64
+ var _this2 = this;
65
+ var _this$props = this.props,
66
+ style = _this$props.style,
67
+ rest = _objectWithoutProperties(_this$props, _excluded);
68
+ var focus = this.state.focus;
69
+ var inputStyle = _objectSpread(_objectSpread({}, styles.input), {}, {
70
+ borderColor: focus ? SECONDARY_PURPLE_COLOR : undefined
71
+ }, style);
72
+ return /*#__PURE__*/React.createElement("input", _extends({
73
+ ref: this.input,
74
+ onFocus: function onFocus() {
75
+ return _this2.setState({
76
+ focus: true
77
+ });
78
+ },
79
+ onBlur: function onBlur() {
80
+ return _this2.setState({
81
+ focus: false
82
+ });
83
+ },
84
+ style: inputStyle,
85
+ type: "text"
86
+ }, rest, {
87
+ maxLength: PROJECT_NAME_LENGTH_LIMIT
88
+ }));
89
+ }
90
+ }]);
91
+ }(Component);
92
+ export { FormTextInput as default };
93
+ FormTextInput.defaultProps = {
94
+ style: {}
95
+ };
@@ -0,0 +1,81 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import polylabel from 'polylabel';
4
+ import convert from 'convert-units';
5
+ import { formatNumber } from "../../utils/math";
6
+ import { DECIMAL_PLACES_2 } from "../../constants";
7
+ import { areaPolygon } from "./utils";
8
+ var STYLE_TEXT = {
9
+ textAnchor: 'middle',
10
+ fontSize: '12px',
11
+ fontFamily: '"Courier New", Courier, monospace',
12
+ pointerEvents: 'none',
13
+ fontWeight: 'bold',
14
+ //http://stackoverflow.com/questions/826782/how-to-disable-text-selection-highlighting-using-css
15
+ WebkitTouchCallout: 'none' /* iOS Safari */,
16
+ WebkitUserSelect: 'none' /* Chrome/Safari/Opera */,
17
+ MozUserSelect: 'none' /* Firefox */,
18
+ MsUserSelect: 'none' /* Internet Explorer/Edge */,
19
+ userSelect: 'none'
20
+ };
21
+ export default function Area(_ref) {
22
+ var layer = _ref.layer,
23
+ area = _ref.area,
24
+ catalog = _ref.catalog;
25
+ var rendered = catalog.getElement(area.type).render2D(area, layer);
26
+ // let element = catalog.getElement(item.type);
27
+ // let renderedItem = element.render2D(item, layer, scene);
28
+ var renderedAreaSize = null;
29
+ if (area.selected) {
30
+ var polygon = area.vertices.toArray().map(function (vertexID) {
31
+ var _layer$vertices$get = layer.vertices.get(vertexID),
32
+ x = _layer$vertices$get.x,
33
+ y = _layer$vertices$get.y;
34
+ return [x, y];
35
+ });
36
+ var polygonWithHoles = polygon;
37
+ area.holes.forEach(function (holeID) {
38
+ var polygonHole = layer.areas.get(holeID).vertices.toArray().map(function (vertexID) {
39
+ var _layer$vertices$get2 = layer.vertices.get(vertexID),
40
+ x = _layer$vertices$get2.x,
41
+ y = _layer$vertices$get2.y;
42
+ return [x, y];
43
+ });
44
+ polygonWithHoles = polygonWithHoles.concat(polygonHole.reverse());
45
+ });
46
+ var center = polylabel([polygonWithHoles], 1.0);
47
+ var areaSize = areaPolygon(polygon, false);
48
+ //subtract holes area
49
+ area.holes.forEach(function (areaID) {
50
+ var hole = layer.areas.get(areaID);
51
+ var holePolygon = hole.vertices.toArray().map(function (vertexID) {
52
+ var _layer$vertices$get3 = layer.vertices.get(vertexID),
53
+ x = _layer$vertices$get3.x,
54
+ y = _layer$vertices$get3.y;
55
+ return [x, y];
56
+ });
57
+ areaSize -= areaPolygon(holePolygon, false);
58
+ });
59
+ renderedAreaSize = /*#__PURE__*/React.createElement("text", {
60
+ x: "0",
61
+ y: "0",
62
+ transform: "translate(".concat(center[0], " ").concat(center[1], ") scale(1, -1)"),
63
+ style: STYLE_TEXT
64
+ }, formatNumber(convert(areaSize).from('cm2').to('ft2'), DECIMAL_PLACES_2), ' ', "ft", String.fromCharCode(0xb2));
65
+ }
66
+ return /*#__PURE__*/React.createElement("g", {
67
+ "data-element-root": true,
68
+ "data-prototype": area.prototype,
69
+ "data-id": area.id,
70
+ "data-selected": area.selected,
71
+ "data-layer": layer.id,
72
+ style: {
73
+ opacity: 1
74
+ }
75
+ }, rendered, renderedAreaSize);
76
+ }
77
+ Area.propTypes = {
78
+ area: PropTypes.object.isRequired,
79
+ layer: PropTypes.object.isRequired,
80
+ catalog: PropTypes.object.isRequired
81
+ };
@@ -0,0 +1,31 @@
1
+ import Viewer2D from "./viewer2d";
2
+ import Vertex from "./vertex";
3
+ import State from "./state";
4
+ import Snap from "./snap";
5
+ import Scene from "./scene";
6
+ import Ruler from "./ruler";
7
+ import Line from "./line";
8
+ import Layer from "./layer";
9
+ import Item from "./item";
10
+ import Area from "./area";
11
+ import Grids from "./grids/grids";
12
+ import Group from "./group";
13
+ import RulerX from "./rulerX";
14
+ import RulerY from "./rulerY";
15
+ export { Viewer2D, Vertex, State, Snap, Scene, Ruler, Line, Layer, Item, Area, Grids, Group, RulerX, RulerY };
16
+ export default {
17
+ Viewer2D: Viewer2D,
18
+ Vertex: Vertex,
19
+ State: State,
20
+ Snap: Snap,
21
+ Scene: Scene,
22
+ Ruler: Ruler,
23
+ Line: Line,
24
+ Layer: Layer,
25
+ Item: Item,
26
+ Area: Area,
27
+ Grids: Grids,
28
+ Group: Group,
29
+ RulerX: RulerX,
30
+ RulerY: RulerY
31
+ };
@@ -0,0 +1,37 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { List } from 'immutable';
4
+ import convert from 'convert-units';
5
+ export default function GridHorizontalStreak(_ref) {
6
+ var width = _ref.width,
7
+ height = _ref.height,
8
+ grid = _ref.grid;
9
+ var step = grid.properties.get('step');
10
+ var colors;
11
+ if (grid.properties.has('color')) {
12
+ colors = new List([grid.properties.get('color')]);
13
+ } else {
14
+ colors = grid.properties.get('colors');
15
+ }
16
+ var rendered = [];
17
+ var i = 0;
18
+ for (var y = 0; y <= height; y += step) {
19
+ var color = colors.get(i % colors.size);
20
+ i++;
21
+ rendered.push(/*#__PURE__*/React.createElement("line", {
22
+ key: y,
23
+ x1: "0",
24
+ y1: y,
25
+ x2: width,
26
+ y2: y,
27
+ strokeWidth: "1",
28
+ stroke: color
29
+ }));
30
+ }
31
+ return /*#__PURE__*/React.createElement("g", null, rendered);
32
+ }
33
+ GridHorizontalStreak.propTypes = {
34
+ width: PropTypes.number.isRequired,
35
+ height: PropTypes.number.isRequired,
36
+ grid: PropTypes.object.isRequired
37
+ };
@@ -0,0 +1,37 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { List } from 'immutable';
4
+ import convert from 'convert-units';
5
+ export default function GridStreak(_ref) {
6
+ var width = _ref.width,
7
+ height = _ref.height,
8
+ grid = _ref.grid;
9
+ var step = grid.properties.get('step');
10
+ var colors;
11
+ if (grid.properties.has('color')) {
12
+ colors = new List([grid.properties.get('color')]);
13
+ } else {
14
+ colors = grid.properties.get('colors');
15
+ }
16
+ var rendered = [];
17
+ var i = 0;
18
+ for (var y = 0; y <= height; y += step) {
19
+ for (var x = 0; x <= width; x += step) {
20
+ var color = colors.get(i % colors.size);
21
+ i++;
22
+ rendered.push(/*#__PURE__*/React.createElement("circle", {
23
+ key: i,
24
+ cx: x,
25
+ cy: y,
26
+ r: 1.5,
27
+ fill: color
28
+ }));
29
+ }
30
+ }
31
+ return /*#__PURE__*/React.createElement("g", null, rendered);
32
+ }
33
+ GridStreak.propTypes = {
34
+ width: PropTypes.number.isRequired,
35
+ height: PropTypes.number.isRequired,
36
+ grid: PropTypes.object.isRequired
37
+ };
@@ -0,0 +1,37 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { List } from 'immutable';
4
+ import convert from 'convert-units';
5
+ export default function GridVerticalStreak(_ref) {
6
+ var width = _ref.width,
7
+ height = _ref.height,
8
+ grid = _ref.grid;
9
+ var step = grid.properties.get('step');
10
+ var colors;
11
+ if (grid.properties.has('color')) {
12
+ colors = new List([grid.properties.get('color')]);
13
+ } else {
14
+ colors = grid.properties.get('colors');
15
+ }
16
+ var rendered = [];
17
+ var i = 0;
18
+ for (var x = 0; x <= width; x += step) {
19
+ var color = colors.get(i % colors.size);
20
+ i++;
21
+ rendered.push(/*#__PURE__*/React.createElement("line", {
22
+ key: x,
23
+ x1: x,
24
+ y1: "0",
25
+ x2: x,
26
+ y2: height,
27
+ strokeWidth: "1",
28
+ stroke: color
29
+ }));
30
+ }
31
+ return /*#__PURE__*/React.createElement("g", null, rendered);
32
+ }
33
+ GridVerticalStreak.propTypes = {
34
+ width: PropTypes.number.isRequired,
35
+ height: PropTypes.number.isRequired,
36
+ grid: PropTypes.object.isRequired
37
+ };
@@ -0,0 +1,35 @@
1
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
2
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
4
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
5
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
6
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
7
+ import React, { memo } from 'react';
8
+ import PropTypes from 'prop-types';
9
+ import GridStreak from "./grid-streak";
10
+ var propsAreEqual = function propsAreEqual(oldScene, newScene) {
11
+ return oldScene.scene.width === newScene.scene.width && oldScene.scene.height === newScene.scene.height && oldScene.scene.grids === newScene.scene.grids;
12
+ };
13
+ var drawGrid = function drawGrid(_ref) {
14
+ var scene = _ref.scene;
15
+ var width = scene.width,
16
+ height = scene.height,
17
+ grids = scene.grids;
18
+ var renderedGrids = grids.entrySeq().map(function (_ref2) {
19
+ var _ref3 = _slicedToArray(_ref2, 2),
20
+ gridID = _ref3[0],
21
+ grid = _ref3[1];
22
+ return /*#__PURE__*/React.createElement(GridStreak, {
23
+ key: gridID,
24
+ width: width,
25
+ height: height,
26
+ grid: grid
27
+ });
28
+ }).toList();
29
+ return /*#__PURE__*/React.createElement("g", null, renderedGrids);
30
+ };
31
+ var Grids = /*#__PURE__*/memo(drawGrid, propsAreEqual);
32
+ Grids.propTypes = {
33
+ scene: PropTypes.object.isRequired
34
+ };
35
+ export default Grids;
@@ -0,0 +1,53 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import If from "../../utils/react-if";
4
+ import * as sharedStyles from "../../shared-style";
5
+ var cx = 0;
6
+ var cy = 0;
7
+ var radius = 5;
8
+ var STYLE_CIRCLE = {
9
+ fill: sharedStyles.MATERIAL_COLORS[500].orange,
10
+ stroke: sharedStyles.MATERIAL_COLORS[500].orange,
11
+ cursor: 'default'
12
+ };
13
+ export default function Group(_ref, _ref2) {
14
+ var layer = _ref.layer,
15
+ group = _ref.group,
16
+ scene = _ref.scene,
17
+ catalog = _ref.catalog;
18
+ var translator = _ref2.translator;
19
+ return /*#__PURE__*/React.createElement("g", {
20
+ "data-element-root": true,
21
+ "data-prototype": group.prototype,
22
+ "data-id": group.id,
23
+ "data-selected": group.selected,
24
+ "data-layer": layer.id,
25
+ style: group.selected ? {
26
+ cursor: 'move'
27
+ } : {},
28
+ transform: "translate(".concat(group.x, ",").concat(group.y, ") rotate(").concat(group.rotation, ")")
29
+ }, /*#__PURE__*/React.createElement(If, {
30
+ condition: group.selected
31
+ }, /*#__PURE__*/React.createElement("g", {
32
+ "data-element-root": true,
33
+ "data-prototype": group.prototype,
34
+ "data-id": group.id,
35
+ "data-selected": group.selected,
36
+ "data-layer": layer.id,
37
+ "data-part": "rotation-anchor"
38
+ }, /*#__PURE__*/React.createElement("circle", {
39
+ cx: cx,
40
+ cy: cy,
41
+ r: radius,
42
+ style: STYLE_CIRCLE
43
+ }, /*#__PURE__*/React.createElement("title", null, translator.t("Group's Barycenter"))))));
44
+ }
45
+ Group.propTypes = {
46
+ group: PropTypes.object.isRequired,
47
+ layer: PropTypes.object.isRequired,
48
+ scene: PropTypes.object.isRequired,
49
+ catalog: PropTypes.object.isRequired
50
+ };
51
+ Group.contextTypes = {
52
+ translator: PropTypes.object.isRequired
53
+ };