@crystaldesign/web-planner-logic 26.11.0-beta.11 → 26.11.0-beta.13

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 (52) hide show
  1. package/build/cjs/{DivaBoxPlanner-02a2dbbf.js → DivaBoxPlanner-ce0bb2af.js} +123 -44
  2. package/build/cjs/{DivaStandardPlanner-150246c0.js → DivaStandardPlanner-e664710b.js} +2 -2
  3. package/build/cjs/{DoorPlanner-ce630754.js → DoorPlanner-a37c3d62.js} +1 -1
  4. package/build/cjs/{Host3DSignalR-b0b1fb8d.js → Host3DSignalR-a94701fa.js} +1 -1
  5. package/build/cjs/{LiviqueWWSHandler-c11ea7d2.js → LiviqueWWSHandler-f6488fb8.js} +1 -1
  6. package/build/cjs/{PfisterWWSHandler-3c723ecc.js → PfisterWWSHandler-a0d05fa3.js} +1 -1
  7. package/build/cjs/{PlannerHandler2D-6c0324be.js → PlannerHandler2D-fe16c1ce.js} +1 -1
  8. package/build/cjs/{SeriousBasketHandler-d1ae4006.js → SeriousBasketHandler-bc18769e.js} +1 -1
  9. package/build/cjs/{ShelfPlanner-04d98f4d.js → ShelfPlanner-eab7ed23.js} +259 -148
  10. package/build/cjs/{StandardWWSHandler-9b596caf.js → StandardWWSHandler-1ad7e215.js} +1 -1
  11. package/build/cjs/{index-633196ab.js → index-b849f3ec.js} +1014 -980
  12. package/build/cjs/index.js +2 -1
  13. package/build/esm/{DivaBoxPlanner-fa9f6ec6.js → DivaBoxPlanner-f198956e.js} +123 -44
  14. package/build/esm/{DivaStandardPlanner-6c001048.js → DivaStandardPlanner-ef69c7d9.js} +2 -2
  15. package/build/esm/{DoorPlanner-ef9165f9.js → DoorPlanner-b6bbdd8f.js} +1 -1
  16. package/build/esm/{Host3DSignalR-2dc8478a.js → Host3DSignalR-c4b67bb7.js} +1 -1
  17. package/build/esm/{LiviqueWWSHandler-b6e8bf5f.js → LiviqueWWSHandler-5f62a364.js} +1 -1
  18. package/build/esm/{PfisterWWSHandler-54b3e0aa.js → PfisterWWSHandler-cf8dd909.js} +1 -1
  19. package/build/esm/{PlannerHandler2D-0e61311d.js → PlannerHandler2D-88d7f725.js} +1 -1
  20. package/build/esm/{SeriousBasketHandler-7b097870.js → SeriousBasketHandler-5f29e886.js} +1 -1
  21. package/build/esm/{ShelfPlanner-f3e86534.js → ShelfPlanner-05d57e72.js} +259 -148
  22. package/build/esm/{StandardWWSHandler-4b0caefd.js → StandardWWSHandler-a9f0e1f8.js} +1 -1
  23. package/build/esm/{index-6c8de812.js → index-224d69f7.js} +1014 -980
  24. package/build/esm/index.js +1 -1
  25. package/build/types/web-planner-logic/src/index.d.ts +4 -2
  26. package/build/types/web-planner-logic/src/index.d.ts.map +1 -1
  27. package/build/types/web-planner-logic/src/interface/Articles/ArticleDataType.d.ts +13 -0
  28. package/build/types/web-planner-logic/src/interface/Articles/ArticleDataType.d.ts.map +1 -1
  29. package/build/types/web-planner-logic/src/interface/webPlannerParams/WebPlannerParamsType.d.ts +1 -0
  30. package/build/types/web-planner-logic/src/interface/webPlannerParams/WebPlannerParamsType.d.ts.map +1 -1
  31. package/build/types/web-planner-logic/src/logic/Article/Engine/ArticleEngine.d.ts +4 -0
  32. package/build/types/web-planner-logic/src/logic/Article/Engine/ArticleEngine.d.ts.map +1 -1
  33. package/build/types/web-planner-logic/src/logic/Article/Engine/IDMArticleEngine.d.ts +12 -2
  34. package/build/types/web-planner-logic/src/logic/Article/Engine/IDMArticleEngine.d.ts.map +1 -1
  35. package/build/types/web-planner-logic/src/logic/ConfigTree/Shelfplanner/ShelfPlanner.d.ts +20 -0
  36. package/build/types/web-planner-logic/src/logic/ConfigTree/Shelfplanner/ShelfPlanner.d.ts.map +1 -1
  37. package/build/types/web-planner-logic/src/logic/ConfigTree/Shelfplanner/ShelfPlannerGrid.d.ts +19 -1
  38. package/build/types/web-planner-logic/src/logic/ConfigTree/Shelfplanner/ShelfPlannerGrid.d.ts.map +1 -1
  39. package/build/types/web-planner-logic/src/logic/DivaApiHandler.d.ts +12 -0
  40. package/build/types/web-planner-logic/src/logic/DivaApiHandler.d.ts.map +1 -1
  41. package/build/types/web-planner-logic/src/logic/DivaWebPlanner.d.ts +95 -92
  42. package/build/types/web-planner-logic/src/logic/DivaWebPlanner.d.ts.map +1 -1
  43. package/build/types/web-planner-logic/src/logic/Planner/BoxPlanner/ConstructionRulesHandler.d.ts +19 -0
  44. package/build/types/web-planner-logic/src/logic/Planner/BoxPlanner/ConstructionRulesHandler.d.ts.map +1 -1
  45. package/build/types/web-planner-logic/src/logic/Planner/BoxPlanner/DivaBoxPlanner.d.ts +5 -0
  46. package/build/types/web-planner-logic/src/logic/Planner/BoxPlanner/DivaBoxPlanner.d.ts.map +1 -1
  47. package/build/types/web-planner-logic/src/model/Planner/PlannerElementData.d.ts.map +1 -1
  48. package/build/types/web-planner-logic/src/test/engineFeatureDefaults.test.d.ts +2 -0
  49. package/build/types/web-planner-logic/src/test/engineFeatureDefaults.test.d.ts.map +1 -0
  50. package/build/types/web-planner-logic/src/test/idmPlannerPaletteView.test.d.ts +2 -0
  51. package/build/types/web-planner-logic/src/test/idmPlannerPaletteView.test.d.ts.map +1 -0
  52. package/package.json +2 -2
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var index = require('./index-633196ab.js');
5
+ var index = require('./index-b849f3ec.js');
6
6
  var planner2dCore = require('@crystaldesign/planner-2d-core');
