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
@@ -29,8 +29,8 @@ var _export = require("../../utils/export");
29
29
  var _helper = require("../../utils/helper");
30
30
  var _RGBELoader = require("three/examples/jsm/loaders/RGBELoader");
31
31
  var _cameraControls = _interopRequireDefault(require("camera-controls"));
32
- var _utils = require("../viewer2d/utils");
33
32
  var _objectsUtils = require("../../utils/objects-utils");
33
+ var _utils = require("../viewer2d/utils");
34
34
  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); }
35
35
  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; }
36
36
  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) { (0, _defineProperty2["default"])(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; }
@@ -238,6 +238,7 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
238
238
  });
239
239
  self.renderer.domElement.style.display = 'block';
240
240
  }, 1500);
241
+ self.planData = planData;
241
242
  });
242
243
  var area = scene.getIn(['layers', scene.selectedLayer, 'areas']);
243
244
  var layer = scene.getIn(['layers', scene.selectedLayer]);
@@ -676,7 +677,7 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
676
677
  layer.lines.forEach(function (line) {
677
678
  line.holes.forEach(function (holeID) {
678
679
  var hole = layer.holes.get(holeID);
679
- holes.push(hole);
680
+ if (hole) holes.push(hole);
680
681
  });
681
682
  });
682
683
  var i = 0;
@@ -1190,6 +1191,18 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1190
1191
  itemID: selItemId
1191
1192
  };
1192
1193
  };
1194
+ var sendInternalEvent = function sendInternalEvent(evtType, evtElement) {
1195
+ var pointArray = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
1196
+ if (!(0, _helper.isEmpty)(evtType) && !(0, _helper.isEmpty)(evtElement)) {
1197
+ var _state$get, _this2$props$onIntern, _this2$props;
1198
+ var catalog = (_state$get = state.get('catalog')) === null || _state$get === void 0 ? void 0 : _state$get.toJS();
1199
+ var payload = (0, _helper.updatePayloadOfInternalEvent)(evtElement, layer, catalog, pointArray);
1200
+ (_this2$props$onIntern = (_this2$props = _this2.props).onInternalEvent) === null || _this2$props$onIntern === void 0 || _this2$props$onIntern.call(_this2$props, {
1201
+ type: evtType,
1202
+ value: payload
1203
+ });
1204
+ }
1205
+ };
1193
1206
  this.mouseDownEvent = function (event) {
1194
1207
  gridPlanOrigin = gridPlane.position;
1195
1208
  gridMatrix.copy(gridPlane.matrixWorld).invert();
@@ -1281,7 +1294,18 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1281
1294
  }
1282
1295
  }
1283
1296
  if (selectedObject !== undefined) {
1284
- var selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1297
+ // get selected object from planData.sceneGraph
1298
+ var selectedItem = null;
1299
+ switch (true) {
1300
+ case 'itemID' in selectedObject:
1301
+ selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1302
+ break;
1303
+ case 'holeID' in selectedObject:
1304
+ selectedItem = planData.sceneGraph.layers[selectedObject.layerID].holes[selectedObject.holeID];
1305
+ break;
1306
+ default:
1307
+ break;
1308
+ }
1285
1309
  sPoint.set(Point.x, Point.y);
1286
1310
  if (transflag == 0) {
1287
1311
  scene3D.remove(toolObj);
@@ -1330,11 +1354,6 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1330
1354
  if (selectedFlag || toolIntersects.length > 0 && !(0, _helper.isElevationView)(mode)) {
1331
1355
  cameraControls.mouseButtons.left = _cameraControls["default"].ACTION.NONE;
1332
1356
  selectedFlag = false;
1333
- } else {
1334
- isSelected = false;
1335
- _this2.context.projectActions.unselectAll();
1336
- scene3D.remove(toolObj);
1337
- _this2.context.itemsActions.removeReplacingSupport();
1338
1357
  }
1339
1358
  }
1340
1359
  } else {
@@ -1347,7 +1366,8 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1347
1366
  }
1348
1367
  };
1349
1368
  this.mouseUpEvent = function (event) {
1350
- var _selObj$object, _selObj$object2;
1369
+ var internalType = ''; // internalEvent type - select/drag/draw
1370
+ var selectedElement; // internalEvent data
1351
1371
  firstMove = 0;
1352
1372
  var altitude = 0;
1353
1373
  if (allItemRect && allItemRect.cur && allItemRect.cur.itemInfo !== undefined) {
@@ -1384,6 +1404,21 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1384
1404
  isInitialPhase = true;
1385
1405
  return;
1386
1406
  }
1407
+ switch (_this2.props.state.mode) {
1408
+ case _constants.MODE_DRAGGING_ITEM_3D:
1409
+ case _constants.MODE_DRAGGING_HOLE_3D:
1410
+ internalType = _constants.INTERNAL_EVENT_DRAG_ELEMENT;
1411
+ break;
1412
+ case _constants.MODE_ROTATING_ITEM_3D:
1413
+ internalType = _constants.INTERNAL_EVENT_ROTATE_ELEMENT;
1414
+ break;
1415
+ case _constants.MODE_DRAWING_HOLE_3D:
1416
+ internalType = _constants.INTERNAL_EVENT_DRAW_ELEMENT;
1417
+ break;
1418
+ case _constants.MODE_IDLE_3D:
1419
+ internalType = _constants.INTERNAL_EVENT_SELECT_ELEMENT;
1420
+ break;
1421
+ }
1387
1422
  if (_this2.props.state.mode == _constants.MODE_DRAGGING_ITEM_3D) {
1388
1423
  _this2.context.itemsActions.endDraggingItem3D();
1389
1424
  }
@@ -1416,7 +1451,8 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1416
1451
  });
1417
1452
  });
1418
1453
  var intersects = raycaster.intersectObjects(meshes, true);
1419
- var _i10;
1454
+ var _i10; // index of warning object in intersects
1455
+
1420
1456
  if (intersects.length > 0 && !isNaN(intersects[0].distance)) {
1421
1457
  for (_i10 = 0; _i10 < intersects.length; _i10++) {
1422
1458
  if (intersects[_i10].object.name === 'warningObj') break;
@@ -1432,6 +1468,9 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1432
1468
  var replaceInfo = intersects[_i10].object.parent.parent.userData;
1433
1469
  _this2.context.itemsActions.selectItem(replaceInfo.layerId, replaceInfo.itemId);
1434
1470
  !_this2.props.downloadFlag && _this2.props.replaceCabinet(true);
1471
+ internalType = _constants.INTERNAL_EVENT_REPLACE_CABINET;
1472
+ var replaceElement = _this2.props.state.scene.layers.get(replaceInfo.layerId).items.get(replaceInfo.itemId);
1473
+ sendInternalEvent(internalType, replaceElement);
1435
1474
  return;
1436
1475
  }
1437
1476
  }
@@ -1444,6 +1483,19 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1444
1483
  }
1445
1484
  }
1446
1485
  gridMatrix.copy(gridPlane.matrixWorld).invert();
