@crystaldesign/web-planner-logic 25.14.0-beta.5 → 25.14.0-beta.50
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/build/cjs/{DivaBoxPlanner-3f50563a.js → DivaBoxPlanner-8c80d525.js} +658 -327
- package/build/cjs/{DivaStandardPlanner-afb222f0.js → DivaStandardPlanner-1875d1fe.js} +98 -88
- package/build/cjs/{DoorPlanner-3492bb9c.js → DoorPlanner-aeaf5721.js} +1 -1
- package/build/cjs/{Host3DSignalR-366d80ad.js → Host3DSignalR-92aa7960.js} +1 -1
- package/build/cjs/{LiviqueWWSHandler-b1346add.js → LiviqueWWSHandler-50901254.js} +1 -1
- package/build/cjs/{PfisterWWSHandler-4c0d31cf.js → PfisterWWSHandler-32d47418.js} +1 -1
- package/build/cjs/{PlannerHandler2D-2873f847.js → PlannerHandler2D-a67e13f7.js} +2 -2
- package/build/cjs/{SeriousBasketHandler-c01c8585.js → SeriousBasketHandler-fdc11dbf.js} +1 -1
- package/build/cjs/{ShelfPlanner-9ade9951.js → ShelfPlanner-0f29fd7b.js} +1 -1
- package/build/cjs/{StandardWWSHandler-9bbaf1e6.js → StandardWWSHandler-db3c3fef.js} +1 -1
- package/build/cjs/{index-af38c8f0.js → index-6e991f69.js} +288 -204
- package/build/cjs/index.js +1 -3
- package/build/esm/{DivaBoxPlanner-4ee5812f.js → DivaBoxPlanner-850868bf.js} +657 -327
- package/build/esm/{DivaStandardPlanner-f55199b2.js → DivaStandardPlanner-476ab33b.js} +98 -88
- package/build/esm/{DoorPlanner-4fb7fa92.js → DoorPlanner-746f3540.js} +1 -1
- package/build/esm/{Host3DSignalR-5dc7113e.js → Host3DSignalR-6859f807.js} +1 -1
- package/build/esm/{LiviqueWWSHandler-f82242bd.js → LiviqueWWSHandler-48646dbb.js} +1 -1
- package/build/esm/{PfisterWWSHandler-a771108d.js → PfisterWWSHandler-376b9b2b.js} +1 -1
- package/build/esm/{PlannerHandler2D-7d00bdb5.js → PlannerHandler2D-1e940f9f.js} +2 -2
- package/build/esm/{SeriousBasketHandler-afb3dff9.js → SeriousBasketHandler-07a052e1.js} +1 -1
- package/build/esm/{ShelfPlanner-a1699900.js → ShelfPlanner-fc0c0a4a.js} +1 -1
- package/build/esm/{StandardWWSHandler-572c13f4.js → StandardWWSHandler-036af1a0.js} +1 -1
- package/build/esm/{index-ecf2b36e.js → index-b7a3a897.js} +289 -203
- package/build/esm/index.js +1 -1
- package/build/types/web-planner-logic/src/index.d.ts +0 -1
- package/build/types/web-planner-logic/src/index.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/API/AiImageResult.d.ts +0 -2
- package/build/types/web-planner-logic/src/interface/API/AiImageResult.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/API/Checkout.d.ts +1 -0
- package/build/types/web-planner-logic/src/interface/API/Checkout.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/API/ViewConfigDataType.d.ts +1 -0
- package/build/types/web-planner-logic/src/interface/API/ViewConfigDataType.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/AdditionalModelInfos.d.ts +1 -0
- package/build/types/web-planner-logic/src/interface/AdditionalModelInfos.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/Articles/CatalogArticleDataType.d.ts +5 -0
- package/build/types/web-planner-logic/src/interface/Articles/CatalogArticleDataType.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/CoreTypes/index.d.ts +1 -1
- package/build/types/web-planner-logic/src/interface/CoreTypes/index.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/DivaCatalogDataType.d.ts +2 -0
- package/build/types/web-planner-logic/src/interface/DivaCatalogDataType.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/IDM/ArticleApi.d.ts +2 -0
- package/build/types/web-planner-logic/src/interface/IDM/ArticleApi.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/ReturnTypes/index.d.ts +1 -0
- package/build/types/web-planner-logic/src/interface/ReturnTypes/index.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/ViewTypes/index.d.ts +0 -1
- package/build/types/web-planner-logic/src/interface/ViewTypes/index.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/webPlannerParams/WebPlannerParamsType.d.ts +1 -0
- package/build/types/web-planner-logic/src/interface/webPlannerParams/WebPlannerParamsType.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Article/Engine/IDMArticleEngine.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Basket/DivaBasketHandler.d.ts +2 -1
- package/build/types/web-planner-logic/src/logic/Basket/DivaBasketHandler.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/DivaWebPlanner.d.ts +4 -2
- package/build/types/web-planner-logic/src/logic/DivaWebPlanner.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Planner/BoxPlanner/BoxPlannerGrid.d.ts +4 -4
- package/build/types/web-planner-logic/src/logic/Planner/BoxPlanner/BoxPlannerGrid.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Planner/BoxPlanner/ConstructionRulesHandler.d.ts +1 -0
- package/build/types/web-planner-logic/src/logic/Planner/BoxPlanner/ConstructionRulesHandler.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Planner/BoxPlanner/DivaBoxPlanner.d.ts +4 -1
- package/build/types/web-planner-logic/src/logic/Planner/BoxPlanner/DivaBoxPlanner.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Planner/DivaPlannerHandler.d.ts +4 -1
- package/build/types/web-planner-logic/src/logic/Planner/DivaPlannerHandler.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Planner/DivaStandardPlanner.d.ts +4 -1
- package/build/types/web-planner-logic/src/logic/Planner/DivaStandardPlanner.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Planner/Rendering/types.d.ts +1 -1
- package/build/types/web-planner-logic/src/logic/Planner/Rendering/types.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Set/DivaSetHandler.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/model/Articles/Article/CatalogArticleData.d.ts +7 -1
- package/build/types/web-planner-logic/src/model/Articles/Article/CatalogArticleData.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/model/Articles/Article/DivaCatalogArticle.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/model/Catalog/CatalogData.d.ts +1 -0
- package/build/types/web-planner-logic/src/model/Catalog/CatalogData.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/model/Catalog/DivaCatalogData.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/model/Catalog/IDMCatalogData.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/model/Options/ArticleOptionData.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/test/scripts/create_renderorder.d.ts +1 -1
- package/build/types/web-planner-logic/src/test/scripts/create_renderorder.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/test/scripts/getOrigProductId.d.ts +1 -1
- package/build/types/web-planner-logic/src/test/scripts/getOrigProductId.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -3,11 +3,11 @@ import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
|
|
|
3
3
|
import _createClass from '@babel/runtime/helpers/createClass';
|
|
4
4
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
5
5
|
import _regeneratorRuntime from '@babel/runtime/regenerator';
|
|
6
|
-
import { c as Vector2, V as Vector3, P as PlannerElementData, B as BoundingBox } from './index-
|
|
6
|
+
import { c as Vector2, V as Vector3, P as PlannerElementData, B as BoundingBox } from './index-b7a3a897.js';
|
|
7
7
|
import DivaUtils, { DivaError, md5 } from '@crystaldesign/diva-utils';
|
|
8
8
|
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
9
|
-
import
|
|
10
|
-
import '
|
|
9
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
10
|
+
import { d as dockingPointHandlerInst, h as handler2D } from './PlannerHandler2D-1e940f9f.js';
|
|
11
11
|
import '@babel/runtime/helpers/objectWithoutProperties';
|
|
12
12
|
import 'axios';
|
|
13
13
|
import '@crystaldesign/basket-model';
|
|
@@ -1897,15 +1897,27 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
1897
1897
|
}, {
|
|
1898
1898
|
key: "evalRule",
|
|
1899
1899
|
value: function evalRule(elementId, rule, optionHandler) {
|
|
1900
|
-
var
|
|
1900
|
+
var evaluation = true;
|
|
1901
1901
|
var splittedAND = rule.split('&');
|
|
1902
1902
|
for (var andNum = 0; andNum < splittedAND.length; andNum++) {
|
|
1903
|
-
var
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
|
|
1903
|
+
var splittedOr = splittedAND[andNum].split('|');
|
|
1904
|
+
if (splittedOr.length == 1) {
|
|
1905
|
+
var opt = splittedAND[andNum].split('=')[0];
|
|
1906
|
+
var opv = splittedAND[andNum].split('=')[1];
|
|
1907
|
+
var curOptVal = this.getOptionVal(elementId, opt, optionHandler);
|
|
1908
|
+
if (curOptVal && curOptVal != opv) evaluation = false;
|
|
1909
|
+
continue;
|
|
1910
|
+
}
|
|
1911
|
+
var orValuation = false;
|
|
1912
|
+
for (var orNum = 0; orNum < splittedOr.length; orNum++) {
|
|
1913
|
+
var opt = splittedOr[orNum].split('=')[0];
|
|
1914
|
+
var opv = splittedOr[orNum].split('=')[1];
|
|
1915
|
+
var _curOptVal = this.getOptionVal(elementId, opt, optionHandler);
|
|
1916
|
+
if (_curOptVal && _curOptVal == opv) orValuation = true;
|
|
1917
|
+
}
|
|
1918
|
+
if (evaluation) evaluation = orValuation;
|
|
1907
1919
|
}
|
|
1908
|
-
return
|
|
1920
|
+
return evaluation;
|
|
1909
1921
|
}
|
|
1910
1922
|
}, {
|
|
1911
1923
|
key: "setOptionDoShow",
|
|
@@ -1959,6 +1971,18 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
1959
1971
|
if (!this.hideOptionsForConstruction.has(elementId)) this.hideOptionsForConstruction.set(elementId, []);
|
|
1960
1972
|
(_this$hideOptionsForC2 = this.hideOptionsForConstruction.get(elementId)) === null || _this$hideOptionsForC2 === void 0 || _this$hideOptionsForC2.push(option);
|
|
1961
1973
|
}
|
|
1974
|
+
}, {
|
|
1975
|
+
key: "setOptionDoCustom",
|
|
1976
|
+
value: function setOptionDoCustom(elementId, option, val, optionHandler) {
|
|
1977
|
+
var _optionHandler$get4, _this$hideOptionsForC3;
|
|
1978
|
+
// LOG.log("Update Box Planner Logic. SetOptionDoHide: elementId: " + elementId + "; Option: " + option);
|
|
1979
|
+
var curOptVisibilityInfo = this.constructionRules.optionsVisibilityInfo[option];
|
|
1980
|
+
if (!curOptVisibilityInfo) return;
|
|
1981
|
+
if (!optionHandler.has(elementId)) optionHandler.set(elementId, new Map());
|
|
1982
|
+
(_optionHandler$get4 = optionHandler.get(elementId)) === null || _optionHandler$get4 === void 0 || _optionHandler$get4.set(option, curOptVisibilityInfo[val]);
|
|
1983
|
+
if (!this.hideOptionsForConstruction.has(elementId)) this.hideOptionsForConstruction.set(elementId, []);
|
|
1984
|
+
(_this$hideOptionsForC3 = this.hideOptionsForConstruction.get(elementId)) === null || _this$hideOptionsForC3 === void 0 || _this$hideOptionsForC3.push(option);
|
|
1985
|
+
}
|
|
1962
1986
|
|
|
1963
1987
|
//Returns all
|
|
1964
1988
|
}, {
|
|
@@ -1999,7 +2023,7 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
1999
2023
|
}
|
|
2000
2024
|
var allElementIds = boxPlannerGrid.getAllElementIdsInGrid(); //run through front an backside grid
|
|
2001
2025
|
for (var i = 0; i < allElementIds.length; i++) {
|
|
2002
|
-
var _optionHandler$
|
|
2026
|
+
var _optionHandler$get5;
|
|
2003
2027
|
if (this.hideOptionsForConstruction.has(allElementIds[i]) && this.hideOptionsForConstruction.get(allElementIds[i]).length > 0) {
|
|
2004
2028
|
while (this.hideOptionsForConstruction.get(allElementIds[i]).length > 0) {
|
|
2005
2029
|
var optName = this.hideOptionsForConstruction.get(allElementIds[i])[0];
|
|
@@ -2088,7 +2112,7 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
2088
2112
|
|
|
2089
2113
|
///Add debug input
|
|
2090
2114
|
if (!optionHandler.has(allElementIds[i])) optionHandler.set(allElementIds[i], new Map());
|
|
2091
|
-
(_optionHandler$
|
|
2115
|
+
(_optionHandler$get5 = optionHandler.get(allElementIds[i])) === null || _optionHandler$get5 === void 0 || _optionHandler$get5.set('DEBUG', boxPlannerGrid.getElementById(allElementIds[i]).getPosNr() + '');
|
|
2092
2116
|
if (opvToReset.length > 0) {
|
|
2093
2117
|
for (var r = 0; r < opvToReset.length; r++) {
|
|
2094
2118
|
var articleOPV = this.getOptionVal(allElementIds[i], opvToReset[r].opt, optionHandler);
|
|
@@ -2368,6 +2392,7 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
2368
2392
|
key: "correctSimpleOpt",
|
|
2369
2393
|
value: function correctSimpleOpt(xIndex, yIndex, boxPlannerGrid, optionHandler, fromBackside) {
|
|
2370
2394
|
var curElement = boxPlannerGrid.getPlannerElementAtGridPos(xIndex, yIndex, fromBackside);
|
|
2395
|
+
if (!curElement) return;
|
|
2371
2396
|
//Schauen ob Element top Element hat.
|
|
2372
2397
|
if (this.constructionRules.defaultConstructionRules.TOP) {
|
|
2373
2398
|
var hasTopElement = boxPlannerGrid.getElementHasTopElement(curElement.ElementId);
|
|
@@ -2583,23 +2608,22 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
2583
2608
|
}
|
|
2584
2609
|
}, {
|
|
2585
2610
|
key: "validateDimensionRule",
|
|
2586
|
-
value: function validateDimensionRule(
|
|
2611
|
+
value: function validateDimensionRule(dimension, dimensionLimit, boxPlannerSize, higherLimit, lowerLimit) {
|
|
2587
2612
|
var isOver = false;
|
|
2588
2613
|
var isEqual = false;
|
|
2589
|
-
if (
|
|
2590
|
-
if (
|
|
2591
|
-
if (
|
|
2592
|
-
if (
|
|
2593
|
-
if (
|
|
2594
|
-
if (
|
|
2614
|
+
if (dimension.toLowerCase() == 'height' && boxPlannerSize.y > dimensionLimit) isOver = true;
|
|
2615
|
+
if (dimension.toLowerCase() == 'height' && boxPlannerSize.y == dimensionLimit) isEqual = true;
|
|
2616
|
+
if (dimension.toLowerCase() == 'width' && boxPlannerSize.x > dimensionLimit) isOver = true;
|
|
2617
|
+
if (dimension.toLowerCase() == 'width' && boxPlannerSize.x == dimensionLimit) isEqual = true;
|
|
2618
|
+
if (dimension.toLowerCase() == 'depth' && boxPlannerSize.z > dimensionLimit) isOver = true;
|
|
2619
|
+
if (dimension.toLowerCase() == 'depth' && boxPlannerSize.z == dimensionLimit) isEqual = true;
|
|
2595
2620
|
if (isOver) {
|
|
2596
|
-
|
|
2621
|
+
return higherLimit;
|
|
2597
2622
|
} else if (isEqual) {
|
|
2598
|
-
return
|
|
2623
|
+
return higherLimit;
|
|
2599
2624
|
} else {
|
|
2600
|
-
|
|
2625
|
+
return lowerLimit;
|
|
2601
2626
|
}
|
|
2602
|
-
return false;
|
|
2603
2627
|
}
|
|
2604
2628
|
|
|
2605
2629
|
/*
|
|
@@ -2610,42 +2634,38 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
2610
2634
|
key: "correctOverHangingElement",
|
|
2611
2635
|
value: function correctOverHangingElement(changedElementId, boxPlannerGrid, optionHandler, changedOPTs) {
|
|
2612
2636
|
var _this2 = this;
|
|
2613
|
-
if (!changedOPTs) return;
|
|
2614
|
-
var
|
|
2615
|
-
|
|
2616
|
-
|
|
2617
|
-
|
|
2618
|
-
|
|
2619
|
-
|
|
2620
|
-
|
|
2621
|
-
|
|
2622
|
-
|
|
2623
|
-
|
|
2624
|
-
|
|
2625
|
-
|
|
2626
|
-
|
|
2627
|
-
|
|
2628
|
-
|
|
2629
|
-
|
|
2630
|
-
|
|
2631
|
-
|
|
2632
|
-
|
|
2633
|
-
}
|
|
2634
|
-
|
|
2635
|
-
|
|
2636
|
-
|
|
2637
|
-
|
|
2638
|
-
|
|
2639
|
-
|
|
2640
|
-
|
|
2641
|
-
|
|
2642
|
-
|
|
2643
|
-
|
|
2644
|
-
|
|
2645
|
-
};
|
|
2646
|
-
for (var columndIdx = 0; columndIdx < boxPlannerGrid.getColumnCount(); columndIdx++) {
|
|
2647
|
-
_loop();
|
|
2648
|
-
}
|
|
2637
|
+
if (!changedOPTs || !changedElementId) return;
|
|
2638
|
+
var startIdx = boxPlannerGrid.getCellsInGridByElementId(changedElementId).startColIndex;
|
|
2639
|
+
var elements = boxPlannerGrid.getAllElementsInColumn(startIdx, false, true); // from bottom to top
|
|
2640
|
+
var changedElementIdx = elements.findIndex(function (e) {
|
|
2641
|
+
return e.ElementId == changedElementId;
|
|
2642
|
+
});
|
|
2643
|
+
var changedElement = elements[changedElementIdx];
|
|
2644
|
+
if (!changedElement) return; // nothing changed in this row
|
|
2645
|
+
var t = Object.entries(changedOPTs);
|
|
2646
|
+
var opt = t[0][0];
|
|
2647
|
+
var opv = t[0][1];
|
|
2648
|
+
elements.forEach(function (element, idx) {
|
|
2649
|
+
if (idx < changedElementIdx) {
|
|
2650
|
+
//under the changed one
|
|
2651
|
+
var rightNeighbours = boxPlannerGrid.getNeighborElements(element.ElementId, 'RIGHT', false);
|
|
2652
|
+
var freeSpace = element.Width;
|
|
2653
|
+
rightNeighbours.forEach(function (n) {
|
|
2654
|
+
if (n.ElementId == changedElement.ElementId) return;
|
|
2655
|
+
var topElements = boxPlannerGrid.getNeighborElements(n.ElementId, 'TOP', false).filter(function (n) {
|
|
2656
|
+
return n.ElementId != changedElement.ElementId;
|
|
2657
|
+
});
|
|
2658
|
+
var topWidth = topElements.reduce(function (totalwidth, e) {
|
|
2659
|
+
return totalwidth += e.Width;
|
|
2660
|
+
}, 0);
|
|
2661
|
+
if (topWidth < n.Width) freeSpace += n.Width - topWidth;
|
|
2662
|
+
});
|
|
2663
|
+
if (Math.round(changedElement.Width) > Math.round(freeSpace)) _this2.setOptionValue(element.ElementId, opt, opv, optionHandler);
|
|
2664
|
+
} else {
|
|
2665
|
+
// over the changed one
|
|
2666
|
+
if (changedElement.Width < element.Width) _this2.setOptionValue(element.ElementId, opt, opv, optionHandler);
|
|
2667
|
+
}
|
|
2668
|
+
});
|
|
2649
2669
|
}
|
|
2650
2670
|
}, {
|
|
2651
2671
|
key: "correctFoot",
|
|
@@ -2653,7 +2673,10 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
2653
2673
|
var _this3 = this;
|
|
2654
2674
|
var elements = boxPlannerGrid.getAllElementsInFrontGrid();
|
|
2655
2675
|
elements.forEach(function (e) {
|
|
2656
|
-
if (boxPlannerGrid.getElementHasBottomElement(e.ElementId))
|
|
2676
|
+
if (boxPlannerGrid.getElementHasBottomElement(e.ElementId)) {
|
|
2677
|
+
_this3.setOptionValue(e.ElementId, 'OPTFUSS_SYS', 'OPVOHNE', optionHandler);
|
|
2678
|
+
_this3.setOptionValue(e.ElementId, 'OPTPOSSIBILITY_FUSS_OHNE', 'OPVTRUE', optionHandler);
|
|
2679
|
+
}
|
|
2657
2680
|
});
|
|
2658
2681
|
}
|
|
2659
2682
|
|
|
@@ -2662,30 +2685,49 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
2662
2685
|
* */
|
|
2663
2686
|
}, {
|
|
2664
2687
|
key: "correctOptionsInfluencedByDimensions",
|
|
2665
|
-
value: function correctOptionsInfluencedByDimensions(boxPlannerGrid, optionHandler) {
|
|
2688
|
+
value: function correctOptionsInfluencedByDimensions(boxPlannerGrid, optionHandler, changedOPTs) {
|
|
2666
2689
|
var _this4 = this;
|
|
2667
2690
|
if (!this.constructionRules.optionsInfluencedByDimensions) return;
|
|
2668
2691
|
var boxPlannerSize = boxPlannerGrid.getSizeOfWholeSet(false);
|
|
2669
2692
|
var allElements = boxPlannerGrid.getAllElementsInFrontGrid();
|
|
2670
|
-
|
|
2671
|
-
if (
|
|
2672
|
-
|
|
2673
|
-
|
|
2674
|
-
|
|
2675
|
-
|
|
2676
|
-
|
|
2677
|
-
|
|
2678
|
-
|
|
2679
|
-
|
|
2680
|
-
return _this4.
|
|
2693
|
+
var setRule = function setRule(option, res) {
|
|
2694
|
+
if (changedOPTs) {
|
|
2695
|
+
var changedOpt = Object.entries(changedOPTs).find(function (_ref) {
|
|
2696
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
|
2697
|
+
key = _ref2[0];
|
|
2698
|
+
_ref2[1];
|
|
2699
|
+
return key == option;
|
|
2700
|
+
});
|
|
2701
|
+
if (changedOpt) {
|
|
2702
|
+
allElements.forEach(function (element) {
|
|
2703
|
+
return _this4.setOptionValue(element.ElementId, changedOpt[0], changedOpt[1], optionHandler);
|
|
2681
2704
|
});
|
|
2705
|
+
return;
|
|
2706
|
+
}
|
|
2707
|
+
}
|
|
2708
|
+
allElements.forEach(function (element) {
|
|
2709
|
+
return _this4.setOptionDoCustom(element.ElementId, option, res, optionHandler);
|
|
2710
|
+
});
|
|
2711
|
+
};
|
|
2712
|
+
var dim = this.constructionRules.optionsInfluencedByDimensions;
|
|
2713
|
+
dim.forEach(function (dimRule) {
|
|
2714
|
+
if (Array.isArray(dimRule)) {
|
|
2715
|
+
var res = dimRule.every(function (r) {
|
|
2716
|
+
return _this4.validateDimensionRule(r.dimension, r.dimensionLimit, boxPlannerSize, r.higherLimit, r.lowerLimit).toLowerCase() == 'doshow';
|
|
2682
2717
|
});
|
|
2718
|
+
var t = dimRule[0];
|
|
2719
|
+
if (res) setRule(t.option, 'doShow');else setRule(t.option, 'doHide');
|
|
2683
2720
|
} else {
|
|
2684
|
-
|
|
2685
|
-
|
|
2686
|
-
|
|
2687
|
-
|
|
2688
|
-
|
|
2721
|
+
var seriesDimRule = dimRule;
|
|
2722
|
+
var baseDimRule = dimRule;
|
|
2723
|
+
if (seriesDimRule.series) {
|
|
2724
|
+
var _dimRule = seriesDimRule.series.findLast(function (r) {
|
|
2725
|
+
return _this4.validateDimensionRule(r.dimension, r.dimensionLimit, boxPlannerSize, '1', '2') == '1';
|
|
2726
|
+
});
|
|
2727
|
+
if (_dimRule) setRule(seriesDimRule.option, _dimRule.value);
|
|
2728
|
+
} else {
|
|
2729
|
+
setRule(baseDimRule.option, _this4.validateDimensionRule(baseDimRule.option, baseDimRule.dimensionLimit, boxPlannerSize, baseDimRule.higherLimit, baseDimRule.lowerLimit));
|
|
2730
|
+
}
|
|
2689
2731
|
}
|
|
2690
2732
|
});
|
|
2691
2733
|
}
|
|
@@ -2759,22 +2801,22 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
2759
2801
|
|
|
2760
2802
|
// default => set all to ohne
|
|
2761
2803
|
serie.forEach(function (element) {
|
|
2762
|
-
var _element$
|
|
2763
|
-
seriesWidth += (_element$
|
|
2764
|
-
boxPlannerGrid.getAllElementsDown(element.
|
|
2804
|
+
var _element$size$width;
|
|
2805
|
+
seriesWidth += (_element$size$width = element.size.width) !== null && _element$size$width !== void 0 ? _element$size$width : 0;
|
|
2806
|
+
boxPlannerGrid.getAllElementsDown(element.elementId).elements.forEach(function (e) {
|
|
2765
2807
|
return _this5.setOptionValue(e, coverPlateRule.optABD, 'OPVOHNE', optionHandler);
|
|
2766
2808
|
});
|
|
2767
|
-
_this5.setOptionValue(element.
|
|
2809
|
+
_this5.setOptionValue(element.elementId, coverPlateRule.optABD, 'OPVOHNE', optionHandler);
|
|
2768
2810
|
});
|
|
2769
2811
|
var firstUncoveredElement = serie[0];
|
|
2770
|
-
var
|
|
2812
|
+
var _loop = function _loop() {
|
|
2771
2813
|
var opv = seriesWidthToPlateOpv.findLast(function (stp) {
|
|
2772
2814
|
// is a clean element ending
|
|
2773
2815
|
var helperWidth = 0;
|
|
2774
2816
|
var isClean = false;
|
|
2775
2817
|
serie.forEach(function (element) {
|
|
2776
|
-
var _element$
|
|
2777
|
-
helperWidth += (_element$
|
|
2818
|
+
var _element$size$width2;
|
|
2819
|
+
helperWidth += (_element$size$width2 = element.size.width) !== null && _element$size$width2 !== void 0 ? _element$size$width2 : 0;
|
|
2778
2820
|
if (Math.abs(helperWidth - stp.limit) < 1) isClean = true;
|
|
2779
2821
|
});
|
|
2780
2822
|
if (stp.limit <= seriesWidth && isClean) return true;
|
|
@@ -2783,11 +2825,11 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
2783
2825
|
if (!opv) return {
|
|
2784
2826
|
v: void 0
|
|
2785
2827
|
};
|
|
2786
|
-
_this5.setOptionValue(firstUncoveredElement.
|
|
2828
|
+
_this5.setOptionValue(firstUncoveredElement.elementId, coverPlateRule.optABD, opv.plateOpv, optionHandler);
|
|
2787
2829
|
var helperWidth = 0;
|
|
2788
2830
|
firstUncoveredElement = serie.find(function (e) {
|
|
2789
|
-
var _e$
|
|
2790
|
-
helperWidth += (_e$
|
|
2831
|
+
var _e$size$width;
|
|
2832
|
+
helperWidth += (_e$size$width = e.size.width) !== null && _e$size$width !== void 0 ? _e$size$width : 0;
|
|
2791
2833
|
if (helperWidth > opv.limit) return true;
|
|
2792
2834
|
return false;
|
|
2793
2835
|
});
|
|
@@ -2796,7 +2838,7 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
2796
2838
|
},
|
|
2797
2839
|
_ret;
|
|
2798
2840
|
while (seriesWidth != 0) {
|
|
2799
|
-
_ret =
|
|
2841
|
+
_ret = _loop();
|
|
2800
2842
|
if (_ret) return _ret.v;
|
|
2801
2843
|
}
|
|
2802
2844
|
});
|
|
@@ -3069,9 +3111,9 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
3069
3111
|
var allElements = boxPlannerGrid.getAllElementsInGridSortedbyGridPos();
|
|
3070
3112
|
if (this.constructionRules.correctRetailArticleNumberByRule && this.constructionRules.correctRetailArticleNumberByRule.length > 0) {
|
|
3071
3113
|
for (var i = 0; i < this.constructionRules.correctRetailArticleNumberByRule.length; i++) {
|
|
3072
|
-
var allValid = true;
|
|
3073
3114
|
var constructionRule = this.constructionRules.correctRetailArticleNumberByRule[i];
|
|
3074
3115
|
if (constructionRule.range == 'global') {
|
|
3116
|
+
var allValid = true;
|
|
3075
3117
|
//Do check if all Elements satify the rules
|
|
3076
3118
|
for (var j = 0; j < allElements.length; j++) {
|
|
3077
3119
|
if (!allValid) break;
|
|
@@ -3084,6 +3126,19 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
3084
3126
|
retailArticleRules: constructionRule.retailArticleRules
|
|
3085
3127
|
};
|
|
3086
3128
|
}
|
|
3129
|
+
} else if (constructionRule.range == "singular") {
|
|
3130
|
+
var _allValid = false;
|
|
3131
|
+
//Do check if all Elements satify the rules
|
|
3132
|
+
for (var j = 0; j < allElements.length; j++) {
|
|
3133
|
+
var _valid = this.evalRule(allElements[j].getElementId(), constructionRule.rule, optionHandler);
|
|
3134
|
+
if (_valid) _allValid = true;
|
|
3135
|
+
}
|
|
3136
|
+
if (_allValid) {
|
|
3137
|
+
return {
|
|
3138
|
+
doChange: true,
|
|
3139
|
+
retailArticleRules: constructionRule.retailArticleRules
|
|
3140
|
+
};
|
|
3141
|
+
}
|
|
3087
3142
|
}
|
|
3088
3143
|
}
|
|
3089
3144
|
}
|
|
@@ -3123,7 +3178,7 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
3123
3178
|
value: function () {
|
|
3124
3179
|
var _updateOptionLogicBoxPlanner = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(boxPlannerGrid, changedOPTs, targetElements, forceResetCornerElements) {
|
|
3125
3180
|
var _targetElements;
|
|
3126
|
-
var startTime, resultMessage, optionHandler, allElements, i, _iterator, _step, coverPlateRule,
|
|
3181
|
+
var startTime, resultMessage, optionHandler, allElements, i, j, _boxPlannerGrid$getPl2, elementId, _boxPlannerGrid$getPl3, _elementId, _iterator, _step, coverPlateRule, _boxPlannerGrid$getPl4, _elementId2, doChangeRetailArticleNumbers;
|
|
3127
3182
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
3128
3183
|
while (1) switch (_context.prev = _context.next) {
|
|
3129
3184
|
case 0:
|
|
@@ -3158,19 +3213,6 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
3158
3213
|
this.correctBottom(boxPlannerGrid, optionHandler, false);
|
|
3159
3214
|
if (boxPlannerGrid.getPlannerHasActiveBackside()) this.correctBottom(boxPlannerGrid, optionHandler, true);
|
|
3160
3215
|
this.correctSeries(boxPlannerGrid, optionHandler);
|
|
3161
|
-
if (this.constructionRules.coverPlateRule) {
|
|
3162
|
-
_iterator = _createForOfIteratorHelper$1(this.constructionRules.coverPlateRule);
|
|
3163
|
-
try {
|
|
3164
|
-
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
3165
|
-
coverPlateRule = _step.value;
|
|
3166
|
-
this.correctCoverPlate(coverPlateRule, boxPlannerGrid, optionHandler);
|
|
3167
|
-
}
|
|
3168
|
-
} catch (err) {
|
|
3169
|
-
_iterator.e(err);
|
|
3170
|
-
} finally {
|
|
3171
|
-
_iterator.f();
|
|
3172
|
-
}
|
|
3173
|
-
}
|
|
3174
3216
|
for (i = 0; i < boxPlannerGrid.getColumnCount(); i++) {
|
|
3175
3217
|
for (j = 0; j < boxPlannerGrid.getRowCount(i, false); j++) {
|
|
3176
3218
|
this.correctSimpleOpt(i, j, boxPlannerGrid, optionHandler, false);
|
|
@@ -3183,39 +3225,126 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
|
|
|
3183
3225
|
}
|
|
3184
3226
|
}
|
|
3185
3227
|
}
|
|
3186
|
-
|
|
3187
|
-
|
|
3188
|
-
|
|
3189
|
-
|
|
3190
|
-
|
|
3228
|
+
i = 0;
|
|
3229
|
+
case 17:
|
|
3230
|
+
if (!(i < boxPlannerGrid.getColumnCount())) {
|
|
3231
|
+
_context.next = 31;
|
|
3232
|
+
break;
|
|
3191
3233
|
}
|
|
3192
|
-
|
|
3193
|
-
|
|
3194
|
-
|
|
3195
|
-
|
|
3196
|
-
|
|
3197
|
-
|
|
3198
|
-
|
|
3234
|
+
j = 0;
|
|
3235
|
+
case 19:
|
|
3236
|
+
if (!(j < boxPlannerGrid.getRowCount(i, false))) {
|
|
3237
|
+
_context.next = 28;
|
|
3238
|
+
break;
|
|
3239
|
+
}
|
|
3240
|
+
elementId = (_boxPlannerGrid$getPl2 = boxPlannerGrid.getPlannerElementAtGridPos(i, j, false)) === null || _boxPlannerGrid$getPl2 === void 0 ? void 0 : _boxPlannerGrid$getPl2.ElementId;
|
|
3241
|
+
if (elementId) {
|
|
3242
|
+
_context.next = 23;
|
|
3243
|
+
break;
|
|
3244
|
+
}
|
|
3245
|
+
return _context.abrupt("continue", 25);
|
|
3246
|
+
case 23:
|
|
3247
|
+
this.correctForceOptOfElement(elementId, boxPlannerGrid, optionHandler, false);
|
|
3248
|
+
this.correctNeighborCustomOLTs(elementId, boxPlannerGrid, optionHandler);
|
|
3249
|
+
case 25:
|
|
3250
|
+
j++;
|
|
3251
|
+
_context.next = 19;
|
|
3252
|
+
break;
|
|
3253
|
+
case 28:
|
|
3254
|
+
i++;
|
|
3255
|
+
_context.next = 17;
|
|
3256
|
+
break;
|
|
3257
|
+
case 31:
|
|
3258
|
+
if (!boxPlannerGrid.getPlannerHasActiveBackside()) {
|
|
3259
|
+
_context.next = 47;
|
|
3260
|
+
break;
|
|
3261
|
+
}
|
|
3262
|
+
i = boxPlannerGrid.getColumnCount() - 1;
|
|
3263
|
+
case 33:
|
|
3264
|
+
if (!(i >= 0)) {
|
|
3265
|
+
_context.next = 47;
|
|
3266
|
+
break;
|
|
3199
3267
|
}
|
|
3268
|
+
j = 0;
|
|
3269
|
+
case 35:
|
|
3270
|
+
if (!(j < boxPlannerGrid.getRowCount(i, false))) {
|
|
3271
|
+
_context.next = 44;
|
|
3272
|
+
break;
|
|
3273
|
+
}
|
|
3274
|
+
_elementId = (_boxPlannerGrid$getPl3 = boxPlannerGrid.getPlannerElementAtGridPos(i, j, false)) === null || _boxPlannerGrid$getPl3 === void 0 ? void 0 : _boxPlannerGrid$getPl3.ElementId;
|
|
3275
|
+
if (_elementId) {
|
|
3276
|
+
_context.next = 39;
|
|
3277
|
+
break;
|
|
3278
|
+
}
|
|
3279
|
+
return _context.abrupt("continue", 41);
|
|
3280
|
+
case 39:
|
|
3281
|
+
this.correctForceOptOfElement(_elementId, boxPlannerGrid, optionHandler, true);
|
|
3282
|
+
this.correctNeighborCustomOLTs(_elementId, boxPlannerGrid, optionHandler);
|
|
3283
|
+
case 41:
|
|
3284
|
+
j++;
|
|
3285
|
+
_context.next = 35;
|
|
3286
|
+
break;
|
|
3287
|
+
case 44:
|
|
3288
|
+
i--;
|
|
3289
|
+
_context.next = 33;
|
|
3290
|
+
break;
|
|
3291
|
+
case 47:
|
|
3200
3292
|
this.correctFoot(boxPlannerGrid, optionHandler);
|
|
3201
3293
|
this.correctLadder(boxPlannerGrid, optionHandler);
|
|
3202
|
-
this.correctOptionsInfluencedByDimensions(boxPlannerGrid, optionHandler);
|
|
3294
|
+
this.correctOptionsInfluencedByDimensions(boxPlannerGrid, optionHandler, changedOPTs);
|
|
3203
3295
|
this.correctOverHangingElement((_targetElements = targetElements) === null || _targetElements === void 0 ? void 0 : _targetElements[0], boxPlannerGrid, optionHandler, changedOPTs);
|
|
3204
3296
|
this.partlistHelper.calculateKnots(boxPlannerGrid, optionHandler);
|
|
3205
3297
|
this.partlistHelper.calculateRahmen(boxPlannerGrid, optionHandler);
|
|
3206
|
-
|
|
3207
|
-
|
|
3208
|
-
|
|
3298
|
+
if (this.constructionRules.coverPlateRule) {
|
|
3299
|
+
_iterator = _createForOfIteratorHelper$1(this.constructionRules.coverPlateRule);
|
|
3300
|
+
try {
|
|
3301
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
3302
|
+
coverPlateRule = _step.value;
|
|
3303
|
+
this.correctCoverPlate(coverPlateRule, boxPlannerGrid, optionHandler);
|
|
3304
|
+
}
|
|
3305
|
+
} catch (err) {
|
|
3306
|
+
_iterator.e(err);
|
|
3307
|
+
} finally {
|
|
3308
|
+
_iterator.f();
|
|
3209
3309
|
}
|
|
3210
3310
|
}
|
|
3311
|
+
i = 0;
|
|
3312
|
+
case 55:
|
|
3313
|
+
if (!(i < boxPlannerGrid.getColumnCount())) {
|
|
3314
|
+
_context.next = 68;
|
|
3315
|
+
break;
|
|
3316
|
+
}
|
|
3317
|
+
j = 0;
|
|
3318
|
+
case 57:
|
|
3319
|
+
if (!(j < boxPlannerGrid.getRowCount(i, false))) {
|
|
3320
|
+
_context.next = 65;
|
|
3321
|
+
break;
|
|
3322
|
+
}
|
|
3323
|
+
_elementId2 = (_boxPlannerGrid$getPl4 = boxPlannerGrid.getPlannerElementAtGridPos(i, j, false)) === null || _boxPlannerGrid$getPl4 === void 0 ? void 0 : _boxPlannerGrid$getPl4.getElementId();
|
|
3324
|
+
if (_elementId2) {
|
|
3325
|
+
_context.next = 61;
|
|
3326
|
+
break;
|
|
3327
|
+
}
|
|
3328
|
+
return _context.abrupt("continue", 62);
|
|
3329
|
+
case 61:
|
|
3330
|
+
this.correctBack(boxPlannerGrid, optionHandler, _elementId2);
|
|
3331
|
+
case 62:
|
|
3332
|
+
j++;
|
|
3333
|
+
_context.next = 57;
|
|
3334
|
+
break;
|
|
3335
|
+
case 65:
|
|
3336
|
+
i++;
|
|
3337
|
+
_context.next = 55;
|
|
3338
|
+
break;
|
|
3339
|
+
case 68:
|
|
3211
3340
|
doChangeRetailArticleNumbers = this.doChangeRetailArticleNumbers(boxPlannerGrid, optionHandler);
|
|
3212
|
-
_context.next =
|
|
3341
|
+
_context.next = 71;
|
|
3213
3342
|
return this.updateCfgValuesByPlanner(optionHandler, undefined, this.constructionRules.partlistRules.bundleRules, doChangeRetailArticleNumbers);
|
|
3214
|
-
case
|
|
3343
|
+
case 71:
|
|
3215
3344
|
LOG$2.debug('BoxPlanner updateOptionLogic - Duration after setting Option Values of all Articles: ' + (new Date().getTime() - startTime));
|
|
3216
3345
|
LOG$2.debug('BoxPlanner updateOptionLogic - Duration after setting updating configurator: ' + (new Date().getTime() - startTime));
|
|
3217
3346
|
return _context.abrupt("return", resultMessage);
|
|
3218
|
-
case
|
|
3347
|
+
case 74:
|
|
3219
3348
|
case "end":
|
|
3220
3349
|
return _context.stop();
|
|
3221
3350
|
}
|
|
@@ -3343,7 +3472,7 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
3343
3472
|
var cells = [];
|
|
3344
3473
|
for (var i = 0; i < colCount; i++) {
|
|
3345
3474
|
for (var j = 0; j < rowCount; j++) {
|
|
3346
|
-
var
|
|
3475
|
+
var _cell2 = {
|
|
3347
3476
|
plannedElement: {
|
|
3348
3477
|
basketId: newElement.getBasketId(),
|
|
3349
3478
|
elementId: newElement.getElementId(),
|
|
@@ -3362,7 +3491,7 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
3362
3491
|
},
|
|
3363
3492
|
index: new Vector2(startColIndex + i, startRowIndex + j)
|
|
3364
3493
|
};
|
|
3365
|
-
cells.push(
|
|
3494
|
+
cells.push(_cell2);
|
|
3366
3495
|
}
|
|
3367
3496
|
}
|
|
3368
3497
|
return cells;
|
|
@@ -3427,7 +3556,7 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
3427
3556
|
key: "getGridColumnWidth",
|
|
3428
3557
|
value: function getGridColumnWidth(x) {
|
|
3429
3558
|
var frontGrid = this.generalPlanningState.grids[0].matrix;
|
|
3430
|
-
for (var y = 0;
|
|
3559
|
+
for (var y = 0; y < frontGrid[y].length; y++) {
|
|
3431
3560
|
var _plannedElement$size$, _plannedElement;
|
|
3432
3561
|
var cell = frontGrid[x][y];
|
|
3433
3562
|
if (cell) return (_plannedElement$size$ = (_plannedElement = cell.plannedElement) === null || _plannedElement === void 0 ? void 0 : _plannedElement.size.width) !== null && _plannedElement$size$ !== void 0 ? _plannedElement$size$ : 0;
|
|
@@ -3651,10 +3780,10 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
3651
3780
|
}
|
|
3652
3781
|
for (var i = 0; i < backGrid.length; i++) {
|
|
3653
3782
|
for (var j = 0; j < backGrid[i].length; j++) {
|
|
3654
|
-
var
|
|
3655
|
-
var
|
|
3656
|
-
var _elementId = (
|
|
3657
|
-
if (
|
|
3783
|
+
var _cell3$plannedElement;
|
|
3784
|
+
var _cell3 = backGrid[i][j];
|
|
3785
|
+
var _elementId = (_cell3$plannedElement = _cell3.plannedElement) === null || _cell3$plannedElement === void 0 ? void 0 : _cell3$plannedElement.elementId;
|
|
3786
|
+
if (_cell3 && _elementId && allCheckedElementIds.indexOf(_elementId) == -1) {
|
|
3658
3787
|
var _element = this.getElementById(_elementId);
|
|
3659
3788
|
allCheckedElementIds.push(_elementId);
|
|
3660
3789
|
returnElements.push(_element);
|
|
@@ -3918,10 +4047,10 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
3918
4047
|
}
|
|
3919
4048
|
} else {
|
|
3920
4049
|
for (var i = curGrid[index].length - 1; i >= 0; i--) {
|
|
3921
|
-
var
|
|
3922
|
-
var
|
|
3923
|
-
var _elementId4 =
|
|
3924
|
-
if (
|
|
4050
|
+
var _cell4$plannedElement;
|
|
4051
|
+
var _cell4 = curGrid[index][i];
|
|
4052
|
+
var _elementId4 = _cell4 === null || _cell4 === void 0 || (_cell4$plannedElement = _cell4.plannedElement) === null || _cell4$plannedElement === void 0 ? void 0 : _cell4$plannedElement.elementId;
|
|
4053
|
+
if (_cell4 && _elementId4 && allElementIds.indexOf(_elementId4) == -1) {
|
|
3925
4054
|
allElementIds.push(_elementId4);
|
|
3926
4055
|
allElements.push(this.plannerElements.get(_elementId4));
|
|
3927
4056
|
}
|
|
@@ -4010,31 +4139,90 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4010
4139
|
}, {
|
|
4011
4140
|
key: "getNeighborElements",
|
|
4012
4141
|
value: function getNeighborElements(elementId, dir) {
|
|
4013
|
-
var
|
|
4142
|
+
var _this = this,
|
|
4143
|
+
_curGrid$area$fromX,
|
|
4144
|
+
_downNeighbour$planne;
|
|
4145
|
+
var clean = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
|
|
4014
4146
|
var res = this.getCellsInGridByElementId(elementId);
|
|
4015
4147
|
var curGrid = res.backside ? this.generalPlanningState.grids[1].matrix : this.generalPlanningState.grids[0].matrix;
|
|
4016
4148
|
var result = [];
|
|
4017
4149
|
var plannedElement = res.cells[0].plannedElement;
|
|
4018
4150
|
if (!plannedElement) return result;
|
|
4151
|
+
var currentRow = curGrid[plannedElement.area.fromX];
|
|
4152
|
+
var startHeight = 0;
|
|
4153
|
+
var endHeight = 0;
|
|
4154
|
+
for (var y = 0; y < currentRow.length;) {
|
|
4155
|
+
var cell = currentRow[y];
|
|
4156
|
+
if (cell.index.y < res.startRowIndex) startHeight = Math.round((startHeight + cell.plannedElement.size.height) * 1000) / 1000;
|
|
4157
|
+
if (cell.index.y < res.endRowIndex) endHeight = Math.round((endHeight + cell.plannedElement.size.height) * 1000) / 1000;
|
|
4158
|
+
y = cell.plannedElement.area.toY;
|
|
4159
|
+
}
|
|
4160
|
+
var neighbourSize = 0;
|
|
4161
|
+
var neighbours = [];
|
|
4019
4162
|
switch (dir) {
|
|
4020
4163
|
case 'RIGHT':
|
|
4021
4164
|
// only clean neighbours (for docking) add property if you also need clean ones
|
|
4022
|
-
|
|
4023
|
-
var
|
|
4024
|
-
|
|
4165
|
+
|
|
4166
|
+
for (var x = plannedElement.area.toX; x < curGrid.length;) {
|
|
4167
|
+
var _neighbourRow$0$plann, _neighbourRow$0$plann2;
|
|
4168
|
+
var neighbourRow = curGrid[x];
|
|
4169
|
+
for (var _y = 0; _y < neighbourRow.length;) {
|
|
4170
|
+
var _cell5$plannedElement, _cell5$plannedElement2;
|
|
4171
|
+
var _cell5 = neighbourRow[_y];
|
|
4172
|
+
if (neighbours.includes(_cell5)) continue;
|
|
4173
|
+
|
|
4174
|
+
// cubo has ladders that cause the first box to range all to the top, therefore the height computation won't work
|
|
4175
|
+
if (plannedElement.area.fromY == _y && this.gridSetupParams.forceSingleCellPerElement && plannedElement.area.toX == x) neighbours.push(_cell5);else if (clean && !this.gridSetupParams.forceSingleCellPerElement && neighbourSize == startHeight) neighbours.push(_cell5);else if (!clean && neighbourSize >= startHeight && neighbourSize <= endHeight) neighbours.push(_cell5);
|
|
4176
|
+
neighbourSize = Math.round((neighbourSize + _cell5.plannedElement.size.height) * 1000) / 1000;
|
|
4177
|
+
_y = (_cell5$plannedElement = (_cell5$plannedElement2 = _cell5.plannedElement) === null || _cell5$plannedElement2 === void 0 ? void 0 : _cell5$plannedElement2.area.toY) !== null && _cell5$plannedElement !== void 0 ? _cell5$plannedElement : _y + 1;
|
|
4178
|
+
}
|
|
4179
|
+
neighbourSize = 0;
|
|
4180
|
+
x = (_neighbourRow$0$plann = (_neighbourRow$0$plann2 = neighbourRow[0].plannedElement) === null || _neighbourRow$0$plann2 === void 0 ? void 0 : _neighbourRow$0$plann2.area.toX) !== null && _neighbourRow$0$plann !== void 0 ? _neighbourRow$0$plann : x + 1;
|
|
4181
|
+
}
|
|
4182
|
+
neighbours.forEach(function (n) {
|
|
4183
|
+
return !result.find(function (r) {
|
|
4184
|
+
return r.ElementId == n.plannedElement.elementId;
|
|
4185
|
+
}) && result.push(_this.plannerElements.get(n.plannedElement.elementId));
|
|
4186
|
+
});
|
|
4025
4187
|
break;
|
|
4026
4188
|
case 'LEFT':
|
|
4027
|
-
var
|
|
4028
|
-
|
|
4029
|
-
|
|
4189
|
+
for (var _x2 = plannedElement.area.fromX - 1; _x2 > 0;) {
|
|
4190
|
+
var _neighbourRow = curGrid[_x2];
|
|
4191
|
+
for (var _y2 = 0; _y2 < _neighbourRow.length;) {
|
|
4192
|
+
var _cell6$plannedElement, _cell6$plannedElement2;
|
|
4193
|
+
var _cell6 = _neighbourRow[_y2];
|
|
4194
|
+
if (neighbours.includes(_cell6)) continue;
|
|
4195
|
+
if (plannedElement.area.fromY == _y2 && this.gridSetupParams.forceSingleCellPerElement && plannedElement.area.toX == _x2) neighbours.push(_cell6);else if (clean && !this.gridSetupParams.forceSingleCellPerElement && neighbourSize == startHeight) neighbours.push(_cell6);else if (!clean && neighbourSize >= startHeight && neighbourSize <= endHeight) neighbours.push(_cell6);
|
|
4196
|
+
neighbourSize = Math.round((neighbourSize + _cell6.plannedElement.size.height) * 1000) / 1000;
|
|
4197
|
+
_y2 = (_cell6$plannedElement = (_cell6$plannedElement2 = _cell6.plannedElement) === null || _cell6$plannedElement2 === void 0 ? void 0 : _cell6$plannedElement2.area.toY) !== null && _cell6$plannedElement !== void 0 ? _cell6$plannedElement : _y2 + 1;
|
|
4198
|
+
}
|
|
4199
|
+
neighbourSize = 0;
|
|
4200
|
+
_x2 = _neighbourRow[0].plannedElement ? _neighbourRow[0].plannedElement.area.fromX - 1 : _x2 + 1;
|
|
4201
|
+
}
|
|
4202
|
+
neighbours.forEach(function (n) {
|
|
4203
|
+
return !result.find(function (r) {
|
|
4204
|
+
return r.ElementId == n.plannedElement.elementId;
|
|
4205
|
+
}) && result.push(_this.plannerElements.get(n.plannedElement.elementId));
|
|
4206
|
+
});
|
|
4030
4207
|
break;
|
|
4031
4208
|
case 'TOP':
|
|
4032
|
-
var
|
|
4033
|
-
var
|
|
4034
|
-
|
|
4209
|
+
var topNeighbours = [];
|
|
4210
|
+
for (var _x3 = plannedElement.area.fromX; _x3 < plannedElement.area.toX;) {
|
|
4211
|
+
var _cell7 = curGrid[_x3][plannedElement.area.toY];
|
|
4212
|
+
if (!_cell7) break;
|
|
4213
|
+
topNeighbours.push(_cell7);
|
|
4214
|
+
if (clean) break;
|
|
4215
|
+
_x3 = _cell7.plannedElement.area.toX;
|
|
4216
|
+
}
|
|
4217
|
+
if (topNeighbours.length == 0) break;
|
|
4218
|
+
topNeighbours.forEach(function (topNeighbour) {
|
|
4219
|
+
var _plannedElement3;
|
|
4220
|
+
var tElementId = (_plannedElement3 = topNeighbour.plannedElement) === null || _plannedElement3 === void 0 ? void 0 : _plannedElement3.elementId;
|
|
4221
|
+
if (tElementId) result.push(_this.plannerElements.get(tElementId));
|
|
4222
|
+
});
|
|
4035
4223
|
break;
|
|
4036
4224
|
case 'DOWN':
|
|
4037
|
-
var downNeighbour = (_curGrid$area$
|
|
4225
|
+
var downNeighbour = (_curGrid$area$fromX = curGrid[plannedElement.area.fromX]) === null || _curGrid$area$fromX === void 0 ? void 0 : _curGrid$area$fromX[plannedElement.area.fromY - 1];
|
|
4038
4226
|
var dElementId = downNeighbour === null || downNeighbour === void 0 || (_downNeighbour$planne = downNeighbour.plannedElement) === null || _downNeighbour$planne === void 0 ? void 0 : _downNeighbour$planne.elementId;
|
|
4039
4227
|
if (dElementId) result.push(this.plannerElements.get(dElementId));
|
|
4040
4228
|
break;
|
|
@@ -4100,16 +4288,16 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4100
4288
|
var checkedElementIds = [];
|
|
4101
4289
|
var frontGrid = this.generalPlanningState.grids[0].matrix;
|
|
4102
4290
|
for (var x = 0; x < frontGrid.length;) {
|
|
4103
|
-
var _row$0$plannedElement, _row
|
|
4291
|
+
var _row$0$plannedElement, _row$;
|
|
4104
4292
|
var curHeight = 0;
|
|
4105
4293
|
var row = frontGrid[x];
|
|
4106
4294
|
for (var y = 0; y < row.length;) {
|
|
4107
|
-
var
|
|
4295
|
+
var _cell8, _cell$plannedElement$, _cell$plannedElement8;
|
|
4108
4296
|
var cell = row[y];
|
|
4109
|
-
var elementId = (
|
|
4297
|
+
var elementId = (_cell8 = cell) === null || _cell8 === void 0 || (_cell8 = _cell8.plannedElement) === null || _cell8 === void 0 ? void 0 : _cell8.elementId;
|
|
4110
4298
|
if (elementId && cell && checkedElementIds.indexOf(elementId) == -1) {
|
|
4111
4299
|
curHeight += this.plannerElements.get(elementId).getHeight();
|
|
4112
|
-
if (x == 0 && y == 0) depth =
|
|
4300
|
+
if (x == 0 && y == 0) depth = cell.plannedElement.size.depth;
|
|
4113
4301
|
}
|
|
4114
4302
|
y = (_cell$plannedElement$ = (_cell$plannedElement8 = cell.plannedElement) === null || _cell$plannedElement8 === void 0 ? void 0 : _cell$plannedElement8.area.toY) !== null && _cell$plannedElement$ !== void 0 ? _cell$plannedElement$ : y + 1;
|
|
4115
4303
|
}
|
|
@@ -4120,7 +4308,7 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4120
4308
|
if (curWidth == 77.9) curWidth = 75;else if (curWidth == 40.4) curWidth = 37.5;else if (curWidth == 21.7) curWidth = 18.75;
|
|
4121
4309
|
}
|
|
4122
4310
|
width += curWidth;
|
|
4123
|
-
x = (_row$0$plannedElement = (_row$
|
|
4311
|
+
x = (_row$0$plannedElement = row === null || row === void 0 || (_row$ = row[0]) === null || _row$ === void 0 || (_row$ = _row$.plannedElement) === null || _row$ === void 0 ? void 0 : _row$.area.toX) !== null && _row$0$plannedElement !== void 0 ? _row$0$plannedElement : x + 1;
|
|
4124
4312
|
}
|
|
4125
4313
|
if (this.hasActiveBackside) depth *= 2;
|
|
4126
4314
|
return new Vector3(width, height, depth);
|
|
@@ -4136,9 +4324,11 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4136
4324
|
var onBottom = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
4137
4325
|
if (this.hasActiveBackside) throw new Error('this function is doesnt implement the backside logic (yet)');
|
|
4138
4326
|
var result = [];
|
|
4327
|
+
var grid = this.generalPlanningState.grids[0].matrix;
|
|
4139
4328
|
var lastHeight = -1;
|
|
4140
|
-
for (var x = 0; x <
|
|
4141
|
-
var
|
|
4329
|
+
for (var x = 0; x < grid.length;) {
|
|
4330
|
+
var _grid$new_x;
|
|
4331
|
+
var row = grid[x];
|
|
4142
4332
|
var height = 0;
|
|
4143
4333
|
for (var y = 0; y < row.length;) {
|
|
4144
4334
|
var element = row[y].plannedElement;
|
|
@@ -4147,12 +4337,20 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4147
4337
|
}
|
|
4148
4338
|
if (Math.round(height) == Math.round(lastHeight) || onBottom) {
|
|
4149
4339
|
if (!result[result.length - 1]) result.push([]);
|
|
4150
|
-
result[result.length - 1].push(
|
|
4151
|
-
} else {
|
|
4152
|
-
result.push([
|
|
4340
|
+
result[result.length - 1].push(grid[x][onBottom ? 0 : row.length - 1].plannedElement);
|
|
4341
|
+
} else if (grid[x][row.length - 1].plannedElement.area.fromX == x) {
|
|
4342
|
+
result.push([grid[x][onBottom ? 0 : row.length - 1].plannedElement]);
|
|
4153
4343
|
}
|
|
4154
4344
|
lastHeight = height;
|
|
4155
|
-
|
|
4345
|
+
var new_x = row[row.length - 1].plannedElement.area.toX;
|
|
4346
|
+
var newHeight = (_grid$new_x = grid[new_x]) === null || _grid$new_x === void 0 ? void 0 : _grid$new_x.length;
|
|
4347
|
+
|
|
4348
|
+
// if the next row is fx. lower and doesn't have a clean cut here we need to skip more
|
|
4349
|
+
if (newHeight && newHeight != row.length) {
|
|
4350
|
+
var cell = grid[new_x][newHeight - 1];
|
|
4351
|
+
if (cell.index.x != cell.plannedElement.area.fromX) new_x = cell.plannedElement.area.toX;
|
|
4352
|
+
}
|
|
4353
|
+
x = new_x;
|
|
4156
4354
|
}
|
|
4157
4355
|
return result;
|
|
4158
4356
|
}
|
|
@@ -4198,42 +4396,63 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4198
4396
|
}, {
|
|
4199
4397
|
key: "getAllElementsToFillUp",
|
|
4200
4398
|
value: function getAllElementsToFillUp(elementId, dir) {
|
|
4201
|
-
var
|
|
4399
|
+
var _this2 = this;
|
|
4202
4400
|
var curPos = this.getCellsInGridByElementId(elementId);
|
|
4203
4401
|
|
|
4204
4402
|
//columns and rows are swapped don't ask me why
|
|
4205
4403
|
var element = curPos.cells[0].plannedElement;
|
|
4206
4404
|
var index = {
|
|
4207
|
-
x: curPos.startColIndex,
|
|
4405
|
+
x: dir == 'LEFT' ? curPos.startColIndex : curPos.endColIndex - 1,
|
|
4208
4406
|
y: curPos.startRowIndex
|
|
4209
4407
|
};
|
|
4210
4408
|
var curGrid = curPos.backside ? this.generalPlanningState.grids[1].matrix : this.generalPlanningState.grids[0].matrix;
|
|
4211
4409
|
var plannerIdsToFill = [];
|
|
4212
|
-
var
|
|
4213
|
-
var
|
|
4214
|
-
|
|
4215
|
-
|
|
4216
|
-
|
|
4217
|
-
|
|
4218
|
-
|
|
4219
|
-
|
|
4220
|
-
|
|
4221
|
-
|
|
4222
|
-
|
|
4223
|
-
|
|
4224
|
-
|
|
4225
|
-
|
|
4226
|
-
|
|
4227
|
-
|
|
4228
|
-
|
|
4229
|
-
|
|
4230
|
-
|
|
4231
|
-
|
|
4232
|
-
|
|
4410
|
+
var length = element.area.toX - element.area.fromX;
|
|
4411
|
+
var d = dir == 'RIGHT' ? +length : -length;
|
|
4412
|
+
plannerIdsToFill.push(element.elementId);
|
|
4413
|
+
_objectSpread(_objectSpread({}, element.area), {}, {
|
|
4414
|
+
fromX: element.area.fromX + d,
|
|
4415
|
+
toX: element.area.toX + d
|
|
4416
|
+
});
|
|
4417
|
+
var _loop = function _loop(_y3) {
|
|
4418
|
+
var _curGrid$index$x$_y;
|
|
4419
|
+
var supportElement = (_curGrid$index$x$_y = curGrid[index.x][_y3]) === null || _curGrid$index$x$_y === void 0 ? void 0 : _curGrid$index$x$_y.plannedElement;
|
|
4420
|
+
if (!supportElement) {
|
|
4421
|
+
y = _y3;
|
|
4422
|
+
return 0;
|
|
4423
|
+
} // break
|
|
4424
|
+
var topElements = _this2.getNeighborElements(supportElement.elementId, 'TOP', false);
|
|
4425
|
+
var topWidth = 0;
|
|
4426
|
+
topElements.forEach(function (t) {
|
|
4427
|
+
return topWidth += t.Width;
|
|
4428
|
+
});
|
|
4429
|
+
var freeSpace = 0;
|
|
4430
|
+
if (supportElement.size.width > topWidth) freeSpace = supportElement.size.width - topWidth;
|
|
4431
|
+
var neighbours = _this2.getNeighborElements(supportElement.elementId, dir, false);
|
|
4432
|
+
neighbours.forEach(function (n) {
|
|
4433
|
+
if (_this2.getNeighborElements(n.ElementId, 'TOP').length > 0) return;
|
|
4434
|
+
freeSpace += n.Width;
|
|
4435
|
+
});
|
|
4436
|
+
if (freeSpace >= element.size.width) {
|
|
4437
|
+
y = _y3;
|
|
4438
|
+
return 0;
|
|
4439
|
+
} // break
|
|
4440
|
+
var missingWidth = element.size.width - freeSpace;
|
|
4441
|
+
while (missingWidth > 0) {
|
|
4442
|
+
plannerIdsToFill.push(supportElement.elementId);
|
|
4443
|
+
missingWidth = Math.round(missingWidth - supportElement.size.width);
|
|
4444
|
+
}
|
|
4445
|
+
_y3 = supportElement.area.fromY - 1;
|
|
4446
|
+
y = _y3;
|
|
4447
|
+
},
|
|
4448
|
+
_ret;
|
|
4449
|
+
for (var y = index.y - 1; y >= 0;) {
|
|
4450
|
+
_ret = _loop(y);
|
|
4451
|
+
if (_ret === 0) break;
|
|
4233
4452
|
}
|
|
4234
4453
|
// if there is nothing to fill we copy everyting
|
|
4235
4454
|
return {
|
|
4236
|
-
elements: plannerIdsToFill.
|
|
4455
|
+
elements: plannerIdsToFill.reverse(),
|
|
4237
4456
|
backside: curPos.backside
|
|
4238
4457
|
};
|
|
4239
4458
|
}
|
|
@@ -4329,11 +4548,32 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4329
4548
|
// [][] -> | [][][]
|
|
4330
4549
|
// [][] | [][][]
|
|
4331
4550
|
// [][][] | [][][][]
|
|
4332
|
-
function moveGrid(plannedCells) {
|
|
4551
|
+
var moveGrid = function moveGrid(plannedCells) {
|
|
4333
4552
|
var grid = new Array();
|
|
4334
4553
|
var rightNeighbour = plannedCells.filter(function (c) {
|
|
4335
4554
|
return c.index.x == element.area.toX;
|
|
4336
4555
|
});
|
|
4556
|
+
var col = [];
|
|
4557
|
+
var support = [];
|
|
4558
|
+
var _loop2 = function _loop2() {
|
|
4559
|
+
var c = frontGrid[x][element.area.fromY];
|
|
4560
|
+
var s = frontGrid[x][element.area.fromY - 1];
|
|
4561
|
+
if (c && !col.find(function (_c) {
|
|
4562
|
+
return _c.plannedElement.elementId == c.plannedElement.elementId;
|
|
4563
|
+
})) col.push(frontGrid[x][element.area.fromY]);
|
|
4564
|
+
if (s && !support.find(function (_c) {
|
|
4565
|
+
return _c.plannedElement.elementId == s.plannedElement.elementId;
|
|
4566
|
+
})) support.push(frontGrid[x][element.area.fromY - 1]);
|
|
4567
|
+
};
|
|
4568
|
+
for (var x = 0; x < frontGrid.length; x++) {
|
|
4569
|
+
_loop2();
|
|
4570
|
+
}
|
|
4571
|
+
var sizeXTop = col.reduce(function (acc, n) {
|
|
4572
|
+
return acc += n.plannedElement.size.width;
|
|
4573
|
+
}, 0);
|
|
4574
|
+
var sizeXUnder = support ? support.reduce(function (acc, n) {
|
|
4575
|
+
return acc += n.plannedElement.size.width;
|
|
4576
|
+
}, 0) : 0;
|
|
4337
4577
|
var rightNeighbourOfCopy = rightNeighbour.find(function (c) {
|
|
4338
4578
|
return c.index.y == absoluteCopyIndex.y;
|
|
4339
4579
|
});
|
|
@@ -4345,7 +4585,9 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4345
4585
|
});
|
|
4346
4586
|
plannedCells.forEach(function (cell) {
|
|
4347
4587
|
// if we can't fill up (need to move the grid)
|
|
4348
|
-
if (cell.index.x >= absoluteCopyIndex.x && (copyDirectionIsRight && (rightNeighbourOfCopy || rightNeighbour.length == 0)
|
|
4588
|
+
if (cell.index.x >= absoluteCopyIndex.x && (copyDirectionIsRight && (rightNeighbourOfCopy || rightNeighbour.length == 0) && (
|
|
4589
|
+
// no free space or on the right height == move
|
|
4590
|
+
!(sizeXTop <= sizeXUnder - element.size.width) || cell.index.y >= element.area.fromY && cell.index.y < element.area.toY) || !copyDirectionIsRight && (leftNeighbourOfCopy || leftNeighbour.length == 0) || absoluteCopyIndex.x == -1)) {
|
|
4349
4591
|
cell.index.x += widthCopyArea;
|
|
4350
4592
|
cell.plannedElement.area.fromX += widthCopyArea;
|
|
4351
4593
|
cell.plannedElement.area.toX += widthCopyArea;
|
|
@@ -4354,13 +4596,13 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4354
4596
|
grid[cell.index.x][cell.index.y] = cell;
|
|
4355
4597
|
});
|
|
4356
4598
|
return grid;
|
|
4357
|
-
}
|
|
4599
|
+
};
|
|
4358
4600
|
frontGrid = moveGrid(this.getAllUsedCellsInGrid(false));
|
|
4359
4601
|
for (var x = 0; x < widthCopyArea; x++) if (!frontGrid[absoluteCopyIndex.x + x]) frontGrid[absoluteCopyIndex.x + x] = [];
|
|
4360
4602
|
this.generalPlanningState.grids[0].matrix = frontGrid;
|
|
4361
4603
|
if (this.hasActiveBackside) {
|
|
4362
4604
|
backGrid = moveGrid(this.getAllUsedCellsInGrid(true));
|
|
4363
|
-
for (var
|
|
4605
|
+
for (var _x4 = 0; _x4 < widthCopyArea; _x4++) if (!backGrid[absoluteCopyIndex.x + _x4]) backGrid[absoluteCopyIndex.x + _x4] = [];
|
|
4364
4606
|
this.generalPlanningState.grids[1].matrix = backGrid;
|
|
4365
4607
|
}
|
|
4366
4608
|
}
|
|
@@ -4406,13 +4648,12 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4406
4648
|
var elementData = this.plannerElements.get(elementId);
|
|
4407
4649
|
var deletedCells = this.getCellsInGridByElementId(elementId);
|
|
4408
4650
|
if (!elementData) return;
|
|
4409
|
-
this.deleteElement(elementId,
|
|
4651
|
+
this.deleteElement(elementId, 'STD');
|
|
4410
4652
|
var curGrid = this.generalPlanningState.grids[0].matrix;
|
|
4411
4653
|
var cells = undefined;
|
|
4412
|
-
if (absoluteIndex.x < 0
|
|
4413
|
-
) {
|
|
4654
|
+
if (absoluteIndex.x < 0 && absoluteIndex.y == 0) {
|
|
4414
4655
|
var dir = deletedCells.endColIndex >= absoluteIndex.x;
|
|
4415
|
-
if (deletedCells.startColIndex
|
|
4656
|
+
if (deletedCells.startColIndex <= absoluteIndex.x) absoluteIndex.x -= deletedCells.endColIndex - deletedCells.startColIndex;
|
|
4416
4657
|
if (absoluteIndex.x < 0) absoluteIndex.x = 0;
|
|
4417
4658
|
cells = this.createNewCells(elementData, absoluteIndex.x, absoluteIndex.y, false);
|
|
4418
4659
|
var movedGrid = [];
|
|
@@ -4421,9 +4662,9 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4421
4662
|
_.forEach(function (_, y) {
|
|
4422
4663
|
var newX = x;
|
|
4423
4664
|
var shiftX = 0;
|
|
4424
|
-
if (y == absoluteIndex.y) {
|
|
4425
|
-
newX += dir ? element.area.toX - element.area.fromX :
|
|
4426
|
-
shiftX = dir ? element.area.toX - element.area.fromX :
|
|
4665
|
+
if (y == absoluteIndex.y || absoluteIndex.y == 0) {
|
|
4666
|
+
newX += dir ? element.area.toX - element.area.fromX : 0;
|
|
4667
|
+
shiftX = dir ? element.area.toX - element.area.fromX : 0;
|
|
4427
4668
|
}
|
|
4428
4669
|
if (!movedGrid[newX]) movedGrid[newX] = [];
|
|
4429
4670
|
var cellElem = curGrid[x][y].plannedElement;
|
|
@@ -4446,7 +4687,7 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4446
4687
|
});
|
|
4447
4688
|
curGrid = movedGrid;
|
|
4448
4689
|
} else {
|
|
4449
|
-
if (absoluteIndex.x > deletedCells.startColIndex &&
|
|
4690
|
+
if (absoluteIndex.x > deletedCells.startColIndex && deletedCells.startRowIndex == 0) absoluteIndex.x -= deletedCells.endColIndex - deletedCells.startColIndex;
|
|
4450
4691
|
cells = this.createNewCells(elementData, absoluteIndex.x, absoluteIndex.y, false);
|
|
4451
4692
|
}
|
|
4452
4693
|
for (var i = 0; i < cells.length; i++) {
|
|
@@ -4476,8 +4717,6 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4476
4717
|
var backsideForCopy = copyIndex.z == -1 || curPos.backside == true;
|
|
4477
4718
|
if (cellIndex.x < 0) cellIndex.x = 0; // can't plan to negative space see prepareGridForColCopy
|
|
4478
4719
|
var curGrid = backsideForCopy ? this.generalPlanningState.grids[1].matrix : this.generalPlanningState.grids[0].matrix;
|
|
4479
|
-
// can't float need to dock
|
|
4480
|
-
if (curGrid[cellIndex.x].length < cellIndex.y) cellIndex.y = curGrid[cellIndex.x].length;
|
|
4481
4720
|
var cells = this.createNewCells(newElement, cellIndex.x, cellIndex.y, backsideForCopy);
|
|
4482
4721
|
for (var i = 0; i < cells.length; i++) {
|
|
4483
4722
|
if (!curGrid[cells[i].index.x]) curGrid[cells[i].index.x] = [];
|
|
@@ -4508,75 +4747,129 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4508
4747
|
}, {
|
|
4509
4748
|
key: "updateGridElementDimensions",
|
|
4510
4749
|
value: function updateGridElementDimensions(elementId, elementData) {
|
|
4511
|
-
var
|
|
4512
|
-
if (!elementData) return;
|
|
4750
|
+
var _this3 = this;
|
|
4751
|
+
if (!elementData) return false;
|
|
4752
|
+
var backup = structuredClone(this.generalPlanningState);
|
|
4513
4753
|
var res = this.getCellsInGridByElementId(elementId);
|
|
4514
4754
|
var scpe = this.gridSetupParams.forceSingleCellPerElement;
|
|
4755
|
+
var origin = {
|
|
4756
|
+
x: res.cells[0].plannedElement.area.toX,
|
|
4757
|
+
y: res.cells[0].plannedElement.area.toY
|
|
4758
|
+
};
|
|
4759
|
+
var diff = {
|
|
4760
|
+
x: 0,
|
|
4761
|
+
y: 0
|
|
4762
|
+
};
|
|
4515
4763
|
res.cells.forEach(function (cell) {
|
|
4516
4764
|
if (!cell.plannedElement) return;
|
|
4517
|
-
|
|
4518
|
-
|
|
4519
|
-
|
|
4520
|
-
|
|
4521
|
-
|
|
4522
|
-
|
|
4523
|
-
|
|
4765
|
+
var el = cell.plannedElement;
|
|
4766
|
+
el.size.width = elementData.width;
|
|
4767
|
+
el.size.height = elementData.height;
|
|
4768
|
+
el.size.depth = elementData.depth;
|
|
4769
|
+
el.area = {
|
|
4770
|
+
fromX: el.area.fromX,
|
|
4771
|
+
toX: !scpe ? Math.round(el.area.fromX + elementData.width / _this3.gridSetupParams.fixCellRasterWidth) : cell.index.x + 1,
|
|
4772
|
+
fromY: el.area.fromY,
|
|
4773
|
+
toY: !scpe ? Math.round(el.area.fromY + elementData.height / _this3.gridSetupParams.fixCellRasterHeight) : cell.index.y + 1
|
|
4524
4774
|
};
|
|
4775
|
+
diff.y = cell.plannedElement.area.toY - origin.y;
|
|
4776
|
+
diff.x = cell.plannedElement.area.toX - origin.x;
|
|
4525
4777
|
});
|
|
4526
|
-
|
|
4778
|
+
var cell = res.cells[0];
|
|
4779
|
+
var grid = this.generalPlanningState.grids[0].matrix;
|
|
4780
|
+
// if the element got bigger we need to move all the above elements up
|
|
4781
|
+
// if it got wider we need to move all the elements to the right
|
|
4782
|
+
if (diff.y != 0) {
|
|
4783
|
+
for (var x = cell.plannedElement.area.fromX; x < cell.plannedElement.area.toX; x++) {
|
|
4784
|
+
var row = grid[x];
|
|
4785
|
+
if (!row) continue;
|
|
4786
|
+
for (var y = origin.y; y < row.length; y++) {
|
|
4787
|
+
var _cell = row[y];
|
|
4788
|
+
if (_cell.index.y != y || _cell.plannedElement.elementId == cell.plannedElement.elementId) continue; //already corrected
|
|
4789
|
+
_cell.index.y += diff.y;
|
|
4790
|
+
_cell.plannedElement.area.fromY += diff.y;
|
|
4791
|
+
_cell.plannedElement.area.toY += diff.y;
|
|
4792
|
+
}
|
|
4793
|
+
}
|
|
4794
|
+
} else if (diff.x != 0) {
|
|
4795
|
+
for (var _x5 = cell.plannedElement.area.fromX; _x5 < grid.length; _x5++) {
|
|
4796
|
+
for (var _y4 = cell.plannedElement.area.fromY; _y4 < cell.plannedElement.area.toY; _y4++) {
|
|
4797
|
+
var _cell9 = grid[_x5][_y4];
|
|
4798
|
+
if (!_cell9 || _cell9.plannedElement.elementId == elementId) continue; //already corrected
|
|
4799
|
+
_cell9.index.x += diff.x;
|
|
4800
|
+
_cell9.plannedElement.area.fromX += diff.x;
|
|
4801
|
+
_cell9.plannedElement.area.toX += diff.x;
|
|
4802
|
+
}
|
|
4803
|
+
}
|
|
4804
|
+
}
|
|
4805
|
+
|
|
4806
|
+
// after indices/areas are corrected rebuild the grid
|
|
4807
|
+
if (scpe) return false;
|
|
4808
|
+
res.cells[0].plannedElement;
|
|
4527
4809
|
var newGrid = new Array();
|
|
4528
4810
|
var plannedCells = this.getAllUsedCellsInGrid(false);
|
|
4529
|
-
|
|
4530
|
-
|
|
4531
|
-
|
|
4532
|
-
|
|
4533
|
-
|
|
4534
|
-
|
|
4535
|
-
|
|
4536
|
-
|
|
4537
|
-
|
|
4538
|
-
var
|
|
4539
|
-
|
|
4540
|
-
if (
|
|
4541
|
-
|
|
4542
|
-
|
|
4543
|
-
|
|
4544
|
-
|
|
4545
|
-
|
|
4546
|
-
|
|
4547
|
-
|
|
4548
|
-
|
|
4549
|
-
|
|
4550
|
-
plannedElement: el && el.length > 0 ? el[0].plannedElement : undefined
|
|
4811
|
+
var _loop3 = function _loop3() {
|
|
4812
|
+
var cell = plannedCells[idx];
|
|
4813
|
+
var area = cell.plannedElement.area;
|
|
4814
|
+
if (newGrid.find(function (x) {
|
|
4815
|
+
return x.find(function (y) {
|
|
4816
|
+
var _y$plannedElement3, _cell$plannedElement9;
|
|
4817
|
+
return (y === null || y === void 0 || (_y$plannedElement3 = y.plannedElement) === null || _y$plannedElement3 === void 0 ? void 0 : _y$plannedElement3.elementId) == ((_cell$plannedElement9 = cell.plannedElement) === null || _cell$plannedElement9 === void 0 ? void 0 : _cell$plannedElement9.elementId);
|
|
4818
|
+
});
|
|
4819
|
+
})) return 0; // continue
|
|
4820
|
+
for (var _x6 = area.fromX; _x6 < area.toX; _x6++) {
|
|
4821
|
+
for (var _y5 = area.fromY; _y5 < area.toY; _y5++) {
|
|
4822
|
+
if (!newGrid[_x6] && area.fromY == 0) newGrid[_x6] = [];
|
|
4823
|
+
|
|
4824
|
+
// we have a so called overhanging element not so nice, let's correct:
|
|
4825
|
+
var support = plannedCells.find(function (c) {
|
|
4826
|
+
return c.plannedElement.area.toX >= cell.plannedElement.area.toX && c.plannedElement.area.toY == cell.index.y;
|
|
4827
|
+
});
|
|
4828
|
+
if (!support && !newGrid[_x6]) {
|
|
4829
|
+
_this3.generalPlanningState = backup;
|
|
4830
|
+
return {
|
|
4831
|
+
v: true
|
|
4551
4832
|
};
|
|
4552
|
-
return 0; // continue
|
|
4553
4833
|
}
|
|
4554
4834
|
|
|
4555
|
-
//
|
|
4556
|
-
|
|
4557
|
-
|
|
4835
|
+
// the element below got smaller
|
|
4836
|
+
if (!newGrid[_x6] && !support) {
|
|
4837
|
+
_this3.generalPlanningState = backup;
|
|
4838
|
+
return {
|
|
4839
|
+
v: true
|
|
4840
|
+
};
|
|
4841
|
+
} else if (!newGrid[_x6]) newGrid[_x6] = [];
|
|
4842
|
+
// when the element above starts early and goes over multiple ones
|
|
4843
|
+
|
|
4844
|
+
// regular case
|
|
4845
|
+
newGrid[_x6][_y5] = _objectSpread(_objectSpread({}, cell), {}, {
|
|
4558
4846
|
index: {
|
|
4559
|
-
x:
|
|
4560
|
-
y:
|
|
4847
|
+
x: _x6,
|
|
4848
|
+
y: _y5
|
|
4561
4849
|
},
|
|
4562
4850
|
plannedElement: _objectSpread(_objectSpread({}, cell.plannedElement), {}, {
|
|
4563
4851
|
area: {
|
|
4564
|
-
fromX:
|
|
4565
|
-
toX:
|
|
4566
|
-
fromY:
|
|
4567
|
-
toY:
|
|
4568
|
-
}
|
|
4852
|
+
fromX: cell.plannedElement.area.fromX,
|
|
4853
|
+
toX: cell.plannedElement.area.fromX + (cell.plannedElement.area.toX - cell.plannedElement.area.fromX),
|
|
4854
|
+
fromY: cell.plannedElement.area.fromY,
|
|
4855
|
+
toY: cell.plannedElement.area.fromY + (cell.plannedElement.area.toY - cell.plannedElement.area.fromY)
|
|
4856
|
+
},
|
|
4857
|
+
size: _objectSpread(_objectSpread({}, cell.plannedElement.size), {}, {
|
|
4858
|
+
depth: elementData.depth
|
|
4859
|
+
})
|
|
4569
4860
|
})
|
|
4570
4861
|
});
|
|
4571
|
-
}
|
|
4572
|
-
_ret;
|
|
4573
|
-
for (var y = 0; y < area.toY; y++) {
|
|
4574
|
-
_ret = _loop2(y);
|
|
4575
|
-
if (_ret === 0) continue;
|
|
4862
|
+
}
|
|
4576
4863
|
}
|
|
4577
|
-
}
|
|
4578
|
-
|
|
4864
|
+
},
|
|
4865
|
+
_ret2;
|
|
4866
|
+
for (var idx = 0; idx < plannedCells.length; idx++) {
|
|
4867
|
+
_ret2 = _loop3();
|
|
4868
|
+
if (_ret2 === 0) continue;
|
|
4869
|
+
if (_ret2) return _ret2.v;
|
|
4870
|
+
}
|
|
4579
4871
|
if (res.backside) this.generalPlanningState.grids[1].matrix = newGrid;else this.generalPlanningState.grids[0].matrix = newGrid;
|
|
4872
|
+
return false;
|
|
4580
4873
|
}
|
|
4581
4874
|
|
|
4582
4875
|
/**
|
|
@@ -4617,9 +4910,11 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4617
4910
|
var topNeighbors = this.getNeighborElements(elementId, 'TOP');
|
|
4618
4911
|
var rightNeighbors = this.getNeighborElements(elementId, 'RIGHT');
|
|
4619
4912
|
var leftNeighbors = this.getNeighborElements(elementId, 'LEFT');
|
|
4913
|
+
var downNeighbors = this.getNeighborElements(elementId, 'DOWN');
|
|
4620
4914
|
if (topNeighbors.length > 0) dockingPointHandlerInst.tryDockElement(element, 'AVO', [topNeighbors[0]]);
|
|
4621
4915
|
if (leftNeighbors.length > 0) dockingPointHandlerInst.tryDockElement(element, 'AVL', [leftNeighbors[0]]);
|
|
4622
4916
|
if (rightNeighbors.length > 0) dockingPointHandlerInst.tryDockElement(element, 'AVR', [rightNeighbors[0]]);
|
|
4917
|
+
if (downNeighbors.length > 0) dockingPointHandlerInst.tryDockElement(element, 'AVU', [downNeighbors[0]]);
|
|
4623
4918
|
element.PosNr = posNr;
|
|
4624
4919
|
posNr++;
|
|
4625
4920
|
}
|
|
@@ -4627,9 +4922,9 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4627
4922
|
}
|
|
4628
4923
|
for (var i = 0; i < backGrid.length; i++) {
|
|
4629
4924
|
for (var j = 0; j < backGrid[i].length; j++) {
|
|
4630
|
-
var
|
|
4631
|
-
var
|
|
4632
|
-
var _elementId6 =
|
|
4925
|
+
var _cell10$plannedElemen;
|
|
4926
|
+
var _cell10 = backGrid[i][j];
|
|
4927
|
+
var _elementId6 = _cell10 === null || _cell10 === void 0 || (_cell10$plannedElemen = _cell10.plannedElement) === null || _cell10$plannedElemen === void 0 ? void 0 : _cell10$plannedElemen.elementId;
|
|
4633
4928
|
if (_elementId6 && allCheckedElementIds.indexOf(_elementId6) == -1) {
|
|
4634
4929
|
var _element2 = this.plannerElements.get(_elementId6);
|
|
4635
4930
|
allCheckedElementIds.push(_elementId6);
|
|
@@ -4967,9 +5262,9 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4967
5262
|
var targetRowIndex = endRowIndex + 1;
|
|
4968
5263
|
var _copyPossible = false;
|
|
4969
5264
|
// Iterate through columns within the element's width
|
|
4970
|
-
for (var
|
|
4971
|
-
if (isValidCell(
|
|
4972
|
-
copyStartColIndex =
|
|
5265
|
+
for (var _x7 = endColIndex; _x7 >= startColIndex; _x7--) {
|
|
5266
|
+
if (isValidCell(_x7, targetRowIndex)) {
|
|
5267
|
+
copyStartColIndex = _x7;
|
|
4973
5268
|
_copyPossible = true;
|
|
4974
5269
|
}
|
|
4975
5270
|
}
|
|
@@ -4986,19 +5281,19 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
4986
5281
|
var _targetColIndex = endColIndex;
|
|
4987
5282
|
var _copyPossible2 = false;
|
|
4988
5283
|
// Iterate through rows within the element's height
|
|
4989
|
-
for (var
|
|
4990
|
-
if (isValidCell(_targetColIndex,
|
|
4991
|
-
copyStartRowIndex =
|
|
5284
|
+
for (var _y6 = startRowIndex; _y6 <= endRowIndex; _y6++) {
|
|
5285
|
+
if (isValidCell(_targetColIndex, _y6)) {
|
|
5286
|
+
copyStartRowIndex = _y6;
|
|
4992
5287
|
_copyPossible2 = true;
|
|
4993
5288
|
break;
|
|
4994
5289
|
}
|
|
4995
5290
|
}
|
|
4996
5291
|
if (!_copyPossible2) return undefined;
|
|
4997
5292
|
_copyPossible2 = false;
|
|
4998
|
-
for (var
|
|
4999
|
-
if (isValidCell(
|
|
5293
|
+
for (var _x8 = endColIndex; _x8 <= endColIndex + elementCells.colCount; _x8++) {
|
|
5294
|
+
if (isValidCell(_x8, copyStartRowIndex) && (copyStartRowIndex == 0 || !isValidCell(_x8, copyStartRowIndex - 1))) {
|
|
5000
5295
|
//check also for overhang
|
|
5001
|
-
copyEndColIndex =
|
|
5296
|
+
copyEndColIndex = _x8;
|
|
5002
5297
|
_copyPossible2 = true;
|
|
5003
5298
|
} else {
|
|
5004
5299
|
break; //when you find one situation where it is not valid skip outside.
|
|
@@ -5038,16 +5333,16 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
5038
5333
|
} else {
|
|
5039
5334
|
var distToOriginX = 0;
|
|
5040
5335
|
for (var i = 0; i < cellsStartColIndex; i++) {
|
|
5041
|
-
var _plannedElement$size$3,
|
|
5042
|
-
distToOriginX += (_plannedElement$size$3 = (
|
|
5336
|
+
var _plannedElement$size$3, _plannedElement4;
|
|
5337
|
+
distToOriginX += (_plannedElement$size$3 = (_plannedElement4 = curGrid[i][0].plannedElement) === null || _plannedElement4 === void 0 ? void 0 : _plannedElement4.size.width) !== null && _plannedElement$size$3 !== void 0 ? _plannedElement$size$3 : 0;
|
|
5043
5338
|
}
|
|
5044
5339
|
if (cellsStartColIndex < 0) {
|
|
5045
5340
|
distToOriginX = -element.getWidth();
|
|
5046
5341
|
}
|
|
5047
5342
|
var distToOriginY = 0;
|
|
5048
5343
|
for (var i = 0; i < cellsStartRowIndex; i++) {
|
|
5049
|
-
var _plannedElement$size$4,
|
|
5050
|
-
distToOriginY += (_plannedElement$size$4 = (
|
|
5344
|
+
var _plannedElement$size$4, _plannedElement5;
|
|
5345
|
+
distToOriginY += (_plannedElement$size$4 = (_plannedElement5 = curGrid[cellsStartColIndex][i].plannedElement) === null || _plannedElement5 === void 0 ? void 0 : _plannedElement5.size.width) !== null && _plannedElement$size$4 !== void 0 ? _plannedElement$size$4 : 0;
|
|
5051
5346
|
}
|
|
5052
5347
|
elementLocation.startIndexWorldPos = new Vector2(distToOriginX, distToOriginY);
|
|
5053
5348
|
}
|
|
@@ -5094,7 +5389,7 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
5094
5389
|
var _ele2, _ele3;
|
|
5095
5390
|
var movables = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
5096
5391
|
var selectedElementId = arguments.length > 1 ? arguments[1] : undefined;
|
|
5097
|
-
if (!movables) return this.generalPlanningState;
|
|
5392
|
+
if (!movables || !selectedElementId) return this.generalPlanningState;
|
|
5098
5393
|
// fill to equal size
|
|
5099
5394
|
var matrix = this.generalPlanningState.grids[0].matrix;
|
|
5100
5395
|
var matrixWithMovables = [];
|
|
@@ -5141,6 +5436,9 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
5141
5436
|
isSupport = !!matrix.find(function (x, idx) {
|
|
5142
5437
|
return idx >= ele.area.fromX && idx < ele.area.toX && matrix[idx].length > ele.area.toY;
|
|
5143
5438
|
}); // can't move if there is anything above these cells
|
|
5439
|
+
|
|
5440
|
+
// if it has left and right neighbour and is on the bottom
|
|
5441
|
+
if (ele.area.fromX == 0 && this.getNeighborElements(ele.elementId, 'LEFT').length > 0 && this.getNeighborElements(ele.elementId, 'RIGHT').length > 0) isSupport = true;
|
|
5144
5442
|
}
|
|
5145
5443
|
if (isSupport) return this.generalPlanningState;
|
|
5146
5444
|
for (var x = 0; x < maxWidth; x++) {
|
|
@@ -5161,7 +5459,7 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
5161
5459
|
if (x >= from && x < to) return;
|
|
5162
5460
|
var row = matrixWithMovables[x];
|
|
5163
5461
|
var len = row.length;
|
|
5164
|
-
var _x = ele.fromX == 0 ? x : x - 1;
|
|
5462
|
+
var _x = ele.area.fromX == 0 ? x : x - 1;
|
|
5165
5463
|
row[len] = {
|
|
5166
5464
|
index: {
|
|
5167
5465
|
x: _x,
|
|
@@ -5174,7 +5472,7 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
5174
5472
|
var len = matrixWithMovables.length;
|
|
5175
5473
|
if (((_ele2 = ele) === null || _ele2 === void 0 ? void 0 : _ele2.area.toX) != matrix.length) matrixWithMovables[len] = [{
|
|
5176
5474
|
index: {
|
|
5177
|
-
x: ele.fromX == 0 ? len : len - 1,
|
|
5475
|
+
x: ele.area.fromX == 0 ? len : len - 1,
|
|
5178
5476
|
y: 0
|
|
5179
5477
|
}
|
|
5180
5478
|
}];
|
|
@@ -5198,7 +5496,7 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
5198
5496
|
//system 4 useacse
|
|
5199
5497
|
var totalColCount = matrix[0].length;
|
|
5200
5498
|
var colSizes = Array(totalColCount).fill(-1);
|
|
5201
|
-
var
|
|
5499
|
+
var _loop4 = function _loop4(i) {
|
|
5202
5500
|
var _matrix$find;
|
|
5203
5501
|
var cell = (_matrix$find = matrix.find(function (row) {
|
|
5204
5502
|
var _row$i$plannedElement, _row$i$plannedElement2;
|
|
@@ -5212,7 +5510,7 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
5212
5510
|
if (colSizes[i] === -1) return 1; // break
|
|
5213
5511
|
};
|
|
5214
5512
|
for (var i = 0; i < totalColCount; i++) {
|
|
5215
|
-
if (
|
|
5513
|
+
if (_loop4(i)) break;
|
|
5216
5514
|
}
|
|
5217
5515
|
if (colSizes.includes(-1)) LOG$1.error(new Error('Column sizes are not set'));
|
|
5218
5516
|
return colSizes;
|
|
@@ -5275,9 +5573,9 @@ var BoxPlannerGrid = /*#__PURE__*/function () {
|
|
|
5275
5573
|
});
|
|
5276
5574
|
if (!column) {
|
|
5277
5575
|
matrix.map(function (row) {
|
|
5278
|
-
var _row
|
|
5576
|
+
var _row$2;
|
|
5279
5577
|
return row.push({
|
|
5280
|
-
index: new Vector2(((_row$ = row[0]) === null || _row$ === void 0 ? void 0 : _row
|
|
5578
|
+
index: new Vector2(((_row$2 = row[0]) === null || _row$2 === void 0 ? void 0 : _row$2.index.x) || 0, y),
|
|
5281
5579
|
plannedElement: undefined
|
|
5282
5580
|
});
|
|
5283
5581
|
});
|
|
@@ -5326,7 +5624,7 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
5326
5624
|
key: "initPlanner",
|
|
5327
5625
|
value: function () {
|
|
5328
5626
|
var _initPlanner = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(setPlanData) {
|
|
5329
|
-
var planData, jsonElements, i, jsonElement, elementID, plannerElement, data, highesElemId, _jsonElement, params;
|
|
5627
|
+
var planData, jsonElements, i, jsonElement, elementID, plannerElement, constructionRules, _constructionRules$co, _constructionRules$co2, data, highesElemId, _jsonElement, params;
|
|
5330
5628
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
5331
5629
|
while (1) switch (_context.prev = _context.next) {
|
|
5332
5630
|
case 0:
|
|
@@ -5356,7 +5654,20 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
5356
5654
|
if (this.nextElementId < elementID + 1) this.nextElementId = elementID + 1;
|
|
5357
5655
|
this.set.setElementId(jsonElement.basketID, plannerElement.ElementId);
|
|
5358
5656
|
if (!this.constructionRulesHandler.getConstructionRulesLoaded()) {
|
|
5359
|
-
this.
|
|
5657
|
+
constructionRules = this.set.getConstructionRuleOfElementId(plannerElement.ElementId);
|
|
5658
|
+
if (constructionRules) {
|
|
5659
|
+
this.boxPlannerGrid.GridSetupParams = {
|
|
5660
|
+
fixCellRasterHeight: 19.2,
|
|
5661
|
+
fixCellRasterWidth: 19.2,
|
|
5662
|
+
forceFixCellRasterSize: (_constructionRules$co = constructionRules.constructionRules.forceFixCellRasterSize) !== null && _constructionRules$co !== void 0 ? _constructionRules$co : true,
|
|
5663
|
+
forceSingleCellPerElement: (_constructionRules$co2 = constructionRules.constructionRules.forceSingleCellPerElement) !== null && _constructionRules$co2 !== void 0 ? _constructionRules$co2 : true,
|
|
5664
|
+
hasMaxGridRasterHeight: constructionRules.constructionRules.hasMaxGridRasterHeight,
|
|
5665
|
+
maxGridRasterHeight: constructionRules.constructionRules.maxGridRasterHeight,
|
|
5666
|
+
hasMaxGridRasterWidth: constructionRules.constructionRules.hasMaxGridRasterWidth,
|
|
5667
|
+
maxGridRasterWidth: constructionRules.constructionRules.maxGridRasterWidth
|
|
5668
|
+
};
|
|
5669
|
+
}
|
|
5670
|
+
this.constructionRulesHandler.setConstructionRules(constructionRules);
|
|
5360
5671
|
}
|
|
5361
5672
|
data = this.set.getPlannerData(plannerElement.ElementId);
|
|
5362
5673
|
if (data) plannerElement.updatePlannerData(data);
|
|
@@ -5484,7 +5795,7 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
5484
5795
|
key: "addPlannerElement",
|
|
5485
5796
|
value: (function () {
|
|
5486
5797
|
var _addPlannerElement = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(basketID, params) {
|
|
5487
|
-
var plannerElement, data, constructionRules, _constructionRules$
|
|
5798
|
+
var plannerElement, data, constructionRules, _constructionRules$co3, _constructionRules$co4;
|
|
5488
5799
|
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
5489
5800
|
while (1) switch (_context2.prev = _context2.next) {
|
|
5490
5801
|
case 0:
|
|
@@ -5508,8 +5819,8 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
5508
5819
|
this.boxPlannerGrid.GridSetupParams = {
|
|
5509
5820
|
fixCellRasterHeight: 19.2,
|
|
5510
5821
|
fixCellRasterWidth: 19.2,
|
|
5511
|
-
forceFixCellRasterSize: (_constructionRules$
|
|
5512
|
-
forceSingleCellPerElement: (_constructionRules$
|
|
5822
|
+
forceFixCellRasterSize: (_constructionRules$co3 = constructionRules.constructionRules.forceFixCellRasterSize) !== null && _constructionRules$co3 !== void 0 ? _constructionRules$co3 : true,
|
|
5823
|
+
forceSingleCellPerElement: (_constructionRules$co4 = constructionRules.constructionRules.forceSingleCellPerElement) !== null && _constructionRules$co4 !== void 0 ? _constructionRules$co4 : true,
|
|
5513
5824
|
hasMaxGridRasterHeight: constructionRules.constructionRules.hasMaxGridRasterHeight,
|
|
5514
5825
|
maxGridRasterHeight: constructionRules.constructionRules.maxGridRasterHeight,
|
|
5515
5826
|
hasMaxGridRasterWidth: constructionRules.constructionRules.hasMaxGridRasterWidth,
|
|
@@ -5587,11 +5898,10 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
5587
5898
|
value: (function () {
|
|
5588
5899
|
var _copyPlannerElement = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee5(articleCopyRelation, copyInfo) {
|
|
5589
5900
|
var _this = this;
|
|
5590
|
-
var
|
|
5901
|
+
var plannerElementsToLoadSVG, that, i, cellPos, allDPs, j;
|
|
5591
5902
|
return _regeneratorRuntime.wrap(function _callee5$(_context5) {
|
|
5592
5903
|
while (1) switch (_context5.prev = _context5.next) {
|
|
5593
5904
|
case 0:
|
|
5594
|
-
gridIsPrepared = false;
|
|
5595
5905
|
if (copyInfo) {
|
|
5596
5906
|
_context5.next = 3;
|
|
5597
5907
|
break;
|
|
@@ -5601,25 +5911,22 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
5601
5911
|
if (copyInfo.copyType == 'STD') copyInfo.targetElements = [];
|
|
5602
5912
|
plannerElementsToLoadSVG = [];
|
|
5603
5913
|
that = this;
|
|
5604
|
-
articleCopyRelation.forEach(function (
|
|
5914
|
+
articleCopyRelation.forEach(function (val) {
|
|
5605
5915
|
var _copyInfo$targetEleme;
|
|
5606
|
-
if (
|
|
5607
|
-
if (
|
|
5608
|
-
|
|
5609
|
-
|
|
5610
|
-
_this.boxPlannerGrid.prepareGridForColCopy(elementToCopyId, copyInfo.copyIndex);
|
|
5611
|
-
}
|
|
5916
|
+
if (copyInfo.copyIndex.z == -1) {
|
|
5917
|
+
if (!_this.boxPlannerGrid.getPlannerHasActiveBackside()) _this.boxPlannerGrid.prepareGridForBackSideCopy();
|
|
5918
|
+
} else {
|
|
5919
|
+
_this.boxPlannerGrid.prepareGridForColCopy(val.key, copyInfo.copyIndex);
|
|
5612
5920
|
}
|
|
5613
|
-
gridIsPrepared = true;
|
|
5614
5921
|
|
|
5615
5922
|
//Init Planner Element
|
|
5616
|
-
var plannerElement = new PlannerElementData(_this.set.getSetId(),
|
|
5923
|
+
var plannerElement = new PlannerElementData(_this.set.getSetId(), val.value, _this.nextElementId, DivaBoxPlanner.plannerType);
|
|
5617
5924
|
_this.nextElementId++;
|
|
5618
|
-
_this.set.setElementId(
|
|
5925
|
+
_this.set.setElementId(val.value, plannerElement.ElementId);
|
|
5619
5926
|
var data = _this.set.getPlannerData(plannerElement.ElementId);
|
|
5620
5927
|
plannerElement.updatePlannerData(data);
|
|
5621
|
-
_this.boxPlannerGrid.addElementAsCopy(
|
|
5622
|
-
_this.constructionRulesHandler.onElementCopy(
|
|
5928
|
+
_this.boxPlannerGrid.addElementAsCopy(val.key, plannerElement, copyInfo.copyIndex);
|
|
5929
|
+
_this.constructionRulesHandler.onElementCopy(val.key, plannerElement.getElementId());
|
|
5623
5930
|
plannerElementsToLoadSVG.push(plannerElement);
|
|
5624
5931
|
if (copyInfo.copyType == 'STD') (_copyInfo$targetEleme = copyInfo.targetElements) === null || _copyInfo$targetEleme === void 0 || _copyInfo$targetEleme.push(plannerElement.getElementId());
|
|
5625
5932
|
});
|
|
@@ -5636,7 +5943,7 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
5636
5943
|
if (copyInfo.copyIndex.y == 1 && this.constructionRulesHandler.getHasMaxElemCountPerColumn()) {
|
|
5637
5944
|
//The max height of col is reached
|
|
5638
5945
|
cellPos = this.boxPlannerGrid.getCellsInGridByElementId(plannerElementsToLoadSVG[i].ElementId);
|
|
5639
|
-
if (cellPos.endRowIndex
|
|
5946
|
+
if (cellPos.endRowIndex == that.constructionRulesHandler.getMaxElemCountPerColumn()) {
|
|
5640
5947
|
allDPs = plannerElementsToLoadSVG[i].getFreeDockingPointsByType('AVO');
|
|
5641
5948
|
for (j = 0; j < allDPs.length; j++) {
|
|
5642
5949
|
allDPs[j].disableDP(true);
|
|
@@ -5750,7 +6057,7 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
5750
6057
|
}
|
|
5751
6058
|
}
|
|
5752
6059
|
//remove duplicate
|
|
5753
|
-
return
|
|
6060
|
+
return allElementsToCopy;
|
|
5754
6061
|
}
|
|
5755
6062
|
|
|
5756
6063
|
/**
|
|
@@ -5904,42 +6211,58 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
5904
6211
|
value: (function () {
|
|
5905
6212
|
var _updatePlanner = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee7(changedOPT, targetElements) {
|
|
5906
6213
|
var _this2 = this;
|
|
5907
|
-
var message, cellPos, elemToCheck, copyIndex, allElementsToCopy, _allElementsToCopy, allElementsInBackGrid, _allElementsInBackGrid, _message;
|
|
6214
|
+
var failed, message, cellPos, elemToCheck, copyIndex, allElementsToCopy, _allElementsToCopy, allElementsInBackGrid, _allElementsInBackGrid, _message;
|
|
5908
6215
|
return _regeneratorRuntime.wrap(function _callee7$(_context7) {
|
|
5909
6216
|
while (1) switch (_context7.prev = _context7.next) {
|
|
5910
6217
|
case 0:
|
|
5911
6218
|
LOG.debug('BoxPlanner - configurationHasChanged ' + changedOPT);
|
|
6219
|
+
failed = false;
|
|
5912
6220
|
targetElements === null || targetElements === void 0 || targetElements.forEach(function (e) {
|
|
5913
6221
|
var _this2$set$getArticle;
|
|
5914
|
-
|
|
6222
|
+
failed = _this2.boxPlannerGrid.updateGridElementDimensions(e, (_this2$set$getArticle = _this2.set.getArticleByElementId(e)) === null || _this2$set$getArticle === void 0 ? void 0 : _this2$set$getArticle.plannerData);
|
|
6223
|
+
if (failed) return;
|
|
6224
|
+
});
|
|
6225
|
+
if (!failed) {
|
|
6226
|
+
_context7.next = 5;
|
|
6227
|
+
break;
|
|
6228
|
+
}
|
|
6229
|
+
return _context7.abrupt("return", {
|
|
6230
|
+
doDeleteBackGrid: false,
|
|
6231
|
+
elemIdsToDelete: [],
|
|
6232
|
+
viewMessageCodex: "resizeerror",
|
|
6233
|
+
failed: true
|
|
5915
6234
|
});
|
|
6235
|
+
case 5:
|
|
6236
|
+
this.boxPlannerGrid.updateWorldPosOfElements();
|
|
5916
6237
|
if (!(changedOPT && targetElements && targetElements.length > 0 && changedOPT['OPTELEMENT'] && (changedOPT['OPTELEMENT'] == 'OPVECK_I' || changedOPT['OPTELEMENT'] == 'OPVECK_A'))) {
|
|
5917
|
-
_context7.next =
|
|
6238
|
+
_context7.next = 23;
|
|
5918
6239
|
break;
|
|
5919
6240
|
}
|
|
5920
6241
|
if (!(targetElements.length > 1)) {
|
|
5921
|
-
_context7.next =
|
|
6242
|
+
_context7.next = 14;
|
|
5922
6243
|
break;
|
|
5923
6244
|
}
|
|
5924
|
-
_context7.next =
|
|
6245
|
+
_context7.next = 10;
|
|
5925
6246
|
return this.constructionRulesHandler.updateOptionLogicBoxPlanner(this.boxPlannerGrid, changedOPT, targetElements, true);
|
|
5926
|
-
case
|
|
6247
|
+
case 10:
|
|
5927
6248
|
message = _context7.sent;
|
|
5928
6249
|
if (!message) {
|
|
5929
|
-
_context7.next =
|
|
6250
|
+
_context7.next = 13;
|
|
5930
6251
|
break;
|
|
5931
6252
|
}
|
|
5932
6253
|
return _context7.abrupt("return", {
|
|
5933
6254
|
doDeleteBackGrid: false,
|
|
5934
6255
|
elemIdsToDelete: [],
|
|
5935
|
-
viewMessageCodex: message
|
|
6256
|
+
viewMessageCodex: message,
|
|
6257
|
+
failed: false
|
|
5936
6258
|
});
|
|
5937
|
-
case
|
|
6259
|
+
case 13:
|
|
5938
6260
|
return _context7.abrupt("return", {
|
|
5939
6261
|
doDeleteBackGrid: false,
|
|
5940
|
-
elemIdsToDelete: []
|
|
6262
|
+
elemIdsToDelete: [],
|
|
6263
|
+
failed: false
|
|
5941
6264
|
});
|
|
5942
|
-
case
|
|
6265
|
+
case 14:
|
|
5943
6266
|
//If the most bottom element has no neighbor right or left - copy element
|
|
5944
6267
|
cellPos = this.boxPlannerGrid.getCellsInGridByElementId(targetElements[0]);
|
|
5945
6268
|
elemToCheck = targetElements[0];
|
|
@@ -5947,7 +6270,7 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
5947
6270
|
elemToCheck = this.boxPlannerGrid.getPlannerElementAtGridPos(cellPos.startColIndex, 0, false).getElementId();
|
|
5948
6271
|
}
|
|
5949
6272
|
if (!(!this.boxPlannerGrid.getElementHasLeftElement(elemToCheck) || !this.boxPlannerGrid.getElementHasRightElement(elemToCheck))) {
|
|
5950
|
-
_context7.next =
|
|
6273
|
+
_context7.next = 23;
|
|
5951
6274
|
break;
|
|
5952
6275
|
}
|
|
5953
6276
|
//Someone has changed Eck innen or aussen. If the current eselected Element has no neighbor left or right copy neighbor
|
|
@@ -5969,6 +6292,7 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
5969
6292
|
copyType: 'BoxPlanner_COL'
|
|
5970
6293
|
});
|
|
5971
6294
|
return _context7.abrupt("return", {
|
|
6295
|
+
failed: false,
|
|
5972
6296
|
doDeleteBackGrid: false,
|
|
5973
6297
|
elemIdsToDelete: [],
|
|
5974
6298
|
elementIdToCopy: allElementsToCopy,
|
|
@@ -5977,17 +6301,17 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
5977
6301
|
changedOPT: changedOPT,
|
|
5978
6302
|
targetElements: targetElements
|
|
5979
6303
|
});
|
|
5980
|
-
case
|
|
6304
|
+
case 23:
|
|
5981
6305
|
if (!(changedOPT && changedOPT['OPTDMOD'])) {
|
|
5982
|
-
_context7.next =
|
|
6306
|
+
_context7.next = 38;
|
|
5983
6307
|
break;
|
|
5984
6308
|
}
|
|
5985
6309
|
_context7.t0 = changedOPT['OPTDMOD'];
|
|
5986
|
-
_context7.next = _context7.t0 === 'OPVD_EIN' ?
|
|
6310
|
+
_context7.next = _context7.t0 === 'OPVD_EIN' ? 27 : _context7.t0 === 'OPVD_AUS' ? 31 : 36;
|
|
5987
6311
|
break;
|
|
5988
|
-
case
|
|
6312
|
+
case 27:
|
|
5989
6313
|
if (this.boxPlannerGrid.getPlannerHasActiveBackside()) {
|
|
5990
|
-
_context7.next =
|
|
6314
|
+
_context7.next = 30;
|
|
5991
6315
|
break;
|
|
5992
6316
|
}
|
|
5993
6317
|
_allElementsToCopy = this.getPlannerElementsInfluencedByCopy(-1, {
|
|
@@ -5999,25 +6323,27 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
5999
6323
|
copyType: 'BoxPlanner_backside'
|
|
6000
6324
|
});
|
|
6001
6325
|
return _context7.abrupt("return", {
|
|
6326
|
+
failed: false,
|
|
6002
6327
|
doDeleteBackGrid: false,
|
|
6003
6328
|
elemIdsToDelete: [],
|
|
6004
6329
|
elementIdToCopy: _allElementsToCopy,
|
|
6005
6330
|
copyType: 'BoxPlanner_backside',
|
|
6006
6331
|
changedOPT: changedOPT
|
|
6007
6332
|
});
|
|
6008
|
-
case
|
|
6009
|
-
return _context7.abrupt("break",
|
|
6010
|
-
case
|
|
6333
|
+
case 30:
|
|
6334
|
+
return _context7.abrupt("break", 36);
|
|
6335
|
+
case 31:
|
|
6011
6336
|
if (!this.boxPlannerGrid.getPlannerHasActiveBackside()) {
|
|
6012
|
-
_context7.next =
|
|
6337
|
+
_context7.next = 35;
|
|
6013
6338
|
break;
|
|
6014
6339
|
}
|
|
6015
6340
|
allElementsInBackGrid = this.boxPlannerGrid.getAllElementsInBackGrid();
|
|
6016
6341
|
if (!(allElementsInBackGrid.length > 0)) {
|
|
6017
|
-
_context7.next =
|
|
6342
|
+
_context7.next = 35;
|
|
6018
6343
|
break;
|
|
6019
6344
|
}
|
|
6020
6345
|
return _context7.abrupt("return", {
|
|
6346
|
+
failed: false,
|
|
6021
6347
|
doDeleteBackGrid: true,
|
|
6022
6348
|
elemIdsToDelete: allElementsInBackGrid.map(function (element) {
|
|
6023
6349
|
return element.ElementId;
|
|
@@ -6025,23 +6351,24 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
6025
6351
|
deletionType: 'BoxPlanner_backside',
|
|
6026
6352
|
changedOPT: changedOPT
|
|
6027
6353
|
});
|
|
6028
|
-
case
|
|
6029
|
-
return _context7.abrupt("break",
|
|
6030
|
-
case
|
|
6031
|
-
_context7.next =
|
|
6354
|
+
case 35:
|
|
6355
|
+
return _context7.abrupt("break", 36);
|
|
6356
|
+
case 36:
|
|
6357
|
+
_context7.next = 52;
|
|
6032
6358
|
break;
|
|
6033
|
-
case
|
|
6359
|
+
case 38:
|
|
6034
6360
|
if (!(changedOPT && changedOPT['OPTFARBE_RAHMEN'] && changedOPT['OPTFARBE_RAHMEN'] == 'OPVSCHWARZ_MATT' && this.boxPlannerGrid.getPlannerHasActiveBackside())) {
|
|
6035
|
-
_context7.next =
|
|
6361
|
+
_context7.next = 44;
|
|
6036
6362
|
break;
|
|
6037
6363
|
}
|
|
6038
6364
|
//If the double modul is active but the color is changed to black - disable double modul
|
|
6039
6365
|
_allElementsInBackGrid = this.boxPlannerGrid.getAllElementsInBackGrid();
|
|
6040
6366
|
if (!(_allElementsInBackGrid.length > 0)) {
|
|
6041
|
-
_context7.next =
|
|
6367
|
+
_context7.next = 42;
|
|
6042
6368
|
break;
|
|
6043
6369
|
}
|
|
6044
6370
|
return _context7.abrupt("return", {
|
|
6371
|
+
failed: false,
|
|
6045
6372
|
doDeleteBackGrid: true,
|
|
6046
6373
|
elemIdsToDelete: _allElementsInBackGrid.map(function (element) {
|
|
6047
6374
|
return element.ElementId;
|
|
@@ -6051,34 +6378,37 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
|
|
|
6051
6378
|
targetElements: targetElements,
|
|
6052
6379
|
viewMessageCodex: 'BOXPLAN_BLACKFRAME_INCOMPATIBLE_ELEMENT_WARNING'
|
|
6053
6380
|
});
|
|
6054
|
-
case
|
|
6055
|
-
_context7.next =
|
|
6381
|
+
case 42:
|
|
6382
|
+
_context7.next = 52;
|
|
6056
6383
|
break;
|
|
6057
|
-
case
|
|
6058
|
-
_context7.next =
|
|
6384
|
+
case 44:
|
|
6385
|
+
_context7.next = 46;
|
|
6059
6386
|
return this.constructionRulesHandler.updateOptionLogicBoxPlanner(this.boxPlannerGrid, changedOPT, targetElements);
|
|
6060
|
-
case
|
|
6387
|
+
case 46:
|
|
6061
6388
|
_message = _context7.sent;
|
|
6062
6389
|
if (!_message) {
|
|
6063
|
-
_context7.next =
|
|
6390
|
+
_context7.next = 51;
|
|
6064
6391
|
break;
|
|
6065
6392
|
}
|
|
6066
6393
|
return _context7.abrupt("return", {
|
|
6067
6394
|
doDeleteBackGrid: false,
|
|
6068
6395
|
elemIdsToDelete: [],
|
|
6069
|
-
viewMessageCodex: _message
|
|
6396
|
+
viewMessageCodex: _message,
|
|
6397
|
+
failed: false
|
|
6070
6398
|
});
|
|
6071
|
-
case
|
|
6399
|
+
case 51:
|
|
6072
6400
|
return _context7.abrupt("return", {
|
|
6073
6401
|
doDeleteBackGrid: false,
|
|
6074
|
-
elemIdsToDelete: []
|
|
6402
|
+
elemIdsToDelete: [],
|
|
6403
|
+
failed: false
|
|
6075
6404
|
});
|
|
6076
|
-
case
|
|
6405
|
+
case 52:
|
|
6077
6406
|
return _context7.abrupt("return", {
|
|
6078
6407
|
doDeleteBackGrid: false,
|
|
6079
|
-
elemIdsToDelete: []
|
|
6408
|
+
elemIdsToDelete: [],
|
|
6409
|
+
failed: false
|
|
6080
6410
|
});
|
|
6081
|
-
case
|
|
6411
|
+
case 53:
|
|
6082
6412
|
case "end":
|
|
6083
6413
|
return _context7.stop();
|
|
6084
6414
|
}
|