7
7
  require('@babel/runtime/helpers/slicedToArray');
8
8
  require('@babel/runtime/helpers/asyncToGenerator');
@@ -29,6 +29,7 @@ exports.ArtifactGenerationError = index.ArtifactGenerationError;
29
29
  exports.CatalogPlannerArticleData = index.CatalogPlannerArticleData;
30
30
  exports.Cell = index.Cell;
31
31
  exports.DivaArticle = index.DivaArticle;
32
+ exports.DivaArticleHandler = index.articleHandlerInstance;
32
33
  exports.DivaBasketHandler = index.DivaBasketHandler;
33
34
  exports.DivaCatalogData = index.DivaCatalogData;
34
35
  exports.DivaSetHandler = index.setHandlerInstance;
@@ -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-6c8de812.js';
6
+ import { c as Vector2, V as Vector3, P as PlannerElementData, B as BoundingBox } from './index-224d69f7.js';
7
7
  import DivaUtils, { DivaError, md5 } from '@crystaldesign/diva-utils';
8
8
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
9
9
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
10
- import { d as dockingPointHandlerInst, h as handler2D } from './PlannerHandler2D-0e61311d.js';
10
+ import { d as dockingPointHandlerInst, h as handler2D } from './PlannerHandler2D-88d7f725.js';
11
11
  import '@babel/runtime/helpers/objectWithoutProperties';
