kitchen-simulator 4.1.1-react-18 → 4.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (202) hide show
  1. package/README.md +3 -0
  2. package/es/AppContext.js +1 -1
  3. package/es/LiteKitchenConfigurator.js +162 -111
  4. package/es/LiteRenderer.js +161 -129
  5. package/es/actions/export.js +25 -12
  6. package/es/assets/gltf/door_sliding.bin +0 -0
  7. package/es/assets/img/svg/bottombar/elevation.svg +12 -5
  8. package/es/catalog/catalog.js +21 -5
  9. package/es/catalog/factories/area-factory-3d.js +17 -17
  10. package/es/catalog/factories/wall-factory.js +1 -1
  11. package/es/catalog/holes/window-clear/planner-element.js +2 -2
  12. package/es/catalog/properties/export.js +21 -0
  13. package/es/catalog/properties/property-checkbox.js +68 -0
  14. package/es/catalog/properties/property-color.js +39 -0
  15. package/es/catalog/properties/property-enum.js +50 -0
  16. package/es/catalog/properties/property-hidden.js +19 -0
  17. package/es/catalog/properties/property-lenght-measure.js +100 -0
  18. package/es/catalog/properties/property-length-measure.js +84 -0
  19. package/es/catalog/properties/property-length-measure_hole.js +100 -0
  20. package/es/catalog/properties/property-number.js +48 -0
  21. package/es/catalog/properties/property-read-only.js +26 -0
  22. package/es/catalog/properties/property-string.js +48 -0
  23. package/es/catalog/properties/property-toggle.js +39 -0
  24. package/es/catalog/properties/shared-property-style.js +14 -0
  25. package/es/catalog/utils/exporter.js +24 -11
  26. package/es/catalog/utils/item-loader.js +222 -213
  27. package/es/class/hole.js +0 -2
  28. package/es/class/item.js +89 -70
  29. package/es/class/layer.js +1 -1
  30. package/es/class/line.js +4 -8
  31. package/es/class/project.js +97 -80
  32. package/es/components/content.js +5 -93
  33. package/es/components/export.js +4 -6
  34. package/es/components/style/button.js +106 -0
  35. package/es/components/style/cancel-button.js +21 -0
  36. package/es/components/style/content-container.js +30 -0
  37. package/es/components/style/content-title.js +25 -0
  38. package/es/components/style/delete-button.js +24 -0
  39. package/es/components/style/export.js +28 -2
  40. package/es/components/style/form-block.js +20 -0
  41. package/es/components/style/form-color-input.js +26 -0
  42. package/es/components/style/form-label.js +22 -0
  43. package/es/components/style/form-number-input.js +29 -27
  44. package/es/components/style/form-number-input_2.js +200 -0
  45. package/es/components/style/form-select.js +19 -0
  46. package/es/components/style/form-slider.js +60 -0
  47. package/es/components/style/form-submit-button.js +25 -0
  48. package/es/components/style/form-text-input.js +69 -0
  49. package/es/components/viewer2d/grids/grid-streak.js +1 -1
  50. package/es/components/viewer2d/group.js +5 -4
  51. package/es/components/viewer2d/item.js +155 -359
  52. package/es/components/viewer2d/layer.js +1 -1
  53. package/es/components/viewer2d/line.js +22 -52
  54. package/es/components/viewer2d/ruler.js +16 -11
  55. package/es/components/viewer2d/rulerDist.js +38 -51
  56. package/es/components/viewer2d/rulerX.js +4 -2
  57. package/es/components/viewer2d/rulerY.js +3 -0
  58. package/es/components/viewer2d/scene.js +17 -12
  59. package/es/components/viewer2d/state.js +1 -1
  60. package/es/components/viewer2d/utils.js +2 -2
  61. package/es/components/viewer2d/vertex.js +3 -2
  62. package/es/components/viewer2d/viewer2d.js +56 -87
  63. package/es/components/viewer3d/ruler-utils/scene3D.js +1 -1
  64. package/es/components/viewer3d/scene-creator.js +255 -58
  65. package/es/components/viewer3d/viewer3d-first-person.js +24 -26
  66. package/es/components/viewer3d/viewer3d.js +103 -124
  67. package/es/constants.js +7 -2
  68. package/es/devLiteRenderer.js +491 -150
  69. package/es/index.js +588 -23
  70. package/es/models.js +13 -8
  71. package/es/plugins/SVGLoader.js +1414 -0
  72. package/es/plugins/console-debugger.js +34 -0
  73. package/es/plugins/export.js +7 -0
  74. package/es/plugins/keyboard.js +110 -0
  75. package/es/reducers/project-reducer.js +3 -0
  76. package/es/reducers/viewer2d-reducer.js +3 -1
  77. package/es/reducers/viewer3d-reducer.js +3 -1
  78. package/es/styles/export.js +5 -0
  79. package/es/styles/tabs.css +40 -0
  80. package/es/utils/geometry.js +77 -119
  81. package/es/utils/helper.js +38 -1
  82. package/es/utils/isolate-event-handler.js +827 -607
  83. package/es/utils/molding.js +459 -11
  84. package/es/utils/ruler.js +58 -0
  85. package/lib/AppContext.js +1 -1
  86. package/lib/LiteKitchenConfigurator.js +161 -111
  87. package/lib/LiteRenderer.js +160 -129
  88. package/lib/actions/export.js +35 -39
  89. package/lib/assets/gltf/door_sliding.bin +0 -0
  90. package/lib/assets/img/svg/bottombar/elevation.svg +12 -5
  91. package/lib/catalog/catalog.js +20 -4
  92. package/lib/catalog/factories/area-factory-3d.js +14 -14
  93. package/lib/catalog/factories/wall-factory.js +1 -1
  94. package/lib/catalog/holes/window-clear/planner-element.js +2 -2
  95. package/lib/catalog/properties/export.js +81 -0
  96. package/lib/catalog/properties/property-checkbox.js +76 -0
  97. package/lib/catalog/properties/property-color.js +47 -0
  98. package/lib/catalog/properties/property-enum.js +58 -0
  99. package/lib/catalog/properties/property-hidden.js +27 -0
  100. package/lib/catalog/properties/property-lenght-measure.js +108 -0
  101. package/lib/catalog/properties/property-length-measure.js +92 -0
  102. package/lib/catalog/properties/property-length-measure_hole.js +108 -0
  103. package/lib/catalog/properties/property-number.js +56 -0
  104. package/lib/catalog/properties/property-read-only.js +34 -0
  105. package/lib/catalog/properties/property-string.js +56 -0
  106. package/lib/catalog/properties/property-toggle.js +47 -0
  107. package/lib/catalog/properties/shared-property-style.js +21 -0
  108. package/lib/catalog/utils/exporter.js +24 -11
  109. package/lib/catalog/utils/item-loader.js +219 -210
  110. package/lib/class/hole.js +0 -2
  111. package/lib/class/item.js +87 -68
  112. package/lib/class/layer.js +1 -1
  113. package/lib/class/line.js +3 -7
  114. package/lib/class/project.js +97 -80
  115. package/lib/components/content.js +5 -93
  116. package/lib/components/export.js +6 -26
  117. package/lib/components/style/button.js +115 -0
  118. package/lib/components/style/cancel-button.js +29 -0
  119. package/lib/components/style/content-container.js +38 -0
  120. package/lib/components/style/content-title.js +35 -0
  121. package/lib/components/style/delete-button.js +34 -0
  122. package/lib/components/style/export.js +105 -1
  123. package/lib/components/style/form-block.js +28 -0
  124. package/lib/components/style/form-color-input.js +34 -0
  125. package/lib/components/style/form-label.js +30 -0
  126. package/lib/components/style/form-number-input.js +29 -27
  127. package/lib/components/style/form-number-input_2.js +209 -0
  128. package/lib/components/style/form-select.js +29 -0
  129. package/lib/components/style/form-slider.js +68 -0
  130. package/lib/components/style/form-submit-button.js +35 -0
  131. package/lib/components/style/form-text-input.js +78 -0
  132. package/lib/components/viewer2d/grids/grid-streak.js +1 -1
  133. package/lib/components/viewer2d/group.js +5 -4
  134. package/lib/components/viewer2d/item.js +152 -356
  135. package/lib/components/viewer2d/layer.js +1 -1
  136. package/lib/components/viewer2d/line.js +22 -52
  137. package/lib/components/viewer2d/ruler.js +15 -10
  138. package/lib/components/viewer2d/rulerDist.js +38 -51
  139. package/lib/components/viewer2d/rulerX.js +4 -2
  140. package/lib/components/viewer2d/rulerY.js +3 -0
  141. package/lib/components/viewer2d/scene.js +17 -12
  142. package/lib/components/viewer2d/state.js +1 -1
  143. package/lib/components/viewer2d/utils.js +2 -2
  144. package/lib/components/viewer2d/vertex.js +3 -2
  145. package/lib/components/viewer2d/viewer2d.js +54 -84
  146. package/lib/components/viewer3d/ruler-utils/scene3D.js +1 -1
  147. package/lib/components/viewer3d/scene-creator.js +252 -55
  148. package/lib/components/viewer3d/viewer3d-first-person.js +24 -26
  149. package/lib/components/viewer3d/viewer3d.js +100 -120
  150. package/lib/constants.js +12 -7
  151. package/lib/devLiteRenderer.js +489 -148
  152. package/lib/index.js +590 -23
  153. package/lib/models.js +13 -8
  154. package/lib/plugins/SVGLoader.js +1419 -0
  155. package/lib/plugins/console-debugger.js +42 -0
  156. package/lib/plugins/export.js +25 -0
  157. package/lib/plugins/keyboard.js +117 -0
  158. package/lib/reducers/project-reducer.js +3 -0
  159. package/lib/reducers/viewer2d-reducer.js +3 -1
  160. package/lib/reducers/viewer3d-reducer.js +3 -1
  161. package/lib/styles/export.js +13 -0
  162. package/lib/styles/tabs.css +40 -0
  163. package/lib/utils/geometry.js +77 -119
  164. package/lib/utils/helper.js +40 -1
  165. package/lib/utils/isolate-event-handler.js +827 -606
  166. package/lib/utils/molding.js +460 -9
  167. package/lib/utils/ruler.js +63 -0
  168. package/package.json +20 -15
  169. package/es/mocks/appliancePayload.json +0 -27
  170. package/es/mocks/cabinetPayload.json +0 -1914
  171. package/es/mocks/cabinetPayload2.json +0 -76
  172. package/es/mocks/dataBundle2.json +0 -4
  173. package/es/mocks/distancePayload.json +0 -6
  174. package/es/mocks/doorStylePayload2.json +0 -84
  175. package/es/mocks/furnishingPayload.json +0 -23
  176. package/es/mocks/itemCDSPayload.json +0 -27
  177. package/es/mocks/lightingPayload.json +0 -23
  178. package/es/mocks/mockProps.json +0 -43
  179. package/es/mocks/mockProps2.json +0 -9
  180. package/es/mocks/moldingPayload.json +0 -19
  181. package/es/mocks/projectItemsCatalog.json +0 -133
  182. package/es/mocks/rectangleShape.json +0 -238
  183. package/es/mocks/replaceCabinetPayload.json +0 -81
  184. package/es/mocks/roomShapePayload.json +0 -5
  185. package/es/useAppContext.js +0 -8
  186. package/lib/mocks/appliancePayload.json +0 -27
  187. package/lib/mocks/cabinetPayload.json +0 -1914
  188. package/lib/mocks/cabinetPayload2.json +0 -76
  189. package/lib/mocks/dataBundle2.json +0 -4
  190. package/lib/mocks/distancePayload.json +0 -6
  191. package/lib/mocks/doorStylePayload2.json +0 -84
  192. package/lib/mocks/furnishingPayload.json +0 -23
  193. package/lib/mocks/itemCDSPayload.json +0 -27
  194. package/lib/mocks/lightingPayload.json +0 -23
  195. package/lib/mocks/mockProps.json +0 -43
  196. package/lib/mocks/mockProps2.json +0 -9
  197. package/lib/mocks/moldingPayload.json +0 -19
  198. package/lib/mocks/projectItemsCatalog.json +0 -133
  199. package/lib/mocks/rectangleShape.json +0 -238
  200. package/lib/mocks/replaceCabinetPayload.json +0 -81
  201. package/lib/mocks/roomShapePayload.json +0 -5
  202. package/lib/useAppContext.js +0 -16
