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

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 (40) hide show
  1. package/build/cjs/{DivaBoxPlanner-eb204f64.js → DivaBoxPlanner-4f962972.js} +2 -2
  2. package/build/cjs/{DivaStandardPlanner-024a707c.js → DivaStandardPlanner-7c6b92f9.js} +2 -2
  3. package/build/cjs/{DoorPlanner-5fb30a3b.js → DoorPlanner-7a88099b.js} +1 -1
  4. package/build/cjs/{Host3DSignalR-053d1f70.js → Host3DSignalR-3a91a272.js} +1 -1
  5. package/build/cjs/{LiviqueWWSHandler-010c4674.js → LiviqueWWSHandler-243c87c2.js} +1 -1
  6. package/build/cjs/{PfisterWWSHandler-028180d3.js → PfisterWWSHandler-2efc2f2e.js} +1 -1
  7. package/build/cjs/{PlannerHandler2D-3641e717.js → PlannerHandler2D-ad16ea87.js} +28 -16
  8. package/build/cjs/{SeriousBasketHandler-ce8059dd.js → SeriousBasketHandler-f14beb6d.js} +1 -1
  9. package/build/cjs/{ShelfPlanner-61795dcc.js → ShelfPlanner-f025f6ef.js} +1 -1
  10. package/build/cjs/{StandardWWSHandler-45060aea.js → StandardWWSHandler-13cc77c7.js} +1 -1
  11. package/build/cjs/{index-92b3f811.js → index-36ae8486.js} +101 -85
  12. package/build/cjs/index.js +1 -1
  13. package/build/esm/{DivaBoxPlanner-e87a4462.js → DivaBoxPlanner-2b4f3aed.js} +2 -2
  14. package/build/esm/{DivaStandardPlanner-d24209f4.js → DivaStandardPlanner-36c3a2ed.js} +2 -2
  15. package/build/esm/{DoorPlanner-1664243f.js → DoorPlanner-7764fd5e.js} +1 -1
  16. package/build/esm/{Host3DSignalR-746d0063.js → Host3DSignalR-33fa9ea6.js} +1 -1
  17. package/build/esm/{LiviqueWWSHandler-7326190a.js → LiviqueWWSHandler-a2be15d3.js} +1 -1
  18. package/build/esm/{PfisterWWSHandler-9219a61d.js → PfisterWWSHandler-ee4c3a92.js} +1 -1
  19. package/build/esm/{PlannerHandler2D-3367fa6b.js → PlannerHandler2D-af5f817a.js} +28 -16
  20. package/build/esm/{SeriousBasketHandler-da02a5b3.js → SeriousBasketHandler-b28a3ffe.js} +1 -1
  21. package/build/esm/{ShelfPlanner-f35a2bb8.js → ShelfPlanner-10acbfb7.js} +1 -1
  22. package/build/esm/{StandardWWSHandler-b166bb90.js → StandardWWSHandler-522c8769.js} +1 -1
  23. package/build/esm/{index-90706aea.js → index-b31e39ae.js} +101 -85
  24. package/build/esm/index.js +1 -1
  25. package/build/types/web-planner-logic/src/interface/IDM/ArticleApi.d.ts +4 -0
  26. package/build/types/web-planner-logic/src/interface/IDM/ArticleApi.d.ts.map +1 -1
  27. package/build/types/web-planner-logic/src/interface/Planner/PlannerDataType.d.ts +2 -0
  28. package/build/types/web-planner-logic/src/interface/Planner/PlannerDataType.d.ts.map +1 -1
  29. package/build/types/web-planner-logic/src/logic/Article/DivaArticle.d.ts +5 -0
  30. package/build/types/web-planner-logic/src/logic/Article/DivaArticle.d.ts.map +1 -1
  31. package/build/types/web-planner-logic/src/logic/Planner/PlannerUtils/PlannerHandler2D.d.ts.map +1 -1
  32. package/build/types/web-planner-logic/src/logic/Planner/PlannerUtils/SVGUtils.d.ts +5 -1
  33. package/build/types/web-planner-logic/src/logic/Planner/PlannerUtils/SVGUtils.d.ts.map +1 -1
  34. package/build/types/web-planner-logic/src/model/Articles/Article/IDMCatalogArticle.d.ts.map +1 -1
  35. package/build/types/web-planner-logic/src/model/Catalog/IDMCatalogData.d.ts.map +1 -1
  36. package/build/types/web-planner-logic/src/model/Planner/PlannerElementData.d.ts +5 -2
  37. package/build/types/web-planner-logic/src/model/Planner/PlannerElementData.d.ts.map +1 -1
  38. package/build/types/web-planner-logic/src/test/accessorySvgSwapDocking.test.d.ts +2 -0
  39. package/build/types/web-planner-logic/src/test/accessorySvgSwapDocking.test.d.ts.map +1 -0
  40. package/package.json +3 -3