12
12
  import 'axios';
13
13
  import '@crystaldesign/basket-model';
@@ -1778,6 +1778,15 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
1778
1778
  _defineProperty(this, "hideOptionsForConstruction", void 0);
1779
1779
  //This saves an array of options per elementID that are hidden due to construction rules
1780
1780
  _defineProperty(this, "partlistHelper", void 0);
1781
+ /**
1782
+ * Debug trail of the LAST updateOptionLogicBoxPlanner run: one entry per option
1783
+ * show/hide/set, tagged with the pipeline phase that caused it. The box planner
1784
+ * has no other record of WHY an option was hidden — this is the equivalent of the
1785
+ * decision engines' decisionDebugStack. Reset at the start of every run; entries
1786
+ * are tiny, so it is always recorded (no logDecisions gate reachable here).
1787
+ */
1788
+ _defineProperty(this, "constructionDebugStack", []);
1789
+ _defineProperty(this, "debugPhase", '');
1781
1790
  /**
1782
1791
  * This function looks what value the option has in the current OptionHandler
1783
1792
  * @param elementId ElementId
@@ -1822,6 +1831,13 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
1822
1831
  _this.hideOptionsForConstruction.get(elementId).splice(index, 1);
1823
1832
  }
1824
1833
  }
1834
+ _this.constructionDebugStack.push({
1835
+ phase: _this.debugPhase,
1836
+ elementId: elementId,
1837
+ action: 'set',
1838
+ option: option,
1839
+ value: optionValue
1840
+ });
1825
1841
  });
1826
1842
  /**
1827
1843
  * This function returns true, if the element has a bottom Plate. Elements with bottom plate are e.g. Offenes Fach oder Schubladen.
@@ -1948,6 +1964,13 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
1948
1964
  if (!optionHandler.has(elementId)) optionHandler.set(elementId, new Map());
1949
1965
  (_optionHandler$get2 = optionHandler.get(elementId)) === null || _optionHandler$get2 === void 0 || _optionHandler$get2.set(option, curOptVisibilityInfo.doShow);
1950
1966
  }
1967
+ this.constructionDebugStack.push({
1968
+ phase: this.debugPhase,
1969
+ elementId: elementId,
1970
+ action: 'show',
1971
+ option: option,
1972
+ value: curOptVisibilityInfo.doShow
1973
+ });
1951
1974
  //initCfgValues mit allen gesammelten Optionen pro Element aufrufen
1952
1975
  //Hier setze ich den Optionswert. Er darf nicht mehr geändert werden von Außen. Hier müsste in der Palette der auch gesetzt werden.
1953
1976
  //Es kann sein, dass es im Konfigurationsbaum eine andere Option gibt (Glasdecke), die abhängig ist von einer Option, die nur beim Kopieren eines Elementes gesetzt wird (OPTOBEN).
@@ -1978,6 +2001,13 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
1978
2001
  (_optionHandler$get3 = optionHandler.get(elementId)) === null || _optionHandler$get3 === void 0 || _optionHandler$get3.set(option, curOptVisibilityInfo.doHide);
1979
2002
  if (!this.hideOptionsForConstruction.has(elementId)) this.hideOptionsForConstruction.set(elementId, []);
1980
2003
  (_this$hideOptionsForC2 = this.hideOptionsForConstruction.get(elementId)) === null || _this$hideOptionsForC2 === void 0 || _this$hideOptionsForC2.push(option);
2004
+ this.constructionDebugStack.push({
2005
+ phase: this.debugPhase,
2006
+ elementId: elementId,
2007
+ action: 'hide',
2008
+ option: option,
2009
+ value: curOptVisibilityInfo.doHide
2010
+ });
1981
2011
  }
1982
2012
  }, {
1983
2013
  key: "setOptionDoCustom",
@@ -1990,6 +2020,13 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
1990
2020
  (_optionHandler$get4 = optionHandler.get(elementId)) === null || _optionHandler$get4 === void 0 || _optionHandler$get4.set(option, curOptVisibilityInfo[val]);
1991
2021
  if (!this.hideOptionsForConstruction.has(elementId)) this.hideOptionsForConstruction.set(elementId, []);
1992
2022
  (_this$hideOptionsForC3 = this.hideOptionsForConstruction.get(elementId)) === null || _this$hideOptionsForC3 === void 0 || _this$hideOptionsForC3.push(option);
2023
+ this.constructionDebugStack.push({
2024
+ phase: this.debugPhase,
2025
+ elementId: elementId,
2026
+ action: 'set',
2027
+ option: option,
2028
+ value: curOptVisibilityInfo[val]
2029
+ });
1993
2030
  }
1994
2031
 
1995
2032
  //Returns all
@@ -3187,6 +3224,20 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
3187
3224
  return this.constructionRulesLoaded;
3188
3225
  }
3189
3226
 
3227
+ /** The raw construction-rules JSON currently driving this planner (undefined until loaded). */
3228
+ }, {
3229
+ key: "getConstructionRules",
3230
+ value: function getConstructionRules() {
3231
+ return this.constructionRules;
3232
+ }
3233
+
3234
+ /** Options currently hidden per elementId because of construction rules (live state, not a copy). */
3235
+ }, {
3236
+ key: "getHideOptionsForConstruction",
3237
+ value: function getHideOptionsForConstruction() {
3238
+ return this.hideOptionsForConstruction;
3239
+ }
3240
+
3190
3241
  //Die gleiche Option kann sowohl nach rechts als auch nach oben gesetzt werden (Rahmen rechts oben). Wenn das der Fall ist, darf wenn es rechts keinen Nachbarn gibt nicht mit doShow überschrieben werden, wenn es vorher bei TOP versteckt wurde
3191
3242
  //Deshalb darf es nicht angeschalten werden, wenn es in der gleichen Runde ausgeschalten wurde
3192
3243
  /*
@@ -3221,6 +3272,8 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
3221
3272
  resultMessage = undefined;
3222
3273
  LOG$2.debug('BoxPlanner - updateOptionLogicInGrid start updateOptionLogicInGrid');
3223
3274
  optionHandler = new Map(); //Saved die Optionen für dieses Update. Pro elementId und dann für jede Option den Optionvalue
3275
+ this.constructionDebugStack = [];
3276
+ this.debugPhase = 'resetCornerElements';
3224
3277
  //Das wird aufgerufen, wenn man alle Elemente auf einmal konfigrieren will, aber auf eine Ecke klickt. Das ist ungültig. Alle Ecken werden zum offenen Fach zurückgesetzt. Eentuen kann man hier noch meldung ausgeben
3225
3278
  if (forceResetCornerElements) {
3226
3279
  allElements = boxPlannerGrid.getAllElementIdsInGrid();
@@ -3232,11 +3285,16 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
3232
3285
  }
3233
3286
  }
3234
3287
  }
3288
+ this.debugPhase = 'setAllOptToDefault';
3235
3289
  resultMessage = this.setAllOptToDefault(boxPlannerGrid, optionHandler, changedOPTs, targetElements);
3290
+ this.debugPhase = 'correctAffectedElementsByOption';
3236
3291
  this.doCorrectAffectedElementsByOption(boxPlannerGrid, optionHandler, changedOPTs, targetElements);
3292
+ this.debugPhase = 'correctBottom';
3237
3293
  this.correctBottom(boxPlannerGrid, optionHandler, false);
3238
3294
  if (boxPlannerGrid.getPlannerHasActiveBackside()) this.correctBottom(boxPlannerGrid, optionHandler, true);
3295
+ this.debugPhase = 'correctSeries';
3239
3296
  this.correctSeries(boxPlannerGrid, optionHandler);
3297
+ this.debugPhase = 'correctSimpleOpt(neighborRules)';
3240
3298
  for (i = 0; i < boxPlannerGrid.getColumnCount(); i++) {
3241
3299
  for (j = 0; j < boxPlannerGrid.getRowCount(i, false); j++) {
3242
3300
  this.correctSimpleOpt(i, j, boxPlannerGrid, optionHandler, false);
@@ -3249,83 +3307,91 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
3249
3307
  }
3250
3308
  }
3251
3309
  }
3310
+ this.debugPhase = 'correctForceOpt+neighborOPT';
3252
3311
  i = 0;
3253
- case 17:
3312
+ case 25:
3254
3313
  if (!(i < boxPlannerGrid.getColumnCount())) {
3255
- _context.next = 31;
3314
+ _context.next = 39;
3256
3315
  break;
3257
3316
  }
3258
3317
  j = 0;
3259
- case 19:
3318
+ case 27:
3260
3319
  if (!(j < boxPlannerGrid.getRowCount(i, false))) {
3261
- _context.next = 28;
3320
+ _context.next = 36;
3262
3321
  break;
3263
3322
  }
3264
3323
  elementId = (_boxPlannerGrid$getPl2 = boxPlannerGrid.getPlannerElementAtGridPos(i, j, false)) === null || _boxPlannerGrid$getPl2 === void 0 ? void 0 : _boxPlannerGrid$getPl2.ElementId;
3265
3324
  if (elementId) {
3266
- _context.next = 23;
3325
+ _context.next = 31;
3267
3326
  break;
3268
3327
  }
3269
- return _context.abrupt("continue", 25);
3270
- case 23:
3328
+ return _context.abrupt("continue", 33);
3329
+ case 31:
3271
3330
  this.correctForceOptOfElement(elementId, boxPlannerGrid, optionHandler, false);
3272
3331
  this.correctNeighborCustomOLTs(elementId, boxPlannerGrid, optionHandler);
3273
- case 25:
3332
+ case 33:
3274
3333
  j++;
3275
- _context.next = 19;
3334
+ _context.next = 27;
3276
3335
  break;
3277
- case 28:
3336
+ case 36:
3278
3337
  i++;
3279
- _context.next = 17;
3338
+ _context.next = 25;
3280
3339
  break;
3281
- case 31:
3340
+ case 39:
3282
3341
  if (!boxPlannerGrid.getPlannerHasActiveBackside()) {
3283
- _context.next = 47;
3342
+ _context.next = 55;
3284
3343
  break;
3285
3344
  }
3286
3345
  i = boxPlannerGrid.getColumnCount() - 1;
3287
- case 33:
3346
+ case 41:
3288
3347
  if (!(i >= 0)) {
3289
- _context.next = 47;
3348
+ _context.next = 55;
3290
3349
  break;
3291
3350
  }
3292
3351
  j = 0;
3293
- case 35:
3352
+ case 43:
3294
3353
  if (!(j < boxPlannerGrid.getRowCount(i, false))) {
3295
- _context.next = 44;
3354
+ _context.next = 52;
3296
3355
  break;
3297
3356
  }
3298
3357
  _elementId = (_boxPlannerGrid$getPl3 = boxPlannerGrid.getPlannerElementAtGridPos(i, j, false)) === null || _boxPlannerGrid$getPl3 === void 0 ? void 0 : _boxPlannerGrid$getPl3.ElementId;
3299
3358
  if (_elementId) {
3300
- _context.next = 39;
3359
+ _context.next = 47;
3301
3360
  break;
3302
3361
  }
3303
- return _context.abrupt("continue", 41);
3304
- case 39:
3362
+ return _context.abrupt("continue", 49);
3363
+ case 47:
3305
3364
  this.correctForceOptOfElement(_elementId, boxPlannerGrid, optionHandler, true);
3306
3365
  this.correctNeighborCustomOLTs(_elementId, boxPlannerGrid, optionHandler);
3307
- case 41:
3366
+ case 49:
3308
3367
  j++;
3309
- _context.next = 35;
3368
+ _context.next = 43;
3310
3369
  break;
3311
- case 44:
3370
+ case 52:
3312
3371
  i--;
3313
- _context.next = 33;
3372
+ _context.next = 41;
3314
3373
  break;
3315
- case 47:
3374
+ case 55:
3375
+ this.debugPhase = 'correctFoot';
3316
3376
  this.correctFoot(boxPlannerGrid, optionHandler);
3377
+ this.debugPhase = 'correctLadder';
3317
3378
  this.correctLadder(boxPlannerGrid, optionHandler);
3379
+ this.debugPhase = 'correctOptionsInfluencedByDimensions';
3318
3380
  this.correctOptionsInfluencedByDimensions(boxPlannerGrid, optionHandler, changedOPTs);
3381
+ this.debugPhase = 'correctOverHangingElement';
3319
3382
  this.correctOverHangingElement((_targetElements = targetElements) === null || _targetElements === void 0 ? void 0 : _targetElements[0], boxPlannerGrid, optionHandler, changedOPTs);
3383
+ this.debugPhase = 'calculateKnots';
3320
3384
  this.partlistHelper.calculateKnots(boxPlannerGrid, optionHandler);
3385
+ this.debugPhase = 'calculateRahmen';
3321
3386
  this.partlistHelper.calculateRahmen(boxPlannerGrid, optionHandler);
3322
3387
 
3323
3388
  // update height after we corrected the foot since we need the correct one for the CoverPlate calc
3324
3389
  doChangeRetailArticleNumbers = this.doChangeRetailArticleNumbers(boxPlannerGrid, optionHandler);
3325
- _context.next = 56;
3390
+ _context.next = 70;
3326
3391
  return this.updateCfgValuesByPlanner(optionHandler, undefined, this.constructionRules.partlistRules.bundleRules, doChangeRetailArticleNumbers);
3327
- case 56:
3392
+ case 70:
3328
3393
  this.updateGridElementDimensions();
3394
+ this.debugPhase = 'correctCoverPlate';
3329
3395
  if (this.constructionRules.coverPlateRule) {
3330
3396
  _iterator = _createForOfIteratorHelper$1(this.constructionRules.coverPlateRule);
3331
3397
  try {
@@ -3339,46 +3405,47 @@ var ConstructionRulesHandler = /*#__PURE__*/function () {
3339
3405
  _iterator.f();
3340
3406
  }
3341
3407
  }
