@crystaldesign/web-planner-logic 25.1.0-beta.45 → 25.1.0-beta.46

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.
Files changed (31) hide show
  1. package/build/cjs/{DivaBoxPlanner-4ec80868.js → DivaBoxPlanner-af1807d8.js} +2 -2
  2. package/build/cjs/{DivaStandardPlanner-50764892.js → DivaStandardPlanner-9ee8bca6.js} +2 -2
  3. package/build/cjs/{DoorPlanner-cd30fe6d.js → DoorPlanner-dbd6bc6c.js} +1 -1
  4. package/build/cjs/{Host3DSignalR-3c0886e4.js → Host3DSignalR-4a3e70ed.js} +1 -1
  5. package/build/cjs/{LiviqueWWSHandler-f0f1c990.js → LiviqueWWSHandler-aa95d52a.js} +1 -1
  6. package/build/cjs/{PfisterWWSHandler-d9bd87c4.js → PfisterWWSHandler-a94d4013.js} +1 -1
  7. package/build/cjs/{PlannerHandler2D-93a5534b.js → PlannerHandler2D-ddb09d94.js} +1 -1
  8. package/build/cjs/{SeriousBasketHandler-31d0db9d.js → SeriousBasketHandler-2bc074bf.js} +8 -4
  9. package/build/cjs/{ShelfPlanner-ec8a306b.js → ShelfPlanner-3f113cf2.js} +1 -1
  10. package/build/cjs/{StandardWWSHandler-69e5b463.js → StandardWWSHandler-4f2cdbee.js} +1 -1
  11. package/build/cjs/{index-e69e165a.js → index-89f4528c.js} +96 -46
  12. package/build/cjs/index.js +1 -1
  13. package/build/esm/{DivaBoxPlanner-e75cbebd.js → DivaBoxPlanner-92b98d12.js} +2 -2
  14. package/build/esm/{DivaStandardPlanner-47585e2f.js → DivaStandardPlanner-48846cb5.js} +2 -2
  15. package/build/esm/{DoorPlanner-076fdc95.js → DoorPlanner-dd5895c0.js} +1 -1
  16. package/build/esm/{Host3DSignalR-b60bf8db.js → Host3DSignalR-d0af0f1f.js} +1 -1
  17. package/build/esm/{LiviqueWWSHandler-a107be68.js → LiviqueWWSHandler-38e9535f.js} +1 -1
  18. package/build/esm/{PfisterWWSHandler-d839bfdc.js → PfisterWWSHandler-aeca0426.js} +1 -1
  19. package/build/esm/{PlannerHandler2D-24bcbad9.js → PlannerHandler2D-c9096881.js} +1 -1
  20. package/build/esm/{SeriousBasketHandler-a7960831.js → SeriousBasketHandler-3ba6d570.js} +8 -4
  21. package/build/esm/{ShelfPlanner-4e293168.js → ShelfPlanner-1cccc3a5.js} +1 -1
  22. package/build/esm/{StandardWWSHandler-6e2d3bfe.js → StandardWWSHandler-0975c1eb.js} +1 -1
  23. package/build/esm/{index-ee8cbb0a.js → index-32e677d7.js} +96 -46
  24. package/build/esm/index.js +1 -1
  25. package/build/types/web-planner-logic/src/interface/OptionTypes/DecisionType.d.ts +2 -0
  26. package/build/types/web-planner-logic/src/interface/OptionTypes/DecisionType.d.ts.map +1 -1
  27. package/build/types/web-planner-logic/src/logic/Article/DivaArticle.d.ts +10 -0
  28. package/build/types/web-planner-logic/src/logic/Article/DivaArticle.d.ts.map +1 -1
  29. package/build/types/web-planner-logic/src/logic/Basket/SeriousBasketHandler.d.ts.map +1 -1
  30. package/build/types/web-planner-logic/src/test/datas/idm_text_routine.d.ts.map +1 -1
  31. package/package.json +2 -2
@@ -5,10 +5,10 @@ var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
5
5
  var _createClass = require('@babel/runtime/helpers/createClass');
6
6
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
7
7
  var _regeneratorRuntime = require('@babel/runtime/regenerator');
8
- var index = require('./index-e69e165a.js');
8
+ var index = require('./index-89f4528c.js');
9
9
  var DivaUtils = require('@crystaldesign/diva-utils');
10
10
  var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
11
- var PlannerHandler2D = require('./PlannerHandler2D-93a5534b.js');
11
+ var PlannerHandler2D = require('./PlannerHandler2D-ddb09d94.js');
12
12
  require('@babel/runtime/helpers/slicedToArray');
13
13
  require('@babel/runtime/helpers/objectWithoutProperties');
14
14
  require('axios');
@@ -5,8 +5,8 @@ var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
5
5
  var _createClass = require('@babel/runtime/helpers/createClass');
6
6
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
7
7
  var _regeneratorRuntime = require('@babel/runtime/regenerator');
8
- var index = require('./index-e69e165a.js');
9
- var PlannerHandler2D = require('./PlannerHandler2D-93a5534b.js');
8
+ var index = require('./index-89f4528c.js');
9
+ var PlannerHandler2D = require('./PlannerHandler2D-ddb09d94.js');
10
10
  var DivaUtils = require('@crystaldesign/diva-utils');
11
11
  require('@babel/runtime/helpers/slicedToArray');
12
12
  require('@babel/runtime/helpers/objectWithoutProperties');
@@ -3,7 +3,7 @@
3
3
  var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
4
4
  var _createClass = require('@babel/runtime/helpers/createClass');
5
5
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
- require('./index-e69e165a.js');
6
+ require('./index-89f4528c.js');
7
7
  var DivaUtils = require('@crystaldesign/diva-utils');
8
8
  require('@babel/runtime/helpers/slicedToArray');
