kitchen-simulator 4.0.0-queuedEvents → 4.0.0

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 (111) hide show
  1. package/es/LiteKitchenConfigurator.js +141 -288
  2. package/es/LiteRenderer.js +159 -398
  3. package/es/actions/items-actions.js +10 -6
  4. package/es/actions/lines-actions.js +3 -1
  5. package/es/actions/project-actions.js +15 -5
  6. package/es/assets/img/svg/bottombar/elevation.svg +12 -5
  7. package/es/catalog/areas/area/planner-element.js +10 -5
  8. package/es/catalog/catalog.js +1 -4
  9. package/es/catalog/factories/area-factory-3d.js +2 -1
  10. package/es/catalog/factories/wall-factory-3d.js +2 -2
  11. package/es/catalog/factories/wall-factory.js +8 -8
  12. package/es/catalog/lines/wall/planner-element.js +18 -9
  13. package/es/catalog/utils/exporter.js +7 -3
  14. package/es/catalog/utils/item-loader.js +24 -14
  15. package/es/catalog/utils/mtl-loader.js +2 -2
  16. package/es/catalog/utils/obj-loader.js +2 -2
  17. package/es/class/hole.js +0 -2
  18. package/es/class/item.js +183 -184
  19. package/es/class/line.js +11 -3
  20. package/es/class/project.js +165 -48
  21. package/es/components/content.js +19 -6
  22. package/es/components/viewer2d/grids/grid-streak.js +1 -1
  23. package/es/components/viewer2d/item.js +84 -51
  24. package/es/components/viewer2d/line.js +315 -243
  25. package/es/components/viewer2d/ruler.js +20 -38
  26. package/es/components/viewer2d/rulerDist.js +48 -78
  27. package/es/components/viewer2d/utils.js +6 -0
  28. package/es/components/viewer2d/viewer2d.js +298 -220
  29. package/es/components/viewer3d/front3D.js +3 -2
  30. package/es/components/viewer3d/libs/mtl-loader.js +2 -2
  31. package/es/components/viewer3d/libs/obj-loader.js +2 -2
  32. package/es/components/viewer3d/libs/orbit-controls.js +3 -4
  33. package/es/components/viewer3d/libs/pointer-lock-controls.js +6 -7
  34. package/es/components/viewer3d/scene-creator.js +51 -15
  35. package/es/components/viewer3d/viewer3d.js +121 -82
  36. package/es/constants.js +111 -3
  37. package/es/devLiteRenderer.js +688 -31
  38. package/es/index.js +567 -87
  39. package/es/models.js +9 -5
  40. package/es/plugins/SVGLoader.js +7 -5
  41. package/es/plugins/console-debugger.js +0 -2
  42. package/es/plugins/keyboard.js +15 -6
  43. package/es/reducers/items-reducer.js +5 -5
  44. package/es/reducers/lines-reducer.js +1 -1
  45. package/es/reducers/project-reducer.js +5 -3
  46. package/es/shared-style.js +4 -4
  47. package/es/utils/geometry.js +163 -2
  48. package/es/utils/get-edges-of-subgraphs.js +1 -1
  49. package/es/utils/graph-cycles.js +1 -1
  50. package/es/utils/graph.js +1 -1
  51. package/es/utils/helper.js +105 -3
  52. package/es/utils/isolate-event-handler.js +1542 -164
  53. package/es/utils/molding.js +461 -11
  54. package/lib/LiteKitchenConfigurator.js +141 -289
  55. package/lib/LiteRenderer.js +159 -399
  56. package/lib/actions/items-actions.js +10 -6
  57. package/lib/actions/lines-actions.js +3 -1
  58. package/lib/actions/project-actions.js +15 -4
  59. package/lib/assets/img/svg/bottombar/elevation.svg +12 -5
  60. package/lib/catalog/areas/area/planner-element.js +11 -5
  61. package/lib/catalog/catalog.js +1 -4
  62. package/lib/catalog/factories/area-factory-3d.js +2 -1
  63. package/lib/catalog/factories/wall-factory-3d.js +2 -2
  64. package/lib/catalog/factories/wall-factory.js +8 -8
  65. package/lib/catalog/lines/wall/planner-element.js +19 -9
  66. package/lib/catalog/utils/exporter.js +7 -3
  67. package/lib/catalog/utils/item-loader.js +24 -14
  68. package/lib/catalog/utils/mtl-loader.js +9 -2
  69. package/lib/catalog/utils/obj-loader.js +10 -2
  70. package/lib/class/hole.js +0 -2
  71. package/lib/class/item.js +180 -181
  72. package/lib/class/line.js +9 -1
  73. package/lib/class/project.js +164 -47
  74. package/lib/components/content.js +19 -6
  75. package/lib/components/viewer2d/grids/grid-streak.js +1 -1
  76. package/lib/components/viewer2d/item.js +83 -50
  77. package/lib/components/viewer2d/line.js +315 -242
  78. package/lib/components/viewer2d/ruler.js +19 -37
  79. package/lib/components/viewer2d/rulerDist.js +48 -78
  80. package/lib/components/viewer2d/utils.js +7 -0
  81. package/lib/components/viewer2d/viewer2d.js +296 -219
  82. package/lib/components/viewer3d/front3D.js +3 -2
  83. package/lib/components/viewer3d/libs/mtl-loader.js +9 -2
  84. package/lib/components/viewer3d/libs/obj-loader.js +9 -2
  85. package/lib/components/viewer3d/libs/orbit-controls.js +11 -5
  86. package/lib/components/viewer3d/libs/pointer-lock-controls.js +13 -7
  87. package/lib/components/viewer3d/scene-creator.js +49 -13
  88. package/lib/components/viewer3d/viewer3d.js +119 -80
  89. package/lib/constants.js +116 -7
  90. package/lib/devLiteRenderer.js +687 -30
  91. package/lib/index.js +567 -87
  92. package/lib/models.js +9 -5
  93. package/lib/plugins/SVGLoader.js +7 -5
  94. package/lib/plugins/console-debugger.js +0 -2
  95. package/lib/plugins/keyboard.js +15 -6
  96. package/lib/reducers/items-reducer.js +5 -5
  97. package/lib/reducers/lines-reducer.js +1 -1
  98. package/lib/reducers/project-reducer.js +4 -2
  99. package/lib/shared-style.js +4 -4
  100. package/lib/utils/geometry.js +164 -2
  101. package/lib/utils/get-edges-of-subgraphs.js +6 -1
  102. package/lib/utils/graph-cycles.js +7 -8
  103. package/lib/utils/graph.js +6 -1
  104. package/lib/utils/helper.js +108 -2
  105. package/lib/utils/isolate-event-handler.js +1538 -159
  106. package/lib/utils/molding.js +463 -9
  107. package/package.json +1 -1
  108. package/es/assets/Window.hdr +0 -2100
  109. package/es/assets/img/1.jpg +0 -0
  110. package/lib/assets/Window.hdr +0 -2100
  111. package/lib/assets/img/1.jpg +0 -0