3408
+ this.debugPhase = 'correctBack';
3342
3409
  i = 0;
3343
- case 59:
3410
+ case 75:
3344
3411
  if (!(i < boxPlannerGrid.getColumnCount())) {
3345
- _context.next = 72;
3412
+ _context.next = 88;
3346
3413
  break;
3347
3414
  }
3348
3415
  j = 0;
3349
- case 61:
3416
+ case 77:
3350
3417
  if (!(j < boxPlannerGrid.getRowCount(i, false))) {
3351
- _context.next = 69;
3418
+ _context.next = 85;
3352
3419
  break;
3353
3420
  }
3354
3421
  _elementId2 = (_boxPlannerGrid$getPl4 = boxPlannerGrid.getPlannerElementAtGridPos(i, j, false)) === null || _boxPlannerGrid$getPl4 === void 0 ? void 0 : _boxPlannerGrid$getPl4.getElementId();
3355
3422
  if (_elementId2) {
3356
- _context.next = 65;
3423
+ _context.next = 81;
3357
3424
  break;
3358
3425
  }
3359
- return _context.abrupt("continue", 66);
3360
- case 65:
3426
+ return _context.abrupt("continue", 82);
3427
+ case 81:
3361
3428
  this.correctBack(boxPlannerGrid, optionHandler, _elementId2);