1486
+ var addItemToolObj = function addItemToolObj() {
1487
+ var _planData$sceneGraph, _selectedObject, _intersects$_i;
1488
+ var selectedItem = (_planData$sceneGraph = planData.sceneGraph) === null || _planData$sceneGraph === void 0 || (_planData$sceneGraph = _planData$sceneGraph.layers[selectedObject.layerID]) === null || _planData$sceneGraph === void 0 ? void 0 : _planData$sceneGraph.items[(_selectedObject = selectedObject) === null || _selectedObject === void 0 ? void 0 : _selectedObject.itemID];
1489
+ if ((0, _util.isUndefined)(selectedItem)) return;
1490
+ selectedElement = _this2.props.state.scene.layers.get(selectedObject.layerID).items.get(selectedObject.itemID);
1491
+ var itemPos = selectedItem.position.clone();
1492
+ if (((_intersects$_i = intersects[_i10]) === null || _intersects$_i === void 0 || (_intersects$_i = _intersects$_i.object) === null || _intersects$_i === void 0 || (_intersects$_i = _intersects$_i.parent) === null || _intersects$_i === void 0 || (_intersects$_i = _intersects$_i.parent) === null || _intersects$_i === void 0 || (_intersects$_i = _intersects$_i.userData) === null || _intersects$_i === void 0 ? void 0 : _intersects$_i.itemId) === selectedItem.userData.itemId) {
1493
+ toolObj.position.set(intersects[_i10].point.x, intersects[_i10].point.y, intersects[_i10].point.z);
1494
+ } else {
1495
+ toolObj.position.set(planData.plan.position.x + itemPos.x, selectedElement.category === 'lighting' ? -planData.plan.position.y - selectedElement.properties.get('height').get('length') : planData.plan.position.y + selectedItem.children[0].position.y, planData.plan.position.z + itemPos.z);
1496
+ }
1497
+ scene3D.add(toolObj);
1498
+ };
1447
1499
  if (Math.abs(mouse.x - _this2.lastMousePosition.x) <= 0.02 && Math.abs(mouse.y - _this2.lastMousePosition.y) <= 0.02 || bMove) {
1448
1500
  if (intersects.length > 0 && !isNaN(intersects[0].distance)) {
1449
1501
  if (intersects[_i10] === undefined) {
@@ -1467,67 +1519,63 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1467
1519
  isSelected = true;
1468
1520
  setTimeout(function () {
1469
1521
  (0, _sceneCreator.getDistances)(layer);
1470
- var selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1471
- if ((0, _util.isUndefined)(selectedItem)) return;
1472
- var selItem = _this2.props.state.scene.layers.get(selectedObject.layerID).items.get(selectedObject.itemID);
1473
- var itemPos = selectedItem.position.clone();
1474
- if (intersects[_i10].object.parent && intersects[_i10].object.parent.parent.userData.itemId === selectedItem.userData.itemId) {
1475
- toolObj.position.set(intersects[_i10].point.x, intersects[_i10].point.y, intersects[_i10].point.z);
1476
- } else {
1477
- toolObj.position.set(planData.plan.position.x + itemPos.x, selItem.category === 'lighting' ? -planData.plan.position.y - selItem.properties.get('height').get('length') : planData.plan.position.y + selectedItem.children[0].position.y, planData.plan.position.z + itemPos.z);
1478
- }
1479
- scene3D.add(toolObj);
1522
+ addItemToolObj();
1480
1523
  _this2.setState({
1481
1524
  toolObj: toolObj
1482
1525
  });
1483
1526
  // showItemButtons(layer.getIn(['items', selectedObject.itemID]), currentObject, event, camera, this.renderer);
1484
- var pointArray = [],
1485
- cnt = 0;
1486
- pointArray.push([_sceneCreator.fVLine[0].userData.distance, 90]);
1487
- pointArray.push([_sceneCreator.fVLine[1].userData.distance, -90]);
1488
- pointArray.push([_sceneCreator.fVLine[2].userData.distance, 180]);
1489
- pointArray.push([_sceneCreator.fVLine[3].userData.distance, 0]);
1490
- pointArray.forEach(function (pointElement, index) {
1491
- if (pointElement[0] == undefined) pointArray[index][0] = 0;
1492
- });
1493
- pointArray.forEach(function (pointElement) {
1494
- if (pointElement[0] == 0) cnt++;
1495
- });
1496
- if (cnt == 4 || cnt == 3) {
1497
- pointArray[0][0] = 100;
1498
- pointArray[1][0] = 100;
1499
- }
1527
+ var pointArray = [];
1528
+ // pointArray.push([fVLine[0].userData.distance, 90]);
1529
+ // pointArray.push([fVLine[1].userData.distance, -90]);
1530
+ // pointArray.push([fVLine[2].userData.distance, 180]);
1531
+ // pointArray.push([fVLine[3].userData.distance, 0]);
1532
+ pointArray = _export.GeometryUtils.calcDistancesFromItemToWalls(selectedElement, layer).PointArray;
1500
1533
  actions.itemsActions.storeDistArray(layer.id, selectedObject.itemID, pointArray);
1534
+ internalType = internalType ? internalType : _constants.INTERNAL_EVENT_SELECT_ELEMENT;
1535
+ sendInternalEvent(internalType, selectedElement, pointArray);
1501
1536
  });
1502
1537
  } else {
1503
1538
  if (selectedObject) {
1539
+ var elementID = null;
1540
+ var elementPrototype = null;
1504
1541
  switch (true) {
1505
1542
  case 'holeID' in selectedObject:
1506
- if (selObj !== null && selObj !== void 0 && (_selObj$object = selObj.object) !== null && _selObj$object !== void 0 && _selObj$object.name.includes('transHole')) {
1543
+ elementID = selectedObject.holeID;
1544
+ elementPrototype = 'holes';
1545
+ if (_this2.props.state.mode === _constants.MODE_DRAGGING_HOLE_3D) {
1507
1546
  actions.holesActions.endDraggingHole3D(sPoint.x, sPoint.y);
1508
1547
  }
1509
1548
  break;
1510
1549
  case 'lineID' in selectedObject:
1511
- if (selObj !== null && selObj !== void 0 && (_selObj$object2 = selObj.object) !== null && _selObj$object2 !== void 0 && _selObj$object2.name.includes('transHole')) {
1512
- actions.holesActions.endDraggingHole3D(sPoint.x, sPoint.y);
1513
- }
1550
+ elementID = selectedObject.lineID;
1551
+ elementPrototype = 'lines';
1552
+ break;
1553
+ case 'areaID' in selectedObject:
1554
+ elementID = selectedObject.areaID;
1555
+ elementPrototype = 'areas';
1514
1556
  break;
1515
1557
  default:
1516
1558
  break;
1517
1559
  }
1560
+ selectedElement = _this2.props.state.scene.layers.get(selectedObject.layerID).getIn([elementPrototype, elementID]);
1518
1561
  }
1519
1562
  isSelected = false;
1520
1563
  }
1521
1564
  } else {
1522
- isSelected = false;
1523
- _this2.context.projectActions.unselectAll();
1524
- switch (true) {
1525
- case 'holeID' in selectedObject:
1526
- actions.holesActions.endDraggingHole3D(sPoint.x, sPoint.y);
1527
- break;
1528
- default:
1529
- _this2.context.itemsActions.removeReplacingSupport();
1530
- break;
1565
+ var selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1566
+ if (bMove && !(0, _helper.isEmpty)(selectedItem)) {
1567
+ addItemToolObj();
1568
+ } else {
1569
+ isSelected = false;
1570
+ _this2.context.projectActions.unselectAll();
1571
+ switch (true) {
1572
+ case 'holeID' in selectedObject:
1573
+ actions.holesActions.endDraggingHole3D(sPoint.x, sPoint.y);
1574
+ break;
1575
+ default:
1576
+ _this2.context.itemsActions.removeReplacingSupport();
1577
+ break;
1578
+ }
1531
1579
  }
1532
1580
  }
1533
1581
  bMove = false;
@@ -1538,6 +1586,7 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1538
1586
  selectedObj = allItemRect.cur;
1539
1587
  }
1540
1588
  } else {
1589
+ var _planData$sceneGraph2, _selectedObject2, _selectedObject3;
1541
1590
  (0, _sceneCreator.visibleTransformBox)(false);
1542
1591
  var alti = 0;
1543
1592
  if (allItemRect && allItemRect.cur && allItemRect.cur.itemInfo !== undefined) {
@@ -1547,18 +1596,9 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1547
1596
  alti = (0, _convertUnitsLite.convert)(alti).from(_unit2).to(_this2.props.state.scene.unit);
1548
1597
  }
1549
1598
  getPoint(event, alti);
1599
+ var _selectedItem = planData === null || planData === void 0 || (_planData$sceneGraph2 = planData.sceneGraph) === null || _planData$sceneGraph2 === void 0 || (_planData$sceneGraph2 = _planData$sceneGraph2.layers[(_selectedObject2 = selectedObject) === null || _selectedObject2 === void 0 ? void 0 : _selectedObject2.layerID]) === null || _planData$sceneGraph2 === void 0 ? void 0 : _planData$sceneGraph2.items[(_selectedObject3 = selectedObject) === null || _selectedObject3 === void 0 ? void 0 : _selectedObject3.itemID];
1600
+ if (isSelected && !(0, _helper.isEmpty)(_selectedItem)) addItemToolObj();
1550
1601
  if (bRotate) {
1551
- var _intersects$_i;
1552
- var selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1553
- if ((0, _util.isUndefined)(selectedItem)) return;
1554
- var selItem = _this2.props.state.scene.layers.get(selectedObject.layerID).items.get(selectedObject.itemID);
1555
- var itemPos = selectedItem.position.clone();
1556
- if (((_intersects$_i = intersects[_i10]) === null || _intersects$_i === void 0 || (_intersects$_i = _intersects$_i.object) === null || _intersects$_i === void 0 || (_intersects$_i = _intersects$_i.parent) === null || _intersects$_i === void 0 || (_intersects$_i = _intersects$_i.parent) === null || _intersects$_i === void 0 || (_intersects$_i = _intersects$_i.userData) === null || _intersects$_i === void 0 ? void 0 : _intersects$_i.itemId) === selectedItem.userData.itemId) {
1557
- toolObj.position.set(intersects[_i10].point.x, intersects[_i10].point.y, intersects[_i10].point.z);
1558
- } else {
1559
- toolObj.position.set(planData.plan.position.x + itemPos.x, selItem.category === 'lighting' ? -planData.plan.position.y - selItem.properties.get('height').get('length') : planData.plan.position.y + selectedItem.children[0].position.y, planData.plan.position.z + itemPos.z);
1560
- }
1561
- scene3D.add(toolObj);
1562
1602
  _this2.setState({
1563
1603
  toolObj: toolObj
1564
1604
  });
@@ -1567,16 +1607,6 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1567
1607
  }
1568
1608
  if (bMove) {
1569
1609
  bMove = false;
1570
- var _selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1571
- if ((0, _util.isUndefined)(_selectedItem)) return;
1572
- var _selItem = _this2.props.state.scene.layers.get(selectedObject.layerID).items.get(selectedObject.itemID);
1573
- var _itemPos = _selectedItem.position.clone();
1574
- if (intersects[_i10].object.parent.parent.userData.itemId === _selectedItem.userData.itemId) {
1575
- toolObj.position.set(intersects[_i10].point.x, intersects[_i10].point.y, intersects[_i10].point.z);
1576
- } else {
1577
- toolObj.position.set(planData.plan.position.x + _itemPos.x, _selItem.category === 'lighting' ? -planData.plan.position.y - _selItem.properties.get('height').get('length') : planData.plan.position.y + _selectedItem.children[0].position.y, planData.plan.position.z + _itemPos.z);
1578
- }
1579
- scene3D.add(toolObj);
1580
1610
  _this2.setState({
1581
1611
  toolObj: toolObj
1582
1612
  });
@@ -1608,6 +1638,7 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1608
1638
  selectedObj = allItemRect.cur;
1609
1639
  }
1610
1640
  }
1641
+ sendInternalEvent(internalType, selectedElement);
1611
1642
  };
