kitchen-simulator 1.0.0-clark.85 → 1.0.0-clark.91

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.
@@ -84,8 +84,7 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
84
84
  redirectURL: '',
85
85
  snackBarMessage: '',
86
86
  isSaved: false,
87
- isLeaving: false,
88
- stateCatalog: _this.props.catalog
87
+ isLeaving: false
89
88
  };
90
89
 
91
90
  // For UTM tracking
@@ -339,7 +338,6 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
339
338
  }, {
340
339
  key: "componentWillReceiveProps",
341
340
  value: function componentWillReceiveProps(nextProps) {
342
- var _oldState$catalog, _plannerState$catalog;
343
341
  var stateExtractor = nextProps.stateExtractor,
344
342
  state = nextProps.state,
345
343
  projectActions = nextProps.projectActions,
@@ -351,15 +349,6 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
351
349
  handleExternalEvent(nextProps);
352
350
  }
353
351
  var plannerState = stateExtractor(state);
354
- var oldState = stateExtractor(this.props.state);
355
- if ((oldState === null || oldState === void 0 || (_oldState$catalog = oldState.catalog) === null || _oldState$catalog === void 0 ? void 0 : _oldState$catalog.elements) !== (plannerState === null || plannerState === void 0 || (_plannerState$catalog = plannerState.catalog) === null || _plannerState$catalog === void 0 ? void 0 : _plannerState$catalog.elements)) {
356
- // copy state.catalog to the props.catalog
357
- // let catalog = this.state.stateCatalog;
358
- // console.log('111111', plannerState?.catalog?.elements.toJS());
359
- // catalog.elements = plannerState?.catalog?.elements.toJS();
360
- // console.log('222222', catalog);
361
- // this.setState({ stateCatalog: catalog });
362
- }
363
352
  var catalogReady = plannerState.getIn(['catalog', 'ready']);
364
353
  if (!catalogReady) {
365
354
  projectActions.initCatalog(catalog);
@@ -432,7 +421,7 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
432
421
  }, /*#__PURE__*/React.createElement(Content, _extends({
433
422
  width: contentW,
434
423
  height: contentH,
435
- catalog: this.state.stateCatalog,
424
+ catalog: this.props.catalog,
436
425
  state: extractedState,
437
426
  toolBar: this.state.toolbar,
438
427
  setToolbar: this.setToolbar,
@@ -441,7 +430,8 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
441
430
  }, props, {
442
431
  onWheel: function onWheel(event) {
443
432
  return event.preventDefault();
444
- }
433
+ },
434
+ onInternalEvent: this.props.onInternalEvent
445
435
  }))));
446
436
  }
447
437
  }]);
@@ -460,7 +450,8 @@ LiteKitchenConfigurator.propTypes = {
460
450
  footerbarComponents: PropTypes.array,
461
451
  customContents: PropTypes.object,
462
452
  softwareSignature: PropTypes.string,
463
- configData: PropTypes.object
453
+ configData: PropTypes.object,
454
+ onInternalEvent: PropTypes.func
464
455
  };
465
456
  LiteKitchenConfigurator.contextTypes = {
466
457
  store: PropTypes.object.isRequired
@@ -8,7 +8,7 @@ import _createClass from "@babel/runtime/helpers/esm/createClass";
8
8
  import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
9
9
  import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
10
10
  import _inherits from "@babel/runtime/helpers/esm/inherits";
11
- var _excluded = ["width", "height", "projectElement", "dataBundle", "configData", "options", "user", "auth", "featureFlags", "sentry", "analytics", "externalEvent", "onError"];
11
+ var _excluded = ["width", "height", "projectElement", "dataBundle", "configData", "options", "user", "auth", "featureFlags", "sentry", "analytics", "externalEvent", "onInternalEvent", "onError"];
12
12
  import _regeneratorRuntime from "@babel/runtime/regenerator";
13
13
  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; }
14
14
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -153,6 +153,7 @@ export default function LiteRenderer(props) {
153
153
  sentry = props.sentry,
154
154
  analytics = props.analytics,
155
155
  externalEvent = props.externalEvent,
156
+ onInternalEvent = props.onInternalEvent,
156
157
  onError = props.onError,
157
158
  passThrough = _objectWithoutProperties(props, _excluded);
158
159
 
@@ -471,7 +472,8 @@ export default function LiteRenderer(props) {
471
472
  },
472
473
  data: data,
473
474
  configData: configData,
474
- externalEvent: externalEvent
475
+ externalEvent: externalEvent,
476
+ onInternalEvent: onInternalEvent
475
477
  }, passThrough)))));
476
478
  }
477
479
 
@@ -495,6 +497,7 @@ LiteRenderer.propTypes = {
495
497
  environment: PropTypes.string
496
498
  }),
497
499
  externalEvent: PropTypes.object,
500
+ onInternalEvent: PropTypes.func,
498
501
  onError: PropTypes.func,
499
502
  store: PropTypes.object
500
503
  };