3362
- case 66:
3429
+ case 82:
3363
3430
  j++;
3364
- _context.next = 61;
3431
+ _context.next = 77;
3365
3432
  break;
3366
- case 69:
3433
+ case 85:
3367
3434
  i++;
3368
- _context.next = 59;
3435
+ _context.next = 75;
3369
3436
  break;
3370
- case 72:
3437
+ case 88:
3371
3438
  doChangeRetailArticleNumbers = this.doChangeRetailArticleNumbers(boxPlannerGrid, optionHandler);
3372
- _context.next = 75;
3439
+ _context.next = 91;
3373
3440
  return this.updateCfgValuesByPlanner(optionHandler, undefined, this.constructionRules.partlistRules.bundleRules, doChangeRetailArticleNumbers);
3374
- case 75:
3441
+ case 91:
3375
3442
  this.updateIDMSpecificFeatures();
3376
3443
  this.updateGridElementDimensions();
3377
3444
  boxPlannerGrid.updateWorldPosOfElements();
3378
3445
  LOG$2.debug('BoxPlanner updateOptionLogic - Duration after setting Option Values of all Articles: ' + (new Date().getTime() - startTime));
3379
3446
  LOG$2.debug('BoxPlanner updateOptionLogic - Duration after setting updating configurator: ' + (new Date().getTime() - startTime));