1612
1643
  this.mouseEnterEvent = function (event) {
1613
1644
  if (_this2.props.state.mode !== _constants.MODE_DRAWING_ITEM_3D) return;
@@ -2042,7 +2073,7 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
2042
2073
  if (minDis < snapDelta && !snapFlag) {
2043
2074
  _this2.snap(snapObj, layer);
2044
2075
  snapFlag = true;
2045
- (0, _sceneCreator.getDistances)(layer, true);
2076
+ (0, _sceneCreator.getDistances)(layer);
2046
2077
  var _i13 = 0;
2047
2078
  for (_i13 = 0; _i13 < _sceneCreator.fVLine.length; _i13++) {
2048
2079
  if (_sceneCreator.fVLine[_i13].userData.distance < snapDelta) {
@@ -2166,7 +2197,7 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
2166
2197
  scene3D = new Three.Scene();
2167
2198
  if ((0, _helper.isElevationView)(state.mode)) scene3D.background = new Three.Color(0xffffff);
2168
2199
  // change color about v1: 0x8791AB, v2: 0xC2C2C2, v3: 0xC3CADC
2169
- else scene3D.background = new Three.Color(0xc3cadc); // change color about v1: 0x8791AB, v2: 0xC2C2C2, v3: 0xC3CADC
2200
+ else scene3D.background = new Three.Color(0xe4ebfe); // change color about v1: 0x8791AB, v2: 0xC2C2C2, v3: 0xC3CADC
2170
2201
  // scene3D.fog = new Three.Fog(0xC3CADC, 2000, 3500);
2171
2202
  window.scene3D = scene3D;
2172
2203
  // Camera
@@ -2492,10 +2523,13 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
2492
2523
  if (nextProps.state.scene !== this.props.state.scene || nextProps.state.doorStyle && nextProps.state.doorStyle.get('name') !== this.props.state.doorStyle.get('name')) {
2493
2524
  var changedValues = (0, _immutablediff["default"])(this.props.state.scene, nextProps.state.scene);
2494
2525
  prepareSnapSpec(layer);
2526
+ var isInteractiveMove = nextProps.state.mode === _constants.MODE_DRAGGING_ITEM_3D || nextProps.state.mode === _constants.MODE_ROTATING_ITEM_3D || nextProps.state.mode === _constants.MODE_DRAWING_ITEM_3D || nextProps.state.mode === _constants.MODE_DRAGGING_HOLE_3D || nextProps.state.mode === _constants.MODE_IDLE_3D;
2495
2527
  if (nextProps.state.doorStyle && nextProps.state.doorStyle.get('name') === this.props.state.doorStyle.get('name')) {
2496
- self.setState({
2497
- isLoading: true
2498
- });
2528
+ if (!isInteractiveMove) {
2529
+ self.setState({
2530
+ isLoading: true
2531
+ });
2532
+ }
2499
2533
  if (self.props.downloadFlag) {
2500
2534
  self.setState({
2501
2535
  waitForRender: 0
@@ -2561,7 +2595,7 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
2561
2595
  height: '70px',
2562
2596
  animation: 'spin 2s linear infinite'
2563
2597
  },
2564
- src: '/assets/img/loading_large.gif',
2598
+ src: '/assets/img/loading/loading.gif',
2565
2599
  alt: "img"
2566
2600
  }));
2567
2601
  } else {
@@ -2575,9 +2609,12 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
2575
2609
  }, /*#__PURE__*/_react["default"].createElement("img", {
2576
2610
  style: {
2577
2611
  animation: 'spin 2s linear infinite',
2578
- marginTop: "22%"
2612
+ position: "absolute",
2613
+ top: "50%",
2614
+ width: '70px',
2615
+ height: '70px'
2579
2616
  },
2580
- src: '/assets/img/loading_large.gif',
2617
+ src: '/assets/img/loading/loading.gif',
2581
2618
  alt: "img"
2582
2619
  }));
2583
2620
  }
@@ -2594,9 +2631,11 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
2594
2631
  style: {
2595
2632
  animation: 'spin 2s linear infinite',
2596
2633
  position: "absolute",
2597
- top: "50%"
2634
+ top: "50%",
2635
+ width: '70px',
2636
+ height: '70px'
2598
2637
  },
2599
- src: '/assets/img/loading_large.gif',
2638
+ src: '/assets/img/loading/loading.gif',
2600
2639
  alt: "img"
2601
2640
  }));
