@crystaldesign/web-planner-logic 24.14.0-beta.35 → 24.14.0-beta.37

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 (46) hide show
  1. package/build/cjs/{DivaBoxPlanner-06083f1c.js → DivaBoxPlanner-c43ddff1.js} +2 -2
  2. package/build/cjs/{DivaStandardPlanner-458efcfe.js → DivaStandardPlanner-876b1df9.js} +2 -2
  3. package/build/cjs/{DoorPlanner-63944dc3.js → DoorPlanner-fe3b2b81.js} +2 -2
  4. package/build/cjs/{Host3DSignalR-ee21d056.js → Host3DSignalR-b0c17da8.js} +1 -1
  5. package/build/cjs/{LiviqueWWSHandler-72ae2c6d.js → LiviqueWWSHandler-7219a0ae.js} +1 -1
  6. package/build/cjs/{PfisterWWSHandler-4d1b4a1a.js → PfisterWWSHandler-4ad1869e.js} +1 -1
  7. package/build/cjs/{PlannerHandler2D-4a737c94.js → PlannerHandler2D-60fd8c8d.js} +1 -1
  8. package/build/cjs/{SeriousBasketHandler-1772b117.js → SeriousBasketHandler-90289845.js} +1 -1
  9. package/build/cjs/{ShelfPlanner-2915aeba.js → ShelfPlanner-1a7912fe.js} +2 -2
  10. package/build/cjs/{StandardWWSHandler-c52ecc5e.js → StandardWWSHandler-bf22fe3e.js} +1 -1
  11. package/build/cjs/{index-a9ea7218.js → index-6457fa41.js} +119 -67
  12. package/build/cjs/index.js +1 -1
  13. package/build/esm/{DivaBoxPlanner-e06a0168.js → DivaBoxPlanner-be39cf14.js} +2 -2
  14. package/build/esm/{DivaStandardPlanner-9c8c9c3c.js → DivaStandardPlanner-23959536.js} +2 -2
  15. package/build/esm/{DoorPlanner-eeeae933.js → DoorPlanner-562fce19.js} +2 -2
  16. package/build/esm/{Host3DSignalR-417c3855.js → Host3DSignalR-67b13c7a.js} +1 -1
  17. package/build/esm/{LiviqueWWSHandler-01e7f8e9.js → LiviqueWWSHandler-aec544d5.js} +1 -1
  18. package/build/esm/{PfisterWWSHandler-6df7e236.js → PfisterWWSHandler-f4a9b32f.js} +1 -1
  19. package/build/esm/{PlannerHandler2D-8bd410fa.js → PlannerHandler2D-93064806.js} +1 -1
  20. package/build/esm/{SeriousBasketHandler-478ec6fe.js → SeriousBasketHandler-b7da6011.js} +1 -1
  21. package/build/esm/{ShelfPlanner-cb19f113.js → ShelfPlanner-4d3ae6e1.js} +2 -2
  22. package/build/esm/{StandardWWSHandler-8da96c54.js → StandardWWSHandler-63726e9b.js} +1 -1
  23. package/build/esm/{index-a4f74fa4.js → index-bcdb077b.js} +119 -67
  24. package/build/esm/index.js +1 -1
  25. package/build/types/web-planner-logic/src/interface/Articles/CatalogArticleDataType.d.ts +3 -1
  26. package/build/types/web-planner-logic/src/interface/Articles/CatalogArticleDataType.d.ts.map +1 -1
  27. package/build/types/web-planner-logic/src/interface/FunctionTypes/index.d.ts +1 -0
  28. package/build/types/web-planner-logic/src/interface/FunctionTypes/index.d.ts.map +1 -1
  29. package/build/types/web-planner-logic/src/interface/OptionTypes/DecisionType.d.ts +1 -0
  30. package/build/types/web-planner-logic/src/interface/OptionTypes/DecisionType.d.ts.map +1 -1
  31. package/build/types/web-planner-logic/src/logic/Article/ArticleOptionState.d.ts +1 -0
  32. package/build/types/web-planner-logic/src/logic/Article/ArticleOptionState.d.ts.map +1 -1
  33. package/build/types/web-planner-logic/src/logic/Article/DivaArticle.d.ts +3 -1
  34. package/build/types/web-planner-logic/src/logic/Article/DivaArticle.d.ts.map +1 -1
  35. package/build/types/web-planner-logic/src/logic/Article/DivaArticleHandler.d.ts.map +1 -1
  36. package/build/types/web-planner-logic/src/logic/ConfigTree/DoorPlanner/DoorPlanner.d.ts.map +1 -1
  37. package/build/types/web-planner-logic/src/logic/ConfigTree/Shelfplanner/ShelfPlanner.d.ts.map +1 -1
  38. package/build/types/web-planner-logic/src/logic/DivaWebPlanner.d.ts.map +1 -1
  39. package/build/types/web-planner-logic/src/logic/Set/DivaSetHandler.d.ts.map +1 -1
  40. package/build/types/web-planner-logic/src/model/Articles/CatalogArticleData.d.ts +10 -3
  41. package/build/types/web-planner-logic/src/model/Articles/CatalogArticleData.d.ts.map +1 -1
  42. package/build/types/web-planner-logic/src/model/DivaCatalogData.d.ts +1 -0
  43. package/build/types/web-planner-logic/src/model/DivaCatalogData.d.ts.map +1 -1
  44. package/build/types/web-planner-logic/src/model/Options/ArticleOptionValueData.d.ts +1 -1
  45. package/build/types/web-planner-logic/src/model/Options/ArticleOptionValueData.d.ts.map +1 -1
  46. package/package.json +2 -2
