kitchen-simulator 3.0.3 → 3.1.0-alpha.12
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.
- package/es/LiteKitchenConfigurator.js +42 -9
- package/es/LiteRenderer.js +5 -8
- package/es/actions/lines-actions.js +3 -1
- package/es/assets/img/png/helper/video_preview_start.png +0 -0
- package/es/catalog/factories/area-factory-3d.js +17 -17
- package/es/catalog/holes/window-clear/planner-element.js +2 -2
- package/es/catalog/utils/item-loader.js +198 -197
- package/es/class/item.js +8 -0
- package/es/class/line.js +14 -2
- package/es/components/viewer2d/item.js +36 -12
- package/es/components/viewer2d/utils.js +2 -2
- package/es/components/viewer2d/viewer2d.js +12 -10
- package/es/components/viewer3d/viewer3d.js +66 -74
- package/es/constants.js +6 -2
- package/es/devLiteRenderer.js +192 -98
- package/es/index.js +82 -13
- package/es/reducers/lines-reducer.js +1 -1
- package/es/utils/geometry.js +161 -0
- package/es/utils/isolate-event-handler.js +268 -114
- package/es/utils/molding.js +234 -2
- package/lib/LiteKitchenConfigurator.js +42 -9
- package/lib/LiteRenderer.js +5 -8
- package/lib/actions/lines-actions.js +3 -1
- package/lib/assets/img/png/helper/video_preview_start.png +0 -0
- package/lib/catalog/factories/area-factory-3d.js +14 -14
- package/lib/catalog/holes/window-clear/planner-element.js +2 -2
- package/lib/catalog/utils/item-loader.js +195 -194
- package/lib/class/item.js +8 -0
- package/lib/class/line.js +13 -1
- package/lib/components/viewer2d/item.js +36 -12
- package/lib/components/viewer2d/utils.js +2 -2
- package/lib/components/viewer2d/viewer2d.js +12 -10
- package/lib/components/viewer3d/viewer3d.js +66 -74
- package/lib/constants.js +11 -7
- package/lib/devLiteRenderer.js +186 -92
- package/lib/index.js +82 -13
- package/lib/reducers/lines-reducer.js +1 -1
- package/lib/utils/geometry.js +162 -0
- package/lib/utils/isolate-event-handler.js +267 -113
- package/lib/utils/molding.js +233 -0
- package/package.json +1 -1
|
@@ -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_ADD_ROOM_SHAPE, EXTERNAL_EVENT_ZOOM_IN, EXTERNAL_EVENT_ZOOM_OUT, 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, EXTERNAL_EVENT_REPLACE_CABINET, FINISHING_TYPE, EXTERNAL_EVENT_SET_FINISHING } 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_ADD_ROOM_SHAPE, EXTERNAL_EVENT_ZOOM_IN, EXTERNAL_EVENT_ZOOM_OUT, 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, EXTERNAL_EVENT_REPLACE_CABINET, FINISHING_TYPE, EXTERNAL_EVENT_SET_FINISHING, EXTERNAL_EVENT_ROTATE_PAN } from "../constants";
|
|
9
9
|
import { isEmpty, updateViwer2D, centering2D } from "./helper";
|
|
10
10
|
import exporter from "../catalog/utils/exporter";
|
|
11
11
|
import { render2DItem, render3DItem, render3DApplianceItem, render3DLightingItem } from "../catalog/utils/item-loader";
|
|
@@ -13,6 +13,7 @@ import { convert } from "./convert-units-lite";
|
|
|
13
13
|
import { GeometryUtils, MathUtils } from "./export";
|
|
14
14
|
import { returnReplaceableDeepSearchType } from "../components/viewer2d/utils";
|
|
15
15
|
import { SVGLoader } from 'three/addons/loaders/SVGLoader';
|
|
16
|
+
import { getMoldingDataOfScene } from "./molding";
|
|
16
17
|
var PRECISION = 2;
|
|
17
18
|
function loadJSON(_x) {
|
|
18
19
|
return _loadJSON.apply(this, arguments);
|
|
@@ -666,9 +667,9 @@ function initPropData(element, catalog) {
|
|
|
666
667
|
}
|
|
667
668
|
return new Map(mapped);
|
|
668
669
|
}
|
|
669
|
-
function updateAttributeOfSelectedElement(element, attrPayload, state, layer, projectActions) {
|
|
670
|
+
function updateAttributeOfSelectedElement(element, attrPayload, state, layer, catalog, projectActions) {
|
|
670
671
|
var _attributesFormData;
|
|
671
|
-
var callback = arguments.length >
|
|
672
|
+
var callback = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
|
|
672
673
|
var attributesFormData = initAttrData(element, layer, state);
|
|
673
674
|
var value = attrPayload.value;
|
|
674
675
|
var attributeName = attrPayload.attributeName;
|
|
@@ -721,6 +722,10 @@ function updateAttributeOfSelectedElement(element, attrPayload, state, layer, pr
|
|
|
721
722
|
attributesFormData = attributesFormData.set('y', yVal);
|
|
722
723
|
} else {
|
|
723
724
|
attributesFormData = attributesFormData.set(attributeName, value);
|
|
725
|
+
// update the distances from wall
|
|
726
|
+
var _GeometryUtils$calcDi = GeometryUtils.calcDistancesFromItemToWalls(attributesFormData, layer),
|
|
727
|
+
PointArray = _GeometryUtils$calcDi.PointArray;
|
|
728
|
+
attributesFormData = attributesFormData.set('distArray', PointArray);
|
|
724
729
|
}
|
|
725
730
|
break;
|
|
726
731
|
}
|
|
@@ -995,53 +1000,87 @@ function setFinishing(props, state, payload) {
|
|
|
995
1000
|
break;
|
|
996
1001
|
}
|
|
997
1002
|
}
|
|
998
|
-
function
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1003
|
+
function moveAndRotatePan2D3D(eventType, props, payload, state) {
|
|
1004
|
+
if (eventType === EXTERNAL_EVENT_MOVE_PAN) {
|
|
1005
|
+
var moveType = payload.moveType,
|
|
1006
|
+
moveValue = payload.moveValue;
|
|
1007
|
+
var value = state.getIn(['viewer2D']).toJS();
|
|
1008
|
+
if (state.mode === MODE_IDLE) {
|
|
1009
|
+
switch (moveType) {
|
|
1010
|
+
case TOP:
|
|
1011
|
+
value.f -= moveValue;
|
|
1012
|
+
break;
|
|
1013
|
+
case BOTTOM:
|
|
1014
|
+
value.f += moveValue;
|
|
1015
|
+
break;
|
|
1016
|
+
case RIGHT:
|
|
1017
|
+
value.e += moveValue;
|
|
1018
|
+
break;
|
|
1019
|
+
case LEFT:
|
|
1020
|
+
value.e -= moveValue;
|
|
1021
|
+
break;
|
|
1022
|
+
}
|
|
1023
|
+
updateViwer2D(value, props.viewer2DActions);
|
|
1024
|
+
} else if (state.mode === MODE_IDLE_3D) {
|
|
1025
|
+
switch (moveType) {
|
|
1026
|
+
case TOP:
|
|
1027
|
+
window.interval = setTimeout(function () {
|
|
1028
|
+
window.tDKeyDown({
|
|
1029
|
+
keyCode: 38
|
|
1030
|
+
});
|
|
1031
|
+
}, 50);
|
|
1032
|
+
break;
|
|
1033
|
+
case BOTTOM:
|
|
1034
|
+
window.interval = setTimeout(function () {
|
|
1035
|
+
window.tDKeyDown({
|
|
1036
|
+
keyCode: 40
|
|
1037
|
+
});
|
|
1038
|
+
}, 50);
|
|
1039
|
+
break;
|
|
1040
|
+
case RIGHT:
|
|
1041
|
+
window.interval = setTimeout(function () {
|
|
1042
|
+
window.tDKeyDown({
|
|
1043
|
+
keyCode: 37
|
|
1044
|
+
});
|
|
1045
|
+
}, 50);
|
|
1046
|
+
break;
|
|
1047
|
+
case LEFT:
|
|
1048
|
+
window.interval = setTimeout(function () {
|
|
1049
|
+
window.tDKeyDown({
|
|
1050
|
+
keyCode: 39
|
|
1051
|
+
});
|
|
1052
|
+
}, 50);
|
|
1053
|
+
break;
|
|
1054
|
+
}
|
|
1016
1055
|
}
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
switch (
|
|
1056
|
+
} else if (eventType === EXTERNAL_EVENT_ROTATE_PAN) {
|
|
1057
|
+
var rotateType = payload.rotateType;
|
|
1058
|
+
switch (rotateType) {
|
|
1020
1059
|
case TOP:
|
|
1021
1060
|
window.interval = setTimeout(function () {
|
|
1022
|
-
window.
|
|
1023
|
-
keyCode:
|
|
1061
|
+
window.SPKeyDown({
|
|
1062
|
+
keyCode: 87
|
|
1024
1063
|
});
|
|
1025
1064
|
}, 50);
|
|
1026
1065
|
break;
|
|
1027
1066
|
case BOTTOM:
|
|
1028
1067
|
window.interval = setTimeout(function () {
|
|
1029
|
-
window.
|
|
1030
|
-
keyCode:
|
|
1068
|
+
window.SPKeyDown({
|
|
1069
|
+
keyCode: 83
|
|
1031
1070
|
});
|
|
1032
1071
|
}, 50);
|
|
1033
1072
|
break;
|
|
1034
1073
|
case RIGHT:
|
|
1035
1074
|
window.interval = setTimeout(function () {
|
|
1036
|
-
window.
|
|
1037
|
-
keyCode:
|
|
1075
|
+
window.SPKeyDown({
|
|
1076
|
+
keyCode: 68
|
|
1038
1077
|
});
|
|
1039
1078
|
}, 50);
|
|
1040
1079
|
break;
|
|
1041
1080
|
case LEFT:
|
|
1042
1081
|
window.interval = setTimeout(function () {
|
|
1043
|
-
window.
|
|
1044
|
-
keyCode:
|
|
1082
|
+
window.SPKeyDown({
|
|
1083
|
+
keyCode: 65
|
|
1045
1084
|
});
|
|
1046
1085
|
}, 50);
|
|
1047
1086
|
break;
|
|
@@ -1052,17 +1091,19 @@ export function handleExternalEvent(_x10) {
|
|
|
1052
1091
|
return _handleExternalEvent.apply(this, arguments);
|
|
1053
1092
|
}
|
|
1054
1093
|
function _handleExternalEvent() {
|
|
1055
|
-
_handleExternalEvent = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function
|
|
1094
|
+
_handleExternalEvent = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee9(props) {
|
|
1056
1095
|
var _evt$payload3, _evt$payload4;
|
|
1057
|
-
var evt, state, _evt$payload, cdsItems, itemKeys, _loop3, i, _props$onInternalEven, sLineCnt, element, _state$viewer2D, _evt$payload$initialP, mouseX, mouseY, v2d, vPosX, vPosY, layerID, defaulTitle, _evt$payload5, doorStyle, itemCDS, isAll, _evt$payload6, roomShapeType, width, height, _doorStyle, value, _value, _evt$payload7, moldingInfo, isGlobal, distElement, _distElement, _evt$payload8, option, _value2,
|
|
1058
|
-
return _regeneratorRuntime.wrap(function (
|
|
1059
|
-
while (1) switch (
|
|
1096
|
+
var evt, state, layerId, layer, _evt$payload, cdsItems, itemKeys, _loop3, i, _props$onInternalEven, sLineCnt, _state$getIn, element, cds, _cds$find, currentCdsId, _state$viewer2D, _evt$payload$initialP, mouseX, mouseY, v2d, vPosX, vPosY, layerID, defaulTitle, _Object$keys, _evt$payload5, doorStyle, itemCDS, isAll, _layerId, _cdsItems, allItems, selectedItemId, _itemKeys, _loop4, _i2, _props$onInternalEven2, _evt$payload6, roomShapeType, width, height, _doorStyle, value, _value, _evt$payload7, moldingInfo, isGlobal, distElement, _distElement, _evt$payload8, option, _value2, _layerId2, _layer, _layer$getIn, selectedLines, selectedHoles, selectedItems, _i4, _i5, _i6, _evt$payload9, _evt$payload0, _evt$payload1, _evt$payload10, _layerID, _layer2, orginalItemInfo, originalItem, originalItemPos, replaceItem, _props$onInternalEven3, sceneData, currentTexture, _t5, _t6;
|
|
1097
|
+
return _regeneratorRuntime.wrap(function (_context1) {
|
|
1098
|
+
while (1) switch (_context1.prev = _context1.next) {
|
|
1060
1099
|
case 0:
|
|
1061
1100
|
// console.log('***external event****', props);
|
|
1062
1101
|
evt = props.externalEvent;
|
|
1063
1102
|
state = props.state.get('KitchenConfigurator');
|
|
1103
|
+
layerId = state.getIn(['scene', 'selectedLayer']);
|
|
1104
|
+
layer = state.getIn(['scene', 'layers', layerId]);
|
|
1064
1105
|
_t5 = evt === null || evt === void 0 ? void 0 : evt.type;
|
|
1065
|
-
|
|
1106
|
+
_context1.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_ROTATE_PAN ? 13 : _t5 === EXTERNAL_EVENT_MOVE_PAN ? 13 : _t5 === EXTERNAL_EVENT_NEW_PROJECT ? 14 : _t5 === EXTERNAL_EVENT_CHANGE_DOORSTYLE ? 15 : _t5 === EXTERNAL_EVENT_ADD_ROOM_SHAPE ? 19 : _t5 === EXTERNAL_EVENT_ZOOM_IN ? 20 : _t5 === EXTERNAL_EVENT_ZOOM_OUT ? 21 : _t5 === EXTERNAL_EVENT_CENTERING_2D ? 22 : _t5 === EXTERNAL_EVENT_UNDO ? 23 : _t5 === EXTERNAL_EVENT_REDO ? 24 : _t5 === EXTERNAL_EVENT_SET_MOLDING ? 25 : _t5 === EXTERNAL_EVENT_DUPLICATE_ELEMENT ? 27 : _t5 === EXTERNAL_EVENT_DELETE_ELEMENT ? 28 : _t5 === EXTERNAL_EVENT_PROJECT_SETTING ? 29 : _t5 === EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? 38 : _t5 === EXTERNAL_EVENT_UPDATE_PROPERTY ? 38 : _t5 === EXTERNAL_EVENT_REPLACE_CABINET ? 39 : _t5 === EXTERNAL_EVENT_SET_FINISHING ? 41 : _t5 === EXTERNAL_EVENT_SYNC_SCENE ? 42 : 43;
|
|
1066
1107
|
break;
|
|
1067
1108
|
case 1:
|
|
1068
1109
|
// prepare item data request
|
|
@@ -1074,10 +1115,14 @@ function _handleExternalEvent() {
|
|
|
1074
1115
|
return _regeneratorRuntime.wrap(function (_context8) {
|
|
1075
1116
|
while (1) switch (_context8.prev = _context8.next) {
|
|
1076
1117
|
case 0:
|
|
1077
|
-
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]];
|
|
1118
|
+
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]]; //////// check altitude of item property and change length from _length (convert length from 'in' fo 'cm')
|
|
1119
|
+
if (it.properties.altitude.length !== convert(it.properties.altitude._length).from('in').to('cm')) {
|
|
1120
|
+
it.properties.altitude.length = convert(it.properties.altitude._length).from('in').to('cm');
|
|
1121
|
+
}
|
|
1122
|
+
/////////
|
|
1078
1123
|
if (!cdsItems.some(function (v) {
|
|
1079
1124
|
var _it$doorStyle;
|
|
1080
|
-
return it.
|
|
1125
|
+
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;
|
|
1081
1126
|
})) cdsItems.push({
|
|
1082
1127
|
itemID: it.itemID,
|
|
1083
1128
|
prototype: it.prototype,
|
|
@@ -1096,13 +1141,13 @@ function _handleExternalEvent() {
|
|
|
1096
1141
|
i = 0;
|
|
1097
1142
|
case 2:
|
|
1098
1143
|
if (!(i < itemKeys.length)) {
|
|
1099
|
-
|
|
1144
|
+
_context1.next = 4;
|
|
1100
1145
|
break;
|
|
1101
1146
|
}
|
|
1102
|
-
return
|
|
1147
|
+
return _context1.delegateYield(_loop3(), "t0", 3);
|
|
1103
1148
|
case 3:
|
|
1104
1149
|
i++;
|
|
1105
|
-
|
|
1150
|
+
_context1.next = 2;
|
|
1106
1151
|
break;
|
|
1107
1152
|
case 4:
|
|
1108
1153
|
// request item catalog data to host app
|
|
@@ -1143,30 +1188,42 @@ function _handleExternalEvent() {
|
|
|
1143
1188
|
};
|
|
1144
1189
|
}());
|
|
1145
1190
|
}
|
|
1146
|
-
return
|
|
1191
|
+
return _context1.abrupt("continue", 43);
|
|
1147
1192
|
case 5:
|
|
1148
1193
|
props.projectActions.setMode(MODE_IDLE_3D);
|
|
1149
|
-
return
|
|
1194
|
+
return _context1.abrupt("continue", 43);
|
|
1150
1195
|
case 6:
|
|
1151
1196
|
props.projectActions.setMode(MODE_IDLE);
|
|
1152
|
-
return
|
|
1197
|
+
return _context1.abrupt("continue", 43);
|
|
1153
1198
|
case 7:
|
|
1154
|
-
sLineCnt =
|
|
1199
|
+
sLineCnt = layer.selected.lines.size;
|
|
1155
1200
|
if (sLineCnt > 0) props.projectActions.setMode(MODE_ELEVATION_VIEW);
|
|
1156
|
-
return
|
|
1201
|
+
return _context1.abrupt("continue", 43);
|
|
1157
1202
|
case 8:
|
|
1158
1203
|
if (state.mode === MODE_IDLE || state.mode === MODE_2D_PAN) props.linesActions.selectToolDrawingLine('wall');else {
|
|
1159
1204
|
props.projectActions.setMode(MODE_IDLE);
|
|
1160
1205
|
props.linesActions.selectToolDrawingLine('wall');
|
|
1161
1206
|
}
|
|
1162
|
-
return
|
|
1207
|
+
return _context1.abrupt("continue", 43);
|
|
1163
1208
|
case 9:
|
|
1164
1209
|
if (isEmpty(evt === null || evt === void 0 ? void 0 : evt.payload)) {
|
|
1165
|
-
|
|
1210
|
+
_context1.next = 11;
|
|
1166
1211
|
break;
|
|
1167
1212
|
}
|
|
1168
|
-
element = evt.payload;
|
|
1169
|
-
|
|
1213
|
+
element = evt.payload; ///// filter the tempPlaceholders using layer-doorstyle-cds
|
|
1214
|
+
cds = (_state$getIn = state.getIn(['scene', 'layers', 'layer-1', 'doorStyle'])) === null || _state$getIn === void 0 ? void 0 : _state$getIn.cds;
|
|
1215
|
+
if (cds) {
|
|
1216
|
+
currentCdsId = (_cds$find = cds.find(function (c) {
|
|
1217
|
+
return c.itemID === element.itemID;
|
|
1218
|
+
})) === null || _cds$find === void 0 ? void 0 : _cds$find.cabinet_door_style_id;
|
|
1219
|
+
if (currentCdsId && element.structure_json.tempPlaceholders.length > 0) {
|
|
1220
|
+
element.structure_json.tempPlaceholders[0] = element.structure_json.tempPlaceholders.find(function (tPlaceholder) {
|
|
1221
|
+
return tPlaceholder.id === currentCdsId;
|
|
1222
|
+
});
|
|
1223
|
+
}
|
|
1224
|
+
}
|
|
1225
|
+
/////
|
|
1226
|
+
_context1.next = 10;
|
|
1170
1227
|
return addItemToCatalog(element, state, props.catalog, props.projectActions);
|
|
1171
1228
|
case 10:
|
|
1172
1229
|
// start drawing item
|
|
@@ -1190,97 +1247,190 @@ function _handleExternalEvent() {
|
|
|
1190
1247
|
props.projectActions.pushLastSelectedCatalogElementToHistory(element);
|
|
1191
1248
|
props.projectActions.setIsCabinetDrawing(true);
|
|
1192
1249
|
case 11:
|
|
1193
|
-
return
|
|
1250
|
+
return _context1.abrupt("continue", 43);
|
|
1194
1251
|
case 12:
|
|
1195
1252
|
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);
|
|
1196
|
-
return
|
|
1253
|
+
return _context1.abrupt("continue", 43);
|
|
1197
1254
|
case 13:
|
|
1198
|
-
|
|
1199
|
-
return
|
|
1255
|
+
moveAndRotatePan2D3D(evt.type, props, evt.payload, state);
|
|
1256
|
+
return _context1.abrupt("continue", 43);
|
|
1200
1257
|
case 14:
|
|
1201
1258
|
defaulTitle = 'Untitle';
|
|
1202
1259
|
props.projectActions.newProject();
|
|
1203
1260
|
props.projectActions.rename(defaulTitle);
|
|
1204
|
-
return
|
|
1261
|
+
return _context1.abrupt("continue", 43);
|
|
1205
1262
|
case 15:
|
|
1206
|
-
_evt$payload5 = evt.payload, doorStyle = _evt$payload5.doorStyle, itemCDS = _evt$payload5.itemCDS, isAll = _evt$payload5.isAll;
|
|
1207
|
-
|
|
1208
|
-
|
|
1263
|
+
_evt$payload5 = evt.payload, doorStyle = _evt$payload5.doorStyle, itemCDS = _evt$payload5.itemCDS, isAll = _evt$payload5.isAll; // prepare item data request
|
|
1264
|
+
_layerId = state.getIn(['scene', 'selectedLayer']);
|
|
1265
|
+
_cdsItems = [];
|
|
1266
|
+
allItems = state.getIn(['scene', 'layers', _layerId, 'items']).toJS();
|
|
1267
|
+
selectedItemId = state.getIn(['scene', 'layers', _layerId]).selected.items.toJS()[0];
|
|
1268
|
+
_itemKeys = isAll ? (_Object$keys = Object.keys(allItems)) !== null && _Object$keys !== void 0 ? _Object$keys : [] : [selectedItemId];
|
|
1269
|
+
_loop4 = /*#__PURE__*/_regeneratorRuntime.mark(function _loop4() {
|
|
1270
|
+
var _itemCDS$find;
|
|
1271
|
+
var item, cdsId;
|
|
1272
|
+
return _regeneratorRuntime.wrap(function (_context0) {
|
|
1273
|
+
while (1) switch (_context0.prev = _context0.next) {
|
|
1274
|
+
case 0:
|
|
1275
|
+
item = allItems[_itemKeys[_i2]];
|
|
1276
|
+
cdsId = (_itemCDS$find = itemCDS.find(function (itCDS) {
|
|
1277
|
+
return itCDS.itemID === item.itemID;
|
|
1278
|
+
})) === null || _itemCDS$find === void 0 ? void 0 : _itemCDS$find.cabinet_door_style_id;
|
|
1279
|
+
if (cdsId && !_cdsItems.some(function (v) {
|
|
1280
|
+
return item.itemID === v.itemID && item.name === v.name && cdsId === v.cdsId;
|
|
1281
|
+
})) _cdsItems.push({
|
|
1282
|
+
itemID: item.itemID,
|
|
1283
|
+
prototype: item.prototype,
|
|
1284
|
+
category: item.category,
|
|
1285
|
+
name: item.name,
|
|
1286
|
+
type: item.type,
|
|
1287
|
+
sku_number: item.sku_number,
|
|
1288
|
+
cdsId: cdsId
|
|
1289
|
+
});
|
|
1290
|
+
case 1:
|
|
1291
|
+
case "end":
|
|
1292
|
+
return _context0.stop();
|
|
1293
|
+
}
|
|
1294
|
+
}, _loop4);
|
|
1295
|
+
});
|
|
1296
|
+
_i2 = 0;
|
|
1209
1297
|
case 16:
|
|
1298
|
+
if (!(_i2 < _itemKeys.length)) {
|
|
1299
|
+
_context1.next = 18;
|
|
1300
|
+
break;
|
|
1301
|
+
}
|
|
1302
|
+
return _context1.delegateYield(_loop4(), "t1", 17);
|
|
1303
|
+
case 17:
|
|
1304
|
+
_i2++;
|
|
1305
|
+
_context1.next = 16;
|
|
1306
|
+
break;
|
|
1307
|
+
case 18:
|
|
1308
|
+
// request item catalog data to host app
|
|
1309
|
+
if (_cdsItems.length > 0) {
|
|
1310
|
+
(_props$onInternalEven2 = props.onInternalEvent) === null || _props$onInternalEven2 === void 0 || _props$onInternalEven2.call(props, {
|
|
1311
|
+
type: INTERNAL_EVENT_ITEMS_CATALOG,
|
|
1312
|
+
value: {
|
|
1313
|
+
cdsItems: _cdsItems
|
|
1314
|
+
}
|
|
1315
|
+
}, /*#__PURE__*/function () {
|
|
1316
|
+
var _ref3 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee8(result) {
|
|
1317
|
+
var _i3, _result$elements2;
|
|
1318
|
+
return _regeneratorRuntime.wrap(function (_context9) {
|
|
1319
|
+
while (1) switch (_context9.prev = _context9.next) {
|
|
1320
|
+
case 0:
|
|
1321
|
+
_i3 = 0;
|
|
1322
|
+
case 1:
|
|
1323
|
+
if (!(_i3 < (result === null || result === void 0 || (_result$elements2 = result.elements) === null || _result$elements2 === void 0 ? void 0 : _result$elements2.length))) {
|
|
1324
|
+
_context9.next = 3;
|
|
1325
|
+
break;
|
|
1326
|
+
}
|
|
1327
|
+
_context9.next = 2;
|
|
1328
|
+
return addItemToCatalog(result.elements[_i3], state, props.catalog, props.projectActions);
|
|
1329
|
+
case 2:
|
|
1330
|
+
_i3++;
|
|
1331
|
+
_context9.next = 1;
|
|
1332
|
+
break;
|
|
1333
|
+
case 3:
|
|
1334
|
+
props.itemsActions.setDoorStyle(doorStyle, itemCDS, isAll);
|
|
1335
|
+
case 4:
|
|
1336
|
+
case "end":
|
|
1337
|
+
return _context9.stop();
|
|
1338
|
+
}
|
|
1339
|
+
}, _callee8);
|
|
1340
|
+
}));
|
|
1341
|
+
return function (_x12) {
|
|
1342
|
+
return _ref3.apply(this, arguments);
|
|
1343
|
+
};
|
|
1344
|
+
}());
|
|
1345
|
+
} else props.itemsActions.setDoorStyle(doorStyle, itemCDS, isAll);
|
|
1346
|
+
return _context1.abrupt("continue", 43);
|
|
1347
|
+
case 19:
|
|
1210
1348
|
_evt$payload6 = evt.payload, roomShapeType = _evt$payload6.roomShapeType, width = _evt$payload6.width, height = _evt$payload6.height, _doorStyle = _evt$payload6.doorStyle;
|
|
1211
1349
|
props.projectActions.createRoomWithShape(roomShapeType, width, height, _doorStyle);
|
|
1212
|
-
return
|
|
1213
|
-
case
|
|
1350
|
+
return _context1.abrupt("continue", 43);
|
|
1351
|
+
case 20:
|
|
1214
1352
|
value = state.getIn(['viewer2D']).toJS();
|
|
1215
1353
|
value.a += 0.1;
|
|
1216
1354
|
value.d += 0.1;
|
|
1217
1355
|
value.e -= value.SVGWidth * 0.1 / 2;
|
|
1218
1356
|
value.f -= value.SVGHeight * 0.1 / 2;
|
|
1219
1357
|
updateViwer2D(value, props.viewer2DActions);
|
|
1220
|
-
return
|
|
1221
|
-
case
|
|
1358
|
+
return _context1.abrupt("continue", 43);
|
|
1359
|
+
case 21:
|
|
1222
1360
|
_value = state.getIn(['viewer2D']).toJS();
|
|
1223
1361
|
_value.a -= 0.1;
|
|
1224
1362
|
_value.d -= 0.1;
|
|
1225
1363
|
_value.e += _value.SVGWidth * 0.1 / 2;
|
|
1226
1364
|
_value.f += _value.SVGHeight * 0.1 / 2;
|
|
1227
1365
|
updateViwer2D(_value, props.viewer2DActions);
|
|
1228
|
-
return
|
|
1229
|
-
case
|
|
1366
|
+
return _context1.abrupt("continue", 43);
|
|
1367
|
+
case 22:
|
|
1230
1368
|
centering2D(state, props.viewer2DActions);
|
|
1231
|
-
return
|
|
1232
|
-
case
|
|
1369
|
+
return _context1.abrupt("continue", 43);
|
|
1370
|
+
case 23:
|
|
1233
1371
|
props.projectActions.undo();
|
|
1234
|
-
return
|
|
1235
|
-
case
|
|
1372
|
+
return _context1.abrupt("continue", 43);
|
|
1373
|
+
case 24:
|
|
1236
1374
|
props.projectActions.redo();
|
|
1237
|
-
return
|
|
1238
|
-
case
|
|
1375
|
+
return _context1.abrupt("continue", 43);
|
|
1376
|
+
case 25:
|
|
1239
1377
|
_evt$payload7 = evt.payload, moldingInfo = _evt$payload7.moldingInfo, isGlobal = _evt$payload7.isGlobal;
|
|
1240
|
-
|
|
1378
|
+
_context1.next = 26;
|
|
1241
1379
|
return loadMoldingSvg(moldingInfo);
|
|
1242
|
-
case
|
|
1380
|
+
case 26:
|
|
1243
1381
|
props.itemsActions.setMolding(moldingInfo, isGlobal);
|
|
1244
|
-
return
|
|
1245
|
-
case
|
|
1382
|
+
return _context1.abrupt("continue", 43);
|
|
1383
|
+
case 27:
|
|
1246
1384
|
distElement = getElement(evt.payload, state);
|
|
1247
1385
|
if (distElement) props.itemsActions.duplicateSelected(distElement, props.onInternalEvent);
|
|
1248
|
-
return
|
|
1249
|
-
case
|
|
1386
|
+
return _context1.abrupt("continue", 43);
|
|
1387
|
+
case 28:
|
|
1250
1388
|
_distElement = getElement(evt.payload, state);
|
|
1251
1389
|
if (_distElement) props.projectActions.remove(_distElement);
|
|
1252
|
-
return
|
|
1253
|
-
case
|
|
1390
|
+
return _context1.abrupt("continue", 43);
|
|
1391
|
+
case 29:
|
|
1254
1392
|
_evt$payload8 = evt.payload, option = _evt$payload8.option, _value2 = _evt$payload8.value;
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
return
|
|
1276
|
-
case
|
|
1393
|
+
_t6 = option;
|
|
1394
|
+
_context1.next = _t6 === PROJECT_SETTING_OPTION.CHANGE_MEASUREMENT_UNIT ? 30 : _t6 === PROJECT_SETTING_OPTION.UPDATE_CEIL_HEIGHT ? 31 : _t6 === PROJECT_SETTING_OPTION.CHANGE_WALL_LENGTH_MEASURE ? 32 : _t6 === PROJECT_SETTING_OPTION.CHANGE_BASE_CABINET_MEASURE ? 33 : _t6 === PROJECT_SETTING_OPTION.CHANGE_WALL_CABINET_MEASURE ? 34 : _t6 === PROJECT_SETTING_OPTION.CHANGE_WINDOW_DOOR_MEASURE ? 35 : 36;
|
|
1395
|
+
break;
|
|
1396
|
+
case 30:
|
|
1397
|
+
props.viewer2DActions.updateCeilHeightUnit(_value2);
|
|
1398
|
+
case 31:
|
|
1399
|
+
props.viewer2DActions.updateCeilHeight(_value2);
|
|
1400
|
+
props.viewer3DActions.update3DCeilHeight(_value2);
|
|
1401
|
+
return _context1.abrupt("continue", 37);
|
|
1402
|
+
case 32:
|
|
1403
|
+
props.viewer2DActions.changeWallLengthMeasure(_value2);
|
|
1404
|
+
return _context1.abrupt("continue", 37);
|
|
1405
|
+
case 33:
|
|
1406
|
+
props.viewer2DActions.changeBaseCabinetMeasure(_value2);
|
|
1407
|
+
return _context1.abrupt("continue", 37);
|
|
1408
|
+
case 34:
|
|
1409
|
+
props.viewer2DActions.changeWallCabinetMeasure(_value2);
|
|
1410
|
+
return _context1.abrupt("continue", 37);
|
|
1411
|
+
case 35:
|
|
1412
|
+
props.viewer2DActions.changeWindowDoorMeasure(_value2);
|
|
1413
|
+
return _context1.abrupt("continue", 37);
|
|
1414
|
+
case 36:
|
|
1415
|
+
return _context1.abrupt("continue", 37);
|
|
1416
|
+
case 37:
|
|
1417
|
+
return _context1.abrupt("continue", 43);
|
|
1418
|
+
case 38:
|
|
1419
|
+
_layerId2 = state.getIn(['scene', 'selectedLayer']);
|
|
1420
|
+
_layer = state.getIn(['scene', 'layers', _layerId2]);
|
|
1421
|
+
_layer$getIn = _layer.getIn(['selected']), selectedLines = _layer$getIn.lines, selectedHoles = _layer$getIn.holes, selectedItems = _layer$getIn.items;
|
|
1422
|
+
for (_i4 = 0; _i4 < selectedLines.size; _i4++) (evt === null || evt === void 0 ? void 0 : evt.type) === EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? updateAttributeOfSelectedElement(_layer.getIn(['lines', selectedLines.get(_i4)]), evt.payload, state, _layer, props.catalog, props.projectActions, evt.callback) : updatePropertyOfSelectedElement(_layer.getIn(['lines', selectedLines.get(_i4)]), evt.payload, props.catalog, props.projectActions, evt.callback);
|
|
1423
|
+
for (_i5 = 0; _i5 < selectedHoles.size; _i5++) (evt === null || evt === void 0 ? void 0 : evt.type) === EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? updateAttributeOfSelectedElement(_layer.getIn(['holes', selectedHoles.get(_i5)]), evt.payload, state, _layer, props.catalog, props.projectActions, evt.callback) : updatePropertyOfSelectedElement(_layer.getIn(['holes', selectedHoles.get(_i5)]), evt.payload, props.catalog, props.projectActions, evt.callback);
|
|
1424
|
+
for (_i6 = 0; _i6 < selectedItems.size; _i6++) (evt === null || evt === void 0 ? void 0 : evt.type) === EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? updateAttributeOfSelectedElement(_layer.getIn(['items', selectedItems.get(_i6)]), evt.payload, state, _layer, props.catalog, props.projectActions, evt.callback) : updatePropertyOfSelectedElement(_layer.getIn(['items', selectedItems.get(_i6)]), evt.payload, props.catalog, props.projectActions, evt.callback);
|
|
1425
|
+
return _context1.abrupt("continue", 43);
|
|
1426
|
+
case 39:
|
|
1277
1427
|
_layerID = state.scene.selectedLayer;
|
|
1278
|
-
|
|
1428
|
+
_layer2 = state.scene.getIn(['layers', _layerID]).toJS();
|
|
1279
1429
|
orginalItemInfo = evt === null || evt === void 0 || (_evt$payload9 = evt.payload) === null || _evt$payload9 === void 0 ? void 0 : _evt$payload9.orginalItemInfo;
|
|
1280
|
-
originalItem =
|
|
1281
|
-
|
|
1430
|
+
originalItem = _layer2 === null || _layer2 === void 0 ? void 0 : _layer2.items[orginalItemInfo.id];
|
|
1431
|
+
_context1.next = 40;
|
|
1282
1432
|
return addItemToCatalog(evt.payload.replaceItemInfo, state, props.catalog, props.projectActions);
|
|
1283
|
-
case
|
|
1433
|
+
case 40:
|
|
1284
1434
|
originalItemPos = {
|
|
1285
1435
|
rotation: originalItem.rotation,
|
|
1286
1436
|
selectedItemId: originalItem.id,
|
|
@@ -1295,23 +1445,27 @@ function _handleExternalEvent() {
|
|
|
1295
1445
|
}
|
|
1296
1446
|
};
|
|
1297
1447
|
props.itemsActions.replaceItem(originalItemPos, originalItem, replaceItem);
|
|
1298
|
-
return
|
|
1299
|
-
case
|
|
1448
|
+
return _context1.abrupt("continue", 43);
|
|
1449
|
+
case 41:
|
|
1300
1450
|
setFinishing(props, state, evt.payload);
|
|
1301
|
-
|
|
1451
|
+
return _context1.abrupt("continue", 43);
|
|
1452
|
+
case 42:
|
|
1453
|
+
sceneData = state.scene.toJS(); // get molding data for "ReviewForQuote"
|
|
1454
|
+
currentTexture = layer.doorStyle !== null || layer.doorStyle !== undefined ? layer.doorStyle : props.state.doorStyle.toJS();
|
|
1455
|
+
sceneData.layers[layerId].moldingData = getMoldingDataOfScene(layer, props.catalog, currentTexture);
|
|
1302
1456
|
// send scene object from 3DTool to HostApp using internalEvent
|
|
1303
|
-
(_props$
|
|
1457
|
+
(_props$onInternalEven3 = props.onInternalEvent) === null || _props$onInternalEven3 === void 0 || _props$onInternalEven3.call(props, {
|
|
1304
1458
|
type: INTERNAL_EVENT_SYNC_SCENE,
|
|
1305
1459
|
value: {
|
|
1306
|
-
scene:
|
|
1460
|
+
scene: sceneData
|
|
1307
1461
|
}
|
|
1308
1462
|
});
|
|
1309
|
-
return
|
|
1310
|
-
case
|
|
1463
|
+
return _context1.abrupt("continue", 43);
|
|
1464
|
+
case 43:
|
|
1311
1465
|
case "end":
|
|
1312
|
-
return
|
|
1466
|
+
return _context1.stop();
|
|
1313
1467
|
}
|
|
1314
|
-
},
|
|
1468
|
+
}, _callee9);
|
|
1315
1469
|
}));
|
|
1316
1470
|
return _handleExternalEvent.apply(this, arguments);
|
|
1317
1471
|
}
|