@@ -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-90706aea.js';
6
+ import { c as Vector2, S as SVGUtils } from './index-b31e39ae.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';
@@ -152,8 +152,9 @@ var PlannerHandler2D = /*#__PURE__*/function () {
152
152
  key: "loadSVG",
153
153
  value: (function () {
154
154
  var _loadSVG = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(plannerElement, set) {
155
- var _this = this;
156
- var svgFile, svgContentXML, svgContent, result, svgNewWidth, svgNewDepth, sizes, minBoderSVG, svgSourceUrl, correctedContent;
155
+ var _plannerElement$Heigh,
156
+ _this = this;
157
+ var svgFile, svgContentXML, svgContent, result, svgNewWidth, svgNewDepth, sizes, doStretch, minBoderSVG, svgSourceUrl, correctedContent;
157
158
  return _regeneratorRuntime.wrap(function _callee$(_context) {
158
159
  while (1) switch (_context.prev = _context.next) {
159
160
  case 0:
@@ -203,38 +204,49 @@ var PlannerHandler2D = /*#__PURE__*/function () {
203
204
  }));
204
205
  }
205
206
  plannerElement.svgBefore = svgContentXML;
206
- svgNewWidth = plannerElement.Width;
207
- svgNewDepth = plannerElement.Depth;
207
+ // a size the element derived from its svg is no measure: that axis keeps the drawing - stretching its OLT to the
208
+ // canvas size would inflate an accessory whose canvas has a margin for its AV lines
209
+ svgNewWidth = plannerElement.DoSetWidthFromSVG ? undefined : plannerElement.Width;
210
+ svgNewDepth = plannerElement.DoSetDepthFromSVG ? undefined : plannerElement.Depth;
208
211
  //fix for "kissen" that didnt had a depth but do have a height https://app.asana.com/0/1201426433314773/1201432109700389
209
- if (svgNewDepth === -1 && plannerElement.Height !== -1) svgNewDepth = plannerElement.Height;
210
- if (!(svgNewWidth != undefined && svgNewWidth > 0 && svgNewDepth != undefined && svgNewDepth > 0)) {
211
- _context.next = 31;
212
+ if (svgNewDepth == undefined && svgNewWidth != undefined && ((_plannerElement$Heigh = plannerElement.Height) !== null && _plannerElement$Heigh !== void 0 ? _plannerElement$Heigh : -1) > 0) svgNewDepth = plannerElement.Height;
213
+
214
+ // outside IDM only both measures stretch, as before - one measure would distort a globally scaled Diva svg
215
+ doStretch = set.CatalogData.isIDMFormat ? svgNewWidth != undefined || svgNewDepth != undefined : svgNewWidth != undefined && svgNewDepth != undefined;
216
+ if (!doStretch) {
217
+ _context.next = 32;
212
218
  break;
213
219
  }
214
220
  minBoderSVG = this.getMinBorderSVG(svgContentXML);
215
221
  svgSourceUrl = set.CatalogData.isIDMFormat ? svgFile : "".concat(set.CatalogData.mediaUrl, "pln_").concat(svgFile);
216
222
  correctedContent = '';
217
- _context.next = 27;
223
+ _context.next = 28;
218
224
  return new Promise(function (resolve, reject) {
219
- sizes = _this.svgUtils.ccCheckStretchAreas(svgContentXML, svgNewWidth, svgNewDepth, set.CatalogData.useGlobalSVGScale, minBoderSVG.svgMinXVal, minBoderSVG.svgMinYVal, function (_correctedContent) {
225
+ var _svgNewDepth;
226
+ sizes = _this.svgUtils.ccCheckStretchAreas(svgContentXML, svgNewWidth !== null && svgNewWidth !== void 0 ? svgNewWidth : 0, (_svgNewDepth = svgNewDepth) !== null && _svgNewDepth !== void 0 ? _svgNewDepth : 0, set.CatalogData.useGlobalSVGScale, minBoderSVG.svgMinXVal, minBoderSVG.svgMinYVal, function (_correctedContent) {
220
227
  correctedContent = _correctedContent;
221
228
  resolve();
222
- }, svgSourceUrl);
229
+ }, svgSourceUrl,
230
+ // parseSvg derives a kept axis afterwards from the stretched svg's canvas
231
+ {
232
+ width: svgNewWidth == undefined,
233
+ depth: svgNewDepth == undefined
234
+ });
223
235
  });
224
- case 27:
236
+ case 28:
225
237
  plannerElement.svgAfter = correctedContent;
226
238
  this.parseSvg(plannerElement, correctedContent, minBoderSVG, set.CatalogData.getPlannerConfig(), sizes);
227
- _context.next = 33;
239
+ _context.next = 34;
228
240
  break;
229
- case 31:
241
+ case 32:
230
242
  plannerElement.svgAfter = svgContentXML;
231
243
  this.parseSvg(plannerElement, svgContentXML, {
232
244
  svgMinXVal: 0,
233
245
  svgMinYVal: 0
234
246
  }, set.CatalogData.getPlannerConfig());
235
- case 33:
236
- return _context.abrupt("return", true);
237
247
  case 34:
248
+ return _context.abrupt("return", true);
249
+ case 35:
238
250
  case "end":
239
251
  return _context.stop();
240
252
  }
@@ -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-90706aea.js';
4
+ import { s as summaryHandlerInstance } from './index-b31e39ae.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-90706aea.js';
7
+ import { G as Grid, a as articleHandlerInstance, b as setHandlerInstance } from './index-b31e39ae.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-90706aea.js';
3
+ import './index-b31e39ae.js';
4
4
  import '@babel/runtime/helpers/slicedToArray';
5
5
  import '@babel/runtime/helpers/asyncToGenerator';
6
6
  import '@babel/runtime/helpers/defineProperty';
@@ -1377,7 +1377,7 @@ var DivaApiHandler = /*#__PURE__*/function () {
1377
1377
  return encodeURIComponent('typeNo==' + t);
1378
1378
  }).join(' || ') :
1379
1379
  // the unsuffixed additional-items field names also request the V4 pair server-side
1380
- '?fields=properties;serieNo;featureClassRefNo;priceTypeRef;itemIdentification;catalogPage;weightBrutto;weightNetto;volume;minimumDeliveryTime;widthBasicShapeNominalValue;widthBasicShapeFrom;widthBasicShapeTo;widthBasicShapeStepSize;heightBasicShapeNominalValue;heightBasicShapeFrom;heightBasicShapeTo;heightBasicShapeStepSize;depthBasicShapeNominalValue;depthBasicShapeFrom;depthBasicShapeTo;depthBasicShapeStepSize;typeKey;eClassNo;detailInfoRefs;detailInfos;partListExclusive;partListRef;decisionRefs;typeNo;sequenceNo;edpNumber;eanNumber;shortText;fullText;planningAdvice;salesNumber;avrFilter;avlFilter;mandatoryAdditionalItems;optionalAdditionalItems');
1380
+ '?fields=properties;serieNo;featureClassRefNo;flat;priceTypeRef;itemIdentification;catalogPage;weightBrutto;weightNetto;volume;minimumDeliveryTime;widthBasicShapeNominalValue;widthBasicShapeFrom;widthBasicShapeTo;widthBasicShapeStepSize;heightBasicShapeNominalValue;heightBasicShapeFrom;heightBasicShapeTo;heightBasicShapeStepSize;depthBasicShapeNominalValue;depthBasicShapeFrom;depthBasicShapeTo;depthBasicShapeStepSize;typeKey;eClassNo;detailInfoRefs;detailInfos;partListExclusive;partListRef;decisionRefs;typeNo;sequenceNo;edpNumber;eanNumber;shortText;fullText;planningAdvice;salesNumber;avrFilter;avlFilter;mandatoryAdditionalItems;optionalAdditionalItems');
1381
1381
  }