@@ -10,6 +10,7 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
10
10
  var _react = _interopRequireWildcard(require("react"));
11
11
  var _viewer3d = _interopRequireDefault(require("./viewer3d"));
12
12
  var _state3D = _interopRequireDefault(require("./ruler-utils/state3D"));
13
+ var _utils = require("../viewer2d/utils");
13
14
  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); }
14
15
  var k = 0;
15
16
  function Front3D(_ref, _ref2) {
@@ -35,9 +36,9 @@ function Front3D(_ref, _ref2) {
35
36
  setToolbar('');
36
37
  };
37
38
  (0, _react.useEffect)(function () {
38
- document.getElementById('front').addEventListener('mouseup', mouseUpEvent);
39
+ if (!(0, _utils.isEmpty)(document.getElementById('front'))) document.getElementById('front').addEventListener('mouseup', mouseUpEvent);
39
40
  return function () {
40
- document.getElementById('front').removeEventListener('mouseup', mouseUpEvent);
41
+ if (!(0, _utils.isEmpty)(document.getElementById('front'))) document.getElementById('front').removeEventListener('mouseup', mouseUpEvent);
41
42
  };
42
43
  }, []);
43
44
  return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("svg", {
@@ -1,12 +1,18 @@
1
1
  "use strict";
2
2
 
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var THREE = _interopRequireWildcard(require("three"));
9
+ 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); }
3
10
  /**
4
11
  * Loads a Wavefront .mtl file specifying materials
5
12
  *
6
13
  * @author angelxuanchang
7
14
  */
8
15
 
9
- var THREE = window.THREE || require('three');
10
16
  var MTLLoader;
11
17
  MTLLoader = function MTLLoader(manager) {
12
18
  this.manager = manager !== undefined ? manager : THREE.DefaultLoadingManager;
@@ -356,4 +362,5 @@ MTLLoader.MaterialCreator.prototype = {
356
362
  return texture;
357
363
  }
358
364
  };
359
- module.exports = MTLLoader;
365
+ var _default = exports["default"] = MTLLoader;
366
+ module.exports = exports.default;
@@ -1,10 +1,16 @@
1
1
  "use strict";
2
2
 
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var THREE = _interopRequireWildcard(require("three"));
9
+ 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); }
3
10
  /**
4
11
  * @author mrdoob / http://mrdoob.com/
5
12
  */