3380
3447
  return _context.abrupt("return", resultMessage);
3381
- case 81:
3448
+ case 97:
3382
3449
  case "end":
3383
3450
  return _context.stop();
3384
3451
  }
@@ -5661,7 +5728,19 @@ var DivaBoxPlanner = /*#__PURE__*/function () {
5661
5728
  };
5662
5729
  this.boxPlannerGrid = new BoxPlannerGrid(gridSetupParams, this.set.getValueOfOptionOfArticle);
5663
5730
  }
5731
+
5732
+ /** Read access for diagnosis tools (analyzer): the grid topology and the construction-rules state incl. debug trail. */
5664
5733
  return _createClass(DivaBoxPlanner, [{
5734
+ key: "getBoxPlannerGrid",
5735
+ value: function getBoxPlannerGrid() {
5736
+ return this.boxPlannerGrid;
5737
+ }
5738
+ }, {
5739
+ key: "getConstructionRulesHandler",
5740
+ value: function getConstructionRulesHandler() {
5741
+ return this.constructionRulesHandler;
5742
+ }
5743
+ }, {
5665
5744
  key: "initPlanner",
5666
5745
  value: function () {
5667
5746
  var _initPlanner = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(setPlanData) {
@@ -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, P as PlannerElementData, B as BoundingBox } from './index-6c8de812.js';
6
+ import { V as Vector3, P as PlannerElementData, B as BoundingBox } from './index-224d69f7.js';
7
7
  import DivaUtils, { DivaError, md5 } from '@crystaldesign/diva-utils';
8
8
  import { computeDockedTransform } from '@crystaldesign/planner-2d-core';
9
- import { d as dockingPointHandlerInst, h as handler2D } from './PlannerHandler2D-0e61311d.js';
9
+ import { d as dockingPointHandlerInst, h as handler2D } from './PlannerHandler2D-88d7f725.js';
10
10
  import '@babel/runtime/helpers/slicedToArray';
11
11
  import '@babel/runtime/helpers/objectWithoutProperties';
12
12
  import '@babel/runtime/helpers/toConsumableArray';
@@ -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-6c8de812.js';
4
+ import './index-224d69f7.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-6c8de812.js';
6
+ import { R as Rendering, H as HQRenderScript } from './index-224d69f7.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-6c8de812.js';
3
+ import './index-224d69f7.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 { a as articleHandlerInstance } from './index-6c8de812.js';
3
+ import { a as articleHandlerInstance } from './index-224d69f7.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';
@@ -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 { c as Vector2 } from './index-6c8de812.js';
6
+ import { c as Vector2 } from './index-224d69f7.js';
7
7
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
8
8
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
9
9
  import DivaUtils, { DivaError } from '@crystaldesign/diva-utils';
@@ -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-6c8de812.js';
4
+ import { s as summaryHandlerInstance } from './index-224d69f7.js';
5
5
  import DivaUtils from '@crystaldesign/diva-utils';
6
6
  import '@babel/runtime/helpers/slicedToArray';
7
7
  import '@babel/runtime/helpers/asyncToGenerator';