@crystaldesign/web-planner-logic 26.12.0-beta.38 → 26.12.0-beta.39

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 (27) hide show
  1. package/build/cjs/{DivaBoxPlanner-8b312c16.js → DivaBoxPlanner-eb204f64.js} +2 -2
  2. package/build/cjs/{DivaStandardPlanner-320d838c.js → DivaStandardPlanner-024a707c.js} +2 -2
  3. package/build/cjs/{DoorPlanner-af0ee118.js → DoorPlanner-5fb30a3b.js} +1 -1
  4. package/build/cjs/{Host3DSignalR-fedcf409.js → Host3DSignalR-053d1f70.js} +1 -1
  5. package/build/cjs/{LiviqueWWSHandler-0fa91edd.js → LiviqueWWSHandler-010c4674.js} +1 -1
  6. package/build/cjs/{PfisterWWSHandler-d12481b4.js → PfisterWWSHandler-028180d3.js} +1 -1
  7. package/build/cjs/{PlannerHandler2D-6d3fbff5.js → PlannerHandler2D-3641e717.js} +1 -1
  8. package/build/cjs/{SeriousBasketHandler-5a7557f2.js → SeriousBasketHandler-ce8059dd.js} +1 -1
  9. package/build/cjs/{ShelfPlanner-7475625e.js → ShelfPlanner-61795dcc.js} +1 -1
  10. package/build/cjs/{StandardWWSHandler-d419265e.js → StandardWWSHandler-45060aea.js} +1 -1
  11. package/build/cjs/{index-4d164cf3.js → index-92b3f811.js} +57 -48
  12. package/build/cjs/index.js +1 -1
  13. package/build/esm/{DivaBoxPlanner-0223e675.js → DivaBoxPlanner-e87a4462.js} +2 -2
  14. package/build/esm/{DivaStandardPlanner-15ea500c.js → DivaStandardPlanner-d24209f4.js} +2 -2
  15. package/build/esm/{DoorPlanner-efbf6110.js → DoorPlanner-1664243f.js} +1 -1
  16. package/build/esm/{Host3DSignalR-df61538e.js → Host3DSignalR-746d0063.js} +1 -1
  17. package/build/esm/{LiviqueWWSHandler-38987d33.js → LiviqueWWSHandler-7326190a.js} +1 -1
  18. package/build/esm/{PfisterWWSHandler-e7e34cd7.js → PfisterWWSHandler-9219a61d.js} +1 -1
  19. package/build/esm/{PlannerHandler2D-26261a6f.js → PlannerHandler2D-3367fa6b.js} +1 -1
  20. package/build/esm/{SeriousBasketHandler-001830c0.js → SeriousBasketHandler-da02a5b3.js} +1 -1
  21. package/build/esm/{ShelfPlanner-dbff1180.js → ShelfPlanner-f35a2bb8.js} +1 -1
  22. package/build/esm/{StandardWWSHandler-2987d8a0.js → StandardWWSHandler-b166bb90.js} +1 -1
  23. package/build/esm/{index-7437d23b.js → index-90706aea.js} +57 -48
  24. package/build/esm/index.js +1 -1
  25. package/build/types/web-planner-logic/src/logic/Article/DivaArticleHandler.d.ts +8 -3
  26. package/build/types/web-planner-logic/src/logic/Article/DivaArticleHandler.d.ts.map +1 -1
  27. package/package.json +3 -3
@@ -5,11 +5,11 @@ 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-4d164cf3.js');
8
+ var index = require('./index-92b3f811.js');
9
9
  var DivaUtils = require('@crystaldesign/diva-utils');
10
10
  var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
11
11
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
12
- var PlannerHandler2D = require('./PlannerHandler2D-6d3fbff5.js');
12
+ var PlannerHandler2D = require('./PlannerHandler2D-3641e717.js');
13
13
  require('@babel/runtime/helpers/objectWithoutProperties');
14
14
  require('axios');
15
15
  require('@crystaldesign/planner-2d-core');
@@ -6,10 +6,10 @@ 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-4d164cf3.js');
9
+ var index = require('./index-92b3f811.js');
10
10
  var DivaUtils = require('@crystaldesign/diva-utils');
11
11
  var planner2dCore = require('@crystaldesign/planner-2d-core');
12
- var PlannerHandler2D = require('./PlannerHandler2D-6d3fbff5.js');
12
+ var PlannerHandler2D = require('./PlannerHandler2D-3641e717.js');
13
13
  require('@babel/runtime/helpers/slicedToArray');
14
14
  require('@babel/runtime/helpers/objectWithoutProperties');
15
15
  require('axios');
