kitchen-simulator 2.0.10 → 2.0.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/actions/project-actions.js +3 -1
- package/es/class/project.js +53 -21
- package/es/constants.js +10 -1
- package/es/devLiteRenderer.js +30 -4
- package/es/reducers/project-reducer.js +1 -1
- package/es/utils/isolate-event-handler.js +85 -31
- package/lib/actions/project-actions.js +3 -1
- package/lib/class/project.js +53 -21
- package/lib/constants.js +15 -6
- package/lib/devLiteRenderer.js +29 -3
- package/lib/reducers/project-reducer.js +1 -1
- package/lib/utils/isolate-event-handler.js +84 -30
- package/package.json +1 -1
|
@@ -98,8 +98,10 @@ export function setHolesAttributes(holesAttributes) {
|
|
|
98
98
|
};
|
|
99
99
|
}
|
|
100
100
|
export function remove() {
|
|
101
|
+
var delObject = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
|
|
101
102
|
return {
|
|
102
|
-
type: REMOVE
|
|
103
|
+
type: REMOVE,
|
|
104
|
+
delObject: delObject
|
|
103
105
|
};
|
|
104
106
|
}
|
|
105
107
|
export function undo() {
|
package/es/class/project.js
CHANGED
|
@@ -58,6 +58,7 @@ var Project = /*#__PURE__*/function () {
|
|
|
58
58
|
}, {
|
|
59
59
|
key: "loadProject",
|
|
60
60
|
value: function loadProject(state, sceneJSON) {
|
|
61
|
+
var _sceneJSON$layers$lay;
|
|
61
62
|
var doorStyle = state.doorStyle;
|
|
62
63
|
var layerID = state.scene.selectedLayer;
|
|
63
64
|
var _viewer2D = state.viewer2D;
|
|
@@ -90,6 +91,14 @@ var Project = /*#__PURE__*/function () {
|
|
|
90
91
|
for (var x in json_items) {
|
|
91
92
|
_loop(x);
|
|
92
93
|
}
|
|
94
|
+
|
|
95
|
+
// making layer's doorStyle when changing room shape
|
|
96
|
+
if (isEmpty(sceneJSON === null || sceneJSON === void 0 || (_sceneJSON$layers$lay = sceneJSON.layers[layerID]) === null || _sceneJSON$layers$lay === void 0 ? void 0 : _sceneJSON$layers$lay.doorStyle)) {
|
|
97
|
+
var newlayer = _objectSpread(_objectSpread({}, sceneJSON === null || sceneJSON === void 0 ? void 0 : sceneJSON.layers[layerID]), {}, {
|
|
98
|
+
doorStyle: doorStyle.toJS()
|
|
99
|
+
});
|
|
100
|
+
sceneJSON && (sceneJSON.layers[layerID] = newlayer);
|
|
101
|
+
}
|
|
93
102
|
var newScene = new Scene(sceneJSON);
|
|
94
103
|
state = new State({
|
|
95
104
|
scene: newScene.toJS(),
|
|
@@ -151,10 +160,10 @@ var Project = /*#__PURE__*/function () {
|
|
|
151
160
|
f: f
|
|
152
161
|
});
|
|
153
162
|
}
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
163
|
+
|
|
164
|
+
// Matching state.doorStyle with layer.doorStyle
|
|
165
|
+
if (state.getIn(['scene', 'layers', layerID, 'doorStyle'])) {
|
|
166
|
+
doorStyle = state.getIn(['scene', 'layers', layerID, 'doorStyle']);
|
|
158
167
|
}
|
|
159
168
|
state = state.merge({
|
|
160
169
|
doorStyle: doorStyle,
|
|
@@ -294,29 +303,52 @@ var Project = /*#__PURE__*/function () {
|
|
|
294
303
|
}
|
|
295
304
|
}, {
|
|
296
305
|
key: "remove",
|
|
297
|
-
value: function remove(state) {
|
|
306
|
+
value: function remove(state, delObject) {
|
|
298
307
|
var selectedLayer = state.getIn(['scene', 'selectedLayer']);
|
|
299
308
|
var _state$getIn = state.getIn(['scene', 'layers', selectedLayer, 'selected']),
|
|
300
309
|
selectedLines = _state$getIn.lines,
|
|
301
310
|
selectedHoles = _state$getIn.holes,
|
|
302
311
|
selectedItems = _state$getIn.items;
|
|
303
|
-
var allVertices = state.getIn(['scene', 'layers', selectedLayer, 'vertices']).toJS();
|
|
304
|
-
var selLines = state.getIn(['scene', 'layers', selectedLayer, 'selected', 'lines']).toJS();
|
|
305
|
-
var lineID = selLines[0];
|
|
306
|
-
var delLine = !isEmpty(lineID) && state.getIn(['scene', 'layers', selectedLayer, 'lines', lineID]).toJS();
|
|
307
|
-
var allLines = state.getIn(['scene', 'layers', selectedLayer, 'lines']).toJS();
|
|
308
312
|
var relatedLines = [];
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
}
|
|
319
|
-
|
|
313
|
+
|
|
314
|
+
// if deleting element is line then get the related lines that to update walls
|
|
315
|
+
if (delObject && delObject.prototype === constants.ELEMENT_LINE || isEmpty(delObject) && !isEmpty(selectedLines)) {
|
|
316
|
+
var allVertices = state.getIn(['scene', 'layers', selectedLayer, 'vertices']).toJS();
|
|
317
|
+
var selLines = state.getIn(['scene', 'layers', selectedLayer, 'selected', constants.ELEMENT_LINE]).toJS();
|
|
318
|
+
var curSelLineID = (delObject === null || delObject === void 0 ? void 0 : delObject.prototype) === constants.ELEMENT_LINE ? delObject.id : selLines[0];
|
|
319
|
+
var delLine = !isEmpty(curSelLineID) && state.getIn(['scene', 'layers', selectedLayer, 'lines', curSelLineID]).toJS();
|
|
320
|
+
var allLines = state.getIn(['scene', 'layers', selectedLayer, 'lines']).toJS();
|
|
321
|
+
!isEmpty(delLine) && GeometryUtils.getRelatedLines(relatedLines, delLine, allVertices, allLines);
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
// delete element
|
|
325
|
+
if (delObject) {
|
|
326
|
+
switch (delObject.prototype) {
|
|
327
|
+
case constants.ELEMENT_LINE:
|
|
328
|
+
state = Line.remove(state, selectedLayer, delObject.id).updatedState;
|
|
329
|
+
break;
|
|
330
|
+
case constants.ELEMENT_HOLE:
|
|
331
|
+
state = Hole.remove(state, selectedLayer, delObject.id).updatedState;
|
|
332
|
+
break;
|
|
333
|
+
case constants.ELEMENT_ITEM:
|
|
334
|
+
state = Item.remove(state, selectedLayer, delObject.id).updatedState;
|
|
335
|
+
break;
|
|
336
|
+
}
|
|
337
|
+
} else {
|
|
338
|
+
// no specified object, then remove all selected elements
|
|
339
|
+
selectedLines.forEach(function (lineID) {
|
|
340
|
+
state = Line.remove(state, selectedLayer, lineID).updatedState;
|
|
341
|
+
});
|
|
342
|
+
selectedHoles.forEach(function (holeID) {
|
|
343
|
+
state = Hole.remove(state, selectedLayer, holeID).updatedState;
|
|
344
|
+
});
|
|
345
|
+
selectedItems.forEach(function (itemID) {
|
|
346
|
+
state = Item.remove(state, selectedLayer, itemID).updatedState;
|
|
347
|
+
});
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
// update wall if line removed
|
|
351
|
+
if (!isEmpty(relatedLines)) {
|
|
320
352
|
state = state.setIn(['mode'], MODE_DRAWING_LINE);
|
|
321
353
|
relatedLines.forEach(function (relLine, index) {
|
|
322
354
|
state = Line.select(state, selectedLayer, relLine.id).updatedState;
|
package/es/constants.js
CHANGED
|
@@ -675,6 +675,12 @@ export var RIGHT_DIST_ANG = 180;
|
|
|
675
675
|
export var BACK_DIST_ANG = 90;
|
|
676
676
|
export var FRONT_DIST_ANG = -90;
|
|
677
677
|
|
|
678
|
+
// element prototype
|
|
679
|
+
export var ELEMENT_LINE = 'lines';
|
|
680
|
+
export var ELEMENT_HOLE = 'holes';
|
|
681
|
+
export var ELEMENT_ITEM = 'items';
|
|
682
|
+
export var ELEMENT_AREA = 'areas';
|
|
683
|
+
export var ELEMENT_VERTEX = 'vertices';
|
|
678
684
|
// element attributes
|
|
679
685
|
export var ATT_ITEM_POS = 'pos';
|
|
680
686
|
export var ATT_ITEM_ROTATION = 'rotation';
|
|
@@ -712,9 +718,12 @@ export var EXTERNAL_EVENT_UNDO = 'EXTERNAL_EVENT_UNDO';
|
|
|
712
718
|
export var EXTERNAL_EVENT_REDO = 'EXTERNAL_EVENT_REDO';
|
|
713
719
|
export var EXTERNAL_EVENT_SET_MOLDING = 'EXTERNAL_EVENT_SET_MOLDING';
|
|
714
720
|
export var EXTERNAL_EVENT_PROJECT_SETTING = 'EXTERNAL_EVENT_PROJECT_SETTING'; // project setting event
|
|
721
|
+
export var EXTERNAL_EVENT_CENTERING_2D = 'EXTERNAL_EVENT_CENTERING_2D';
|
|
722
|
+
export var EXTERNAL_EVENT_DUPLICATE_ELEMENT = 'EXTERNAL_EVENT_DUPLICATE_ELEMENT';
|
|
723
|
+
export var EXTERNAL_EVENT_DELETE_ELEMENT = 'EXTERNAL_EVENT_DELETE_ELEMENT';
|
|
715
724
|
export var EXTERNAL_EVENT_UPDATE_ATTRIBUTE = 'EXTERNAL_EVENT_UPDATE_ATTRIBUTE'; // update the element's attributes (distance, rotation...) in the property window
|
|
716
725
|
export var EXTERNAL_EVENT_UPDATE_PROPERTY = 'EXTERNAL_EVENT_UPDATE_PROPERTY'; // update the element's property (flip_doorhandle, open_doors...) in the property window
|
|
717
|
-
|
|
726
|
+
|
|
718
727
|
// internal event type
|
|
719
728
|
export var INTERNAL_EVENT_UNSELECT_ALL = 'INTERNAL_EVENT_UNSELECT_ALL';
|
|
720
729
|
export var INTERNAL_EVENT_SELECT_ELEMENT = 'INTERNAL_EVENT_SELECT_ELEMENT';
|
package/es/devLiteRenderer.js
CHANGED
|
@@ -15,7 +15,7 @@ import moldingPayload from "./mocks/moldingPayload.json";
|
|
|
15
15
|
import ReactDOM from 'react-dom';
|
|
16
16
|
import LiteRenderer from "./LiteRenderer";
|
|
17
17
|
import { Button } from 'antd';
|
|
18
|
-
import { LEFT, RIGHT, TOP, BOTTOM, EXTERNAL_EVENT_ADD_ITEM, EXTERNAL_EVENT_ADD_WALL, EXTERNAL_EVENT_TOGGLE_TO_3D, EXTERNAL_EVENT_TOGGLE_TO_2D, EXTERNAL_EVENT_TOGGLE_TO_ELEVATION, EXTERNAL_EVENT_MOVE_PAN, 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, EXTERNAL_EVENT_UNDO, EXTERNAL_EVENT_REDO, EXTERNAL_EVENT_SET_MOLDING, EXTERNAL_EVENT_PROJECT_SETTING, PROJECT_SETTING_OPTION, EXTERNAL_EVENT_SYNC_SCENE, EXTERNAL_EVENT_UPDATE_ATTRIBUTE, BACK_DIST_ANG, ATT_ITEM_POS, ATT_ITEM_ROTATION, ATT_LINE_LENGTH, EXTERNAL_EVENT_UPDATE_PROPERTY, PROP_FLIP_DOOR_HANDLE, PROP_OPEN_DOORS, EXTERNAL_EVENT_LOAD_PROJECT, INTERNAL_EVENT_ITEMS_CATALOG, EXTERNAL_EVENT_ADD_HOLE, HOLE_NAMES, EXTERNAL_EVENT_CENTERING_2D, PROP_ALTITUDE } from "./constants";
|
|
18
|
+
import { LEFT, RIGHT, TOP, BOTTOM, EXTERNAL_EVENT_ADD_ITEM, EXTERNAL_EVENT_ADD_WALL, EXTERNAL_EVENT_TOGGLE_TO_3D, EXTERNAL_EVENT_TOGGLE_TO_2D, EXTERNAL_EVENT_TOGGLE_TO_ELEVATION, EXTERNAL_EVENT_MOVE_PAN, 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, EXTERNAL_EVENT_UNDO, EXTERNAL_EVENT_REDO, EXTERNAL_EVENT_SET_MOLDING, EXTERNAL_EVENT_PROJECT_SETTING, PROJECT_SETTING_OPTION, EXTERNAL_EVENT_SYNC_SCENE, EXTERNAL_EVENT_UPDATE_ATTRIBUTE, BACK_DIST_ANG, ATT_ITEM_POS, ATT_ITEM_ROTATION, ATT_LINE_LENGTH, EXTERNAL_EVENT_UPDATE_PROPERTY, PROP_FLIP_DOOR_HANDLE, PROP_OPEN_DOORS, EXTERNAL_EVENT_LOAD_PROJECT, INTERNAL_EVENT_ITEMS_CATALOG, EXTERNAL_EVENT_ADD_HOLE, HOLE_NAMES, EXTERNAL_EVENT_CENTERING_2D, PROP_ALTITUDE, EXTERNAL_EVENT_DUPLICATE_ELEMENT, ELEMENT_ITEM, EXTERNAL_EVENT_DELETE_ELEMENT } from "./constants";
|
|
19
19
|
|
|
20
20
|
// --- renderer props ---
|
|
21
21
|
var options = {
|
|
@@ -58,9 +58,7 @@ function WorkSpace(props) {
|
|
|
58
58
|
var evt = {
|
|
59
59
|
type: EXTERNAL_EVENT_SET_INITIAL_DATA,
|
|
60
60
|
payload: {
|
|
61
|
-
doorStyle:
|
|
62
|
-
doorStyle: doorStylePaylod2
|
|
63
|
-
}
|
|
61
|
+
doorStyle: doorStylePaylod2
|
|
64
62
|
}
|
|
65
63
|
};
|
|
66
64
|
setExternalEvent(evt);
|
|
@@ -319,6 +317,10 @@ function WorkSpace(props) {
|
|
|
319
317
|
oldDistance: 0,
|
|
320
318
|
newDistance: 10
|
|
321
319
|
}
|
|
320
|
+
},
|
|
321
|
+
callback: function callback(updatedAttributeForm) {
|
|
322
|
+
console.log(updatedAttributeForm);
|
|
323
|
+
// Do something here with new attributes
|
|
322
324
|
}
|
|
323
325
|
};
|
|
324
326
|
setExternalEvent(evt);
|
|
@@ -391,6 +393,30 @@ function WorkSpace(props) {
|
|
|
391
393
|
setExternalEvent(evt);
|
|
392
394
|
}
|
|
393
395
|
}, "Distance from floor 10\""), /*#__PURE__*/React.createElement(Button, {
|
|
396
|
+
actionType: "danger",
|
|
397
|
+
onClick: function onClick() {
|
|
398
|
+
var evt = {
|
|
399
|
+
type: EXTERNAL_EVENT_DUPLICATE_ELEMENT,
|
|
400
|
+
payload: {
|
|
401
|
+
elementPrototype: ELEMENT_ITEM,
|
|
402
|
+
elementId: '' // id of current operating element
|
|
403
|
+
}
|
|
404
|
+
};
|
|
405
|
+
setExternalEvent(evt);
|
|
406
|
+
}
|
|
407
|
+
}, "Duplicate Item"), /*#__PURE__*/React.createElement(Button, {
|
|
408
|
+
actionType: "danger",
|
|
409
|
+
onClick: function onClick() {
|
|
410
|
+
var evt = {
|
|
411
|
+
type: EXTERNAL_EVENT_DELETE_ELEMENT,
|
|
412
|
+
payload: {
|
|
413
|
+
elementPrototype: ELEMENT_ITEM,
|
|
414
|
+
elementId: '' // id of current operating element
|
|
415
|
+
}
|
|
416
|
+
};
|
|
417
|
+
setExternalEvent(evt);
|
|
418
|
+
}
|
|
419
|
+
}, "Delete Item"), /*#__PURE__*/React.createElement(Button, {
|
|
394
420
|
actionType: "danger",
|
|
395
421
|
onClick: function onClick() {
|
|
396
422
|
var evt = {
|
|
@@ -43,7 +43,7 @@ export default function (state, action) {
|
|
|
43
43
|
state = state.merge({
|
|
44
44
|
sceneHistory: history.historyPush(state.sceneHistory, state.scene)
|
|
45
45
|
});
|
|
46
|
-
return Project.remove(state).updatedState;
|
|
46
|
+
return Project.remove(state, action.delObject).updatedState;
|
|
47
47
|
case UNDO:
|
|
48
48
|
return Project.undo(state).updatedState;
|
|
49
49
|
case REDO:
|
|
@@ -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 } 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 } 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";
|
|
@@ -675,6 +675,8 @@ function initPropData(element, catalog) {
|
|
|
675
675
|
return new Map(mapped);
|
|
676
676
|
}
|
|
677
677
|
function updateAttributeOfSelectedElement(element, attrPayload, state, layer, projectActions) {
|
|
678
|
+
var _attributesFormData;
|
|
679
|
+
var callback = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
|
|
678
680
|
var attributesFormData = initAttrData(element, layer, state);
|
|
679
681
|
var value = attrPayload.value;
|
|
680
682
|
var attributeName = attrPayload.attributeName;
|
|
@@ -874,10 +876,15 @@ function updateAttributeOfSelectedElement(element, attrPayload, state, layer, pr
|
|
|
874
876
|
break;
|
|
875
877
|
}
|
|
876
878
|
}
|
|
879
|
+
|
|
880
|
+
// invoke callback
|
|
881
|
+
if (callback) callback((_attributesFormData = attributesFormData) === null || _attributesFormData === void 0 ? void 0 : _attributesFormData.toJS());
|
|
877
882
|
}
|
|
878
883
|
function updatePropertyOfSelectedElement(element, propertyPayload, catalog,
|
|
879
884
|
// class instance of Catalog, get from props
|
|
880
885
|
projectActions) {
|
|
886
|
+
var _propertiesFormData;
|
|
887
|
+
var callback = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
|
|
881
888
|
var propertiesFormData = initPropData(element, catalog);
|
|
882
889
|
var value = propertyPayload.value;
|
|
883
890
|
var propertyName = propertyPayload.propertyName;
|
|
@@ -895,6 +902,45 @@ projectActions) {
|
|
|
895
902
|
});
|
|
896
903
|
projectActions.setProperties(properties);
|
|
897
904
|
}
|
|
905
|
+
|
|
906
|
+
// invoke callback
|
|
907
|
+
if (callback) callback((_propertiesFormData = propertiesFormData) === null || _propertiesFormData === void 0 ? void 0 : _propertiesFormData.toJS());
|
|
908
|
+
}
|
|
909
|
+
function getElement(objProps, state) {
|
|
910
|
+
var layerID = state.scene.selectedLayer;
|
|
911
|
+
var curObject = null;
|
|
912
|
+
if (!isEmpty(objProps === null || objProps === void 0 ? void 0 : objProps.elementPrototype) && !isEmpty(objProps === null || objProps === void 0 ? void 0 : objProps.elementId)) curObject = state.getIn(['scene', 'layers', layerID, objProps.elementPrototype, objProps.elementId]);else {
|
|
913
|
+
// if no specified object property then get the first selected element
|
|
914
|
+
var layer = state.scene.layers.get(state.scene.selectedLayer);
|
|
915
|
+
var selected = [];
|
|
916
|
+
layer.selected.forEach(function (data, prototype) {
|
|
917
|
+
if (prototype == 'vertices') return;
|
|
918
|
+
if (data.size > 0) {
|
|
919
|
+
var values = data.toJS();
|
|
920
|
+
for (var i = 0; i < values.length; i++) {
|
|
921
|
+
selected.push({
|
|
922
|
+
type: prototype,
|
|
923
|
+
id: values[i]
|
|
924
|
+
});
|
|
925
|
+
}
|
|
926
|
+
}
|
|
927
|
+
});
|
|
928
|
+
if (selected.length === 1) {
|
|
929
|
+
var selData = selected[0];
|
|
930
|
+
switch (selData.type) {
|
|
931
|
+
case ELEMENT_HOLE:
|
|
932
|
+
curObject = layer.holes.get(selData.id);
|
|
933
|
+
break;
|
|
934
|
+
case ELEMENT_ITEM:
|
|
935
|
+
curObject = layer.items.get(selData.id);
|
|
936
|
+
break;
|
|
937
|
+
case ELEMENT_LINE:
|
|
938
|
+
curObject = layer.lines.get(selData.id);
|
|
939
|
+
break;
|
|
940
|
+
}
|
|
941
|
+
}
|
|
942
|
+
}
|
|
943
|
+
return curObject;
|
|
898
944
|
}
|
|
899
945
|
export function handleExternalEvent(_x1) {
|
|
900
946
|
return _handleExternalEvent.apply(this, arguments);
|
|
@@ -902,7 +948,7 @@ export function handleExternalEvent(_x1) {
|
|
|
902
948
|
function _handleExternalEvent() {
|
|
903
949
|
_handleExternalEvent = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee7(props) {
|
|
904
950
|
var _evt$payload3, _evt$payload4;
|
|
905
|
-
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, _evt$payload8, option, _value3, layerId, _layer, _layer$getIn, selectedLines, selectedHoles, selectedItems, _i2, _i3, _i4, _props$onInternalEven2, _t5, _t6;
|
|
951
|
+
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;
|
|
906
952
|
return _regeneratorRuntime.wrap(function (_context8) {
|
|
907
953
|
while (1) switch (_context8.prev = _context8.next) {
|
|
908
954
|
case 0:
|
|
@@ -910,7 +956,7 @@ function _handleExternalEvent() {
|
|
|
910
956
|
evt = props.externalEvent;
|
|
911
957
|
state = props.state.get('KitchenConfigurator');
|
|
912
958
|
_t5 = evt === null || evt === void 0 ? void 0 : evt.type;
|
|
913
|
-
_context8.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 ===
|
|
959
|
+
_context8.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 ? 29 : _t5 === EXTERNAL_EVENT_DELETE_ELEMENT ? 30 : _t5 === EXTERNAL_EVENT_PROJECT_SETTING ? 31 : _t5 === EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? 32 : _t5 === EXTERNAL_EVENT_UPDATE_PROPERTY ? 32 : _t5 === EXTERNAL_EVENT_SYNC_SCENE ? 33 : 34;
|
|
914
960
|
break;
|
|
915
961
|
case 1:
|
|
916
962
|
// prepare item data request
|
|
@@ -986,23 +1032,23 @@ function _handleExternalEvent() {
|
|
|
986
1032
|
};
|
|
987
1033
|
}());
|
|
988
1034
|
}
|
|
989
|
-
return _context8.abrupt("continue",
|
|
1035
|
+
return _context8.abrupt("continue", 34);
|
|
990
1036
|
case 5:
|
|
991
1037
|
props.projectActions.setMode(MODE_IDLE_3D);
|
|
992
|
-
return _context8.abrupt("continue",
|
|
1038
|
+
return _context8.abrupt("continue", 34);
|
|
993
1039
|
case 6:
|
|
994
1040
|
props.projectActions.setMode(MODE_IDLE);
|
|
995
|
-
return _context8.abrupt("continue",
|
|
1041
|
+
return _context8.abrupt("continue", 34);
|
|
996
1042
|
case 7:
|
|
997
1043
|
sLineCnt = state.getIn(['scene', 'layers', 'layer-1', 'selected', 'lines']).size;
|
|
998
1044
|
if (sLineCnt > 0) props.projectActions.setMode(MODE_ELEVATION_VIEW);
|
|
999
|
-
return _context8.abrupt("continue",
|
|
1045
|
+
return _context8.abrupt("continue", 34);
|
|
1000
1046
|
case 8:
|
|
1001
1047
|
if (state.mode === MODE_IDLE || state.mode === MODE_2D_PAN) props.linesActions.selectToolDrawingLine('wall');else {
|
|
1002
1048
|
props.projectActions.setMode(MODE_IDLE);
|
|
1003
1049
|
props.linesActions.selectToolDrawingLine('wall');
|
|
1004
1050
|
}
|
|
1005
|
-
return _context8.abrupt("continue",
|
|
1051
|
+
return _context8.abrupt("continue", 34);
|
|
1006
1052
|
case 9:
|
|
1007
1053
|
if (isEmpty(evt === null || evt === void 0 ? void 0 : evt.payload)) {
|
|
1008
1054
|
_context8.next = 11;
|
|
@@ -1033,10 +1079,10 @@ function _handleExternalEvent() {
|
|
|
1033
1079
|
props.projectActions.pushLastSelectedCatalogElementToHistory(element);
|
|
1034
1080
|
props.projectActions.setIsCabinetDrawing(true);
|
|
1035
1081
|
case 11:
|
|
1036
|
-
return _context8.abrupt("continue",
|
|
1082
|
+
return _context8.abrupt("continue", 34);
|
|
1037
1083
|
case 12:
|
|
1038
1084
|
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);
|
|
1039
|
-
return _context8.abrupt("continue",
|
|
1085
|
+
return _context8.abrupt("continue", 34);
|
|
1040
1086
|
case 13:
|
|
1041
1087
|
_evt$payload5 = evt.payload, moveType = _evt$payload5.moveType, moveValue = _evt$payload5.moveValue;
|
|
1042
1088
|
value = state.getIn(['viewer2D']).toJS();
|
|
@@ -1057,23 +1103,23 @@ function _handleExternalEvent() {
|
|
|
1057
1103
|
return _context8.abrupt("continue", 18);
|
|
1058
1104
|
case 18:
|
|
1059
1105
|
updateViwer2D(value, props.viewer2DActions);
|
|
1060
|
-
return _context8.abrupt("continue",
|
|
1106
|
+
return _context8.abrupt("continue", 34);
|
|
1061
1107
|
case 19:
|
|
1062
1108
|
defaulTitle = 'Untitle';
|
|
1063
1109
|
props.projectActions.newProject();
|
|
1064
1110
|
props.projectActions.rename(defaulTitle);
|
|
1065
|
-
return _context8.abrupt("continue",
|
|
1111
|
+
return _context8.abrupt("continue", 34);
|
|
1066
1112
|
case 20:
|
|
1067
1113
|
_evt$payload6 = evt.payload, doorStyle = _evt$payload6.doorStyle, itemCDS = _evt$payload6.itemCDS, isAll = _evt$payload6.isAll;
|
|
1068
1114
|
props.itemsActions.setDoorStyle(doorStyle, itemCDS, isAll);
|
|
1069
|
-
return _context8.abrupt("continue",
|
|
1115
|
+
return _context8.abrupt("continue", 34);
|
|
1070
1116
|
case 21:
|
|
1071
1117
|
_doorStyle = evt.payload.doorStyle;
|
|
1072
|
-
props.itemsActions.setInitialDoorStyle(_doorStyle
|
|
1073
|
-
return _context8.abrupt("continue",
|
|
1118
|
+
props.itemsActions.setInitialDoorStyle(_doorStyle);
|
|
1119
|
+
return _context8.abrupt("continue", 34);
|
|
1074
1120
|
case 22:
|
|
1075
1121
|
props.projectActions.loadProject(evt.payload);
|
|
1076
|
-
return _context8.abrupt("continue",
|
|
1122
|
+
return _context8.abrupt("continue", 34);
|
|
1077
1123
|
case 23:
|
|
1078
1124
|
_value = state.getIn(['viewer2D']).toJS();
|
|
1079
1125
|
_value.a += 0.1;
|
|
@@ -1081,7 +1127,7 @@ function _handleExternalEvent() {
|
|
|
1081
1127
|
_value.e -= _value.SVGWidth * 0.1 / 2;
|
|
1082
1128
|
_value.f -= _value.SVGHeight * 0.1 / 2;
|
|
1083
1129
|
updateViwer2D(_value, props.viewer2DActions);
|
|
1084
|
-
return _context8.abrupt("continue",
|
|
1130
|
+
return _context8.abrupt("continue", 34);
|
|
1085
1131
|
case 24:
|
|
1086
1132
|
_value2 = state.getIn(['viewer2D']).toJS();
|
|
1087
1133
|
_value2.a -= 0.1;
|
|
@@ -1089,7 +1135,7 @@ function _handleExternalEvent() {
|
|
|
1089
1135
|
_value2.e += _value2.SVGWidth * 0.1 / 2;
|
|
1090
1136
|
_value2.f += _value2.SVGHeight * 0.1 / 2;
|
|
1091
1137
|
updateViwer2D(_value2, props.viewer2DActions);
|
|
1092
|
-
return _context8.abrupt("continue",
|
|
1138
|
+
return _context8.abrupt("continue", 34);
|
|
1093
1139
|
case 25:
|
|
1094
1140
|
// calculate the bounding box of all elements in plan
|
|
1095
1141
|
layer = state.scene.getIn(['layers', state.scene.selectedLayer]);
|
|
@@ -1116,18 +1162,26 @@ function _handleExternalEvent() {
|
|
|
1116
1162
|
viewer.f = (viewer.viewerHeight - (bb.maxY + bb.minY) * viewer.a) / 2;
|
|
1117
1163
|
updateViwer2D(viewer, props.viewer2DActions);
|
|
1118
1164
|
}
|
|
1119
|
-
return _context8.abrupt("continue",
|
|
1165
|
+
return _context8.abrupt("continue", 34);
|
|
1120
1166
|
case 26:
|
|
1121
1167
|
props.projectActions.undo();
|
|
1122
|
-
return _context8.abrupt("continue",
|
|
1168
|
+
return _context8.abrupt("continue", 34);
|
|
1123
1169
|
case 27:
|
|
1124
1170
|
props.projectActions.redo();
|
|
1125
|
-
return _context8.abrupt("continue",
|
|
1171
|
+
return _context8.abrupt("continue", 34);
|
|
1126
1172
|
case 28:
|
|
1127
1173
|
_evt$payload7 = evt.payload, moldingInfo = _evt$payload7.moldingInfo, isGlobal = _evt$payload7.isGlobal;
|
|
1128
1174
|
props.itemsActions.setMolding(moldingInfo, isGlobal);
|
|
1129
|
-
return _context8.abrupt("continue",
|
|
1175
|
+
return _context8.abrupt("continue", 34);
|
|
1130
1176
|
case 29:
|
|
1177
|
+
distElement = getElement(evt.payload, state);
|
|
1178
|
+
if (distElement) props.itemsActions.duplicateSelected(distElement);
|
|
1179
|
+
return _context8.abrupt("continue", 34);
|
|
1180
|
+
case 30:
|
|
1181
|
+
_distElement = getElement(evt.payload, state);
|
|
1182
|
+
if (_distElement) props.projectActions.remove(_distElement);
|
|
1183
|
+
return _context8.abrupt("continue", 34);
|
|
1184
|
+
case 31:
|
|
1131
1185
|
_evt$payload8 = evt.payload, option = _evt$payload8.option, _value3 = _evt$payload8.value;
|
|
1132
1186
|
if (option === PROJECT_SETTING_OPTION.UPDATE_CEIL_HEIGHT) {
|
|
1133
1187
|
props.viewer2DActions.updateCeilHeight(_value3);
|
|
@@ -1141,16 +1195,16 @@ function _handleExternalEvent() {
|
|
|
1141
1195
|
} else if (option === PROJECT_SETTING_OPTION.CHANGE_WINDOW_DOOR_MEASURE) {
|
|
1142
1196
|
props.viewer2DActions.changeWindowDoorMeasure(_value3);
|
|
1143
1197
|
}
|
|
1144
|
-
return _context8.abrupt("continue",
|
|
1145
|
-
case
|
|
1198
|
+
return _context8.abrupt("continue", 34);
|
|
1199
|
+
case 32:
|
|
1146
1200
|
layerId = state.getIn(['scene', 'selectedLayer']);
|
|
1147
1201
|
_layer = state.getIn(['scene', 'layers', layerId]);
|
|
1148
1202
|
_layer$getIn = _layer.getIn(['selected']), selectedLines = _layer$getIn.lines, selectedHoles = _layer$getIn.holes, selectedItems = _layer$getIn.items;
|
|
1149
|
-
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) : updatePropertyOfSelectedElement(_layer.getIn(['lines', selectedLines.get(_i2)]), evt.payload, props.catalog, props.projectActions);
|
|
1150
|
-
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) : updatePropertyOfSelectedElement(_layer.getIn(['holes', selectedHoles.get(_i3)]), evt.payload, props.catalog, props.projectActions);
|
|
1151
|
-
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) : updatePropertyOfSelectedElement(_layer.getIn(['items', selectedItems.get(_i4)]), evt.payload, props.catalog, props.projectActions);
|
|
1152
|
-
return _context8.abrupt("continue",
|
|
1153
|
-
case
|
|
1203
|
+
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);
|
|
1204
|
+
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);
|
|
1205
|
+
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);
|
|
1206
|
+
return _context8.abrupt("continue", 34);
|
|
1207
|
+
case 33:
|
|
1154
1208
|
// send scene object from 3DTool to HostApp using internalEvent
|
|
1155
1209
|
(_props$onInternalEven2 = props.onInternalEvent) === null || _props$onInternalEven2 === void 0 || _props$onInternalEven2.call(props, {
|
|
1156
1210
|
type: INTERNAL_EVENT_SYNC_SCENE,
|
|
@@ -1158,8 +1212,8 @@ function _handleExternalEvent() {
|
|
|
1158
1212
|
scene: state.scene.toJS()
|
|
1159
1213
|
}
|
|
1160
1214
|
});
|
|
1161
|
-
return _context8.abrupt("continue",
|
|
1162
|
-
case
|
|
1215
|
+
return _context8.abrupt("continue", 34);
|
|
1216
|
+
case 34:
|
|
1163
1217
|
case "end":
|
|
1164
1218
|
return _context8.stop();
|
|
1165
1219
|
}
|
|
@@ -150,8 +150,10 @@ function setHolesAttributes(holesAttributes) {
|
|
|
150
150
|
};
|
|
151
151
|
}
|
|
152
152
|
function remove() {
|
|
153
|
+
var delObject = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
|
|
153
154
|
return {
|
|
154
|
-
type: _constants.REMOVE
|
|
155
|
+
type: _constants.REMOVE,
|
|
156
|
+
delObject: delObject
|
|
155
157
|
};
|
|
156
158
|
}
|
|
157
159
|
function undo() {
|
package/lib/class/project.js
CHANGED
|
@@ -67,6 +67,7 @@ var Project = exports["default"] = /*#__PURE__*/function () {
|
|
|
67
67
|
}, {
|
|
68
68
|
key: "loadProject",
|
|
69
69
|
value: function loadProject(state, sceneJSON) {
|
|
70
|
+
var _sceneJSON$layers$lay;
|
|
70
71
|
var doorStyle = state.doorStyle;
|
|
71
72
|
var layerID = state.scene.selectedLayer;
|
|
72
73
|
var _viewer2D = state.viewer2D;
|
|
@@ -99,6 +100,14 @@ var Project = exports["default"] = /*#__PURE__*/function () {
|
|
|
99
100
|
for (var x in json_items) {
|
|
100
101
|
_loop(x);
|
|
101
102
|
}
|
|
103
|
+
|
|
104
|
+
// making layer's doorStyle when changing room shape
|
|
105
|
+
if ((0, _helper.isEmpty)(sceneJSON === null || sceneJSON === void 0 || (_sceneJSON$layers$lay = sceneJSON.layers[layerID]) === null || _sceneJSON$layers$lay === void 0 ? void 0 : _sceneJSON$layers$lay.doorStyle)) {
|
|
106
|
+
var newlayer = _objectSpread(_objectSpread({}, sceneJSON === null || sceneJSON === void 0 ? void 0 : sceneJSON.layers[layerID]), {}, {
|
|
107
|
+
doorStyle: doorStyle.toJS()
|
|
108
|
+
});
|
|
109
|
+
sceneJSON && (sceneJSON.layers[layerID] = newlayer);
|
|
110
|
+
}
|
|
102
111
|
var newScene = new _models.Scene(sceneJSON);
|
|
103
112
|
state = new _models.State({
|
|
104
113
|
scene: newScene.toJS(),
|
|
@@ -160,10 +169,10 @@ var Project = exports["default"] = /*#__PURE__*/function () {
|
|
|
160
169
|
f: f
|
|
161
170
|
});
|
|
162
171
|
}
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
172
|
+
|
|
173
|
+
// Matching state.doorStyle with layer.doorStyle
|
|
174
|
+
if (state.getIn(['scene', 'layers', layerID, 'doorStyle'])) {
|
|
175
|
+
doorStyle = state.getIn(['scene', 'layers', layerID, 'doorStyle']);
|
|
167
176
|
}
|
|
168
177
|
state = state.merge({
|
|
169
178
|
doorStyle: doorStyle,
|
|
@@ -303,29 +312,52 @@ var Project = exports["default"] = /*#__PURE__*/function () {
|
|
|
303
312
|
}
|
|
304
313
|
}, {
|
|
305
314
|
key: "remove",
|
|
306
|
-
value: function remove(state) {
|
|
315
|
+
value: function remove(state, delObject) {
|
|
307
316
|
var selectedLayer = state.getIn(['scene', 'selectedLayer']);
|
|
308
317
|
var _state$getIn = state.getIn(['scene', 'layers', selectedLayer, 'selected']),
|
|
309
318
|
selectedLines = _state$getIn.lines,
|
|
310
319
|
selectedHoles = _state$getIn.holes,
|
|
311
320
|
selectedItems = _state$getIn.items;
|
|
312
|
-
var allVertices = state.getIn(['scene', 'layers', selectedLayer, 'vertices']).toJS();
|
|
313
|
-
var selLines = state.getIn(['scene', 'layers', selectedLayer, 'selected', 'lines']).toJS();
|
|
314
|
-
var lineID = selLines[0];
|
|
315
|
-
var delLine = !(0, _helper.isEmpty)(lineID) && state.getIn(['scene', 'layers', selectedLayer, 'lines', lineID]).toJS();
|
|
316
|
-
var allLines = state.getIn(['scene', 'layers', selectedLayer, 'lines']).toJS();
|
|
317
321
|
var relatedLines = [];
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
}
|
|
328
|
-
|
|
322
|
+
|
|
323
|
+
// if deleting element is line then get the related lines that to update walls
|
|
324
|
+
if (delObject && delObject.prototype === constants.ELEMENT_LINE || (0, _helper.isEmpty)(delObject) && !(0, _helper.isEmpty)(selectedLines)) {
|
|
325
|
+
var allVertices = state.getIn(['scene', 'layers', selectedLayer, 'vertices']).toJS();
|
|
326
|
+
var selLines = state.getIn(['scene', 'layers', selectedLayer, 'selected', constants.ELEMENT_LINE]).toJS();
|
|
327
|
+
var curSelLineID = (delObject === null || delObject === void 0 ? void 0 : delObject.prototype) === constants.ELEMENT_LINE ? delObject.id : selLines[0];
|
|
328
|
+
var delLine = !(0, _helper.isEmpty)(curSelLineID) && state.getIn(['scene', 'layers', selectedLayer, 'lines', curSelLineID]).toJS();
|
|
329
|
+
var allLines = state.getIn(['scene', 'layers', selectedLayer, 'lines']).toJS();
|
|
330
|
+
!(0, _helper.isEmpty)(delLine) && _export.GeometryUtils.getRelatedLines(relatedLines, delLine, allVertices, allLines);
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
// delete element
|
|
334
|
+
if (delObject) {
|
|
335
|
+
switch (delObject.prototype) {
|
|
336
|
+
case constants.ELEMENT_LINE:
|
|
337
|
+
state = _export2.Line.remove(state, selectedLayer, delObject.id).updatedState;
|
|
338
|
+
break;
|
|
339
|
+
case constants.ELEMENT_HOLE:
|
|
340
|
+
state = _export2.Hole.remove(state, selectedLayer, delObject.id).updatedState;
|
|
341
|
+
break;
|
|
342
|
+
case constants.ELEMENT_ITEM:
|
|
343
|
+
state = _export2.Item.remove(state, selectedLayer, delObject.id).updatedState;
|
|
344
|
+
break;
|
|
345
|
+
}
|
|
346
|
+
} else {
|
|
347
|
+
// no specified object, then remove all selected elements
|
|
348
|
+
selectedLines.forEach(function (lineID) {
|
|
349
|
+
state = _export2.Line.remove(state, selectedLayer, lineID).updatedState;
|
|
350
|
+
});
|
|
351
|
+
selectedHoles.forEach(function (holeID) {
|
|
352
|
+
state = _export2.Hole.remove(state, selectedLayer, holeID).updatedState;
|
|
353
|
+
});
|
|
354
|
+
selectedItems.forEach(function (itemID) {
|
|
355
|
+
state = _export2.Item.remove(state, selectedLayer, itemID).updatedState;
|
|
356
|
+
});
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
// update wall if line removed
|
|
360
|
+
if (!(0, _helper.isEmpty)(relatedLines)) {
|
|
329
361
|
state = state.setIn(['mode'], _constants.MODE_DRAWING_LINE);
|
|
330
362
|
relatedLines.forEach(function (relLine, index) {
|
|
331
363
|
state = _export2.Line.select(state, selectedLayer, relLine.id).updatedState;
|
package/lib/constants.js
CHANGED
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
7
|
-
exports.
|
|
8
|
-
exports.
|
|
9
|
-
exports.
|
|
10
|
-
exports.ZOOM_VARIABLE = exports.WARRANTY_VIEW = exports.WARRANTY_SUPPORT = exports.WARNING_MESSAGE = exports.WALL_ITEM_MEASUREMENT_LINE_COLOR = exports.WALL_CABINET_LAYOUTPOS = void 0;
|
|
6
|
+
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.ELEMENT_VERTEX = exports.ELEMENT_LINE = exports.ELEMENT_ITEM = exports.ELEMENT_HOLE = exports.ELEMENT_AREA = exports.EDIT_WIDTH = exports.EDIT = exports.DUPLICATE_SELECTED = exports.DISTANCE_MEASUREMENT_LINE_COLOR = exports.DISTANCE_EPSILON = exports.DIFFERENT_VALUES_PATH_LENGTH = exports.DELTA = exports.DEFAULT_FONT_FAMILY = exports.DECIMAL_PLACES_3 = exports.DECIMAL_PLACES_2 = exports.DASH_LINE_COLOR = exports.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_ITEM_MEASUREMENT_LINE_COLOR = exports.BASE_CABINET_LAYOUTPOS = exports.BACK_DIST_ANG = exports.ATT_VERTEXT_TWO = exports.ATT_VERTEXT_ONE = exports.ATT_LINE_LENGTH = exports.ATT_ITEM_ROTATION = exports.ATT_ITEM_POS = exports.ATT_HOLE_OFFSET_B = exports.ATT_HOLE_OFFSET_A = exports.ARROW_TEXT_FORECOLOR = exports.ARROW_TEXT_FONTFACE = exports.ARROW_TEXT_BACKCOLOR = exports.ARROW_COLOR = exports.ARRAY_ELEVATION_VIEW_MODES = exports.ARRAY_3D_MODES = exports.AREA_ACTIONS = exports.API_SERVER_URL = exports.ANIMATE_STEP_MIN = exports.ANIMATE_STEP_MAX = exports.ANIMATE_OBJECT_OPEN_DOOR_ROTATION_UNIT = exports.ANIMATE_OBJECT = exports.ALTERATE_STATE = exports.ADD_VERTICAL_GUIDE = exports.ADD_TO_GROUP = exports.ADD_LAYER = exports.ADD_HORIZONTAL_GUIDE = exports.ADD_GROUP_FROM_SELECTED = exports.ADD_GROUP = exports.ADD_ELEMENT_TO_CATALOG = exports.ADD_CIRCULAR_GUIDE = exports.ADD_CABINETS = exports.ADD_APPLIANCES = exports.ACCENT_COLOR = void 0;
|
|
7
|
+
exports.MODE_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_DIST_ANG = exports.LEFT = exports.LABEL_COLOR = exports.KITCHEN_KONFIGURATOR = exports.KEYBOARD_BUTTON_CODE = exports.ITEM_TYPE = exports.ITEM_MOVE_UP = exports.ITEMS_ACTIONS = exports.INVERT = exports.INTERNAL_EVENT_UNSELECT_ALL = exports.INTERNAL_EVENT_SYNC_SCENE = exports.INTERNAL_EVENT_SELECT_ELEMENT = exports.INTERNAL_EVENT_ROTATE_ELEMENT = exports.INTERNAL_EVENT_ITEMS_CATALOG = exports.INTERNAL_EVENT_DRAW_ELEMENT = exports.INTERNAL_EVENT_DRAG_ELEMENT = exports.INSTALLATION_TYPE_SKU_SUFFIX = exports.INSTALLATION_TYPE_NAME = exports.INSTALLATION_SUFFIX_TYPE = exports.INIT_CATALOG = exports.HOLE_NAMES = exports.HOLE_ACTIONS = exports.HDR_URLS = exports.HAS_LOADINGBAR = exports.GROUP_TRANSLATE = exports.GROUP_ROTATE = exports.GROUP_ACTIONS = exports.GO_BACK_TO_CATALOG_PAGE = exports.FRONT_DIST_ANG = exports.FINISHING_TOUCH = exports.EXTERNAL_EVENT_ZOOM_OUT = exports.EXTERNAL_EVENT_ZOOM_IN = exports.EXTERNAL_EVENT_UPDATE_PROPERTY = exports.EXTERNAL_EVENT_UPDATE_ATTRIBUTE = exports.EXTERNAL_EVENT_UNDO = exports.EXTERNAL_EVENT_TOGGLE_TO_ELEVATION = exports.EXTERNAL_EVENT_TOGGLE_TO_3D = exports.EXTERNAL_EVENT_TOGGLE_TO_2D = exports.EXTERNAL_EVENT_SYNC_SCENE = exports.EXTERNAL_EVENT_SET_MOLDING = exports.EXTERNAL_EVENT_SET_INITIAL_DATA = exports.EXTERNAL_EVENT_REDO = exports.EXTERNAL_EVENT_PROJECT_SETTING = exports.EXTERNAL_EVENT_NEW_PROJECT = exports.EXTERNAL_EVENT_MOVE_PAN = exports.EXTERNAL_EVENT_LOAD_PROJECT = exports.EXTERNAL_EVENT_DUPLICATE_ELEMENT = exports.EXTERNAL_EVENT_DELETE_ELEMENT = exports.EXTERNAL_EVENT_CHANGE_DOORSTYLE = exports.EXTERNAL_EVENT_CENTERING_2D = exports.EXTERNAL_EVENT_ADD_WALL = exports.EXTERNAL_EVENT_ADD_ROOM_SHAPE = exports.EXTERNAL_EVENT_ADD_ITEM = exports.EXTERNAL_EVENT_ADD_HOLE = exports.ERROR_DATABASE = exports.EPSILON = void 0;
|
|
8
|
+
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.ROOM_SHAPE_MEASUREMENT_LINE_COLOR = exports.ROOM_ELEMENT_MEASUREMENT_LINE_COLOR = exports.ROLLBACK = exports.RIGHT_DIST_ANG = exports.RIGHT = exports.REVIEW_AND_QUOTE = exports.REQUEST_ASSISTANCE = exports.REPLACE_SUBMODULE = exports.REPLACE_ITEM = exports.REMOVE_VERTICAL_GUIDE = exports.REMOVE_REPLACE_SUBMODULE = exports.REMOVE_LINEAR = exports.REMOVE_LAYER = exports.REMOVE_HORIZONTAL_GUIDE = exports.REMOVE_GROUP_AND_DELETE_ELEMENTS = exports.REMOVE_GROUP = exports.REMOVE_FROM_GROUP = exports.REMOVE_DRAWING_SUPPORT = exports.REMOVE_CIRCULAR_GUIDE = exports.REMOVE = exports.REDO = exports.RECREATE = exports.PUSH_LAST_SELECTED_CATALOG_ELEMENT_TO_HISTORY = exports.PROP_OPEN_DOORS = exports.PROP_FLIP_DOOR_HANDLE = exports.PROP_ALTITUDE = exports.PROJECT_SETTING_OPTION = exports.PROJECT_RE_NAME = exports.PROJECT_NAME_LENGTH_LIMIT = exports.PROJECT_ACTIONS = exports.PRODUCT = exports.PRIMARY_GREEN_COLOR = exports.PASTE_PROPERTIES = exports.OVERLAP_SOME = exports.OVERLAP_SAME = exports.OVERLAP_NONE = exports.OVERLAP_LINK = exports.OVERLAP_INCLUDED = exports.OPEN_PROJECT_CONFIGURATOR = exports.OPEN_CATALOG = exports.OBJTYPE_MESH = exports.OBJTYPE_GROUP = exports.NO_DATA_DATABASE = exports.NEW_PROJECT_BTN = exports.NEW_PROJECT = exports.NEW_DESIGN = exports.MOVE_COMPONENT = exports.MOLDING_LOCATIONS = exports.MODE_WAITING_DRAWING_LINE = exports.MODE_VIEWING_CATALOG = exports.MODE_UPLOADING_IMAGE = exports.MODE_SNAPPING = exports.MODE_ROTATING_ITEM_3D = exports.MODE_ROTATING_ITEM = exports.MODE_RIGHT_ELEVATION_VIEW = void 0;
|
|
9
|
+
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 = 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 = void 0;
|
|
10
|
+
exports.ZOOM_VARIABLE = exports.WARRANTY_VIEW = exports.WARRANTY_SUPPORT = exports.WARNING_MESSAGE = exports.WALL_ITEM_MEASUREMENT_LINE_COLOR = exports.WALL_CABINET_LAYOUTPOS = exports.VIEWER3D_ACTIONS = exports.VIEWER2D_ACTIONS = exports.VERTEX_ACTIONS = exports.VALIDATE_ITEM_POSTIONS = exports.USER_ACTIONS = exports.UPDATE_ZOOM_SCALE = exports.UPDATE_ROTATING_ITEM_CHANGED = void 0;
|
|
11
11
|
//API server
|
|
12
12
|
// export const API_SERVER = 'http://localhost:3000/';
|
|
13
13
|
// ACTIONS project
|
|
@@ -685,6 +685,12 @@ var RIGHT_DIST_ANG = exports.RIGHT_DIST_ANG = 180;
|
|
|
685
685
|
var BACK_DIST_ANG = exports.BACK_DIST_ANG = 90;
|
|
686
686
|
var FRONT_DIST_ANG = exports.FRONT_DIST_ANG = -90;
|
|
687
687
|
|
|
688
|
+
// element prototype
|
|
689
|
+
var ELEMENT_LINE = exports.ELEMENT_LINE = 'lines';
|
|
690
|
+
var ELEMENT_HOLE = exports.ELEMENT_HOLE = 'holes';
|
|
691
|
+
var ELEMENT_ITEM = exports.ELEMENT_ITEM = 'items';
|
|
692
|
+
var ELEMENT_AREA = exports.ELEMENT_AREA = 'areas';
|
|
693
|
+
var ELEMENT_VERTEX = exports.ELEMENT_VERTEX = 'vertices';
|
|
688
694
|
// element attributes
|
|
689
695
|
var ATT_ITEM_POS = exports.ATT_ITEM_POS = 'pos';
|
|
690
696
|
var ATT_ITEM_ROTATION = exports.ATT_ITEM_ROTATION = 'rotation';
|
|
@@ -722,9 +728,12 @@ var EXTERNAL_EVENT_UNDO = exports.EXTERNAL_EVENT_UNDO = 'EXTERNAL_EVENT_UNDO';
|
|
|
722
728
|
var EXTERNAL_EVENT_REDO = exports.EXTERNAL_EVENT_REDO = 'EXTERNAL_EVENT_REDO';
|
|
723
729
|
var EXTERNAL_EVENT_SET_MOLDING = exports.EXTERNAL_EVENT_SET_MOLDING = 'EXTERNAL_EVENT_SET_MOLDING';
|
|
724
730
|
var EXTERNAL_EVENT_PROJECT_SETTING = exports.EXTERNAL_EVENT_PROJECT_SETTING = 'EXTERNAL_EVENT_PROJECT_SETTING'; // project setting event
|
|
731
|
+
var EXTERNAL_EVENT_CENTERING_2D = exports.EXTERNAL_EVENT_CENTERING_2D = 'EXTERNAL_EVENT_CENTERING_2D';
|
|
732
|
+
var EXTERNAL_EVENT_DUPLICATE_ELEMENT = exports.EXTERNAL_EVENT_DUPLICATE_ELEMENT = 'EXTERNAL_EVENT_DUPLICATE_ELEMENT';
|
|
733
|
+
var EXTERNAL_EVENT_DELETE_ELEMENT = exports.EXTERNAL_EVENT_DELETE_ELEMENT = 'EXTERNAL_EVENT_DELETE_ELEMENT';
|
|
725
734
|
var EXTERNAL_EVENT_UPDATE_ATTRIBUTE = exports.EXTERNAL_EVENT_UPDATE_ATTRIBUTE = 'EXTERNAL_EVENT_UPDATE_ATTRIBUTE'; // update the element's attributes (distance, rotation...) in the property window
|
|
726
735
|
var EXTERNAL_EVENT_UPDATE_PROPERTY = exports.EXTERNAL_EVENT_UPDATE_PROPERTY = 'EXTERNAL_EVENT_UPDATE_PROPERTY'; // update the element's property (flip_doorhandle, open_doors...) in the property window
|
|
727
|
-
|
|
736
|
+
|
|
728
737
|
// internal event type
|
|
729
738
|
var INTERNAL_EVENT_UNSELECT_ALL = exports.INTERNAL_EVENT_UNSELECT_ALL = 'INTERNAL_EVENT_UNSELECT_ALL';
|
|
730
739
|
var INTERNAL_EVENT_SELECT_ELEMENT = exports.INTERNAL_EVENT_SELECT_ELEMENT = 'INTERNAL_EVENT_SELECT_ELEMENT';
|
package/lib/devLiteRenderer.js
CHANGED
|
@@ -62,9 +62,7 @@ function WorkSpace(props) {
|
|
|
62
62
|
var evt = {
|
|
63
63
|
type: _constants.EXTERNAL_EVENT_SET_INITIAL_DATA,
|
|
64
64
|
payload: {
|
|
65
|
-
doorStyle:
|
|
66
|
-
doorStyle: _doorStylePayload["default"]
|
|
67
|
-
}
|
|
65
|
+
doorStyle: _doorStylePayload["default"]
|
|
68
66
|
}
|
|
69
67
|
};
|
|
70
68
|
setExternalEvent(evt);
|
|
@@ -323,6 +321,10 @@ function WorkSpace(props) {
|
|
|
323
321
|
oldDistance: 0,
|
|
324
322
|
newDistance: 10
|
|
325
323
|
}
|
|
324
|
+
},
|
|
325
|
+
callback: function callback(updatedAttributeForm) {
|
|
326
|
+
console.log(updatedAttributeForm);
|
|
327
|
+
// Do something here with new attributes
|
|
326
328
|
}
|
|
327
329
|
};
|
|
328
330
|
setExternalEvent(evt);
|
|
@@ -395,6 +397,30 @@ function WorkSpace(props) {
|
|
|
395
397
|
setExternalEvent(evt);
|
|
396
398
|
}
|
|
397
399
|
}, "Distance from floor 10\""), /*#__PURE__*/_react["default"].createElement(_antd.Button, {
|
|
400
|
+
actionType: "danger",
|
|
401
|
+
onClick: function onClick() {
|
|
402
|
+
var evt = {
|
|
403
|
+
type: _constants.EXTERNAL_EVENT_DUPLICATE_ELEMENT,
|
|
404
|
+
payload: {
|
|
405
|
+
elementPrototype: _constants.ELEMENT_ITEM,
|
|
406
|
+
elementId: '' // id of current operating element
|
|
407
|
+
}
|
|
408
|
+
};
|
|
409
|
+
setExternalEvent(evt);
|
|
410
|
+
}
|
|
411
|
+
}, "Duplicate Item"), /*#__PURE__*/_react["default"].createElement(_antd.Button, {
|
|
412
|
+
actionType: "danger",
|
|
413
|
+
onClick: function onClick() {
|
|
414
|
+
var evt = {
|
|
415
|
+
type: _constants.EXTERNAL_EVENT_DELETE_ELEMENT,
|
|
416
|
+
payload: {
|
|
417
|
+
elementPrototype: _constants.ELEMENT_ITEM,
|
|
418
|
+
elementId: '' // id of current operating element
|
|
419
|
+
}
|
|
420
|
+
};
|
|
421
|
+
setExternalEvent(evt);
|
|
422
|
+
}
|
|
423
|
+
}, "Delete Item"), /*#__PURE__*/_react["default"].createElement(_antd.Button, {
|
|
398
424
|
actionType: "danger",
|
|
399
425
|
onClick: function onClick() {
|
|
400
426
|
var evt = {
|
|
@@ -49,7 +49,7 @@ function _default(state, action) {
|
|
|
49
49
|
state = state.merge({
|
|
50
50
|
sceneHistory: _export.history.historyPush(state.sceneHistory, state.scene)
|
|
51
51
|
});
|
|
52
|
-
return _export2.Project.remove(state).updatedState;
|
|
52
|
+
return _export2.Project.remove(state, action.delObject).updatedState;
|
|
53
53
|
case _constants.UNDO:
|
|
54
54
|
return _export2.Project.undo(state).updatedState;
|
|
55
55
|
case _constants.REDO:
|
|
@@ -682,6 +682,8 @@ function initPropData(element, catalog) {
|
|
|
682
682
|
return new _immutable.Map(mapped);
|
|
683
683
|
}
|
|
684
684
|
function updateAttributeOfSelectedElement(element, attrPayload, state, layer, projectActions) {
|
|
685
|
+
var _attributesFormData;
|
|
686
|
+
var callback = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
|
|
685
687
|
var attributesFormData = initAttrData(element, layer, state);
|
|
686
688
|
var value = attrPayload.value;
|
|
687
689
|
var attributeName = attrPayload.attributeName;
|
|
@@ -881,10 +883,15 @@ function updateAttributeOfSelectedElement(element, attrPayload, state, layer, pr
|
|
|
881
883
|
break;
|
|
882
884
|
}
|
|
883
885
|
}
|
|
886
|
+
|
|
887
|
+
// invoke callback
|
|
888
|
+
if (callback) callback((_attributesFormData = attributesFormData) === null || _attributesFormData === void 0 ? void 0 : _attributesFormData.toJS());
|
|
884
889
|
}
|
|
885
890
|
function updatePropertyOfSelectedElement(element, propertyPayload, catalog,
|
|
886
891
|
// class instance of Catalog, get from props
|
|
887
892
|
projectActions) {
|
|
893
|
+
var _propertiesFormData;
|
|
894
|
+
var callback = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
|
|
888
895
|
var propertiesFormData = initPropData(element, catalog);
|
|
889
896
|
var value = propertyPayload.value;
|
|
890
897
|
var propertyName = propertyPayload.propertyName;
|
|
@@ -902,6 +909,45 @@ projectActions) {
|
|
|
902
909
|
});
|
|
903
910
|
projectActions.setProperties(properties);
|
|
904
911
|
}
|
|
912
|
+
|
|
913
|
+
// invoke callback
|
|
914
|
+
if (callback) callback((_propertiesFormData = propertiesFormData) === null || _propertiesFormData === void 0 ? void 0 : _propertiesFormData.toJS());
|
|
915
|
+
}
|
|
916
|
+
function getElement(objProps, state) {
|
|
917
|
+
var layerID = state.scene.selectedLayer;
|
|
918
|
+
var curObject = null;
|
|
919
|
+
if (!(0, _helper.isEmpty)(objProps === null || objProps === void 0 ? void 0 : objProps.elementPrototype) && !(0, _helper.isEmpty)(objProps === null || objProps === void 0 ? void 0 : objProps.elementId)) curObject = state.getIn(['scene', 'layers', layerID, objProps.elementPrototype, objProps.elementId]);else {
|
|
920
|
+
// if no specified object property then get the first selected element
|
|
921
|
+
var layer = state.scene.layers.get(state.scene.selectedLayer);
|
|
922
|
+
var selected = [];
|
|
923
|
+
layer.selected.forEach(function (data, prototype) {
|
|
924
|
+
if (prototype == 'vertices') return;
|
|
925
|
+
if (data.size > 0) {
|
|
926
|
+
var values = data.toJS();
|
|
927
|
+
for (var i = 0; i < values.length; i++) {
|
|
928
|
+
selected.push({
|
|
929
|
+
type: prototype,
|
|
930
|
+
id: values[i]
|
|
931
|
+
});
|
|
932
|
+
}
|
|
933
|
+
}
|
|
934
|
+
});
|
|
935
|
+
if (selected.length === 1) {
|
|
936
|
+
var selData = selected[0];
|
|
937
|
+
switch (selData.type) {
|
|
938
|
+
case _constants.ELEMENT_HOLE:
|
|
939
|
+
curObject = layer.holes.get(selData.id);
|
|
940
|
+
break;
|
|
941
|
+
case _constants.ELEMENT_ITEM:
|
|
942
|
+
curObject = layer.items.get(selData.id);
|
|
943
|
+
break;
|
|
944
|
+
case _constants.ELEMENT_LINE:
|
|
945
|
+
curObject = layer.lines.get(selData.id);
|
|
946
|
+
break;
|
|
947
|
+
}
|
|
948
|
+
}
|
|
949
|
+
}
|
|
950
|
+
return curObject;
|
|
905
951
|
}
|
|
906
952
|
function handleExternalEvent(_x1) {
|
|
907
953
|
return _handleExternalEvent.apply(this, arguments);
|
|
@@ -909,7 +955,7 @@ function handleExternalEvent(_x1) {
|
|
|
909
955
|
function _handleExternalEvent() {
|
|
910
956
|
_handleExternalEvent = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee7(props) {
|
|
911
957
|
var _evt$payload3, _evt$payload4;
|
|
912
|
-
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, _evt$payload8, option, _value3, layerId, _layer, _layer$getIn, selectedLines, selectedHoles, selectedItems, _i2, _i3, _i4, _props$onInternalEven2, _t5, _t6;
|
|
958
|
+
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;
|
|
913
959
|
return _regenerator["default"].wrap(function (_context8) {
|
|
914
960
|
while (1) switch (_context8.prev = _context8.next) {
|
|
915
961
|
case 0:
|
|
@@ -917,7 +963,7 @@ function _handleExternalEvent() {
|
|
|
917
963
|
evt = props.externalEvent;
|
|
918
964
|
state = props.state.get('KitchenConfigurator');
|
|
919
965
|
_t5 = evt === null || evt === void 0 ? void 0 : evt.type;
|
|
920
|
-
_context8.next = _t5 === _constants.EXTERNAL_EVENT_LOAD_PROJECT ? 1 : _t5 === _constants.EXTERNAL_EVENT_TOGGLE_TO_3D ? 5 : _t5 === _constants.EXTERNAL_EVENT_TOGGLE_TO_2D ? 6 : _t5 === _constants.EXTERNAL_EVENT_TOGGLE_TO_ELEVATION ? 7 : _t5 === _constants.EXTERNAL_EVENT_ADD_WALL ? 8 : _t5 === _constants.EXTERNAL_EVENT_ADD_ITEM ? 9 : _t5 === _constants.EXTERNAL_EVENT_ADD_HOLE ? 12 : _t5 === _constants.EXTERNAL_EVENT_MOVE_PAN ? 13 : _t5 === _constants.EXTERNAL_EVENT_NEW_PROJECT ? 19 : _t5 === _constants.EXTERNAL_EVENT_CHANGE_DOORSTYLE ? 20 : _t5 === _constants.EXTERNAL_EVENT_SET_INITIAL_DATA ? 21 : _t5 === _constants.EXTERNAL_EVENT_ADD_ROOM_SHAPE ? 22 : _t5 === _constants.EXTERNAL_EVENT_ZOOM_IN ? 23 : _t5 === _constants.EXTERNAL_EVENT_ZOOM_OUT ? 24 : _t5 === _constants.EXTERNAL_EVENT_CENTERING_2D ? 25 : _t5 === _constants.EXTERNAL_EVENT_UNDO ? 26 : _t5 === _constants.EXTERNAL_EVENT_REDO ? 27 : _t5 === _constants.EXTERNAL_EVENT_SET_MOLDING ? 28 : _t5 === _constants.
|
|
966
|
+
_context8.next = _t5 === _constants.EXTERNAL_EVENT_LOAD_PROJECT ? 1 : _t5 === _constants.EXTERNAL_EVENT_TOGGLE_TO_3D ? 5 : _t5 === _constants.EXTERNAL_EVENT_TOGGLE_TO_2D ? 6 : _t5 === _constants.EXTERNAL_EVENT_TOGGLE_TO_ELEVATION ? 7 : _t5 === _constants.EXTERNAL_EVENT_ADD_WALL ? 8 : _t5 === _constants.EXTERNAL_EVENT_ADD_ITEM ? 9 : _t5 === _constants.EXTERNAL_EVENT_ADD_HOLE ? 12 : _t5 === _constants.EXTERNAL_EVENT_MOVE_PAN ? 13 : _t5 === _constants.EXTERNAL_EVENT_NEW_PROJECT ? 19 : _t5 === _constants.EXTERNAL_EVENT_CHANGE_DOORSTYLE ? 20 : _t5 === _constants.EXTERNAL_EVENT_SET_INITIAL_DATA ? 21 : _t5 === _constants.EXTERNAL_EVENT_ADD_ROOM_SHAPE ? 22 : _t5 === _constants.EXTERNAL_EVENT_ZOOM_IN ? 23 : _t5 === _constants.EXTERNAL_EVENT_ZOOM_OUT ? 24 : _t5 === _constants.EXTERNAL_EVENT_CENTERING_2D ? 25 : _t5 === _constants.EXTERNAL_EVENT_UNDO ? 26 : _t5 === _constants.EXTERNAL_EVENT_REDO ? 27 : _t5 === _constants.EXTERNAL_EVENT_SET_MOLDING ? 28 : _t5 === _constants.EXTERNAL_EVENT_DUPLICATE_ELEMENT ? 29 : _t5 === _constants.EXTERNAL_EVENT_DELETE_ELEMENT ? 30 : _t5 === _constants.EXTERNAL_EVENT_PROJECT_SETTING ? 31 : _t5 === _constants.EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? 32 : _t5 === _constants.EXTERNAL_EVENT_UPDATE_PROPERTY ? 32 : _t5 === _constants.EXTERNAL_EVENT_SYNC_SCENE ? 33 : 34;
|
|
921
967
|
break;
|
|
922
968
|
case 1:
|
|
923
969
|
// prepare item data request
|
|
@@ -993,23 +1039,23 @@ function _handleExternalEvent() {
|
|
|
993
1039
|
};
|
|
994
1040
|
}());
|
|
995
1041
|
}
|
|
996
|
-
return _context8.abrupt("continue",
|
|
1042
|
+
return _context8.abrupt("continue", 34);
|
|
997
1043
|
case 5:
|
|
998
1044
|
props.projectActions.setMode(_constants.MODE_IDLE_3D);
|
|
999
|
-
return _context8.abrupt("continue",
|
|
1045
|
+
return _context8.abrupt("continue", 34);
|
|
1000
1046
|
case 6:
|
|
1001
1047
|
props.projectActions.setMode(_constants.MODE_IDLE);
|
|
1002
|
-
return _context8.abrupt("continue",
|
|
1048
|
+
return _context8.abrupt("continue", 34);
|
|
1003
1049
|
case 7:
|
|
1004
1050
|
sLineCnt = state.getIn(['scene', 'layers', 'layer-1', 'selected', 'lines']).size;
|
|
1005
1051
|
if (sLineCnt > 0) props.projectActions.setMode(_constants.MODE_ELEVATION_VIEW);
|
|
1006
|
-
return _context8.abrupt("continue",
|
|
1052
|
+
return _context8.abrupt("continue", 34);
|
|
1007
1053
|
case 8:
|
|
1008
1054
|
if (state.mode === _constants.MODE_IDLE || state.mode === _constants.MODE_2D_PAN) props.linesActions.selectToolDrawingLine('wall');else {
|
|
1009
1055
|
props.projectActions.setMode(_constants.MODE_IDLE);
|
|
1010
1056
|
props.linesActions.selectToolDrawingLine('wall');
|
|
1011
1057
|
}
|
|
1012
|
-
return _context8.abrupt("continue",
|
|
1058
|
+
return _context8.abrupt("continue", 34);
|
|
1013
1059
|
case 9:
|
|
1014
1060
|
if ((0, _helper.isEmpty)(evt === null || evt === void 0 ? void 0 : evt.payload)) {
|
|
1015
1061
|
_context8.next = 11;
|
|
@@ -1040,10 +1086,10 @@ function _handleExternalEvent() {
|
|
|
1040
1086
|
props.projectActions.pushLastSelectedCatalogElementToHistory(element);
|
|
1041
1087
|
props.projectActions.setIsCabinetDrawing(true);
|
|
1042
1088
|
case 11:
|
|
1043
|
-
return _context8.abrupt("continue",
|
|
1089
|
+
return _context8.abrupt("continue", 34);
|
|
1044
1090
|
case 12:
|
|
1045
1091
|
_constants.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);
|
|
1046
|
-
return _context8.abrupt("continue",
|
|
1092
|
+
return _context8.abrupt("continue", 34);
|
|
1047
1093
|
case 13:
|
|
1048
1094
|
_evt$payload5 = evt.payload, moveType = _evt$payload5.moveType, moveValue = _evt$payload5.moveValue;
|
|
1049
1095
|
value = state.getIn(['viewer2D']).toJS();
|
|
@@ -1064,23 +1110,23 @@ function _handleExternalEvent() {
|
|
|
1064
1110
|
return _context8.abrupt("continue", 18);
|
|
1065
1111
|
case 18:
|
|
1066
1112
|
updateViwer2D(value, props.viewer2DActions);
|
|
1067
|
-
return _context8.abrupt("continue",
|
|
1113
|
+
return _context8.abrupt("continue", 34);
|
|
1068
1114
|
case 19:
|
|
1069
1115
|
defaulTitle = 'Untitle';
|
|
1070
1116
|
props.projectActions.newProject();
|
|
1071
1117
|
props.projectActions.rename(defaulTitle);
|
|
1072
|
-
return _context8.abrupt("continue",
|
|
1118
|
+
return _context8.abrupt("continue", 34);
|
|
1073
1119
|
case 20:
|
|
1074
1120
|
_evt$payload6 = evt.payload, doorStyle = _evt$payload6.doorStyle, itemCDS = _evt$payload6.itemCDS, isAll = _evt$payload6.isAll;
|
|
1075
1121
|
props.itemsActions.setDoorStyle(doorStyle, itemCDS, isAll);
|
|
1076
|
-
return _context8.abrupt("continue",
|
|
1122
|
+
return _context8.abrupt("continue", 34);
|
|
1077
1123
|
case 21:
|
|
1078
1124
|
_doorStyle = evt.payload.doorStyle;
|
|
1079
|
-
props.itemsActions.setInitialDoorStyle(_doorStyle
|
|
1080
|
-
return _context8.abrupt("continue",
|
|
1125
|
+
props.itemsActions.setInitialDoorStyle(_doorStyle);
|
|
1126
|
+
return _context8.abrupt("continue", 34);
|
|
1081
1127
|
case 22:
|
|
1082
1128
|
props.projectActions.loadProject(evt.payload);
|
|
1083
|
-
return _context8.abrupt("continue",
|
|
1129
|
+
return _context8.abrupt("continue", 34);
|
|
1084
1130
|
case 23:
|
|
1085
1131
|
_value = state.getIn(['viewer2D']).toJS();
|
|
1086
1132
|
_value.a += 0.1;
|
|
@@ -1088,7 +1134,7 @@ function _handleExternalEvent() {
|
|
|
1088
1134
|
_value.e -= _value.SVGWidth * 0.1 / 2;
|
|
1089
1135
|
_value.f -= _value.SVGHeight * 0.1 / 2;
|
|
1090
1136
|
updateViwer2D(_value, props.viewer2DActions);
|
|
1091
|
-
return _context8.abrupt("continue",
|
|
1137
|
+
return _context8.abrupt("continue", 34);
|
|
1092
1138
|
case 24:
|
|
1093
1139
|
_value2 = state.getIn(['viewer2D']).toJS();
|
|
1094
1140
|
_value2.a -= 0.1;
|
|
@@ -1096,7 +1142,7 @@ function _handleExternalEvent() {
|
|
|
1096
1142
|
_value2.e += _value2.SVGWidth * 0.1 / 2;
|
|
1097
1143
|
_value2.f += _value2.SVGHeight * 0.1 / 2;
|
|
1098
1144
|
updateViwer2D(_value2, props.viewer2DActions);
|
|
1099
|
-
return _context8.abrupt("continue",
|
|
1145
|
+
return _context8.abrupt("continue", 34);
|
|
1100
1146
|
case 25:
|
|
1101
1147
|
// calculate the bounding box of all elements in plan
|
|
1102
1148
|
layer = state.scene.getIn(['layers', state.scene.selectedLayer]);
|
|
@@ -1123,18 +1169,26 @@ function _handleExternalEvent() {
|
|
|
1123
1169
|
viewer.f = (viewer.viewerHeight - (bb.maxY + bb.minY) * viewer.a) / 2;
|
|
1124
1170
|
updateViwer2D(viewer, props.viewer2DActions);
|
|
1125
1171
|
}
|
|
1126
|
-
return _context8.abrupt("continue",
|
|
1172
|
+
return _context8.abrupt("continue", 34);
|
|
1127
1173
|
case 26:
|
|
1128
1174
|
props.projectActions.undo();
|
|
1129
|
-
return _context8.abrupt("continue",
|
|
1175
|
+
return _context8.abrupt("continue", 34);
|
|
1130
1176
|
case 27:
|
|
1131
1177
|
props.projectActions.redo();
|
|
1132
|
-
return _context8.abrupt("continue",
|
|
1178
|
+
return _context8.abrupt("continue", 34);
|
|
1133
1179
|
case 28:
|
|
1134
1180
|
_evt$payload7 = evt.payload, moldingInfo = _evt$payload7.moldingInfo, isGlobal = _evt$payload7.isGlobal;
|
|
1135
1181
|
props.itemsActions.setMolding(moldingInfo, isGlobal);
|
|
1136
|
-
return _context8.abrupt("continue",
|
|
1182
|
+
return _context8.abrupt("continue", 34);
|
|
1137
1183
|
case 29:
|
|
1184
|
+
distElement = getElement(evt.payload, state);
|
|
1185
|
+
if (distElement) props.itemsActions.duplicateSelected(distElement);
|
|
1186
|
+
return _context8.abrupt("continue", 34);
|
|
1187
|
+
case 30:
|
|
1188
|
+
_distElement = getElement(evt.payload, state);
|
|
1189
|
+
if (_distElement) props.projectActions.remove(_distElement);
|
|
1190
|
+
return _context8.abrupt("continue", 34);
|
|
1191
|
+
case 31:
|
|
1138
1192
|
_evt$payload8 = evt.payload, option = _evt$payload8.option, _value3 = _evt$payload8.value;
|
|
1139
1193
|
if (option === _constants.PROJECT_SETTING_OPTION.UPDATE_CEIL_HEIGHT) {
|
|
1140
1194
|
props.viewer2DActions.updateCeilHeight(_value3);
|
|
@@ -1148,16 +1202,16 @@ function _handleExternalEvent() {
|
|
|
1148
1202
|
} else if (option === _constants.PROJECT_SETTING_OPTION.CHANGE_WINDOW_DOOR_MEASURE) {
|
|
1149
1203
|
props.viewer2DActions.changeWindowDoorMeasure(_value3);
|
|
1150
1204
|
}
|
|
1151
|
-
return _context8.abrupt("continue",
|
|
1152
|
-
case
|
|
1205
|
+
return _context8.abrupt("continue", 34);
|
|
1206
|
+
case 32:
|
|
1153
1207
|
layerId = state.getIn(['scene', 'selectedLayer']);
|
|
1154
1208
|
_layer = state.getIn(['scene', 'layers', layerId]);
|
|
1155
1209
|
_layer$getIn = _layer.getIn(['selected']), selectedLines = _layer$getIn.lines, selectedHoles = _layer$getIn.holes, selectedItems = _layer$getIn.items;
|
|
1156
|
-
for (_i2 = 0; _i2 < selectedLines.size; _i2++) (evt === null || evt === void 0 ? void 0 : evt.type) === _constants.EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? updateAttributeOfSelectedElement(_layer.getIn(['lines', selectedLines.get(_i2)]), evt.payload, state, _layer, props.projectActions) : updatePropertyOfSelectedElement(_layer.getIn(['lines', selectedLines.get(_i2)]), evt.payload, props.catalog, props.projectActions);
|
|
1157
|
-
for (_i3 = 0; _i3 < selectedHoles.size; _i3++) (evt === null || evt === void 0 ? void 0 : evt.type) === _constants.EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? updateAttributeOfSelectedElement(_layer.getIn(['holes', selectedHoles.get(_i3)]), evt.payload, state, _layer, props.projectActions) : updatePropertyOfSelectedElement(_layer.getIn(['holes', selectedHoles.get(_i3)]), evt.payload, props.catalog, props.projectActions);
|
|
1158
|
-
for (_i4 = 0; _i4 < selectedItems.size; _i4++) (evt === null || evt === void 0 ? void 0 : evt.type) === _constants.EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? updateAttributeOfSelectedElement(_layer.getIn(['items', selectedItems.get(_i4)]), evt.payload, state, _layer, props.projectActions) : updatePropertyOfSelectedElement(_layer.getIn(['items', selectedItems.get(_i4)]), evt.payload, props.catalog, props.projectActions);
|
|
1159
|
-
return _context8.abrupt("continue",
|
|
1160
|
-
case
|
|
1210
|
+
for (_i2 = 0; _i2 < selectedLines.size; _i2++) (evt === null || evt === void 0 ? void 0 : evt.type) === _constants.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);
|
|
1211
|
+
for (_i3 = 0; _i3 < selectedHoles.size; _i3++) (evt === null || evt === void 0 ? void 0 : evt.type) === _constants.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);
|
|
1212
|
+
for (_i4 = 0; _i4 < selectedItems.size; _i4++) (evt === null || evt === void 0 ? void 0 : evt.type) === _constants.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);
|
|
1213
|
+
return _context8.abrupt("continue", 34);
|
|
1214
|
+
case 33:
|
|
1161
1215
|
// send scene object from 3DTool to HostApp using internalEvent
|
|
1162
1216
|
(_props$onInternalEven2 = props.onInternalEvent) === null || _props$onInternalEven2 === void 0 || _props$onInternalEven2.call(props, {
|
|
1163
1217
|
type: _constants.INTERNAL_EVENT_SYNC_SCENE,
|
|
@@ -1165,8 +1219,8 @@ function _handleExternalEvent() {
|
|
|
1165
1219
|
scene: state.scene.toJS()
|
|
1166
1220
|
}
|
|
1167
1221
|
});
|
|
1168
|
-
return _context8.abrupt("continue",
|
|
1169
|
-
case
|
|
1222
|
+
return _context8.abrupt("continue", 34);
|
|
1223
|
+
case 34:
|
|
1170
1224
|
case "end":
|
|
1171
1225
|
return _context8.stop();
|
|
1172
1226
|
}
|