6
13
 
7
- var THREE = window.THREE || require('three');
8
14
  var OBJLoader;
9
15
  OBJLoader = function OBJLoader(manager) {
10
16
  this.manager = manager !== undefined ? manager : THREE.DefaultLoadingManager;
@@ -461,4 +467,5 @@ OBJLoader.prototype = {
461
467
  return container;
462
468
  }
463
469
  };
464
- module.exports = OBJLoader;
470
+ var _default = exports["default"] = OBJLoader;
471
+ module.exports = exports.default;
@@ -1,5 +1,12 @@
1
1
  "use strict";
2
2
 
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = OrbitControls;
8
+ var THREE = _interopRequireWildcard(require("three"));
9
+ 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); }
3
10
  /**
4
11
  * @author qiao / https://github.com/qiao
5
12
  * @author mrdoob / http://mrdoob.com
@@ -15,9 +22,7 @@
15
22
  // Zoom - middle mouse, or mousewheel / touch: two finger spread or squish
16
23
  // Pan - right mouse, or arrow keys / touch: three finter swipe
17
24
 
18
- var THREE = window.THREE || require('three');
19
- var OrbitControls;
20
- module.exports = OrbitControls = function OrbitControls(object, domElement) {
25
+ function OrbitControls(object, domElement) {
21
26
  this.object = object;
22
27
  this.domElement = domElement !== undefined ? domElement : document;
23
28
 
@@ -625,7 +630,7 @@ module.exports = OrbitControls = function OrbitControls(object, domElement) {
625
630
  // force an update at start
626
631
 
627
632
  this.update();
628
- };
633
+ }
629
634
  OrbitControls.prototype = Object.create(THREE.EventDispatcher.prototype);
630
635
  OrbitControls.prototype.constructor = OrbitControls;
631
636
  Object.defineProperties(OrbitControls.prototype, {
@@ -697,4 +702,5 @@ Object.defineProperties(OrbitControls.prototype, {
697
702
  this.dampingFactor = value;
698
703
  }
699
704
  }
700
- });
705
+ });
706
+ module.exports = exports.default;
@@ -1,12 +1,18 @@
1
1
  "use strict";
2
2
 
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = PointerLockControls;
8
+ var THREE = _interopRequireWildcard(require("three"));
9
+ 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); }
3
10
  /**
4
11
  * @author mrdoob / http://mrdoob.com/
12
+ * Converted to ESM
5
13
  */
6
14
 