1382
1382
  }, {
1383
1383
  key: "getIDMFeatures",
@@ -20727,14 +20727,17 @@ var SVGUtils = /*#__PURE__*/function () {
20727
20727
  /**
20728
20728
  * Stretches the SVG to the target OLT size and passes the result to the callback.
20729
20729
  * @param svgSourceUrl optional URL / path of the loaded SVG for diagnostics
20730
+ * @param keep axes that stay as drawn whatever their target says (an article without that measure)
20730
20731
  */
20731
20732
  }, {
20732
20733
  key: "ccCheckStretchAreas",
20733
- value: function ccCheckStretchAreas(content, newWidthCM, newHeightCM, useglobalSvgScale, svgMinBorderXVal, svgMinBorderYVal, callback, svgSourceUrl) {
20734
+ value: function ccCheckStretchAreas(content, newWidthCM, newHeightCM, useglobalSvgScale, svgMinBorderXVal, svgMinBorderYVal, callback, svgSourceUrl, keep) {
20734
20735
  var result = stretchArticleSvg(content, newWidthCM, newHeightCM, {
20735
20736
  useGlobalScale: useglobalSvgScale,
20736
20737
  minBorderX: svgMinBorderXVal,
20737
- minBorderY: svgMinBorderYVal
20738
+ minBorderY: svgMinBorderYVal,
20739
+ keepWidth: keep === null || keep === void 0 ? void 0 : keep.width,
20740
+ keepDepth: keep === null || keep === void 0 ? void 0 : keep.depth
20738
20741
  });
20739
20742
  var _iterator2 = _createForOfIteratorHelper$l(result.warnings),
20740
20743
  _step2;
@@ -20875,7 +20878,9 @@ function _loadMoreFromIDMArticles() {
20875
20878
  }).map(function (a) {
20876
20879
  return a.featureClassRefNo;
20877
20880
  })));
20878
- promises = [set.api.getDataCache(set.api.getIDMFeatureClass(catalogData.accountGuid, toLoadFeatureClassRefNo), undefined, undefined, 'enricher'), toLoadPFGroups.length ? set.api.getDataCache(set.api.getIDMPriceFeatureGroups(catalogData.accountGuid, toLoadPFGroups), undefined, undefined, 'enricher') : undefined, toLoadDecisionIds.length ? fetchDecisions(set, catalogData, toLoadDecisionIds) : undefined];
20881
+ promises = [
20882
+ // an empty featureClassNos list does not mean "none" to the api but "all of them"
20883
+ toLoadFeatureClassRefNo.length ? set.api.getDataCache(set.api.getIDMFeatureClass(catalogData.accountGuid, toLoadFeatureClassRefNo), undefined, undefined, 'enricher') : [], toLoadPFGroups.length ? set.api.getDataCache(set.api.getIDMPriceFeatureGroups(catalogData.accountGuid, toLoadPFGroups), undefined, undefined, 'enricher') : undefined, toLoadDecisionIds.length ? fetchDecisions(set, catalogData, toLoadDecisionIds) : undefined];
20879
20884
  _context8.next = 22;
20880
20885
  return Promise.all(promises);
20881
20886
  case 22:
@@ -21138,21 +21143,27 @@ function _loadMoreFromIDMArticles() {
21138
21143
  return _regeneratorRuntime.wrap(function _loop6$(_context7) {
21139
21144
  while (1) switch (_context7.prev = _context7.next) {
21140
21145
  case 0:
21141
- catalogArticleData = catalogArticleDatas[_i9];
21146
+ catalogArticleData = catalogArticleDatas[_i9]; // an item without a feature class has no features of its own to initialize
21147
+ if (!(catalogArticleData.featureClassRefNo === undefined)) {
21148
+ _context7.next = 3;
21149
+ break;
21150
+ }
21151
+ return _context7.abrupt("return", 1);
21152
+ case 3:
21142
21153
  featureClass = featureClasses.find(function (fc) {
21143
21154
  return fc.featureClassNo == catalogArticleData.featureClassRefNo;
21144
21155
  });
21145
21156
  if (featureClass) {
21146
- _context7.next = 4;
21157
+ _context7.next = 6;
21147
21158
  break;
21148
21159
  }
21149
21160
  throw new Error('featureClassRefNo ' + catalogArticleData.featureClassRefNo + ' not found');
21150
- case 4:
21161
+ case 6:
21151
21162
  features = catalogData.getFeatures(getFeaturesByFeatureClass(featureClass));
21152
21163
  for (j = 0; j < features.length; j++) {
21153
21164
  initFeature(features[j], catalogArticleData, set, catalogData);
21154
21165
  }
21155
- case 6:
21166
+ case 8:
21156
21167
  case "end":
21157
21168
  return _context7.stop();
21158
21169
  }
@@ -21161,19 +21172,25 @@ function _loadMoreFromIDMArticles() {
21161
21172
  _i9 = 0;
21162
21173
  case 87:
21163
21174
  if (!(_i9 < catalogArticleDatas.length)) {
21164
- _context8.next = 92;
21175
+ _context8.next = 94;
21165
21176
  break;
21166
21177
  }
21167
21178
  return _context8.delegateYield(_loop6(), "t6", 89);
21168
21179
  case 89:
21180
+ if (!_context8.t6) {
21181
+ _context8.next = 91;
21182
+ break;
21183
+ }
21184
+ return _context8.abrupt("continue", 91);
21185
+ case 91:
21169
21186
  _i9++;
21170
21187
  _context8.next = 87;
21171
21188
  break;
21172
- case 92:
21189
+ case 94:
21173
21190
  catalogArticleDatas.map(function (c) {
21174
21191
  return c.areOptionsLoaded = true;
21175
21192
  });
21176
- case 93:
21193
+ case 95:
21177
21194
  case "end":
21178
21195
  return _context8.stop();
21179
21196
  }
@@ -22086,7 +22103,7 @@ function initIDMArticles(jsonItems, catalogData) {
22086
22103
  }
22087
22104
  }
22088
22105
  function getCatalogArticle(article, catalogData) {
22089
- var _catalogData$catalogM, _article$typeKey, _article$salesNumber, _articleMask$name, _articleMask$properti, _article$depthBasicSh, _article$depthBasicSh2, _article$depthBasicSh3, _article$widthBasicSh, _article$widthBasicSh2, _article$widthBasicSh3, _article$heightBasicS, _article$heightBasicS2, _article$heightBasicS3, _article$weightNetto, _article$detailInfos, _article$detailInfos2, _article$detailInfos3, _ref, _ref2, _articleMask$groupnam;
22106
+ var _catalogData$catalogM, _article$typeKey, _article$salesNumber, _articleMask$name, _articleMask$properti, _article$flatPrice, _article$depthBasicSh, _article$depthBasicSh2, _article$depthBasicSh3, _article$widthBasicSh, _article$widthBasicSh2, _article$widthBasicSh3, _article$heightBasicS, _article$heightBasicS2, _article$heightBasicS3, _article$weightNetto, _article$detailInfos, _article$detailInfos2, _article$detailInfos3, _ref, _ref2, _articleMask$groupnam;
22090
22107
  var articleMask = (_catalogData$catalogM = catalogData.catalogMask) === null || _catalogData$catalogM === void 0 || (_catalogData$catalogM = _catalogData$catalogM.articles) === null || _catalogData$catalogM === void 0 ? void 0 : _catalogData$catalogM[article.typeNo];
22091
22108
  var lang = catalogData.api.getLanguageLowercase();
22092
22109
  // empty locale objects ({} or only empty strings) are truthy, so ?? alone doesn't fall back
@@ -22125,8 +22142,9 @@ function getCatalogArticle(article, catalogData) {
22125
22142
  properties: [].concat(_toConsumableArray(convertProperties(article.properties, lang)), _toConsumableArray((_articleMask$properti = articleMask === null || articleMask === void 0 ? void 0 : articleMask.properties) !== null && _articleMask$properti !== void 0 ? _articleMask$properti : [])),
22126
22143
  optionProperties: optionProperties,
22127
22144
  featureProperties: featureProperties,
22128
- articleType: article.featureClassRefNo === undefined ? 'FLAT' : 'OPTIONTREE',
22129
- price: 0,
22145
+ // the service decides what is complete from the list - a missing feature class alone still leaves prices to load
22146
+ articleType: article.flat ? 'FLAT' : 'OPTIONTREE',
22147
+ price: article.flat ? (_article$flatPrice = article.flatPrice) !== null && _article$flatPrice !== void 0 ? _article$flatPrice : 0 : 0,
22130
22148
  featureClassRefNo: article.featureClassRefNo,
22131
22149
  useEkPrices: catalogData.api.useEkPrices,
22132
22150
  depth: article.depthBasicShapeNominalValue !== undefined ? Math.floor(((_article$depthBasicSh = article.depthBasicShapeNominalValue) !== null && _article$depthBasicSh !== void 0 ? _article$depthBasicSh : 0) / 10) : undefined,
@@ -31336,20 +31354,17 @@ var DivaArticle = /*#__PURE__*/function () {
31336
31354
  value: function addMergesToOPG(opt_opv, variantValues, visibleOPVs) {
31337
31355
  this.article.catalogArticle.addMergesToOPG(opt_opv, variantValues, visibleOPVs);
31338
31356
  }
31357
+
31358
+ /**
31359
+ * Refreshes the planner data that depends on the article's relation, after DivaSet linked it to its parent. The svg
31360
+ * fields (curSVG, layer, AV counts) stay: the constructor sets the first svg and the engine's svg tausch owns them
31361
+ * afterwards - resetting them on every docking made the planner miss a switch back to the first svg.
31362
+ */
31339
31363
  }, {
31340
31364
  key: "updatePlannerData",
31341
31365
  value: function updatePlannerData() {
31342
31366
  if (!this.actPlannerData) return;
31343
31367
  if (!this.article.catalogArticle.catalogPlannerArticle) return;
31344
- this.actPlannerData.curSVG = this.article.catalogArticle.catalogPlannerArticle.topSvg;
31345
- this.actPlannerData.layer = this.article.catalogArticle.catalogPlannerArticle.topLayer;
31346
- this.actPlannerData.hasAVL = this.article.catalogArticle.catalogPlannerArticle.topHasAVL;
31347
- this.actPlannerData.hasAVR = this.article.catalogArticle.catalogPlannerArticle.topHasAVR;
31348
- this.actPlannerData.countAVC = this.article.catalogArticle.catalogPlannerArticle.topAVC;
31349
- this.actPlannerData.countAVO = this.article.catalogArticle.catalogPlannerArticle.topAVO;
31350
- this.actPlannerData.countAVU = this.article.catalogArticle.catalogPlannerArticle.topAVU;
31351
- this.actPlannerData.countAVN = this.article.catalogArticle.catalogPlannerArticle.topAVN;
31352
- this.actPlannerData.countAVS = this.article.catalogArticle.catalogPlannerArticle.topAVS;
31353
31368
  this.actPlannerData.isAccessoire = !this.isPartListArticle && this.article.relatedToBasketId != undefined;
31354
31369
  }
31355
31370
  }, {
@@ -31374,6 +31389,8 @@ var DivaArticle = /*#__PURE__*/function () {
31374
31389
  this.article.calcWidth = newWidth;
31375
31390
  if (this.article.hasPlannerArticle) {
31376
31391
  this.actPlannerData.width = newWidth;
31392
+ // a configured width is a measure even when it equals the one derived from the svg
31393
+ this.actPlannerData.widthFromSVG = false;
31377
31394
  }
31378
31395
  }
31379
31396
  }, {
@@ -31398,6 +31415,7 @@ var DivaArticle = /*#__PURE__*/function () {
31398
31415
  this.article.calcDepth = newDepth;
31399
31416
  if (this.article.hasPlannerArticle) {
31400
31417
  this.actPlannerData.depth = newDepth;
31418
+ this.actPlannerData.depthFromSVG = false;
31401
31419
  }
31402
31420
  }
31403
31421
  }, {
@@ -31893,6 +31911,7 @@ var DivaArticle = /*#__PURE__*/function () {
31893
31911
  if (!!newPartlistArticle.catalogArticle.overwriteParentDepth && this.plannerData && newPartlistArticle.depth) {
31894
31912
  var _newPartlistArticle$d, _newPartlistArticle$d2;
31895
31913
  this.plannerData.depth = (_newPartlistArticle$d = newPartlistArticle.depth) !== null && _newPartlistArticle$d !== void 0 ? _newPartlistArticle$d : -1;
31914
+ this.plannerData.depthFromSVG = false;
31896
31915
  this.article.calcDepth = (_newPartlistArticle$d2 = newPartlistArticle.depth) !== null && _newPartlistArticle$d2 !== void 0 ? _newPartlistArticle$d2 : -1;
31897
31916
  }
31898
31917
  newPartlistArticle.hasPartlistArticleInitialized = this.hasPartlistArticleInitialized;
@@ -32662,7 +32681,7 @@ var DivaArticle = /*#__PURE__*/function () {
32662
32681
  break;
32663
32682
  }
32664
32683
  _context.next = 4;
32665
- return import('./ShelfPlanner-f35a2bb8.js');
32684
+ return import('./ShelfPlanner-10acbfb7.js');
32666
32685
  case 4:
32667
32686
  _yield$import = _context.sent;
32668
32687
  ShelfPlanner = _yield$import["default"];
@@ -41308,7 +41327,7 @@ var DivaSet = /*#__PURE__*/function () {
41308
41327
  break;
41309
41328
  }
41310
41329
  _context5.next = 3;
41311
- return import('./DoorPlanner-1664243f.js');
41330
+ return import('./DoorPlanner-7764fd5e.js');
41312
41331
  case 3:
41313
41332
  _yield$import = _context5.sent;
41314
41333
  DoorPlanner = _yield$import["default"];
@@ -49262,7 +49281,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
49262
49281
  break;
49263
49282
  case 3:
49264
49283
  _context12.next = 5;
49265
- return import('./PfisterWWSHandler-9219a61d.js');
49284
+ return import('./PfisterWWSHandler-ee4c3a92.js');
49266
49285
  case 5:
49267
49286
  _yield$import = _context12.sent;
49268
49287
  PfisterWWSHandler = _yield$import["default"];
@@ -49270,7 +49289,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
49270
49289
  return _context12.abrupt("break", 27);
49271
49290
  case 9:
49272
49291
  _context12.next = 11;
49273
- return import('./LiviqueWWSHandler-7326190a.js');
49292
+ return import('./LiviqueWWSHandler-a2be15d3.js');
49274
49293
  case 11:
49275
49294
  _yield$import2 = _context12.sent;
49276
49295
  LiviqueWWSHandler = _yield$import2["default"];
@@ -49278,7 +49297,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
49278
49297
  return _context12.abrupt("break", 27);
49279
49298
  case 15:
49280
49299
  _context12.next = 17;
49281
- return import('./SeriousBasketHandler-da02a5b3.js');
49300
+ return import('./SeriousBasketHandler-b28a3ffe.js');
49282
49301
  case 17:
49283
49302
  _yield$import3 = _context12.sent;
49284
49303
  SeriousWWSHandler = _yield$import3["default"];
@@ -49286,7 +49305,7 @@ var DivaBasketHandler = /*#__PURE__*/function () {
49286
49305
  return _context12.abrupt("break", 27);
49287
49306
  case 21:
49288
49307
  _context12.next = 23;
49289
- return import('./StandardWWSHandler-b166bb90.js');
49308
+ return import('./StandardWWSHandler-522c8769.js');
49290
49309
  case 23:
49291
49310
  _yield$import4 = _context12.sent;
49292
49311
  StandardWWSHandler = _yield$import4["default"];
@@ -50673,7 +50692,7 @@ var PlannerHandler3D = /*#__PURE__*/function () {
50673
50692
  //If we need real time rendering initialize the SignalR and 3D host connection Handler
50674
50693
  bootMark('signalr: chunk import start');
50675
50694
  _context3.next = 3;
50676
- return import('./Host3DSignalR-746d0063.js');
50695
+ return import('./Host3DSignalR-33fa9ea6.js');
50677
50696
  case 3:
50678
50697
  _yield$import = _context3.sent;
50679
50698
  Host3DSignalR = _yield$import["default"];
@@ -52405,7 +52424,7 @@ var DivaPlannerHandler = /*#__PURE__*/function () {
52405
52424
  break;
52406
52425
  case 8:
52407
52426
  _context5.next = 10;
52408
- return import('./DivaStandardPlanner-d24209f4.js');
52427
+ return import('./DivaStandardPlanner-36c3a2ed.js');
52409
52428
  case 10:
52410
52429
  _yield$import = _context5.sent;
52411
52430
  DivaStandardPlanner = _yield$import["default"];
@@ -52416,7 +52435,7 @@ var DivaPlannerHandler = /*#__PURE__*/function () {
52416
52435
  return _context5.abrupt("break", 21);
52417
52436
  case 15:
52418
52437
  _context5.next = 17;
52419
- return import('./DivaBoxPlanner-e87a4462.js');
52438
+ return import('./DivaBoxPlanner-2b4f3aed.js');
52420
52439
  case 17:
52421
52440
  _yield$import2 = _context5.sent;
52422
52441
  DivaBoxPlanner = _yield$import2["default"];
@@ -58195,8 +58214,6 @@ var PlannerElementData = /*#__PURE__*/function () {
58195
58214
  //When reloading the element this array saves the previous docking points for redocking
58196
58215
  _defineProperty(this, "plannerType", void 0);
58197
58216
  _defineProperty(this, "basketId", void 0);
58198
- _defineProperty(this, "doSetWidthFromSVG", void 0);
58199
- _defineProperty(this, "doSetDepthFromSVG", void 0);
58200
58217
  this.basketId = basketId;
58201
58218
  this.planElement = {
58202
58219
  elementId: _elementId,
@@ -58216,8 +58233,6 @@ var PlannerElementData = /*#__PURE__*/function () {
58216
58233
  this.tempDockingPoints = [];
58217
58234
  this.plannerStateHash = '';
58218
58235
  this.plannerType = plannerType;
58219
- this.doSetWidthFromSVG = false;
58220
- this.doSetDepthFromSVG = false;
58221
58236
  }
58222
58237
  return _createClass(PlannerElementData, [{
58223
58238
  key: "destroy",
@@ -58608,17 +58623,6 @@ var PlannerElementData = /*#__PURE__*/function () {
58608
58623
  key: "updatePlannerData",
58609
58624
  value: function updatePlannerData(data) {
58610
58625
  //The plannerData ist keine Kopie, sondern ein verweis - wenn im Konfigurator das PlannerData Object geändert wird, dann wird es das hier auch.
58611
- // <= 0 covers undefined, -1 and 0 (IDM articles arrive with width/depth 0) -> derive size from the SVG OLF/OLT geometry
58612
- if ((data === null || data === void 0 ? void 0 : data.width) == undefined || data.width <= 0) {
58613
- this.doSetWidthFromSVG = true;
58614
- } else {
58615
- this.doSetWidthFromSVG = false;
58616
- }
58617
- if ((data === null || data === void 0 ? void 0 : data.depth) == undefined || data.depth <= 0) {
58618
- this.doSetDepthFromSVG = true;
58619
- } else {
58620
- this.doSetDepthFromSVG = false;
58621
- }
58622
58626
  if (this.planElement.plannerData == null && data != null) {
58623
58627
  this.planElement.plannerData = data;
58624
58628
  this.plannerStateHash = md5(JSON.stringify(_objectSpread$4(_objectSpread$4({}, this.planElement.plannerData), {}, {
@@ -58651,27 +58655,39 @@ var PlannerElementData = /*#__PURE__*/function () {
58651
58655
  value: function cleanShapeOLT2D() {
58652
58656
  this.planElement.svgShapeOLT2D = undefined;
58653
58657
  }
58658
+ /**
58659
+ * True while the width is no measure of the article: none (<= 0 covers undefined, -1 and 0 - IDM articles
58660
+ * arrive without) or one derived from its svg. An svg load then keeps the drawn width.
58661
+ */
58654
58662
  }, {
58655
58663
  key: "DoSetWidthFromSVG",
58656
58664
  get: function get() {
58657
- return this.doSetWidthFromSVG;
58665
+ var _this$planElement$pla6, _this$planElement$pla7;
58666
+ var width = (_this$planElement$pla6 = this.planElement.plannerData) === null || _this$planElement$pla6 === void 0 ? void 0 : _this$planElement$pla6.width;
58667
+ return !(width != undefined && width > 0) || !!((_this$planElement$pla7 = this.planElement.plannerData) !== null && _this$planElement$pla7 !== void 0 && _this$planElement$pla7.widthFromSVG);
58658
58668
  }
58669
+
58670
+ /** True while the depth is no measure of the article, see DoSetWidthFromSVG. */
58659
58671
  }, {
58660
58672
  key: "DoSetDepthFromSVG",
58661
58673
  get: function get() {
58662
- return this.doSetDepthFromSVG;
58674
+ var _this$planElement$pla8, _this$planElement$pla9;
58675
+ var depth = (_this$planElement$pla8 = this.planElement.plannerData) === null || _this$planElement$pla8 === void 0 ? void 0 : _this$planElement$pla8.depth;
58676
+ return !(depth != undefined && depth > 0) || !!((_this$planElement$pla9 = this.planElement.plannerData) !== null && _this$planElement$pla9 !== void 0 && _this$planElement$pla9.depthFromSVG);
58663
58677
  }
58664
58678
  }, {
58665
58679
  key: "WidthFromSVG",
58666
58680
  set: function set(svgWidth) {
58667
- if (this.planElement.plannerData) this.planElement.plannerData.width = svgWidth;
58668
- this.doSetWidthFromSVG = false;
58681
+ if (!this.planElement.plannerData) return;
58682
+ this.planElement.plannerData.width = svgWidth;
58683
+ this.planElement.plannerData.widthFromSVG = true;
58669
58684
  }
58670
58685
  }, {
58671
58686
  key: "DepthFromSVG",
58672
58687
  set: function set(svgDepth) {
58673
- if (this.planElement.plannerData) this.planElement.plannerData.depth = svgDepth;
58674
- this.doSetDepthFromSVG = false;
58688
+ if (!this.planElement.plannerData) return;
58689
+ this.planElement.plannerData.depth = svgDepth;
58690
+ this.planElement.plannerData.depthFromSVG = true;
58675
58691
  }
58676
58692
  }, {
58677
58693
  key: "ElementId",
@@ -58681,38 +58697,38 @@ var PlannerElementData = /*#__PURE__*/function () {
58681
58697
  }, {
58682
58698
  key: "SvgFileName",
58683
58699
  get: function get() {
58684
- var _this$planElement$pla6;
58685
- return (_this$planElement$pla6 = this.planElement.plannerData) === null || _this$planElement$pla6 === void 0 ? void 0 : _this$planElement$pla6.curSVG;
58700
+ var _this$planElement$pla10;
58701
+ return (_this$planElement$pla10 = this.planElement.plannerData) === null || _this$planElement$pla10 === void 0 ? void 0 : _this$planElement$pla10.curSVG;
58686
58702
  }
58687
58703
  }, {
58688
58704
  key: "Width",
58689
58705
  get: function get() {
58690
- var _this$planElement$pla7;
58691
- return (_this$planElement$pla7 = this.planElement.plannerData) === null || _this$planElement$pla7 === void 0 ? void 0 : _this$planElement$pla7.width;
58706
+ var _this$planElement$pla11;
58707
+ return (_this$planElement$pla11 = this.planElement.plannerData) === null || _this$planElement$pla11 === void 0 ? void 0 : _this$planElement$pla11.width;
58692
58708
  }
58693
58709
  }, {
58694
58710
  key: "Height",
58695
58711
  get: function get() {
58696
- var _this$planElement$pla8;
58697
- return (_this$planElement$pla8 = this.planElement.plannerData) === null || _this$planElement$pla8 === void 0 ? void 0 : _this$planElement$pla8.height;
58712
+ var _this$planElement$pla12;
58713
+ return (_this$planElement$pla12 = this.planElement.plannerData) === null || _this$planElement$pla12 === void 0 ? void 0 : _this$planElement$pla12.height;
58698
58714
  }
58699
58715
  }, {
58700
58716
  key: "Depth",
58701
58717
  get: function get() {
58702
- var _this$planElement$pla9;
58703
- return (_this$planElement$pla9 = this.planElement.plannerData) === null || _this$planElement$pla9 === void 0 ? void 0 : _this$planElement$pla9.depth;
58718
+ var _this$planElement$pla13;
58719
+ return (_this$planElement$pla13 = this.planElement.plannerData) === null || _this$planElement$pla13 === void 0 ? void 0 : _this$planElement$pla13.depth;
58704
58720
  }
58705
58721
  }, {
58706
58722
  key: "HasAVL",
58707
58723
  get: function get() {
58708
- var _this$planElement$pla10;
58709
- return (_this$planElement$pla10 = this.planElement.plannerData) === null || _this$planElement$pla10 === void 0 ? void 0 : _this$planElement$pla10.hasAVL;
58724
+ var _this$planElement$pla14;
58725
+ return (_this$planElement$pla14 = this.planElement.plannerData) === null || _this$planElement$pla14 === void 0 ? void 0 : _this$planElement$pla14.hasAVL;
58710
58726
  }
58711
58727
  }, {
58712
58728
  key: "HasAVR",
58713
58729
  get: function get() {
58714
- var _this$planElement$pla11;
58715
- return (_this$planElement$pla11 = this.planElement.plannerData) === null || _this$planElement$pla11 === void 0 ? void 0 : _this$planElement$pla11.hasAVR;
58730
+ var _this$planElement$pla15;
58731
+ return (_this$planElement$pla15 = this.planElement.plannerData) === null || _this$planElement$pla15 === void 0 ? void 0 : _this$planElement$pla15.hasAVR;
58716
58732
  }
58717
58733
  }, {
58718
58734
  key: "HasAVO",
@@ -58836,8 +58852,8 @@ var PlannerElementData = /*#__PURE__*/function () {
58836
58852
  }, {
58837
58853
  key: "svgBefore",
58838
58854
  get: function get() {
58839
- var _this$planElement$pla12;
58840
- return (_this$planElement$pla12 = this.planElement.plannerData) === null || _this$planElement$pla12 === void 0 ? void 0 : _this$planElement$pla12.svgBefore;
58855
+ var _this$planElement$pla16;
58856
+ return (_this$planElement$pla16 = this.planElement.plannerData) === null || _this$planElement$pla16 === void 0 ? void 0 : _this$planElement$pla16.svgBefore;
58841
58857
  },
58842
58858
  set: function set(svg) {
58843
58859
  if (this.planElement.plannerData) this.planElement.plannerData.svgBefore = svg;
@@ -58845,8 +58861,8 @@ var PlannerElementData = /*#__PURE__*/function () {
58845
58861
  }, {
58846
58862
  key: "svgAfter",
58847
58863
  get: function get() {
58848
- var _this$planElement$pla13;
58849
- return (_this$planElement$pla13 = this.planElement.plannerData) === null || _this$planElement$pla13 === void 0 ? void 0 : _this$planElement$pla13.svgAfter;
58864
+ var _this$planElement$pla17;
58865
+ return (_this$planElement$pla17 = this.planElement.plannerData) === null || _this$planElement$pla17 === void 0 ? void 0 : _this$planElement$pla17.svgAfter;
58850
58866
  },
58851
58867
  set: function set(svg) {
58852
58868
  if (this.planElement.plannerData) this.planElement.plannerData.svgAfter = svg;
@@ -58928,14 +58944,14 @@ var PlannerElementData = /*#__PURE__*/function () {
58928
58944
  }, {
58929
58945
  key: "getIsNotDockedAccessoire",
58930
58946
  value: function getIsNotDockedAccessoire() {
58931
- var _this$planElement$pla14;
58932
- return !!((_this$planElement$pla14 = this.planElement.plannerData) !== null && _this$planElement$pla14 !== void 0 && _this$planElement$pla14.isNotDockedAccessoire);
58947
+ var _this$planElement$pla18;
58948
+ return !!((_this$planElement$pla18 = this.planElement.plannerData) !== null && _this$planElement$pla18 !== void 0 && _this$planElement$pla18.isNotDockedAccessoire);
58933
58949
  }
58934
58950
  }, {
58935
58951
  key: "getParentElementId",
58936
58952
  value: function getParentElementId() {
58937
- var _this$planElement$pla15;
58938
- return (_this$planElement$pla15 = this.planElement.plannerData) === null || _this$planElement$pla15 === void 0 ? void 0 : _this$planElement$pla15.parentElementId;
58953
+ var _this$planElement$pla19;
58954
+ return (_this$planElement$pla19 = this.planElement.plannerData) === null || _this$planElement$pla19 === void 0 ? void 0 : _this$planElement$pla19.parentElementId;
58939
58955
  }
58940
58956
  }, {
58941
58957
  key: "getElementId",
@@ -58967,12 +58983,12 @@ var PlannerElementData = /*#__PURE__*/function () {
58967
58983
  key: "getWorldPosCornerOLF",
58968
58984
  value: function getWorldPosCornerOLF() {
58969
58985
  if (this.HasOLFPolygon && this.planElement.olfWidth != null && this.planElement.olfDepth != null) {
58970
- var _this$planElement$pla16, _this$planElement$pla17;
58986
+ var _this$planElement$pla20, _this$planElement$pla21;
58971
58987
  var olfW = this.planElement.olfWidth / DivaUtils.UnitRecalc;
58972
58988
  var olfD = this.planElement.olfDepth / DivaUtils.UnitRecalc;
58973
58989
  var olfCornerDir = new Vector2(-olfW / 2, -olfD / 2);
58974
58990
  olfCornerDir = Vector2.rotateOrigin(olfCornerDir, this.planElement.rotDeg);
58975
- return new Vector3(this.planElement.worldPosCenter.x + olfCornerDir.x, this.planElement.worldPosCenter.y - ((_this$planElement$pla16 = (_this$planElement$pla17 = this.planElement.plannerData) === null || _this$planElement$pla17 === void 0 ? void 0 : _this$planElement$pla17.height) !== null && _this$planElement$pla16 !== void 0 ? _this$planElement$pla16 : 0) / 2, this.planElement.worldPosCenter.z + olfCornerDir.y);
58991
+ return new Vector3(this.planElement.worldPosCenter.x + olfCornerDir.x, this.planElement.worldPosCenter.y - ((_this$planElement$pla20 = (_this$planElement$pla21 = this.planElement.plannerData) === null || _this$planElement$pla21 === void 0 ? void 0 : _this$planElement$pla21.height) !== null && _this$planElement$pla20 !== void 0 ? _this$planElement$pla20 : 0) / 2, this.planElement.worldPosCenter.z + olfCornerDir.y);
58976
58992
  }
58977
58993
  return this.WorldPosCorner;
58978
58994
  }
@@ -59033,8 +59049,8 @@ var PlannerElementData = /*#__PURE__*/function () {
59033
59049
  }, {
59034
59050
  key: "getFilterAVL",
59035
59051
  value: function getFilterAVL() {
59036
- var _this$planElement$pla18;
59037
- return this.planElement.plannerData ? (_this$planElement$pla18 = this.planElement.plannerData) === null || _this$planElement$pla18 === void 0 ? void 0 : _this$planElement$pla18.AVLFilter : [];
59052
+ var _this$planElement$pla22;
59053
+ return this.planElement.plannerData ? (_this$planElement$pla22 = this.planElement.plannerData) === null || _this$planElement$pla22 === void 0 ? void 0 : _this$planElement$pla22.AVLFilter : [];
59038
59054
  }
59039
59055
  }, {
59040
59056
  key: "getFilterAVR",
@@ -59118,14 +59134,14 @@ var PlannerElementData = /*#__PURE__*/function () {
59118
59134
  }, {
59119
59135
  key: "getAccessoires",
59120
59136
  value: function getAccessoires() {
59121
- var _this$planElement$pla19;
59122
- return this.planElement.plannerData ? (_this$planElement$pla19 = this.planElement.plannerData) === null || _this$planElement$pla19 === void 0 ? void 0 : _this$planElement$pla19.accessoireList : [];
59137
+ var _this$planElement$pla23;
59138
+ return this.planElement.plannerData ? (_this$planElement$pla23 = this.planElement.plannerData) === null || _this$planElement$pla23 === void 0 ? void 0 : _this$planElement$pla23.accessoireList : [];
59123
59139
  }
59124
59140
  }, {
59125
59141
  key: "getSVGsWithFormula",
59126
59142
  value: function getSVGsWithFormula() {
59127
- var _this$planElement$pla20;
59128
- return (_this$planElement$pla20 = this.planElement.plannerData) === null || _this$planElement$pla20 === void 0 ? void 0 : _this$planElement$pla20.svgsWithFormula;
59143
+ var _this$planElement$pla24;
59144
+ return (_this$planElement$pla24 = this.planElement.plannerData) === null || _this$planElement$pla24 === void 0 ? void 0 : _this$planElement$pla24.svgsWithFormula;
59129
59145
  }
59130
59146
  /** OLT offset from OLF corner (cm). When HasOLFPolygon, DP LocalWorldPos is OLF-relative; subtract this to get OLT-relative. */
59131
59147
  }, {
@@ -59143,14 +59159,14 @@ var PlannerElementData = /*#__PURE__*/function () {
59143
59159
  }, {
59144
59160
  key: "getVaraintValuesInfluencingAVLAVRFilter",
59145
59161
  value: function getVaraintValuesInfluencingAVLAVRFilter() {
59146
- var _this$planElement$pla21;
59147
- return (_this$planElement$pla21 = this.planElement.plannerData) === null || _this$planElement$pla21 === void 0 ? void 0 : _this$planElement$pla21.varaintValuesInfluencingAVLAVRFilter;
59162
+ var _this$planElement$pla25;
59163
+ return (_this$planElement$pla25 = this.planElement.plannerData) === null || _this$planElement$pla25 === void 0 ? void 0 : _this$planElement$pla25.varaintValuesInfluencingAVLAVRFilter;
59148
59164
  }
59149
59165
  }, {
59150
59166
  key: "getCurrentAccessorires",
59151
59167
  value: function getCurrentAccessorires() {
59152
- var _this$planElement$pla22;
59153
- return this.planElement.plannerData ? (_this$planElement$pla22 = this.planElement.plannerData) === null || _this$planElement$pla22 === void 0 ? void 0 : _this$planElement$pla22.currentAccessorires : [];
59168
+ var _this$planElement$pla26;
59169
+ return this.planElement.plannerData ? (_this$planElement$pla26 = this.planElement.plannerData) === null || _this$planElement$pla26 === void 0 ? void 0 : _this$planElement$pla26.currentAccessorires : [];
59154
59170
  }
59155
59171
  }]);
59156
59172
  }();
@@ -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-90706aea.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-b31e39ae.js';
2
2
  export { DockingPoint } from '@crystaldesign/planner-2d-core';
3
3
  import '@babel/runtime/helpers/slicedToArray';
4
4
  import '@babel/runtime/helpers/asyncToGenerator';
@@ -11,6 +11,10 @@ export interface IDMItemApi {
11
11
  lastUpdatedByDisplayText: string;
12
12
  lastUpdatedBy: string;
13
13
  featureClassRefNo: number;
14
+ /** Complete from the item list: no features, decisions or partlist and at most one price - planned without further requests. */
15
+ flat?: boolean;
16
+ /** The one price of a flat item; missing when it has none. */
17
+ flatPrice?: number;
14
18
  priceTypeRef: number;
15
19
  itemIdentification: string;
16
20
  catalogPage: string;