@crystaldesign/web-planner-logic 26.12.0-beta.4 → 26.12.0-beta.6

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-2c699ee3.js → DivaBoxPlanner-e772f6a3.js} +2 -2
  2. package/build/cjs/{DivaStandardPlanner-3d6a05bc.js → DivaStandardPlanner-d6cb5f39.js} +2 -2
  3. package/build/cjs/{DoorPlanner-adda9c0d.js → DoorPlanner-9ea7a6aa.js} +1 -1
  4. package/build/cjs/{Host3DSignalR-6914541f.js → Host3DSignalR-9710fc4e.js} +1 -1
  5. package/build/cjs/{LiviqueWWSHandler-635cffae.js → LiviqueWWSHandler-fbc83326.js} +1 -1
  6. package/build/cjs/{PfisterWWSHandler-d95419db.js → PfisterWWSHandler-1a240ebf.js} +1 -1
  7. package/build/cjs/{PlannerHandler2D-b76ba907.js → PlannerHandler2D-1d75a95f.js} +1 -1
  8. package/build/cjs/{SeriousBasketHandler-777904e8.js → SeriousBasketHandler-f492ea60.js} +157 -77
  9. package/build/cjs/{ShelfPlanner-5ffd15a2.js → ShelfPlanner-65f4da8e.js} +1 -1
  10. package/build/cjs/{StandardWWSHandler-e92acae6.js → StandardWWSHandler-6187c7c9.js} +1 -1
  11. package/build/cjs/{index-d516d2b2.js → index-34ea53f6.js} +58 -11
  12. package/build/cjs/index.js +2 -1
  13. package/build/esm/{DivaBoxPlanner-6f0727a3.js → DivaBoxPlanner-2ba492c3.js} +2 -2
  14. package/build/esm/{DivaStandardPlanner-7188da61.js → DivaStandardPlanner-19e1f3d9.js} +2 -2
  15. package/build/esm/{DoorPlanner-74bcd21d.js → DoorPlanner-dd3a1b18.js} +1 -1
  16. package/build/esm/{Host3DSignalR-bb6db8e6.js → Host3DSignalR-d5d5d7f3.js} +1 -1
  17. package/build/esm/{LiviqueWWSHandler-c4ba143d.js → LiviqueWWSHandler-1634b15e.js} +1 -1
  18. package/build/esm/{PfisterWWSHandler-41b7b1b7.js → PfisterWWSHandler-1ba9df74.js} +1 -1
  19. package/build/esm/{PlannerHandler2D-829ffceb.js → PlannerHandler2D-8b9dbf35.js} +1 -1
  20. package/build/esm/{SeriousBasketHandler-0bb8ee55.js → SeriousBasketHandler-f0ccbf97.js} +157 -77
  21. package/build/esm/{ShelfPlanner-1406888d.js → ShelfPlanner-b7d908ec.js} +1 -1
  22. package/build/esm/{StandardWWSHandler-a8045129.js → StandardWWSHandler-2a205527.js} +1 -1
  23. package/build/esm/{index-16a1a540.js → index-0e729418.js} +58 -12
  24. package/build/esm/index.js +1 -1
  25. package/build/types/web-planner-logic/src/index.d.ts +1 -0
  26. package/build/types/web-planner-logic/src/index.d.ts.map +1 -1
  27. package/build/types/web-planner-logic/src/interface/OptionTypes/CatalogOptionDataTypes.d.ts +1 -0
  28. package/build/types/web-planner-logic/src/interface/OptionTypes/CatalogOptionDataTypes.d.ts.map +1 -1
  29. package/build/types/web-planner-logic/src/logic/Basket/SeriousBasketHandler.d.ts +20 -1
  30. package/build/types/web-planner-logic/src/logic/Basket/SeriousBasketHandler.d.ts.map +1 -1
  31. package/build/types/web-planner-logic/src/logic/Basket/SeriousBasketHandler.test.d.ts +2 -0
  32. package/build/types/web-planner-logic/src/logic/Basket/SeriousBasketHandler.test.d.ts.map +1 -0
  33. package/build/types/web-planner-logic/src/logic/Basket/seriousSetName.d.ts +8 -0
  34. package/build/types/web-planner-logic/src/logic/Basket/seriousSetName.d.ts.map +1 -0
  35. package/build/types/web-planner-logic/src/logic/Basket/seriousSetName.test.d.ts +2 -0
  36. package/build/types/web-planner-logic/src/logic/Basket/seriousSetName.test.d.ts.map +1 -0
  37. package/build/types/web-planner-logic/src/logic/ConfigTree/SummaryHandler.d.ts.map +1 -1
  38. package/build/types/web-planner-logic/src/logic/ConfigTree/SummaryHandler.test.d.ts +2 -0
  39. package/build/types/web-planner-logic/src/logic/ConfigTree/SummaryHandler.test.d.ts.map +1 -0
  40. package/build/types/web-planner-logic/src/logic/Set/DivaSet.d.ts +2 -1
  41. package/build/types/web-planner-logic/src/logic/Set/DivaSet.d.ts.map +1 -1
  42. package/build/types/web-planner-logic/src/model/Options/ArticleOptionData.d.ts +1 -0
  43. package/build/types/web-planner-logic/src/model/Options/ArticleOptionData.d.ts.map +1 -1
  44. package/build/types/web-planner-logic/src/model/Options/CatalogOptionData.d.ts +1 -0
  45. package/build/types/web-planner-logic/src/model/Options/CatalogOptionData.d.ts.map +1 -1
  46. package/package.json +3 -3
@@ -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-16a1a540.js';
4
+ import { s as summaryHandlerInstance } from './index-0e729418.js';
5
5
  import DivaUtils from '@crystaldesign/diva-utils';
6
6
  import '@babel/runtime/helpers/slicedToArray';
7
7
  import '@babel/runtime/helpers/asyncToGenerator';
@@ -20,23 +20,36 @@ import '@crystaldesign/basket-handler';
20
20
  import 'socket.io-client';
21
21
  import '@crystaldesign/planner-2d-core';
