kitchen-simulator 2.0.16 → 2.0.20

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.
@@ -5,7 +5,7 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
5
5
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
6
  import _regeneratorRuntime from "@babel/runtime/regenerator";
7
7
  import { Map } from 'immutable';
8
- import { EXTERNAL_EVENT_ADD_WALL, EXTERNAL_EVENT_TOGGLE_TO_3D, EXTERNAL_EVENT_TOGGLE_TO_2D, EXTERNAL_EVENT_TOGGLE_TO_ELEVATION, EXTERNAL_EVENT_MOVE_PAN, MODE_IDLE, MODE_2D_PAN, EXTERNAL_EVENT_ADD_ITEM, ARRAY_3D_MODES, MODE_IDLE_3D, MODE_ELEVATION_VIEW, MODE_DRAWING_LINE, TOP, BOTTOM, LEFT, RIGHT, EXTERNAL_EVENT_NEW_PROJECT, EXTERNAL_EVENT_CHANGE_DOORSTYLE, EXTERNAL_EVENT_SET_INITIAL_DATA, EXTERNAL_EVENT_ADD_ROOM_SHAPE, EXTERNAL_EVENT_ZOOM_IN, EXTERNAL_EVENT_ZOOM_OUT, ZOOM_VARIABLE, EXTERNAL_EVENT_UNDO, EXTERNAL_EVENT_REDO, EXTERNAL_EVENT_SET_MOLDING, EXTERNAL_EVENT_PROJECT_SETTING, PROJECT_SETTING_OPTION, EXTERNAL_EVENT_SYNC_SCENE, INTERNAL_EVENT_SYNC_SCENE, EXTERNAL_EVENT_UPDATE_ATTRIBUTE, ATT_ITEM_POS, ATT_LINE_LENGTH, ATT_VERTEXT_ONE, ATT_VERTEXT_TWO, ATT_HOLE_OFFSET_A, ATT_HOLE_OFFSET_B, UNIT_CENTIMETER, UNIT_INCH, EXTERNAL_EVENT_UPDATE_PROPERTY, PROP_FLIP_DOOR_HANDLE, PROP_OPEN_DOORS, EXTERNAL_EVENT_LOAD_PROJECT, INTERNAL_EVENT_ITEMS_CATALOG, EXTERNAL_EVENT_ADD_HOLE, EXTERNAL_EVENT_CENTERING_2D, EXTERNAL_EVENT_DUPLICATE_ELEMENT, EXTERNAL_EVENT_DELETE_ELEMENT, ELEMENT_HOLE, ELEMENT_ITEM, ELEMENT_LINE, MAX_ZOOM_IN_SCALE } from "../constants";
8
+ import { EXTERNAL_EVENT_ADD_WALL, EXTERNAL_EVENT_TOGGLE_TO_3D, EXTERNAL_EVENT_TOGGLE_TO_2D, EXTERNAL_EVENT_TOGGLE_TO_ELEVATION, EXTERNAL_EVENT_MOVE_PAN, MODE_IDLE, MODE_2D_PAN, EXTERNAL_EVENT_ADD_ITEM, ARRAY_3D_MODES, MODE_IDLE_3D, MODE_ELEVATION_VIEW, MODE_DRAWING_LINE, TOP, BOTTOM, LEFT, RIGHT, EXTERNAL_EVENT_NEW_PROJECT, EXTERNAL_EVENT_CHANGE_DOORSTYLE, EXTERNAL_EVENT_SET_INITIAL_DATA, EXTERNAL_EVENT_ADD_ROOM_SHAPE, EXTERNAL_EVENT_ZOOM_IN, EXTERNAL_EVENT_ZOOM_OUT, ZOOM_VARIABLE, EXTERNAL_EVENT_UNDO, EXTERNAL_EVENT_REDO, EXTERNAL_EVENT_SET_MOLDING, EXTERNAL_EVENT_PROJECT_SETTING, PROJECT_SETTING_OPTION, EXTERNAL_EVENT_SYNC_SCENE, INTERNAL_EVENT_SYNC_SCENE, EXTERNAL_EVENT_UPDATE_ATTRIBUTE, ATT_ITEM_POS, ATT_LINE_LENGTH, ATT_VERTEXT_ONE, ATT_VERTEXT_TWO, ATT_HOLE_OFFSET_A, ATT_HOLE_OFFSET_B, UNIT_CENTIMETER, UNIT_INCH, EXTERNAL_EVENT_UPDATE_PROPERTY, PROP_FLIP_DOOR_HANDLE, PROP_OPEN_DOORS, EXTERNAL_EVENT_LOAD_PROJECT, INTERNAL_EVENT_ITEMS_CATALOG, EXTERNAL_EVENT_ADD_HOLE, EXTERNAL_EVENT_CENTERING_2D, EXTERNAL_EVENT_DUPLICATE_ELEMENT, EXTERNAL_EVENT_DELETE_ELEMENT, ELEMENT_HOLE, ELEMENT_ITEM, ELEMENT_LINE, MAX_ZOOM_IN_SCALE, EXTERNAL_EVENT_REPLACE_CABINET } from "../constants";
9
9
  import { isEmpty } from "./helper";