9
9
  require('@babel/runtime/helpers/asyncToGenerator');
@@ -5,7 +5,7 @@ var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
5
5
  var _createClass = require('@babel/runtime/helpers/createClass');
6
6
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
7
7
  var _regeneratorRuntime = require('@babel/runtime/regenerator');
8
- var index = require('./index-e69e165a.js');
8
+ var index = require('./index-89f4528c.js');
9
9
  var DivaUtils = require('@crystaldesign/diva-utils');
10
10
  var signalr = require('@microsoft/signalr');
11
11
  var io = require('socket.io-client');
@@ -2,7 +2,7 @@
2
2
 
3
3
  var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
4
4
  var _createClass = require('@babel/runtime/helpers/createClass');
5
- require('./index-e69e165a.js');
5
+ require('./index-89f4528c.js');
6
6
  require('@babel/runtime/helpers/slicedToArray');
7
7
  require('@babel/runtime/helpers/asyncToGenerator');
8
8
  require('@babel/runtime/helpers/defineProperty');
@@ -2,7 +2,7 @@
2
2
 
3
3
  var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
4
4
  var _createClass = require('@babel/runtime/helpers/createClass');
5
- var index = require('./index-e69e165a.js');
5
+ var index = require('./index-89f4528c.js');
6
6
  var basketModel = require('@crystaldesign/basket-model');
7
7
  var DivaUtils = require('@crystaldesign/diva-utils');
8
8
  require('@babel/runtime/helpers/slicedToArray');
@@ -3,7 +3,7 @@
3
3
  var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
4
4
  var _createClass = require('@babel/runtime/helpers/createClass');
5
5
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
- var index = require('./index-e69e165a.js');
6
+ var index = require('./index-89f4528c.js');
7
7
  var DivaUtils = require('@crystaldesign/diva-utils');
8
8
  var _asyncToGenerator = require('@babel/runtime/helpers/asyncToGenerator');
9
9
  var _regeneratorRuntime = require('@babel/runtime/regenerator');
@@ -3,7 +3,7 @@
3
3
  var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
4
4
  var _createClass = require('@babel/runtime/helpers/createClass');
5
5
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
- var index = require('./index-e69e165a.js');
6
+ var index = require('./index-89f4528c.js');
7
7
  var DivaUtils = require('@crystaldesign/diva-utils');
8
8
  require('@babel/runtime/helpers/slicedToArray');
9
9
  require('@babel/runtime/helpers/asyncToGenerator');