22
22
 
23
+ function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
24
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
25
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
26
+
27
+ /** An emitted formatted option that may become the main color: flagged with IS_MAIN_COLOR (explicit) or the API2 OPTBE_BOX fallback */
28
+
23
29
  //Der in einem Set gemergte Optionsbaum
24
- var MAIN_COLOR_OPTIONCODEX = 'OPTBE_BOX'; // this field indicates the the main Color. This main color is used in the PDF
30
+ // API2 fallback for the main color used in the PDF; catalogs mark it explicitly with the option property IS_MAIN_COLOR
31
+ var MAIN_COLOR_OPTIONCODEX = 'OPTBE_BOX';
25
32
  var StandardWWSHandler = /*#__PURE__*/function () {
26
33
  function StandardWWSHandler() {
27
34
  _classCallCheck(this, StandardWWSHandler);
28
- _defineProperty(this, "mainColorFound", false);
35
+ _defineProperty(this, "mainColorCandidates", []);
29
36
  }
30
37
  return _createClass(StandardWWSHandler, [{
31
38
  key: "repairWWSFlags",
32
39
  value: function repairWWSFlags(articles, orderLines) {
33
40
  return orderLines;
34
41
  }
42
+ /**
43
+ * Builds the part list for the Serious PDF. Components are collected at any partlist depth: intermediate articles that
44
+ * only bundle further components without a price of their own (IDM "Hülsen") are not listed themselves, a priced parent
45
+ * (e.g. an IDM Vorzugskombi header) is listed with its own price next to its components, and the options of a component
46
+ * are looked up on its direct parent, which is the set article itself for flat (API2) partlists.
47
+ */
35
48
  }, {
36
49
  key: "getWWSData",
37
50
  value: function getWWSData(basket, set, orderSet, orderlines) {
38
51
  var _this = this;
39
- this.mainColorFound = false;
52
+ this.mainColorCandidates = [];
40
53
  var pos = set.CatalogData.summaryTabGroupPosition;
41
54
  var isIDM = set.CatalogData.isIDMFormat;
42
55
  var partListOrderLines = [];
@@ -52,10 +65,12 @@ var StandardWWSHandler = /*#__PURE__*/function () {
52
65
  var articles = set.getDivaArticles();
53
66
  var groupedPartlistArticles = [];
54
67
  var usedOptionCodexes = [];
68
+ // set articles plus the parents of nested components, so catalog tab group codices resolve for both
69
+ var tabGroupLookupArticles = Object.values(articles);
55
70
  var posNr = 1;
56
71
  for (var iKey in articles) {
57
72
  var article = articles[iKey];
58
- var partlistArticles = articles[iKey].partlistArticles;
73
+ var partlistArticles = this.getPartlistComponents(article);
59
74
  var partlistArticlesWithTabGroup = [];
60
75
  groupedPartlistArticles.push({
61
76
  article: article,
@@ -63,52 +78,65 @@ var StandardWWSHandler = /*#__PURE__*/function () {
63
78
  partlistArticles: [],
64
79
  letOthesMatch: true
65
80
  });
66
- var _loop = function _loop() {
67
- var _partlistArticle$cata, _article$getArticleOp, _article$getArticleOp2;
68
- var partlistArticle = partlistArticles[key];
69
- var preDefinedPosNr = (_partlistArticle$cata = partlistArticle.catalogArticle.orderPosNr) !== null && _partlistArticle$cata !== void 0 ? _partlistArticle$cata : null;
70
- var tabGroup = (_article$getArticleOp = (_article$getArticleOp2 = article.getArticleOptionState((!isIDM ? 'OPT' : '') + partlistArticle.tabGroup)) === null || _article$getArticleOp2 === void 0 ? void 0 : _article$getArticleOp2.optionTabGroup) !== null && _article$getArticleOp !== void 0 ? _article$getArticleOp : partlistArticle.tabGroup;
71
- if (preDefinedPosNr !== null) {
72
- var existingentry = !preDefinedPosNr.endsWith(';') && groupedPartlistArticles.find(function (group) {
73
- return (group.posNr == Number(preDefinedPosNr) || group.groupKey == preDefinedPosNr) && group.letOthesMatch;
74
- });
75
- if (existingentry) {
76
- existingentry.partlistArticles.push({
77
- article: partlistArticle,
78
- tabGroup: tabGroup
81
+ var _iterator = _createForOfIteratorHelper(partlistArticles),
82
+ _step;
83
+ try {
84
+ var _loop = function _loop() {
85
+ var _partlistArticle$part, _partlistArticle$cata, _optionArticle$getArt, _optionArticle$getArt2;
86
+ var partlistArticle = _step.value;
87
+ var optionArticle = (_partlistArticle$part = partlistArticle.partListParentArticle) !== null && _partlistArticle$part !== void 0 ? _partlistArticle$part : article;
88
+ if (!tabGroupLookupArticles.includes(optionArticle)) tabGroupLookupArticles.push(optionArticle);
89
+ var preDefinedPosNr = (_partlistArticle$cata = partlistArticle.catalogArticle.orderPosNr) !== null && _partlistArticle$cata !== void 0 ? _partlistArticle$cata : null;
90
+ var tabGroup = (_optionArticle$getArt = (_optionArticle$getArt2 = optionArticle.getArticleOptionState((!isIDM ? 'OPT' : '') + partlistArticle.tabGroup)) === null || _optionArticle$getArt2 === void 0 ? void 0 : _optionArticle$getArt2.optionTabGroup) !== null && _optionArticle$getArt !== void 0 ? _optionArticle$getArt : partlistArticle.tabGroup;
91
+ if (preDefinedPosNr !== null) {
92
+ var existingentry = !preDefinedPosNr.endsWith(';') && groupedPartlistArticles.find(function (group) {
93
+ return (group.posNr == Number(preDefinedPosNr) || group.groupKey == preDefinedPosNr) && group.letOthesMatch;
79
94
  });
80
- } else {
81
- var letOthesMatch = true;
82
- var newPosNr = Number(preDefinedPosNr);
83
- if (isNaN(newPosNr)) {
84
- newPosNr = posNr;
85
- letOthesMatch = false;
86
- do {
87
- newPosNr++;
88
- } while (groupedPartlistArticles.find(function (group) {
89
- return group.posNr == newPosNr;
90
- }));
91
- }
92
- groupedPartlistArticles.push({
93
- article: article,
94
- posNr: newPosNr,
95
- letOthesMatch: letOthesMatch,
96
- partlistArticles: [{
95
+ if (existingentry) {
96
+ existingentry.partlistArticles.push({
97
97
  article: partlistArticle,
98
- tabGroup: tabGroup
99
- }],
100
- groupKey: preDefinedPosNr
98
+ tabGroup: tabGroup,
99
+ optionArticle: optionArticle
100
+ });
101
+ } else {
102
+ var letOthesMatch = true;
103
+ var newPosNr = Number(preDefinedPosNr);
104
+ if (isNaN(newPosNr)) {
105
+ newPosNr = posNr;
106
+ letOthesMatch = false;
107
+ do {
108
+ newPosNr++;
109
+ } while (groupedPartlistArticles.find(function (group) {
110
+ return group.posNr == newPosNr;
111
+ }));
112
+ }
113
+ groupedPartlistArticles.push({
114
+ article: article,
115
+ posNr: newPosNr,
116
+ letOthesMatch: letOthesMatch,
117
+ partlistArticles: [{
118
+ article: partlistArticle,
119
+ tabGroup: tabGroup,
120
+ optionArticle: optionArticle
121
+ }],
122
+ groupKey: preDefinedPosNr
123
+ });
124
+ }
125
+ } else {
126
+ partlistArticlesWithTabGroup.push({
127
+ article: partlistArticle,
128
+ tabGroup: tabGroup,
129
+ optionArticle: optionArticle
101
130
  });
102
131
  }
103
- } else {
104
- partlistArticlesWithTabGroup.push({
105
- article: partlistArticle,
106
- tabGroup: tabGroup
107
- });
132
+ };
133
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
134
+ _loop();
108
135
  }
109
- };
110
- for (var key in partlistArticles) {
111
- _loop();
136
+ } catch (err) {
137
+ _iterator.e(err);
138
+ } finally {
139
+ _iterator.f();
112
140
  }
113
141
  groupedPartlistArticles.find(function (group) {
114
142
  return group.posNr === posNr;
@@ -120,23 +148,25 @@ var StandardWWSHandler = /*#__PURE__*/function () {
120
148
  }));
121
149
  }
122
150
  if (pos) this.sort(pos, groupedPartlistArticles);
123
- var _loop2 = function _loop2() {
151
+ for (var _i = 0; _i < groupedPartlistArticles.length; _i++) {
124
152
  var group = groupedPartlistArticles[_i];
125
- var article = group.article;
126
153
  var posNrCount = 1;
127
154
 
128
155
  //get count of tabgroupOption - articles within each tabgroup
129
- var _loop4 = function _loop4() {
130
- var _article$getArticleOp3, _article$getArticleOp4;
131
- var partListArticle = group.partlistArticles[j].article;
132
- var tabGroup = (_article$getArticleOp3 = (_article$getArticleOp4 = article.getArticleOptionState((!isIDM ? 'OPT' : '') + partListArticle.tabGroup)) === null || _article$getArticleOp4 === void 0 ? void 0 : _article$getArticleOp4.optionTabGroup) !== null && _article$getArticleOp3 !== void 0 ? _article$getArticleOp3 : partListArticle.tabGroup;
156
+ var _loop2 = function _loop2() {
157
+ var _optionArticle$getArt3, _optionArticle$getArt4;
158
+ var _group$partlistArticl = group.partlistArticles[j],
159
+ partListArticle = _group$partlistArticl.article,
160
+ optionArticle = _group$partlistArticl.optionArticle;
161
+ var tabGroup = (_optionArticle$getArt3 = (_optionArticle$getArt4 = optionArticle.getArticleOptionState((!isIDM ? 'OPT' : '') + partListArticle.tabGroup)) === null || _optionArticle$getArt4 === void 0 ? void 0 : _optionArticle$getArt4.optionTabGroup) !== null && _optionArticle$getArt3 !== void 0 ? _optionArticle$getArt3 : partListArticle.tabGroup;
133
162
  var fountEntry = partListOrderLines.find(function (item) {
134
163
  var _item$FormattedOption, _item$FormattedOption2, _this$getFormattedOpt;
135
- return item.Name == partListArticle.name && item.ArticleNr == partListArticle.configArticleCodex && ((_item$FormattedOption = item.FormattedOptions) === null || _item$FormattedOption === void 0 ? void 0 : _item$FormattedOption[0]) && ((_item$FormattedOption2 = item.FormattedOptions) === null || _item$FormattedOption2 === void 0 ? void 0 : _item$FormattedOption2[0].Title) == ((_this$getFormattedOpt = _this.getFormattedOptions(partListArticle, article, [], '', usedOptionCodexes)) === null || _this$getFormattedOpt === void 0 ? void 0 : _this$getFormattedOpt[0].Title);
164
+ return item.Name == partListArticle.name && item.ArticleNr == partListArticle.configArticleCodex && ((_item$FormattedOption = item.FormattedOptions) === null || _item$FormattedOption === void 0 ? void 0 : _item$FormattedOption[0]) && ((_item$FormattedOption2 = item.FormattedOptions) === null || _item$FormattedOption2 === void 0 ? void 0 : _item$FormattedOption2[0].Title) == ((_this$getFormattedOpt = _this.getFormattedOptions(partListArticle, optionArticle, [], '', usedOptionCodexes)) === null || _this$getFormattedOpt === void 0 ? void 0 : _this$getFormattedOpt[0].Title);
136
165
  });
166
+ var unitPrice = _this.unitPrice(partListArticle);
137
167
  if (fountEntry) {
138
168
  fountEntry.Quantity = fountEntry.Quantity + partListArticle.quantity;
139
- fountEntry.FormattedPrice = DivaUtils.formatPrice(partListArticle.price * fountEntry.Quantity);
169
+ fountEntry.FormattedPrice = DivaUtils.formatPrice(unitPrice * fountEntry.Quantity);
140
170
  } else {
141
171
  var colorCodices = [];
142
172
  if (tabGroup && tabGroup !== 'Aktion' /* Aktion delete in 2024 */ && tabGroup !== 'BOX_AF_PARIS' || firstItem) {
@@ -145,14 +175,14 @@ var StandardWWSHandler = /*#__PURE__*/function () {
145
175
  finalPosNr = _this$getFinalPosNr.finalPosNr,
146
176
  newPosNrCount = _this$getFinalPosNr.newPosNrCount;
147
177
  posNrCount = newPosNrCount;
148
- var formattedOptions = _this.getFormattedOptions(partListArticle, article, colorCodices, finalPosNr, usedOptionCodexes);
178
+ var formattedOptions = _this.getFormattedOptions(partListArticle, optionArticle, colorCodices, finalPosNr, usedOptionCodexes);
149
179
  partListOrderLines.push({
150
180
  ArticleNr: (_partListArticle$conf = partListArticle.configArticleCodex) !== null && _partListArticle$conf !== void 0 && _partListArticle$conf.startsWith('HIDE_CODEX') ? '' : (_partListArticle$conf2 = partListArticle.configArticleCodex) !== null && _partListArticle$conf2 !== void 0 ? _partListArticle$conf2 : partListArticle.articleCodex,
151
181
  ColorCodices: colorCodices,
152
182
  FormattedOptions: formattedOptions,
153
- FormattedPrice: DivaUtils.formatPrice(partListArticle.price * partListArticle.quantity),
183
+ FormattedPrice: DivaUtils.formatPrice(unitPrice * partListArticle.quantity),
154
184
  PosNr: finalPosNr,
155
- Price: typeof partListArticle.price === 'number' ? partListArticle.price : parseFloat(partListArticle.price),
185
+ Price: unitPrice,
156
186
  Quantity: partListArticle.quantity,
157
187
  TabGroup: tabGroup !== null && tabGroup !== void 0 ? tabGroup : ' ',
158
188
  Name: partListArticle.name,
@@ -164,9 +194,9 @@ var StandardWWSHandler = /*#__PURE__*/function () {
164
194
  formattedOptions: [],
165
195
  ArticleNr: (_partListArticle$conf3 = partListArticle.configArticleCodex) !== null && _partListArticle$conf3 !== void 0 ? _partListArticle$conf3 : partListArticle.articleCodex,
166
196
  ColorCodices: [],
167
- FormattedPrice: DivaUtils.formatPrice(partListArticle.price * partListArticle.quantity),
197
+ FormattedPrice: DivaUtils.formatPrice(unitPrice * partListArticle.quantity),
168
198
  PosNr: group.posNr + '.00',
169
- Price: partListArticle.price,
199
+ Price: unitPrice,
170
200
  Quantity: partListArticle.quantity,
171
201
  TabGroup: 'SetArtikel',
172
202
  Name: (_basket$SetName = basket.SetName) !== null && _basket$SetName !== void 0 ? _basket$SetName : partListArticle.name
@@ -175,11 +205,8 @@ var StandardWWSHandler = /*#__PURE__*/function () {
175
205
  }
176
206
  };
177
207
  for (var j = 0; j < group.partlistArticles.length; j++) {
178
- _loop4();
208
+ _loop2();
179
209
  }
180
- };
181
- for (var _i = 0; _i < groupedPartlistArticles.length; _i++) {
182
- _loop2();
183
210
  }
184
211
  for (var _i2 = 0; _i2 < partListOrderLines.length; _i2++) {
185
212
  if (partListOrderLines[_i2].TabGroup && !partListGroups.includes(partListOrderLines[_i2].TabGroup)) {
@@ -190,7 +217,7 @@ var StandardWWSHandler = /*#__PURE__*/function () {
190
217
  var partListOrderLinesSorted = [];
191
218
  var _loop3 = function _loop3() {
192
219
  var _DivaSummaryHandler$g;
193
- var p = (_DivaSummaryHandler$g = summaryHandlerInstance.getTabgroupByOptionCodex(pos[_i3], Object.values(articles))) !== null && _DivaSummaryHandler$g !== void 0 ? _DivaSummaryHandler$g : pos[_i3];
220
+ var p = (_DivaSummaryHandler$g = summaryHandlerInstance.getTabgroupByOptionCodex(pos[_i3], tabGroupLookupArticles)) !== null && _DivaSummaryHandler$g !== void 0 ? _DivaSummaryHandler$g : pos[_i3];
194
221
  while (partListOrderLines.find(function (orderline) {
195
222
  return orderline.TabGroup === p;
196
223
  })) {
@@ -217,11 +244,46 @@ var StandardWWSHandler = /*#__PURE__*/function () {
217
244
  return posA - posB;
218
245
  });
219
246
  if (firstItem) partListOrderLines.unshift(firstItem);
247
+ this.markMainColor();
220
248
  return {
221
249
  PartListOrderLines: partListOrderLines,
222
250
  PartListGroups: partListGroups
223
251
  };
224
252
  }
253
+
254
+ /**
255
+ * Components at any partlist depth. Articles that only bundle further components without a price of their own (IDM
256
+ * "Hülsen") are left out, also when the current configuration loads none of their components (e.g. no mattress chosen):
257
+ * an empty Hülse is not a part. A partlist parent with a price of its own stays a part, so its price is not lost.
258
+ */
259
+ }, {
260
+ key: "getPartlistComponents",
261
+ value: function getPartlistComponents(article) {
262
+ return Object.values(article.getRecursivePartlistArticles()).filter(function (partlistArticle) {
263
+ return !partlistArticle.hasPartlistArticle || partlistArticle.mainPrice > 0;
264
+ });
265
+ }
266
+
267
+ /** Unit price of a part: a partlist parent contributes only its own price, its components are listed themselves. */
268
+ }, {
269
+ key: "unitPrice",
270
+ value: function unitPrice(partListArticle) {
271
+ return partListArticle.hasPartlistArticle ? partListArticle.mainPrice : partListArticle.price;
272
+ }
273
+
274
+ /**
275
+ * The first emitted option flagged with IS_MAIN_COLOR is the main color of the part list; without one, the first emitted
276
+ * OPTBE_BOX option (API2 fallback) is. Decided after all lines exist, so only options that really appear can be chosen.
277
+ */
278
+ }, {
279
+ key: "markMainColor",
280
+ value: function markMainColor() {
281
+ var _this$mainColorCandid;
282
+ var mainColor = (_this$mainColorCandid = this.mainColorCandidates.find(function (candidate) {
283
+ return candidate.explicit;
284
+ })) !== null && _this$mainColorCandid !== void 0 ? _this$mainColorCandid : this.mainColorCandidates[0];
285
+ if (mainColor) mainColor.option.IsMainColor = true;
286
+ }
225
287
  }, {
226
288
  key: "getFinalPosNr",
227
289
  value: function getFinalPosNr(group, posNrCount, partListArticle, firstItem) {
@@ -230,7 +292,8 @@ var StandardWWSHandler = /*#__PURE__*/function () {
230
292
  //betriebsanleitung soll diese PosNr haben
231
293
  finalPosNr = '1.99';
232
294
  } else if (group.partlistArticles.length > 1) {
233
- finalPosNr = (group.posNr + Number((posNrCount / 100).toFixed(2))).toString();
295
+ // string formatting: float arithmetic yields "1.1" for the 10th and "1.1400000000000001" for the 14th position
296
+ finalPosNr = "".concat(group.posNr, ".").concat(String(posNrCount).padStart(2, '0'));
234
297
  posNrCount++;
235
298
  } else {
236
299
  finalPosNr = (group.posNr + '.00').toString();
@@ -248,14 +311,27 @@ var StandardWWSHandler = /*#__PURE__*/function () {
248
311
  for (var i = 0; i < groupedPartlistArticles.length; i++) {
249
312
  var partlistArticlesSorted = [];
250
313
  var article = groupedPartlistArticles[i];
314
+ var lookupArticles = [article.article];
315
+ var _iterator2 = _createForOfIteratorHelper(article.partlistArticles),
316
+ _step2;
317
+ try {
318
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
319
+ var entry = _step2.value;
320
+ if (!lookupArticles.includes(entry.optionArticle)) lookupArticles.push(entry.optionArticle);
321
+ }
322
+ } catch (err) {
323
+ _iterator2.e(err);
324
+ } finally {
325
+ _iterator2.f();
326
+ }
251
327
  for (var j = 0; j < pos.length; j++) {
252
328
  var _DivaSummaryHandler$g2;
253
329
  var indexesOf = [];
254
- var p = (_DivaSummaryHandler$g2 = summaryHandlerInstance.getTabgroupByOptionCodex(pos[j], [article.article])) !== null && _DivaSummaryHandler$g2 !== void 0 ? _DivaSummaryHandler$g2 : pos[j];
330
+ var p = (_DivaSummaryHandler$g2 = summaryHandlerInstance.getTabgroupByOptionCodex(pos[j], lookupArticles)) !== null && _DivaSummaryHandler$g2 !== void 0 ? _DivaSummaryHandler$g2 : pos[j];
255
331
  for (var m = 0; m < article.partlistArticles.length; m++) {
256
- var _article$article$getA, _article$article$getA2;
332
+ var _partListArticle$opti, _partListArticle$opti2;
257
333
  var partListArticle = article.partlistArticles[m];
258
- var tabGroup = (_article$article$getA = (_article$article$getA2 = article.article.getArticleOptionState((!partListArticle.article.CatalogData.isIDMFormat ? 'OPT' : '') + partListArticle.tabGroup)) === null || _article$article$getA2 === void 0 ? void 0 : _article$article$getA2.optionTabGroup) !== null && _article$article$getA !== void 0 ? _article$article$getA : partListArticle.tabGroup;
334
+ var tabGroup = (_partListArticle$opti = (_partListArticle$opti2 = partListArticle.optionArticle.getArticleOptionState((!partListArticle.article.CatalogData.isIDMFormat ? 'OPT' : '') + partListArticle.tabGroup)) === null || _partListArticle$opti2 === void 0 ? void 0 : _partListArticle$opti2.optionTabGroup) !== null && _partListArticle$opti !== void 0 ? _partListArticle$opti : partListArticle.tabGroup;
259
335
  if (tabGroup == p) {
260
336
  indexesOf.push(m);
261
337
  }
@@ -279,26 +355,30 @@ var StandardWWSHandler = /*#__PURE__*/function () {
279
355
  var optionStates = summaryHandlerInstance.getOptionCodexesOfTabGroupForSummary(article, partListArticle, usedOptionCodexes, finalPosNr == '');
280
356
  for (var i = 0; i < optionStates.length; i++) {
281
357
  var optionState = optionStates[i];
282
- if (optionState.optionCodex.startsWith('OPTBE_') || optionState.optionCodex.startsWith('OPTAB_') || optionState.option.addToWWS) {
358
+ if (optionState.optionCodex.startsWith('OPTBE_') || optionState.optionCodex.startsWith('OPTAB_') || optionState.option.addToWWS || optionState.option.isMainColor) {
283
359
  var _optionState$vCodex;
284
360
  var coloCodex = (_optionState$vCodex = optionState.vCodex) !== null && _optionState$vCodex !== void 0 ? _optionState$vCodex : optionState.valCodex;
285
361
  if (coloCodex) {
286
362
  var _optionState$val$grou, _optionState$val, _article$getMergesToO;
287
363
  colorCodices.push(coloCodex);
288
- var isMainColor = false;
289
- if (!this.mainColorFound && optionState.optionCodex == MAIN_COLOR_OPTIONCODEX) {
290
- isMainColor = true;
291
- this.mainColorFound = true;
292
- }
293
364
  //IDM has no group name on the value itself: there the Bezugsgruppe is its own feature, merged into this one only for the view
294
365
  var groupName = (_optionState$val$grou = (_optionState$val = optionState.val) === null || _optionState$val === void 0 ? void 0 : _optionState$val.groupName) !== null && _optionState$val$grou !== void 0 ? _optionState$val$grou : (_article$getMergesToO = article.getMergesToOPGParentOps(optionState.optionCodex)) === null || _article$getMergesToO === void 0 ? void 0 : _article$getMergesToO.valName;
295
- formattedOptions.push({
366
+ var formattedOption = {
296
367
  PosNr: finalPosNr,
297
368
  Text: (groupName ? groupName + ' ' : '') + optionState.valName,
298
369
  Title: optionState.optionOrigName,
299
370
  Codex: optionState.vCodex && optionState.vCodex !== optionState.valName ? optionState.vCodex : '',
300
- IsMainColor: isMainColor
301
- });
371
+ IsMainColor: false
372
+ };
373
+ formattedOptions.push(formattedOption);
374
+ // only options of real lines can become the main color; the dedupe probe (empty PosNr) discards its result
375
+ var explicit = !!optionState.option.isMainColor;
376
+ if (finalPosNr !== '' && (explicit || optionState.optionCodex == MAIN_COLOR_OPTIONCODEX)) {
377
+ this.mainColorCandidates.push({
378
+ option: formattedOption,
379
+ explicit: explicit
380
+ });
381
+ }
302
382
  }
303
383
  }
304
384
  }
@@ -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-16a1a540.js';
7
+ import { G as Grid, a as articleHandlerInstance, b as setHandlerInstance } from './index-0e729418.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-16a1a540.js';
3
+ import './index-0e729418.js';
4
4
  import '@babel/runtime/helpers/slicedToArray';
5
5
  import '@babel/runtime/helpers/asyncToGenerator';
6
6
  import '@babel/runtime/helpers/defineProperty';
@@ -2656,6 +2656,11 @@ var OptionCatalogData = /*#__PURE__*/function () {
2656
2656
  get: function get() {
2657
2657
  return this.opt.propertyObj.addToWWS;
2658
2658
  }
2659
+ }, {
2660
+ key: "isMainColor",
2661
+ get: function get() {
2662
+ return this.opt.propertyObj.isMainColor;
2663
+ }
2659
2664
  }, {
2660
2665
  key: "sendToPIM",
2661
2666
  get: function get() {
@@ -2818,6 +2823,9 @@ var setOptionsProperties = function setOptionsProperties(catalogData, opt, prope
2818
2823
  case 'ADD_TO_WWS':
2819
2824
  opt.addToWWS = !!prop.Value;
2820
2825
  break;
2826
+ case 'IS_MAIN_COLOR':
2827
+ opt.isMainColor = !!prop.Value;
2828
+ break;
2821
2829
  case 'DESCRIPTION':
2822
2830
  opt.description = prop.Value;
2823
2831
  break;
@@ -19467,6 +19475,12 @@ var ArticleOptionData = /*#__PURE__*/function () {
19467
19475
  if (this.opt.propertyObj.addToWWS !== undefined) return this.opt.propertyObj.addToWWS;
19468
19476
  return this.opt.catalogOPT.addToWWS;
19469
19477
  }
19478
+ }, {
19479
+ key: "isMainColor",
19480
+ get: function get() {
19481
+ if (this.opt.propertyObj.isMainColor !== undefined) return this.opt.propertyObj.isMainColor;
19482
+ return this.opt.catalogOPT.isMainColor;
19483
+ }
19470
19484
  }, {
19471
19485
  key: "sendToPIM",
19472
19486
  get: function get() {
@@ -31157,7 +31171,7 @@ var DivaArticle = /*#__PURE__*/function () {
31157
31171
  break;
31158
31172
  }
31159
31173
  _context.next = 4;
31160
- return import('./ShelfPlanner-1406888d.js');
31174
+ return import('./ShelfPlanner-b7d908ec.js');
31161
31175
  case 4:
31162
31176
  _yield$import = _context.sent;
31163
31177
  ShelfPlanner = _yield$import["default"];
@@ -34963,7 +34977,7 @@ var SummaryHandler = /*#__PURE__*/function () {
34963
34977
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
34964
34978
  var ops = _step2.value;
34965
34979
  if (ops.visibleInSummary(article, summaryForBasket)) {
34966
- var _set$configTree$getCo, _set$hiddenConfigTree;
34980
+ var _article$partListPare, _article$partListPare2, _set$configTree$getCo, _set$hiddenConfigTree;
34967
34981
  //for accessoires only render an option if it differs from the parent article's selection
34968
34982
  if (parentArticle) {
34969
34983
  var _parentOps$val, _ops$val;
@@ -34982,7 +34996,9 @@ var SummaryHandler = /*#__PURE__*/function () {
34982
34996
  if (!summaryTabItems[tabGroupCodex]) {
34983
34997
  summaryTabItems[tabGroupCodex] = this.newTabGroupSummaryItem(tabGroupTitel, set.getSetId());
34984
34998
  }
34985
- var configStep = (_set$configTree$getCo = set.configTree.getConfigStepBasketIdAndOptionCodex(article.basketId, ops.optionCodex)) !== null && _set$configTree$getCo !== void 0 ? _set$configTree$getCo : (_set$hiddenConfigTree = set.hiddenConfigTree) === null || _set$hiddenConfigTree === void 0 ? void 0 : _set$hiddenConfigTree.getConfigStepBasketIdAndOptionCodex(article.basketId, ops.optionCodex);
34999
+ // options of partlist articles visible in the tree are registered under their parent (see DivaConfigTreeHandler)
35000
+ var lookupBasketId = article.partlistArticleVisibleInTree ? (_article$partListPare = (_article$partListPare2 = article.partListParentArticle) === null || _article$partListPare2 === void 0 ? void 0 : _article$partListPare2.basketId) !== null && _article$partListPare !== void 0 ? _article$partListPare : article.basketId : article.basketId;
35001
+ var configStep = (_set$configTree$getCo = set.configTree.getConfigStepBasketIdAndOptionCodex(lookupBasketId, ops.optionCodex)) !== null && _set$configTree$getCo !== void 0 ? _set$configTree$getCo : (_set$hiddenConfigTree = set.hiddenConfigTree) === null || _set$hiddenConfigTree === void 0 ? void 0 : _set$hiddenConfigTree.getConfigStepBasketIdAndOptionCodex(lookupBasketId, ops.optionCodex);
34986
35002
  var itemsInTabGroup = summaryTabItems[tabGroupCodex].summaryItems;
34987
35003
  var itemImage = ops.val.image ? set.CatalogData.getCatImageURL(ops.val.image, '') : undefined;
34988
35004
  var opsName = article.getMergedOPGNames(ops).name;
@@ -38999,6 +39015,8 @@ var DivaSet = /*#__PURE__*/function () {
38999
39015
  if (optionSetName.length) ret += ' ' + optionSetName.join(', ');
39000
39016
  return ret;
39001
39017
  }
39018
+
39019
+ /** Display texts of the selected values of all options flagged with the SETNAME property (invisible, OPVNR and OPOHNE skipped). */
39002
39020
  }, {
39003
39021
  key: "getOptionSetName",
39004
39022
  value: function getOptionSetName() {
@@ -39266,7 +39284,7 @@ var DivaSet = /*#__PURE__*/function () {
39266
39284
  break;
39267
39285
  }
39268
39286
  _context5.next = 3;
39269
- return import('./DoorPlanner-74bcd21d.js');
39287
+ return import('./DoorPlanner-dd3a1b18.js');
39270
39288
  case 3:
39271
39289
  _yield$import = _context5.sent;
39272
39290
  DoorPlanner = _yield$import["default"];
@@ -47094,7 +47112,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
47094
47112
  break;
47095
47113
  case 3:
47096
47114
  _context12.next = 5;
47097
- return import('./PfisterWWSHandler-41b7b1b7.js');
47115
+ return import('./PfisterWWSHandler-1ba9df74.js');
47098
47116
  case 5:
47099
47117
  _yield$import = _context12.sent;
47100
47118
  PfisterWWSHandler = _yield$import["default"];
@@ -47102,7 +47120,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
47102
47120
  return _context12.abrupt("break", 27);
47103
47121
  case 9:
47104
47122
  _context12.next = 11;
47105
- return import('./LiviqueWWSHandler-c4ba143d.js');
47123
+ return import('./LiviqueWWSHandler-1634b15e.js');
47106
47124
  case 11:
47107
47125
  _yield$import2 = _context12.sent;
47108
47126
  LiviqueWWSHandler = _yield$import2["default"];
@@ -47110,7 +47128,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
47110
47128
  return _context12.abrupt("break", 27);
47111
47129
  case 15:
47112
47130
  _context12.next = 17;
47113
- return import('./SeriousBasketHandler-0bb8ee55.js');
47131
+ return import('./SeriousBasketHandler-f0ccbf97.js');
47114
47132
  case 17:
47115
47133
  _yield$import3 = _context12.sent;
47116
47134
  SeriousWWSHandler = _yield$import3["default"];
@@ -47118,7 +47136,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
47118
47136
  return _context12.abrupt("break", 27);
47119
47137
  case 21:
47120
47138
  _context12.next = 23;
47121
- return import('./StandardWWSHandler-a8045129.js');
47139
+ return import('./StandardWWSHandler-2a205527.js');
47122
47140
  case 23:
47123
47141
  _yield$import4 = _context12.sent;
47124
47142
  StandardWWSHandler = _yield$import4["default"];
@@ -48505,7 +48523,7 @@ var PlannerHandler3D = /*#__PURE__*/function () {
48505
48523
  //If we need real time rendering initialize the SignalR and 3D host connection Handler
48506
48524
  bootMark('signalr: chunk import start');
48507
48525
  _context3.next = 3;
48508
- return import('./Host3DSignalR-bb6db8e6.js');
48526
+ return import('./Host3DSignalR-d5d5d7f3.js');
48509
48527
  case 3:
48510
48528
  _yield$import = _context3.sent;
48511
48529
  Host3DSignalR = _yield$import["default"];
@@ -50237,7 +50255,7 @@ var DivaPlannerHandler = /*#__PURE__*/function () {
50237
50255
  break;
50238
50256
  case 8:
50239
50257
  _context5.next = 10;
50240
- return import('./DivaStandardPlanner-7188da61.js');
50258
+ return import('./DivaStandardPlanner-19e1f3d9.js');
50241
50259
  case 10:
50242
50260
  _yield$import = _context5.sent;
50243
50261
  DivaStandardPlanner = _yield$import["default"];
@@ -50248,7 +50266,7 @@ var DivaPlannerHandler = /*#__PURE__*/function () {
50248
50266
  return _context5.abrupt("break", 21);
50249
50267
  case 15:
50250
50268
  _context5.next = 17;
50251
- return import('./DivaBoxPlanner-6f0727a3.js');
50269
+ return import('./DivaBoxPlanner-2ba492c3.js');
50252
50270
  case 17:
50253
50271
  _yield$import2 = _context5.sent;
50254
50272
  DivaBoxPlanner = _yield$import2["default"];
@@ -56963,6 +56981,34 @@ var PlannerElementData = /*#__PURE__*/function () {
56963
56981
  }]);
56964
56982
  }();
56965
56983
 
56984
+ /**
56985
+ * Placeholder for the set name in the Serious checkout. API2 bed catalogs yield "<headboard> - <width> X <length>" from the
56986
+ * OPTBR / OPTLAE options and the headboard partlist article. IDM catalogs have none of these, so the selected values of the
56987
+ * features flagged with the SETNAME property are joined instead ("Grid - 100 cm - 200 cm"). Returns '' when nothing is found.
56988
+ */
56989
+ function getSeriousSetNamePlaceholder(set) {
56990
+ var articles = set.getDivaArticles();
56991
+ var headboardName = '';
56992
+ var width = '';
56993
+ var length = '';
56994
+ for (var iKey in articles) {
56995
+ var _article$getArticleOp, _article$getArticleOp2, _article$getArticleOp3, _article$getArticleOp4;
56996
+ var article = articles[iKey];
56997
+ if (!width) width = (_article$getArticleOp = (_article$getArticleOp2 = article.getArticleOptionState('OPTBR')) === null || _article$getArticleOp2 === void 0 ? void 0 : _article$getArticleOp2.name) !== null && _article$getArticleOp !== void 0 ? _article$getArticleOp : '';
56998
+ if (!length) length = (_article$getArticleOp3 = (_article$getArticleOp4 = article.getArticleOptionState('OPTLAE')) === null || _article$getArticleOp4 === void 0 ? void 0 : _article$getArticleOp4.name) !== null && _article$getArticleOp3 !== void 0 ? _article$getArticleOp3 : '';
56999
+ for (var jKey in article.partlistArticles) {
57000
+ var _partlistArticle$tabG;
57001
+ var partlistArticle = article.partlistArticles[jKey];
57002
+ // "Kopfteil" is the deprecated marker of older catalogs, BE_KT the current one
57003
+ if (partlistArticle.tabGroupOption == 'Kopfteil' || (_partlistArticle$tabG = partlistArticle.tabGroupOption) !== null && _partlistArticle$tabG !== void 0 && _partlistArticle$tabG.includes('BE_KT')) {
57004
+ headboardName = partlistArticle.name + ' - ';
57005
+ }
57006
+ }
57007
+ }
57008
+ if (headboardName || width || length) return headboardName + width.replace(' cm', '') + ' X ' + length;
57009
+ return set.getOptionSetName().join(' - ');
57010
+ }
57011
+
56966
57012
  var a$a = [{
56967
57013
  divaNr: 'DIVA-52553-1',
56968
57014
  supplier: 'ADA_U',
@@ -74171,4 +74217,4 @@ function _withTimeout() {
74171
74217
  return _withTimeout.apply(this, arguments);
74172
74218
  }
74173
74219
 
74174
- export { ArtifactGenerationError as A, BoundingBox as B, Cell as C, DivaWebPlanner as D, Grid as G, HQRenderScript as H, JsonDataCache as J, OptionCatalogData as O, PlannerElementData as P, Rendering as R, Vector3 as V, articleHandlerInstance as a, setHandlerInstance as b, Vector2 as c, bootMark as d, DivaArticle as e, DivaCatalogData as f, DivaBasketHandler as g, CatalogPlannerArticleData as h, bootMarksEnabled as i, bootNetworkMark as j, bootNow as k, loadAndRepairBasket as l, bootRequestName as m, Vector4 as n, creatRenderOrders as o, getOrigProductId as p, headlessSession as q, collectStructureStepKeys as r, summaryHandlerInstance as s, runHeadlessArtifactPass as t, runHeadlessArtifactPassBatch as u };
74220
+ export { ArtifactGenerationError as A, BoundingBox as B, Cell as C, DivaWebPlanner as D, Grid as G, HQRenderScript as H, JsonDataCache as J, OptionCatalogData as O, PlannerElementData as P, Rendering as R, Vector3 as V, articleHandlerInstance as a, setHandlerInstance as b, Vector2 as c, bootMark as d, DivaArticle as e, DivaCatalogData as f, DivaBasketHandler as g, CatalogPlannerArticleData as h, getSeriousSetNamePlaceholder as i, bootMarksEnabled as j, bootNetworkMark as k, loadAndRepairBasket as l, bootNow as m, bootRequestName as n, Vector4 as o, creatRenderOrders as p, getOrigProductId as q, headlessSession as r, summaryHandlerInstance as s, collectStructureStepKeys as t, runHeadlessArtifactPass as u, runHeadlessArtifactPassBatch as v };
@@ -1,4 +1,4 @@
1
- export { A 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, P as PlannerElementData, R as Rendering, c as Vector2, V as Vector3, n as Vector4, d as bootMark, i as bootMarksEnabled, j as bootNetworkMark, k as bootNow, m as bootRequestName, r as collectStructureStepKeys, o as creatRenderOrders, D as default, p as getOrigProductId, q as headlessSession, l as loadAndRepairBasket, t as runHeadlessArtifactPass, u as runHeadlessArtifactPassBatch } from './index-16a1a540.js';
1
+ export { A 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, P as PlannerElementData, R as Rendering, c as Vector2, V as Vector3, o as Vector4, d as bootMark, j as bootMarksEnabled, k as bootNetworkMark, m as bootNow, n as bootRequestName, t as collectStructureStepKeys, p as creatRenderOrders, D as default, q as getOrigProductId, i as getSeriousSetNamePlaceholder, r as headlessSession, l as loadAndRepairBasket, u as runHeadlessArtifactPass, v as runHeadlessArtifactPassBatch } from './index-0e729418.js';
2
2
  export { DockingPoint } from '@crystaldesign/planner-2d-core';
3
3
  import '@babel/runtime/helpers/slicedToArray';
4
4
  import '@babel/runtime/helpers/asyncToGenerator';
@@ -16,6 +16,7 @@ export default DivaWebPlanner;
16
16
  export type { CapturedSetImage, CapturedSetImages, PlannerViewApi } from './logic/DivaWebPlanner';
17
17
  export type { ApiCache } from './interface/API/ApiCache';
18
18
  export { JsonDataCache } from './logic/DivaApiHandler';
19
+ export { getSeriousSetNamePlaceholder } from './logic/Basket/seriousSetName';
19
20
  /** Boot-timeline diagnostics channel — see `logic/bootMark.ts`. Debug-level only, no behavior. */
20
21
  export { bootMark, bootMarksEnabled, bootNetworkMark, bootNow, bootRequestName } from './logic/bootMark';
21
22
  export type { BootDetail } from './logic/bootMark';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"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"}