@@ -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-4d164cf3.js');
6
+ require('./index-92b3f811.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-4d164cf3.js');
8
+ var index = require('./index-92b3f811.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-4d164cf3.js');
5
+ require('./index-92b3f811.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-4d164cf3.js');
5
+ var index = require('./index-92b3f811.js');
6
6
  var basketModel = require('@crystaldesign/basket-model');
7
7
  var DivaUtils = require('@crystaldesign/diva-utils');
8
8
  require('@babel/runtime/helpers/slicedToArray');
@@ -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-4d164cf3.js');
8
+ var index = require('./index-92b3f811.js');
9
9
  var _possibleConstructorReturn = require('@babel/runtime/helpers/possibleConstructorReturn');
10
10
  var _getPrototypeOf = require('@babel/runtime/helpers/getPrototypeOf');
11
11
  var _get = require('@babel/runtime/helpers/get');
@@ -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-4d164cf3.js');
6
+ var index = require('./index-92b3f811.js');
7
7
  var DivaUtils = require('@crystaldesign/diva-utils');
8
8
  require('@babel/runtime/helpers/slicedToArray');
9
9
  require('@babel/runtime/helpers/asyncToGenerator');
@@ -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-4d164cf3.js');
9
+ var index = require('./index-92b3f811.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-4d164cf3.js');
5
+ require('./index-92b3f811.js');
6
6
  require('@babel/runtime/helpers/slicedToArray');
7
7
  require('@babel/runtime/helpers/asyncToGenerator');
8
8
  require('@babel/runtime/helpers/defineProperty');
@@ -32683,7 +32683,7 @@ var DivaArticle = /*#__PURE__*/function () {
32683
32683
  break;
32684
32684
  }
32685
32685
  _context.next = 4;
32686
- return Promise.resolve().then(function () { return require('./ShelfPlanner-7475625e.js'); });
32686
+ return Promise.resolve().then(function () { return require('./ShelfPlanner-61795dcc.js'); });
32687
32687
  case 4:
32688
32688
  _yield$import = _context.sent;
32689
32689
  ShelfPlanner = _yield$import["default"];