@@ -63,7 +63,8 @@ var StandardWWSHandler = /*#__PURE__*/function () {
63
63
  groupedPartlistArticles.push({
64
64
  article: article,
65
65
  posNr: posNr,
66
- partlistArticles: []
66
+ partlistArticles: [],
67
+ letOthesMatch: true
67
68
  });
68
69
  var _loop = function _loop() {
69
70
  var _partlistArticle$cata, _article$getArticleOp, _article$getArticleOp2;
@@ -71,8 +72,8 @@ var StandardWWSHandler = /*#__PURE__*/function () {
71
72
  var preDefinedPosNr = (_partlistArticle$cata = partlistArticle.catalogArticle.orderPosNr) !== null && _partlistArticle$cata !== void 0 ? _partlistArticle$cata : null;
72
73
  var tabGroup = (_article$getArticleOp = (_article$getArticleOp2 = article.getArticleOptionState('OPT' + partlistArticle.tabGroup)) === null || _article$getArticleOp2 === void 0 ? void 0 : _article$getArticleOp2.optionTabGroup) !== null && _article$getArticleOp !== void 0 ? _article$getArticleOp : partlistArticle.tabGroup;
73
74
  if (preDefinedPosNr !== null) {
74
- var existingentry = groupedPartlistArticles.find(function (group) {
75
- return group.posNr == Number(preDefinedPosNr) || group.groupKey == preDefinedPosNr;
75
+ var existingentry = !preDefinedPosNr.endsWith(';') && groupedPartlistArticles.find(function (group) {
76
+ return (group.posNr == Number(preDefinedPosNr) || group.groupKey == preDefinedPosNr) && group.letOthesMatch;
76
77
  });
77
78
  if (existingentry) {
78
79
  existingentry.partlistArticles.push({
@@ -80,9 +81,11 @@ var StandardWWSHandler = /*#__PURE__*/function () {
80
81
  tabGroup: tabGroup
81
82
  });
82
83
  } else {
84
+ var letOthesMatch = true;
83
85
  var newPosNr = Number(preDefinedPosNr);
84
86
  if (isNaN(newPosNr)) {
85
87
  newPosNr = posNr;
88
+ letOthesMatch = false;
86
89
  do {
87
90
  newPosNr++;
88
91
  } while (groupedPartlistArticles.find(function (group) {
@@ -92,6 +95,7 @@ var StandardWWSHandler = /*#__PURE__*/function () {
92
95
  groupedPartlistArticles.push({
93
96
  article: article,
94
97
  posNr: newPosNr,
98
+ letOthesMatch: letOthesMatch,
95
99
  partlistArticles: [{
96
100
  article: partlistArticle,
97
101
  tabGroup: tabGroup
@@ -6,7 +6,7 @@ var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
6
6
  var _createClass = require('@babel/runtime/helpers/createClass');
7
7
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
8
8
  var _regeneratorRuntime = require('@babel/runtime/regenerator');
9
- var index = require('./index-e69e165a.js');
9
+ var index = require('./index-89f4528c.js');
10
10
  var DivaUtils = require('@crystaldesign/diva-utils');
11
11
  require('@babel/runtime/helpers/slicedToArray');
12
12
  require('@babel/runtime/helpers/objectWithoutProperties');
@@ -2,7 +2,7 @@
2
2
 
3
3
  var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
4
4
  var _createClass = require('@babel/runtime/helpers/createClass');
5
- require('./index-e69e165a.js');
5
+ require('./index-89f4528c.js');
6
6
  require('@babel/runtime/helpers/slicedToArray');
7
7
  require('@babel/runtime/helpers/asyncToGenerator');
8
8
  require('@babel/runtime/helpers/defineProperty');
@@ -20669,8 +20669,6 @@ function ownKeys$e(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymb
20669
20669
  function _objectSpread$e(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$e(Object(t), !0).forEach(function (r) { _defineProperty__default["default"](e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$e(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
20670
20670
  var LOG$d = DivaUtils__default["default"].initLog('Planner', 'WEB-PLANNER-LOGIC');
20671
20671
  var DivaArticle = /*#__PURE__*/function () {
20672
- //Hier steht die aktuelle Konfiguration
20673
-
20674
20672
  function DivaArticle(set, _basketId, initParams, articleData, catalogData) {
20675
20673
  var _this = this,
20676
20674
  _initParams$noPrice,
@@ -20681,6 +20679,8 @@ var DivaArticle = /*#__PURE__*/function () {
20681
20679
  _defineProperty__default["default"](this, "articleOptionStatesData", void 0);
20682
20680
  //Dieses Objekt speichert den aktuellen Werte, Zustand eines Optionsbaumes und Preise
20683
20681
  _defineProperty__default["default"](this, "actPlannerData", void 0);
20682
+ //Hier steht die aktuelle Konfiguration
20683
+ _defineProperty__default["default"](this, "decisionDebugStacks", []);
20684
20684
  _defineProperty__default["default"](this, "getPreviousPartlistArticle", function (articleCodex) {
20685
20685
  var _this$article$previou;
20686
20686
  var prevPartlistArticles = (_this$article$previou = _this.article.previousPartlistArticles) !== null && _this$article$previou !== void 0 ? _this$article$previou : {};
@@ -22993,8 +22993,7 @@ var DivaArticle = /*#__PURE__*/function () {
22993
22993
  }, {
22994
22994
  key: "setOP",
22995
22995
  value: function setOP(OptionCodex, myOPVItem, freeText, doDefine) {
22996
- var myOptionStates = this.articleOptionStates;
22997
- var myArtOPS = myOptionStates[OptionCodex];
22996
+ var myArtOPS = this.getArticleOptionState(OptionCodex);
22998
22997
  if (!myArtOPS) {
22999
22998
  LOG$d.error(new DivaUtils.DivaError('OptionCodex: ' + OptionCodex + ' in articleCodex: ' + this.articleCodex + ' not found!'));
23000
22999
  return;
@@ -23102,13 +23101,13 @@ var DivaArticle = /*#__PURE__*/function () {
23102
23101
  if (myPartListPos.ItemRefArticles) {
23103
23102
  var decisions = myPartListPos.PartListPosDecisionsAndPosCounts;
23104
23103
  if (decisions) {
23105
- var _decisions$;
23106
- var relationTypeNone = ((_decisions$ = decisions[0]) === null || _decisions$ === void 0 ? void 0 : _decisions$.RelationType) !== 'PosCount';
23107
23104
  var partlistAdded = false;
23108
23105
  for (var c = 0; c < decisions.length; c++) {
23106
+ var _decisions$c, _myDecisionVal;
23107
+ var relationTypeNone = ((_decisions$c = decisions[c]) === null || _decisions$c === void 0 ? void 0 : _decisions$c.RelationType) !== 'PosCount';
23109
23108
  var myDecisionNumber = decisions[c].DecisionNumber;
23110
- var myDecisionVal = this.checkDecisionNumber(myDecisionNumber);
23111
- if (myDecisionVal.isValidDOC || relationTypeNone) {
23109
+ var myDecisionVal = relationTypeNone ? undefined : this.checkDecisionNumber(myDecisionNumber);
23110
+ if ((_myDecisionVal = myDecisionVal) !== null && _myDecisionVal !== void 0 && _myDecisionVal.isValidDOC || relationTypeNone) {
23112
23111
  // wenn die Decision gültig, gelten die ItemRefArticles
23113
23112
  partlistAdded = true;
23114
23113
  partlistArticlesToLoad = this.addPartilstToPartlistArticlesToLoad(myPartListPos, partlistArticlesToLoad, newConfigValues, myDecisionVal, groupDecisionVal, myDecisionNumber);
@@ -23132,22 +23131,23 @@ var DivaArticle = /*#__PURE__*/function () {
23132
23131
  }, {
23133
23132
  key: "addPartilstToPartlistArticlesToLoad",
23134
23133
  value: function addPartilstToPartlistArticlesToLoad(myPartListPos, partlistArticlesToLoad, newConfigValues, myDecisionVal, groupDecisionVal, decisionNumber) {
23135
- var _myPartListPos$Option;
23134
+ var _myPartListPos$Option,
23135
+ _this3 = this;
23136
23136
  var allDecisions = this.article.catalogArticle.articleDecisions;
23137
23137
  var decisions = myPartListPos.PartListPosDecisionsAndPosCounts;
23138
23138
  var optionsForPrint = (_myPartListPos$Option = myPartListPos.OptionsForPrint) === null || _myPartListPos$Option === void 0 ? void 0 : _myPartListPos$Option.split(';').map(function (o) {
23139
23139
  return 'OPT' + o;
23140
23140
  });
23141
23141
  var optionImgForPrint = myPartListPos.OptionImgForPrint ? 'OPT' + myPartListPos.OptionImgForPrint : undefined;
23142
- for (var d = 0; d < myPartListPos.ItemRefArticles.length; d++) {
23142
+ var _loop = function _loop() {
23143
23143
  var myRuleDesc = '';
23144
23144
  var myRuleDesc_locales = undefined;
23145
23145
  var articleCodex = myPartListPos.ItemRefArticles[d].ArticleCodex;
23146
23146
  var catalogCodex = myPartListPos.ItemRefArticles[d].CatalogCodex;
23147
23147
  var retailArticleNr = myPartListPos.RetailArticleNr && myPartListPos.RetailArticleNr != '' ? myPartListPos.RetailArticleNr : undefined;
23148
- if (myDecisionVal && (myDecisionVal.Rule && myDecisionVal.Rule != '' && this.CatalogData.doUseRuleDescForPartListArticles() || myPartListPos.RetailArticleNr == 'CUST')) {
23149
- myRuleDesc = DivaUtils__default["default"].getRuleDescription(myDecisionVal.Rule, this.articleOptionStates, this.set.api.ruleDescSeperator());
23150
- myRuleDesc_locales = DivaUtils__default["default"].getRuleDescription_locales(myDecisionVal.Rule, this.articleOptionStates, this.set.api.ruleDescSeperator());
23148
+ if (myDecisionVal && (myDecisionVal.Rule && myDecisionVal.Rule != '' && _this3.CatalogData.doUseRuleDescForPartListArticles() || myPartListPos.RetailArticleNr == 'CUST')) {
23149
+ myRuleDesc = DivaUtils__default["default"].getRuleDescription(myDecisionVal.Rule, _this3.articleOptionStates, _this3.set.api.ruleDescSeperator());
23150
+ myRuleDesc_locales = DivaUtils__default["default"].getRuleDescription_locales(myDecisionVal.Rule, _this3.articleOptionStates, _this3.set.api.ruleDescSeperator());
23151
23151
  }
23152
23152
  var initDecisions = decisions.filter(function (decision) {
23153
23153
  return decision.RelationType !== 'PosCount';
@@ -23156,8 +23156,19 @@ var DivaArticle = /*#__PURE__*/function () {
23156
23156
  return dec.Number == decision.DecisionNumber.toString();
23157
23157
  });
23158
23158
  });
23159
+ var initDecisionsFiltered = [];
23160
+ var _loop2 = function _loop2(i) {
23161
+ if (initDecisions[i] && !initDecisionsFiltered.find(function (d) {
23162
+ return d.Number == initDecisions[i].Number;
23163
+ })) {
23164
+ initDecisionsFiltered.push(initDecisions[i]);
23165
+ }
23166
+ };
23167
+ for (var i = 0; i < initDecisions.length; i++) {
23168
+ _loop2(i);
23169
+ }
23159
23170
  var quanitity = 1;
23160
- if (this.CatalogData.useDecisionPosCountValue) {
23171
+ if (_this3.CatalogData.useDecisionPosCountValue) {
23161
23172
  var _decision$DOC;
23162
23173
  // get SetPosCountValue from decsion action if defined and else use myPartListPos.PosCountValue;
23163
23174
  var decision = decisionNumber ? allDecisions.find(function (d) {
@@ -23172,24 +23183,24 @@ var DivaArticle = /*#__PURE__*/function () {
23172
23183
  return a.SetPosCountValue !== undefined;
23173
23184
  })) === null || _decision$DOC === void 0 ? void 0 : _decision$DOC.SetPosCountValue;
23174
23185
  quanitity = setPosCountValue !== undefined ? setPosCountValue : myPartListPos.PosCountValue;
23175
- } else if (this.CatalogData.usePosCountValue) {
23186
+ } else if (_this3.CatalogData.usePosCountValue) {
23176
23187
  quanitity = myPartListPos.PosCountValue;
23177
23188
  }
23178
- quanitity = quanitity * this.quantity;
23179
- var previousPartlistArticle = this.getPreviousPartlistArticle(articleCodex);
23189
+ quanitity = quanitity * _this3.quantity;
23190
+ var previousPartlistArticle = _this3.getPreviousPartlistArticle(articleCodex);
23180
23191
  if (quanitity >= 1) {
23181
23192
  var _myDecisionVal$Rule, _previousPartlistArti;
23182
23193
  partlistArticlesToLoad.push({
23183
- CatalogCodex: catalogCodex !== null && catalogCodex !== void 0 ? catalogCodex : this.catalogCodex,
23194
+ CatalogCodex: catalogCodex !== null && catalogCodex !== void 0 ? catalogCodex : _this3.catalogCodex,
23184
23195
  BasketID: previousPartlistArticle === null || previousPartlistArticle === void 0 ? void 0 : previousPartlistArticle.basketId,
23185
23196
  ArticleCodex: articleCodex,
23186
23197
  RefLevel: myDecisionVal === null || myDecisionVal === void 0 ? void 0 : myDecisionVal.RefLevel,
23187
23198
  RetailArticleNr: retailArticleNr,
23188
23199
  RetailPrefix: myPartListPos.RetailPrefix,
23189
23200
  Quantity: quanitity,
23190
- PartlistRule: (groupDecisionVal ? groupDecisionVal.Rule + ' && ' : '') + myDecisionVal ? DivaUtils__default["default"].getOptionValuePairsByRule((_myDecisionVal$Rule = myDecisionVal === null || myDecisionVal === void 0 ? void 0 : myDecisionVal.Rule) !== null && _myDecisionVal$Rule !== void 0 ? _myDecisionVal$Rule : '', this.VariantValues) : undefined,
23201
+ PartlistRule: (groupDecisionVal ? groupDecisionVal.Rule + ' && ' : '') + myDecisionVal ? DivaUtils__default["default"].getOptionValuePairsByRule((_myDecisionVal$Rule = myDecisionVal === null || myDecisionVal === void 0 ? void 0 : myDecisionVal.Rule) !== null && _myDecisionVal$Rule !== void 0 ? _myDecisionVal$Rule : '', _this3.VariantValues) : undefined,
23191
23202
  SupplierOrderCodex: myPartListPos.SupplierOrderCodex,
23192
- initDecisions: initDecisions,
23203
+ initDecisions: initDecisionsFiltered,
23193
23204
  RuleDesc: myRuleDesc,
23194
23205
  RuleDesc_locales: myRuleDesc_locales,
23195
23206
  PosInvisibility: myPartListPos.PosInvisibility,
@@ -23201,6 +23212,9 @@ var DivaArticle = /*#__PURE__*/function () {
23201
23212
  } else {
23202
23213
  LOG$d.debug('not loading partlistarticle: ' + articleCodex + ' cause quantity is zero');
23203
23214
  }
23215
+ };
23216
+ for (var d = 0; d < myPartListPos.ItemRefArticles.length; d++) {
23217
+ _loop();
23204
23218
  }
23205
23219
  return partlistArticlesToLoad;
23206
23220
  }
@@ -23261,11 +23275,15 @@ var DivaArticle = /*#__PURE__*/function () {
23261
23275
  }, {
23262
23276
  key: "evalAllDecisions",
23263
23277
  value: function evalAllDecisions() {
23278
+ var _myDecision$DisableHi, _myDecision$DisableHi2, _myDecision$DisableHi3;
23264
23279
  var myDecisions = this.article.catalogArticle.articleDecisions;
23280
+
23265
23281
  //add the partlist spesific decisions to the normal decisions
23266
23282
  if (this.article.initDecisions) myDecisions = myDecisions.concat(this.article.initDecisions);
23267
23283
  for (var i = 0; i < myDecisions.length; i++) {
23268
- myDecisions[i]['Enabled'] = true;
23284
+ myDecisions[i].Enabled = true;
23285
+ myDecisions[i].DisableHistory = [];
23286
+ myDecisions[i].ActiveCombination = undefined;
23269
23287
  }
23270
23288
  for (var key in this.articleOptionStates) {
23271
23289
  var myOPS = this.articleOptionStates[key];
@@ -23273,6 +23291,7 @@ var DivaArticle = /*#__PURE__*/function () {
23273
23291
  myOPS.visibleCount = Object.keys(myOPS.option.articleOptionValues).length;
23274
23292
  myOPS.definedBySetFeatureFixed = false;
23275
23293
  }
23294
+ var decisionDebugStack = [];
23276
23295
  for (var m = 0; m < myDecisions.length; m++) {
23277
23296
  //Alle Optionen Mit DOC Type 1 ermitten - diese zunächst alle ausblenden, werden dann später über Formeln wieder eingeschaltet
23278
23297
  var myDecision = myDecisions[m];
@@ -23281,16 +23300,43 @@ var DivaArticle = /*#__PURE__*/function () {
23281
23300
  case '2':
23282
23301
  //Aktionsregel. Wenn das erste JsRule erfüllt ist muss man die restlichen DecisionOptionCombinations nicht mehr kontrollieren.
23283
23302
  this.evalType2Decision(myDecision, myDecisions);
23303
+ decisionDebugStack.push({
23304
+ text: myDecision.Number + ' type: 2 ' + ((_myDecision$DisableHi = myDecision.DisableHistory) === null || _myDecision$DisableHi === void 0 ? void 0 : _myDecision$DisableHi.join(',')),
23305
+ nr: myDecision.Number,
23306
+ decision: JSON.parse(JSON.stringify(myDecision))
23307
+ });
23284
23308
  break;
23285
23309
  case '1':
23286
23310
  this.evalType1Decision(myDecision);
23311
+ decisionDebugStack.push({
23312
+ text: myDecision.Number + ' type: 1 ' + ((_myDecision$DisableHi2 = myDecision.DisableHistory) === null || _myDecision$DisableHi2 === void 0 ? void 0 : _myDecision$DisableHi2.join(',')),
23313
+ nr: myDecision.Number,
23314
+ decision: JSON.parse(JSON.stringify(myDecision))
23315
+ });
23287
23316
  break;
23288
23317
  case '0':
23289
23318
  this.evalType0Decision(myDecision);
23319
+ decisionDebugStack.push({
23320
+ text: myDecision.Number + ' type: 0 ' + ((_myDecision$DisableHi3 = myDecision.DisableHistory) === null || _myDecision$DisableHi3 === void 0 ? void 0 : _myDecision$DisableHi3.join(',')),
23321
+ nr: myDecision.Number,
23322
+ decision: JSON.parse(JSON.stringify(myDecision))
23323
+ });
23290
23324
  break;
23291
23325
  }
23326
+ } else {
23327
+ var _myDecision$DisableHi4;
23328
+ decisionDebugStack.push({
23329
+ text: myDecision.Number + ' ' + ((_myDecision$DisableHi4 = myDecision.DisableHistory) === null || _myDecision$DisableHi4 === void 0 ? void 0 : _myDecision$DisableHi4.join(',')),
23330
+ nr: myDecision.Number,
23331
+ decision: JSON.parse(JSON.stringify(myDecision))
23332
+ });
23292
23333
  }
23293
23334
  }
23335
+ if (this.decisionDebugStacks.length > 6) this.decisionDebugStacks.shift();
23336
+ this.decisionDebugStacks.push({
23337
+ stack: decisionDebugStack,
23338
+ variantValues: this.VariantValues
23339
+ });
23294
23340
  this.evalShowOnlyWhenHasPrice();
23295
23341
  this.updateIDMSpecificFeatures();
23296
23342
  }
@@ -23334,6 +23380,9 @@ var DivaArticle = /*#__PURE__*/function () {
23334
23380
  for (var i = 0; i < myDoc.DA.length; i++) {
23335
23381
  var myDA = myDoc.DA[i];
23336
23382
  var myOptionCodex = myDA.OptionCodex ? 'OPT' + myDA.OptionCodex : '';
23383
+ if (!myDoc.JsFormula || myDoc.JsFormula == '' || this.evalRule(myDoc.JsFormula)) {
23384
+ myDecision.ActiveCombination = j;
23385
+ }
23337
23386
  if (this.getArticleOptionState(myOptionCodex) || myOptionCodex == '') {
23338
23387
  switch (myDA.Type) {
23339
23388
  case '0':
@@ -23388,7 +23437,9 @@ var DivaArticle = /*#__PURE__*/function () {
23388
23437
  }
23389
23438
  for (var _m = 0; _m < myDecisions.length; _m++) {
23390
23439
  if (SearchDecNumber.includes(Number(myDecisions[_m].Number))) {
23440
+ var _myDecisions$_m$Disab;
23391
23441
  myDecisions[_m].Enabled = false;
23442
+ (_myDecisions$_m$Disab = myDecisions[_m].DisableHistory) === null || _myDecisions$_m$Disab === void 0 || _myDecisions$_m$Disab.push('disabled By ' + myDecision.Number);
23392
23443
  }
23393
23444
  }
23394
23445
  }
@@ -23406,7 +23457,9 @@ var DivaArticle = /*#__PURE__*/function () {
23406
23457
  }
23407
23458
  for (var _m3 = 0; _m3 < myDecisions.length; _m3++) {
23408
23459
  if (_SearchDecNumber.includes(Number(myDecisions[_m3].Number))) {
23460
+ var _myDecisions$_m3$Disa;
23409
23461
  myDecisions[_m3].Enabled = true;
23462
+ (_myDecisions$_m3$Disa = myDecisions[_m3].DisableHistory) === null || _myDecisions$_m3$Disa === void 0 || _myDecisions$_m3$Disa.push('enabled By ' + myDecision.Number);
23410
23463
  }
23411
23464
  }
23412
23465
  }
@@ -23475,6 +23528,7 @@ var DivaArticle = /*#__PURE__*/function () {
23475
23528
  }
23476
23529
  if (doUseDoc) {
23477
23530
  var _myDoc$Row2;
23531
+ myDecision.ActiveCombination = j;
23478
23532
  if ((_myDoc$Row2 = myDoc.Row) !== null && _myDoc$Row2 !== void 0 && _myDoc$Row2[OPT]) {
23479
23533
  var ruleWasValidOnce = false;
23480
23534
  for (var m = 0; m < myDoc.Row[OPT].length; m++) {
@@ -23570,6 +23624,7 @@ var DivaArticle = /*#__PURE__*/function () {
23570
23624
  }
23571
23625
  }
23572
23626
  if (doUseDoc && myDoc.Row) {
23627
+ myDecision.ActiveCombination = j;
23573
23628
  if (myDoc.Row[OPT]) {
23574
23629
  for (var m = 0; m < myDoc.Row[OPT].length; m++) {
23575
23630
  var opvCodex = myDoc.Row[OPT][m];
@@ -23896,7 +23951,7 @@ var DivaArticle = /*#__PURE__*/function () {
23896
23951
  break;
23897
23952
  }
23898
23953
  _context.next = 4;
23899
- return Promise.resolve().then(function () { return require('./ShelfPlanner-ec8a306b.js'); });
23954
+ return Promise.resolve().then(function () { return require('./ShelfPlanner-3f113cf2.js'); });
23900
23955
  case 4:
23901
23956
  _yield$import = _context.sent;
23902
23957
  ShelfPlanner = _yield$import["default"];
@@ -23948,7 +24003,7 @@ var DivaArticle = /*#__PURE__*/function () {
23948
24003
  }, {
23949
24004
  key: "calcConfigPrice",
23950
24005
  value: function calcConfigPrice(maxPriceOfGroupCodex, digits) {
23951
- var _this3 = this,
24006
+ var _this4 = this,
23952
24007
  _this$catalogArticle$;
23953
24008
  //Wenn im Planer für dieses Shape mehere Rules gibt, müssen wir diese jetzt prüfen, ob jetzt ein anderes shape gültig ist.
23954
24009
  //wenn ja, hier neues shape übergeben
@@ -24064,9 +24119,9 @@ var DivaArticle = /*#__PURE__*/function () {
24064
24119
  var _myArtOPS = myArtOPSs[_iKey3];
24065
24120
  var targetPPGPrefixes = _myArtOPS.targetPPGPrefixes;
24066
24121
  if (!targetPPGPrefixes) continue;
24067
- var _loop = function _loop() {
24122
+ var _loop3 = function _loop3() {
24068
24123
  var targetPrefix = targetPPGPrefixes[_i5];
24069
- var priceRef = _this3.article.priceRefs.find(function (item) {
24124
+ var priceRef = _this4.article.priceRefs.find(function (item) {
24070
24125
  var _item$PPG;
24071
24126
  return ((_item$PPG = item.PPG) === null || _item$PPG === void 0 ? void 0 : _item$PPG.split('_')[0]) == targetPrefix;
24072
24127
  });
@@ -24077,21 +24132,21 @@ var DivaArticle = /*#__PURE__*/function () {
24077
24132
  }
24078
24133
  };
24079
24134
  for (var _i5 = 0; _i5 < targetPPGPrefixes.length; _i5++) {
24080
- _loop();
24135
+ _loop3();
24081
24136
  }
24082
24137
  }
24083
24138
  for (var _i6 = 0; _i6 < this.article.priceRefs.length; _i6++) {
24084
24139
  if (!this.article.priceRefs[_i6].TargetPPGPrefixes) continue;
24085
24140
  var basePriceRef = this.article.priceRefs[_i6];
24086
- var _loop2 = function _loop2() {
24141
+ var _loop4 = function _loop4() {
24087
24142
  var targetPrefix = basePriceRef.TargetPPGPrefixes[_j];
24088
24143
  var myArtOpv;
24089
- var priceRef = _this3.article.priceRefs.find(function (item) {
24144
+ var priceRef = _this4.article.priceRefs.find(function (item) {
24090
24145
  return item.PPG && item.PPG.split('_')[0] == targetPrefix;
24091
24146
  });
24092
24147
  if (!priceRef) {
24093
- for (var key in _this3.articleOptionStates) {
24094
- var artOPS = _this3.articleOptionStates[key];
24148
+ for (var key in _this4.articleOptionStates) {
24149
+ var artOPS = _this4.articleOptionStates[key];
24095
24150
  if (artOPS.ppg && artOPS.ppg.split('_')[0] == targetPrefix) {
24096
24151
  myArtOpv = artOPS;
24097
24152
  }
@@ -24110,7 +24165,7 @@ var DivaArticle = /*#__PURE__*/function () {
24110
24165
  }
24111
24166
  };
24112
24167
  for (var _j = 0; _j < basePriceRef.TargetPPGPrefixes.length; _j++) {
24113
- _loop2();
24168
+ _loop4();
24114
24169
  }
24115
24170
  }
24116
24171
  for (var _i7 = 0; _i7 < this.article.priceRefs.length; _i7++) {
@@ -24399,7 +24454,7 @@ var DivaArticle = /*#__PURE__*/function () {
24399
24454
  value: function updateArticleSVG() {
24400
24455
  var _this$article$catalog2,
24401
24456
  _this$article$catalog3,
24402
- _this4 = this;
24457
+ _this5 = this;
24403
24458
  var newSVGFile = null;
24404
24459
  var svgChangedViaSvgTausch = false;
24405
24460
  if (!this.hasCatalogPlannerArticle || ((_this$article$catalog2 = this.article.catalogArticle.catalogPlannerArticle) === null || _this$article$catalog2 === void 0 ? void 0 : _this$article$catalog2.topSvg) == undefined && ((_this$article$catalog3 = this.article.catalogArticle.catalogPlannerArticle) === null || _this$article$catalog3 === void 0 ? void 0 : _this$article$catalog3.topSvgsWithFormula) == undefined) {
@@ -24460,7 +24515,7 @@ var DivaArticle = /*#__PURE__*/function () {
24460
24515
  code: 'WC_0011',
24461
24516
  custom: {
24462
24517
  formulas: (_plannerCatArt$topSvg = plannerCatArt.topSvgsWithFormula) === null || _plannerCatArt$topSvg === void 0 ? void 0 : _plannerCatArt$topSvg.map(function (item) {
24463
- return DivaUtils__default["default"].getRuleByFormula(item.JsFormula, _this4.catalogCodex, _this4.CatalogData.multiselectOptions);
24518
+ return DivaUtils__default["default"].getRuleByFormula(item.JsFormula, _this5.catalogCodex, _this5.CatalogData.multiselectOptions);
24464
24519
  }),
24465
24520
  catalogName: this.CatalogData.catalogName,
24466
24521
  catalogCodex: this.catalogCodex,
@@ -28573,7 +28628,7 @@ var DivaSet = /*#__PURE__*/function () {
28573
28628
  break;
28574
28629
  }
28575
28630
  _context5.next = 3;
28576
- return Promise.resolve().then(function () { return require('./DoorPlanner-cd30fe6d.js'); });
28631
+ return Promise.resolve().then(function () { return require('./DoorPlanner-dbd6bc6c.js'); });
28577
28632
  case 3:
28578
28633
  _yield$import = _context5.sent;
28579
28634
  DoorPlanner = _yield$import["default"];
@@ -35338,7 +35393,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
35338
35393
  break;
35339
35394
  case 3:
35340
35395
  _context12.next = 5;
35341
- return Promise.resolve().then(function () { return require('./PfisterWWSHandler-d9bd87c4.js'); });
35396
+ return Promise.resolve().then(function () { return require('./PfisterWWSHandler-a94d4013.js'); });
35342
35397
  case 5:
35343
35398
  _yield$import = _context12.sent;
35344
35399
  PfisterWWSHandler = _yield$import["default"];
@@ -35346,7 +35401,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
35346
35401
  return _context12.abrupt("break", 27);
35347
35402
  case 9:
35348
35403
  _context12.next = 11;
35349
- return Promise.resolve().then(function () { return require('./LiviqueWWSHandler-f0f1c990.js'); });
35404
+ return Promise.resolve().then(function () { return require('./LiviqueWWSHandler-aa95d52a.js'); });
35350
35405
  case 11:
35351
35406
  _yield$import2 = _context12.sent;
35352
35407
  LiviqueWWSHandler = _yield$import2["default"];
@@ -35354,7 +35409,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
35354
35409
  return _context12.abrupt("break", 27);
35355
35410
  case 15:
35356
35411
  _context12.next = 17;
35357
- return Promise.resolve().then(function () { return require('./SeriousBasketHandler-31d0db9d.js'); });
35412
+ return Promise.resolve().then(function () { return require('./SeriousBasketHandler-2bc074bf.js'); });
35358
35413
  case 17:
35359
35414
  _yield$import3 = _context12.sent;
35360
35415
  SeriousWWSHandler = _yield$import3["default"];
@@ -35362,7 +35417,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
35362
35417
  return _context12.abrupt("break", 27);
35363
35418
  case 21:
35364
35419
  _context12.next = 23;
35365
- return Promise.resolve().then(function () { return require('./StandardWWSHandler-69e5b463.js'); });
35420
+ return Promise.resolve().then(function () { return require('./StandardWWSHandler-4f2cdbee.js'); });
35366
35421
  case 23:
35367
35422
  _yield$import4 = _context12.sent;
35368
35423
  StandardWWSHandler = _yield$import4["default"];
@@ -36805,7 +36860,7 @@ var PlannerHandler3D = /*#__PURE__*/function () {
36805
36860
  while (1) switch (_context3.prev = _context3.next) {
36806
36861
  case 0:
36807
36862
  _context3.next = 2;
36808
- return Promise.resolve().then(function () { return require('./Host3DSignalR-3c0886e4.js'); });
36863
+ return Promise.resolve().then(function () { return require('./Host3DSignalR-4a3e70ed.js'); });
36809
36864
  case 2:
36810
36865
  _yield$import = _context3.sent;
36811
36866
  Host3DSignalR = _yield$import["default"];
@@ -38370,7 +38425,7 @@ var DivaPlannerHandler = /*#__PURE__*/function () {
38370
38425
  break;
38371
38426
  case 8:
38372
38427
  _context4.next = 10;
38373
- return Promise.resolve().then(function () { return require('./DivaStandardPlanner-50764892.js'); });
38428
+ return Promise.resolve().then(function () { return require('./DivaStandardPlanner-9ee8bca6.js'); });
38374
38429
  case 10:
38375
38430
  _yield$import = _context4.sent;
38376
38431
  DivaStandardPlanner = _yield$import["default"];
@@ -38381,7 +38436,7 @@ var DivaPlannerHandler = /*#__PURE__*/function () {
38381
38436
  return _context4.abrupt("break", 21);
38382
38437
  case 15:
38383
38438
  _context4.next = 17;
38384
- return Promise.resolve().then(function () { return require('./DivaBoxPlanner-4ec80868.js'); });
38439
+ return Promise.resolve().then(function () { return require('./DivaBoxPlanner-af1807d8.js'); });
38385
38440
  case 17:
38386
38441
  _yield$import2 = _context4.sent;
38387
38442
  DivaBoxPlanner = _yield$import2["default"];
@@ -56682,11 +56737,6 @@ var a$8 = [{
56682
56737
  name: 'Steinpol Poco VME Carolina XC',
56683
56738
  speciality: '',
56684
56739
  url: 'https://cdn.diva-portal.com/media/874b9f97-66bb-4ba5-9bcd-8044331c33f6/MOC/1fe5397e-9969-4baf-b891-bcb799e8c59d/cat6234/DivaNrDIVA-373156-1.txt'
56685
- }, {
56686
- divaNr: 'DIVA-83970-1',
56687
- name: 'Steinpol Poco VME Limone',
56688
- speciality: '',
56689
- url: 'https://cdn.diva-portal.com/media/874b9f97-66bb-4ba5-9bcd-8044331c33f6/MOC/1fe5397e-9969-4baf-b891-bcb799e8c59d/cat5936/DivaNrDIVA-83970-1.txt'
56690
56740
  }, {
56691
56741
  divaNr: 'DIVA-438941-1',
56692
56742
  name: 'Steinpol Poco VME Westpoint ',
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var index = require('./index-e69e165a.js');
5
+ var index = require('./index-89f4528c.js');
6
6
  require('@babel/runtime/helpers/slicedToArray');
7
7
  require('@babel/runtime/helpers/asyncToGenerator');
8
8
  require('@babel/runtime/helpers/classCallCheck');
@@ -3,10 +3,10 @@ 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, B as BoundingBox } from './index-ee8cbb0a.js';
6
+ import { c as Vector2, V as Vector3, B as BoundingBox } from './index-32e677d7.js';
7
7
  import DivaUtils, { DivaError, md5 } from '@crystaldesign/diva-utils';
8
8
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
9
- import { d as dockingPointHandlerInst, P as PlannerElementData, h as handler2D } from './PlannerHandler2D-24bcbad9.js';
9
+ import { d as dockingPointHandlerInst, P as PlannerElementData, h as handler2D } from './PlannerHandler2D-c9096881.js';
10
10
  import '@babel/runtime/helpers/slicedToArray';
11
11
  import '@babel/runtime/helpers/objectWithoutProperties';
12
12
  import 'axios';
@@ -3,8 +3,8 @@ 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 { V as Vector3, c as Vector2, B as BoundingBox } from './index-ee8cbb0a.js';
7
- import { d as dockingPointHandlerInst, h as handler2D, P as PlannerElementData } from './PlannerHandler2D-24bcbad9.js';
6
+ import { V as Vector3, c as Vector2, B as BoundingBox } from './index-32e677d7.js';
7
+ import { d as dockingPointHandlerInst, h as handler2D, P as PlannerElementData } from './PlannerHandler2D-c9096881.js';
8
8
  import DivaUtils, { DivaError, md5 } from '@crystaldesign/diva-utils';
9
9
  import '@babel/runtime/helpers/slicedToArray';
10
10
  import '@babel/runtime/helpers/objectWithoutProperties';
@@ -1,7 +1,7 @@
1
1
  import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
2
2
  import _createClass from '@babel/runtime/helpers/createClass';
3
3
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
4
- import './index-ee8cbb0a.js';
4
+ import './index-32e677d7.js';
5
5
  import DivaUtils from '@crystaldesign/diva-utils';
6
6
  import '@babel/runtime/helpers/slicedToArray';
7
7
  import '@babel/runtime/helpers/asyncToGenerator';
@@ -3,7 +3,7 @@ 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 { R as Rendering, H as HQRenderScript } from './index-ee8cbb0a.js';
6
+ import { R as Rendering, H as HQRenderScript } from './index-32e677d7.js';
7
7
  import DivaUtils, { DivaError } from '@crystaldesign/diva-utils';
8
8
  import { HubConnectionBuilder, LogLevel } from '@microsoft/signalr';
9
9
  import io from 'socket.io-client';
@@ -1,6 +1,6 @@
1
1
  import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
2
2
  import _createClass from '@babel/runtime/helpers/createClass';
3
- import './index-ee8cbb0a.js';
3
+ import './index-32e677d7.js';
4
4
  import '@babel/runtime/helpers/slicedToArray';
5
5
  import '@babel/runtime/helpers/asyncToGenerator';
6
6
  import '@babel/runtime/helpers/defineProperty';