10
10
  import exporter from "../catalog/utils/exporter";
11
11
  import { render2DItem, render3DItem, render3DApplianceItem, render3DLightingItem } from "../catalog/utils/item-loader";
@@ -133,10 +133,11 @@ function _parseTempPlaceholdersFromCabinetPayload() {
133
133
  tempPlaceholders.map(function (element) {
134
134
  var sink_match = element.name.match(/\d_(sink_[^LR12]*)(_[LR12])?$/);
135
135
  if (sink_match && sink_match.length >= 2) {
136
+ var _cabinetPayload$struc2;
136
137
  tempData['sink'] = tempData['sink'] || [];
137
138
  tempData['sink'].push(element.name);
138
- var sink_url = process.env.DEV_HTTP + process.env.DEV_PORT + "/uploads/assets/default/".concat(sink_match[1], ".gltf");
139
- json_data.sink = sink_url;
139
+ var sink_url = process.env.API_URL + "/uploads/assets/default/".concat(sink_match[1], ".gltf");
140
+ if (cabinetPayload !== null && cabinetPayload !== void 0 && (_cabinetPayload$struc2 = cabinetPayload.structure_json) !== null && _cabinetPayload$struc2 !== void 0 && (_cabinetPayload$struc2 = _cabinetPayload$struc2.tempPlaceholders[0]) !== null && _cabinetPayload$struc2 !== void 0 && _cabinetPayload$struc2.structure) cabinetPayload.structure_json.tempPlaceholders[0].structure.sink = sink_url;
140
141
  } else if (temp.some(function (felement) {
141
142
  return felement.name.includes('base_drawer');
142
143
  }) && element.name.includes('interior_drawer')) {
@@ -499,19 +500,26 @@ function addItemToCatalog(_x5, _x6, _x7, _x8) {
499
500
  } // Get attributs of current selected element
500
501
  function _addItemToCatalog() {
501
502
  _addItemToCatalog = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee5(element, state, catalogInstance, projectActions) {
503
+ var _element, _element2;
502
504
  var elementJs, catalog, outlineSVGData, updatedStructureJson;
503
505
  return _regeneratorRuntime.wrap(function (_context5) {
504
506
  while (1) switch (_context5.prev = _context5.next) {
505
507
  case 0:
508
+ if (!isEmpty((_element = element) === null || _element === void 0 ? void 0 : _element.name)) {
509
+ _context5.next = 1;
510
+ break;
511
+ }
512
+ return _context5.abrupt("return");
513
+ case 1:
506
514
  elementJs = element;
507
515
  catalog = state.getIn(['catalog']).toJS(); // add item to catalog of state
508
516
  // if (isEmpty(catalog?.elements[element.name])) {
509
- _context5.next = 1;
517
+ _context5.next = 2;
510
518
  return loadSVGsByItem(element);
511
- case 1:
519
+ case 2:
512
520
  outlineSVGData = _context5.sent;
513
- if (!(element.type === 'cabinet')) {
514
- _context5.next = 3;
521
+ if (!(((_element2 = element) === null || _element2 === void 0 ? void 0 : _element2.type) === 'cabinet')) {
522
+ _context5.next = 4;
515
523
  break;
516
524
  }
517
525
  // make placeholders of element and tempPlaceholder
@@ -523,11 +531,11 @@ function _addItemToCatalog() {
523
531
  itemID: element.itemID
524
532
  }
525
533
  });
526
- _context5.next = 2;
534
+ _context5.next = 3;
527
535
  return updateCabinetPayload(element);
528
- case 2:
529
- elementJs = _context5.sent;
530
536
  case 3:
537
+ elementJs = _context5.sent;
538
+ case 4:
531
539
  elementJs = _objectSpread(_objectSpread({}, elementJs), {}, {
532
540
  outlineSVGData: outlineSVGData,
533
541
  type: element.type,
@@ -540,7 +548,7 @@ function _addItemToCatalog() {
540
548
  projectActions.addElementToCatalog(elementJs);
541
549
  }
542
550
  // }
543
- case 4:
551
+ case 5:
544
552
  case "end":
545
553
  return _context5.stop();
546
554
  }
@@ -984,7 +992,7 @@ export function handleExternalEvent(_x10) {
984
992
  function _handleExternalEvent() {
985
993
  _handleExternalEvent = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee8(props) {
986
994
  var _evt$payload3, _evt$payload4;
987
- var evt, state, _evt$payload, cdsItems, itemKeys, _loop3, i, _props$onInternalEven, sLineCnt, element, _state$viewer2D, _evt$payload$initialP, mouseX, mouseY, v2d, vPosX, vPosY, layerID, _evt$payload5, moveType, moveValue, value, defaulTitle, _evt$payload6, doorStyle, itemCDS, isAll, _doorStyle, _value, _value2, layer, bb, w, h, viewer, _evt$payload7, moldingInfo, isGlobal, distElement, _distElement, _evt$payload8, option, _value3, layerId, _layer, _layer$getIn, selectedLines, selectedHoles, selectedItems, _i2, _i3, _i4, _props$onInternalEven2, _t5, _t6;
995
+ var evt, state, _evt$payload, cdsItems, itemKeys, _loop3, i, _props$onInternalEven, sLineCnt, element, _state$viewer2D, _evt$payload$initialP, mouseX, mouseY, v2d, vPosX, vPosY, layerID, _evt$payload5, moveType, moveValue, value, defaulTitle, _evt$payload6, doorStyle, itemCDS, isAll, _doorStyle, _value, _value2, layer, bb, w, h, viewer, _evt$payload7, moldingInfo, isGlobal, distElement, _distElement, _evt$payload8, option, _value3, layerId, _layer, _layer$getIn, selectedLines, selectedHoles, selectedItems, _i2, _i3, _i4, _evt$payload9, _evt$payload0, _evt$payload1, _evt$payload10, _layerID, _layer2, orginalItemInfo, originalItem, originalItemPos, replaceItem, _props$onInternalEven2, _t5, _t6;
988
996
  return _regeneratorRuntime.wrap(function (_context9) {
989
997
  while (1) switch (_context9.prev = _context9.next) {
990
998
  case 0:
@@ -992,7 +1000,7 @@ function _handleExternalEvent() {
992
1000
  evt = props.externalEvent;
993
1001
  state = props.state.get('KitchenConfigurator');
994
1002
  _t5 = evt === null || evt === void 0 ? void 0 : evt.type;
995
- _context9.next = _t5 === EXTERNAL_EVENT_LOAD_PROJECT ? 1 : _t5 === EXTERNAL_EVENT_TOGGLE_TO_3D ? 5 : _t5 === EXTERNAL_EVENT_TOGGLE_TO_2D ? 6 : _t5 === EXTERNAL_EVENT_TOGGLE_TO_ELEVATION ? 7 : _t5 === EXTERNAL_EVENT_ADD_WALL ? 8 : _t5 === EXTERNAL_EVENT_ADD_ITEM ? 9 : _t5 === EXTERNAL_EVENT_ADD_HOLE ? 12 : _t5 === EXTERNAL_EVENT_MOVE_PAN ? 13 : _t5 === EXTERNAL_EVENT_NEW_PROJECT ? 19 : _t5 === EXTERNAL_EVENT_CHANGE_DOORSTYLE ? 20 : _t5 === EXTERNAL_EVENT_SET_INITIAL_DATA ? 21 : _t5 === EXTERNAL_EVENT_ADD_ROOM_SHAPE ? 22 : _t5 === EXTERNAL_EVENT_ZOOM_IN ? 23 : _t5 === EXTERNAL_EVENT_ZOOM_OUT ? 24 : _t5 === EXTERNAL_EVENT_CENTERING_2D ? 25 : _t5 === EXTERNAL_EVENT_UNDO ? 26 : _t5 === EXTERNAL_EVENT_REDO ? 27 : _t5 === EXTERNAL_EVENT_SET_MOLDING ? 28 : _t5 === EXTERNAL_EVENT_DUPLICATE_ELEMENT ? 30 : _t5 === EXTERNAL_EVENT_DELETE_ELEMENT ? 31 : _t5 === EXTERNAL_EVENT_PROJECT_SETTING ? 32 : _t5 === EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? 33 : _t5 === EXTERNAL_EVENT_UPDATE_PROPERTY ? 33 : _t5 === EXTERNAL_EVENT_SYNC_SCENE ? 34 : 35;
1003
+ _context9.next = _t5 === EXTERNAL_EVENT_LOAD_PROJECT ? 1 : _t5 === EXTERNAL_EVENT_TOGGLE_TO_3D ? 5 : _t5 === EXTERNAL_EVENT_TOGGLE_TO_2D ? 6 : _t5 === EXTERNAL_EVENT_TOGGLE_TO_ELEVATION ? 7 : _t5 === EXTERNAL_EVENT_ADD_WALL ? 8 : _t5 === EXTERNAL_EVENT_ADD_ITEM ? 9 : _t5 === EXTERNAL_EVENT_ADD_HOLE ? 12 : _t5 === EXTERNAL_EVENT_MOVE_PAN ? 13 : _t5 === EXTERNAL_EVENT_NEW_PROJECT ? 19 : _t5 === EXTERNAL_EVENT_CHANGE_DOORSTYLE ? 20 : _t5 === EXTERNAL_EVENT_SET_INITIAL_DATA ? 21 : _t5 === EXTERNAL_EVENT_ADD_ROOM_SHAPE ? 22 : _t5 === EXTERNAL_EVENT_ZOOM_IN ? 23 : _t5 === EXTERNAL_EVENT_ZOOM_OUT ? 24 : _t5 === EXTERNAL_EVENT_CENTERING_2D ? 25 : _t5 === EXTERNAL_EVENT_UNDO ? 26 : _t5 === EXTERNAL_EVENT_REDO ? 27 : _t5 === EXTERNAL_EVENT_SET_MOLDING ? 28 : _t5 === EXTERNAL_EVENT_DUPLICATE_ELEMENT ? 30 : _t5 === EXTERNAL_EVENT_DELETE_ELEMENT ? 31 : _t5 === EXTERNAL_EVENT_PROJECT_SETTING ? 32 : _t5 === EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? 33 : _t5 === EXTERNAL_EVENT_UPDATE_PROPERTY ? 33 : _t5 === EXTERNAL_EVENT_REPLACE_CABINET ? 34 : _t5 === EXTERNAL_EVENT_SYNC_SCENE ? 36 : 37;
996
1004
  break;
997
1005
  case 1:
998
1006
  // prepare item data request
@@ -1007,9 +1015,13 @@ function _handleExternalEvent() {
1007
1015
  it = evt === null || evt === void 0 || (_evt$payload2 = evt.payload) === null || _evt$payload2 === void 0 || (_evt$payload2 = _evt$payload2.layers['layer-1']) === null || _evt$payload2 === void 0 ? void 0 : _evt$payload2.items[itemKeys[i]];
1008
1016
  if (!cdsItems.some(function (v) {
1009
1017
  var _it$doorStyle;
1010
- return it.type === v.type && ((_it$doorStyle = it.doorStyle) === null || _it$doorStyle === void 0 || (_it$doorStyle = _it$doorStyle.doorStyles) === null || _it$doorStyle === void 0 ? void 0 : _it$doorStyle.cabinet_door_style_id) === v.cdsId;
1018
+ return it.itemId === v.itemId && it.name === v.name && ((_it$doorStyle = it.doorStyle) === null || _it$doorStyle === void 0 || (_it$doorStyle = _it$doorStyle.doorStyles) === null || _it$doorStyle === void 0 ? void 0 : _it$doorStyle.cabinet_door_style_id) === v.cdsId;
1011
1019
  })) cdsItems.push({
1012
- type: it.type,
1020
+ itemId: it.itemId,
1021
+ name: it.name,
1022
+ sku_number: it.sku_number,
1023
+ category: it.category,
1024
+ prototype: it.prototype,
1013
1025
  cdsId: (_it$doorStyle2 = it.doorStyle) === null || _it$doorStyle2 === void 0 || (_it$doorStyle2 = _it$doorStyle2.doorStyles) === null || _it$doorStyle2 === void 0 ? void 0 : _it$doorStyle2.cabinet_door_style_id
1014
1026
  });
1015
1027
  case 1:
@@ -1068,23 +1080,23 @@ function _handleExternalEvent() {
1068
1080
  };
1069
1081
  }());
1070
1082
  }
1071
- return _context9.abrupt("continue", 35);
1083
+ return _context9.abrupt("continue", 37);
1072
1084
  case 5:
1073
1085
  props.projectActions.setMode(MODE_IDLE_3D);
1074
- return _context9.abrupt("continue", 35);
1086
+ return _context9.abrupt("continue", 37);
1075
1087
  case 6:
1076
1088
  props.projectActions.setMode(MODE_IDLE);
1077
- return _context9.abrupt("continue", 35);
1089
+ return _context9.abrupt("continue", 37);
1078
1090
  case 7:
1079
1091
  sLineCnt = state.getIn(['scene', 'layers', 'layer-1', 'selected', 'lines']).size;
1080
1092
  if (sLineCnt > 0) props.projectActions.setMode(MODE_ELEVATION_VIEW);
1081
- return _context9.abrupt("continue", 35);
1093
+ return _context9.abrupt("continue", 37);
1082
1094
  case 8:
1083
1095
  if (state.mode === MODE_IDLE || state.mode === MODE_2D_PAN) props.linesActions.selectToolDrawingLine('wall');else {
1084
1096
  props.projectActions.setMode(MODE_IDLE);
1085
1097
  props.linesActions.selectToolDrawingLine('wall');
1086
1098
  }
1087
- return _context9.abrupt("continue", 35);
1099
+ return _context9.abrupt("continue", 37);
1088
1100
  case 9:
1089
1101
  if (isEmpty(evt === null || evt === void 0 ? void 0 : evt.payload)) {
1090
1102
  _context9.next = 11;
@@ -1115,10 +1127,10 @@ function _handleExternalEvent() {
1115
1127
  props.projectActions.pushLastSelectedCatalogElementToHistory(element);
1116
1128
  props.projectActions.setIsCabinetDrawing(true);
1117
1129
  case 11:
1118
- return _context9.abrupt("continue", 35);
1130
+ return _context9.abrupt("continue", 37);
1119
1131
  case 12:
1120
1132
  ARRAY_3D_MODES.includes(state.mode) ? props.holesActions.selectToolDrawingHole3D(evt === null || evt === void 0 || (_evt$payload3 = evt.payload) === null || _evt$payload3 === void 0 ? void 0 : _evt$payload3.holeName) : props.holesActions.selectToolDrawingHole(evt === null || evt === void 0 || (_evt$payload4 = evt.payload) === null || _evt$payload4 === void 0 ? void 0 : _evt$payload4.holeName);
1121
- return _context9.abrupt("continue", 35);
1133
+ return _context9.abrupt("continue", 37);
1122
1134
  case 13:
1123
1135
  _evt$payload5 = evt.payload, moveType = _evt$payload5.moveType, moveValue = _evt$payload5.moveValue;
1124
1136
  value = state.getIn(['viewer2D']).toJS();
@@ -1139,23 +1151,23 @@ function _handleExternalEvent() {
1139
1151
  return _context9.abrupt("continue", 18);
1140
1152
  case 18:
1141
1153
  updateViwer2D(value, props.viewer2DActions);
1142
- return _context9.abrupt("continue", 35);
1154
+ return _context9.abrupt("continue", 37);
1143
1155
  case 19:
1144
1156
  defaulTitle = 'Untitle';
1145
1157
  props.projectActions.newProject();
1146
1158
  props.projectActions.rename(defaulTitle);
1147
- return _context9.abrupt("continue", 35);
1159
+ return _context9.abrupt("continue", 37);
1148
1160
  case 20:
1149
1161
  _evt$payload6 = evt.payload, doorStyle = _evt$payload6.doorStyle, itemCDS = _evt$payload6.itemCDS, isAll = _evt$payload6.isAll;
1150
1162
  props.itemsActions.setDoorStyle(doorStyle, itemCDS, isAll);
1151
- return _context9.abrupt("continue", 35);
1163
+ return _context9.abrupt("continue", 37);
1152
1164
  case 21:
1153
1165
  _doorStyle = evt.payload.doorStyle;
1154
1166
  props.itemsActions.setInitialDoorStyle(_doorStyle.doorStyle);
1155
- return _context9.abrupt("continue", 35);
1167
+ return _context9.abrupt("continue", 37);
1156
1168
  case 22:
1157
1169
  props.projectActions.loadProject(evt.payload);
1158
- return _context9.abrupt("continue", 35);
1170
+ return _context9.abrupt("continue", 37);
1159
1171
  case 23:
1160
1172
  _value = state.getIn(['viewer2D']).toJS();
1161
1173
  _value.a += 0.1;
@@ -1163,7 +1175,7 @@ function _handleExternalEvent() {
1163
1175
  _value.e -= _value.SVGWidth * 0.1 / 2;
1164
1176
  _value.f -= _value.SVGHeight * 0.1 / 2;
1165
1177
  updateViwer2D(_value, props.viewer2DActions);
1166
- return _context9.abrupt("continue", 35);
1178
+ return _context9.abrupt("continue", 37);
1167
1179
  case 24:
1168
1180
  _value2 = state.getIn(['viewer2D']).toJS();
1169
1181
  _value2.a -= 0.1;
@@ -1171,7 +1183,7 @@ function _handleExternalEvent() {
1171
1183
  _value2.e += _value2.SVGWidth * 0.1 / 2;
1172
1184
  _value2.f += _value2.SVGHeight * 0.1 / 2;
1173
1185
  updateViwer2D(_value2, props.viewer2DActions);
1174
- return _context9.abrupt("continue", 35);
1186
+ return _context9.abrupt("continue", 37);
1175
1187
  case 25:
1176
1188
  // calculate the bounding box of all elements in plan
1177
1189
  layer = state.scene.getIn(['layers', state.scene.selectedLayer]);
@@ -1205,28 +1217,28 @@ function _handleExternalEvent() {
1205
1217
  viewer.d = 0.99;
1206
1218
  }
1207
1219
  updateViwer2D(viewer, props.viewer2DActions);
1208
- return _context9.abrupt("continue", 35);
1220
+ return _context9.abrupt("continue", 37);
1209
1221
  case 26:
1210
1222
  props.projectActions.undo();
1211
- return _context9.abrupt("continue", 35);
1223
+ return _context9.abrupt("continue", 37);
1212
1224
  case 27:
1213
1225
  props.projectActions.redo();
1214
- return _context9.abrupt("continue", 35);
1226
+ return _context9.abrupt("continue", 37);
1215
1227
  case 28:
1216
1228
  _evt$payload7 = evt.payload, moldingInfo = _evt$payload7.moldingInfo, isGlobal = _evt$payload7.isGlobal;
1217
1229
  _context9.next = 29;
1218
1230
  return loadMoldingSvg(moldingInfo);
1219
1231
  case 29:
1220
1232
  props.itemsActions.setMolding(moldingInfo, isGlobal);
1221
- return _context9.abrupt("continue", 35);
1233
+ return _context9.abrupt("continue", 37);
1222
1234
  case 30:
1223
1235
  distElement = getElement(evt.payload, state);
1224
1236
  if (distElement) props.itemsActions.duplicateSelected(distElement);
1225
- return _context9.abrupt("continue", 35);
1237
+ return _context9.abrupt("continue", 37);
1226
1238
  case 31:
1227
1239
  _distElement = getElement(evt.payload, state);
1228
1240
  if (_distElement) props.projectActions.remove(_distElement);
1229
- return _context9.abrupt("continue", 35);
1241
+ return _context9.abrupt("continue", 37);
1230
1242
  case 32:
1231
1243
  _evt$payload8 = evt.payload, option = _evt$payload8.option, _value3 = _evt$payload8.value;
1232
1244
  if (option === PROJECT_SETTING_OPTION.UPDATE_CEIL_HEIGHT) {
@@ -1241,7 +1253,7 @@ function _handleExternalEvent() {
1241
1253
  } else if (option === PROJECT_SETTING_OPTION.CHANGE_WINDOW_DOOR_MEASURE) {
1242
1254
  props.viewer2DActions.changeWindowDoorMeasure(_value3);
1243
1255
  }
1244
- return _context9.abrupt("continue", 35);
1256
+ return _context9.abrupt("continue", 37);
1245
1257
  case 33:
1246
1258
  layerId = state.getIn(['scene', 'selectedLayer']);
1247
1259
  _layer = state.getIn(['scene', 'layers', layerId]);
@@ -1249,8 +1261,31 @@ function _handleExternalEvent() {
1249
1261
  for (_i2 = 0; _i2 < selectedLines.size; _i2++) (evt === null || evt === void 0 ? void 0 : evt.type) === EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? updateAttributeOfSelectedElement(_layer.getIn(['lines', selectedLines.get(_i2)]), evt.payload, state, _layer, props.projectActions, evt.callback) : updatePropertyOfSelectedElement(_layer.getIn(['lines', selectedLines.get(_i2)]), evt.payload, props.catalog, props.projectActions, evt.callback);
1250
1262
  for (_i3 = 0; _i3 < selectedHoles.size; _i3++) (evt === null || evt === void 0 ? void 0 : evt.type) === EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? updateAttributeOfSelectedElement(_layer.getIn(['holes', selectedHoles.get(_i3)]), evt.payload, state, _layer, props.projectActions, evt.callback) : updatePropertyOfSelectedElement(_layer.getIn(['holes', selectedHoles.get(_i3)]), evt.payload, props.catalog, props.projectActions, evt.callback);
1251
1263
  for (_i4 = 0; _i4 < selectedItems.size; _i4++) (evt === null || evt === void 0 ? void 0 : evt.type) === EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? updateAttributeOfSelectedElement(_layer.getIn(['items', selectedItems.get(_i4)]), evt.payload, state, _layer, props.projectActions, evt.callback) : updatePropertyOfSelectedElement(_layer.getIn(['items', selectedItems.get(_i4)]), evt.payload, props.catalog, props.projectActions, evt.callback);
1252
- return _context9.abrupt("continue", 35);
1264
+ return _context9.abrupt("continue", 37);
1253
1265
  case 34:
1266
+ _layerID = state.scene.selectedLayer;
1267
+ _layer2 = state.scene.getIn(['layers', _layerID]).toJS();
1268
+ orginalItemInfo = evt === null || evt === void 0 || (_evt$payload9 = evt.payload) === null || _evt$payload9 === void 0 ? void 0 : _evt$payload9.orginalItemInfo;
1269
+ originalItem = _layer2 === null || _layer2 === void 0 ? void 0 : _layer2.items[orginalItemInfo.id];
1270
+ _context9.next = 35;
1271
+ return addItemToCatalog(evt.payload.replaceItemInfo, state, props.catalog, props.projectActions);
1272
+ case 35:
1273
+ originalItemPos = {
1274
+ rotation: originalItem.rotation,
1275
+ selectedItemId: originalItem.id,
1276
+ x: originalItem.x,
1277
+ y: originalItem.y
1278
+ };
1279
+ replaceItem = {
1280
+ name: evt === null || evt === void 0 || (_evt$payload0 = evt.payload) === null || _evt$payload0 === void 0 || (_evt$payload0 = _evt$payload0.replaceItemInfo) === null || _evt$payload0 === void 0 ? void 0 : _evt$payload0.name,
1281
+ info: {
1282
+ width: evt === null || evt === void 0 || (_evt$payload1 = evt.payload) === null || _evt$payload1 === void 0 || (_evt$payload1 = _evt$payload1.replaceItemInfo) === null || _evt$payload1 === void 0 || (_evt$payload1 = _evt$payload1.sizeinfo) === null || _evt$payload1 === void 0 ? void 0 : _evt$payload1.width,
1283
+ height: evt === null || evt === void 0 || (_evt$payload10 = evt.payload) === null || _evt$payload10 === void 0 || (_evt$payload10 = _evt$payload10.replaceItemInfo) === null || _evt$payload10 === void 0 || (_evt$payload10 = _evt$payload10.sizeinfo) === null || _evt$payload10 === void 0 ? void 0 : _evt$payload10.height
1284
+ }
1285
+ };
1286
+ props.itemsActions.replaceItem(originalItemPos, originalItem, replaceItem);
1287
+ return _context9.abrupt("continue", 37);
1288
+ case 36:
1254
1289
  // send scene object from 3DTool to HostApp using internalEvent
1255
1290
  (_props$onInternalEven2 = props.onInternalEvent) === null || _props$onInternalEven2 === void 0 || _props$onInternalEven2.call(props, {
1256
1291
  type: INTERNAL_EVENT_SYNC_SCENE,
@@ -1258,8 +1293,8 @@ function _handleExternalEvent() {
1258
1293
  scene: state.scene.toJS()
1259
1294
  }
1260
1295
  });
1261
- return _context9.abrupt("continue", 35);
1262
- case 35:
1296
+ return _context9.abrupt("continue", 37);
1297
+ case 37:
1263
1298
  case "end":
1264
1299
  return _context9.stop();
1265
1300
  }
@@ -70,7 +70,7 @@ var STYLE_FNT0 = {
70
70
  };
71
71
  var EPSILON = 3;
72
72
  var _default = exports["default"] = {
73
- name: 'Closet Door',
73
+ name: 'Closet',
74
74
  prototype: 'holes',
75
75
  info: {
76
76
  title: 'Closet',
@@ -71,7 +71,7 @@ var STYLE_FNT0 = {
71
71
  };
72
72
  var EPSILON = 3;
73
73
  var _default = exports["default"] = {
74
- name: 'Exterior Door',
74
+ name: 'Exterior',
75
75
  prototype: 'holes',
76
76
  info: {
77
77
  title: 'Exterior',
@@ -71,7 +71,7 @@ var STYLE_FNT0 = {
71
71
  };
72
72
  var EPSILON = 3;
73
73
  var _default = exports["default"] = {
74
- name: 'Interior Door',
74
+ name: 'Interior',
75
75
  prototype: 'holes',
76
76
  info: {
77
77
  title: 'Interior',
@@ -17,7 +17,7 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
17
17
 
18
18
  var cached3DDoor = null;
19
19
  var _default = exports["default"] = {
20
- name: 'Sliding Door',
20
+ name: 'Sliding',
21
21
  prototype: 'holes',
22
22
  info: {
23
23
  tag: ['door'],
@@ -25,7 +25,7 @@ var STYLE_HOLE_SELECTED = {
25
25
  };
26
26
  var EPSILON = 3;
27
27
  var _default = exports["default"] = {
28
- name: 'Vertical Window',
28
+ name: 'window-vertical',
29
29
  prototype: 'holes',
30
30
  info: {
31
31
  tag: ['window'],