@@ -34481,7 +34481,7 @@ var DivaArticleHandler = /*#__PURE__*/function () {
34481
34481
  return _regeneratorRuntime__default["default"].wrap(function _callee15$(_context16) {
34482
34482
  while (1) switch (_context16.prev = _context16.next) {
34483
34483
  case 0:
34484
- if (this.checkPartlistDepth(article, doLoadItem)) {
34484
+ if (this.checkPartlistCycle(article, doLoadItem)) {
34485
34485
  _context16.next = 2;
34486
34486
  break;
34487
34487
  }
@@ -34536,48 +34536,57 @@ var DivaArticleHandler = /*#__PURE__*/function () {
34536
34536
  return loadPartlistArticle;
34537
34537
  }()
34538
34538
  /**
34539
- * Whether the child may still be loaded. FALSE means the nesting limit is reached — the caller must stop, because
34540
- * a cyclic partlist re-enters `loadPartlistArticle` and this is the only thing that ends the recursion.
34539
+ * Whether the child may be loaded without closing a loop. FALSE means the child is the article itself or one of its
34540
+ * ancestors (same catalog): a partlist component carries the partlist it is a position of, so loading it would load
34541
+ * that partlist again and again. The load stops at the first repetition and names the article that closes the loop.
34542
+ * Every endless partlist chain repeats an (article, catalog) pair among its ancestors, so this check is also what
34543
+ * ends the recursion.
34541
34544
  */
34542
34545
  }, {
34543
- key: "checkPartlistDepth",
34544
- value: function checkPartlistDepth(article, doLoadItem) {
34545
- var PARTLIST_MAX_DEPTH = 10;
34546
- var depth = 0;
34547
- var current = article.partListParentArticle;
34548
- while (current) {
34549
- depth++;
34550
- current = current.partListParentArticle;
34551
- }
34552
- if (depth >= PARTLIST_MAX_DEPTH) {
34553
- var _article$set$actions;
34554
- var ancestorChain = this.collectAncestorChain(article).map(function (a) {
34555
- return a.articleCodex;
34556
- });
34557
- LOG$e.error(new DivaUtils.DivaError('Partlist nesting exceeded the maximum allowed depth – aborting load', {
34558
- custom: {
34559
- maxDepth: PARTLIST_MAX_DEPTH,
34560
- currentDepth: depth,
34561
- articleCodexToLoad: doLoadItem.ArticleCodex,
34562
- parentBasketId: article.basketId,
34563
- parentArticleCodex: article.articleCodex,
34564
- ancestorChain: ancestorChain
34565
- }
34566
- }));
34567
- if ((_article$set$actions = article.set.actions) !== null && _article$set$actions !== void 0 && _article$set$actions.userHasPermission('advancedconfigurator')) {
34568
- var _article$set$actions2, _article$set$actions3;
34569
- (_article$set$actions2 = article.set.actions) === null || _article$set$actions2 === void 0 || (_article$set$actions3 = _article$set$actions2.openModal) === null || _article$set$actions3 === void 0 || _article$set$actions3.call(_article$set$actions2, {
34570
- title: 'Partlist nesting too deep',
34571
- text: "Aborted loading partlist article \"".concat(doLoadItem.ArticleCodex, "\" because the partlist nesting exceeded the maximum allowed depth of ").concat(PARTLIST_MAX_DEPTH, ". ") + "This usually means an article references itself or an ancestor as a partlist child. " + "Parent article: ".concat(article.articleCodex, ". Ancestor chain: ").concat(ancestorChain.join(' -> '), "."),
34572
- accept: true
34573
- });
34574
- return false;
34575
- } else {
34576
- article.set.getSetState.errorHandler(new DivaUtils.DivaError('Partlist nesting exceeded the maximum allowed depth – aborting load'));
34577
- return false;
34546
+ key: "checkPartlistCycle",
34547
+ value: function checkPartlistCycle(article, doLoadItem) {
34548
+ var ancestorChain = this.collectAncestorChain(article);
34549
+ var closesLoop = ancestorChain.some(function (ancestor) {
34550
+ return ancestor.articleCodex === doLoadItem.ArticleCodex && String(ancestor.catalogCodex) === String(doLoadItem.CatalogCodex);
34551
+ });
34552
+ if (!closesLoop) return true;
34553
+ var chain = [].concat(_toConsumableArray__default["default"](ancestorChain.reverse().map(function (ancestor) {
34554
+ return ancestor.articleCodex;
34555
+ })), [doLoadItem.ArticleCodex]).join(' → ');
34556
+ LOG$e.error(new DivaUtils.DivaError('Partlist contains itself – aborting load', {
34557
+ custom: {
34558
+ articleCodexToLoad: doLoadItem.ArticleCodex,
34559
+ catalogCodex: doLoadItem.CatalogCodex,
34560
+ parentBasketId: article.basketId,
34561
+ chain: chain
34578
34562
  }
34563
+ }));
34564
+ if (this.showsPartlistHint(article)) {
34565
+ var _article$set$actions, _article$set$actions$, _i18n$t, _i18n$t2;
34566
+ var i18n = article.set.api.getI18n();
34567
+ (_article$set$actions = article.set.actions) === null || _article$set$actions === void 0 || (_article$set$actions$ = _article$set$actions.openModal) === null || _article$set$actions$ === void 0 || _article$set$actions$.call(_article$set$actions, {
34568
+ title: (_i18n$t = i18n === null || i18n === void 0 ? void 0 : i18n.t('configurator.partlist_cycle_title', {
34569
+ defaultValue: 'Partlist contains itself'
34570
+ })) !== null && _i18n$t !== void 0 ? _i18n$t : 'Partlist contains itself',
34571
+ text: (_i18n$t2 = i18n === null || i18n === void 0 ? void 0 : i18n.t('configurator.partlist_cycle_text', {
34572
+ defaultValue: 'The partlist article {{article}} references a partlist that contains itself or one of its parent articles as a position. Remove the partlist from this article. Chain: {{chain}}',
34573
+ article: doLoadItem.ArticleCodex,
34574
+ chain: chain
34575
+ })) !== null && _i18n$t2 !== void 0 ? _i18n$t2 : "Partlist contains itself: ".concat(chain),
34576
+ accept: true
34577
+ });
34578
+ } else {
34579
+ article.set.getSetState.errorHandler(new DivaUtils.DivaError('Partlist contains itself – aborting load'));
34579
34580
  }
34580
- return true;
34581
+ return false;
34582
+ }
34583
+
34584
+ /** Partlist data hints are meant for the data maintainer: always in the backoffice preview, live only with the advanced permission. */
34585
+ }, {
34586
+ key: "showsPartlistHint",
34587
+ value: function showsPartlistHint(article) {
34588
+ var _article$set$actions2;
34589
+ return !article.set.api.isSeller || !!((_article$set$actions2 = article.set.actions) !== null && _article$set$actions2 !== void 0 && _article$set$actions2.userHasPermission('advancedconfigurator'));
34581
34590
  }
34582
34591
  }, {
34583
34592
  key: "collectAncestorChain",
@@ -41320,7 +41329,7 @@ var DivaSet = /*#__PURE__*/function () {
41320
41329
  break;
41321
41330
  }
41322
41331
  _context5.next = 3;
41323
- return Promise.resolve().then(function () { return require('./DoorPlanner-af0ee118.js'); });
41332
+ return Promise.resolve().then(function () { return require('./DoorPlanner-5fb30a3b.js'); });
41324
41333
  case 3:
41325
41334
  _yield$import = _context5.sent;
41326
41335
  DoorPlanner = _yield$import["default"];
@@ -49274,7 +49283,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
49274
49283
  break;
49275
49284
  case 3:
49276
49285
  _context12.next = 5;
49277
- return Promise.resolve().then(function () { return require('./PfisterWWSHandler-d12481b4.js'); });
49286
+ return Promise.resolve().then(function () { return require('./PfisterWWSHandler-028180d3.js'); });
49278
49287
  case 5:
49279
49288
  _yield$import = _context12.sent;
49280
49289
  PfisterWWSHandler = _yield$import["default"];
@@ -49282,7 +49291,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
49282
49291
  return _context12.abrupt("break", 27);
49283
49292
  case 9:
49284
49293
  _context12.next = 11;
49285
- return Promise.resolve().then(function () { return require('./LiviqueWWSHandler-0fa91edd.js'); });
49294
+ return Promise.resolve().then(function () { return require('./LiviqueWWSHandler-010c4674.js'); });
49286
49295
  case 11:
49287
49296
  _yield$import2 = _context12.sent;
49288
49297
  LiviqueWWSHandler = _yield$import2["default"];
@@ -49290,7 +49299,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
49290
49299
  return _context12.abrupt("break", 27);
49291
49300
  case 15:
49292
49301
  _context12.next = 17;
49293
- return Promise.resolve().then(function () { return require('./SeriousBasketHandler-5a7557f2.js'); });
49302
+ return Promise.resolve().then(function () { return require('./SeriousBasketHandler-ce8059dd.js'); });
49294
49303
  case 17:
49295
49304
  _yield$import3 = _context12.sent;
49296
49305
  SeriousWWSHandler = _yield$import3["default"];
@@ -49298,7 +49307,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
49298
49307
  return _context12.abrupt("break", 27);
49299
49308
  case 21:
49300
49309
  _context12.next = 23;
49301
- return Promise.resolve().then(function () { return require('./StandardWWSHandler-d419265e.js'); });
49310
+ return Promise.resolve().then(function () { return require('./StandardWWSHandler-45060aea.js'); });
49302
49311
  case 23:
49303
49312
  _yield$import4 = _context12.sent;
49304
49313
  StandardWWSHandler = _yield$import4["default"];
@@ -50685,7 +50694,7 @@ var PlannerHandler3D = /*#__PURE__*/function () {
50685
50694
  //If we need real time rendering initialize the SignalR and 3D host connection Handler
50686
50695
  bootMark('signalr: chunk import start');
50687
50696
  _context3.next = 3;
50688
- return Promise.resolve().then(function () { return require('./Host3DSignalR-fedcf409.js'); });
50697
+ return Promise.resolve().then(function () { return require('./Host3DSignalR-053d1f70.js'); });
50689
50698
  case 3:
50690
50699
  _yield$import = _context3.sent;
50691
50700
  Host3DSignalR = _yield$import["default"];
@@ -52417,7 +52426,7 @@ var DivaPlannerHandler = /*#__PURE__*/function () {
52417
52426
  break;
52418
52427
  case 8:
52419
52428
  _context5.next = 10;
52420
- return Promise.resolve().then(function () { return require('./DivaStandardPlanner-320d838c.js'); });
52429
+ return Promise.resolve().then(function () { return require('./DivaStandardPlanner-024a707c.js'); });
52421
52430
  case 10:
52422
52431
  _yield$import = _context5.sent;
52423
52432
  DivaStandardPlanner = _yield$import["default"];
@@ -52428,7 +52437,7 @@ var DivaPlannerHandler = /*#__PURE__*/function () {
52428
52437
  return _context5.abrupt("break", 21);
52429
52438
  case 15:
52430
52439
  _context5.next = 17;
52431
- return Promise.resolve().then(function () { return require('./DivaBoxPlanner-8b312c16.js'); });
52440
+ return Promise.resolve().then(function () { return require('./DivaBoxPlanner-eb204f64.js'); });
52432
52441
  case 17:
52433
52442
  _yield$import2 = _context5.sent;
52434
52443
  DivaBoxPlanner = _yield$import2["default"];
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var index = require('./index-4d164cf3.js');
5
+ var index = require('./index-92b3f811.js');
6
6
  var planner2dCore = require('@crystaldesign/planner-2d-core');
7
7
  require('@babel/runtime/helpers/slicedToArray');
8
8
  require('@babel/runtime/helpers/asyncToGenerator');
@@ -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-7437d23b.js';
6
+ import { c as Vector2, V as Vector3, P as PlannerElementData, B as BoundingBox } from './index-90706aea.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-26261a6f.js';
10
+ import { d as dockingPointHandlerInst, h as handler2D } from './PlannerHandler2D-3367fa6b.js';
11
11
  import '@babel/runtime/helpers/objectWithoutProperties';
12
12
  import 'axios';
13
13
  import '@crystaldesign/planner-2d-core';
@@ -4,10 +4,10 @@ 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 { V as Vector3, P as PlannerElementData, B as BoundingBox } from './index-7437d23b.js';
7
+ import { V as Vector3, P as PlannerElementData, B as BoundingBox } from './index-90706aea.js';
8
8
  import DivaUtils, { DivaError, md5 } from '@crystaldesign/diva-utils';
9
9
  import { computeDockedTransform } from '@crystaldesign/planner-2d-core';
10
- import { d as dockingPointHandlerInst, h as handler2D } from './PlannerHandler2D-26261a6f.js';
10
+ import { d as dockingPointHandlerInst, h as handler2D } from './PlannerHandler2D-3367fa6b.js';
11
11
  import '@babel/runtime/helpers/slicedToArray';
12
12
  import '@babel/runtime/helpers/objectWithoutProperties';
13
13
  import 'axios';
@@ -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-7437d23b.js';
4
+ import './index-90706aea.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 { d as bootMark, R as Rendering, H as HQRenderScript } from './index-7437d23b.js';
6
+ import { d as bootMark, R as Rendering, H as HQRenderScript } from './index-90706aea.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-7437d23b.js';
3
+ import './index-90706aea.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-7437d23b.js';
3
+ import { a as articleHandlerInstance } from './index-90706aea.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, S as SVGUtils } from './index-7437d23b.js';
6
+ import { c as Vector2, S as SVGUtils } from './index-90706aea.js';
7
7
  import _possibleConstructorReturn from '@babel/runtime/helpers/possibleConstructorReturn';
8
8
  import _getPrototypeOf from '@babel/runtime/helpers/getPrototypeOf';
9
9
  import _get from '@babel/runtime/helpers/get';
@@ -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-7437d23b.js';
4
+ import { s as summaryHandlerInstance } from './index-90706aea.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 articleHandlerInstance, b as setHandlerInstance } from './index-7437d23b.js';
7
+ import { G as Grid, a as articleHandlerInstance, b as setHandlerInstance } from './index-90706aea.js';
8
8
  import DivaUtils, { DivaError } from '@crystaldesign/diva-utils';
9
9
  import '@babel/runtime/helpers/slicedToArray';
10
10
  import '@babel/runtime/helpers/objectWithoutProperties';
@@ -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-7437d23b.js';
3
+ import './index-90706aea.js';
4
4
  import '@babel/runtime/helpers/slicedToArray';
5
5
  import '@babel/runtime/helpers/asyncToGenerator';
6
6
  import '@babel/runtime/helpers/defineProperty';
@@ -32662,7 +32662,7 @@ var DivaArticle = /*#__PURE__*/function () {
32662
32662
  break;
32663
32663
  }
32664
32664
  _context.next = 4;
32665
- return import('./ShelfPlanner-dbff1180.js');
32665
+ return import('./ShelfPlanner-f35a2bb8.js');
32666
32666
  case 4:
32667
32667
  _yield$import = _context.sent;
32668
32668
  ShelfPlanner = _yield$import["default"];
@@ -34460,7 +34460,7 @@ var DivaArticleHandler = /*#__PURE__*/function () {
34460
34460
  return _regeneratorRuntime.wrap(function _callee15$(_context16) {
34461
34461
  while (1) switch (_context16.prev = _context16.next) {
34462
34462
  case 0:
34463
- if (this.checkPartlistDepth(article, doLoadItem)) {
34463
+ if (this.checkPartlistCycle(article, doLoadItem)) {
34464
34464
  _context16.next = 2;
34465
34465
  break;
34466
34466
  }
@@ -34515,48 +34515,57 @@ var DivaArticleHandler = /*#__PURE__*/function () {
34515
34515
  return loadPartlistArticle;
34516
34516
  }()
34517
34517
  /**
34518
- * Whether the child may still be loaded. FALSE means the nesting limit is reached — the caller must stop, because
34519
- * a cyclic partlist re-enters `loadPartlistArticle` and this is the only thing that ends the recursion.
34518
+ * Whether the child may be loaded without closing a loop. FALSE means the child is the article itself or one of its
34519
+ * ancestors (same catalog): a partlist component carries the partlist it is a position of, so loading it would load
34520
+ * that partlist again and again. The load stops at the first repetition and names the article that closes the loop.
34521
+ * Every endless partlist chain repeats an (article, catalog) pair among its ancestors, so this check is also what
34522
+ * ends the recursion.
34520
34523
  */
34521
34524
  }, {
34522
- key: "checkPartlistDepth",
34523
- value: function checkPartlistDepth(article, doLoadItem) {
34524
- var PARTLIST_MAX_DEPTH = 10;
34525
- var depth = 0;
34526
- var current = article.partListParentArticle;
34527
- while (current) {
34528
- depth++;
34529
- current = current.partListParentArticle;
34530
- }
34531
- if (depth >= PARTLIST_MAX_DEPTH) {
34532
- var _article$set$actions;
34533
- var ancestorChain = this.collectAncestorChain(article).map(function (a) {
34534
- return a.articleCodex;
34535
- });
34536
- LOG$e.error(new DivaError('Partlist nesting exceeded the maximum allowed depth – aborting load', {
34537
- custom: {
34538
- maxDepth: PARTLIST_MAX_DEPTH,
34539
- currentDepth: depth,
34540
- articleCodexToLoad: doLoadItem.ArticleCodex,
34541
- parentBasketId: article.basketId,
34542
- parentArticleCodex: article.articleCodex,
34543
- ancestorChain: ancestorChain
34544
- }
34545
- }));
34546
- if ((_article$set$actions = article.set.actions) !== null && _article$set$actions !== void 0 && _article$set$actions.userHasPermission('advancedconfigurator')) {
34547
- var _article$set$actions2, _article$set$actions3;
34548
- (_article$set$actions2 = article.set.actions) === null || _article$set$actions2 === void 0 || (_article$set$actions3 = _article$set$actions2.openModal) === null || _article$set$actions3 === void 0 || _article$set$actions3.call(_article$set$actions2, {
34549
- title: 'Partlist nesting too deep',
34550
- text: "Aborted loading partlist article \"".concat(doLoadItem.ArticleCodex, "\" because the partlist nesting exceeded the maximum allowed depth of ").concat(PARTLIST_MAX_DEPTH, ". ") + "This usually means an article references itself or an ancestor as a partlist child. " + "Parent article: ".concat(article.articleCodex, ". Ancestor chain: ").concat(ancestorChain.join(' -> '), "."),
34551
- accept: true
34552
- });
34553
- return false;
34554
- } else {
34555
- article.set.getSetState.errorHandler(new DivaError('Partlist nesting exceeded the maximum allowed depth – aborting load'));
34556
- return false;
34525
+ key: "checkPartlistCycle",
34526
+ value: function checkPartlistCycle(article, doLoadItem) {
34527
+ var ancestorChain = this.collectAncestorChain(article);
34528
+ var closesLoop = ancestorChain.some(function (ancestor) {
34529
+ return ancestor.articleCodex === doLoadItem.ArticleCodex && String(ancestor.catalogCodex) === String(doLoadItem.CatalogCodex);
34530
+ });
34531
+ if (!closesLoop) return true;
34532
+ var chain = [].concat(_toConsumableArray(ancestorChain.reverse().map(function (ancestor) {
34533
+ return ancestor.articleCodex;
34534
+ })), [doLoadItem.ArticleCodex]).join(' → ');
34535
+ LOG$e.error(new DivaError('Partlist contains itself – aborting load', {
34536
+ custom: {
34537
+ articleCodexToLoad: doLoadItem.ArticleCodex,
34538
+ catalogCodex: doLoadItem.CatalogCodex,
34539
+ parentBasketId: article.basketId,
34540
+ chain: chain
34557
34541
  }
34542
+ }));
34543
+ if (this.showsPartlistHint(article)) {
34544
+ var _article$set$actions, _article$set$actions$, _i18n$t, _i18n$t2;
34545
+ var i18n = article.set.api.getI18n();
34546
+ (_article$set$actions = article.set.actions) === null || _article$set$actions === void 0 || (_article$set$actions$ = _article$set$actions.openModal) === null || _article$set$actions$ === void 0 || _article$set$actions$.call(_article$set$actions, {
34547
+ title: (_i18n$t = i18n === null || i18n === void 0 ? void 0 : i18n.t('configurator.partlist_cycle_title', {
34548
+ defaultValue: 'Partlist contains itself'
34549
+ })) !== null && _i18n$t !== void 0 ? _i18n$t : 'Partlist contains itself',
34550
+ text: (_i18n$t2 = i18n === null || i18n === void 0 ? void 0 : i18n.t('configurator.partlist_cycle_text', {
34551
+ defaultValue: 'The partlist article {{article}} references a partlist that contains itself or one of its parent articles as a position. Remove the partlist from this article. Chain: {{chain}}',
34552
+ article: doLoadItem.ArticleCodex,
34553
+ chain: chain
34554
+ })) !== null && _i18n$t2 !== void 0 ? _i18n$t2 : "Partlist contains itself: ".concat(chain),
34555
+ accept: true
34556
+ });
34557
+ } else {
34558
+ article.set.getSetState.errorHandler(new DivaError('Partlist contains itself – aborting load'));
34558
34559
  }
34559
- return true;
34560
+ return false;
34561
+ }
34562
+
34563
+ /** Partlist data hints are meant for the data maintainer: always in the backoffice preview, live only with the advanced permission. */
34564
+ }, {
34565
+ key: "showsPartlistHint",
34566
+ value: function showsPartlistHint(article) {
34567
+ var _article$set$actions2;
34568
+ return !article.set.api.isSeller || !!((_article$set$actions2 = article.set.actions) !== null && _article$set$actions2 !== void 0 && _article$set$actions2.userHasPermission('advancedconfigurator'));
34560
34569
  }
34561
34570
  }, {
34562
34571
  key: "collectAncestorChain",
@@ -41299,7 +41308,7 @@ var DivaSet = /*#__PURE__*/function () {
41299
41308
  break;
41300
41309
  }
41301
41310
  _context5.next = 3;
41302
- return import('./DoorPlanner-efbf6110.js');
41311
+ return import('./DoorPlanner-1664243f.js');
41303
41312
  case 3:
41304
41313
  _yield$import = _context5.sent;
41305
41314
  DoorPlanner = _yield$import["default"];
@@ -49253,7 +49262,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
49253
49262
  break;
49254
49263
  case 3:
49255
49264
  _context12.next = 5;
49256
- return import('./PfisterWWSHandler-e7e34cd7.js');
49265
+ return import('./PfisterWWSHandler-9219a61d.js');
49257
49266
  case 5:
49258
49267
  _yield$import = _context12.sent;
49259
49268
  PfisterWWSHandler = _yield$import["default"];
@@ -49261,7 +49270,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
49261
49270
  return _context12.abrupt("break", 27);
49262
49271
  case 9:
49263
49272
  _context12.next = 11;
49264
- return import('./LiviqueWWSHandler-38987d33.js');
49273
+ return import('./LiviqueWWSHandler-7326190a.js');
49265
49274
  case 11:
49266
49275
  _yield$import2 = _context12.sent;
49267
49276
  LiviqueWWSHandler = _yield$import2["default"];
@@ -49269,7 +49278,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
49269
49278
  return _context12.abrupt("break", 27);
49270
49279
  case 15:
49271
49280
  _context12.next = 17;
49272
- return import('./SeriousBasketHandler-001830c0.js');
49281
+ return import('./SeriousBasketHandler-da02a5b3.js');
49273
49282
  case 17:
49274
49283
  _yield$import3 = _context12.sent;
49275
49284
  SeriousWWSHandler = _yield$import3["default"];
@@ -49277,7 +49286,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
49277
49286
  return _context12.abrupt("break", 27);
49278
49287
  case 21:
49279
49288
  _context12.next = 23;
49280
- return import('./StandardWWSHandler-2987d8a0.js');
49289
+ return import('./StandardWWSHandler-b166bb90.js');
49281
49290
  case 23:
49282
49291
  _yield$import4 = _context12.sent;
49283
49292
  StandardWWSHandler = _yield$import4["default"];
@@ -50664,7 +50673,7 @@ var PlannerHandler3D = /*#__PURE__*/function () {
50664
50673
  //If we need real time rendering initialize the SignalR and 3D host connection Handler
50665
50674
  bootMark('signalr: chunk import start');
50666
50675
  _context3.next = 3;
50667
- return import('./Host3DSignalR-df61538e.js');
50676
+ return import('./Host3DSignalR-746d0063.js');
50668
50677
  case 3:
50669
50678
  _yield$import = _context3.sent;
50670
50679
  Host3DSignalR = _yield$import["default"];
@@ -52396,7 +52405,7 @@ var DivaPlannerHandler = /*#__PURE__*/function () {
52396
52405
  break;
52397
52406
  case 8:
52398
52407
  _context5.next = 10;
52399
- return import('./DivaStandardPlanner-15ea500c.js');
52408
+ return import('./DivaStandardPlanner-d24209f4.js');
52400
52409
  case 10:
52401
52410
  _yield$import = _context5.sent;
52402
52411
  DivaStandardPlanner = _yield$import["default"];
@@ -52407,7 +52416,7 @@ var DivaPlannerHandler = /*#__PURE__*/function () {
52407
52416
  return _context5.abrupt("break", 21);
52408
52417
  case 15:
52409
52418
  _context5.next = 17;
52410
- return import('./DivaBoxPlanner-0223e675.js');
52419
+ return import('./DivaBoxPlanner-e87a4462.js');
52411
52420
  case 17:
52412
52421
  _yield$import2 = _context5.sent;
52413
52422
  DivaBoxPlanner = _yield$import2["default"];
@@ -1,4 +1,4 @@
1
- export { I as ArtifactGenerationError, h as CatalogPlannerArticleData, C as Cell, e as DivaArticle, a as DivaArticleHandler, g as DivaBasketHandler, f as DivaCatalogData, b as DivaSetHandler, G as Grid, J as JsonDataCache, O as OptionCatalogData, i as PROPERTY_SCHEMAS, P as PlannerElementData, R as Rendering, c as Vector2, V as Vector3, w as Vector4, d as bootMark, q as bootMarksEnabled, t as bootNetworkMark, u as bootNow, v as bootRequestName, A as collectStructureStepKeys, x as creatRenderOrders, j as decodePropertyValue, D as default, n as editorKindOf, k as encodePropertyValue, y as getOrigProductId, o as getSeriousSetNamePlaceholder, z as headlessSession, l as loadAndRepairBasket, p as propertyEncodingOf, m as propertyValueProblem, r as rawStringOf, E as runHeadlessArtifactPass, F as runHeadlessArtifactPassBatch } from './index-7437d23b.js';
1
+ export { I as ArtifactGenerationError, h as CatalogPlannerArticleData, C as Cell, e as DivaArticle, a as DivaArticleHandler, g as DivaBasketHandler, f as DivaCatalogData, b as DivaSetHandler, G as Grid, J as JsonDataCache, O as OptionCatalogData, i as PROPERTY_SCHEMAS, P as PlannerElementData, R as Rendering, c as Vector2, V as Vector3, w as Vector4, d as bootMark, q as bootMarksEnabled, t as bootNetworkMark, u as bootNow, v as bootRequestName, A as collectStructureStepKeys, x as creatRenderOrders, j as decodePropertyValue, D as default, n as editorKindOf, k as encodePropertyValue, y as getOrigProductId, o as getSeriousSetNamePlaceholder, z as headlessSession, l as loadAndRepairBasket, p as propertyEncodingOf, m as propertyValueProblem, r as rawStringOf, E as runHeadlessArtifactPass, F as runHeadlessArtifactPassBatch } from './index-90706aea.js';
2
2
  export { DockingPoint } from '@crystaldesign/planner-2d-core';
3
3
  import '@babel/runtime/helpers/slicedToArray';
4
4
  import '@babel/runtime/helpers/asyncToGenerator';
@@ -80,10 +80,15 @@ declare class DivaArticleHandler {
80
80
  private loadPartlistArticles;
81
81
  private loadPartlistArticle;
82
82
  /**
83
- * Whether the child may still be loaded. FALSE means the nesting limit is reached — the caller must stop, because
84
- * a cyclic partlist re-enters `loadPartlistArticle` and this is the only thing that ends the recursion.
83
+ * Whether the child may be loaded without closing a loop. FALSE means the child is the article itself or one of its
84
+ * ancestors (same catalog): a partlist component carries the partlist it is a position of, so loading it would load
85
+ * that partlist again and again. The load stops at the first repetition and names the article that closes the loop.
86
+ * Every endless partlist chain repeats an (article, catalog) pair among its ancestors, so this check is also what
87
+ * ends the recursion.
85
88
  */
86
- private checkPartlistDepth;
89
+ private checkPartlistCycle;
90
+ /** Partlist data hints are meant for the data maintainer: always in the backoffice preview, live only with the advanced permission. */
91
+ private showsPartlistHint;
87
92
  private collectAncestorChain;
88
93
  /** evalPartlist logs the position before the child exists, so the basketId can only be handed over here. */
89
94
  private stampPartlistDebugEntry;
@@ -1 +1 @@
1
- {"version":3,"file":"DivaArticleHandler.d.ts","sourceRoot":"","sources":["../../../../../../src/logic/Article/DivaArticleHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DivaArticleHandler.d.ts","sourceRoot":"","sources":["../../../../../../src/logic/Article/DivaArticleHandler.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crystaldesign/web-planner-logic",
3
- "version": "26.12.0-beta.38",
3
+ "version": "26.12.0-beta.39",
4
4
  "description": "Headless web planner: session, geometry, render orders and product structure logic.",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1"
@@ -14,7 +14,7 @@
14
14
  "jest-junit": "^16.0.0"
15
15
  },
16
16
  "dependencies": {
17
- "@crystaldesign/planner-2d-core": "26.12.0-beta.38",
17
+ "@crystaldesign/planner-2d-core": "26.12.0-beta.39",
18
18
  "@microsoft/signalr": "^8.0.7",
19
19
  "@microsoft/signalr-protocol-msgpack": "^8.0.7",
20
20
  "axios": "^1.7.7",
@@ -40,5 +40,5 @@
40
40
  "types": "./build/types/web-planner-logic/src/index.d.ts",
41
41
  "module": "build/esm/index.js",
42
42
  "main": "build/cjs/index.js",
43
- "gitHead": "86af24a84325ee470f7dce9d1159a6577fde22bf"
43
+ "gitHead": "f96b0d8575dc62c81e5d95787bbd0e6ab7bc4023"
44
44
  }