@@ -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 { V as Vector3, B as BoundingBox } from './index-a4f74fa4.js';
6
+ import { V as Vector3, B as BoundingBox } from './index-bcdb077b.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-8bd410fa.js';
9
+ import { d as dockingPointHandlerInst, P as PlannerElementData, h as handler2D } from './PlannerHandler2D-93064806.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-a4f74fa4.js';
7
- import { d as dockingPointHandlerInst, h as handler2D, P as PlannerElementData } from './PlannerHandler2D-8bd410fa.js';
6
+ import { V as Vector3, c as Vector2, B as BoundingBox } from './index-bcdb077b.js';
7
+ import { d as dockingPointHandlerInst, h as handler2D, P as PlannerElementData } from './PlannerHandler2D-93064806.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-a4f74fa4.js';
4
+ import './index-bcdb077b.js';
5
5
  import DivaUtils from '@crystaldesign/diva-utils';
6
6
  import '@babel/runtime/helpers/slicedToArray';
7
7
  import '@babel/runtime/helpers/asyncToGenerator';
@@ -100,7 +100,7 @@ var DoorPlanner = /*#__PURE__*/function () {
100
100
  for (var i = 0; i < data.Doors.length; i++) {
101
101
  this.doorsOnArticles[basketId].push(new Door(data.Doors[i], basketId, i));
102
102
  }
103
- if (data.DoShowDoorsOnRule) this.doShowDoorsOnRule[basketId] = DivaUtils.getRuleByFormula(data.DoShowDoorsOnRule);else {
103
+ if (data.DoShowDoorsOnRule) this.doShowDoorsOnRule[basketId] = DivaUtils.getRuleByFormula(data.DoShowDoorsOnRule, article.catalogCodex, article.CatalogData.multiselectOptions);else {
104
104
  this.doShowDoorsOnRule[basketId] = 'true';
105
105
  }
106
106
  }
@@ -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-a4f74fa4.js';
6
+ import { R as Rendering, H as HQRenderScript } from './index-bcdb077b.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-a4f74fa4.js';
3
+ import './index-bcdb077b.js';
4
4
  import '@babel/runtime/helpers/slicedToArray';
5
5
  import '@babel/runtime/helpers/asyncToGenerator';
6
6
  import '@babel/runtime/helpers/defineProperty';
@@ -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-a4f74fa4.js';
3
+ import './index-bcdb077b.js';
4
4
  import { SAPOrderLineData } from '@crystaldesign/basket-model';
5
5
  import DivaUtils, { DivaError } from '@crystaldesign/diva-utils';
6
6
  import '@babel/runtime/helpers/slicedToArray';
@@ -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 { V as Vector3, c as Vector2, D as DockingPoint } from './index-a4f74fa4.js';
4
+ import { V as Vector3, c as Vector2, D as DockingPoint } from './index-bcdb077b.js';
5
5
  import DivaUtils, { md5, DivaError } from '@crystaldesign/diva-utils';
6
6
  import _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator';
7
7
  import _regeneratorRuntime from '@babel/runtime/regenerator';
@@ -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 { s as summaryHandlerInstance } from './index-a4f74fa4.js';
4
+ import { s as summaryHandlerInstance } from './index-bcdb077b.js';
5
5
  import DivaUtils from '@crystaldesign/diva-utils';
6
6
  import '@babel/runtime/helpers/slicedToArray';
7
7
  import '@babel/runtime/helpers/asyncToGenerator';
@@ -4,7 +4,7 @@ import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
4
4
  import _createClass from '@babel/runtime/helpers/createClass';
5
5
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
6
6
  import _regeneratorRuntime from '@babel/runtime/regenerator';
7
- import { G as Grid, a as setHandlerInstance, b as articleHandlerInstance } from './index-a4f74fa4.js';
7
+ import { G as Grid, a as setHandlerInstance, b as articleHandlerInstance } from './index-bcdb077b.js';
8
8
  import DivaUtils from '@crystaldesign/diva-utils';
9
9
  import '@babel/runtime/helpers/slicedToArray';
10
10
  import '@babel/runtime/helpers/objectWithoutProperties';
@@ -45,7 +45,7 @@ var ShelfPlanner = /*#__PURE__*/function () {
45
45
  this.disableCellsByElement = data.DisableCells;
46
46
  this.data = data;
47
47
  this.showAfterOPT = data.ShowAfterOPT;
48
- this.showOnRule = data.ShowOnRule ? DivaUtils.getRuleByFormula(data.ShowOnRule) : undefined;
48
+ this.showOnRule = data.ShowOnRule ? DivaUtils.getRuleByFormula(data.ShowOnRule, article.catalogCodex, article.CatalogData.multiselectOptions) : undefined;
49
49
  this.gridAllowedOnCells = data.GridAllowedOnCells;
50
50
  this.gridAllowedOntoArticles = data.GridAllowedOntoArticles;
51
51
  this.takePlaceOnOtherGrids = data.TakePlaceOnOtherGrids;
@@ -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-a4f74fa4.js';
3
+ import './index-bcdb077b.js';
4
4
  import '@babel/runtime/helpers/slicedToArray';
5
5
  import '@babel/runtime/helpers/asyncToGenerator';
6
6
  import '@babel/runtime/helpers/defineProperty';
@@ -1631,7 +1631,7 @@ var ArticleOptionData = /*#__PURE__*/function () {
1631
1631
  }();
1632
1632
 
1633
1633
  var ArticleOptionValueData = /*#__PURE__*/function () {
1634
- function ArticleOptionValueData(codex, jsonOPV, catalogOPV, myArticle, isParentOPVG, parent) {
1634
+ function ArticleOptionValueData(codex, jsonOPV, catalogOPV, myArticle, isParentOPVG, parent, multiselectOptions) {
1635
1635
  _classCallCheck(this, ArticleOptionValueData);
1636
1636
  _defineProperty(this, "opv", void 0);
1637
1637
  this.opv = {
@@ -1667,7 +1667,7 @@ var ArticleOptionValueData = /*#__PURE__*/function () {
1667
1667
  var mySubArticleReplaceMainArticleNr;
1668
1668
  //Auf Preisliste von PriceArticleCodex zugreifen
1669
1669
  if (this.opv.rul) {
1670
- this.opv.rul = DivaUtils.getRuleByFormula(this.opv.rul);
1670
+ this.opv.rul = DivaUtils.getRuleByFormula(this.opv.rul, myArticle.catalogCodex, multiselectOptions);
1671
1671
  }
1672
1672
  if (myArticle.arePricesLoaded) {
1673
1673
  var articlePrices = myArticle.articlePrices;
@@ -16009,7 +16009,7 @@ var OptionValueCatalogData = /*#__PURE__*/function () {
16009
16009
  this.opv.images.push({
16010
16010
  fileName: image.FileName,
16011
16011
  functiontype: image.Functiontype,
16012
- jsFormula: image.JsFormula ? DivaUtils.getRuleByFormula(image.JsFormula, catalog.catalogCodex) : '',
16012
+ jsFormula: image.JsFormula ? DivaUtils.getRuleByFormula(image.JsFormula, catalog.catalogCodex, catalog.multiselectOptions) : '',
16013
16013
  name: image.Name,
16014
16014
  replaceMainImage: image.ReplaceMainImage
16015
16015
  });
@@ -16637,6 +16637,16 @@ var CatalogArticleData = /*#__PURE__*/function () {
16637
16637
  get: function get() {
16638
16638
  return this.catalogArticle.partListArticles;
16639
16639
  }
16640
+ }, {
16641
+ key: "getPartlistRuleOfArticleCodes",
16642
+ value: function getPartlistRuleOfArticleCodes(articleCodex) {
16643
+ var _this$partlistArticle;
16644
+ return (_this$partlistArticle = this.partlistArticlesRules) === null || _this$partlistArticle === void 0 || (_this$partlistArticle = _this$partlistArticle[0].PartListPos) === null || _this$partlistArticle === void 0 ? void 0 : _this$partlistArticle.find(function (p) {
16645
+ return p.ItemRefArticles.find(function (a) {
16646
+ return a.ArticleCodex === articleCodex;
16647
+ });
16648
+ });
16649
+ }
16640
16650
  }, {
16641
16651
  key: "groupedPartlists",
16642
16652
  get: function get() {
@@ -17041,7 +17051,7 @@ var CatalogArticleData = /*#__PURE__*/function () {
17041
17051
  }
17042
17052
  if (json.Decisions && json.Decisions.length > 0) {
17043
17053
  this.catalogArticle.decisions = json.Decisions;
17044
- this.initDecisions();
17054
+ this.initDecisions(catalog);
17045
17055
  }
17046
17056
  if (json.TemplateCodex) {
17047
17057
  this.catalogArticle.templateCodex = json.TemplateCodex;
@@ -17061,7 +17071,7 @@ var CatalogArticleData = /*#__PURE__*/function () {
17061
17071
  if (json.ShowroomImages) {
17062
17072
  for (var _i = 0; _i < json.ShowroomImages.length; _i++) {
17063
17073
  if (json.ShowroomImages[_i].JsFormula) {
17064
- json.ShowroomImages[_i].JsFormula = DivaUtils.getRuleByFormula(json.ShowroomImages[_i].JsFormula);
17074
+ json.ShowroomImages[_i].JsFormula = DivaUtils.getRuleByFormula(json.ShowroomImages[_i].JsFormula, catalog.catalogCodex, catalog.multiselectOptions);
17065
17075
  }
17066
17076
  }
17067
17077
  this.catalogArticle.showroomImages = json.ShowroomImages;
@@ -17135,6 +17145,12 @@ var CatalogArticleData = /*#__PURE__*/function () {
17135
17145
  }, {
17136
17146
  key: "loadArticleOptions",
17137
17147
  value: function loadArticleOptions(json, set, onlyRunLogic) {
17148
+ var multiselectOptions = json.OPT.filter(function (o) {
17149
+ var _o$OCD;
17150
+ return set.CatalogData.multiselectOptions.includes((_o$OCD = o.OCD) !== null && _o$OCD !== void 0 ? _o$OCD : o.Codex);
17151
+ }).map(function (o) {
17152
+ return o.Codex;
17153
+ });
17138
17154
  if (json.OPT && json.OPT.length != 0) {
17139
17155
  for (var i = 0; i < json.OPT.length; i++) {
17140
17156
  var myOPT = json.OPT[i];
@@ -17159,7 +17175,7 @@ var CatalogArticleData = /*#__PURE__*/function () {
17159
17175
  catOPV = set.CatalogData.getCatalogOptionValueByCodex(tmpOPV.OCD ? tmpOPV.OCD : tmpOPV.Codex, onlyRunLogic);
17160
17176
  if (catOPV) {
17161
17177
  if (!(catOPV !== null && catOPV !== void 0 && catOPV.groupName) && catOPG) catOPV.groupName = catOPG.name;
17162
- var myOPV = new ArticleOptionValueData(tmpOPV.Codex, tmpOPV, catOPV, this, true, newOPG);
17178
+ var myOPV = new ArticleOptionValueData(tmpOPV.Codex, tmpOPV, catOPV, this, true, newOPG, multiselectOptions);
17163
17179
  allOPVsOfOPG[tmpOPV.Codex] = myOPV;
17164
17180
  }
17165
17181
  }
@@ -17172,11 +17188,11 @@ var CatalogArticleData = /*#__PURE__*/function () {
17172
17188
  var _tmpOPG = myOPT.OPV[_j],
17173
17189
  _catOPG = set.CatalogData.getCatalogOptionValueByCodex(_tmpOPG.OCD ? _tmpOPG.OCD : _tmpOPG.Codex, onlyRunLogic);
17174
17190
  if (_catOPG) {
17175
- var _newOPG = new ArticleOptionValueData(_tmpOPG.Codex, _tmpOPG, _catOPG, this, false, newOPT);
17191
+ var _newOPG = new ArticleOptionValueData(_tmpOPG.Codex, _tmpOPG, _catOPG, this, false, newOPT, multiselectOptions);
17176
17192
  allOPVsOfOPT[_tmpOPG.Codex] = _newOPG;
17177
17193
  var _catOPV = set.CatalogData.getCatalogOptionValueByCodex(_tmpOPG.OCD ? _tmpOPG.OCD : _tmpOPG.Codex, onlyRunLogic);
17178
17194
  if (_catOPV) {
17179
- var _myOPV = new ArticleOptionValueData(_tmpOPG.Codex, _tmpOPG, _catOPV, this, true, _newOPG);
17195
+ var _myOPV = new ArticleOptionValueData(_tmpOPG.Codex, _tmpOPG, _catOPV, this, true, _newOPG, multiselectOptions);
17180
17196
  _allOPVsOfOPG[_tmpOPG.Codex] = _myOPV;
17181
17197
  }
17182
17198
  _newOPG.initOPVsInOPG(_allOPVsOfOPG);
@@ -17188,7 +17204,7 @@ var CatalogArticleData = /*#__PURE__*/function () {
17188
17204
  var _tmpOPV = myOPT.OPV[_j2],
17189
17205
  _catOPV2 = set.CatalogData.getCatalogOptionValueByCodex(_tmpOPV.OCD ? _tmpOPV.OCD : _tmpOPV.Codex, onlyRunLogic);
17190
17206
  if (_catOPV2) {
17191
- var _myOPV2 = new ArticleOptionValueData(_tmpOPV.Codex, _tmpOPV, _catOPV2, this, true, newOPT);
17207
+ var _myOPV2 = new ArticleOptionValueData(_tmpOPV.Codex, _tmpOPV, _catOPV2, this, true, newOPT, multiselectOptions);
17192
17208
  allOPVsOfOPT[_tmpOPV.Codex] = _myOPV2;
17193
17209
  }
17194
17210
  }
@@ -17213,7 +17229,7 @@ var CatalogArticleData = /*#__PURE__*/function () {
17213
17229
 
17214
17230
  if (json.Decisions && json.Decisions.length > 0) {
17215
17231
  this.catalogArticle.decisions = JSON.parse(JSON.stringify(json.Decisions));
17216
- this.initDecisions();
17232
+ this.initDecisions(set.CatalogData);
17217
17233
  }
17218
17234
  if (json.PartLists && json.PartLists.length > 0) {
17219
17235
  this.catalogArticle.partListArticles = json.PartLists;
@@ -17230,7 +17246,7 @@ var CatalogArticleData = /*#__PURE__*/function () {
17230
17246
  }, catalog);
17231
17247
  var articleOPG = new ArticleOptionValueData('OPVSUPPLIER_COLORS', {
17232
17248
  RUL: rule
17233
- }, catalogOPG, this, false, newOPT);
17249
+ }, catalogOPG, this, false, newOPT, catalog.multiselectOptions);
17234
17250
  allOPVsOfOPT['OPVSUPPLIER_COLORS'] = articleOPG;
17235
17251
  var supplierColorsOpvs = {};
17236
17252
  for (var i = 0; i < supplierColors.length; i++) {
@@ -17241,17 +17257,17 @@ var CatalogArticleData = /*#__PURE__*/function () {
17241
17257
  HexColor: col.HexColor,
17242
17258
  GroupName: 'Lieferantenfarben'
17243
17259
  }, catalog);
17244
- supplierColorsOpvs['OPV' + col.OptionValueCodex] = new ArticleOptionValueData('OPV' + col.OptionValueCodex, {}, colorCatalogOpv, this, true, articleOPG);
17260
+ supplierColorsOpvs['OPV' + col.OptionValueCodex] = new ArticleOptionValueData('OPV' + col.OptionValueCodex, {}, colorCatalogOpv, this, true, articleOPG, catalog.multiselectOptions);
17245
17261
  }
17246
17262
  articleOPG.initOPVsInOPG(supplierColorsOpvs);
17247
17263
  }
17248
17264
  }, {
17249
17265
  key: "loadPrices",
17250
- value: function loadPrices(json) {
17266
+ value: function loadPrices(json, catalog) {
17251
17267
  var jsonPrice = JSON.parse(JSON.stringify(json));
17252
17268
  if (jsonPrice.Rules) {
17253
17269
  for (var _key3 in jsonPrice.Rules) {
17254
- jsonPrice.Rules[_key3].JsFormula = DivaUtils.getRuleByFormula(jsonPrice.Rules[_key3].JsFormula);
17270
+ jsonPrice.Rules[_key3].JsFormula = DivaUtils.getRuleByFormula(jsonPrice.Rules[_key3].JsFormula, catalog.catalogCodex, catalog.multiselectOptions);
17255
17271
  }
17256
17272
  }
17257
17273
  this.catalogArticle.articlePrices = jsonPrice;
@@ -17259,7 +17275,7 @@ var CatalogArticleData = /*#__PURE__*/function () {
17259
17275
  }
17260
17276
  }, {
17261
17277
  key: "initDecisions",
17262
- value: function initDecisions() {
17278
+ value: function initDecisions(catalog) {
17263
17279
  var myOptOrder = [];
17264
17280
  if (this.catalogArticle.articleOptions) {
17265
17281
  for (var _key4 in this.catalogArticle.articleOptions) {
@@ -17273,7 +17289,7 @@ var CatalogArticleData = /*#__PURE__*/function () {
17273
17289
  for (var j = 0; j < myDecision.DOC.length; j++) {
17274
17290
  //DecisionOptionCombination
17275
17291
  var myDOC = myDecision.DOC[j];
17276
- if (myDOC.JsFormula) myDOC.JsFormula = DivaUtils.getRuleByFormula(myDOC.JsFormula);
17292
+ if (myDOC.JsFormula) myDOC.JsFormula = DivaUtils.getRuleByFormula(myDOC.JsFormula, catalog.catalogCodex, catalog.multiselectOptions);
17277
17293
  if (myDOC.ValidOptionValues) {
17278
17294
  myDOC.ValidOptions = '';
17279
17295
  var a = myDOC.ValidOptionValues.split(',');
@@ -19597,6 +19613,16 @@ var DivaCatalogData = /*#__PURE__*/function () {
19597
19613
  get: function get() {
19598
19614
  return this._api;
19599
19615
  }
19616
+ }, {
19617
+ key: "multiselectOptions",
19618
+ get: function get() {
19619
+ var _this$options4;
19620
+ return Object.values((_this$options4 = this.options) !== null && _this$options4 !== void 0 ? _this$options4 : {}).filter(function (o) {
19621
+ return o.isMultiselect;
19622
+ }).map(function (o) {
19623
+ return o.codex;
19624
+ });
19625
+ }
19600
19626
  }, {
19601
19627
  key: "catalogMask",
19602
19628
  get: function get() {
@@ -19957,6 +19983,14 @@ var ArticleOptionStateData = /*#__PURE__*/function () {
19957
19983
  get: function get() {
19958
19984
  return this.val ? this.val.codex : undefined;
19959
19985
  }
19986
+ }, {
19987
+ key: "multiselectValCodex",
19988
+ get: function get() {
19989
+ var _this$multiSelects$ma, _this$multiSelects2;
19990
+ return (_this$multiSelects$ma = (_this$multiSelects2 = this.multiSelects) === null || _this$multiSelects2 === void 0 ? void 0 : _this$multiSelects2.map(function (v) {
19991
+ return v.codex;
19992
+ })) !== null && _this$multiSelects$ma !== void 0 ? _this$multiSelects$ma : [];
19993
+ }
19960
19994
  }, {
19961
19995
  key: "measureValue",
19962
19996
  get: function get() {
@@ -20430,12 +20464,12 @@ var ArticleOptionStateData = /*#__PURE__*/function () {
20430
20464
  }, {
20431
20465
  key: "getSelectedVals",
20432
20466
  get: function get() {
20433
- var _this$multiSelects2;
20434
- if (this.isMultiselect && (_this$multiSelects2 = this.multiSelects) !== null && _this$multiSelects2 !== void 0 && _this$multiSelects2.length) {
20435
- var _this$multiSelects$ma, _this$multiSelects3;
20436
- return (_this$multiSelects$ma = (_this$multiSelects3 = this.multiSelects) === null || _this$multiSelects3 === void 0 ? void 0 : _this$multiSelects3.map(function (m) {
20467
+ var _this$multiSelects3;
20468
+ if (this.isMultiselect && (_this$multiSelects3 = this.multiSelects) !== null && _this$multiSelects3 !== void 0 && _this$multiSelects3.length) {
20469
+ var _this$multiSelects$ma2, _this$multiSelects4;
20470
+ return (_this$multiSelects$ma2 = (_this$multiSelects4 = this.multiSelects) === null || _this$multiSelects4 === void 0 ? void 0 : _this$multiSelects4.map(function (m) {
20437
20471
  return m.codex;
20438
- })) !== null && _this$multiSelects$ma !== void 0 ? _this$multiSelects$ma : [];
20472
+ })) !== null && _this$multiSelects$ma2 !== void 0 ? _this$multiSelects$ma2 : [];
20439
20473
  }
20440
20474
  if (this.val) {
20441
20475
  return [this.val.codex];
@@ -23647,7 +23681,7 @@ var DivaArticle = /*#__PURE__*/function () {
23647
23681
  break;
23648
23682
  }
23649
23683
  _context.next = 4;
23650
- return import('./ShelfPlanner-cb19f113.js');
23684
+ return import('./ShelfPlanner-4d3ae6e1.js');
23651
23685
  case 4:
23652
23686
  _yield$import = _context.sent;
23653
23687
  ShelfPlanner = _yield$import["default"];
@@ -24148,7 +24182,9 @@ var DivaArticle = /*#__PURE__*/function () {
24148
24182
  }, {
24149
24183
  key: "updateArticleSVG",
24150
24184
  value: function updateArticleSVG() {
24151
- var _this$article$catalog2, _this$article$catalog3;
24185
+ var _this$article$catalog2,
24186
+ _this$article$catalog3,
24187
+ _this4 = this;
24152
24188
  var newSVGFile = null;
24153
24189
  var svgChangedViaSvgTausch = false;
24154
24190
  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) {
@@ -24168,7 +24204,7 @@ var DivaArticle = /*#__PURE__*/function () {
24168
24204
  var svgsWithFormula = plannerCatArt.topSvgsWithFormula;
24169
24205
  for (var i = 0; i < svgsWithFormula.length; i++) {
24170
24206
  var mySVG = svgsWithFormula[i],
24171
- myRule = DivaUtils.getRuleByFormula(mySVG.JsFormula);
24207
+ myRule = DivaUtils.getRuleByFormula(mySVG.JsFormula, this.catalogCodex, this.CatalogData.multiselectOptions);
24172
24208
  if (this.evalRule(myRule, '')) {
24173
24209
  newSVGFile = mySVG.SVG;
24174
24210
  svgChangedViaSvgTausch = true;
@@ -24209,7 +24245,7 @@ var DivaArticle = /*#__PURE__*/function () {
24209
24245
  code: 'WC_0011',
24210
24246
  custom: {
24211
24247
  formulas: (_plannerCatArt$topSvg = plannerCatArt.topSvgsWithFormula) === null || _plannerCatArt$topSvg === void 0 ? void 0 : _plannerCatArt$topSvg.map(function (item) {
24212
- return DivaUtils.getRuleByFormula(item.JsFormula);
24248
+ return DivaUtils.getRuleByFormula(item.JsFormula, _this4.catalogCodex, _this4.CatalogData.multiselectOptions);
24213
24249
  }),
24214
24250
  catalogName: this.CatalogData.catalogName,
24215
24251
  catalogCodex: this.catalogCodex,
@@ -24710,7 +24746,7 @@ var DivaArticleHandler = /*#__PURE__*/function () {
24710
24746
  _yield$Promise$all2 = _slicedToArray(_yield$Promise$all, 2);
24711
24747
  jsonPrices = _yield$Promise$all2[0];
24712
24748
  jsonOption = _yield$Promise$all2[1];
24713
- catalogArticle.loadPrices(jsonPrices);
24749
+ catalogArticle.loadPrices(jsonPrices, set.CatalogData);
24714
24750
  catalogArticle.loadArticleOptions(jsonOption, set, set.onlyRunLogic);
24715
24751
  case 17:
24716
24752
  catalogArticle.areOptionsLoaded = true;
@@ -25637,7 +25673,7 @@ var DivaArticleHandler = /*#__PURE__*/function () {
25637
25673
  if ((_rule$articles = rule.articles) !== null && _rule$articles !== void 0 && _rule$articles.length && !rule.articles.includes(article.articleCodex)) return false;
25638
25674
  if (rule.variantValues && !this.objectIncudesObject(rule.variantValues, article.VariantValuesWithoutOPTandOPV)) return false;
25639
25675
  if (rule.visitedOptions && !this.arrayIncludesArray(rule.visitedOptions, visitedOptions[article.basketId])) return false;
25640
- if (rule.jsFormula && !article.evalRule(DivaUtils.getRuleByFormula(rule.jsFormula))) return false;
25676
+ if (rule.jsFormula && !article.evalRule(DivaUtils.getRuleByFormula(rule.jsFormula, article.catalogCodex, article.CatalogData.multiselectOptions))) return false;
25641
25677
  if (rule.sizes) {
25642
25678
  console.error('size logic not jet implemented');
25643
25679
  return false;
@@ -28175,7 +28211,7 @@ var DivaSet = /*#__PURE__*/function () {
28175
28211
  break;
28176
28212
  }
28177
28213
  _context4.next = 3;
28178
- return import('./DoorPlanner-eeeae933.js');
28214
+ return import('./DoorPlanner-562fce19.js');
28179
28215
  case 3:
28180
28216
  _yield$import = _context4.sent;
28181
28217
  DoorPlanner = _yield$import["default"];
@@ -31644,6 +31680,11 @@ var DivaSetHandler = /*#__PURE__*/function () {
31644
31680
  newArticle,
31645
31681
  _set$getArticleByBask2,
31646
31682
  defaultHeaderValues,
31683
+ partlistRule,
31684
+ decisionNr,
31685
+ _newArticle$catalogAr,
31686
+ rule,
31687
+ value,
31647
31688
  _args13 = arguments;
31648
31689
  return _regeneratorRuntime.wrap(function _callee11$(_context13) {
31649
31690
  while (1) switch (_context13.prev = _context13.next) {
@@ -31672,16 +31713,27 @@ var DivaSetHandler = /*#__PURE__*/function () {
31672
31713
  if (initParams.variantValues) {
31673
31714
  defaultHeaderValues = Object.assign(defaultHeaderValues, initParams.variantValues);
31674
31715
  }
31716
+ if (initParams.partlistCodexToInit) {
31717
+ partlistRule = newArticle.catalogArticle.getPartlistRuleOfArticleCodes(initParams.partlistCodexToInit);
31718
+ decisionNr = partlistRule === null || partlistRule === void 0 ? void 0 : partlistRule.PartListPosDecisionsAndPosCounts[0].DecisionNumber;
31719
+ if (decisionNr) {
31720
+ rule = (_newArticle$catalogAr = newArticle.catalogArticle.partlistDecisions) === null || _newArticle$catalogAr === void 0 || (_newArticle$catalogAr = _newArticle$catalogAr['D' + decisionNr]) === null || _newArticle$catalogAr === void 0 || (_newArticle$catalogAr = _newArticle$catalogAr.DOC) === null || _newArticle$catalogAr === void 0 ? void 0 : _newArticle$catalogAr[0].JsFormula;
31721
+ if (rule) {
31722
+ value = DivaUtils.getVariantValuesFromRule(rule, {});
31723
+ if (value) defaultHeaderValues = Object.assign(defaultHeaderValues, value);
31724
+ }
31725
+ }
31726
+ }
31675
31727
  if (!(from !== 'toDeleteShelf')) {
31676
- _context13.next = 14;
31728
+ _context13.next = 15;
31677
31729
  break;
31678
31730
  }
31679
31731
  set.addArticle(newArticle);
31680
- _context13.next = 14;
31732
+ _context13.next = 15;
31681
31733
  return articleHandlerInstance.toDoAfterArticleLoaded(newArticle, defaultHeaderValues, {}, from, undefined, ignorePlanner);
31682
- case 14:
31683
- return _context13.abrupt("return", newArticle);
31684
31734
  case 15:
31735
+ return _context13.abrupt("return", newArticle);
31736
+ case 16:
31685
31737
  case "end":
31686
31738
  return _context13.stop();
31687
31739
  }
@@ -34902,7 +34954,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
34902
34954
  break;
34903
34955
  case 3:
34904
34956
  _context12.next = 5;
34905
- return import('./PfisterWWSHandler-6df7e236.js');
34957
+ return import('./PfisterWWSHandler-f4a9b32f.js');
34906
34958
  case 5:
34907
34959
  _yield$import = _context12.sent;
34908
34960
  PfisterWWSHandler = _yield$import["default"];
@@ -34910,7 +34962,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
34910
34962
  return _context12.abrupt("break", 27);
34911
34963
  case 9:
34912
34964
  _context12.next = 11;
34913
- return import('./LiviqueWWSHandler-01e7f8e9.js');
34965
+ return import('./LiviqueWWSHandler-aec544d5.js');
34914
34966
  case 11:
34915
34967
  _yield$import2 = _context12.sent;
34916
34968
  LiviqueWWSHandler = _yield$import2["default"];
@@ -34918,7 +34970,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
34918
34970
  return _context12.abrupt("break", 27);
34919
34971
  case 15:
34920
34972
  _context12.next = 17;
34921
- return import('./SeriousBasketHandler-478ec6fe.js');
34973
+ return import('./SeriousBasketHandler-b7da6011.js');
34922
34974
  case 17:
34923
34975
  _yield$import3 = _context12.sent;
34924
34976
  SeriousWWSHandler = _yield$import3["default"];
@@ -34926,7 +34978,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
34926
34978
  return _context12.abrupt("break", 27);
34927
34979
  case 21:
34928
34980
  _context12.next = 23;
34929
- return import('./StandardWWSHandler-8da96c54.js');
34981
+ return import('./StandardWWSHandler-63726e9b.js');
34930
34982
  case 23:
34931
34983
  _yield$import4 = _context12.sent;
34932
34984
  StandardWWSHandler = _yield$import4["default"];
@@ -36270,7 +36322,7 @@ var PlannerHandler3D = /*#__PURE__*/function () {
36270
36322
  while (1) switch (_context3.prev = _context3.next) {
36271
36323
  case 0:
36272
36324
  _context3.next = 2;
36273
- return import('./Host3DSignalR-417c3855.js');
36325
+ return import('./Host3DSignalR-67b13c7a.js');
36274
36326
  case 2:
36275
36327
  _yield$import = _context3.sent;
36276
36328
  Host3DSignalR = _yield$import["default"];
@@ -37828,7 +37880,7 @@ var DivaPlannerHandler = /*#__PURE__*/function () {
37828
37880
  break;
37829
37881
  case 8:
37830
37882
  _context4.next = 10;
37831
- return import('./DivaStandardPlanner-9c8c9c3c.js');
37883
+ return import('./DivaStandardPlanner-23959536.js');
37832
37884
  case 10:
37833
37885
  _yield$import = _context4.sent;
37834
37886
  DivaStandardPlanner = _yield$import["default"];
@@ -37839,7 +37891,7 @@ var DivaPlannerHandler = /*#__PURE__*/function () {
37839
37891
  return _context4.abrupt("break", 21);
37840
37892
  case 15:
37841
37893
  _context4.next = 17;
37842
- return import('./DivaBoxPlanner-e06a0168.js');
37894
+ return import('./DivaBoxPlanner-be39cf14.js');
37843
37895
  case 17:
37844
37896
  _yield$import2 = _context4.sent;
37845
37897
  DivaBoxPlanner = _yield$import2["default"];
@@ -39570,71 +39622,74 @@ var DivaWebPlanner = /*#__PURE__*/function () {
39570
39622
  return this.divaBasketHandler.initializeBasket(this.api);
39571
39623
  case 12:
39572
39624
  loadSuccessful = _context13.sent;
39625
+ if (!this.divaBasketHandler.hasConfiguratorSessionIdGetter || DivaUtils.businessMetrics.getConfiguratorSessionId() == undefined) {
39626
+ DivaUtils.businessMetrics.setConfiguratorSessionId();
39627
+ }
39573
39628
  if (!loadSuccessful) {
39574
39629
  _context13.next = 61;
39575
39630
  break;
39576
39631
  }
39577
39632
  if (!(typeof loadSuccessful != 'boolean')) {
39578
- _context13.next = 25;
39633
+ _context13.next = 26;
39579
39634
  break;
39580
39635
  }
39581
39636
  if (!(loadSuccessful.type == 'ProductList')) {
39582
- _context13.next = 23;
39637
+ _context13.next = 24;
39583
39638
  break;
39584
39639
  }
39585
- _context13.next = 18;
39640
+ _context13.next = 19;
39586
39641
  return viewReadyPromise;
39587
- case 18:
39588
- _context13.next = 20;
39642
+ case 19:
39643
+ _context13.next = 21;
39589
39644
  return this.initView();
39590
- case 20:
39645
+ case 21:
39591
39646
  this.subscribeToWebPlannerEvents();
39592
39647
  (_this$actions15 = this.actions) === null || _this$actions15 === void 0 || (_this$actions15$toggl = _this$actions15.toggleLoading) === null || _this$actions15$toggl === void 0 || _this$actions15$toggl.call(_this$actions15, 'Planner_Loading', false, false);
39593
39648
  return _context13.abrupt("return", true);
39594
- case 23:
39595
- _context13.next = 26;
39649
+ case 24:
39650
+ _context13.next = 27;
39596
39651
  break;
39597
- case 25:
39598
- if (this.api.doCheckForProductsPrice()) ;
39599
39652
  case 26:
39653
+ if (this.api.doCheckForProductsPrice()) ;
39654
+ case 27:
39600
39655
  this.divaNr = this.divaBasketHandler.actDivaNr;
39601
39656
  initSetState = this.getInitStateForSet();
39602
39657
  this.plannerHandler.initPlanner(initSetState, this.getPlannerHandlerFunctions());
39603
- _context13.next = 31;
39658
+ _context13.next = 32;
39604
39659
  return setHandlerInstance.initSetsByOrderSet(this.divaBasketHandler.getOrderSetsByDivaNr(this.divaNr), initSetState);
39605
- case 31:
39660
+ case 32:
39606
39661
  set = this.actSet();
39607
39662
  if (!((_initSetState$api$web = initSetState.api.webConfig) !== null && _initSetState$api$web !== void 0 && _initSetState$api$web.checkForProductsPrice)) {
39608
- _context13.next = 43;
39663
+ _context13.next = 44;
39609
39664
  break;
39610
39665
  }
39611
39666
  if (!(typeof loadSuccessful != 'boolean' && loadSuccessful.type == 'ProductId')) {
39612
- _context13.next = 38;
39667
+ _context13.next = 39;
39613
39668
  break;
39614
39669
  }
39615
39670
  products = loadSuccessful;
39616
39671
  set === null || set === void 0 || set.remindPriceForHash(products);
39617
- _context13.next = 43;
39672
+ _context13.next = 44;
39618
39673
  break;
39619
- case 38:
39674
+ case 39:
39620
39675
  if (!this.divaBasketHandler.actBasket.OrigProductId) {
39621
- _context13.next = 43;
39676
+ _context13.next = 44;
39622
39677
  break;
39623
39678
  }
39624
- _context13.next = 41;
39679
+ _context13.next = 42;
39625
39680
  return this.divaBasketHandler.getProduct(this.api, this.divaBasketHandler.actBasket.OrigProductId);
39626
- case 41:
39681
+ case 42:
39627
39682
  result = _context13.sent;
39628
39683
  if (result) {
39629
39684
  set === null || set === void 0 || set.remindPriceForHash(result);
39630
39685
  }
39631
- case 43:
39632
- _context13.next = 45;
39686
+ case 44:
39687
+ _context13.next = 46;
39633
39688
  return viewReadyPromise;
39634
- case 45:
39635
- _context13.next = 47;
39689
+ case 46:
39690
+ _context13.next = 48;
39636
39691
  return this.initView();
39637
- case 47:
39692
+ case 48:
39638
39693
  (_this$actions16 = this.actions) === null || _this$actions16 === void 0 || _this$actions16.onEvent({
39639
39694
  type: 'onConfiguratorReady'
39640
39695
  });
@@ -39646,9 +39701,6 @@ var DivaWebPlanner = /*#__PURE__*/function () {
39646
39701
  this.subscribeToWebPlannerEvents();
39647
39702
  this.divaBasketHandler.actBasket;
39648
39703
  catalogData = set === null || set === void 0 ? void 0 : set.CatalogData;
39649
- if (!this.divaBasketHandler.hasConfiguratorSessionIdGetter || DivaUtils.businessMetrics.getConfiguratorSessionId() == undefined) {
39650
- DivaUtils.businessMetrics.setConfiguratorSessionId();
39651
- }
39652
39704
  initializationId = undefined;
39653
39705
  if (this.divaBasketHandler.initializationTypeGetter == 'PRODUCT_ID') {
39654
39706
  //KONFIGURATOR LOADED BY PRODUCT. LOG THIS HERE! WITH PRODUCT NAME AND PRODUCT ID
@@ -42342,7 +42394,7 @@ var Grid = /*#__PURE__*/function () {
42342
42394
  if (this.heightGridCellCountOnRule) {
42343
42395
  for (var i = 0; i < this.heightGridCellCountOnRule.length; i++) {
42344
42396
  var gridOnRule = this.heightGridCellCountOnRule[i];
42345
- if (this.article.evalRule(DivaUtils.getRuleByFormula(gridOnRule.Rule))) {
42397
+ if (this.article.evalRule(DivaUtils.getRuleByFormula(gridOnRule.Rule, article.catalogCodex, article.CatalogData.multiselectOptions))) {
42346
42398
  var _gridOnRule$HeightGri, _gridOnRule$ArticleRe;
42347
42399
  cellCount = (_gridOnRule$HeightGri = gridOnRule.HeightGridCellCount) !== null && _gridOnRule$HeightGri !== void 0 ? _gridOnRule$HeightGri : grid.HeightGridCellCount;
42348
42400
  this.articleRelations = (_gridOnRule$ArticleRe = gridOnRule.ArticleRelations) !== null && _gridOnRule$ArticleRe !== void 0 ? _gridOnRule$ArticleRe : grid.ArticleRelations;
@@ -1,4 +1,4 @@
1
- export { h as CatalogPlannerArticleData, C as Cell, e as DivaArticle, g as DivaBasketHandler, f as DivaCatalogData, D as DockingPoint, G as Grid, O as OptionCatalogData, R as Rendering, c as Vector2, V as Vector3, i as Vector4, j as creatRenderOrders, d as default, k as getOrigProductId, l as loadAndRepairBasket } from './index-a4f74fa4.js';
1
+ export { h as CatalogPlannerArticleData, C as Cell, e as DivaArticle, g as DivaBasketHandler, f as DivaCatalogData, D as DockingPoint, G as Grid, O as OptionCatalogData, R as Rendering, c as Vector2, V as Vector3, i as Vector4, j as creatRenderOrders, d as default, k as getOrigProductId, l as loadAndRepairBasket } from './index-bcdb077b.js';
2
2
  import '@babel/runtime/helpers/slicedToArray';
3
3
  import '@babel/runtime/helpers/asyncToGenerator';
4
4
  import '@babel/runtime/helpers/classCallCheck';
@@ -29,7 +29,9 @@ export default interface CatalogArticleDataType {
29
29
  decisions: Decision[];
30
30
  hasArticleRelations: boolean;
31
31
  articleRelations?: AccessoireItemType[];
32
- partListArticles?: any[];
32
+ partListArticles?: {
33
+ PartListPos: PartlistPos[];
34
+ }[];
33
35
  bundleRules?: BundleRule[];
34
36
  groupedPartlists?: {
35
37
  [decisionNr: string]: PartlistPos[];