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.
@@ -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, _it$long_name;
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 = Object.keys(layer[layerId].items);
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 < itemKeys.length; i++) {
19
- var item = layer[layerId].items[itemKeys[i]];
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 _i = 1; _i <= Max_PH; _i++) {
27
- doorStyles['base_door_' + _i] = doorStyle.texture;
28
- doorStyles['base_fixed_drawer_door_' + _i] = doorStyle.texture;
29
- doorStyles['base_drawer_' + _i] = doorStyle.texture;
30
- doorStyles['base_drawer_door_' + _i] = doorStyle.texture;
31
- doorStyles['door_handle_' + _i] = handleTexture;
32
- doorStyles['fixed_drawer_door_handle_' + _i] = handleTexture;
33
- doorStyles['drawer_door_handle_' + _i] = handleTexture;
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[i]] = item;
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$layerId;
52
- if (((_layer$layerId = layer[layerId]) === null || _layer$layerId === void 0 || (_layer$layerId = _layer$layerId.items[itemKeys[i]]) === null || _layer$layerId === void 0 ? void 0 : _layer$layerId.itemID) === (cds === null || cds === void 0 ? void 0 : cds.itemID)) {
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);
@@ -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, _it$long_name;
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 = Object.keys(layer[layerId].items);
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 < itemKeys.length; i++) {
27
- var item = layer[layerId].items[itemKeys[i]];
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 _i = 1; _i <= Max_PH; _i++) {
35
- doorStyles['base_door_' + _i] = doorStyle.texture;
36
- doorStyles['base_fixed_drawer_door_' + _i] = doorStyle.texture;
37
- doorStyles['base_drawer_' + _i] = doorStyle.texture;
38
- doorStyles['base_drawer_door_' + _i] = doorStyle.texture;
39
- doorStyles['door_handle_' + _i] = handleTexture;
40
- doorStyles['fixed_drawer_door_handle_' + _i] = handleTexture;
41
- doorStyles['drawer_door_handle_' + _i] = handleTexture;
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[i]] = item;
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$layerId;
60
- if (((_layer$layerId = layer[layerId]) === null || _layer$layerId === void 0 || (_layer$layerId = _layer$layerId.items[itemKeys[i]]) === null || _layer$layerId === void 0 ? void 0 : _layer$layerId.itemID) === (cds === null || cds === void 0 ? void 0 : cds.itemID)) {
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);
@@ -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;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kitchen-simulator",
3
- "version": "11.23.0",
3
+ "version": "11.25.0",
4
4
  "description": "It is a kitchen simulator (self-contained micro-frontend).",
5
5
  "license": "MIT",
6
6
  "main": "lib/index.js",