2602
2641
  } else {
package/lib/constants.js CHANGED
@@ -3,10 +3,11 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.GO_BACK_TO_CATALOG_PAGE = exports.FINISHING_TOUCH = exports.EXTERNAL_EVENT_ZOOM_OUT = exports.EXTERNAL_EVENT_ZOOM_IN = exports.EXTERNAL_EVENT_TOGGLE_TO_ELEVATION = exports.EXTERNAL_EVENT_TOGGLE_TO_3D = exports.EXTERNAL_EVENT_TOGGLE_TO_2D = exports.EXTERNAL_EVENT_SET_INITIAL_DATA = exports.EXTERNAL_EVENT_NEW_PROJECT = exports.EXTERNAL_EVENT_MOVE_PAN = exports.EXTERNAL_EVENT_CHANGE_DOORSTYLE = exports.EXTERNAL_EVENT_ADD_WALL = exports.EXTERNAL_EVENT_ADD_ROOM_SHAPE = exports.EXTERNAL_EVENT_ADD_ITEM = exports.ERROR_DATABASE = exports.EPSILON = exports.END_UPLOADING_IMAGE = exports.END_ROTATING_ITEM_3D = exports.END_ROTATING_ITEM = exports.END_LOADING = exports.END_FITTING_IMAGE = exports.END_DRAWING_LINE = exports.END_DRAWING_ITEM = exports.END_DRAWING_HOLE_3D = exports.END_DRAWING_HOLE = exports.END_DRAGGING_VERTEX = exports.END_DRAGGING_LINE = exports.END_DRAGGING_ITEM_3D = exports.END_DRAGGING_ITEM = exports.END_DRAGGING_HOLE_3D = exports.END_DRAGGING_HOLE = exports.END_CREATING_HOLE = exports.END_CREATING_CABINET = exports.ELEVATION_VIEW_TITLE = exports.ELEVATION_VIEW_RIGHT = exports.ELEVATION_VIEW_LEFT = exports.ELEVATION_VIEW_KEYWORD = exports.ELEVATION_VIEW_FRONT = exports.ELEVATION_VIEW_BACK = exports.ELEVATION_VIEW = exports.EDIT_WIDTH = exports.EDIT = exports.DUPLICATE_SELECTED = exports.DISTANCE_EPSILON = exports.DIFFERENT_VALUES_PATH_LENGTH = exports.DELTA = exports.DEFAULT_FONT_FAMILY = exports.DECIMAL_PLACES_3 = exports.DECIMAL_PLACES_2 = exports.COPY_PROPERTIES = exports.CLIENTS_NAME = exports.CHANGE_WINDOW_DOOR_MEASURE = exports.CHANGE_WALL_LENGTH_MEASURE = exports.CHANGE_WALL_CABINET_MEASURE = exports.CHANGE_CATALOG_PAGE = exports.CHANGE_BASE_CABINET_MEASURE = exports.CEIL_UNITS_LENGTH = exports.BROWN_COLOR = exports.BOTTOM_MOLDING_LOCATION = exports.BOTTOM = exports.BG_COLOR_OVERLAY = exports.BG_COLOR_HOVER = exports.BG_COLOR_1 = exports.BG_COLOR_0 = exports.BEGIN_UPLOADING_IMAGE = exports.BEGIN_ROTATING_ITEM_3D = exports.BEGIN_ROTATING_ITEM = exports.BEGIN_FITTING_IMAGE = exports.BEGIN_DRAWING_LINE = exports.BEGIN_DRAGGING_VERTEX = exports.BEGIN_DRAGGING_LINE = exports.BEGIN_DRAGGING_ITEM_3D = exports.BEGIN_DRAGGING_ITEM = exports.BEGIN_DRAGGING_HOLE_3D = exports.BEGIN_DRAGGING_HOLE = exports.BASE_CABINET_LAYOUTPOS = exports.ARROW_TEXT_FORECOLOR = exports.ARROW_TEXT_FONTFACE = exports.ARROW_TEXT_BACKCOLOR = exports.ARROW_COLOR = exports.ARRAY_ELEVATION_VIEW_MODES = exports.ARRAY_3D_MODES = exports.AREA_ACTIONS = exports.API_SERVER_URL = exports.ANIMATE_STEP_MIN = exports.ANIMATE_STEP_MAX = exports.ANIMATE_OBJECT_OPEN_DOOR_ROTATION_UNIT = exports.ANIMATE_OBJECT = exports.ALTERATE_STATE = exports.ADD_VERTICAL_GUIDE = exports.ADD_TO_GROUP = exports.ADD_LAYER = exports.ADD_HORIZONTAL_GUIDE = exports.ADD_GROUP_FROM_SELECTED = exports.ADD_GROUP = exports.ADD_ELEMENT_TO_CATALOG = exports.ADD_CIRCULAR_GUIDE = exports.ADD_CABINETS = exports.ADD_APPLIANCES = exports.ACCENT_COLOR = void 0;
7
- exports.REMOVE_HORIZONTAL_GUIDE = exports.REMOVE_GROUP_AND_DELETE_ELEMENTS = exports.REMOVE_GROUP = exports.REMOVE_FROM_GROUP = exports.REMOVE_DRAWING_SUPPORT = exports.REMOVE_CIRCULAR_GUIDE = exports.REMOVE = exports.REDO = exports.RECREATE = exports.PUSH_LAST_SELECTED_CATALOG_ELEMENT_TO_HISTORY = exports.PROJECT_RE_NAME = exports.PROJECT_NAME_LENGTH_LIMIT = exports.PROJECT_ACTIONS = exports.PRODUCT = exports.PRIMARY_GREEN_COLOR = exports.PASTE_PROPERTIES = exports.OVERLAP_SOME = exports.OVERLAP_SAME = exports.OVERLAP_NONE = exports.OVERLAP_LINK = exports.OVERLAP_INCLUDED = exports.OPEN_PROJECT_CONFIGURATOR = exports.OPEN_CATALOG = exports.OBJTYPE_MESH = exports.OBJTYPE_GROUP = exports.NO_DATA_DATABASE = exports.NEW_PROJECT_BTN = exports.NEW_PROJECT = exports.NEW_DESIGN = exports.MOVE_COMPONENT = exports.MOLDING_LOCATIONS = exports.MODE_WAITING_DRAWING_LINE = exports.MODE_VIEWING_CATALOG = exports.MODE_UPLOADING_IMAGE = exports.MODE_SNAPPING = exports.MODE_ROTATING_ITEM_3D = exports.MODE_ROTATING_ITEM = exports.MODE_RIGHT_ELEVATION_VIEW = exports.MODE_LEFT_ELEVATION_VIEW = exports.MODE_IDLE_3D = exports.MODE_IDLE = exports.MODE_FRONT_VIEW = exports.MODE_FRONT_ELEVATION_VIEW = exports.MODE_FITTING_IMAGE = exports.MODE_ELEVATION_VIEW = exports.MODE_DRAWING_LINE = exports.MODE_DRAWING_ITEM_3D = exports.MODE_DRAWING_ITEM = exports.MODE_DRAWING_HOLE_3D = exports.MODE_DRAWING_HOLE = exports.MODE_DRAGGING_VERTEX = exports.MODE_DRAGGING_LINE = exports.MODE_DRAGGING_ITEM_3D = exports.MODE_DRAGGING_ITEM = exports.MODE_DRAGGING_HOLE_3D = exports.MODE_DRAGGING_HOLE = exports.MODE_CONFIGURING_PROJECT = exports.MODE_BACK_ELEVATION_VIEW = exports.MODE_3D_VIEW = exports.MODE_3D_FIRST_PERSON = exports.MODE_2D_ZOOM_OUT = exports.MODE_2D_ZOOM_IN = exports.MODE_2D_PAN = exports.MODE = exports.MIN_ANGLE_DISALLOW_DRAW_WALL = exports.MIDDLE_MOLDING_LOCATION = exports.MEPSILON = exports.MAX_ANGLE_SCALE = exports.MAKE_FLOOR_PLAN = exports.LOGOUT = exports.LOGIN_SUCCESS = exports.LOGIN_ERROR = exports.LOCAL_STORAGE_TOKEN_VALUE = exports.LOCAL_STORAGE_TOKEN_NAME = exports.LOCAL_STORAGE_ORIGINAL_TOKEN = exports.LOCAL_STORAGE_CUSTOMER_INFO = exports.LOCAL_STORAGE_CART_ACTION = exports.LOAD_PROJECT = exports.LIST_QUANTITIES = exports.LIST_PARTS = exports.LINE_THICKNESS = exports.LINE_ACTIONS = exports.LEFT = exports.LABEL_COLOR = exports.KITCHEN_KONFIGURATOR = exports.KEYBOARD_BUTTON_CODE = exports.ITEM_TYPE = exports.ITEM_MOVE_UP = exports.ITEMS_ACTIONS = exports.INVERT = exports.INSTALLATION_TYPE_SKU_SUFFIX = exports.INSTALLATION_TYPE_NAME = exports.INSTALLATION_SUFFIX_TYPE = exports.INIT_CATALOG = exports.HOLE_ACTIONS = exports.HDR_URLS = exports.HAS_LOADINGBAR = exports.GROUP_TRANSLATE = exports.GROUP_ROTATE = exports.GROUP_ACTIONS = void 0;
8
- exports.TEXT_COLOR_NEUTRAL_0 = exports.TEXT_COLOR = exports.TECHNICAL_VIEW = exports.TALL_CABINET_LAYOUTPOS = exports.TAKE_PICTURE = exports.SUBTOTAL = exports.SUBMIT_REQUEST_ASSIST = exports.SUBMIT_DESIGN = exports.SUBMIT_ADD_CART = exports.STORE_DIST_ARRAY = exports.STOP_DRAWING_LINE = exports.STEP_CABINET_CHOOSE_PRODUCT = exports.STATUS_WARNING_LIGHT_COLOR = exports.STATUS_WARNING_COLOR = exports.STATUS_POSITIVE_LIGHT_COLOR = exports.STATUS_POSITIVE_COLOR = exports.STATUS_OVERDUE_LIGHT_COLOR = exports.STATUS_OVERDUE_COLOR = exports.STATUS_NEGATIVE_LIGHT_COLOR = exports.STATUS_NEGATIVE_COLOR = exports.STATUS_INFO_LIGHT_COLOR = exports.STATUS_INFO_COLOR = exports.SHIFT2DON = exports.SHIFT2DOFF = exports.SHAPE_SVG_WIDTH = exports.SHAPE_SVG_PADDING = exports.SHAPE_SVG_DEPTH = exports.SHADE_LIGHT_PURPLE_COLOR = exports.SHADE_LIGHT_GREEN_COLOR = exports.SHADE_LIGHT_BLUE_COLOR = exports.SHADE_DARK_PURPLE_COLOR = exports.SHADE_DARK_GREEN_COLOR = exports.SHADE_DARK_BLUE_COLOR = exports.SET_WALL_COLOR = exports.SET_USER_DATA = exports.SET_STATE_PROPERTIES = exports.SET_ROTATE_STATUS = exports.SET_RELATED_LINE = exports.SET_PROPERTIES = exports.SET_PROJECT_PROPERTIES = exports.SET_PROJECT_ID = exports.SET_MOVE_STATUS = exports.SET_MOLDING = exports.SET_MODELLING = exports.SET_MODE = exports.SET_LINES_ATTRIBUTES = exports.SET_LAYER_PROPERTIES = exports.SET_ITEMS_ATTRIBUTES = exports.SET_IS_HELP = exports.SET_IS_CABINET_DRAWING = exports.SET_INITIAL_DOOR_STYLE = exports.SET_HOLES_ATTRIBUTES = exports.SET_HANDLE_MATERIAL = exports.SET_GROUP_PROPERTIES = exports.SET_GROUP_BARYCENTER = exports.SET_GROUP_ATTRIBUTES = exports.SET_FLOOR_STYLES = exports.SET_DOOR_STYLE = exports.SET_DOOR_HANDLE = exports.SET_DISTANT = exports.SET_COUNTER_TOP = exports.SET_BACKSPLASH_VISIBLE = exports.SET_BACKSPLASH = exports.SET_APPLIANCE_MATERIAL = exports.SELECT_TOOL_ZOOM_OUT = exports.SELECT_TOOL_ZOOM_IN = exports.SELECT_TOOL_UPLOAD_IMAGE = exports.SELECT_TOOL_PAN = exports.SELECT_TOOL_EDIT = exports.SELECT_TOOL_DRAWING_LINE = exports.SELECT_TOOL_DRAWING_ITEM_3D = exports.SELECT_TOOL_DRAWING_ITEM = exports.SELECT_TOOL_DRAWING_HOLE_3D = exports.SELECT_TOOL_DRAWING_HOLE = exports.SELECT_TOOL_3D_VIEW = exports.SELECT_TOOL_3D_FIRST_PERSON = exports.SELECT_LINE = exports.SELECT_LAYER = exports.SELECT_ITEM = exports.SELECT_HOLE = exports.SELECT_GROUP = exports.SELECT_DOOR_STYLE = exports.SELECT_AREA = exports.SELECT_ALL = exports.SELECTALL = exports.SECONDARY_PURPLE_COLOR = exports.SECONDARY_BLUE_COLOR = exports.SCENE_ACTIONS = exports.SAVE_PROJECT = exports.SAVE_DESIGN = exports.ROLLBACK = exports.RIGHT = exports.REVIEW_AND_QUOTE = exports.REQUEST_ASSISTANCE = exports.REPLACE_SUBMODULE = exports.REPLACE_ITEM = exports.REMOVE_VERTICAL_GUIDE = exports.REMOVE_REPLACE_SUBMODULE = exports.REMOVE_LINEAR = exports.REMOVE_LAYER = void 0;
9
- exports.ZOOM_VARIABLE = exports.WARRANTY_VIEW = exports.WARRANTY_SUPPORT = exports.WARNING_MESSAGE = exports.WALL_CABINET_LAYOUTPOS = exports.VIEWER3D_ACTIONS = exports.VIEWER2D_ACTIONS = exports.VERTEX_ACTIONS = exports.VALIDATE_ITEM_POSTIONS = exports.USER_ACTIONS = exports.UPDATE_ZOOM_SCALE = exports.UPDATE_ROTATING_ITEM_CHANGED = exports.UPDATE_ROTATING_ITEM = exports.UPDATE_ROTATING = exports.UPDATE_POPUP_OPEN = exports.UPDATE_MOVING_STATE = exports.UPDATE_MOUSE_COORDS = exports.UPDATE_MOLDING = exports.UPDATE_ITEM_POSITION = exports.UPDATE_DRAWING_LINE = exports.UPDATE_DRAWING_ITEM = exports.UPDATE_DRAWING_HOLE_3D = exports.UPDATE_DRAWING_HOLE = exports.UPDATE_DRAGGING_VERTEX = exports.UPDATE_DRAGGING_LINE = exports.UPDATE_DRAGGING_ITEM_CHANGED = exports.UPDATE_DRAGGING_ITEM_3DY = exports.UPDATE_DRAGGING_ITEM_3DX = exports.UPDATE_DRAGGING_ITEM = exports.UPDATE_DRAGGING_HOLE_RULER_CHANGED = exports.UPDATE_DRAGGING_HOLE_CHANGED = exports.UPDATE_DRAGGING_HOLE_3D = exports.UPDATE_DRAGGING_HOLE = exports.UPDATE_CEIL_HEIGHT_UNIT = exports.UPDATE_CEIL_HEIGHT = exports.UPDATE_3D_CEIL_HEIGHT_UNIT = exports.UPDATE_3D_CEIL_HEIGHT = exports.UPDATE_2D_CAMERA = exports.UNSELECT_GROUP = exports.UNSELECT_ALL = exports.UNIT_MILLIMETER = exports.UNIT_MILE = exports.UNIT_METER = exports.UNIT_INCH = exports.UNIT_FOOT = exports.UNIT_CENTIMETER = exports.UNIT_ANGLE = exports.UNITS_LENGTH = exports.UNDO = exports.UNCREATE = exports.TWO_D_FLOOR_PLAN = exports.TOP_MOLDING_LOCATION = exports.TOP = exports.TOGGLE_SNAP = exports.TOGGLE_LOADING_CABINET = exports.TOE_KICK_MOLDING = exports.TITLE_SMALL_COLOR = exports.TITLE_COLOR = exports.THROW_WARNING = exports.THROW_ERROR = exports.TEXT_COLOR_NEUTRAL_7 = exports.TEXT_COLOR_NEUTRAL_6 = exports.TEXT_COLOR_NEUTRAL_5 = exports.TEXT_COLOR_NEUTRAL_4 = exports.TEXT_COLOR_NEUTRAL_3 = exports.TEXT_COLOR_NEUTRAL_2 = exports.TEXT_COLOR_NEUTRAL_1 = void 0;
6
+ exports.END_ROTATING_ITEM = exports.END_LOADING = exports.END_FITTING_IMAGE = exports.END_DRAWING_LINE = exports.END_DRAWING_ITEM = exports.END_DRAWING_HOLE_3D = exports.END_DRAWING_HOLE = exports.END_DRAGGING_VERTEX = exports.END_DRAGGING_LINE = exports.END_DRAGGING_ITEM_3D = exports.END_DRAGGING_ITEM = exports.END_DRAGGING_HOLE_3D = exports.END_DRAGGING_HOLE = exports.END_CREATING_HOLE = exports.END_CREATING_CABINET = exports.ELEVATION_VIEW_TITLE = exports.ELEVATION_VIEW_RIGHT = exports.ELEVATION_VIEW_LEFT = exports.ELEVATION_VIEW_KEYWORD = exports.ELEVATION_VIEW_FRONT = exports.ELEVATION_VIEW_BACK = exports.ELEVATION_VIEW = exports.ELEMENT_VERTEX = exports.ELEMENT_LINE = exports.ELEMENT_ITEM = exports.ELEMENT_HOLE = exports.ELEMENT_AREA = exports.EDIT_WIDTH = exports.EDIT = exports.DUPLICATE_SELECTED = exports.DISTANCE_MEASUREMENT_LINE_COLOR = exports.DISTANCE_EPSILON = exports.DIFFERENT_VALUES_PATH_LENGTH = exports.DELTA = exports.DEFAULT_FONT_FAMILY = exports.DECIMAL_PLACES_3 = exports.DECIMAL_PLACES_2 = exports.DASH_LINE_COLOR = exports.CREATE_ROOM_WITH_SHAPE = exports.COPY_PROPERTIES = exports.CLIENTS_NAME = exports.CHANGE_WINDOW_DOOR_MEASURE = exports.CHANGE_WALL_LENGTH_MEASURE = exports.CHANGE_WALL_CABINET_MEASURE = exports.CHANGE_MEASUREMENT_UNIT = exports.CHANGE_CATALOG_PAGE = exports.CHANGE_BASE_CABINET_MEASURE = exports.CEIL_UNITS_LENGTH = exports.BROWN_COLOR = exports.BOTTOM_MOLDING_LOCATION = exports.BOTTOM = exports.BG_COLOR_OVERLAY = exports.BG_COLOR_HOVER = exports.BG_COLOR_1 = exports.BG_COLOR_0 = exports.BEGIN_UPLOADING_IMAGE = exports.BEGIN_ROTATING_ITEM_3D = exports.BEGIN_ROTATING_ITEM = exports.BEGIN_FITTING_IMAGE = exports.BEGIN_DRAWING_LINE = exports.BEGIN_DRAGGING_VERTEX = exports.BEGIN_DRAGGING_LINE = exports.BEGIN_DRAGGING_ITEM_3D = exports.BEGIN_DRAGGING_ITEM = exports.BEGIN_DRAGGING_HOLE_3D = exports.BEGIN_DRAGGING_HOLE = exports.BASE_ITEM_MEASUREMENT_LINE_COLOR = exports.BASE_CABINET_LAYOUTPOS = exports.BACK_DIST_ANG = exports.ATT_VERTEXT_TWO = exports.ATT_VERTEXT_ONE = exports.ATT_LINE_LENGTH = exports.ATT_ITEM_ROTATION = exports.ATT_ITEM_POS = exports.ATT_HOLE_OFFSET_B = exports.ATT_HOLE_OFFSET_A = exports.ARROW_TEXT_FORECOLOR = exports.ARROW_TEXT_FONTFACE = exports.ARROW_TEXT_BACKCOLOR = exports.ARROW_COLOR = exports.ARRAY_ELEVATION_VIEW_MODES = exports.ARRAY_3D_MODES = exports.AREA_ACTIONS = exports.API_SERVER_URL = exports.ANIMATE_STEP_MIN = exports.ANIMATE_STEP_MAX = exports.ANIMATE_OBJECT_OPEN_DOOR_ROTATION_UNIT = exports.ANIMATE_OBJECT = exports.ALTERATE_STATE = exports.ADD_VERTICAL_GUIDE = exports.ADD_TO_GROUP = exports.ADD_LAYER = exports.ADD_HORIZONTAL_GUIDE = exports.ADD_GROUP_FROM_SELECTED = exports.ADD_GROUP = exports.ADD_ELEMENT_TO_CATALOG = exports.ADD_CIRCULAR_GUIDE = exports.ADD_CABINETS = exports.ADD_APPLIANCES = exports.ACCENT_COLOR = void 0;
7
+ exports.MODE_DRAWING_ITEM_3D = exports.MODE_DRAWING_ITEM = exports.MODE_DRAWING_HOLE_3D = exports.MODE_DRAWING_HOLE = exports.MODE_DRAGGING_VERTEX = exports.MODE_DRAGGING_LINE = exports.MODE_DRAGGING_ITEM_3D = exports.MODE_DRAGGING_ITEM = exports.MODE_DRAGGING_HOLE_3D = exports.MODE_DRAGGING_HOLE = exports.MODE_CONFIGURING_PROJECT = exports.MODE_BACK_ELEVATION_VIEW = exports.MODE_3D_VIEW = exports.MODE_3D_FIRST_PERSON = exports.MODE_2D_ZOOM_OUT = exports.MODE_2D_ZOOM_IN = exports.MODE_2D_PAN = exports.MODE = exports.MIN_ANGLE_DISALLOW_DRAW_WALL = exports.MIDDLE_MOLDING_LOCATION = exports.MEPSILON = exports.MAX_ZOOM_IN_SCALE = exports.MAX_ANGLE_SCALE = exports.MAKE_FLOOR_PLAN = exports.LOGOUT = exports.LOGIN_SUCCESS = exports.LOGIN_ERROR = exports.LOCAL_STORAGE_TOKEN_VALUE = exports.LOCAL_STORAGE_TOKEN_NAME = exports.LOCAL_STORAGE_ORIGINAL_TOKEN = exports.LOCAL_STORAGE_CUSTOMER_INFO = exports.LOCAL_STORAGE_CART_ACTION = exports.LOAD_PROJECT = exports.LIST_QUANTITIES = exports.LIST_PARTS = exports.LINE_THICKNESS = exports.LINE_ACTIONS = exports.LEFT_DIST_ANG = exports.LEFT = exports.LABEL_COLOR = exports.KITCHEN_KONFIGURATOR = exports.KEYBOARD_BUTTON_CODE = exports.ITEM_TYPE = exports.ITEM_MOVE_UP = exports.ITEMS_ACTIONS = exports.INVERT = exports.INTERNAL_EVENT_UNSELECT_ALL = exports.INTERNAL_EVENT_SYNC_SCENE = exports.INTERNAL_EVENT_START_DRAW_WALL = exports.INTERNAL_EVENT_SELECT_ELEMENT = exports.INTERNAL_EVENT_ROTATE_ELEMENT = exports.INTERNAL_EVENT_REPLACE_CABINET = exports.INTERNAL_EVENT_ITEMS_CATALOG = exports.INTERNAL_EVENT_DRAW_ELEMENT = exports.INTERNAL_EVENT_DRAG_ELEMENT = exports.INSTALLATION_TYPE_SKU_SUFFIX = exports.INSTALLATION_TYPE_NAME = exports.INSTALLATION_SUFFIX_TYPE = exports.INIT_CATALOG = exports.HOLE_NAMES = exports.HOLE_ACTIONS = exports.HDR_URLS = exports.HAS_LOADINGBAR = exports.GROUP_TRANSLATE = exports.GROUP_ROTATE = exports.GROUP_ACTIONS = exports.GO_BACK_TO_CATALOG_PAGE = exports.FRONT_DIST_ANG = exports.FINISHING_TYPE = exports.FINISHING_TOUCH = exports.EXTERNAL_EVENT_ZOOM_OUT = exports.EXTERNAL_EVENT_ZOOM_IN = exports.EXTERNAL_EVENT_UPDATE_PROPERTY = exports.EXTERNAL_EVENT_UPDATE_ATTRIBUTE = exports.EXTERNAL_EVENT_UNDO = exports.EXTERNAL_EVENT_TOGGLE_TO_ELEVATION = exports.EXTERNAL_EVENT_TOGGLE_TO_3D = exports.EXTERNAL_EVENT_TOGGLE_TO_2D = exports.EXTERNAL_EVENT_SYNC_SCENE = exports.EXTERNAL_EVENT_SET_MOLDING = exports.EXTERNAL_EVENT_SET_FINISHING = exports.EXTERNAL_EVENT_ROTATE_PAN = exports.EXTERNAL_EVENT_REPLACE_CABINET = exports.EXTERNAL_EVENT_REDO = exports.EXTERNAL_EVENT_PROJECT_SETTING = exports.EXTERNAL_EVENT_NEW_PROJECT = exports.EXTERNAL_EVENT_MOVE_PAN = exports.EXTERNAL_EVENT_LOAD_PROJECT = exports.EXTERNAL_EVENT_DUPLICATE_ELEMENT = exports.EXTERNAL_EVENT_DELETE_ELEMENT = exports.EXTERNAL_EVENT_CHANGE_DOORSTYLE = exports.EXTERNAL_EVENT_CENTERING_2D = exports.EXTERNAL_EVENT_ADD_WALL = exports.EXTERNAL_EVENT_ADD_ROOM_SHAPE = exports.EXTERNAL_EVENT_ADD_ITEM = exports.EXTERNAL_EVENT_ADD_HOLE = exports.ERROR_DATABASE = exports.EPSILON = exports.END_UPLOADING_IMAGE = exports.END_ROTATING_ITEM_3D = void 0;
8
+ exports.SET_DOOR_STYLE = exports.SET_DOOR_HANDLE = exports.SET_DISTANT = exports.SET_COUNTER_TOP = exports.SET_BACKSPLASH_VISIBLE = exports.SET_BACKSPLASH = exports.SET_APPLIANCE_MATERIAL = exports.SELECT_TOOL_ZOOM_OUT = exports.SELECT_TOOL_ZOOM_IN = exports.SELECT_TOOL_UPLOAD_IMAGE = exports.SELECT_TOOL_PAN = exports.SELECT_TOOL_EDIT = exports.SELECT_TOOL_DRAWING_LINE = exports.SELECT_TOOL_DRAWING_ITEM_3D = exports.SELECT_TOOL_DRAWING_ITEM = exports.SELECT_TOOL_DRAWING_HOLE_3D = exports.SELECT_TOOL_DRAWING_HOLE = exports.SELECT_TOOL_3D_VIEW = exports.SELECT_TOOL_3D_FIRST_PERSON = exports.SELECT_LINE = exports.SELECT_LAYER = exports.SELECT_ITEM = exports.SELECT_HOLE = exports.SELECT_GROUP = exports.SELECT_DOOR_STYLE = exports.SELECT_AREA = exports.SELECT_ALL = exports.SELECTALL = exports.SECONDARY_PURPLE_COLOR = exports.SECONDARY_BLUE_COLOR = exports.SCENE_ACTIONS = exports.SAVE_PROJECT = exports.SAVE_DESIGN = exports.ROOM_SHAPE_TYPE = exports.ROOM_SHAPE_MEASUREMENT_LINE_COLOR = exports.ROOM_ELEMENT_MEASUREMENT_LINE_COLOR = exports.ROLLBACK = exports.RIGHT_DIST_ANG = exports.RIGHT = exports.REVIEW_AND_QUOTE = exports.REQUEST_ASSISTANCE = exports.REPLACE_SUBMODULE = exports.REPLACE_ITEM = exports.REMOVE_VERTICAL_GUIDE = exports.REMOVE_REPLACE_SUBMODULE = exports.REMOVE_LINEAR = exports.REMOVE_LAYER = exports.REMOVE_HORIZONTAL_GUIDE = exports.REMOVE_GROUP_AND_DELETE_ELEMENTS = exports.REMOVE_GROUP = exports.REMOVE_FROM_GROUP = exports.REMOVE_DRAWING_SUPPORT = exports.REMOVE_CIRCULAR_GUIDE = exports.REMOVE = exports.REDO = exports.RECREATE = exports.PUSH_LAST_SELECTED_CATALOG_ELEMENT_TO_HISTORY = exports.PROP_RESIZE_WIDTH = exports.PROP_RESIZE_HEIGHT = exports.PROP_RESIZE_DEPTH = exports.PROP_OPEN_DOORS = exports.PROP_FLIP_DOOR_HANDLE = exports.PROP_ALTITUDE = exports.PROJECT_SETTING_OPTION = exports.PROJECT_RE_NAME = exports.PROJECT_NAME_LENGTH_LIMIT = exports.PROJECT_ACTIONS = exports.PRODUCT = exports.PRIMARY_GREEN_COLOR = exports.PASTE_PROPERTIES = exports.OVERLAP_SOME = exports.OVERLAP_SAME = exports.OVERLAP_NONE = exports.OVERLAP_LINK = exports.OVERLAP_INCLUDED = exports.OPEN_PROJECT_CONFIGURATOR = exports.OPEN_CATALOG = exports.OBJTYPE_MESH = exports.OBJTYPE_GROUP = exports.NO_DATA_DATABASE = exports.NEW_PROJECT_BTN = exports.NEW_PROJECT = exports.NEW_DESIGN = exports.MOVE_COMPONENT = exports.MOLDING_LOCATIONS = exports.MODE_WAITING_DRAWING_LINE = exports.MODE_VIEWING_CATALOG = exports.MODE_UPLOADING_IMAGE = exports.MODE_SNAPPING = exports.MODE_ROTATING_ITEM_3D = exports.MODE_ROTATING_ITEM = exports.MODE_RIGHT_ELEVATION_VIEW = exports.MODE_LEFT_ELEVATION_VIEW = exports.MODE_IDLE_3D = exports.MODE_IDLE = exports.MODE_FRONT_VIEW = exports.MODE_FRONT_ELEVATION_VIEW = exports.MODE_FITTING_IMAGE = exports.MODE_ELEVATION_VIEW = exports.MODE_DRAWING_LINE = void 0;
9
+ exports.UPDATE_DRAGGING_LINE = exports.UPDATE_DRAGGING_ITEM_CHANGED = exports.UPDATE_DRAGGING_ITEM_3DY = exports.UPDATE_DRAGGING_ITEM_3DX = exports.UPDATE_DRAGGING_ITEM = exports.UPDATE_DRAGGING_HOLE_RULER_CHANGED = exports.UPDATE_DRAGGING_HOLE_CHANGED = exports.UPDATE_DRAGGING_HOLE_3D = exports.UPDATE_DRAGGING_HOLE = exports.UPDATE_CEIL_HEIGHT_UNIT = exports.UPDATE_CEIL_HEIGHT = exports.UPDATE_3D_CEIL_HEIGHT_UNIT = exports.UPDATE_3D_CEIL_HEIGHT = exports.UPDATE_2D_CAMERA = exports.UNSELECT_GROUP = exports.UNSELECT_ALL = exports.UNIT_MILLIMETER = exports.UNIT_MILE = exports.UNIT_METER = exports.UNIT_INCH = exports.UNIT_FOOT = exports.UNIT_CENTIMETER = exports.UNIT_ANGLE = exports.UNITS_LENGTH = exports.UNDO = exports.UNCREATE = exports.TWO_D_FLOOR_PLAN = exports.TOP_MOLDING_LOCATION = exports.TOP = exports.TOGGLE_SNAP = exports.TOGGLE_LOADING_CABINET = exports.TOE_KICK_MOLDING = exports.TITLE_SMALL_COLOR = exports.TITLE_COLOR = exports.THROW_WARNING = exports.THROW_ERROR = exports.TEXT_COLOR_NEUTRAL_7 = exports.TEXT_COLOR_NEUTRAL_6 = exports.TEXT_COLOR_NEUTRAL_5 = exports.TEXT_COLOR_NEUTRAL_4 = exports.TEXT_COLOR_NEUTRAL_3 = exports.TEXT_COLOR_NEUTRAL_2 = exports.TEXT_COLOR_NEUTRAL_1 = exports.TEXT_COLOR_NEUTRAL_0 = exports.TEXT_COLOR = exports.TECHNICAL_VIEW = exports.TALL_CABINET_LAYOUTPOS = exports.TAKE_PICTURE = exports.SUBTOTAL = exports.SUBMIT_REQUEST_ASSIST = exports.SUBMIT_DESIGN = exports.SUBMIT_ADD_CART = exports.STORE_DIST_ARRAY = exports.STOP_DRAWING_LINE = exports.STEP_CABINET_CHOOSE_PRODUCT = exports.STATUS_WARNING_LIGHT_COLOR = exports.STATUS_WARNING_COLOR = exports.STATUS_POSITIVE_LIGHT_COLOR = exports.STATUS_POSITIVE_COLOR = exports.STATUS_OVERDUE_LIGHT_COLOR = exports.STATUS_OVERDUE_COLOR = exports.STATUS_NEGATIVE_LIGHT_COLOR = exports.STATUS_NEGATIVE_COLOR = exports.STATUS_INFO_LIGHT_COLOR = exports.STATUS_INFO_COLOR = exports.SHIFT2DON = exports.SHIFT2DOFF = exports.SHAPE_SVG_WIDTH = exports.SHAPE_SVG_PADDING = exports.SHAPE_SVG_DEPTH = exports.SHADE_LIGHT_PURPLE_COLOR = exports.SHADE_LIGHT_GREEN_COLOR = exports.SHADE_LIGHT_BLUE_COLOR = exports.SHADE_DARK_PURPLE_COLOR = exports.SHADE_DARK_GREEN_COLOR = exports.SHADE_DARK_BLUE_COLOR = exports.SET_WALL_COLOR = exports.SET_USER_DATA = exports.SET_STATE_PROPERTIES = exports.SET_ROTATE_STATUS = exports.SET_RELATED_LINE = exports.SET_PROPERTIES = exports.SET_PROJECT_PROPERTIES = exports.SET_PROJECT_ID = exports.SET_MOVE_STATUS = exports.SET_MOLDING = exports.SET_MODELLING = exports.SET_MODE = exports.SET_LINES_ATTRIBUTES = exports.SET_LAYER_PROPERTIES = exports.SET_ITEMS_ATTRIBUTES = exports.SET_IS_HELP = exports.SET_IS_CABINET_DRAWING = exports.SET_INITIAL_DOOR_STYLE = exports.SET_HOLES_ATTRIBUTES = exports.SET_HANDLE_MATERIAL = exports.SET_GROUP_PROPERTIES = exports.SET_GROUP_BARYCENTER = exports.SET_GROUP_ATTRIBUTES = exports.SET_FLOOR_STYLES = void 0;
10
+ exports.ZOOM_VARIABLE = exports.WARRANTY_VIEW = exports.WARRANTY_SUPPORT = exports.WARNING_MESSAGE = exports.WALL_ITEM_MEASUREMENT_LINE_COLOR = exports.WALL_CABINET_LAYOUTPOS = exports.VIEWER3D_ACTIONS = exports.VIEWER2D_ACTIONS = exports.VERTEX_ACTIONS = exports.VALIDATE_ITEM_POSTIONS = exports.USER_ACTIONS = exports.UPDATE_ZOOM_SCALE = exports.UPDATE_ROTATING_ITEM_CHANGED = exports.UPDATE_ROTATING_ITEM = exports.UPDATE_ROTATING = exports.UPDATE_POPUP_OPEN = exports.UPDATE_MOVING_STATE = exports.UPDATE_MOUSE_COORDS = exports.UPDATE_MOLDING = exports.UPDATE_ITEM_POSITION = exports.UPDATE_DRAWING_LINE = exports.UPDATE_DRAWING_ITEM = exports.UPDATE_DRAWING_HOLE_3D = exports.UPDATE_DRAWING_HOLE = exports.UPDATE_DRAGGING_VERTEX = void 0;
10
11
  //API server
11
12
  // export const API_SERVER = 'http://localhost:3000/';
12
13
  // ACTIONS project
@@ -64,6 +65,7 @@ var REMOVE_CIRCULAR_GUIDE = exports.REMOVE_CIRCULAR_GUIDE = 'REMOVE_CIRCULAR_GUI
64
65
  var REMOVE_DRAWING_SUPPORT = exports.REMOVE_DRAWING_SUPPORT = 'REMOVE_DRAWING_SUPPORT';
65
66
  var SET_IS_HELP = exports.SET_IS_HELP = 'SET_IS_HELP';
66
67
  var SET_IS_CABINET_DRAWING = exports.SET_IS_CABINET_DRAWING = 'SET_IS_CABINET_DRAWING';
68
+ var CREATE_ROOM_WITH_SHAPE = exports.CREATE_ROOM_WITH_SHAPE = 'CREATE_ROOM_WITH_SHAPE';
67
69
 
68
70
  // ACTIONS viewer2D
69
71
  var SELECT_TOOL_ZOOM_IN = exports.SELECT_TOOL_ZOOM_IN = 'SELECT_TOOL_ZOOM_IN';
@@ -74,6 +76,7 @@ var CHANGE_WALL_LENGTH_MEASURE = exports.CHANGE_WALL_LENGTH_MEASURE = 'CHANGE_WA
74
76
  var CHANGE_BASE_CABINET_MEASURE = exports.CHANGE_BASE_CABINET_MEASURE = 'CHANGE_BASE_CABINET_MEASURE';
75
77
  var CHANGE_WALL_CABINET_MEASURE = exports.CHANGE_WALL_CABINET_MEASURE = 'CHANGE_WALL_CABINET_MEASURE';
76
78
  var CHANGE_WINDOW_DOOR_MEASURE = exports.CHANGE_WINDOW_DOOR_MEASURE = 'CHANGE_WINDOW_DOOR_MEASURE';
79
+ var CHANGE_MEASUREMENT_UNIT = exports.CHANGE_MEASUREMENT_UNIT = 'CHANGE_MEASUREMENT_UNIT';
77
80
 
78
81
  //ACTIONS viewer3D
79
82
  var SELECT_TOOL_3D_VIEW = exports.SELECT_TOOL_3D_VIEW = 'SELECT_TOOL_3D_VIEW';
@@ -253,7 +256,8 @@ var PROJECT_ACTIONS = exports.PROJECT_ACTIONS = {
253
256
  SHIFT2DOFF: SHIFT2DOFF,
254
257
  SHIFT2DON: SHIFT2DON,
255
258
  SET_IS_HELP: SET_IS_HELP,
256
- SET_IS_CABINET_DRAWING: SET_IS_CABINET_DRAWING
259
+ SET_IS_CABINET_DRAWING: SET_IS_CABINET_DRAWING,
260
+ CREATE_ROOM_WITH_SHAPE: CREATE_ROOM_WITH_SHAPE
257
261
  };
258
262
  var VIEWER2D_ACTIONS = exports.VIEWER2D_ACTIONS = {
259
263
  SELECT_TOOL_ZOOM_IN: SELECT_TOOL_ZOOM_IN,
@@ -554,6 +558,12 @@ var LABEL_COLOR = exports.LABEL_COLOR = '#6E7191';
554
558
  var TEXT_COLOR = exports.TEXT_COLOR = '#000000';
555
559
  var ACCENT_COLOR = exports.ACCENT_COLOR = '#AD00FF';
556
560
  var BROWN_COLOR = exports.BROWN_COLOR = '#624100';
561
+ var ROOM_SHAPE_MEASUREMENT_LINE_COLOR = exports.ROOM_SHAPE_MEASUREMENT_LINE_COLOR = '#455A64';
562
+ var ROOM_ELEMENT_MEASUREMENT_LINE_COLOR = exports.ROOM_ELEMENT_MEASUREMENT_LINE_COLOR = '#B0BEC5';
563
+ var BASE_ITEM_MEASUREMENT_LINE_COLOR = exports.BASE_ITEM_MEASUREMENT_LINE_COLOR = '#0277BD';
564
+ var WALL_ITEM_MEASUREMENT_LINE_COLOR = exports.WALL_ITEM_MEASUREMENT_LINE_COLOR = '#00897B';
565
+ var DISTANCE_MEASUREMENT_LINE_COLOR = exports.DISTANCE_MEASUREMENT_LINE_COLOR = '#7B1FA2';
566
+ var DASH_LINE_COLOR = exports.DASH_LINE_COLOR = '#78909C';
557
567
  var DEFAULT_FONT_FAMILY = exports.DEFAULT_FONT_FAMILY = 'Open Sans';
558
568
 
559
569
  // Download summary
@@ -646,6 +656,26 @@ var ITEM_TYPE = exports.ITEM_TYPE = {
646
656
  LIGHTING: 'lighting',
647
657
  FURNISHING: 'furnishing'
648
658
  };
659
+ var PROJECT_SETTING_OPTION = exports.PROJECT_SETTING_OPTION = {
660
+ UPDATE_CEIL_HEIGHT: UPDATE_CEIL_HEIGHT,
661
+ CHANGE_WALL_LENGTH_MEASURE: CHANGE_WALL_LENGTH_MEASURE,
662
+ CHANGE_BASE_CABINET_MEASURE: CHANGE_BASE_CABINET_MEASURE,
663
+ CHANGE_WALL_CABINET_MEASURE: CHANGE_WALL_CABINET_MEASURE,
664
+ CHANGE_WINDOW_DOOR_MEASURE: CHANGE_WINDOW_DOOR_MEASURE,
665
+ CHANGE_MEASUREMENT_UNIT: CHANGE_MEASUREMENT_UNIT
666
+ };
667
+ var HOLE_NAMES = exports.HOLE_NAMES = {
668
+ WINDOW_CLEAR: 'Window',
669
+ WINDOW_CROSS: 'Cross Window',
670
+ WINDOW_DOUBLE_HUNG: 'Double Hung Window',
671
+ WINDOW_VERTICAL: 'window-vertical',
672
+ DOOR_CLOSET: 'Closet',
673
+ DOOR_EXTERIOR: 'Exterior',
674
+ DOOR_INTERIOR: 'Interior',
675
+ DOOR_SLIDING: 'Sliding',
676
+ DOOR_FRAMED: 'Framed Doorway',
677
+ DOOR_FRAMELESS: 'FrameLess Doorway'
678
+ };
649
679
 
650
680
  // direction type
651
681
  var LEFT = exports.LEFT = 'Left';
@@ -653,16 +683,95 @@ var RIGHT = exports.RIGHT = 'Right';
653
683
  var TOP = exports.TOP = 'Top';
654
684
  var BOTTOM = exports.BOTTOM = 'Bottom';
655
685
 
686
+ // distance direction angle
687
+ var LEFT_DIST_ANG = exports.LEFT_DIST_ANG = 0;
688
+ var RIGHT_DIST_ANG = exports.RIGHT_DIST_ANG = 180;
689
+ var BACK_DIST_ANG = exports.BACK_DIST_ANG = 90;
690
+ var FRONT_DIST_ANG = exports.FRONT_DIST_ANG = -90;
691
+
692
+ // element prototype
693
+ var ELEMENT_LINE = exports.ELEMENT_LINE = 'lines';
694
+ var ELEMENT_HOLE = exports.ELEMENT_HOLE = 'holes';
695
+ var ELEMENT_ITEM = exports.ELEMENT_ITEM = 'items';
696
+ var ELEMENT_AREA = exports.ELEMENT_AREA = 'areas';
697
+ var ELEMENT_VERTEX = exports.ELEMENT_VERTEX = 'vertices';
698
+ // element attributes
699
+ var ATT_ITEM_POS = exports.ATT_ITEM_POS = 'pos';
700
+ var ATT_ITEM_ROTATION = exports.ATT_ITEM_ROTATION = 'rotation';
701
+ var ATT_LINE_LENGTH = exports.ATT_LINE_LENGTH = 'lineLength';
702
+ var ATT_VERTEXT_ONE = exports.ATT_VERTEXT_ONE = 'vertexOne';
703
+ var ATT_VERTEXT_TWO = exports.ATT_VERTEXT_TWO = 'vertexTwo';
704
+ var ATT_HOLE_OFFSET_A = exports.ATT_HOLE_OFFSET_A = 'offsetA';
705
+ var ATT_HOLE_OFFSET_B = exports.ATT_HOLE_OFFSET_B = 'offsetB';
706
+ // element properties
707
+ var PROP_FLIP_DOOR_HANDLE = exports.PROP_FLIP_DOOR_HANDLE = 'flip_doorhandle';
708
+ var PROP_OPEN_DOORS = exports.PROP_OPEN_DOORS = 'open_doors';
709
+ var PROP_ALTITUDE = exports.PROP_ALTITUDE = 'altitude';
710
+ var PROP_RESIZE_WIDTH = exports.PROP_RESIZE_WIDTH = 'width';
711
+ var PROP_RESIZE_HEIGHT = exports.PROP_RESIZE_HEIGHT = 'height';
712
+ var PROP_RESIZE_DEPTH = exports.PROP_RESIZE_DEPTH = 'depth';
713
+
714
+ // finishing typs
715
+ var FINISHING_TYPE = exports.FINISHING_TYPE = {
716
+ COUNTER_TOP: 'counterTop',
717
+ DOOR_HANDLE: 'doorHandle',
718
+ WALL_COLOR: 'wallColor',
719
+ FLOOR_STYLE: 'floorStyle',
720
+ BACKSPLASH: 'backsplash'
721
+ };
722
+ var MAX_ZOOM_IN_SCALE = exports.MAX_ZOOM_IN_SCALE = Infinity;
723
+
656
724
  // external event type
725
+ var EXTERNAL_EVENT_SYNC_SCENE = exports.EXTERNAL_EVENT_SYNC_SCENE = 'EXTERNAL_EVENT_SYNC_SCENE'; // Host request the scene data to 3DTool for sync : Host -> 3DTool
726
+ var INTERNAL_EVENT_SYNC_SCENE = exports.INTERNAL_EVENT_SYNC_SCENE = 'INTERNAL_EVENT_SYNC_SCENE'; // 3DTool send the scene data to Host for sync : 3DTool -> HostApp
727
+ var INTERNAL_EVENT_ITEMS_CATALOG = exports.INTERNAL_EVENT_ITEMS_CATALOG = 'INTERNAL_EVENT_ITEMS_CATALOG'; // Request item's catalog data to Host
728
+
729
+ // external event type
730
+ var EXTERNAL_EVENT_LOAD_PROJECT = exports.EXTERNAL_EVENT_LOAD_PROJECT = 'EXTERNAL_EVENT_LOAD_PROJECT';
657
731
  var EXTERNAL_EVENT_TOGGLE_TO_3D = exports.EXTERNAL_EVENT_TOGGLE_TO_3D = 'EXTERNAL_EVENT_TOGGLE_TO_3D';
658
732
  var EXTERNAL_EVENT_TOGGLE_TO_2D = exports.EXTERNAL_EVENT_TOGGLE_TO_2D = 'EXTERNAL_EVENT_TOGGLE_TO_2D';
659
733
  var EXTERNAL_EVENT_TOGGLE_TO_ELEVATION = exports.EXTERNAL_EVENT_TOGGLE_TO_ELEVATION = 'EXTERNAL_EVENT_TOGGLE_TO_ELEVATION';
660
734
  var EXTERNAL_EVENT_ADD_WALL = exports.EXTERNAL_EVENT_ADD_WALL = 'EXTERNAL_EVENT_ADD_WALL';
661
735
  var EXTERNAL_EVENT_ADD_ITEM = exports.EXTERNAL_EVENT_ADD_ITEM = 'EXTERNAL_EVENT_ADD_ITEM';
736
+ var EXTERNAL_EVENT_ADD_HOLE = exports.EXTERNAL_EVENT_ADD_HOLE = 'EXTERNAL_EVENT_ADD_HOLE';
662
737
  var EXTERNAL_EVENT_MOVE_PAN = exports.EXTERNAL_EVENT_MOVE_PAN = 'EXTERNAL_EVENT_MOVE_PAN';
663
738
  var EXTERNAL_EVENT_NEW_PROJECT = exports.EXTERNAL_EVENT_NEW_PROJECT = 'EXTERNAL_EVENT_NEW_PROJECT';
664
739
  var EXTERNAL_EVENT_CHANGE_DOORSTYLE = exports.EXTERNAL_EVENT_CHANGE_DOORSTYLE = 'EXTERNAL_EVENT_CHANGE_DOORSTYLE';
665
- var EXTERNAL_EVENT_SET_INITIAL_DATA = exports.EXTERNAL_EVENT_SET_INITIAL_DATA = 'EXTERNAL_EVENT_SET_INITIAL_DATA';
666
740
  var EXTERNAL_EVENT_ADD_ROOM_SHAPE = exports.EXTERNAL_EVENT_ADD_ROOM_SHAPE = 'EXTERNAL_EVENT_ADD_ROOM_SHAPE';
667
741
  var EXTERNAL_EVENT_ZOOM_IN = exports.EXTERNAL_EVENT_ZOOM_IN = 'EXTERNAL_EVENT_ZOOM_IN';
668
- var EXTERNAL_EVENT_ZOOM_OUT = exports.EXTERNAL_EVENT_ZOOM_OUT = 'EXTERNAL_EVENT_ZOOM_OUT';
742
+ var EXTERNAL_EVENT_ZOOM_OUT = exports.EXTERNAL_EVENT_ZOOM_OUT = 'EXTERNAL_EVENT_ZOOM_OUT';
743
+ var EXTERNAL_EVENT_UNDO = exports.EXTERNAL_EVENT_UNDO = 'EXTERNAL_EVENT_UNDO';
744
+ var EXTERNAL_EVENT_REDO = exports.EXTERNAL_EVENT_REDO = 'EXTERNAL_EVENT_REDO';
745
+ var EXTERNAL_EVENT_SET_MOLDING = exports.EXTERNAL_EVENT_SET_MOLDING = 'EXTERNAL_EVENT_SET_MOLDING';
746
+ var EXTERNAL_EVENT_PROJECT_SETTING = exports.EXTERNAL_EVENT_PROJECT_SETTING = 'EXTERNAL_EVENT_PROJECT_SETTING'; // project setting event
747
+ var EXTERNAL_EVENT_CENTERING_2D = exports.EXTERNAL_EVENT_CENTERING_2D = 'EXTERNAL_EVENT_CENTERING_2D';
748
+ var EXTERNAL_EVENT_DUPLICATE_ELEMENT = exports.EXTERNAL_EVENT_DUPLICATE_ELEMENT = 'EXTERNAL_EVENT_DUPLICATE_ELEMENT';
749
+ var EXTERNAL_EVENT_DELETE_ELEMENT = exports.EXTERNAL_EVENT_DELETE_ELEMENT = 'EXTERNAL_EVENT_DELETE_ELEMENT';
750
+ var EXTERNAL_EVENT_UPDATE_ATTRIBUTE = exports.EXTERNAL_EVENT_UPDATE_ATTRIBUTE = 'EXTERNAL_EVENT_UPDATE_ATTRIBUTE'; // update the element's attributes (distance, rotation...) in the property window
751
+ var EXTERNAL_EVENT_UPDATE_PROPERTY = exports.EXTERNAL_EVENT_UPDATE_PROPERTY = 'EXTERNAL_EVENT_UPDATE_PROPERTY'; // update the element's property (flip_doorhandle, open_doors...) in the property window
752
+ var EXTERNAL_EVENT_REPLACE_CABINET = exports.EXTERNAL_EVENT_REPLACE_CABINET = 'EXTERNAL_EVENT_REPLACE_CABINET';
753
+ var EXTERNAL_EVENT_SET_FINISHING = exports.EXTERNAL_EVENT_SET_FINISHING = 'EXTERNAL_EVENT_SET_FINISHING'; // set finishing(wallColor, floorStyle, doorHandle, backsplash, counterTop)
754
+ var EXTERNAL_EVENT_ROTATE_PAN = exports.EXTERNAL_EVENT_ROTATE_PAN = 'EXTERNAL_EVENT_ROTATE_PAN'; // external event for rotate pan
755
+
756
+ // internal event type
757
+ var INTERNAL_EVENT_UNSELECT_ALL = exports.INTERNAL_EVENT_UNSELECT_ALL = 'INTERNAL_EVENT_UNSELECT_ALL';
758
+ var INTERNAL_EVENT_SELECT_ELEMENT = exports.INTERNAL_EVENT_SELECT_ELEMENT = 'INTERNAL_EVENT_SELECT_ELEMENT';
759
+ var INTERNAL_EVENT_DRAG_ELEMENT = exports.INTERNAL_EVENT_DRAG_ELEMENT = 'INTERNAL_EVENT_DRAG_ELEMENT';
760
+ var INTERNAL_EVENT_DRAW_ELEMENT = exports.INTERNAL_EVENT_DRAW_ELEMENT = 'INTERNAL_EVENT_DRAW_ELEMENT';
761
+ var INTERNAL_EVENT_ROTATE_ELEMENT = exports.INTERNAL_EVENT_ROTATE_ELEMENT = 'INTERNAL_EVENT_ROTATE_ELEMENT';
762
+ var INTERNAL_EVENT_REPLACE_CABINET = exports.INTERNAL_EVENT_REPLACE_CABINET = 'INTERNAL_EVENT_REPLACE_CABINET';
763
+ var INTERNAL_EVENT_START_DRAW_WALL = exports.INTERNAL_EVENT_START_DRAW_WALL = 'INTERNAL_EVENT_START_DRAW_WALL';
764
+
765
+ // room shape type
766
+ var ROOM_SHAPE_TYPE = exports.ROOM_SHAPE_TYPE = {
767
+ CUSTOM: 'custom',
768
+ RECTANGLE: 'rectangle',
769
+ TWO_WALLS_LEFT_TOP: '2wLeftTop',
770
+ TWO_WALLS_RIGHT_TOP: '2wRightTop',
771
+ TWO_WALLS_LEFT_BOTTOM: '2wLeftBottom',
772
+ TWO_WALLS_RIGHT_BOTTOM: '2wRightBottom',
773
+ THREE_WALLS_LEFT_TOP_RIGHT: '3wLeftTopRight',
774
+ THREE_WALLS_TOP_RIGHT_BOTTOM: '3wTopRightBottom',
775
+ THREE_WALLS_RIGHT_BOTTOM_LEFT: '3wRightBottomLeft',
776
+ THREE_WALLS_BOTTOM_LEFT_TOP: '3wBottomLeftTop'
777
+ };