kitchen-simulator 11.23.0 → 11.25.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/components/viewer2d/line.js +2 -2
- package/es/events/external/handleExternalEvent.util.js +2 -0
- package/es/events/external/handlers.loadProject.js +6 -3
- package/es/mappings/external-events/mappers/ccdfToCDSMapper.js +2 -1
- package/es/mappings/external-events/mappers/loadProjectMapper.js +24 -14
- package/es/mappings/holesToCatalog.js +1 -0
- package/es/utils/geometry.js +17 -0
- package/lib/components/viewer2d/line.js +2 -2
- package/lib/events/external/handleExternalEvent.util.js +2 -0
- package/lib/events/external/handlers.loadProject.js +6 -3
- package/lib/mappings/external-events/mappers/ccdfToCDSMapper.js +2 -1
- package/lib/mappings/external-events/mappers/loadProjectMapper.js +24 -14
- package/lib/mappings/holesToCatalog.js +1 -0
- package/lib/utils/geometry.js +17 -0
- package/package.json +1 -1
|
@@ -611,7 +611,7 @@ export default function Line(_ref) {
|
|
|
611
611
|
return '';
|
|
612
612
|
}
|
|
613
613
|
var startAt = length * hole.offset;
|
|
614
|
-
var renderedHole = catalog.getElement(hole.type).render2D(hole, layer, scene);
|
|
614
|
+
var renderedHole = catalog.getElement(hole.type) ? catalog.getElement(hole.type).render2D(hole, layer, scene) : undefined;
|
|
615
615
|
return /*#__PURE__*/React.createElement("g", {
|
|
616
616
|
key: holeID,
|
|
617
617
|
transform: "translate(".concat(startAt, ", 3.5)"),
|
|
@@ -622,7 +622,7 @@ export default function Line(_ref) {
|
|
|
622
622
|
"data-layer": layer.id
|
|
623
623
|
}, renderedHole);
|
|
624
624
|
});
|
|
625
|
-
var renderedLine = catalog.getElement(line.type).render2D(line, layer, scene, state);
|
|
625
|
+
var renderedLine = catalog.getElement(line.type) ? catalog.getElement(line.type).render2D(line, layer, scene, state) : undefined;
|
|
626
626
|
var holeTemp = [];
|
|
627
627
|
var renderedRuler = [];
|
|
628
628
|
var renderedAllRuler = [];
|
|
@@ -536,6 +536,7 @@ function _addItemToCatalog() {
|
|
|
536
536
|
}
|
|
537
537
|
return _context5.abrupt("return");
|
|
538
538
|
case 1:
|
|
539
|
+
element.name = element.name.toLowerCase();
|
|
539
540
|
elementJs = populateCCDFList(element); // if (isEmpty(catalog?.elements[element.name])) {
|
|
540
541
|
_context5.next = 2;
|
|
541
542
|
return loadSVGsByItem(elementJs);
|
|
@@ -624,6 +625,7 @@ function _addItemToCatalog() {
|
|
|
624
625
|
|
|
625
626
|
// rplace new array to the elementJS
|
|
626
627
|
if (!isEmpty(mergedTempPlaceholder)) elementJs.structure_json.tempPlaceholders = mergedTempPlaceholder;
|
|
628
|
+
// elementJs.name = elementJs.name.toLowerCase
|
|
627
629
|
/***** join new tempPlaceholder to the old element - end *****/
|
|
628
630
|
|
|
629
631
|
elementJs = exporter(elementJs);
|
|
@@ -31,15 +31,18 @@ function _handleLoadProjectEvent() {
|
|
|
31
31
|
if (!ccdf_list.some(function (v) {
|
|
32
32
|
return v.scene_cabinet_id === it.id;
|
|
33
33
|
})) {
|
|
34
|
-
var _it$ccdf$catalog_cabi, _it$ccdf, _it$ccdf$cabinet_id, _it$ccdf2, _it$ccdf$door_finish_, _it$ccdf3
|
|
34
|
+
var _it$sizeinfo, _it$properties4, _it$properties5, _it$properties6, _it$ccdf$catalog_cabi, _it$ccdf, _it$ccdf$cabinet_id, _it$ccdf2, _it$ccdf$door_finish_, _it$ccdf3;
|
|
35
35
|
ccdf_list.push({
|
|
36
36
|
cabinet_sku: it.type,
|
|
37
|
-
sizeinfo: it.sizeinfo
|
|
37
|
+
sizeinfo: (_it$sizeinfo = it.sizeinfo) !== null && _it$sizeinfo !== void 0 ? _it$sizeinfo : {
|
|
38
|
+
width: it === null || it === void 0 || (_it$properties4 = it.properties) === null || _it$properties4 === void 0 || (_it$properties4 = _it$properties4.width) === null || _it$properties4 === void 0 ? void 0 : _it$properties4._length,
|
|
39
|
+
height: it === null || it === void 0 || (_it$properties5 = it.properties) === null || _it$properties5 === void 0 || (_it$properties5 = _it$properties5.height) === null || _it$properties5 === void 0 ? void 0 : _it$properties5._length,
|
|
40
|
+
depth: it === null || it === void 0 || (_it$properties6 = it.properties) === null || _it$properties6 === void 0 || (_it$properties6 = _it$properties6.depth) === null || _it$properties6 === void 0 ? void 0 : _it$properties6._length
|
|
41
|
+
},
|
|
38
42
|
catalog_cabinet_sku: (_it$ccdf$catalog_cabi = it === null || it === void 0 || (_it$ccdf = it.ccdf) === null || _it$ccdf === void 0 ? void 0 : _it$ccdf.catalog_cabinet_sku) !== null && _it$ccdf$catalog_cabi !== void 0 ? _it$ccdf$catalog_cabi : it.sku_number,
|
|
39
43
|
cabinet_id: (_it$ccdf$cabinet_id = it === null || it === void 0 || (_it$ccdf2 = it.ccdf) === null || _it$ccdf2 === void 0 ? void 0 : _it$ccdf2.cabinet_id) !== null && _it$ccdf$cabinet_id !== void 0 ? _it$ccdf$cabinet_id : it === null || it === void 0 ? void 0 : it.itemID,
|
|
40
44
|
ccdf: it.ccdf,
|
|
41
45
|
target_door_finish_id: (_it$ccdf$door_finish_ = it === null || it === void 0 || (_it$ccdf3 = it.ccdf) === null || _it$ccdf3 === void 0 ? void 0 : _it$ccdf3.door_finish_id) !== null && _it$ccdf$door_finish_ !== void 0 ? _it$ccdf$door_finish_ : it.doorStyle.id,
|
|
42
|
-
long_name: (_it$long_name = it === null || it === void 0 ? void 0 : it.long_name) !== null && _it$long_name !== void 0 ? _it$long_name : null,
|
|
43
46
|
scene_cabinet_id: it.id
|
|
44
47
|
});
|
|
45
48
|
}
|
|
@@ -7,6 +7,7 @@ export function mapFromCCDFToCDS(ccdf_list) {
|
|
|
7
7
|
var itemsArray = sceneItems ? Array.isArray(sceneItems) ? sceneItems : Object.values(sceneItems) : null;
|
|
8
8
|
var itemCDSList = [];
|
|
9
9
|
ccdf_list === null || ccdf_list === void 0 || ccdf_list.forEach(function (asItem) {
|
|
10
|
+
var _asItem$assets3d;
|
|
10
11
|
// IMPORTANT: DIY-834-43
|
|
11
12
|
// `itemCDSData` must be recreated per asItem. Reusing it across iterations
|
|
12
13
|
// can leak one cabinet's door/drawer mappings into another.
|
|
@@ -15,7 +16,7 @@ export function mapFromCCDFToCDS(ccdf_list) {
|
|
|
15
16
|
if (!isEmpty(asItem === null || asItem === void 0 ? void 0 : asItem.id)) {
|
|
16
17
|
cabitnetDoorStyleId = asItem.id;
|
|
17
18
|
}
|
|
18
|
-
asItem === null || asItem === void 0 || asItem.assets3d.forEach(function (as) {
|
|
19
|
+
asItem === null || asItem === void 0 || (_asItem$assets3d = asItem.assets3d) === null || _asItem$assets3d === void 0 || _asItem$assets3d.forEach(function (as) {
|
|
19
20
|
if (!isEmpty(as === null || as === void 0 ? void 0 : as.placeholder_name) && !isEmpty(as === null || as === void 0 ? void 0 : as.gltf)) {
|
|
20
21
|
var updatedName = 'base_' + (as === null || as === void 0 ? void 0 : as.placeholder_name) + '_gltf';
|
|
21
22
|
itemCDSData[updatedName] = as === null || as === void 0 ? void 0 : as.gltf;
|
|
@@ -4,38 +4,48 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
4
4
|
import { getDefaultInteriorTexture } from "../../../catalog/cabinet/cabinet-texture-resolver";
|
|
5
5
|
import { isEmpty } from "../../../utils/helper";
|
|
6
6
|
export function mapLoadProjectEvent(evt, state, defaultTextures) {
|
|
7
|
+
var _layer$layerId, _layer$layerId2;
|
|
7
8
|
// preprocessing for loading project
|
|
8
9
|
// this function make doorStyles using item's doorStyle
|
|
9
10
|
if (isEmpty(evt)) return null;
|
|
10
11
|
var layerId = evt.payload.layers['layer-1'].id;
|
|
11
12
|
var layer = evt.payload.layers;
|
|
12
|
-
var itemKeys
|
|
13
|
+
var itemKeys,
|
|
14
|
+
holeKeys = [];
|
|
15
|
+
if ((_layer$layerId = layer[layerId]) !== null && _layer$layerId !== void 0 && _layer$layerId.holes) holeKeys = Object.keys(layer[layerId].holes);
|
|
16
|
+
if ((_layer$layerId2 = layer[layerId]) !== null && _layer$layerId2 !== void 0 && _layer$layerId2.items) itemKeys = Object.keys(layer[layerId].items);
|
|
13
17
|
if (isEmpty(layer)) return evt;
|
|
14
18
|
var handleTexture = layer[layerId].doorHandle;
|
|
15
19
|
var counterToptexture = layer[layerId].counterTop;
|
|
16
20
|
// make doorStyles and update the doorStyle payload
|
|
17
21
|
var Max_PH = 9;
|
|
18
|
-
for (var i = 0; i <
|
|
19
|
-
var
|
|
22
|
+
for (var i = 0; i < holeKeys.length; i++) {
|
|
23
|
+
var hole = layer[layerId].holes[holeKeys[i]];
|
|
24
|
+
hole.type = hole.type.toLowerCase();
|
|
25
|
+
layer[layerId].holes[itemKeys[i]] = hole;
|
|
26
|
+
}
|
|
27
|
+
for (var _i = 0; _i < itemKeys.length; _i++) {
|
|
28
|
+
var item = layer[layerId].items[itemKeys[_i]];
|
|
29
|
+
item.type = item.type.toLowerCase();
|
|
20
30
|
var doorStyle = item.doorStyle;
|
|
21
31
|
var doorStyles = {
|
|
22
32
|
base: doorStyle.texture,
|
|
23
33
|
counttop: counterToptexture,
|
|
24
34
|
interior: getDefaultInteriorTexture(defaultTextures)
|
|
25
35
|
};
|
|
26
|
-
for (var
|
|
27
|
-
doorStyles['base_door_' +
|
|
28
|
-
doorStyles['base_fixed_drawer_door_' +
|
|
29
|
-
doorStyles['base_drawer_' +
|
|
30
|
-
doorStyles['base_drawer_door_' +
|
|
31
|
-
doorStyles['door_handle_' +
|
|
32
|
-
doorStyles['fixed_drawer_door_handle_' +
|
|
33
|
-
doorStyles['drawer_door_handle_' +
|
|
36
|
+
for (var _i2 = 1; _i2 <= Max_PH; _i2++) {
|
|
37
|
+
doorStyles['base_door_' + _i2] = doorStyle.texture;
|
|
38
|
+
doorStyles['base_fixed_drawer_door_' + _i2] = doorStyle.texture;
|
|
39
|
+
doorStyles['base_drawer_' + _i2] = doorStyle.texture;
|
|
40
|
+
doorStyles['base_drawer_door_' + _i2] = doorStyle.texture;
|
|
41
|
+
doorStyles['door_handle_' + _i2] = handleTexture;
|
|
42
|
+
doorStyles['fixed_drawer_door_handle_' + _i2] = handleTexture;
|
|
43
|
+
doorStyles['drawer_door_handle_' + _i2] = handleTexture;
|
|
34
44
|
}
|
|
35
45
|
item.doorStyle = _objectSpread(_objectSpread({}, doorStyle), {}, {
|
|
36
46
|
doorStyles: doorStyles
|
|
37
47
|
});
|
|
38
|
-
layer[layerId].items[itemKeys[
|
|
48
|
+
layer[layerId].items[itemKeys[_i]] = item;
|
|
39
49
|
}
|
|
40
50
|
return evt;
|
|
41
51
|
}
|
|
@@ -48,8 +58,8 @@ export function updateProjectWithCDSList(project, cdsList) {
|
|
|
48
58
|
if (isEmpty(itemKeys)) return project;
|
|
49
59
|
var _loop = function _loop(i) {
|
|
50
60
|
cdsList.forEach(function (cds) {
|
|
51
|
-
var _layer$
|
|
52
|
-
if (((_layer$
|
|
61
|
+
var _layer$layerId3;
|
|
62
|
+
if (((_layer$layerId3 = layer[layerId]) === null || _layer$layerId3 === void 0 || (_layer$layerId3 = _layer$layerId3.items[itemKeys[i]]) === null || _layer$layerId3 === void 0 ? void 0 : _layer$layerId3.itemID) === (cds === null || cds === void 0 ? void 0 : cds.itemID)) {
|
|
53
63
|
layer[layerId].items[itemKeys[i]].doorStyle.cds = cds;
|
|
54
64
|
}
|
|
55
65
|
});
|
|
@@ -90,6 +90,7 @@ export var buildHoleElements = function buildHoleElements(holes) {
|
|
|
90
90
|
holes.forEach(function (hole) {
|
|
91
91
|
var _base$info6;
|
|
92
92
|
if (!hole || hole.is_deleted) return;
|
|
93
|
+
hole.name = hole.name.toLowerCase();
|
|
93
94
|
var base = findBaseHoleTemplate(hole, templates);
|
|
94
95
|
if (!base) return;
|
|
95
96
|
var element = buildHoleElementFromTemplate(hole, base);
|
package/es/utils/geometry.js
CHANGED
|
@@ -1547,6 +1547,23 @@ export function calcSnap2(allItemRect, allItemSnap, allLineRects, allLineSnap, a
|
|
|
1547
1547
|
}
|
|
1548
1548
|
});
|
|
1549
1549
|
}
|
|
1550
|
+
if (getSnap === true) {
|
|
1551
|
+
allItemSnap.filter(function (e) {
|
|
1552
|
+
return e.isSnappedLine;
|
|
1553
|
+
}).forEach(function (snap) {
|
|
1554
|
+
var dist = (snap.pos.x - nx) * (snap.pos.x - nx) + (snap.pos.y - ny) * (snap.pos.y - ny);
|
|
1555
|
+
//console.log("dist", snap)
|
|
1556
|
+
if (isPointInArea(allArea, snap.pos) || !allArea.length) if (dist < 100) {
|
|
1557
|
+
ndist = dist;
|
|
1558
|
+
nx = snap.pos.x;
|
|
1559
|
+
ny = snap.pos.y;
|
|
1560
|
+
rotRad = snap.rotRad;
|
|
1561
|
+
getSnap = true;
|
|
1562
|
+
|
|
1563
|
+
//console.log("SUCCESS!!!!");
|
|
1564
|
+
}
|
|
1565
|
+
});
|
|
1566
|
+
}
|
|
1550
1567
|
if (getSnap === false) {
|
|
1551
1568
|
var nearRect = null;
|
|
1552
1569
|
var minDist = Infinity;
|
|
@@ -622,7 +622,7 @@ function Line(_ref) {
|
|
|
622
622
|
return '';
|
|
623
623
|
}
|
|
624
624
|
var startAt = length * hole.offset;
|
|
625
|
-
var renderedHole = catalog.getElement(hole.type).render2D(hole, layer, scene);
|
|
625
|
+
var renderedHole = catalog.getElement(hole.type) ? catalog.getElement(hole.type).render2D(hole, layer, scene) : undefined;
|
|
626
626
|
return /*#__PURE__*/_react["default"].createElement("g", {
|
|
627
627
|
key: holeID,
|
|
628
628
|
transform: "translate(".concat(startAt, ", 3.5)"),
|
|
@@ -633,7 +633,7 @@ function Line(_ref) {
|
|
|
633
633
|
"data-layer": layer.id
|
|
634
634
|
}, renderedHole);
|
|
635
635
|
});
|
|
636
|
-
var renderedLine = catalog.getElement(line.type).render2D(line, layer, scene, state);
|
|
636
|
+
var renderedLine = catalog.getElement(line.type) ? catalog.getElement(line.type).render2D(line, layer, scene, state) : undefined;
|
|
637
637
|
var holeTemp = [];
|
|
638
638
|
var renderedRuler = [];
|
|
639
639
|
var renderedAllRuler = [];
|
|
@@ -547,6 +547,7 @@ function _addItemToCatalog() {
|
|
|
547
547
|
}
|
|
548
548
|
return _context5.abrupt("return");
|
|
549
549
|
case 1:
|
|
550
|
+
element.name = element.name.toLowerCase();
|
|
550
551
|
elementJs = populateCCDFList(element); // if (isEmpty(catalog?.elements[element.name])) {
|
|
551
552
|
_context5.next = 2;
|
|
552
553
|
return loadSVGsByItem(elementJs);
|
|
@@ -635,6 +636,7 @@ function _addItemToCatalog() {
|
|
|
635
636
|
|
|
636
637
|
// rplace new array to the elementJS
|
|
637
638
|
if (!(0, _helper.isEmpty)(mergedTempPlaceholder)) elementJs.structure_json.tempPlaceholders = mergedTempPlaceholder;
|
|
639
|
+
// elementJs.name = elementJs.name.toLowerCase
|
|
638
640
|
/***** join new tempPlaceholder to the old element - end *****/
|
|
639
641
|
|
|
640
642
|
elementJs = (0, _exporter["default"])(elementJs);
|
|
@@ -38,15 +38,18 @@ function _handleLoadProjectEvent() {
|
|
|
38
38
|
if (!ccdf_list.some(function (v) {
|
|
39
39
|
return v.scene_cabinet_id === it.id;
|
|
40
40
|
})) {
|
|
41
|
-
var _it$ccdf$catalog_cabi, _it$ccdf, _it$ccdf$cabinet_id, _it$ccdf2, _it$ccdf$door_finish_, _it$ccdf3
|
|
41
|
+
var _it$sizeinfo, _it$properties4, _it$properties5, _it$properties6, _it$ccdf$catalog_cabi, _it$ccdf, _it$ccdf$cabinet_id, _it$ccdf2, _it$ccdf$door_finish_, _it$ccdf3;
|
|
42
42
|
ccdf_list.push({
|
|
43
43
|
cabinet_sku: it.type,
|
|
44
|
-
sizeinfo: it.sizeinfo
|
|
44
|
+
sizeinfo: (_it$sizeinfo = it.sizeinfo) !== null && _it$sizeinfo !== void 0 ? _it$sizeinfo : {
|
|
45
|
+
width: it === null || it === void 0 || (_it$properties4 = it.properties) === null || _it$properties4 === void 0 || (_it$properties4 = _it$properties4.width) === null || _it$properties4 === void 0 ? void 0 : _it$properties4._length,
|
|
46
|
+
height: it === null || it === void 0 || (_it$properties5 = it.properties) === null || _it$properties5 === void 0 || (_it$properties5 = _it$properties5.height) === null || _it$properties5 === void 0 ? void 0 : _it$properties5._length,
|
|
47
|
+
depth: it === null || it === void 0 || (_it$properties6 = it.properties) === null || _it$properties6 === void 0 || (_it$properties6 = _it$properties6.depth) === null || _it$properties6 === void 0 ? void 0 : _it$properties6._length
|
|
48
|
+
},
|
|
45
49
|
catalog_cabinet_sku: (_it$ccdf$catalog_cabi = it === null || it === void 0 || (_it$ccdf = it.ccdf) === null || _it$ccdf === void 0 ? void 0 : _it$ccdf.catalog_cabinet_sku) !== null && _it$ccdf$catalog_cabi !== void 0 ? _it$ccdf$catalog_cabi : it.sku_number,
|
|
46
50
|
cabinet_id: (_it$ccdf$cabinet_id = it === null || it === void 0 || (_it$ccdf2 = it.ccdf) === null || _it$ccdf2 === void 0 ? void 0 : _it$ccdf2.cabinet_id) !== null && _it$ccdf$cabinet_id !== void 0 ? _it$ccdf$cabinet_id : it === null || it === void 0 ? void 0 : it.itemID,
|
|
47
51
|
ccdf: it.ccdf,
|
|
48
52
|
target_door_finish_id: (_it$ccdf$door_finish_ = it === null || it === void 0 || (_it$ccdf3 = it.ccdf) === null || _it$ccdf3 === void 0 ? void 0 : _it$ccdf3.door_finish_id) !== null && _it$ccdf$door_finish_ !== void 0 ? _it$ccdf$door_finish_ : it.doorStyle.id,
|
|
49
|
-
long_name: (_it$long_name = it === null || it === void 0 ? void 0 : it.long_name) !== null && _it$long_name !== void 0 ? _it$long_name : null,
|
|
50
53
|
scene_cabinet_id: it.id
|
|
51
54
|
});
|
|
52
55
|
}
|
|
@@ -13,6 +13,7 @@ function mapFromCCDFToCDS(ccdf_list) {
|
|
|
13
13
|
var itemsArray = sceneItems ? Array.isArray(sceneItems) ? sceneItems : Object.values(sceneItems) : null;
|
|
14
14
|
var itemCDSList = [];
|
|
15
15
|
ccdf_list === null || ccdf_list === void 0 || ccdf_list.forEach(function (asItem) {
|
|
16
|
+
var _asItem$assets3d;
|
|
16
17
|
// IMPORTANT: DIY-834-43
|
|
17
18
|
// `itemCDSData` must be recreated per asItem. Reusing it across iterations
|
|
18
19
|
// can leak one cabinet's door/drawer mappings into another.
|
|
@@ -21,7 +22,7 @@ function mapFromCCDFToCDS(ccdf_list) {
|
|
|
21
22
|
if (!(0, _utils.isEmpty)(asItem === null || asItem === void 0 ? void 0 : asItem.id)) {
|
|
22
23
|
cabitnetDoorStyleId = asItem.id;
|
|
23
24
|
}
|
|
24
|
-
asItem === null || asItem === void 0 || asItem.assets3d.forEach(function (as) {
|
|
25
|
+
asItem === null || asItem === void 0 || (_asItem$assets3d = asItem.assets3d) === null || _asItem$assets3d === void 0 || _asItem$assets3d.forEach(function (as) {
|
|
25
26
|
if (!(0, _utils.isEmpty)(as === null || as === void 0 ? void 0 : as.placeholder_name) && !(0, _utils.isEmpty)(as === null || as === void 0 ? void 0 : as.gltf)) {
|
|
26
27
|
var updatedName = 'base_' + (as === null || as === void 0 ? void 0 : as.placeholder_name) + '_gltf';
|
|
27
28
|
itemCDSData[updatedName] = as === null || as === void 0 ? void 0 : as.gltf;
|
|
@@ -12,38 +12,48 @@ var _helper = require("../../../utils/helper");
|
|
|
12
12
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
13
13
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
14
14
|
function mapLoadProjectEvent(evt, state, defaultTextures) {
|
|
15
|
+
var _layer$layerId, _layer$layerId2;
|
|
15
16
|
// preprocessing for loading project
|
|
16
17
|
// this function make doorStyles using item's doorStyle
|
|
17
18
|
if ((0, _helper.isEmpty)(evt)) return null;
|
|
18
19
|
var layerId = evt.payload.layers['layer-1'].id;
|
|
19
20
|
var layer = evt.payload.layers;
|
|
20
|
-
var itemKeys
|
|
21
|
+
var itemKeys,
|
|
22
|
+
holeKeys = [];
|
|
23
|
+
if ((_layer$layerId = layer[layerId]) !== null && _layer$layerId !== void 0 && _layer$layerId.holes) holeKeys = Object.keys(layer[layerId].holes);
|
|
24
|
+
if ((_layer$layerId2 = layer[layerId]) !== null && _layer$layerId2 !== void 0 && _layer$layerId2.items) itemKeys = Object.keys(layer[layerId].items);
|
|
21
25
|
if ((0, _helper.isEmpty)(layer)) return evt;
|
|
22
26
|
var handleTexture = layer[layerId].doorHandle;
|
|
23
27
|
var counterToptexture = layer[layerId].counterTop;
|
|
24
28
|
// make doorStyles and update the doorStyle payload
|
|
25
29
|
var Max_PH = 9;
|
|
26
|
-
for (var i = 0; i <
|
|
27
|
-
var
|
|
30
|
+
for (var i = 0; i < holeKeys.length; i++) {
|
|
31
|
+
var hole = layer[layerId].holes[holeKeys[i]];
|
|
32
|
+
hole.type = hole.type.toLowerCase();
|
|
33
|
+
layer[layerId].holes[itemKeys[i]] = hole;
|
|
34
|
+
}
|
|
35
|
+
for (var _i = 0; _i < itemKeys.length; _i++) {
|
|
36
|
+
var item = layer[layerId].items[itemKeys[_i]];
|
|
37
|
+
item.type = item.type.toLowerCase();
|
|
28
38
|
var doorStyle = item.doorStyle;
|
|
29
39
|
var doorStyles = {
|
|
30
40
|
base: doorStyle.texture,
|
|
31
41
|
counttop: counterToptexture,
|
|
32
42
|
interior: (0, _cabinetTextureResolver.getDefaultInteriorTexture)(defaultTextures)
|
|
33
43
|
};
|
|
34
|
-
for (var
|
|
35
|
-
doorStyles['base_door_' +
|
|
36
|
-
doorStyles['base_fixed_drawer_door_' +
|
|
37
|
-
doorStyles['base_drawer_' +
|
|
38
|
-
doorStyles['base_drawer_door_' +
|
|
39
|
-
doorStyles['door_handle_' +
|
|
40
|
-
doorStyles['fixed_drawer_door_handle_' +
|
|
41
|
-
doorStyles['drawer_door_handle_' +
|
|
44
|
+
for (var _i2 = 1; _i2 <= Max_PH; _i2++) {
|
|
45
|
+
doorStyles['base_door_' + _i2] = doorStyle.texture;
|
|
46
|
+
doorStyles['base_fixed_drawer_door_' + _i2] = doorStyle.texture;
|
|
47
|
+
doorStyles['base_drawer_' + _i2] = doorStyle.texture;
|
|
48
|
+
doorStyles['base_drawer_door_' + _i2] = doorStyle.texture;
|
|
49
|
+
doorStyles['door_handle_' + _i2] = handleTexture;
|
|
50
|
+
doorStyles['fixed_drawer_door_handle_' + _i2] = handleTexture;
|
|
51
|
+
doorStyles['drawer_door_handle_' + _i2] = handleTexture;
|
|
42
52
|
}
|
|
43
53
|
item.doorStyle = _objectSpread(_objectSpread({}, doorStyle), {}, {
|
|
44
54
|
doorStyles: doorStyles
|
|
45
55
|
});
|
|
46
|
-
layer[layerId].items[itemKeys[
|
|
56
|
+
layer[layerId].items[itemKeys[_i]] = item;
|
|
47
57
|
}
|
|
48
58
|
return evt;
|
|
49
59
|
}
|
|
@@ -56,8 +66,8 @@ function updateProjectWithCDSList(project, cdsList) {
|
|
|
56
66
|
if ((0, _helper.isEmpty)(itemKeys)) return project;
|
|
57
67
|
var _loop = function _loop(i) {
|
|
58
68
|
cdsList.forEach(function (cds) {
|
|
59
|
-
var _layer$
|
|
60
|
-
if (((_layer$
|
|
69
|
+
var _layer$layerId3;
|
|
70
|
+
if (((_layer$layerId3 = layer[layerId]) === null || _layer$layerId3 === void 0 || (_layer$layerId3 = _layer$layerId3.items[itemKeys[i]]) === null || _layer$layerId3 === void 0 ? void 0 : _layer$layerId3.itemID) === (cds === null || cds === void 0 ? void 0 : cds.itemID)) {
|
|
61
71
|
layer[layerId].items[itemKeys[i]].doorStyle.cds = cds;
|
|
62
72
|
}
|
|
63
73
|
});
|
|
@@ -99,6 +99,7 @@ var buildHoleElements = exports.buildHoleElements = function buildHoleElements(h
|
|
|
99
99
|
holes.forEach(function (hole) {
|
|
100
100
|
var _base$info6;
|
|
101
101
|
if (!hole || hole.is_deleted) return;
|
|
102
|
+
hole.name = hole.name.toLowerCase();
|
|
102
103
|
var base = findBaseHoleTemplate(hole, templates);
|
|
103
104
|
if (!base) return;
|
|
104
105
|
var element = buildHoleElementFromTemplate(hole, base);
|
package/lib/utils/geometry.js
CHANGED
|
@@ -1651,6 +1651,23 @@ function calcSnap2(allItemRect, allItemSnap, allLineRects, allLineSnap, allRect,
|
|
|
1651
1651
|
}
|
|
1652
1652
|
});
|
|
1653
1653
|
}
|
|
1654
|
+
if (getSnap === true) {
|
|
1655
|
+
allItemSnap.filter(function (e) {
|
|
1656
|
+
return e.isSnappedLine;
|
|
1657
|
+
}).forEach(function (snap) {
|
|
1658
|
+
var dist = (snap.pos.x - nx) * (snap.pos.x - nx) + (snap.pos.y - ny) * (snap.pos.y - ny);
|
|
1659
|
+
//console.log("dist", snap)
|
|
1660
|
+
if (isPointInArea(allArea, snap.pos) || !allArea.length) if (dist < 100) {
|
|
1661
|
+
ndist = dist;
|
|
1662
|
+
nx = snap.pos.x;
|
|
1663
|
+
ny = snap.pos.y;
|
|
1664
|
+
rotRad = snap.rotRad;
|
|
1665
|
+
getSnap = true;
|
|
1666
|
+
|
|
1667
|
+
//console.log("SUCCESS!!!!");
|
|
1668
|
+
}
|
|
1669
|
+
});
|
|
1670
|
+
}
|
|
1654
1671
|
if (getSnap === false) {
|
|
1655
1672
|
var nearRect = null;
|
|
1656
1673
|
var minDist = Infinity;
|