kitchen-simulator 2.0.57 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/catalog/holes/window-clear/planner-element.js +2 -2
- package/es/components/viewer2d/viewer2d.js +8 -8
- package/es/components/viewer3d/front3D.js +3 -2
- package/es/components/viewer3d/viewer3d.js +12 -4
- package/es/constants.js +11 -1
- package/es/devLiteRenderer.js +84 -63
- package/es/plugins/SVGLoader.js +7 -5
- package/es/utils/isolate-event-handler.js +150 -88
- package/es/utils/molding.js +4 -0
- package/lib/catalog/holes/window-clear/planner-element.js +2 -2
- package/lib/components/viewer2d/viewer2d.js +7 -8
- package/lib/components/viewer3d/front3D.js +3 -2
- package/lib/components/viewer3d/viewer3d.js +11 -4
- package/lib/constants.js +15 -5
- package/lib/devLiteRenderer.js +83 -62
- package/lib/plugins/SVGLoader.js +7 -5
- package/lib/utils/isolate-event-handler.js +149 -87
- package/lib/utils/molding.js +5 -0
- package/package.json +1 -1
|
@@ -4,12 +4,12 @@ import { loadGLTF, scaleObject } from "../../utils/load-obj";
|
|
|
4
4
|
import { OBJTYPE_MESH } from "../../../constants";
|
|
5
5
|
var cached3DWindow = null;
|
|
6
6
|
export default {
|
|
7
|
-
name: 'Window',
|
|
7
|
+
name: 'Clear Window',
|
|
8
8
|
prototype: 'holes',
|
|
9
9
|
info: {
|
|
10
10
|
title: 'Clear',
|
|
11
11
|
tag: ['window'],
|
|
12
|
-
description: 'Window',
|
|
12
|
+
description: 'Clear Window',
|
|
13
13
|
image: '/assets/img/svg/window/Clear.svg',
|
|
14
14
|
url: '/assets/gltf/window_clear.gltf'
|
|
15
15
|
},
|
|
@@ -17,6 +17,7 @@ import { Map } from 'immutable';
|
|
|
17
17
|
import { formatNumber } from "../../utils/math";
|
|
18
18
|
import { isEmpty } from "../../utils/helper"; // variables
|
|
19
19
|
import { isWarningItem } from "./utils";
|
|
20
|
+
import { MoldingUtils } from "../../utils/export";
|
|
20
21
|
// variables
|
|
21
22
|
var pinFlag = false;
|
|
22
23
|
var sFlag = false; //for all object move
|
|
@@ -1243,12 +1244,9 @@ export default function Viewer2D(_ref, _ref2) {
|
|
|
1243
1244
|
break;
|
|
1244
1245
|
}
|
|
1245
1246
|
if (internalType) {
|
|
1246
|
-
var
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
_currentObject = state.getIn(['scene', 'layers', layerID, elementData === null || elementData === void 0 ? void 0 : elementData.prototype, elementData === null || elementData === void 0 ? void 0 : elementData.id]);
|
|
1250
|
-
if (internalType === INTERNAL_EVENT_SELECT_ELEMENT && ((_currentObject2 = _currentObject) === null || _currentObject2 === void 0 ? void 0 : _currentObject2.prototype) === 'items' && draggingDistance > constants.EPSILON) internalType = INTERNAL_EVENT_DRAG_ELEMENT;
|
|
1251
|
-
} else if (draggingDistance > constants.EPSILON) {
|
|
1247
|
+
var _currentObject2;
|
|
1248
|
+
var _currentObject = state.getIn(['scene', 'layers', layerID, elementData === null || elementData === void 0 ? void 0 : elementData.prototype, elementData === null || elementData === void 0 ? void 0 : elementData.id]);
|
|
1249
|
+
if (internalType === INTERNAL_EVENT_SELECT_ELEMENT && ((_currentObject2 = _currentObject) === null || _currentObject2 === void 0 ? void 0 : _currentObject2.prototype) === 'items' && draggingDistance > constants.EPSILON) internalType = INTERNAL_EVENT_DRAG_ELEMENT;else if (internalType === INTERNAL_EVENT_DRAW_ELEMENT || draggingDistance > constants.EPSILON) {
|
|
1252
1250
|
var elementID = state.getIn(['scene', 'layers', layerID, 'selected', elementPrototype]).first();
|
|
1253
1251
|
_currentObject = state.getIn(['scene', 'layers', layerID, elementPrototype, elementID]);
|
|
1254
1252
|
}
|
|
@@ -1266,6 +1264,8 @@ export default function Viewer2D(_ref, _ref2) {
|
|
|
1266
1264
|
} else if (((_currentObject5 = _currentObject) === null || _currentObject5 === void 0 ? void 0 : _currentObject5.prototype) === 'items') {
|
|
1267
1265
|
// check this cabinet has warning box
|
|
1268
1266
|
payload.isWarning = isWarningItem(_currentObject);
|
|
1267
|
+
// check this item is snapped to wall
|
|
1268
|
+
payload.isAttachedWall = MoldingUtils.isAttachedWall(layer, _currentObject);
|
|
1269
1269
|
}
|
|
1270
1270
|
|
|
1271
1271
|
// send selection event befor replace event
|
|
@@ -1289,10 +1289,10 @@ export default function Viewer2D(_ref, _ref2) {
|
|
|
1289
1289
|
if (_zoomValue > constants.MAX_ZOOM_IN_SCALE) return;
|
|
1290
1290
|
if (_zoomValue < 0 || Number.isNaN(_zoomValue)) return;
|
|
1291
1291
|
if (rulerEdit !== null && value.startX && value.startY || value.lastAction === 'zoom') {
|
|
1292
|
-
var _rulerEdit = document.getElementById('ruler_numberInput'),
|
|
1292
|
+
var _rulerEdit = document.getElementById('ruler_numberInput') && document.getElementById('ruler_numberInput'),
|
|
1293
1293
|
_rect;
|
|
1294
1294
|
if (rulerEditID !== null) {
|
|
1295
|
-
_rect = document.getElementById(rulerEditID);
|
|
1295
|
+
_rect = document.getElementById(rulerEditID) && document.getElementById(rulerEditID);
|
|
1296
1296
|
}
|
|
1297
1297
|
var bbox;
|
|
1298
1298
|
if (_rect && _rulerEdit) {
|
|
@@ -2,6 +2,7 @@ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
|
2
2
|
import React, { useState, useEffect } from 'react';
|
|
3
3
|
import Viewer3D from "./viewer3d";
|
|
4
4
|
import State3D from "./ruler-utils/state3D";
|
|
5
|
+
import { isEmpty } from "../viewer2d/utils";
|
|
5
6
|
var k = 0;
|
|
6
7
|
export default function Front3D(_ref, _ref2) {
|
|
7
8
|
var width = _ref.width,
|
|
@@ -26,9 +27,9 @@ export default function Front3D(_ref, _ref2) {
|
|
|
26
27
|
setToolbar('');
|
|
27
28
|
};
|
|
28
29
|
useEffect(function () {
|
|
29
|
-
document.getElementById('front').addEventListener('mouseup', mouseUpEvent);
|
|
30
|
+
if (!isEmpty(document.getElementById('front'))) document.getElementById('front').addEventListener('mouseup', mouseUpEvent);
|
|
30
31
|
return function () {
|
|
31
|
-
document.getElementById('front').removeEventListener('mouseup', mouseUpEvent);
|
|
32
|
+
if (!isEmpty(document.getElementById('front'))) document.getElementById('front').removeEventListener('mouseup', mouseUpEvent);
|
|
32
33
|
};
|
|
33
34
|
}, []);
|
|
34
35
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("svg", {
|
|
@@ -27,8 +27,9 @@ import { GeometryUtils } from "../../utils/export";
|
|
|
27
27
|
import { handleCamRect, isElevationView, isEmpty } from "../../utils/helper";
|
|
28
28
|
import { RGBELoader } from 'three/examples/jsm/loaders/RGBELoader';
|
|
29
29
|
import CameraControls from 'camera-controls';
|
|
30
|
-
import { returnReplaceableDeepSearchType } from "../viewer2d/utils";
|
|
31
30
|
import { getAllMeshes, vectorIntersectWithMesh } from "../../utils/objects-utils";
|
|
31
|
+
import { isWarningItem, returnReplaceableDeepSearchType } from "../viewer2d/utils";
|
|
32
|
+
import { MoldingUtils } from "../../utils/export";
|
|
32
33
|
CameraControls.install({
|
|
33
34
|
THREE: Three
|
|
34
35
|
});
|
|
@@ -1522,7 +1523,7 @@ var Scene3DViewer = /*#__PURE__*/function (_React$Component) {
|
|
|
1522
1523
|
actions.holesActions.endDraggingHole3D(sPoint.x, sPoint.y);
|
|
1523
1524
|
internalType = INTERNAL_EVENT_SELECT_ELEMENT;
|
|
1524
1525
|
elementID = selectedObject.holeID;
|
|
1525
|
-
elementPrototype = '
|
|
1526
|
+
elementPrototype = 'holes';
|
|
1526
1527
|
}
|
|
1527
1528
|
break;
|
|
1528
1529
|
case 'areaID' in selectedObject:
|
|
@@ -1628,10 +1629,17 @@ var Scene3DViewer = /*#__PURE__*/function (_React$Component) {
|
|
|
1628
1629
|
}
|
|
1629
1630
|
}
|
|
1630
1631
|
if (!isEmpty(internalType)) {
|
|
1631
|
-
var _this2$props$onIntern, _this2$props
|
|
1632
|
+
var _selectedElement, _selectedElement2, _this2$props$onIntern, _this2$props;
|
|
1633
|
+
var payload = (_selectedElement = selectedElement) === null || _selectedElement === void 0 ? void 0 : _selectedElement.toJS();
|
|
1634
|
+
if (((_selectedElement2 = selectedElement) === null || _selectedElement2 === void 0 ? void 0 : _selectedElement2.prototype) === 'items') {
|
|
1635
|
+
// check this cabinet has warning box
|
|
1636
|
+
payload.isWarning = isWarningItem(selectedElement);
|
|
1637
|
+
// check this item is snapped to wall
|
|
1638
|
+
payload.isAttachedWall = MoldingUtils.isAttachedWall(layer, selectedElement);
|
|
1639
|
+
}
|
|
1632
1640
|
(_this2$props$onIntern = (_this2$props = _this2.props).onInternalEvent) === null || _this2$props$onIntern === void 0 || _this2$props$onIntern.call(_this2$props, {
|
|
1633
1641
|
type: internalType,
|
|
1634
|
-
value:
|
|
1642
|
+
value: payload
|
|
1635
1643
|
});
|
|
1636
1644
|
}
|
|
1637
1645
|
};
|
package/es/constants.js
CHANGED
|
@@ -653,7 +653,7 @@ export var PROJECT_SETTING_OPTION = {
|
|
|
653
653
|
CHANGE_WINDOW_DOOR_MEASURE: CHANGE_WINDOW_DOOR_MEASURE
|
|
654
654
|
};
|
|
655
655
|
export var HOLE_NAMES = {
|
|
656
|
-
WINDOW_CLEAR: 'Window',
|
|
656
|
+
WINDOW_CLEAR: 'Clear Window',
|
|
657
657
|
WINDOW_CROSS: 'Cross Window',
|
|
658
658
|
WINDOW_DOUBLE_HUNG: 'Double Hung Window',
|
|
659
659
|
WINDOW_VERTICAL: 'window-vertical',
|
|
@@ -698,6 +698,15 @@ export var PROP_ALTITUDE = 'altitude';
|
|
|
698
698
|
export var PROP_RESIZE_WIDTH = 'width';
|
|
699
699
|
export var PROP_RESIZE_HEIGHT = 'height';
|
|
700
700
|
export var PROP_RESIZE_DEPTH = 'depth';
|
|
701
|
+
|
|
702
|
+
// finishing typs
|
|
703
|
+
export var FINISHING_TYPE = {
|
|
704
|
+
COUNTER_TOP: 'counterTop',
|
|
705
|
+
DOOR_HANDLE: 'doorHandle',
|
|
706
|
+
WALL_COLOR: 'wallColor',
|
|
707
|
+
FLOOR_STYLE: 'floorStyle',
|
|
708
|
+
BACKSPLASH: 'backsplash'
|
|
709
|
+
};
|
|
701
710
|
export var MAX_ZOOM_IN_SCALE = Infinity;
|
|
702
711
|
|
|
703
712
|
// external event type
|
|
@@ -729,6 +738,7 @@ export var EXTERNAL_EVENT_DELETE_ELEMENT = 'EXTERNAL_EVENT_DELETE_ELEMENT';
|
|
|
729
738
|
export var EXTERNAL_EVENT_UPDATE_ATTRIBUTE = 'EXTERNAL_EVENT_UPDATE_ATTRIBUTE'; // update the element's attributes (distance, rotation...) in the property window
|
|
730
739
|
export var EXTERNAL_EVENT_UPDATE_PROPERTY = 'EXTERNAL_EVENT_UPDATE_PROPERTY'; // update the element's property (flip_doorhandle, open_doors...) in the property window
|
|
731
740
|
export var EXTERNAL_EVENT_REPLACE_CABINET = 'EXTERNAL_EVENT_REPLACE_CABINET';
|
|
741
|
+
export var EXTERNAL_EVENT_SET_FINISHING = 'EXTERNAL_EVENT_SET_FINISHING'; // set finishing(wallColor, floorStyle, doorHandle, backsplash, counterTop)
|
|
732
742
|
|
|
733
743
|
// internal event type
|
|
734
744
|
export var INTERNAL_EVENT_UNSELECT_ALL = 'INTERNAL_EVENT_UNSELECT_ALL';
|
package/es/devLiteRenderer.js
CHANGED
|
@@ -19,7 +19,7 @@ import replaceCabinetPayload from "./mocks/replaceCabinetPayload.json";
|
|
|
19
19
|
import ReactDOM from 'react-dom';
|
|
20
20
|
import LiteRenderer from "./LiteRenderer";
|
|
21
21
|
import { Button } from 'antd';
|
|
22
|
-
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_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, PROP_RESIZE_WIDTH, EXTERNAL_EVENT_REPLACE_CABINET,
|
|
22
|
+
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_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, PROP_RESIZE_WIDTH, EXTERNAL_EVENT_REPLACE_CABINET, EXTERNAL_EVENT_SET_FINISHING, FINISHING_TYPE } from "./constants";
|
|
23
23
|
|
|
24
24
|
// --- renderer props ---
|
|
25
25
|
var options = {
|
|
@@ -252,70 +252,70 @@ function WorkSpace(props) {
|
|
|
252
252
|
doorStyles: {
|
|
253
253
|
base: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
254
254
|
counttop: 'https://media.test.diydesignspace.com/uploads/CountTop/202105074107_5/texture/Unique_Calcatta_texture.jpg',
|
|
255
|
-
interior: '
|
|
255
|
+
interior: 'https://media.test.diydesignspace.com/uploads/assets/default/maple.jpg',
|
|
256
256
|
base_door_1: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
257
257
|
base_fixed_drawer_door_1: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
258
258
|
base_drawer_1: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
259
259
|
base_drawer_door_1: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
260
|
-
door_handle_1: '
|
|
261
|
-
fixed_drawer_door_handle_1: '
|
|
262
|
-
drawer_door_handle_1: '
|
|
260
|
+
door_handle_1: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
261
|
+
fixed_drawer_door_handle_1: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
262
|
+
drawer_door_handle_1: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
263
263
|
base_door_2: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
264
264
|
base_fixed_drawer_door_2: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
265
265
|
base_drawer_2: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
266
266
|
base_drawer_door_2: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
267
|
-
door_handle_2: '
|
|
268
|
-
fixed_drawer_door_handle_2: '
|
|
269
|
-
drawer_door_handle_2: '
|
|
267
|
+
door_handle_2: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
268
|
+
fixed_drawer_door_handle_2: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
269
|
+
drawer_door_handle_2: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
270
270
|
base_door_3: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
271
271
|
base_fixed_drawer_door_3: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
272
272
|
base_drawer_3: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
273
273
|
base_drawer_door_3: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
274
|
-
door_handle_3: '
|
|
275
|
-
fixed_drawer_door_handle_3: '
|
|
276
|
-
drawer_door_handle_3: '
|
|
274
|
+
door_handle_3: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
275
|
+
fixed_drawer_door_handle_3: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
276
|
+
drawer_door_handle_3: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
277
277
|
base_door_4: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
278
278
|
base_fixed_drawer_door_4: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
279
279
|
base_drawer_4: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
280
280
|
base_drawer_door_4: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
281
|
-
door_handle_4: '
|
|
282
|
-
fixed_drawer_door_handle_4: '
|
|
283
|
-
drawer_door_handle_4: '
|
|
281
|
+
door_handle_4: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
282
|
+
fixed_drawer_door_handle_4: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
283
|
+
drawer_door_handle_4: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
284
284
|
base_door_5: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
285
285
|
base_fixed_drawer_door_5: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
286
286
|
base_drawer_5: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
287
287
|
base_drawer_door_5: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
288
|
-
door_handle_5: '
|
|
289
|
-
fixed_drawer_door_handle_5: '
|
|
290
|
-
drawer_door_handle_5: '
|
|
288
|
+
door_handle_5: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
289
|
+
fixed_drawer_door_handle_5: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
290
|
+
drawer_door_handle_5: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
291
291
|
base_door_6: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
292
292
|
base_fixed_drawer_door_6: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
293
293
|
base_drawer_6: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
294
294
|
base_drawer_door_6: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
295
|
-
door_handle_6: '
|
|
296
|
-
fixed_drawer_door_handle_6: '
|
|
297
|
-
drawer_door_handle_6: '
|
|
295
|
+
door_handle_6: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
296
|
+
fixed_drawer_door_handle_6: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
297
|
+
drawer_door_handle_6: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
298
298
|
base_door_7: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
299
299
|
base_fixed_drawer_door_7: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
300
300
|
base_drawer_7: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
301
301
|
base_drawer_door_7: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
302
|
-
door_handle_7: '
|
|
303
|
-
fixed_drawer_door_handle_7: '
|
|
304
|
-
drawer_door_handle_7: '
|
|
302
|
+
door_handle_7: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
303
|
+
fixed_drawer_door_handle_7: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
304
|
+
drawer_door_handle_7: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
305
305
|
base_door_8: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
306
306
|
base_fixed_drawer_door_8: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
307
307
|
base_drawer_8: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
308
308
|
base_drawer_door_8: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
309
|
-
door_handle_8: '
|
|
310
|
-
fixed_drawer_door_handle_8: '
|
|
311
|
-
drawer_door_handle_8: '
|
|
309
|
+
door_handle_8: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
310
|
+
fixed_drawer_door_handle_8: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
311
|
+
drawer_door_handle_8: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
312
312
|
base_door_9: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
313
313
|
base_fixed_drawer_door_9: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
314
314
|
base_drawer_9: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
315
315
|
base_drawer_door_9: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
|
|
316
|
-
door_handle_9: '
|
|
317
|
-
fixed_drawer_door_handle_9: '
|
|
318
|
-
drawer_door_handle_9: '
|
|
316
|
+
door_handle_9: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
317
|
+
fixed_drawer_door_handle_9: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
|
|
318
|
+
drawer_door_handle_9: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg'
|
|
319
319
|
},
|
|
320
320
|
installation_types: [125, 124]
|
|
321
321
|
}
|
|
@@ -417,6 +417,10 @@ function WorkSpace(props) {
|
|
|
417
417
|
payload: {
|
|
418
418
|
attributeName: ATT_ITEM_ROTATION,
|
|
419
419
|
value: 45
|
|
420
|
+
},
|
|
421
|
+
callback: function callback(updatedAttributeForm) {
|
|
422
|
+
console.log(updatedAttributeForm);
|
|
423
|
+
// Do something here with new attributes
|
|
420
424
|
}
|
|
421
425
|
};
|
|
422
426
|
setExternalEvent(evt);
|
|
@@ -553,74 +557,91 @@ function WorkSpace(props) {
|
|
|
553
557
|
actionType: "danger",
|
|
554
558
|
onClick: function onClick() {
|
|
555
559
|
var evt = {
|
|
556
|
-
type:
|
|
557
|
-
payload: {
|
|
560
|
+
type: EXTERNAL_EVENT_SET_FINISHING,
|
|
561
|
+
payload: {
|
|
562
|
+
category: FINISHING_TYPE.COUNTER_TOP,
|
|
563
|
+
texture: 'https://media.test.diydesignspace.com/uploads/CountTop/202111302746_7/texture/Arabescato_texture.jpg'
|
|
564
|
+
}
|
|
558
565
|
};
|
|
559
566
|
setExternalEvent(evt);
|
|
560
567
|
}
|
|
561
|
-
}, "
|
|
568
|
+
}, "Set Finishing (CounterTop)"), /*#__PURE__*/React.createElement(Button, {
|
|
562
569
|
actionType: "danger",
|
|
563
570
|
onClick: function onClick() {
|
|
564
571
|
var evt = {
|
|
565
|
-
type:
|
|
572
|
+
type: EXTERNAL_EVENT_SET_FINISHING,
|
|
566
573
|
payload: {
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
value: new Map({
|
|
570
|
-
length: 68.57999780544007,
|
|
571
|
-
// cm
|
|
572
|
-
_length: 27,
|
|
573
|
-
// inch
|
|
574
|
-
_unit: 'in'
|
|
575
|
-
})
|
|
574
|
+
category: FINISHING_TYPE.BACKSPLASH,
|
|
575
|
+
texture: 'https://media.test.diydesignspace.com/uploads/CountTop/202305225249_14/texture/Unique_Marquina_texture.jpg'
|
|
576
576
|
}
|
|
577
577
|
};
|
|
578
578
|
setExternalEvent(evt);
|
|
579
579
|
}
|
|
580
|
-
}, "
|
|
580
|
+
}, "Set Finishing (Backsplash)"), /*#__PURE__*/React.createElement(Button, {
|
|
581
581
|
actionType: "danger",
|
|
582
582
|
onClick: function onClick() {
|
|
583
583
|
var evt = {
|
|
584
|
-
type:
|
|
584
|
+
type: EXTERNAL_EVENT_SET_FINISHING,
|
|
585
585
|
payload: {
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
value: new Map({
|
|
589
|
-
length: 68.57999780544007,
|
|
590
|
-
// cm
|
|
591
|
-
_length: 27,
|
|
592
|
-
// inch
|
|
593
|
-
_unit: 'in'
|
|
594
|
-
})
|
|
586
|
+
category: FINISHING_TYPE.FLOOR_STYLE,
|
|
587
|
+
texture: 'https://media.test.diydesignspace.com/uploads/CountTop/202203163338_3/texture/oak-chestnut.webp'
|
|
595
588
|
}
|
|
596
589
|
};
|
|
597
590
|
setExternalEvent(evt);
|
|
598
591
|
}
|
|
599
|
-
}, "
|
|
592
|
+
}, "Set Finishing (Floor Style)"), /*#__PURE__*/React.createElement(Button, {
|
|
600
593
|
actionType: "danger",
|
|
601
594
|
onClick: function onClick() {
|
|
602
595
|
var evt = {
|
|
603
|
-
type:
|
|
596
|
+
type: EXTERNAL_EVENT_SET_FINISHING,
|
|
604
597
|
payload: {
|
|
605
|
-
|
|
606
|
-
|
|
598
|
+
category: FINISHING_TYPE.WALL_COLOR,
|
|
599
|
+
color: '#bab863'
|
|
607
600
|
}
|
|
608
601
|
};
|
|
609
602
|
setExternalEvent(evt);
|
|
610
603
|
}
|
|
611
|
-
}, "
|
|
604
|
+
}, "Set Finishing (Wall Color)"), /*#__PURE__*/React.createElement(Button, {
|
|
612
605
|
actionType: "danger",
|
|
613
606
|
onClick: function onClick() {
|
|
614
607
|
var evt = {
|
|
615
|
-
type:
|
|
608
|
+
type: EXTERNAL_EVENT_SET_FINISHING,
|
|
616
609
|
payload: {
|
|
617
|
-
|
|
618
|
-
|
|
610
|
+
category: FINISHING_TYPE.DOOR_HANDLE,
|
|
611
|
+
gltf: 'https://media.test.diydesignspace.com/uploads/DoorHandle/202107294150_29/gltf/Handle1.gltf'
|
|
619
612
|
}
|
|
620
613
|
};
|
|
621
614
|
setExternalEvent(evt);
|
|
622
615
|
}
|
|
623
|
-
}, "
|
|
616
|
+
}, "Set Finishing (Door handle)"), /*#__PURE__*/React.createElement(Button, {
|
|
617
|
+
actionType: "danger",
|
|
618
|
+
onClick: function onClick() {
|
|
619
|
+
var evt = {
|
|
620
|
+
type: EXTERNAL_EVENT_CENTERING_2D,
|
|
621
|
+
payload: {}
|
|
622
|
+
};
|
|
623
|
+
setExternalEvent(evt);
|
|
624
|
+
}
|
|
625
|
+
}, "Centering Viewer2D"), /*#__PURE__*/React.createElement(Button, {
|
|
626
|
+
actionType: "danger",
|
|
627
|
+
onClick: function onClick() {
|
|
628
|
+
var evt = {
|
|
629
|
+
type: EXTERNAL_EVENT_UPDATE_PROPERTY,
|
|
630
|
+
payload: {
|
|
631
|
+
propertyName: PROP_RESIZE_WIDTH,
|
|
632
|
+
// this property should be Map
|
|
633
|
+
value: new Map({
|
|
634
|
+
length: 68.57999780544007,
|
|
635
|
+
// cm
|
|
636
|
+
_length: 27,
|
|
637
|
+
// inch
|
|
638
|
+
_unit: 'in'
|
|
639
|
+
})
|
|
640
|
+
}
|
|
641
|
+
};
|
|
642
|
+
setExternalEvent(evt);
|
|
643
|
+
}
|
|
644
|
+
}, "Change width to 27\""), /*#__PURE__*/React.createElement(Button, {
|
|
624
645
|
actionType: "danger",
|
|
625
646
|
onClick: function onClick() {
|
|
626
647
|
var evt = {
|
|
@@ -667,4 +688,4 @@ ReactDOM.render(/*#__PURE__*/React.createElement(ContainerDimensions, null, func
|
|
|
667
688
|
width: width,
|
|
668
689
|
height: height
|
|
669
690
|
});
|
|
670
|
-
}), document.getElementById('app'));
|
|
691
|
+
}), document.getElementById('app') && document.getElementById('app'));
|
package/es/plugins/SVGLoader.js
CHANGED
|
@@ -79,11 +79,13 @@ SVGLoader.prototype = Object.assign(Object.create(Loader.prototype), {
|
|
|
79
79
|
case 'use':
|
|
80
80
|
style = parseStyle(node, style);
|
|
81
81
|
var usedNodeId = node.href.baseVal.substring(1);
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
82
|
+
if (node.viewportElement.getElementById(usedNodeId)) {
|
|
83
|
+
var usedNode = node.viewportElement.getElementById(usedNodeId);
|
|
84
|
+
if (usedNode) {
|
|
85
|
+
parseNode(usedNode, style);
|
|
86
|
+
} else {
|
|
87
|
+
console.warn("SVGLoader: 'use node' references non-existent node id: " + usedNodeId);
|
|
88
|
+
}
|
|
87
89
|
}
|
|
88
90
|
break;
|
|
89
91
|
default:
|