@@ -45,28 +45,28 @@ var STYLE_ROOM_SHAPE = exports.STYLE_ROOM_SHAPE = {
45
45
  var STYLE_DASH = {
46
46
  stroke: _constants.DASH_LINE_COLOR,
47
47
  strokeDasharray: '4 4',
48
- strokeWidth: '2px',
48
+ strokeWidth: '1px',
49
49
  strokeLinecap: 'round'
50
50
  };
51
51
  var STYLE_ROOM_ELEMENT = {
52
52
  fill: _constants.ROOM_ELEMENT_MEASUREMENT_LINE_COLOR,
53
53
  stroke: _constants.ROOM_ELEMENT_MEASUREMENT_LINE_COLOR,
54
- strokeWidth: '2px'
54
+ strokeWidth: '1.5px'
55
55
  };
56
56
  var STYLE_BASE_ITEM = {
57
57
  fill: _constants.BASE_ITEM_MEASUREMENT_LINE_COLOR,
58
58
  stroke: _constants.BASE_ITEM_MEASUREMENT_LINE_COLOR,
59
- strokeWidth: '2px'
59
+ strokeWidth: '1.5px'
60
60
  };
61
61
  var STYLE_WALL_ITEM = {
62
62
  fill: _constants.WALL_ITEM_MEASUREMENT_LINE_COLOR,
63
63
  stroke: _constants.WALL_ITEM_MEASUREMENT_LINE_COLOR,
64
- strokeWidth: '2px'
64
+ strokeWidth: '1.5px'
65
65
  };
66
66
  var STYLE_DISTANCE = {
67
67
  fill: _constants.DISTANCE_MEASUREMENT_LINE_COLOR,
68
68
  stroke: _constants.DISTANCE_MEASUREMENT_LINE_COLOR,
69
- strokeWidth: '2px'
69
+ strokeWidth: '1.5px'
70
70
  };
71
71
  var selectStyle = function selectStyle(element, style) {
72
72
  return element.iFlag ? style : STYLE_DISTANCE;
@@ -258,13 +258,11 @@ function Line(_ref) {
258
258
  if (!showWallCabinetMeasure || wall_posArray.length <= 2) {
259
259
  wallSpace = 0;
260
260
  }
261
- wallRuler = wall_posAndwidth.map(function (pAw, idx) {
261
+ wallRuler = wall_posAndwidth.map(function (pAw) {
262
262
  if (pAw.length > 1) {
263
263
  if (Math.sin(angle) === 0 || _export.GeometryUtils.almostEqual(y1, y2)) {
264
264
  if (x1 - x2 > 0) {
265
- return /*#__PURE__*/_react["default"].createElement("g", {
266
- key: "wallRuler-".concat(idx)
267
- }, /*#__PURE__*/_react["default"].createElement("line", {
265
+ return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
268
266
  x1: pAw.pos.x + pAw.length,
269
267
  y1: pAw.pos.y,
270
268
  x2: pAw.pos.x + pAw.length,
@@ -286,9 +284,7 @@ function Line(_ref) {
286
284
  style: STYLE_DASH
287
285
  }));
288
286
  } else {
289
- return /*#__PURE__*/_react["default"].createElement("g", {
290
- key: "wallRuler-".concat(idx)
291
- }, /*#__PURE__*/_react["default"].createElement("line", {
287
+ return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
292
288
  x1: pAw.pos.x + pAw.length,
293
289
  y1: pAw.pos.y,
294
290
  x2: pAw.pos.x + pAw.length,
@@ -313,9 +309,7 @@ function Line(_ref) {
313
309
  } else {
314
310
  if (y1 - y2 > 0) {
315
311
  if (x1 - x2 < 0 || _export.GeometryUtils.almostEqual(x1, x2)) {
316
- return /*#__PURE__*/_react["default"].createElement("g", {
317
- key: "wallRuler-".concat(idx)
318
- }, /*#__PURE__*/_react["default"].createElement("line", {
312
+ return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
319
313
  x1: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI),
320
314
  y1: pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI),
321
315
  x2: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
@@ -337,9 +331,7 @@ function Line(_ref) {
337
331
  style: STYLE_DASH
338
332
  }));
339
333
  } else {
340
- return /*#__PURE__*/_react["default"].createElement("g", {
341
- key: "wallRuler-".concat(idx)
342
- }, /*#__PURE__*/_react["default"].createElement("line", {
334
+ return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
343
335
  x1: pAw.pos.x,
344
336
  y1: pAw.pos.y,
345
337
  x2: pAw.pos.x - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
@@ -363,9 +355,7 @@ function Line(_ref) {
363
355
  }
364
356
  } else {
365
357
  if (x1 - x2 < 0 || _export.GeometryUtils.almostEqual(x1, x2)) {
366
- return /*#__PURE__*/_react["default"].createElement("g", {
367
- key: "wallRuler-".concat(idx)
368
- }, /*#__PURE__*/_react["default"].createElement("line", {
358
+ return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
369
359
  x1: pAw.pos.x,
370
360
  y1: pAw.pos.y,
371
361
  x2: pAw.pos.x - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
@@ -387,9 +377,7 @@ function Line(_ref) {
387
377
  style: STYLE_DASH
388
378
  }));
389
379
  } else {
390
- return /*#__PURE__*/_react["default"].createElement("g", {
391
- key: "wallRuler-".concat(idx)
392
- }, /*#__PURE__*/_react["default"].createElement("line", {
380
+ return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
393
381
  x1: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI),
394
382
  y1: pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI),
395
383
  x2: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + wallSpace) * Math.sin(angle / 180 * Math.PI),
@@ -482,13 +470,11 @@ function Line(_ref) {
482
470
  if (!showBaseCabinetMeasure || base_posArray.length <= 2) {
483
471
  baseSpace -= STEP;
484
472
  }
485
- baseRuler = base_posAndwidth.map(function (pAw, idx) {
473
+ baseRuler = base_posAndwidth.map(function (pAw) {
486
474
  if (pAw.length > 1) {
487
475
  if (Math.sin(angle) === 0 || _export.GeometryUtils.almostEqual(y1, y2)) {
488
476
  if (x1 - x2 > 0) {
489
- return /*#__PURE__*/_react["default"].createElement("g", {
490
- key: "baseRuler-".concat(idx)
491
- }, /*#__PURE__*/_react["default"].createElement("line", {
477
+ return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
492
478
  x1: pAw.pos.x + pAw.length,
493
479
  y1: pAw.pos.y,
494
480
  x2: pAw.pos.x + pAw.length,
@@ -510,9 +496,7 @@ function Line(_ref) {
510
496
  style: STYLE_DASH
511
497
  }));
512
498
  } else {
513
- return /*#__PURE__*/_react["default"].createElement("g", {
514
- key: "baseRuler-".concat(idx)
515
- }, /*#__PURE__*/_react["default"].createElement("line", {
499
+ return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
516
500
  x1: pAw.pos.x + pAw.length,
517
501
  y1: pAw.pos.y,
518
502
  x2: pAw.pos.x + pAw.length,
@@ -537,9 +521,7 @@ function Line(_ref) {
537
521
  } else {
538
522
  if (y1 - y2 > 0) {
539
523
  if (x1 - x2 < 0 || _export.GeometryUtils.almostEqual(x1, x2)) {
540
- return /*#__PURE__*/_react["default"].createElement("g", {
541
- key: "baseRuler-".concat(idx)
542
- }, /*#__PURE__*/_react["default"].createElement("line", {
524
+ return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
543
525
  x1: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI),
544
526
  y1: pAw.pos.y - pAw.length * Math.sin(angle / 180 * Math.PI),
545
527
  x2: pAw.pos.x - pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
@@ -561,9 +543,7 @@ function Line(_ref) {
561
543
  style: STYLE_DASH
562
544
  }));
563
545
  } else {
564
- return /*#__PURE__*/_react["default"].createElement("g", {
565
- key: "baseRuler-".concat(idx)
566
- }, /*#__PURE__*/_react["default"].createElement("line", {
546
+ return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
567
547
  x1: pAw.pos.x,
568
548
  y1: pAw.pos.y,
569
549
  x2: pAw.pos.x - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
@@ -587,9 +567,7 @@ function Line(_ref) {
587
567
  }
588
568
  } else {
589
569
  if (x1 - x2 < 0 || _export.GeometryUtils.almostEqual(x1, x2)) {
590
- return /*#__PURE__*/_react["default"].createElement("g", {
591
- key: "baseRuler-".concat(idx)
592
- }, /*#__PURE__*/_react["default"].createElement("line", {
570
+ return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
593
571
  x1: pAw.pos.x,
594
572
  y1: pAw.pos.y,
595
573
  x2: pAw.pos.x - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
@@ -611,9 +589,7 @@ function Line(_ref) {
611
589
  style: STYLE_DASH
612
590
  }));
613
591
  } else {
614
- return /*#__PURE__*/_react["default"].createElement("g", {
615
- key: "baseRuler-".concat(idx)
616
- }, /*#__PURE__*/_react["default"].createElement("line", {
592
+ return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
617
593
  x1: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI),
618
594
  y1: pAw.pos.y + pAw.length * Math.sin(angle / 180 * Math.PI),
619
595
  x2: pAw.pos.x + pAw.length * Math.cos(angle / 180 * Math.PI) - (thickness / 2 + baseSpace) * Math.sin(angle / 180 * Math.PI),
@@ -687,9 +663,7 @@ function Line(_ref) {
687
663
  //the space from the dimensioning line to the bottom
688
664
  var lineSpacedimension2 = 14;
689
665
  if (compareVertices(vertex0, vertex1) >= 0 && vertex0.x !== vertex1.x) {
690
- renderedRuler.push(/*#__PURE__*/_react["default"].createElement("g", {
691
- key: 'ruler_' + line.id
692
- }, /*#__PURE__*/_react["default"].createElement("line", {
666
+ renderedRuler.push(/*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
693
667
  x1: length,
694
668
  y1: lineSpace + lineSpacedimension1,
695
669
  x2: length,
@@ -711,9 +685,7 @@ function Line(_ref) {
711
685
  style: STYLE_ROOM_SHAPE
712
686
  })));
713
687
  } else {
714
- renderedRuler.push(/*#__PURE__*/_react["default"].createElement("g", {
715
- key: 'ruler_' + line.id
716
- }, /*#__PURE__*/_react["default"].createElement("line", {
688
+ renderedRuler.push(/*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("line", {
717
689
  x1: 0,
718
690
  y1: lineSpace + lineSpacedimension1,
719
691
  x2: 0,
@@ -812,9 +784,7 @@ function Line(_ref) {
812
784
  }
813
785
  });
814
786
  }
815
- return /*#__PURE__*/_react["default"].createElement("g", {
816
- key: line.id
817
- }, /*#__PURE__*/_react["default"].createElement("g", {
787
+ return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("g", {
818
788
  transform: "translate(".concat(x1, ", ").concat(y1, ") rotate(").concat(angle, ", 0, 0)"),
819
789
  "data-element-root": true,
820
790
  "data-prototype": 'ruler',
@@ -7,14 +7,10 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports["default"] = Ruler;
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _convertUnitsLite = require("../../utils/convert-units-lite");
11
10
  var _idBroker = _interopRequireDefault(require("../../utils/id-broker"));
12
11
  var _constants = require("../../constants");
13
12
  var _line = require("./line");
14
- var STYLE = {
15
- stroke: _constants.TEXT_COLOR_NEUTRAL_7,
16
- strokeWidth: '1px'
17
- };
13
+ var _ruler = require("../../utils/ruler");
18
14
  var BACKGROUNDSTYLE = {
19
15
  fill: 'transparent',
20
16
  fillOpacity: 0.8
@@ -38,11 +34,20 @@ function Ruler(_ref) {
38
34
  rulerUnit = _ref.rulerUnit,
39
35
  transform = _ref.transform,
40
36
  style = _ref.style;
41
- var distanceText = (0, _convertUnitsLite.convert)(length).from(unit).to(rulerUnit).toFixed(0);
42
- var textLength = (distanceText.length + layer.unit.length) * 9;
37
+ var _getRulerDisplayData = (0, _ruler.getRulerDisplayData)({
38
+ length: length,
39
+ unit: unit,
40
+ rulerUnit: rulerUnit,
41
+ layerUnit: layer.unit
42
+ }),
43
+ distanceText = _getRulerDisplayData.distanceText,
44
+ unitStr = _getRulerDisplayData.unitStr,
45
+ textLength = _getRulerDisplayData.textLength,
46
+ bShowText = _getRulerDisplayData.bShowText,
47
+ bShowLine = _getRulerDisplayData.bShowLine;
43
48
  return /*#__PURE__*/_react["default"].createElement("g", {
44
49
  transform: transform
45
- }, /*#__PURE__*/_react["default"].createElement("g", {
50
+ }, bShowText && /*#__PURE__*/_react["default"].createElement("g", {
46
51
  id: "ruler"
47
52
  }, /*#__PURE__*/_react["default"].createElement("rect", {
48
53
  id: "ruler_rect_".concat(_idBroker["default"].acquireID()),
@@ -59,7 +64,7 @@ function Ruler(_ref) {
59
64
  transform: "scale(1, -1)",
60
65
  style: STYLE_TEXT,
61
66
  fill: _constants.TEXT_COLOR_NEUTRAL_7
62
- }, Math.round((0, _convertUnitsLite.convert)(distanceText).from('in').to(layer.unit) * 100) / 100, layer.unit === 'in' ? '"' : layer.unit)), /*#__PURE__*/_react["default"].createElement("line", {
67
+ }, distanceText, unitStr)), bShowLine && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("line", {
63
68
  x1: style === _line.STYLE_ROOM_SHAPE ? 0 : 4,
64
69
  y1: "0",
65
70
  x2: (length - textLength) / 2 < 0 ? 0 : (length - textLength) / 2,
@@ -77,7 +82,7 @@ function Ruler(_ref) {
77
82
  }), /*#__PURE__*/_react["default"].createElement("polygon", {
78
83
  points: "".concat(length - 3, ", 0, ").concat(length - 6.5, ", 2, ").concat(length - 6.5, ", -2"),
79
84
  style: style
80
- })));
85
+ }))));
81
86
  }
82
87
  Ruler.propTypes = {
83
88
  length: _propTypes["default"].number.isRequired,
@@ -7,12 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports["default"] = RulerDist;
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _convertUnitsLite = require("../../utils/convert-units-lite");
11
- var ARROW_STYLE = {
12
- stroke: '#1183B7',
13
- strokeWidth: '2px',
14
- strokeLinecap: 'round'
15
- };
10
+ var _ruler = require("../../utils/ruler");
16
11
  var STYLE = {
17
12
  stroke: '#455A64',
18
13
  fill: '#455A64',
@@ -38,10 +33,17 @@ function RulerDist(_ref) {
38
33
  transform = _ref.transform,
39
34
  angle = _ref.angle,
40
35
  rotation = _ref.rotation;
41
- var _unit = 'in';
42
- // let _length = convert(length).from(unit).to(rulerUnit);
43
- var distanceText = "".concat((0, _convertUnitsLite.convert)(length).from('cm').to(rulerUnit).toFixed(0));
44
- var textLength = (distanceText.length + layer.unit.length) * 8;
36
+ var _getRulerDisplayData = (0, _ruler.getRulerDisplayData)({
37
+ length: length,
38
+ unit: unit,
39
+ rulerUnit: rulerUnit,
40
+ layerUnit: layer.unit
41
+ }),
42
+ distanceText = _getRulerDisplayData.distanceText,
43
+ unitStr = _getRulerDisplayData.unitStr,
44
+ textLength = _getRulerDisplayData.textLength,
45
+ bShowText = _getRulerDisplayData.bShowText,
46
+ bShowLine = _getRulerDisplayData.bShowLine;
45
47
  var textangle = angle + 90;
46
48
  var textRotation = 1;
47
49
  var ay = 2;
@@ -73,47 +75,32 @@ function RulerDist(_ref) {
73
75
  textRotation = 180;
74
76
  ay = 5;
75
77
  }
76
- if (distanceText > 0) {
77
- if (distanceText < 28) {
78
- return /*#__PURE__*/_react["default"].createElement("g", {
79
- transform: transform
80
- }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("text", {
81
- x: "0",
82
- y: "0",
83
- transform: "translate(".concat(length / 2, ",").concat(ay, ") scale(1, -1) rotate(").concat(textRotation, ")"),
84
- style: STYLE_TEXT
85
- }, Math.round((0, _convertUnitsLite.convert)(distanceText).from('in').to(layer.unit) * 100) / 100, layer.unit === 'in' ? '"' : layer.unit)));
86
- } else {
87
- return /*#__PURE__*/_react["default"].createElement("g", {
88
- transform: transform
89
- }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("text", {
90
- x: "0",
91
- y: "0",
92
- transform: "translate(".concat(length / 2, ",").concat(ay, ") scale(1, -1) rotate(").concat(textRotation, ")"),
93
- style: STYLE_TEXT
94
- }, Math.round((0, _convertUnitsLite.convert)(distanceText).from('in').to(layer.unit) * 100) / 100, layer.unit === 'in' ? '"' : layer.unit)), /*#__PURE__*/_react["default"].createElement("line", {
95
- x1: "2",
96
- y1: "0",
97
- x2: (length - textLength) / 2 < 0 ? 0 : (length - textLength) / 2,
98
- y2: "0",
99
- style: STYLE
100
- }), /*#__PURE__*/_react["default"].createElement("polygon", {
101
- points: "1, 0, 4.5, -2, 4.5, 2 ",
102
- style: STYLE
103
- }), /*#__PURE__*/_react["default"].createElement("line", {
104
- x1: (length + textLength) / 2 < 0 ? 0 : (length + textLength) / 2 < length ? (length + textLength) / 2 : length,
105
- y1: "0",
106
- x2: length,
107
- y2: "0",
108
- style: STYLE
109
- }), /*#__PURE__*/_react["default"].createElement("polygon", {
110
- points: "".concat(length - 1, ", 0, ").concat(length - 4.5, ", 2, ").concat(length - 4.5, ", -2"),
111
- style: STYLE
112
- }));
113
- }
114
- } else {
115
- return null;
116
- }
78
+ return /*#__PURE__*/_react["default"].createElement("g", {
79
+ transform: transform
80
+ }, bShowText && /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("text", {
81
+ x: "0",
82
+ y: "0",
83
+ transform: "translate(".concat(length / 2, ",").concat(ay, ") scale(1, -1) rotate(").concat(textRotation, ")"),
84
+ style: STYLE_TEXT
85
+ }, distanceText, unitStr)), bShowLine && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("line", {
86
+ x1: "2",
87
+ y1: "0",
88
+ x2: (length - textLength) / 2 < 0 ? 0 : (length - textLength) / 2,
89
+ y2: "0",
90
+ style: STYLE
91
+ }), /*#__PURE__*/_react["default"].createElement("polygon", {
92
+ points: "1, 0, 4.5, -2, 4.5, 2 ",
93
+ style: STYLE
94
+ }), /*#__PURE__*/_react["default"].createElement("line", {
95
+ x1: (length + textLength) / 2 < 0 ? 0 : (length + textLength) / 2 < length ? (length + textLength) / 2 : length,
96
+ y1: "0",
97
+ x2: length,
98
+ y2: "0",
99
+ style: STYLE
100
+ }), /*#__PURE__*/_react["default"].createElement("polygon", {
101
+ points: "".concat(length - 1, ", 0, ").concat(length - 4.5, ", 2, ").concat(length - 4.5, ", -2"),
102
+ style: STYLE
103
+ })));
117
104
  }
118
105
  RulerDist.propTypes = {
119
106
  length: _propTypes["default"].number.isRequired,
@@ -52,10 +52,9 @@ var RulerX = exports["default"] = /*#__PURE__*/function (_Component) {
52
52
  height: '100%',
53
53
  color: this.props.fontColor
54
54
  };
55
- var left = Number.isFinite(this.props.zeroLeftPosition) && Number.isFinite(this.props.mouseX) && Number.isFinite(this.props.zoom) ? this.props.zeroLeftPosition + this.props.mouseX * this.props.zoom - 6.5 : 0;
56
55
  var markerStyle = {
57
56
  position: 'absolute',
58
- left: left,
57
+ left: this.props.zeroLeftPosition + this.props.mouseX * this.props.zoom - 6.5,
59
58
  top: 8,
60
59
  width: 0,
61
60
  height: 0,
@@ -149,4 +148,7 @@ RulerX.defaultProps = {
149
148
  fontColor: SharedStyle.COLORS.white,
150
149
  markerColor: SharedStyle.SECONDARY_COLOR.main
151
150
  };
151
+ RulerX.contextTypes = {
152
+ translator: _propTypes["default"].object.isRequired
153
+ };
152
154
  module.exports = exports.default;
@@ -150,4 +150,7 @@ RulerY.defaultProps = {
150
150
  fontColor: SharedStyle.COLORS.white,
151
151
  markerColor: SharedStyle.SECONDARY_COLOR.main
152
152
  };
153
+ RulerY.contextTypes = {
154
+ translator: _propTypes["default"].object.isRequired
155
+ };
153
156
  module.exports = exports.default;
@@ -28,15 +28,16 @@ var Scene = exports["default"] = /*#__PURE__*/function (_Component) {
28
28
  }
29
29
  (0, _inherits2["default"])(Scene, _Component);
30
30
  return (0, _createClass2["default"])(Scene, [{
31
- key: "componentDidUpdate",
31
+ key: "componentWillReceiveProps",
32
32
  value: function () {
33
- var _componentDidUpdate = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(prevProps) {
34
- var _this$props, scene, catalog, height, layers, selectedLayer, msg, isNotFoundInElements, itemType;
33
+ var _componentWillReceiveProps = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(nextProps) {
34
+ var scene, catalog, height, layers, selectedLayer, msg, isNotFoundInElements, itemType;
35
35
  return _regenerator["default"].wrap(function (_context) {
36
36
  while (1) switch (_context.prev = _context.next) {
37
37
  case 0:
38
- if (this.props.scene.hashCode() !== prevProps.scene.hashCode()) {
39
- _this$props = this.props, scene = _this$props.scene, catalog = _this$props.catalog;
38
+ // console.log("componentDidMount", this.props.scene.hashCode(), nextProps.scene.hashCode());
39
+ if (this.props.scene.hashCode() !== nextProps.scene.hashCode()) {
40
+ scene = nextProps.scene, catalog = nextProps.catalog;
40
41
  height = scene.height, layers = scene.layers;
41
42
  selectedLayer = layers.get(scene.selectedLayer);
42
43
  msg = '';
@@ -68,10 +69,10 @@ var Scene = exports["default"] = /*#__PURE__*/function (_Component) {
68
69
  }
69
70
  }, _callee, this);
70
71
  }));
71
- function componentDidUpdate(_x) {
72
- return _componentDidUpdate.apply(this, arguments);
72
+ function componentWillReceiveProps(_x) {
73
+ return _componentWillReceiveProps.apply(this, arguments);
73
74
  }
74
- return componentDidUpdate;
75
+ return componentWillReceiveProps;
75
76
  }()
76
77
  }, {
77
78
  key: "shouldComponentUpdate",
@@ -82,9 +83,10 @@ var Scene = exports["default"] = /*#__PURE__*/function (_Component) {
82
83
  key: "render",
83
84
  value: function render() {
84
85
  var _this = this;
85
- var _this$props2 = this.props,
86
- scene = _this$props2.scene,
87
- catalog = _this$props2.catalog;
86
+ // console.log("scene", this);
87
+ var _this$props = this.props,
88
+ scene = _this$props.scene,
89
+ catalog = _this$props.catalog;
88
90
  var height = scene.height,
89
91
  layers = scene.layers;
90
92
  var selectedLayer = layers.get(scene.selectedLayer);
@@ -127,6 +129,9 @@ var Scene = exports["default"] = /*#__PURE__*/function (_Component) {
127
129
  Scene.propTypes = {
128
130
  scene: _propTypes["default"].object.isRequired,
129
131
  catalog: _propTypes["default"].object.isRequired,
130
- relatedLines: _propTypes["default"].array.isRequired
132
+ relatedLines: _propTypes["default"].object.isRequired
133
+ };
134
+ Scene.contextTypes = {
135
+ projectActions: _propTypes["default"].object.isRequired
131
136
  };
132
137
  module.exports = exports.default;
@@ -78,6 +78,6 @@ function State(_ref) {
78
78
  State.propTypes = {
79
79
  state: _propTypes["default"].object.isRequired,
80
80
  catalog: _propTypes["default"].object.isRequired,
81
- relatedLines: _propTypes["default"].array.isRequired
81
+ relatedLines: _propTypes["default"].object.isRequired
82
82
  };
83
83
  module.exports = exports.default;
@@ -201,7 +201,7 @@ var areaPolygon = exports.areaPolygon = function areaPolygon(points) {
201
201
  };
202
202
  var isWarningItem = exports.isWarningItem = function isWarningItem(item) {
203
203
  var _item$toJS$doorStyle;
204
- return !(item !== null && item !== void 0 && (_item$toJS$doorStyle = item.toJS().doorStyle) !== null && _item$toJS$doorStyle !== void 0 && (_item$toJS$doorStyle = _item$toJS$doorStyle.doorStyles) !== null && _item$toJS$doorStyle !== void 0 && (_item$toJS$doorStyle = _item$toJS$doorStyle.cds) !== null && _item$toJS$doorStyle !== void 0 && _item$toJS$doorStyle.filter(function (cd) {
204
+ if (item.category === 'cabinet') return !(item !== null && item !== void 0 && (_item$toJS$doorStyle = item.toJS().doorStyle) !== null && _item$toJS$doorStyle !== void 0 && (_item$toJS$doorStyle = _item$toJS$doorStyle.doorStyles) !== null && _item$toJS$doorStyle !== void 0 && (_item$toJS$doorStyle = _item$toJS$doorStyle.cds) !== null && _item$toJS$doorStyle !== void 0 && _item$toJS$doorStyle.filter(function (cd) {
205
205
  return cd.itemID == (item === null || item === void 0 ? void 0 : item.getIn(['itemID']));
206
- }).length) > 0;
206
+ }).length) > 0;else return false;
207
207
  };
@@ -9,6 +9,7 @@ exports["default"] = Vertex;
9
9
  var _react = _interopRequireDefault(require("react"));
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
  var SharedStyle = _interopRequireWildcard(require("../../shared-style"));
12
+ var _utils = require("./utils");
12
13
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
13
14
  //Space from the center of the point(Use cases:x - vertexthickness,y + vertexthickness )
14
15
  var vertexthickness = 4;
@@ -40,9 +41,9 @@ function Vertex(_ref) {
40
41
  });
41
42
  if (index > -1) {
42
43
  var vertice = line.relatedVertices.filter(function (a) {
43
- if (a['index'] === undefined) {
44
+ if ((0, _utils.isEmpty)(a['index'])) {
44
45
  return a.get('index') === index;
45
- } else if (a['index'] !== undefined) {
46
+ } else {
46
47
  return a.index === index;
47
48
  }
48
49
  }).get(0);