@@ -16,7 +16,8 @@ export default function Content(_ref, _ref2) {
16
16
  setToolbar = _ref.setToolbar,
17
17
  replaceCabinet = _ref.replaceCabinet,
18
18
  keyDownEnable = _ref.keyDownEnable,
19
- catalog = _ref.catalog;
19
+ catalog = _ref.catalog,
20
+ onInternalEvent = _ref.onInternalEvent;
20
21
  var projectActions = _ref2.projectActions;
21
22
  var mode = state.get('mode');
22
23
  switch (mode) {
@@ -40,7 +41,8 @@ export default function Content(_ref, _ref2) {
40
41
  setToolbar: setToolbar,
41
42
  replaceCabinet: replaceCabinet,
42
43
  keyDownEnable: keyDownEnable,
43
- downloadFlag: false
44
+ downloadFlag: false,
45
+ onInternalEvent: onInternalEvent
44
46
  });
45
47
  case constants.MODE_3D_FIRST_PERSON:
46
48
  return /*#__PURE__*/React.createElement(Viewer3DFirstPerson, {
@@ -78,7 +80,8 @@ export default function Content(_ref, _ref2) {
78
80
  width: width,
79
81
  height: height,
80
82
  setToolbar: setToolbar,
81
- replaceCabinet: replaceCabinet
83
+ replaceCabinet: replaceCabinet,
84
+ onInternalEvent: onInternalEvent
82
85
  });
83
86
  case constants.MODE_ROTATING_ITEM_3D:
84
87
  case constants.MODE_DRAGGING_ITEM_3D:
@@ -94,7 +97,8 @@ export default function Content(_ref, _ref2) {
94
97
  setToolbar: setToolbar,
95
98
  replaceCabinet: replaceCabinet,
96
99
  keyDownEnable: keyDownEnable,
97
- downloadFlag: false
100
+ downloadFlag: false,
101
+ onInternalEvent: onInternalEvent
98
102
  });
99
103
 
100
104
  // case constants.MODE_CONFIGURING_PROJECT:
@@ -119,7 +123,8 @@ Content.propTypes = {
119
123
  state: PropTypes.object.isRequired,
120
124
  width: PropTypes.number.isRequired,
121
125
  height: PropTypes.number.isRequired,
122
- replaceCabinet: PropTypes.func.isRequired
126
+ replaceCabinet: PropTypes.func.isRequired,
127
+ onInternalEvent: PropTypes.func.isRequired
123
128
  };
124
129
  Content.contextTypes = {
125
130
  projectActions: PropTypes.object.isRequired
@@ -6,7 +6,7 @@ import React, { useEffect, useRef, useState } from 'react';
6
6
  import PropTypes from 'prop-types';
7
7
  import { ReactSVGPanZoom, TOOL_AUTO, TOOL_NONE, TOOL_PAN, TOOL_ZOOM_IN, TOOL_ZOOM_OUT } from 'react-svg-pan-zoom';
8
8
  import * as constants from "../../constants";
9
- import { DECIMAL_PLACES_2, LINE_THICKNESS, MIN_ANGLE_DISALLOW_DRAW_WALL, MODE_ELEVATION_VIEW, MODE_IDLE, UNIT_ANGLE } from "../../constants";
9
+ import { DECIMAL_PLACES_2, LINE_THICKNESS, MIN_ANGLE_DISALLOW_DRAW_WALL, MODE_ELEVATION_VIEW, MODE_IDLE, UNIT_ANGLE, INTERNAL_EVENT_SELECT_ELEMENT, INTERNAL_EVENT_DRAG_ELEMENT, INTERNAL_EVENT_DRAW_ELEMENT, INTERNAL_EVENT_ROTATE_ELEMENT } from "../../constants";
10
10
  import State from "./state";
11
11
  import * as SharedStyle from "../../shared-style";
12
12
  import { RulerX, RulerY } from "./export";
@@ -123,7 +123,8 @@ export default function Viewer2D(_ref, _ref2) {
123
123
  width = _ref.width,
124
124
  height = _ref.height,
125
125
  setToolbar = _ref.setToolbar,
126
- replaceCabinet = _ref.replaceCabinet;
126
+ replaceCabinet = _ref.replaceCabinet,
127
+ onInternalEvent = _ref.onInternalEvent;
127
128
  var viewer2DActions = _ref2.viewer2DActions,
128
129
  linesActions = _ref2.linesActions,
129
130
  holesActions = _ref2.holesActions,
@@ -780,35 +781,42 @@ export default function Viewer2D(_ref, _ref2) {
780
781
  if (mode === constants.MODE_IDLE) {
781
782
  var elementData = extractElementData(event.target);
782
783
  if (!elementData) return;
783
- if (sCount < 2) switch (elementData.prototype) {
784
- case 'lines':
785
- if (elementData.selected) {
786
- if (elementData.part === 'remove') break;else if (elementData.part === 'elevation') break;
787
- linesActions.beginDraggingLine(elementData.layer, elementData.id, x, y, state.snapMask);
788
- }
789
- break;
790
- case 'vertices':
791
- verticesActions.beginDraggingVertex(elementData.layer, elementData.id, x, y, state.snapMask);
792
- break;
793
- case 'items':
794
- setToolbar('');
795
- current_sel_obj_id = elementData.id;
796
- if (elementData.part === 'rotation-anchor') itemsActions.beginRotatingItem(elementData.layer, elementData.id, x, y);else if (elementData.part === 'remove') break;else if (elementData.part === 'duplicate') break;else if (elementData.part === 'warning_edit') break;else {
797
- // closes the setting dialog
798
- if (document.getElementById('setting_dialog')) {
799
- document.getElementById('setting_dialog').style.display = 'none';
784
+ if (sCount < 2) {
785
+ switch (elementData.prototype) {
786
+ case 'lines':
787
+ if (elementData.selected) {
788
+ if (elementData.part === 'remove') break;else if (elementData.part === 'elevation') break;
789
+ linesActions.beginDraggingLine(elementData.layer, elementData.id, x, y, state.snapMask);
800
790
  }
801
- itemsActions.selectItem(elementData.layer, elementData.id);
802
- // projectActions.setMode(constants.MODE_DRAGGING_ITEM);
803
- itemsActions.beginDraggingItem(elementData.layer, elementData.id, x, y);
804
- replaceCabinet(false);
805
- }
806
- break;
807
- case 'holes':
808
- if (elementData.selected) holesActions.beginDraggingHole(elementData.layer, elementData.id, x, y);
809
- break;
810
- default:
811
- break;
791
+ break;
792
+ case 'vertices':
793
+ verticesActions.beginDraggingVertex(elementData.layer, elementData.id, x, y, state.snapMask);
794
+ break;
795
+ case 'items':
796
+ setToolbar('');
797
+ current_sel_obj_id = elementData.id;
798
+ if (elementData.part === 'rotation-anchor') itemsActions.beginRotatingItem(elementData.layer, elementData.id, x, y);else if (elementData.part === 'remove') break;else if (elementData.part === 'duplicate') break;else if (elementData.part === 'warning_edit') break;else {
799
+ // closes the setting dialog
800
+ if (document.getElementById('setting_dialog')) {
801
+ document.getElementById('setting_dialog').style.display = 'none';
802
+ }
803
+ itemsActions.selectItem(elementData.layer, elementData.id);
804
+ // projectActions.setMode(constants.MODE_DRAGGING_ITEM);
805
+ itemsActions.beginDraggingItem(elementData.layer, elementData.id, x, y);
806
+ replaceCabinet(false);
807
+ }
808
+ break;
809
+ case 'holes':
810
+ if (elementData.selected) holesActions.beginDraggingHole(elementData.layer, elementData.id, x, y);
811
+ break;
812
+ default:
813
+ break;
814
+ }
815
+ var currentObject = state.getIn(['scene', 'layers', layerID, elementData.prototype, elementData.id]);
816
+ onInternalEvent === null || onInternalEvent === void 0 || onInternalEvent({
817
+ type: INTERNAL_EVENT_SELECT_ELEMENT,
818
+ value: currentObject.toJS()
819
+ });
812
820
  } else {
813
821
  sPoint.x = x;
814
822
  sPoint.y = y;
@@ -844,10 +852,47 @@ export default function Viewer2D(_ref, _ref2) {
844
852
  y = _mapCursorPosition3.y;
845
853
  var vertices = state.getIn(['scene', 'layers', layerID, 'vertices']).toJS();
846
854
  var lines = state.getIn(['scene', 'layers', layerID, 'lines']).toJS();
855
+ var elementData = extractElementData(event.target);
856
+ var selectedLayer = scene.getIn(['layers', layerID]);
857
+ var elementPrototype = null;
858
+ var elementID = null;
859
+ var internalType = '';
860
+ switch (mode) {
861
+ case constants.MODE_DRAWING_LINE:
862
+ elementPrototype = 'lines';
863
+ internalType = INTERNAL_EVENT_DRAW_ELEMENT;
864
+ break;
865
+ case constants.MODE_DRAWING_HOLE:
866
+ elementPrototype = 'holes';
867
+ internalType = INTERNAL_EVENT_DRAW_ELEMENT;
868
+ break;
869
+ case constants.MODE_DRAWING_ITEM:
870
+ elementPrototype = 'items';
871
+ internalType = INTERNAL_EVENT_DRAW_ELEMENT;
872
+ break;
873
+ case constants.MODE_DRAGGING_LINE:
874
+ elementPrototype = 'lines';
875
+ internalType = INTERNAL_EVENT_DRAG_ELEMENT;
876
+ break;
877
+ case constants.MODE_DRAGGING_HOLE:
878
+ elementPrototype = 'holes';
879
+ internalType = INTERNAL_EVENT_DRAG_ELEMENT;
880
+ break;
881
+ case constants.MODE_DRAGGING_ITEM:
882
+ elementPrototype = 'items';
883
+ internalType = INTERNAL_EVENT_DRAG_ELEMENT;
884
+ break;
885
+ case constants.MODE_DRAGGING_VERTEX:
886
+ elementPrototype = 'lines';
887
+ internalType = INTERNAL_EVENT_DRAG_ELEMENT;
888
+ break;
889
+ case constants.MODE_ROTATING_ITEM:
890
+ elementPrototype = 'items';
891
+ internalType = INTERNAL_EVENT_ROTATE_ELEMENT;
892
+ break;
893
+ }
847
894
  switch (mode) {
848
895
  case constants.MODE_IDLE:
849
- var elementData = extractElementData(event.target);
850
- var selectedLayer = scene.getIn(['layers', layerID]);
851
896
  switch (elementData ? elementData.prototype : 'none') {
852
897
  case 'areas':
853
898
  if (document.getElementById('setting_dialog')) {
@@ -1187,6 +1232,14 @@ export default function Viewer2D(_ref, _ref2) {
1187
1232
  itemsActions.endRotatingItem(x, y);
1188
1233
  break;
1189
1234
  }
1235
+ if (elementPrototype) {
1236
+ elementID = state.getIn(['scene', 'layers', layerID, 'selected', elementPrototype]).first();
1237
+ var _currentObject = state.getIn(['scene', 'layers', layerID, elementPrototype, elementID]);
1238
+ onInternalEvent === null || onInternalEvent === void 0 || onInternalEvent({
1239
+ type: internalType,
1240
+ value: _currentObject.toJS()
1241
+ });
1242
+ }
1190
1243
  event.stopPropagation();
1191
1244
  };
1192
1245
  var onChangeValue = function onChangeValue(value) {
@@ -19,7 +19,7 @@ import { checkCabinetOverlap, createBacksplash, deleteSpecifiedMeshObjects, fVLi
19
19
  import { disposeObject, disposeScene } from "./three-memory-cleaner";
20
20
  import diff from 'immutablediff';
21
21
  import * as SharedStyle from "../../shared-style";
22
- import { BASE_CABINET_LAYOUTPOS, MODE_3D_VIEW, MODE_DRAGGING_ITEM_3D, MODE_DRAWING_HOLE_3D, MODE_DRAWING_ITEM_3D, MODE_ELEVATION_VIEW, MODE_IDLE_3D, MODE_ROTATING_ITEM_3D, SECONDARY_PURPLE_COLOR, TALL_CABINET_LAYOUTPOS, UNIT_CENTIMETER, WALL_CABINET_LAYOUTPOS } from "../../constants";
22
+ import { BASE_CABINET_LAYOUTPOS, MODE_3D_VIEW, MODE_DRAGGING_ITEM_3D, MODE_DRAWING_HOLE_3D, MODE_DRAWING_ITEM_3D, MODE_ELEVATION_VIEW, MODE_IDLE_3D, MODE_ROTATING_ITEM_3D, SECONDARY_PURPLE_COLOR, TALL_CABINET_LAYOUTPOS, UNIT_CENTIMETER, WALL_CABINET_LAYOUTPOS, INTERNAL_EVENT_SELECT_ELEMENT, INTERNAL_EVENT_DRAG_ELEMENT, INTERNAL_EVENT_DRAW_ELEMENT, INTERNAL_EVENT_ROTATE_ELEMENT, MODE_ROTATING_ITEM, MODE_DRAGGING_HOLE_3D } from "../../constants";
23
23
  import { isUndefined } from 'util';
24
24
  import { verticesDistance } from "../../utils/geometry";
25
25
  import { convert } from "../../utils/convert-units-lite";
@@ -1274,7 +1274,18 @@ var Scene3DViewer = /*#__PURE__*/function (_React$Component) {
1274
1274
  }
1275
1275
  }
1276
1276
  if (selectedObject !== undefined) {
1277
- var selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1277
+ // get selected object from planData.sceneGraph
1278
+ var selectedItem = null;
1279
+ switch (true) {
1280
+ case 'itemID' in selectedObject:
1281
+ selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1282
+ break;
1283
+ case 'holeID' in selectedObject:
1284
+ selectedItem = planData.sceneGraph.layers[selectedObject.layerID].holes[selectedObject.holeID];
1285
+ break;
1286
+ default:
1287
+ break;
1288
+ }
1278
1289
  sPoint.set(Point.x, Point.y);
1279
1290
  if (transflag == 0) {
1280
1291
  scene3D.remove(toolObj);
@@ -1340,7 +1351,8 @@ var Scene3DViewer = /*#__PURE__*/function (_React$Component) {
1340
1351
  }
1341
1352
  };
1342
1353
  this.mouseUpEvent = function (event) {
1343
- var _selObj$object, _selObj$object2;
1354
+ var internalType = ''; // internalEvent type - select/drag/draw
1355
+ var selectedElement; // internalEvent data
1344
1356
  firstMove = 0;
1345
1357
  var altitude = 0;
1346
1358
  if (allItemRect && allItemRect.cur && allItemRect.cur.itemInfo !== undefined) {
@@ -1377,6 +1389,14 @@ var Scene3DViewer = /*#__PURE__*/function (_React$Component) {
1377
1389
  isInitialPhase = true;
1378
1390
  return;
1379
1391
  }
1392
+ switch (_this2.props.state.mode) {
1393
+ case MODE_DRAGGING_ITEM_3D:
1394
+ internalType = INTERNAL_EVENT_DRAG_ELEMENT;
1395
+ break;
1396
+ case MODE_ROTATING_ITEM_3D:
1397
+ internalType = INTERNAL_EVENT_ROTATE_ELEMENT;
1398
+ break;
1399
+ }
1380
1400
  if (_this2.props.state.mode == MODE_DRAGGING_ITEM_3D) {
1381
1401
  _this2.context.itemsActions.endDraggingItem3D();
1382
1402
  }
@@ -1458,56 +1478,62 @@ var Scene3DViewer = /*#__PURE__*/function (_React$Component) {
1458
1478
  currentObject = currentObject.parent;
1459
1479
  }
1460
1480
  isSelected = true;
1461
- setTimeout(function () {
1462
- getDistances(layer);
1463
- var selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1464
- if (isUndefined(selectedItem)) return;
1465
- var selItem = _this2.props.state.scene.layers.get(selectedObject.layerID).items.get(selectedObject.itemID);
1466
- var itemPos = selectedItem.position.clone();
1467
- if (intersects[_i10].object.parent && intersects[_i10].object.parent.parent.userData.itemId === selectedItem.userData.itemId) {
1468
- toolObj.position.set(intersects[_i10].point.x, intersects[_i10].point.y, intersects[_i10].point.z);
1469
- } else {
1470
- 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);
1471
- }
1472
- scene3D.add(toolObj);
1473
- _this2.setState({
1474
- toolObj: toolObj
1475
- });
1476
- // showItemButtons(layer.getIn(['items', selectedObject.itemID]), currentObject, event, camera, this.renderer);
1477
- var pointArray = [],
1478
- cnt = 0;
1479
- pointArray.push([fVLine[0].userData.distance, 90]);
1480
- pointArray.push([fVLine[1].userData.distance, -90]);
1481
- pointArray.push([fVLine[2].userData.distance, 180]);
1482
- pointArray.push([fVLine[3].userData.distance, 0]);
1483
- pointArray.forEach(function (pointElement, index) {
1484
- if (pointElement[0] == undefined) pointArray[index][0] = 0;
1485
- });
1486
- pointArray.forEach(function (pointElement) {
1487
- if (pointElement[0] == 0) cnt++;
1488
- });
1489
- if (cnt == 4 || cnt == 3) {
1490
- pointArray[0][0] = 100;
1491
- pointArray[1][0] = 100;
1492
- }
1493
- actions.itemsActions.storeDistArray(layer.id, selectedObject.itemID, pointArray);
1481
+ getDistances(layer);
1482
+ var selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1483
+ if (isUndefined(selectedItem)) return;
1484
+ selectedElement = _this2.props.state.scene.layers.get(selectedObject.layerID).items.get(selectedObject.itemID);
1485
+ var itemPos = selectedItem.position.clone();
1486
+ if (intersects[_i10].object.parent && intersects[_i10].object.parent.parent.userData.itemId === selectedItem.userData.itemId) {
1487
+ toolObj.position.set(intersects[_i10].point.x, intersects[_i10].point.y, intersects[_i10].point.z);
1488
+ } else {
1489
+ 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);
1490
+ }
1491
+ scene3D.add(toolObj);
1492
+ _this2.setState({
1493
+ toolObj: toolObj
1494
+ });
1495
+ // showItemButtons(layer.getIn(['items', selectedObject.itemID]), currentObject, event, camera, this.renderer);
1496
+ var pointArray = [],
1497
+ cnt = 0;
1498
+ pointArray.push([fVLine[0].userData.distance, 90]);
1499
+ pointArray.push([fVLine[1].userData.distance, -90]);
1500
+ pointArray.push([fVLine[2].userData.distance, 180]);
1501
+ pointArray.push([fVLine[3].userData.distance, 0]);
1502
+ pointArray.forEach(function (pointElement, index) {
1503
+ if (pointElement[0] == undefined) pointArray[index][0] = 0;
1494
1504
  });
1505
+ pointArray.forEach(function (pointElement) {
1506
+ if (pointElement[0] == 0) cnt++;
1507
+ });
1508
+ if (cnt == 4 || cnt == 3) {
1509
+ pointArray[0][0] = 100;
1510
+ pointArray[1][0] = 100;
1511
+ }
1512
+ actions.itemsActions.storeDistArray(layer.id, selectedObject.itemID, pointArray);
1513
+ internalType = internalType ? internalType : INTERNAL_EVENT_SELECT_ELEMENT;
1495
1514
  } else {
1496
1515
  if (selectedObject) {
1516
+ var elementID = null;
1517
+ var elementPrototype = null;
1497
1518
  switch (true) {
1498
1519
  case 'holeID' in selectedObject:
1499
- if (selObj !== null && selObj !== void 0 && (_selObj$object = selObj.object) !== null && _selObj$object !== void 0 && _selObj$object.name.includes('transHole')) {
1500
- actions.holesActions.endDraggingHole3D(sPoint.x, sPoint.y);
1501
- }
1502
- break;
1503
1520
  case 'lineID' in selectedObject:
1504
- if (selObj !== null && selObj !== void 0 && (_selObj$object2 = selObj.object) !== null && _selObj$object2 !== void 0 && _selObj$object2.name.includes('transHole')) {
1521
+ if (_this2.props.state.mode === MODE_DRAGGING_HOLE_3D) {
1505
1522
  actions.holesActions.endDraggingHole3D(sPoint.x, sPoint.y);
1523
+ internalType = INTERNAL_EVENT_SELECT_ELEMENT;
1524
+ elementID = selectedObject.holeID;
1525
+ elementPrototype = 'holeID';
1506
1526
  }
1507
1527
  break;
1528
+ case 'areaID' in selectedObject:
1529
+ internalType = INTERNAL_EVENT_SELECT_ELEMENT;
1530
+ elementID = selectedObject.areaID;
1531
+ elementPrototype = 'areas';
1532
+ break;
1508
1533
  default:
1509
1534
  break;
1510
1535
  }
1536
+ selectedElement = _this2.props.state.scene.layers.get(selectedObject.layerID).getIn([elementPrototype, elementID]);
1511
1537
  }
1512
1538
  isSelected = false;
1513
1539
  }
@@ -1542,14 +1568,14 @@ var Scene3DViewer = /*#__PURE__*/function (_React$Component) {
1542
1568
  getPoint(event, alti);
1543
1569
  if (bRotate) {
1544
1570
  var _intersects$_i;
1545
- var selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1546
- if (isUndefined(selectedItem)) return;
1547
- var selItem = _this2.props.state.scene.layers.get(selectedObject.layerID).items.get(selectedObject.itemID);
1548
- var itemPos = selectedItem.position.clone();
1549
- 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) {
1571
+ var _selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1572
+ if (isUndefined(_selectedItem)) return;
1573
+ selectedElement = _this2.props.state.scene.layers.get(selectedObject.layerID).items.get(selectedObject.itemID);
1574
+ var _itemPos = _selectedItem.position.clone();
1575
+ 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) {
1550
1576
  toolObj.position.set(intersects[_i10].point.x, intersects[_i10].point.y, intersects[_i10].point.z);
1551
1577
  } else {
1552
- 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
+ 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);
1553
1579
  }
1554
1580
  scene3D.add(toolObj);
1555
1581
  _this2.setState({
@@ -1560,14 +1586,14 @@ var Scene3DViewer = /*#__PURE__*/function (_React$Component) {
1560
1586
  }
1561
1587
  if (bMove) {
1562
1588
  bMove = false;
1563
- var _selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1564
- if (isUndefined(_selectedItem)) return;
1565
- var _selItem = _this2.props.state.scene.layers.get(selectedObject.layerID).items.get(selectedObject.itemID);
1566
- var _itemPos = _selectedItem.position.clone();
1567
- if (intersects[_i10].object.parent.parent.userData.itemId === _selectedItem.userData.itemId) {
1589
+ var _selectedItem2 = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1590
+ if (isUndefined(_selectedItem2)) return;
1591
+ selectedElement = _this2.props.state.scene.layers.get(selectedObject.layerID).items.get(selectedObject.itemID);
1592
+ var _itemPos2 = _selectedItem2.position.clone();
1593
+ if (intersects[_i10].object.parent.parent.userData.itemId === _selectedItem2.userData.itemId) {
1568
1594
  toolObj.position.set(intersects[_i10].point.x, intersects[_i10].point.y, intersects[_i10].point.z);
1569
1595
  } else {
1570
- 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);
1596
+ toolObj.position.set(planData.plan.position.x + _itemPos2.x, selectedElement.category === 'lighting' ? -planData.plan.position.y - selectedElement.properties.get('height').get('length') : planData.plan.position.y + _selectedItem2.children[0].position.y, planData.plan.position.z + _itemPos2.z);
1571
1597
  }
1572
1598
  scene3D.add(toolObj);
1573
1599
  _this2.setState({
@@ -1601,6 +1627,13 @@ var Scene3DViewer = /*#__PURE__*/function (_React$Component) {
1601
1627
  selectedObj = allItemRect.cur;
1602
1628
  }
1603
1629
  }
1630
+ if (!isEmpty(internalType)) {
1631
+ var _this2$props$onIntern, _this2$props;
1632
+ (_this2$props$onIntern = (_this2$props = _this2.props).onInternalEvent) === null || _this2$props$onIntern === void 0 || _this2$props$onIntern.call(_this2$props, {
1633
+ type: internalType,
1634
+ value: selectedElement.toJS()
1635
+ });
1636
+ }
1604
1637
  };
1605
1638
  this.mouseEnterEvent = function (event) {
1606
1639
  if (_this2.props.state.mode !== MODE_DRAWING_ITEM_3D) return;
package/es/constants.js CHANGED
@@ -667,4 +667,10 @@ export var EXTERNAL_EVENT_ZOOM_OUT = 'EXTERNAL_EVENT_ZOOM_OUT';
667
667
  export var EXTERNAL_EVENT_UNDO = 'EXTERNAL_EVENT_UNDO';
668
668
  export var EXTERNAL_EVENT_REDO = 'EXTERNAL_EVENT_REDO';
669
669
  export var EXTERNAL_EVENT_SET_MOLDING = 'EXTERNAL_EVENT_SET_MOLDING';
670
- export var EXTERNAL_EVENT_PROJECT_SETTING = 'EXTERNAL_EVENT_PROJECT_SETTING';
670
+ export var EXTERNAL_EVENT_PROJECT_SETTING = 'EXTERNAL_EVENT_PROJECT_SETTING';
671
+
672
+ // internal event type
673
+ export var INTERNAL_EVENT_SELECT_ELEMENT = 'INTERNAL_EVENT_SELECT_ELEMENT';
674
+ export var INTERNAL_EVENT_DRAG_ELEMENT = 'INTERNAL_EVENT_DRAG_ELEMENT';
675
+ export var INTERNAL_EVENT_DRAW_ELEMENT = 'INTERNAL_EVENT_DRAW_ELEMENT';
676
+ export var INTERNAL_EVENT_ROTATE_ELEMENT = 'INTERNAL_EVENT_ROTATE_ELEMENT';
@@ -1,7 +1,7 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
2
  import React, { useState, useEffect } from 'react';
3
3
  import ContainerDimensions from 'react-container-dimensions';
4
- import mockProps from "./mocks/mockProps.json";
4
+ import mockProps from "./mocks/mockProps2.json";
5
5
  import mockDataBundle from "./mocks/dataBundle2.json";
6
6
  import cabinetPaylod from "./mocks/cabinetPayload2.json";
7
7
  import doorStylePaylod from "./mocks/doorStylePayload.json";
@@ -19,6 +19,9 @@ var options = {
19
19
  unit: 'in',
20
20
  enable3D: true
21
21
  };
22
+ var onInternalEvent = function onInternalEvent(evt) {
23
+ console.log('EVENT:', evt.type, evt.value);
24
+ };
22
25
  document.getElementById('app').style.display = 'block';
23
26
  function WorkSpace(props) {
24
27
  var _useState = useState(null),
@@ -270,6 +273,7 @@ function WorkSpace(props) {
270
273
  companyUrl: "https://example.com",
271
274
  toolbarButtons: [],
272
275
  externalEvent: externalEvent,
276
+ onInternalEvent: onInternalEvent,
273
277
  onError: function onError(payload) {
274
278
  // payload = {
275
279
  // type: 'render-error' | 'runtime-error' | 'unhandled-rejection',
@@ -873,18 +873,18 @@ export function getAllItemSnap(allItemRects) {
873
873
  var snap4 = itemrectInfo(rect.rect[3].x + ox0, rect.rect[3].y + oy0, nrot, cur && cur.size, rect.layoutpos, rect.is_corner);
874
874
  var sizeinfo = otherItems[index].cat && otherItems[index].cat.info.sizeinfo;
875
875
  if (sizeinfo) {
876
- var left_blind_length = sizeinfo.left_blind_length,
877
- right_blind_length = sizeinfo.right_blind_length;
878
- if (left_blind_length > 0) {
879
- var vx = left_blind_length - ch;
876
+ var leftBlindLength = sizeinfo.leftBlindLength,
877
+ rightBlindLength = sizeinfo.rightBlindLength;
878
+ if (leftBlindLength > 0) {
879
+ var vx = leftBlindLength - ch;
880
880
  var vy = cw;
881
881
  var dx = vx * cos + vy * sin;
882
882
  var dy = vx * sin - vy * cos;
883
883
  var snap6 = itemrectInfo(rect.rect[0].x + dx, rect.rect[0].y + dy, rect.rotRad + Math.PI / 2, cur && cur.size, rect.layoutpos, rect.is_corner);
884
884
  allItemSnap.push(snap6);
885
885
  }
886
- if (right_blind_length > 0) {
887
- var _vx = ch - right_blind_length;
886
+ if (rightBlindLength > 0) {
887
+ var _vx = ch - rightBlindLength;
888
888
  var _vy = cw;
889
889
  var _dx = _vx * cos + _vy * sin;
890
890
  var _dy = _vx * sin - _vy * cos;
@@ -476,6 +476,7 @@ function _handleExternalEvent() {
476
476
  return _regeneratorRuntime.wrap(function (_context5) {
477
477
  while (1) switch (_context5.prev = _context5.next) {
478
478
  case 0:
479
+ console.log('***external event****', props.externalEvent);
479
480
  evt = props.externalEvent;
480
481
  state = props.state.get('KitchenConfigurator');
481
482
  _t5 = evt === null || evt === void 0 ? void 0 : evt.type;
@@ -506,6 +507,7 @@ function _handleExternalEvent() {
506
507
  catalog = state.getIn(['catalog']).toJS(); // add item to catalog of state
507
508
  _element = _objectSpread(_objectSpread({}, _element), {}, {
508
509
  cds: {
510
+ data: [_objectSpread({}, _element.customer_property)],
509
511
  itemID: _element.itemID
510
512
  }
511
513
  });
@@ -93,8 +93,7 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
93
93
  redirectURL: '',
94
94
  snackBarMessage: '',
95
95
  isSaved: false,
96
- isLeaving: false,
97
- stateCatalog: _this.props.catalog
96
+ isLeaving: false
98
97
  };
99
98
 
100
99
  // For UTM tracking
@@ -348,7 +347,6 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
348
347
  }, {
349
348
  key: "componentWillReceiveProps",
350
349
  value: function componentWillReceiveProps(nextProps) {
351
- var _oldState$catalog, _plannerState$catalog;
352
350
  var stateExtractor = nextProps.stateExtractor,
353
351
  state = nextProps.state,
354
352
  projectActions = nextProps.projectActions,
@@ -360,15 +358,6 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
360
358
  (0, _isolateEventHandler.handleExternalEvent)(nextProps);
361
359
  }
362
360
  var plannerState = stateExtractor(state);
363
- var oldState = stateExtractor(this.props.state);
364
- if ((oldState === null || oldState === void 0 || (_oldState$catalog = oldState.catalog) === null || _oldState$catalog === void 0 ? void 0 : _oldState$catalog.elements) !== (plannerState === null || plannerState === void 0 || (_plannerState$catalog = plannerState.catalog) === null || _plannerState$catalog === void 0 ? void 0 : _plannerState$catalog.elements)) {
365
- // copy state.catalog to the props.catalog
366
- // let catalog = this.state.stateCatalog;
367
- // console.log('111111', plannerState?.catalog?.elements.toJS());
368
- // catalog.elements = plannerState?.catalog?.elements.toJS();
369
- // console.log('222222', catalog);
370
- // this.setState({ stateCatalog: catalog });
371
- }
372
361
  var catalogReady = plannerState.getIn(['catalog', 'ready']);
373
362
  if (!catalogReady) {
374
363
  projectActions.initCatalog(catalog);
@@ -441,7 +430,7 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
441
430
  }, /*#__PURE__*/_react["default"].createElement(_export2.Content, (0, _extends2["default"])({
442
431
  width: contentW,
443
432
  height: contentH,
444
- catalog: this.state.stateCatalog,
433
+ catalog: this.props.catalog,
445
434
  state: extractedState,
446
435
  toolBar: this.state.toolbar,
447
436
  setToolbar: this.setToolbar,
@@ -450,7 +439,8 @@ var LiteKitchenConfigurator = /*#__PURE__*/function (_Component) {
450
439
  }, props, {
451
440
  onWheel: function onWheel(event) {
452
441
  return event.preventDefault();
453
- }
442
+ },
443
+ onInternalEvent: this.props.onInternalEvent
454
444
  }))));
455
445
  }
456
446
  }]);
@@ -469,7 +459,8 @@ LiteKitchenConfigurator.propTypes = {
469
459
  footerbarComponents: _propTypes["default"].array,
470
460
  customContents: _propTypes["default"].object,
471
461
  softwareSignature: _propTypes["default"].string,
472
- configData: _propTypes["default"].object
462
+ configData: _propTypes["default"].object,
463
+ onInternalEvent: _propTypes["default"].func
473
464
  };
474
465
  LiteKitchenConfigurator.contextTypes = {
475
466
  store: _propTypes["default"].object.isRequired
@@ -39,7 +39,7 @@ var Sentry = _interopRequireWildcard(require("@sentry/react"));
39
39
  var _exporter = _interopRequireDefault(require("./catalog/utils/exporter"));
40
40
  var THREE = _interopRequireWildcard(require("three"));
41
41
  var _LiteKitchenConfigurator = _interopRequireDefault(require("./LiteKitchenConfigurator"));
42
- var _excluded = ["width", "height", "projectElement", "dataBundle", "configData", "options", "user", "auth", "featureFlags", "sentry", "analytics", "externalEvent", "onError"];
42
+ var _excluded = ["width", "height", "projectElement", "dataBundle", "configData", "options", "user", "auth", "featureFlags", "sentry", "analytics", "externalEvent", "onInternalEvent", "onError"];
43
43
  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 _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); }
44
44
  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; }
45
45
  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; }
@@ -162,6 +162,7 @@ function LiteRenderer(props) {
162
162
  sentry = props.sentry,
163
163
  analytics = props.analytics,
164
164
  externalEvent = props.externalEvent,
165
+ onInternalEvent = props.onInternalEvent,
165
166
  onError = props.onError,
166
167
  passThrough = (0, _objectWithoutProperties2["default"])(props, _excluded);
167
168
 
@@ -480,7 +481,8 @@ function LiteRenderer(props) {
480
481
  },
481
482
  data: data,
482
483
  configData: configData,
483
- externalEvent: externalEvent
484
+ externalEvent: externalEvent,
485
+ onInternalEvent: onInternalEvent
484
486
  }, passThrough)))));
485
487
  }
486
488
 
@@ -504,6 +506,7 @@ LiteRenderer.propTypes = {
504
506
  environment: _propTypes["default"].string
505
507
  }),
506
508
  externalEvent: _propTypes["default"].object,
509
+ onInternalEvent: _propTypes["default"].func,
507
510
  onError: _propTypes["default"].func,
508
511
  store: _propTypes["default"].object
509
512
  };
@@ -26,7 +26,8 @@ function Content(_ref, _ref2) {
26
26
  setToolbar = _ref.setToolbar,
27
27
  replaceCabinet = _ref.replaceCabinet,
28
28
  keyDownEnable = _ref.keyDownEnable,
29
- catalog = _ref.catalog;
29
+ catalog = _ref.catalog,
30
+ onInternalEvent = _ref.onInternalEvent;
30
31
  var projectActions = _ref2.projectActions;
31
32
  var mode = state.get('mode');
32
33
  switch (mode) {
@@ -50,7 +51,8 @@ function Content(_ref, _ref2) {
50
51
  setToolbar: setToolbar,
51
52
  replaceCabinet: replaceCabinet,
52
53
  keyDownEnable: keyDownEnable,
53
- downloadFlag: false
54
+ downloadFlag: false,
55
+ onInternalEvent: onInternalEvent
54
56
  });
55
57
  case constants.MODE_3D_FIRST_PERSON:
56
58
  return /*#__PURE__*/_react["default"].createElement(_viewer3dFirstPerson["default"], {
@@ -88,7 +90,8 @@ function Content(_ref, _ref2) {
88
90
  width: width,
89
91
  height: height,
90
92
  setToolbar: setToolbar,
91
- replaceCabinet: replaceCabinet
93
+ replaceCabinet: replaceCabinet,
94
+ onInternalEvent: onInternalEvent
92
95
  });
93
96
  case constants.MODE_ROTATING_ITEM_3D:
94
97
  case constants.MODE_DRAGGING_ITEM_3D:
@@ -104,7 +107,8 @@ function Content(_ref, _ref2) {
104
107
  setToolbar: setToolbar,
105
108
  replaceCabinet: replaceCabinet,
106
109
  keyDownEnable: keyDownEnable,
107
- downloadFlag: false
110
+ downloadFlag: false,
111
+ onInternalEvent: onInternalEvent
108
112
  });
109
113
 
110
114
  // case constants.MODE_CONFIGURING_PROJECT:
@@ -129,7 +133,8 @@ Content.propTypes = {
129
133
  state: _propTypes["default"].object.isRequired,
130
134
  width: _propTypes["default"].number.isRequired,
131
135
  height: _propTypes["default"].number.isRequired,
132
- replaceCabinet: _propTypes["default"].func.isRequired
136
+ replaceCabinet: _propTypes["default"].func.isRequired,
137
+ onInternalEvent: _propTypes["default"].func.isRequired
133
138
  };
134
139
  Content.contextTypes = {
135
140
  projectActions: _propTypes["default"].object.isRequired
@@ -133,7 +133,8 @@ function Viewer2D(_ref, _ref2) {
133
133
  width = _ref.width,
134
134
  height = _ref.height,
135
135
  setToolbar = _ref.setToolbar,
136
- replaceCabinet = _ref.replaceCabinet;
136
+ replaceCabinet = _ref.replaceCabinet,
137
+ onInternalEvent = _ref.onInternalEvent;
137
138
  var viewer2DActions = _ref2.viewer2DActions,
138
139
  linesActions = _ref2.linesActions,
139
140
  holesActions = _ref2.holesActions,
@@ -790,35 +791,42 @@ function Viewer2D(_ref, _ref2) {
790
791
  if (mode === constants.MODE_IDLE) {
791
792
  var elementData = extractElementData(event.target);
792
793
  if (!elementData) return;
793
- if (sCount < 2) switch (elementData.prototype) {
794
- case 'lines':
795
- if (elementData.selected) {
796
- if (elementData.part === 'remove') break;else if (elementData.part === 'elevation') break;
797
- linesActions.beginDraggingLine(elementData.layer, elementData.id, x, y, state.snapMask);
798
- }
799
- break;
800
- case 'vertices':
801
- verticesActions.beginDraggingVertex(elementData.layer, elementData.id, x, y, state.snapMask);
802
- break;
803
- case 'items':
804
- setToolbar('');
805
- current_sel_obj_id = elementData.id;
806
- if (elementData.part === 'rotation-anchor') itemsActions.beginRotatingItem(elementData.layer, elementData.id, x, y);else if (elementData.part === 'remove') break;else if (elementData.part === 'duplicate') break;else if (elementData.part === 'warning_edit') break;else {
807
- // closes the setting dialog
808
- if (document.getElementById('setting_dialog')) {
809
- document.getElementById('setting_dialog').style.display = 'none';
794
+ if (sCount < 2) {
795
+ switch (elementData.prototype) {
796
+ case 'lines':
797
+ if (elementData.selected) {
798
+ if (elementData.part === 'remove') break;else if (elementData.part === 'elevation') break;
799
+ linesActions.beginDraggingLine(elementData.layer, elementData.id, x, y, state.snapMask);
810
800
  }
811
- itemsActions.selectItem(elementData.layer, elementData.id);
812
- // projectActions.setMode(constants.MODE_DRAGGING_ITEM);
813
- itemsActions.beginDraggingItem(elementData.layer, elementData.id, x, y);
814
- replaceCabinet(false);
815
- }
816
- break;
817
- case 'holes':
818
- if (elementData.selected) holesActions.beginDraggingHole(elementData.layer, elementData.id, x, y);
819
- break;
820
- default:
821
- break;
801
+ break;
802
+ case 'vertices':
803
+ verticesActions.beginDraggingVertex(elementData.layer, elementData.id, x, y, state.snapMask);
804
+ break;
805
+ case 'items':
806
+ setToolbar('');
807
+ current_sel_obj_id = elementData.id;
808
+ if (elementData.part === 'rotation-anchor') itemsActions.beginRotatingItem(elementData.layer, elementData.id, x, y);else if (elementData.part === 'remove') break;else if (elementData.part === 'duplicate') break;else if (elementData.part === 'warning_edit') break;else {
809
+ // closes the setting dialog
810
+ if (document.getElementById('setting_dialog')) {
811
+ document.getElementById('setting_dialog').style.display = 'none';
812
+ }
813
+ itemsActions.selectItem(elementData.layer, elementData.id);
814
+ // projectActions.setMode(constants.MODE_DRAGGING_ITEM);
815
+ itemsActions.beginDraggingItem(elementData.layer, elementData.id, x, y);
816
+ replaceCabinet(false);
817
+ }
818
+ break;
819
+ case 'holes':
820
+ if (elementData.selected) holesActions.beginDraggingHole(elementData.layer, elementData.id, x, y);
821
+ break;
822
+ default:
823
+ break;
824
+ }
825
+ var currentObject = state.getIn(['scene', 'layers', layerID, elementData.prototype, elementData.id]);
826
+ onInternalEvent === null || onInternalEvent === void 0 || onInternalEvent({
827
+ type: _constants.INTERNAL_EVENT_SELECT_ELEMENT,
828
+ value: currentObject.toJS()
829
+ });
822
830
  } else {
823
831
  sPoint.x = x;
824
832
  sPoint.y = y;
@@ -854,10 +862,47 @@ function Viewer2D(_ref, _ref2) {
854
862
  y = _mapCursorPosition3.y;
855
863
  var vertices = state.getIn(['scene', 'layers', layerID, 'vertices']).toJS();
856
864
  var lines = state.getIn(['scene', 'layers', layerID, 'lines']).toJS();
865
+ var elementData = extractElementData(event.target);
866
+ var selectedLayer = scene.getIn(['layers', layerID]);
867
+ var elementPrototype = null;
868
+ var elementID = null;
869
+ var internalType = '';
870
+ switch (mode) {
871
+ case constants.MODE_DRAWING_LINE:
872
+ elementPrototype = 'lines';
873
+ internalType = _constants.INTERNAL_EVENT_DRAW_ELEMENT;
874
+ break;
875
+ case constants.MODE_DRAWING_HOLE:
876
+ elementPrototype = 'holes';
877
+ internalType = _constants.INTERNAL_EVENT_DRAW_ELEMENT;
878
+ break;
879
+ case constants.MODE_DRAWING_ITEM:
880
+ elementPrototype = 'items';
881
+ internalType = _constants.INTERNAL_EVENT_DRAW_ELEMENT;
882
+ break;
883
+ case constants.MODE_DRAGGING_LINE:
884
+ elementPrototype = 'lines';
885
+ internalType = _constants.INTERNAL_EVENT_DRAG_ELEMENT;
886
+ break;
887
+ case constants.MODE_DRAGGING_HOLE:
888
+ elementPrototype = 'holes';
889
+ internalType = _constants.INTERNAL_EVENT_DRAG_ELEMENT;
890
+ break;
891
+ case constants.MODE_DRAGGING_ITEM:
892
+ elementPrototype = 'items';
893
+ internalType = _constants.INTERNAL_EVENT_DRAG_ELEMENT;
894
+ break;
895
+ case constants.MODE_DRAGGING_VERTEX:
896
+ elementPrototype = 'lines';
897
+ internalType = _constants.INTERNAL_EVENT_DRAG_ELEMENT;
898
+ break;
899
+ case constants.MODE_ROTATING_ITEM:
900
+ elementPrototype = 'items';
901
+ internalType = _constants.INTERNAL_EVENT_ROTATE_ELEMENT;
902
+ break;
903
+ }
857
904
  switch (mode) {
858
905
  case constants.MODE_IDLE:
859
- var elementData = extractElementData(event.target);
860
- var selectedLayer = scene.getIn(['layers', layerID]);
861
906
  switch (elementData ? elementData.prototype : 'none') {
862
907
  case 'areas':
863
908
  if (document.getElementById('setting_dialog')) {
@@ -1197,6 +1242,14 @@ function Viewer2D(_ref, _ref2) {
1197
1242
  itemsActions.endRotatingItem(x, y);
1198
1243
  break;
1199
1244
  }
1245
+ if (elementPrototype) {
1246
+ elementID = state.getIn(['scene', 'layers', layerID, 'selected', elementPrototype]).first();
1247
+ var _currentObject = state.getIn(['scene', 'layers', layerID, elementPrototype, elementID]);
1248
+ onInternalEvent === null || onInternalEvent === void 0 || onInternalEvent({
1249
+ type: internalType,
1250
+ value: _currentObject.toJS()
1251
+ });
1252
+ }
1200
1253
  event.stopPropagation();
1201
1254
  };
1202
1255
  var onChangeValue = function onChangeValue(value) {
@@ -1281,7 +1281,18 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1281
1281
  }
1282
1282
  }
1283
1283
  if (selectedObject !== undefined) {
1284
- var selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1284
+ // get selected object from planData.sceneGraph
1285
+ var selectedItem = null;
1286
+ switch (true) {
1287
+ case 'itemID' in selectedObject:
1288
+ selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1289
+ break;
1290
+ case 'holeID' in selectedObject:
1291
+ selectedItem = planData.sceneGraph.layers[selectedObject.layerID].holes[selectedObject.holeID];
1292
+ break;
1293
+ default:
1294
+ break;
1295
+ }
1285
1296
  sPoint.set(Point.x, Point.y);
1286
1297
  if (transflag == 0) {
1287
1298
  scene3D.remove(toolObj);
@@ -1347,7 +1358,8 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1347
1358
  }
1348
1359
  };
1349
1360
  this.mouseUpEvent = function (event) {
1350
- var _selObj$object, _selObj$object2;
1361
+ var internalType = ''; // internalEvent type - select/drag/draw
1362
+ var selectedElement; // internalEvent data
1351
1363
  firstMove = 0;
1352
1364
  var altitude = 0;
1353
1365
  if (allItemRect && allItemRect.cur && allItemRect.cur.itemInfo !== undefined) {
@@ -1384,6 +1396,14 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1384
1396
  isInitialPhase = true;
1385
1397
  return;
1386
1398
  }
1399
+ switch (_this2.props.state.mode) {
1400
+ case _constants.MODE_DRAGGING_ITEM_3D:
1401
+ internalType = _constants.INTERNAL_EVENT_DRAG_ELEMENT;
1402
+ break;
1403
+ case _constants.MODE_ROTATING_ITEM_3D:
1404
+ internalType = _constants.INTERNAL_EVENT_ROTATE_ELEMENT;
1405
+ break;
1406
+ }
1387
1407
  if (_this2.props.state.mode == _constants.MODE_DRAGGING_ITEM_3D) {
1388
1408
  _this2.context.itemsActions.endDraggingItem3D();
1389
1409
  }
@@ -1465,56 +1485,62 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1465
1485
  currentObject = currentObject.parent;
1466
1486
  }
1467
1487
  isSelected = true;
1468
- setTimeout(function () {
1469
- (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);
1480
- _this2.setState({
1481
- toolObj: toolObj
1482
- });
1483
- // 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
- }
1500
- actions.itemsActions.storeDistArray(layer.id, selectedObject.itemID, pointArray);
1488
+ (0, _sceneCreator.getDistances)(layer);
1489
+ var selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1490
+ if ((0, _util.isUndefined)(selectedItem)) return;
1491
+ selectedElement = _this2.props.state.scene.layers.get(selectedObject.layerID).items.get(selectedObject.itemID);
1492
+ var itemPos = selectedItem.position.clone();
1493
+ if (intersects[_i10].object.parent && intersects[_i10].object.parent.parent.userData.itemId === selectedItem.userData.itemId) {
1494
+ toolObj.position.set(intersects[_i10].point.x, intersects[_i10].point.y, intersects[_i10].point.z);
1495
+ } else {
1496
+ 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);
1497
+ }
1498
+ scene3D.add(toolObj);
1499
+ _this2.setState({
1500
+ toolObj: toolObj
1501
+ });
1502
+ // showItemButtons(layer.getIn(['items', selectedObject.itemID]), currentObject, event, camera, this.renderer);
1503
+ var pointArray = [],
1504
+ cnt = 0;
1505
+ pointArray.push([_sceneCreator.fVLine[0].userData.distance, 90]);
1506
+ pointArray.push([_sceneCreator.fVLine[1].userData.distance, -90]);
1507
+ pointArray.push([_sceneCreator.fVLine[2].userData.distance, 180]);
1508
+ pointArray.push([_sceneCreator.fVLine[3].userData.distance, 0]);
1509
+ pointArray.forEach(function (pointElement, index) {
1510
+ if (pointElement[0] == undefined) pointArray[index][0] = 0;
1501
1511
  });
1512
+ pointArray.forEach(function (pointElement) {
1513
+ if (pointElement[0] == 0) cnt++;
1514
+ });
1515
+ if (cnt == 4 || cnt == 3) {
1516
+ pointArray[0][0] = 100;
1517
+ pointArray[1][0] = 100;
1518
+ }
1519
+ actions.itemsActions.storeDistArray(layer.id, selectedObject.itemID, pointArray);
1520
+ internalType = internalType ? internalType : _constants.INTERNAL_EVENT_SELECT_ELEMENT;
1502
1521
  } else {
1503
1522
  if (selectedObject) {
1523
+ var elementID = null;
1524
+ var elementPrototype = null;
1504
1525
  switch (true) {
1505
1526
  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')) {
1507
- actions.holesActions.endDraggingHole3D(sPoint.x, sPoint.y);
1508
- }
1509
- break;
1510
1527
  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')) {
1528
+ if (_this2.props.state.mode === _constants.MODE_DRAGGING_HOLE_3D) {
1512
1529
  actions.holesActions.endDraggingHole3D(sPoint.x, sPoint.y);
1530
+ internalType = _constants.INTERNAL_EVENT_SELECT_ELEMENT;
1531
+ elementID = selectedObject.holeID;
1532
+ elementPrototype = 'holeID';
1513
1533
  }
1514
1534
  break;
1535
+ case 'areaID' in selectedObject:
1536
+ internalType = _constants.INTERNAL_EVENT_SELECT_ELEMENT;
1537
+ elementID = selectedObject.areaID;
1538
+ elementPrototype = 'areas';
1539
+ break;
1515
1540
  default:
1516
1541
  break;
1517
1542
  }
1543
+ selectedElement = _this2.props.state.scene.layers.get(selectedObject.layerID).getIn([elementPrototype, elementID]);
1518
1544
  }
1519
1545
  isSelected = false;
1520
1546
  }
@@ -1549,14 +1575,14 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1549
1575
  getPoint(event, alti);
1550
1576
  if (bRotate) {
1551
1577
  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) {
1578
+ var _selectedItem = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1579
+ if ((0, _util.isUndefined)(_selectedItem)) return;
1580
+ selectedElement = _this2.props.state.scene.layers.get(selectedObject.layerID).items.get(selectedObject.itemID);
1581
+ var _itemPos = _selectedItem.position.clone();
1582
+ 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
1583
  toolObj.position.set(intersects[_i10].point.x, intersects[_i10].point.y, intersects[_i10].point.z);
1558
1584
  } 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);
1585
+ 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);
1560
1586
  }
1561
1587
  scene3D.add(toolObj);
1562
1588
  _this2.setState({
@@ -1567,14 +1593,14 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1567
1593
  }
1568
1594
  if (bMove) {
1569
1595
  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) {
1596
+ var _selectedItem2 = planData.sceneGraph.layers[selectedObject.layerID].items[selectedObject.itemID];
1597
+ if ((0, _util.isUndefined)(_selectedItem2)) return;
1598
+ selectedElement = _this2.props.state.scene.layers.get(selectedObject.layerID).items.get(selectedObject.itemID);
1599
+ var _itemPos2 = _selectedItem2.position.clone();
1600
+ if (intersects[_i10].object.parent.parent.userData.itemId === _selectedItem2.userData.itemId) {
1575
1601
  toolObj.position.set(intersects[_i10].point.x, intersects[_i10].point.y, intersects[_i10].point.z);
1576
1602
  } 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);
1603
+ toolObj.position.set(planData.plan.position.x + _itemPos2.x, selectedElement.category === 'lighting' ? -planData.plan.position.y - selectedElement.properties.get('height').get('length') : planData.plan.position.y + _selectedItem2.children[0].position.y, planData.plan.position.z + _itemPos2.z);
1578
1604
  }
1579
1605
  scene3D.add(toolObj);
1580
1606
  _this2.setState({
@@ -1608,6 +1634,13 @@ var Scene3DViewer = exports["default"] = /*#__PURE__*/function (_React$Component
1608
1634
  selectedObj = allItemRect.cur;
1609
1635
  }
1610
1636
  }
1637
+ if (!(0, _helper.isEmpty)(internalType)) {
1638
+ var _this2$props$onIntern, _this2$props;
1639
+ (_this2$props$onIntern = (_this2$props = _this2.props).onInternalEvent) === null || _this2$props$onIntern === void 0 || _this2$props$onIntern.call(_this2$props, {
1640
+ type: internalType,
1641
+ value: selectedElement.toJS()
1642
+ });
1643
+ }
1611
1644
  };
1612
1645
  this.mouseEnterEvent = function (event) {
1613
1646
  if (_this2.props.state.mode !== _constants.MODE_DRAWING_ITEM_3D) return;
package/lib/constants.js CHANGED
@@ -4,9 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  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_SET_MOLDING = exports.EXTERNAL_EVENT_SET_INITIAL_DATA = exports.EXTERNAL_EVENT_REDO = exports.EXTERNAL_EVENT_PROJECT_SETTING = 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_CIRCULAR_GUIDE = exports.REMOVE = exports.REDO = exports.RECREATE = exports.PUSH_LAST_SELECTED_CATALOG_ELEMENT_TO_HISTORY = 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 = 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 = exports.GO_BACK_TO_CATALOG_PAGE = exports.FINISHING_TOUCH = exports.EXTERNAL_EVENT_ZOOM_OUT = exports.EXTERNAL_EVENT_ZOOM_IN = void 0;
8
- 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 = exports.REMOVE_HORIZONTAL_GUIDE = exports.REMOVE_GROUP_AND_DELETE_ELEMENTS = exports.REMOVE_GROUP = exports.REMOVE_FROM_GROUP = exports.REMOVE_DRAWING_SUPPORT = 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 = exports.TEXT_COLOR_NEUTRAL_0 = exports.TEXT_COLOR = exports.TECHNICAL_VIEW = exports.TALL_CABINET_LAYOUTPOS = exports.TAKE_PICTURE = void 0;
7
+ exports.PUSH_LAST_SELECTED_CATALOG_ELEMENT_TO_HISTORY = 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 = 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.INTERNAL_EVENT_SELECT_ELEMENT = exports.INTERNAL_EVENT_ROTATE_ELEMENT = 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_ACTIONS = exports.HDR_URLS = exports.HAS_LOADINGBAR = exports.GROUP_TRANSLATE = exports.GROUP_ROTATE = exports.GROUP_ACTIONS = exports.GO_BACK_TO_CATALOG_PAGE = exports.FINISHING_TOUCH = exports.EXTERNAL_EVENT_ZOOM_OUT = exports.EXTERNAL_EVENT_ZOOM_IN = void 0;
8
+ 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 = 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 = 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 = 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 = void 0;
10
10
  //API server
11
11
  // export const API_SERVER = 'http://localhost:3000/';
12
12
  // ACTIONS project
@@ -676,4 +676,10 @@ var EXTERNAL_EVENT_ZOOM_OUT = exports.EXTERNAL_EVENT_ZOOM_OUT = 'EXTERNAL_EVENT_
676
676
  var EXTERNAL_EVENT_UNDO = exports.EXTERNAL_EVENT_UNDO = 'EXTERNAL_EVENT_UNDO';
677
677
  var EXTERNAL_EVENT_REDO = exports.EXTERNAL_EVENT_REDO = 'EXTERNAL_EVENT_REDO';
678
678
  var EXTERNAL_EVENT_SET_MOLDING = exports.EXTERNAL_EVENT_SET_MOLDING = 'EXTERNAL_EVENT_SET_MOLDING';
679
- var EXTERNAL_EVENT_PROJECT_SETTING = exports.EXTERNAL_EVENT_PROJECT_SETTING = 'EXTERNAL_EVENT_PROJECT_SETTING';
679
+ var EXTERNAL_EVENT_PROJECT_SETTING = exports.EXTERNAL_EVENT_PROJECT_SETTING = 'EXTERNAL_EVENT_PROJECT_SETTING';
680
+
681
+ // internal event type
682
+ var INTERNAL_EVENT_SELECT_ELEMENT = exports.INTERNAL_EVENT_SELECT_ELEMENT = 'INTERNAL_EVENT_SELECT_ELEMENT';
683
+ var INTERNAL_EVENT_DRAG_ELEMENT = exports.INTERNAL_EVENT_DRAG_ELEMENT = 'INTERNAL_EVENT_DRAG_ELEMENT';
684
+ var INTERNAL_EVENT_DRAW_ELEMENT = exports.INTERNAL_EVENT_DRAW_ELEMENT = 'INTERNAL_EVENT_DRAW_ELEMENT';
685
+ var INTERNAL_EVENT_ROTATE_ELEMENT = exports.INTERNAL_EVENT_ROTATE_ELEMENT = 'INTERNAL_EVENT_ROTATE_ELEMENT';
@@ -5,7 +5,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
5
5
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
6
6
  var _react = _interopRequireWildcard(require("react"));
7
7
  var _reactContainerDimensions = _interopRequireDefault(require("react-container-dimensions"));
8
- var _mockProps = _interopRequireDefault(require("./mocks/mockProps.json"));
8
+ var _mockProps = _interopRequireDefault(require("./mocks/mockProps2.json"));
9
9
  var _dataBundle = _interopRequireDefault(require("./mocks/dataBundle2.json"));
10
10
  var _cabinetPayload = _interopRequireDefault(require("./mocks/cabinetPayload2.json"));
11
11
  var _doorStylePayload = _interopRequireDefault(require("./mocks/doorStylePayload.json"));
@@ -23,6 +23,9 @@ var options = {
23
23
  unit: 'in',
24
24
  enable3D: true
25
25
  };
26
+ var onInternalEvent = function onInternalEvent(evt) {
27
+ console.log('EVENT:', evt.type, evt.value);
28
+ };
26
29
  document.getElementById('app').style.display = 'block';
27
30
  function WorkSpace(props) {
28
31
  var _useState = (0, _react.useState)(null),
@@ -274,6 +277,7 @@ function WorkSpace(props) {
274
277
  companyUrl: "https://example.com",
275
278
  toolbarButtons: [],
276
279
  externalEvent: externalEvent,
280
+ onInternalEvent: onInternalEvent,
277
281
  onError: function onError(payload) {
278
282
  // payload = {
279
283
  // type: 'render-error' | 'runtime-error' | 'unhandled-rejection',
@@ -972,18 +972,18 @@ function getAllItemSnap(allItemRects) {
972
972
  var snap4 = itemrectInfo(rect.rect[3].x + ox0, rect.rect[3].y + oy0, nrot, cur && cur.size, rect.layoutpos, rect.is_corner);
973
973
  var sizeinfo = otherItems[index].cat && otherItems[index].cat.info.sizeinfo;
974
974
  if (sizeinfo) {
975
- var left_blind_length = sizeinfo.left_blind_length,
976
- right_blind_length = sizeinfo.right_blind_length;
977
- if (left_blind_length > 0) {
978
- var vx = left_blind_length - ch;
975
+ var leftBlindLength = sizeinfo.leftBlindLength,
976
+ rightBlindLength = sizeinfo.rightBlindLength;
977
+ if (leftBlindLength > 0) {
978
+ var vx = leftBlindLength - ch;
979
979
  var vy = cw;
980
980
  var dx = vx * cos + vy * sin;
981
981
  var dy = vx * sin - vy * cos;
982
982
  var snap6 = itemrectInfo(rect.rect[0].x + dx, rect.rect[0].y + dy, rect.rotRad + Math.PI / 2, cur && cur.size, rect.layoutpos, rect.is_corner);
983
983
  allItemSnap.push(snap6);
984
984
  }
985
- if (right_blind_length > 0) {
986
- var _vx = ch - right_blind_length;
985
+ if (rightBlindLength > 0) {
986
+ var _vx = ch - rightBlindLength;
987
987
  var _vy = cw;
988
988
  var _dx = _vx * cos + _vy * sin;
989
989
  var _dy = _vx * sin - _vy * cos;
@@ -484,6 +484,7 @@ function _handleExternalEvent() {
484
484
  return _regenerator["default"].wrap(function (_context5) {
485
485
  while (1) switch (_context5.prev = _context5.next) {
486
486
  case 0:
487
+ console.log('***external event****', props.externalEvent);
487
488
  evt = props.externalEvent;
488
489
  state = props.state.get('KitchenConfigurator');
489
490
  _t5 = evt === null || evt === void 0 ? void 0 : evt.type;
@@ -514,6 +515,7 @@ function _handleExternalEvent() {
514
515
  catalog = state.getIn(['catalog']).toJS(); // add item to catalog of state
515
516
  _element = _objectSpread(_objectSpread({}, _element), {}, {
516
517
  cds: {
518
+ data: [_objectSpread({}, _element.customer_property)],
517
519
  itemID: _element.itemID
518
520
  }
519
521
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kitchen-simulator",
3
- "version": "1.0.0-clark.85",
3
+ "version": "1.0.0-clark.91",
4
4
  "description": "It is a kitchen simulator (self-contained micro-frontend).",
5
5
  "license": "MIT",
6
6
  "main": "lib/index.js",