7
- var THREE = window.THREE || require('three');
8
- var PointerLockControls;
9
- module.exports = PointerLockControls = function PointerLockControls(camera) {
15
+ function PointerLockControls(camera) {
10
16
  var scope = this;
11
17
  camera.rotation.set(0, 0, 0);
12
18
  var pitchObject = new THREE.Object3D();
@@ -17,14 +23,14 @@ module.exports = PointerLockControls = function PointerLockControls(camera) {
17
23
  yawObject.position.y = 10;
18
24
  yawObject.add(pitchObject);
19
25
  var PI_2 = Math.PI / 2;
20
- var onMouseMove = function onMouseMove(event) {
26
+ function onMouseMove(event) {
21
27
  if (scope.enabled === false) return;
22
28
  var movementX = event.movementX || event.mozMovementX || event.webkitMovementX || 0;
23
29
  var movementY = event.movementY || event.mozMovementY || event.webkitMovementY || 0;
24
30
  yawObject.rotation.y -= movementX * 0.002;
25
31
  pitchObject.rotation.x -= movementY * 0.002;
26
32
  pitchObject.rotation.x = Math.max(-PI_2, Math.min(PI_2, pitchObject.rotation.x));
27
- };
33
+ }
28
34
  this.dispose = function () {
29
35
  document.removeEventListener('mousemove', onMouseMove, false);
30
36
  };
@@ -35,7 +41,6 @@ module.exports = PointerLockControls = function PointerLockControls(camera) {
35
41
  };
36
42
  this.getDirection = function () {
37
43
  // assumes the camera itself is not rotated
38
-
39
44
  var direction = new THREE.Vector3(0, 0, -1);
40
45
  var rotation = new THREE.Euler(0, 0, 0, 'YXZ');
41
46
  return function (v) {
@@ -44,4 +49,5 @@ module.exports = PointerLockControls = function PointerLockControls(camera) {
44
49
  return v;
45
50
  };
46
51
  }();
47
- };
52
+ }
53
+ module.exports = exports.default;
@@ -222,6 +222,31 @@ function createWarningObject() {
222
222
  warningObj.name = 'warningObj';
223
223
  return warningObj;
224
224
  }
225
+ function swapLengthProperty(diffs) {
226
+ var idx1 = diffs.findIndex(function (v) {
227
+ return v.path[v.path.length - 1] === 'length';
228
+ });
229
+ var idx2 = diffs.findIndex(function (v) {
230
+ return v.path[v.path.length - 1] === '_length';
231
+ });
232
+ if (idx1 < 0 || idx2 < 0) return diffs;
233
+ if (idx1 > idx2) return diffs;
234
+ if (diffs[idx1].op === diffs[idx2].op) {
235
+ var isSwap = true;
236
+ for (var i = 0; i < diffs[idx1].path.length - 2; i++) {
237
+ if (diffs[idx1].path[i] !== diffs[idx2].path[i]) {
238
+ isSwap = false;
239
+ break;
240
+ }
241
+ }
242
+ if (isSwap) {
243
+ var temp = diffs[idx1];
244
+ diffs[idx1] = diffs[idx2];
245
+ diffs[idx2] = temp;
246
+ }
247
+ }
248
+ return diffs;
249
+ }
225
250
  function updateScene(planData, sceneData, oldSceneData, diffArray, actions, catalog) {
226
251
  var _draggingItem$toJS, _filteredDiffs, _filteredDiffs2;
227
252
  var mode = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
@@ -239,6 +264,9 @@ function updateScene(planData, sceneData, oldSceneData, diffArray, actions, cata
239
264
  value: el.value
240
265
  };
241
266
  });
267
+
268
+ // move "length" to after "_length"
269
+ splitted = swapLengthProperty(splitted);
242
270
  var filteredDiffs = filterDiffs(splitted, sceneData, oldSceneData);
243
271
  //***testing additional filter***
244
272
  filteredDiffs = filteredDiffs.filter(function (_ref) {
@@ -273,7 +301,7 @@ function updateScene(planData, sceneData, oldSceneData, diffArray, actions, cata
273
301
  * Every 'doorStyle' change has a 'door_style_id' change.
274
302
  * So, if door_style_id changes, it indicates 'doorStyle' change.
275
303
  */
276
- if (['id'].includes(path[path.length - 1])) isSettingDoorStyle = true;
304
+ if (path[1] === 'layers' && path[3] === 'molding' || path[path.length - 2] === 'doorStyle' && path[path.length - 1] === 'id' || ['id'].includes(path[path.length - 1])) isSettingDoorStyle = true;
277
305
 
278
306
  // If there are any molding change of layer
279
307
  if (path[1] === 'layers' && path[3] === 'molding') isUpdateMolding = true;
@@ -649,10 +677,10 @@ function replaceObject(modifiedPath, layer, planData, actions, sceneData, oldSce
649
677
  vLine3.material.depthTest = false;
650
678
  var uVec = new Three.Vector3(-posVec.x / scalevec.x, -posVec.y / scalevec.y, -posVec.z / scalevec.z);
651
679
  var blLighting = item.type.includes('Light');
652
- vLine.translateY(blLighting ? 1.6 : 0.1);
653
- vLine1.translateY(blLighting ? 1.6 : 0.1);
654
- vLine2.translateY(blLighting ? 1.6 : 0.1);
655
- vLine3.translateY(blLighting ? 1.6 : 0.1);
680
+ vLine.translateY(blLighting ? 1.6 : boundingBox.min.y + 0.1);
681
+ vLine1.translateY(blLighting ? 1.6 : boundingBox.min.y + 0.1);
682
+ vLine2.translateY(blLighting ? 1.6 : boundingBox.min.y + 0.1);
683
+ vLine3.translateY(blLighting ? 1.6 : boundingBox.min.y + 0.1);
656
684
  upObj.translateOnAxis(uVec, 1);
657
685
  upObj.translateY(max.y - min.y);
658
686
  _mBox.name = 'TransformBox';
@@ -958,9 +986,9 @@ function getLineDistance(obj, layer, isCalcWall, index) {
958
986
  obj.geometry.attributes.position.needsUpdate = true;
959
987
  obj.geometry.computeBoundingSphere();
960
988
  obj.geometry.computeBoundingBox();
961
- var dist = (0, _math.formatNumber)((0, _convertUnitsLite.convert)(intersects[i].distance).from('cm').to('in'), _constants.DECIMAL_PLACES_2);
989
+ var dist = (0, _convertUnitsLite.convert)(intersects[i].distance).from('cm').to('in');
962
990
  if (dist > 3) {
963
- var _canvas = getTextCanvas(dist);
991
+ var _canvas = getDistanceCanvas(dist, layer);
964
992
  var wid = _canvas.width / window.innerWidth * 30;
965
993
  var hei = _canvas.height / window.innerHeight * 30;
966
994
  var texture = new Three.Texture(_canvas);
@@ -1082,7 +1110,7 @@ function getLineDistance(obj, layer, isCalcWall, index) {
1082
1110
  obj.geometry.attributes.position.needsUpdate = true;
1083
1111
  var _dist = (0, _math.formatNumber)(distance, _constants.DECIMAL_PLACES_2);
1084
1112
  if (_dist > 3) {
1085
- var _canvas2 = getTextCanvas(_dist);
1113
+ var _canvas2 = getDistanceCanvas(_dist, layer);
1086
1114
  var _wid = _canvas2.width / window.innerWidth * 30;
1087
1115
  var _hei = _canvas2.height / window.innerHeight * 30;
1088
1116
  var _texture = new Three.Texture(_canvas2);
@@ -1210,12 +1238,18 @@ function getIntersectPoint(opX, opY, pX, pY) {
1210
1238
  function gcd(a, b) {
1211
1239
  return a % b ? gcd(b, a % b) : b;
1212
1240
  }
1213
- function getTextCanvas(text) {
1214
- var parameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
1241
+ function getDistanceCanvas(distance, layer) {
1242
+ var _layer$unit;
1243
+ var parameters = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
1215
1244
  var canvas = document.createElement('canvas');
1216
1245
  var ctx = canvas.getContext('2d');
1246
+ var curUnit = (_layer$unit = layer === null || layer === void 0 ? void 0 : layer.unit) !== null && _layer$unit !== void 0 ? _layer$unit : _constants.UNIT_INCH;
1247
+ var fixedLength = (layer === null || layer === void 0 ? void 0 : layer.unit) === _constants.UNIT_METER || (layer === null || layer === void 0 ? void 0 : layer.unit) === _constants.UNIT_FOOT ? 2 : 0;
1248
+ var distText = String((Math.round((0, _convertUnitsLite.convert)(distance).from('in').to(curUnit) * 100) / 100).toFixed(fixedLength));
1217
1249
  var fontSize = 16;
1218
- var integral = String(text) + "''";
1250
+ var integral = distText + curUnit;
1251
+ // let integral = String(distance) + "''";
1252
+
1219
1253
  parameters.fontName = parameters.fontName || _constants.ARROW_TEXT_FONTFACE;
1220
1254
 
1221
1255
  // Prepare the font to be able to measure
@@ -3453,9 +3487,11 @@ function updateMoldingGroupArray(MGArray, selItem, planData, layer) {
3453
3487
  // refresh mesh of the updating molding groups
3454
3488
  new_MGArray.forEach(function (mg, index) {
3455
3489
  if (mg.items[0].molding.some(function (mol) {
3456
- return mol.location_type === mg.location_type;
3490
+ return (0, _helper.isImmutable)(mol) ? mol.toJS().location_type === mg.location_type : mol.location_type === mg.location_type;
3457
3491
  })) {
3458
- var molding = mg.items[0].molding.filter(function (mol) {
3492
+ var molding = (0, _helper.isImmutable)(mg.items[0].molding) ? mg.items[0].molding.filter(function (mol) {
3493
+ return mol.toJS().location_type === mg.location_type;
3494
+ }).toJS()[0] : mg.items[0].molding.filter(function (mol) {
3459
3495
  return mol.location_type === mg.location_type;
3460
3496
  })[0];
3461
3497
  if (mg.molding === null || mg.molding.itemID !== mol.itemID || mg.lines === null || mg.points === null) {