@crystaldesign/web-planner-logic 26.11.0-beta.9 → 26.12.0-beta.1
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.
- package/build/cjs/{DivaBoxPlanner-02a2dbbf.js → DivaBoxPlanner-104200d4.js} +132 -45
- package/build/cjs/{DivaStandardPlanner-150246c0.js → DivaStandardPlanner-afd61e89.js} +584 -310
- package/build/cjs/{DoorPlanner-ce630754.js → DoorPlanner-58218b20.js} +2 -1
- package/build/cjs/{Host3DSignalR-b0b1fb8d.js → Host3DSignalR-43cccc62.js} +40 -24
- package/build/cjs/{LiviqueWWSHandler-c11ea7d2.js → LiviqueWWSHandler-9ac1d546.js} +2 -1
- package/build/cjs/{PfisterWWSHandler-3c723ecc.js → PfisterWWSHandler-27d3c2f1.js} +2 -1
- package/build/cjs/{PlannerHandler2D-6c0324be.js → PlannerHandler2D-b9e0aa00.js} +1 -1
- package/build/cjs/{SeriousBasketHandler-d1ae4006.js → SeriousBasketHandler-9225ef60.js} +2 -1
- package/build/cjs/{ShelfPlanner-04d98f4d.js → ShelfPlanner-89660e65.js} +261 -148
- package/build/cjs/{StandardWWSHandler-9b596caf.js → StandardWWSHandler-eaf1106a.js} +2 -1
- package/build/cjs/{index-633196ab.js → index-9279cd6b.js} +16313 -14314
- package/build/cjs/index.js +8 -1
- package/build/esm/{DivaBoxPlanner-fa9f6ec6.js → DivaBoxPlanner-49ca2254.js} +132 -45
- package/build/esm/{DivaStandardPlanner-6c001048.js → DivaStandardPlanner-5b1937df.js} +583 -310
- package/build/esm/{DoorPlanner-ef9165f9.js → DoorPlanner-e5d456e3.js} +2 -1
- package/build/esm/{Host3DSignalR-2dc8478a.js → Host3DSignalR-bf8a4afc.js} +40 -24
- package/build/esm/{LiviqueWWSHandler-b6e8bf5f.js → LiviqueWWSHandler-1e537c0a.js} +2 -1
- package/build/esm/{PfisterWWSHandler-54b3e0aa.js → PfisterWWSHandler-6218f972.js} +2 -1
- package/build/esm/{PlannerHandler2D-0e61311d.js → PlannerHandler2D-0e55412b.js} +1 -1
- package/build/esm/{SeriousBasketHandler-7b097870.js → SeriousBasketHandler-b534a712.js} +2 -1
- package/build/esm/{ShelfPlanner-f3e86534.js → ShelfPlanner-5062f0a3.js} +261 -148
- package/build/esm/{StandardWWSHandler-4b0caefd.js → StandardWWSHandler-6c628e60.js} +2 -1
- package/build/esm/{index-6c8de812.js → index-e11ba779.js} +16309 -14315
- package/build/esm/index.js +2 -1
- package/build/types/web-planner-logic/src/index.d.ts +8 -3
- package/build/types/web-planner-logic/src/index.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/ArticleOptionStateType.d.ts +1 -0
- package/build/types/web-planner-logic/src/interface/ArticleOptionStateType.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/Articles/ArticleDataType.d.ts +13 -0
- package/build/types/web-planner-logic/src/interface/Articles/ArticleDataType.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/Articles/ArticleInfoType.d.ts +13 -0
- package/build/types/web-planner-logic/src/interface/Articles/ArticleInfoType.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/Articles/CatalogArticleDataType.d.ts +4 -0
- package/build/types/web-planner-logic/src/interface/Articles/CatalogArticleDataType.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/DivaCatalogDataType.d.ts +6 -1
- package/build/types/web-planner-logic/src/interface/DivaCatalogDataType.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/IDM/ArticleApi.d.ts +19 -18
- package/build/types/web-planner-logic/src/interface/IDM/ArticleApi.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/IDM/Decision.d.ts +1 -0
- package/build/types/web-planner-logic/src/interface/IDM/Decision.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/Planner/ISaveSetPlanner.d.ts +37 -0
- package/build/types/web-planner-logic/src/interface/Planner/ISaveSetPlanner.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/ShelfPlanner/ShelfAccessoiresView.d.ts +5 -0
- package/build/types/web-planner-logic/src/interface/ShelfPlanner/ShelfAccessoiresView.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/interface/webPlannerParams/WebPlannerParamsType.d.ts +46 -2
- package/build/types/web-planner-logic/src/interface/webPlannerParams/WebPlannerParamsType.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Article/ArticleOptionState.d.ts +2 -0
- package/build/types/web-planner-logic/src/logic/Article/ArticleOptionState.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Article/DivaArticle.d.ts +4 -0
- package/build/types/web-planner-logic/src/logic/Article/DivaArticle.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Article/DivaArticleHandler.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Article/Engine/ArticleEngine.d.ts +4 -0
- package/build/types/web-planner-logic/src/logic/Article/Engine/ArticleEngine.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Article/Engine/DivaArticleEngine.d.ts +2 -0
- package/build/types/web-planner-logic/src/logic/Article/Engine/DivaArticleEngine.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Article/Engine/IDMArticleEngine.d.ts +39 -2
- package/build/types/web-planner-logic/src/logic/Article/Engine/IDMArticleEngine.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/ConfigTree/Shelfplanner/ShelfPlanner.d.ts +20 -0
- package/build/types/web-planner-logic/src/logic/ConfigTree/Shelfplanner/ShelfPlanner.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/ConfigTree/Shelfplanner/ShelfPlannerGrid.d.ts +31 -1
- package/build/types/web-planner-logic/src/logic/ConfigTree/Shelfplanner/ShelfPlannerGrid.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/DivaApiHandler.d.ts +25 -0
- package/build/types/web-planner-logic/src/logic/DivaApiHandler.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/DivaCatalogHandler.d.ts +1 -0
- package/build/types/web-planner-logic/src/logic/DivaCatalogHandler.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/DivaWebPlanner.d.ts +145 -95
- package/build/types/web-planner-logic/src/logic/DivaWebPlanner.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Planner/BoxPlanner/ConstructionRulesHandler.d.ts +19 -0
- package/build/types/web-planner-logic/src/logic/Planner/BoxPlanner/ConstructionRulesHandler.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Planner/BoxPlanner/DivaBoxPlanner.d.ts +15 -1
- package/build/types/web-planner-logic/src/logic/Planner/BoxPlanner/DivaBoxPlanner.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Planner/DivaPlannerHandler.d.ts +11 -1
- package/build/types/web-planner-logic/src/logic/Planner/DivaPlannerHandler.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Planner/DivaStandardPlanner.d.ts +31 -1
- package/build/types/web-planner-logic/src/logic/Planner/DivaStandardPlanner.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Planner/Rendering/Host3DSignalR.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Planner/Rendering/PlannerHandler3D.d.ts +17 -1
- package/build/types/web-planner-logic/src/logic/Planner/Rendering/PlannerHandler3D.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Set/DivaSetHandler.d.ts +31 -3
- package/build/types/web-planner-logic/src/logic/Set/DivaSetHandler.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/logic/Set/catalogXml/articleGeo.d.ts +9 -0
- package/build/types/web-planner-logic/src/logic/Set/catalogXml/articleGeo.d.ts.map +1 -0
- package/build/types/web-planner-logic/src/logic/Set/catalogXml/parseCatalogXml.d.ts +12 -0
- package/build/types/web-planner-logic/src/logic/Set/catalogXml/parseCatalogXml.d.ts.map +1 -0
- package/build/types/web-planner-logic/src/logic/Set/catalogXml/types.d.ts +66 -0
- package/build/types/web-planner-logic/src/logic/Set/catalogXml/types.d.ts.map +1 -0
- package/build/types/web-planner-logic/src/logic/bootMark.d.ts +71 -0
- package/build/types/web-planner-logic/src/logic/bootMark.d.ts.map +1 -0
- package/build/types/web-planner-logic/src/model/Articles/Article/CatalogArticleData.d.ts +4 -0
- package/build/types/web-planner-logic/src/model/Articles/Article/CatalogArticleData.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/model/Articles/Article/IDMCatalogArticle.d.ts +13 -0
- package/build/types/web-planner-logic/src/model/Articles/Article/IDMCatalogArticle.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/model/Catalog/CatalogData.d.ts +33 -7
- package/build/types/web-planner-logic/src/model/Catalog/CatalogData.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/model/Catalog/IDMCatalogData.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/model/Options/ArticleOptionData.d.ts +4 -0
- package/build/types/web-planner-logic/src/model/Options/ArticleOptionData.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/model/Options/ArticleOptionValueData.d.ts +2 -0
- package/build/types/web-planner-logic/src/model/Options/ArticleOptionValueData.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/model/Options/CatalogOptionData.d.ts +2 -0
- package/build/types/web-planner-logic/src/model/Options/CatalogOptionData.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/model/Planner/PlannerElementData.d.ts +6 -1
- package/build/types/web-planner-logic/src/model/Planner/PlannerElementData.d.ts.map +1 -1
- package/build/types/web-planner-logic/src/test/engineFeatureDefaults.test.d.ts +2 -0
- package/build/types/web-planner-logic/src/test/engineFeatureDefaults.test.d.ts.map +1 -0
- package/build/types/web-planner-logic/src/test/idmPlannerPaletteView.test.d.ts +2 -0
- package/build/types/web-planner-logic/src/test/idmPlannerPaletteView.test.d.ts.map +1 -0
- package/build/types/web-planner-logic/src/test/partlistPosCountDecision.test.d.ts +2 -0
- package/build/types/web-planner-logic/src/test/partlistPosCountDecision.test.d.ts.map +1 -0
- package/package.json +4 -3
|
@@ -38,10 +38,34 @@ export default class DivaStandardPlanner {
|
|
|
38
38
|
* @param dockingPoint
|
|
39
39
|
*/
|
|
40
40
|
private updateWorldPos;
|
|
41
|
+
/**
|
|
42
|
+
* Positions `plannerElement` so its `dockingPoint` aligns to `refElement`'s `refDockingPoint`
|
|
43
|
+
* (rotation + OLF/OLT-aware translation). Mutates only the element's world position and rotation —
|
|
44
|
+
* NOT the docking relations — so it is reusable for a non-committing snap preview
|
|
45
|
+
* ({@link getDockSnapPreview}) as well as the real dock ({@link updateWorldPos}).
|
|
46
|
+
*/
|
|
47
|
+
private applyDockTransform;
|
|
48
|
+
/**
|
|
49
|
+
* Non-committing preview of where `elementId` would auto-snap if released now: runs the same
|
|
50
|
+
* dockable-pair search as END, and for the closest pair computes the docked transform via
|
|
51
|
+
* {@link applyDockTransform} (apply → read → restore, no docking relations touched). Returns the
|
|
52
|
+
* delta from the element's current transform (cm / deg), or null if nothing is in snapping range.
|
|
53
|
+
* `excludeElementIds` skips the element's own move-group so it doesn't "snap" to siblings that
|
|
54
|
+
* are translating with it.
|
|
55
|
+
*/
|
|
56
|
+
getDockSnapPreview(elementId: number, autoDockingDistance: number, excludeElementIds?: number[]): {
|
|
57
|
+
dx: number;
|
|
58
|
+
dz: number;
|
|
59
|
+
dRotDeg: number;
|
|
60
|
+
} | null;
|
|
41
61
|
/**
|
|
42
62
|
* This function updates the position information of all elements. It is called after updating the SVG of 1 element.
|
|
43
63
|
* The position is updated based on the posNr.
|
|
44
64
|
* At the end - the collision is calculated
|
|
65
|
+
* @param changedElementIds elements whose SVG was reloaded this cycle (their docking geometry may
|
|
66
|
+
* have moved, e.g. an AVC shifted by stretch areas). Elements docked - directly or transitively -
|
|
67
|
+
* to one of them are re-anchored to the moved partner after the PosNr walk, which on its own only
|
|
68
|
+
* propagates forward in PosNr order and prefers AVL over AVC anchors.
|
|
45
69
|
*/
|
|
46
70
|
private updateAllElementsWorldPos;
|
|
47
71
|
/**
|
|
@@ -55,6 +79,9 @@ export default class DivaStandardPlanner {
|
|
|
55
79
|
*/
|
|
56
80
|
private addElementToWorld;
|
|
57
81
|
private tryToDockWithDifferentSVGWithFormula;
|
|
82
|
+
private applyVariantValuesAndTryDock;
|
|
83
|
+
private commitPendingConnectorFilters;
|
|
84
|
+
private getVariantValuesMatchingTargetFilters;
|
|
58
85
|
private dockToAVUorAVOororAVNorAVSorAVC;
|
|
59
86
|
private dockToAVLorAVR;
|
|
60
87
|
getAllViewPlannerElements(): PlannerElementData[];
|
|
@@ -136,7 +163,10 @@ export default class DivaStandardPlanner {
|
|
|
136
163
|
* @param transState
|
|
137
164
|
* @param autoDockingDistance //Gibt an in welchem Radius automatisch gedockt werden muss
|
|
138
165
|
*/
|
|
139
|
-
updatePlannerTrans(elementId: number, deltaMove: Vector3, deltaAngleDeg: number, rotCorrection: number, transState: 'START' | 'UPDATE' | 'END', autoDockingDistance: number
|
|
166
|
+
updatePlannerTrans(elementId: number, deltaMove: Vector3, deltaAngleDeg: number, rotCorrection: number, transState: 'START' | 'UPDATE' | 'END', autoDockingDistance: number, turningPoint?: {
|
|
167
|
+
x: number;
|
|
168
|
+
z: number;
|
|
169
|
+
}): boolean;
|
|
140
170
|
/**
|
|
141
171
|
* Destroy all plannerinformation
|
|
142
172
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DivaStandardPlanner.d.ts","sourceRoot":"","sources":["../../../../../../src/logic/Planner/DivaStandardPlanner.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,wCAAwC,CAAC;AAIxE,OAAO,EAAE,OAAO,EAAW,MAAM,+BAA+B,CAAC;AAEjE,OAAO,YAAY,MAAM,kCAAkC,CAAC;AAC5D,OAAO,OAAO,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"DivaStandardPlanner.d.ts","sourceRoot":"","sources":["../../../../../../src/logic/Planner/DivaStandardPlanner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Host3DSignalR.d.ts","sourceRoot":"","sources":["../../../../../../../src/logic/Planner/Rendering/Host3DSignalR.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAiB,MAAM,SAAS,CAAC;AAK1E,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAG9C,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"Host3DSignalR.d.ts","sourceRoot":"","sources":["../../../../../../../src/logic/Planner/Rendering/Host3DSignalR.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAiB,MAAM,SAAS,CAAC;AAK1E,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAG9C,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAIlD,MAAM,CAAC,OAAO,OAAO,aAAa;IAEhC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,iBAAiB,CAAM;IAC/B,OAAO,CAAC,iBAAiB,CAAU;IACnC,OAAO,CAAC,oBAAoB,CAAU;IACtC,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,gBAAgB,CAAU;IAElC,OAAO,CAAC,SAAS,CAAS;IAG1B,OAAO,CAAC,wBAAwB,CAAkB;IAClD,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,mBAAmB,CAAU;IACrC,OAAO,CAAC,wBAAwB,CAAU;IAG1C,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,sBAAsB,CAAS;gBAE3B,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB;IAc9E;;OAEG;IACU,oBAAoB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA4EjE,OAAO,CAAC,KAAK;IAIA,UAAU,CAAC,MAAM,EAAE,MAAM;IAO/B,6BAA6B,IAAI,OAAO;IAIlC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAS/E,kBAAkB,IAAI,OAAO;IAIvB,qBAAqB,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAatE,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe;IAgE1D,OAAO,CAAC,yBAAyB;IA8C1B,eAAe;IAgBtB;;;OAGG;YACW,KAAK;IA2CnB;;;;;OAKG;YACW,IAAI;IAsClB;;;OAGG;IACH,OAAO,CAAC,wBAAwB,CA4C9B;IAEF;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IAU7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAKzB;;;;;OAKG;IACH,mBAAmB,SAAU,MAAM,QAAQ,MAAM,UAAU,MAAM,UAK/D;IAEF,YAAY,QAAS,MAAM,UAAQ;IAEnC;;;;;OAKG;IACH,YAAY,WAAY,MAAM,QAAQ,MAAM,aAAa,MAAM,UAI7D;IACF;;;;;OAKG;IACH,iBAAiB,WAAY,MAAM,QAAQ,MAAM,kBAAkB,MAAM,UAIvE;IAEF;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;CAOzB"}
|
|
@@ -15,6 +15,7 @@ export default class PlannerHandler3D {
|
|
|
15
15
|
private currRendering;
|
|
16
16
|
private lastSavedRendering;
|
|
17
17
|
private lastSavedHQRenderScript;
|
|
18
|
+
private lastRequestInput;
|
|
18
19
|
private lastSavedAlternateRenderings;
|
|
19
20
|
private connectionHandler;
|
|
20
21
|
private viewPointHandler;
|
|
@@ -25,6 +26,8 @@ export default class PlannerHandler3D {
|
|
|
25
26
|
private liveArSocket?;
|
|
26
27
|
private liveArClientsConnected;
|
|
27
28
|
private liveArViewerUrl?;
|
|
29
|
+
/** Planning hash of the last render script actually emitted to the AR clients — guards against emitting the same planning twice. */
|
|
30
|
+
private lastSentArPlanningHash?;
|
|
28
31
|
private setRotationOfOrbitCube;
|
|
29
32
|
private onRoomListLoaded;
|
|
30
33
|
private handleNoRenderClientFound;
|
|
@@ -180,7 +183,20 @@ export default class PlannerHandler3D {
|
|
|
180
183
|
setOrigConfigurationCallback(callback: any): void;
|
|
181
184
|
updateCamPosition(cam: Hybrid3DInfo_Camera): void;
|
|
182
185
|
getLastSavedHQRenderScript(): HQRenderScript | undefined;
|
|
186
|
+
/**
|
|
187
|
+
* Bundles the last HQ render-script request and its response for the analyzer's debug panel.
|
|
188
|
+
*
|
|
189
|
+
* Requires a completed HQ render-script round trip — returns `undefined` until both
|
|
190
|
+
* `lastRequestInput` and `lastSavedHQRenderScript` are set, i.e. before the first request and
|
|
191
|
+
* after any that failed. The payload is diagnostics only and is not part of any saved state.
|
|
192
|
+
*/
|
|
193
|
+
getHQRenderScriptDebugData(): object | undefined;
|
|
183
194
|
openARObserverConnection(handleNoHqrs: () => void): Promise<string>;
|
|
184
|
-
|
|
195
|
+
/**
|
|
196
|
+
* Emit a render script to the connected AR live viewer. The script for a planning can reach this
|
|
197
|
+
* from more than one source (Unity via SignalR, the render script cache), so emitting is
|
|
198
|
+
* deduplicated per planning hash — the AR client already holds that exact script.
|
|
199
|
+
*/
|
|
200
|
+
sendARRenderScript(hqRenderScript: HQRenderScript, planningHash: string): void;
|
|
185
201
|
}
|
|
186
202
|
//# sourceMappingURL=PlannerHandler3D.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlannerHandler3D.d.ts","sourceRoot":"","sources":["../../../../../../../src/logic/Planner/Rendering/PlannerHandler3D.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,aAAa,CAAC;AAKpC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"PlannerHandler3D.d.ts","sourceRoot":"","sources":["../../../../../../../src/logic/Planner/Rendering/PlannerHandler3D.ts"],"names":[],"mappings":"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"}
|
|
@@ -134,13 +134,34 @@ declare class DivaSetHandler {
|
|
|
134
134
|
moveShelfItem(set: DivaSetData, grid: Grid, initialIndex: number, finalIndex: number): Promise<"SUCCESS" | "RESETTED_CELLS" | "NOTHING_CHANGED" | undefined>;
|
|
135
135
|
moveDoors: (set: DivaSetData, movedDoor: Door, targetDoor: Door) => void;
|
|
136
136
|
selectShelfAccArticle(set: DivaSetData, gridGroup: string, targetArticles: string[], articleCodex?: string): boolean;
|
|
137
|
-
|
|
137
|
+
/**
|
|
138
|
+
* Free cells for the grid group's currently selected accessory. With `includeFamily`, appends
|
|
139
|
+
* every other family member's cells (tagged with their own articleCodex). OWN cells stay first.
|
|
140
|
+
*/
|
|
141
|
+
getFreeShelfGrids(set: DivaSetData, gridGroup: string, includeFamily?: boolean): Promise<FreePlacesOnGrids[] | undefined>;
|
|
142
|
+
/**
|
|
143
|
+
* Instantiate `articleCodex` as a temporary accessory (its footprint must exist to be measured),
|
|
144
|
+
* collect the cells it fits into, then remove it again.
|
|
145
|
+
*/
|
|
146
|
+
private collectFreePlacesForCodex;
|
|
147
|
+
/**
|
|
148
|
+
* Free-to-move target cells for a placed accessory. Always includes the accessory's OWN cells;
|
|
149
|
+
* with `includeFamily`, also appends the cells of every OTHER member of its variant family
|
|
150
|
+
* (articles sharing its `accessoireFamily`) — the cells where a differently-sized sibling fits —
|
|
151
|
+
* each tagged with its own articleCodex / accessoire3DName, so the viewer can offer the swap.
|
|
152
|
+
* Async because each family variant must be instantiated to know its footprint (mirrors
|
|
153
|
+
* `getFreeShelfGrids`); the OWN cells are always first in the result.
|
|
154
|
+
*/
|
|
138
155
|
getFreeToMoveShelfGrids(set: DivaSet, gridName: string, basketId: string): FreePlacesOnGrids[] | undefined;
|
|
156
|
+
getFreeToMoveShelfGrids(set: DivaSet, gridName: string, basketId: string, includeFamily: true): Promise<FreePlacesOnGrids[] | undefined>;
|
|
139
157
|
private getFreePlaces;
|
|
140
158
|
getPlannedShelfGrids(set: DivaSetData): PlannedPlacesOnGrids[];
|
|
141
|
-
moveShelfItemToGrid(set: DivaSet, accessoireBasketId: string, parentBasketId: string, gridName: string, cellIndex: number): Promise<string | undefined>;
|
|
159
|
+
moveShelfItemToGrid(set: DivaSet, accessoireBasketId: string, parentBasketId: string, gridName: string, cellIndex: number, switchToArticleCodex?: string): Promise<string | undefined>;
|
|
142
160
|
deleteAccessorieOnShelfPlanner(set: DivaSetData, gridIndex: number, cellIndex: number, parentBasketId: string, dontReload?: boolean): Promise<void>;
|
|
143
|
-
updatePlannerTrans(set: DivaSetData, plannerElementID: number, deltaMove: Vector3, deltaAngleDeg: number, rotCorrection: number, transState: 'START' | 'UPDATE' | 'END', autoDockingDistance: number
|
|
161
|
+
updatePlannerTrans(set: DivaSetData, plannerElementID: number, deltaMove: Vector3, deltaAngleDeg: number, rotCorrection: number, transState: 'START' | 'UPDATE' | 'END', autoDockingDistance: number, turningPoint?: {
|
|
162
|
+
x: number;
|
|
163
|
+
z: number;
|
|
164
|
+
}): Promise<void>;
|
|
144
165
|
getNeighborElementsByBasketId(article: DivaArticle, type: DockingType): DivaArticle[];
|
|
145
166
|
getDockedGroupedArticles(set: DivaSetData): {
|
|
146
167
|
[basketId: string]: DivaArticle;
|
|
@@ -279,6 +300,13 @@ declare class DivaSetHandler {
|
|
|
279
300
|
private getVariant;
|
|
280
301
|
private checkIfPriceDiffers;
|
|
281
302
|
private checkForReversingChanges;
|
|
303
|
+
/**
|
|
304
|
+
* Reconfigures the whole set after a docking change and - with RECONFIG_AFTER_ARTICLE_DOCKED - repeats the full
|
|
305
|
+
* reconfiguration (config evaluation + planner docking re-matching) like the IDM decisions until nothing changes anymore.
|
|
306
|
+
* A docking change can ripple through a whole chain of docked elements: reconfiguring one element can change the side
|
|
307
|
+
* it presents to its neighbour, which only gets re-matched on the next planner update. So a single pass is not enough.
|
|
308
|
+
*/
|
|
309
|
+
reconfigureSetAfterDockingChange(set: DivaSet, ignorePlanner?: boolean, from?: 'FromViewClick' | 'calcVariant' | 'initializing' | 'initializingPartlist' | 'initializingProduct' | 'initializingAfterTrans'): Promise<void>;
|
|
282
310
|
/**
|
|
283
311
|
* This function updates the option values of the articles
|
|
284
312
|
* @param myValues
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DivaSetHandler.d.ts","sourceRoot":"","sources":["../../../../../../src/logic/Set/DivaSetHandler.ts"],"names":[],"mappings":"AAEA,OAAO,eAAwD,MAAM,iCAAiC,CAAC;AACvG,OAAO,WAAW,EAAE,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAGxD,OAAO,WAAW,MAAM,wBAAwB,CAAC;AAEjD,OAAO,iBAAiB,MAAM,6BAA6B,CAAC;AAK5D,OAAO,EAAE,OAAO,EAAW,MAAM,+BAA+B,CAAC;AAEjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAmB,YAAY,EAAmB,MAAM,6BAA6B,CAAC;AACjI,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,WAAW,EACX,mBAAmB,EACnB,gBAAgB,EAChB,2BAA2B,EAC5B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,oDAAoD,CAAC;AAC5F,OAAO,EAAE,iCAAiC,EAAE,MAAM,4DAA4D,CAAC;AAC/G,OAAO,IAAI,EAAE,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"DivaSetHandler.d.ts","sourceRoot":"","sources":["../../../../../../src/logic/Set/DivaSetHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ParsedCatalog } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* The geometry (glb) name an article resolves to — the real mesh name the render script/URL uses
|
|
4
|
+
* (e.g. `GEO_TAB_100_VR`), which is NOT the article's codex or model3DName. Follows REF references
|
|
5
|
+
* to other articles (an article's GEO is often in a referenced sub-article). Returns undefined if
|
|
6
|
+
* the article isn't in the catalog or no GEO is reachable.
|
|
7
|
+
*/
|
|
8
|
+
export declare function getArticleGeoModel(catalog: ParsedCatalog, articleCodex: string): string | undefined;
|
|
9
|
+
//# sourceMappingURL=articleGeo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"articleGeo.d.ts","sourceRoot":"","sources":["../../../../../../../src/logic/Set/catalogXml/articleGeo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,aAAa,EAAE,MAAM,SAAS,CAAC;AAsC/D;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAInG"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ParsedCatalog, CatalogArticle, CatalogRuleset } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Parses a catalog XML string into a format-agnostic ParsedCatalog structure
|
|
4
|
+
* with pre-built indexes for O(1) article and ruleset lookups.
|
|
5
|
+
*
|
|
6
|
+
* Uses preserveOrder: true to maintain original XML child order,
|
|
7
|
+
* which is critical for correct GEO encounter order matching Unity's traversal.
|
|
8
|
+
*/
|
|
9
|
+
export declare function parseCatalogXml(xmlString: string): ParsedCatalog;
|
|
10
|
+
export declare function findArticle(catalog: ParsedCatalog, artNr: string): CatalogArticle | undefined;
|
|
11
|
+
export declare function findRuleSet(catalog: ParsedCatalog, artType: string): CatalogRuleset | undefined;
|
|
12
|
+
//# sourceMappingURL=parseCatalogXml.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseCatalogXml.d.ts","sourceRoot":"","sources":["../../../../../../../src/logic/Set/catalogXml/parseCatalogXml.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EACd,cAAc,EAQf,MAAM,SAAS,CAAC;AA2JjB;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,CAkChE;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAE7F;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAE/F"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
export type CatalogNodeType = 'GEO' | 'REF' | 'ON' | 'UI' | 'DIM' | 'DETAILTARGET' | 'MOVE' | 'DP' | 'RULE';
|
|
2
|
+
export interface CatalogGeoNode {
|
|
3
|
+
type: 'GEO';
|
|
4
|
+
Model: string;
|
|
5
|
+
SizeX?: string;
|
|
6
|
+
SizeY?: string;
|
|
7
|
+
SizeZ?: string;
|
|
8
|
+
PosX?: string;
|
|
9
|
+
PosY?: string;
|
|
10
|
+
PosZ?: string;
|
|
11
|
+
doResizeX?: string;
|
|
12
|
+
doResizeY?: string;
|
|
13
|
+
doResizeZ?: string;
|
|
14
|
+
attributes: Record<string, string>;
|
|
15
|
+
}
|
|
16
|
+
export interface CatalogRefNode {
|
|
17
|
+
type: 'REF';
|
|
18
|
+
ArtNr: string;
|
|
19
|
+
attributes: Record<string, string>;
|
|
20
|
+
children: CatalogChildNode[];
|
|
21
|
+
}
|
|
22
|
+
export interface CatalogOnNode {
|
|
23
|
+
type: 'ON';
|
|
24
|
+
OPT: string;
|
|
25
|
+
OPV: string;
|
|
26
|
+
attributes: Record<string, string>;
|
|
27
|
+
children: CatalogChildNode[];
|
|
28
|
+
}
|
|
29
|
+
export interface CatalogGenericNode {
|
|
30
|
+
type: Exclude<CatalogNodeType, 'GEO' | 'REF' | 'ON'>;
|
|
31
|
+
attributes: Record<string, string>;
|
|
32
|
+
children?: CatalogChildNode[];
|
|
33
|
+
}
|
|
34
|
+
export type CatalogChildNode = CatalogGeoNode | CatalogRefNode | CatalogOnNode | CatalogGenericNode;
|
|
35
|
+
export interface CatalogRuleEntry {
|
|
36
|
+
Type: string;
|
|
37
|
+
attributes: Record<string, string>;
|
|
38
|
+
}
|
|
39
|
+
export interface CatalogDockingPoint {
|
|
40
|
+
Name: string;
|
|
41
|
+
PosX?: string;
|
|
42
|
+
PosY?: string;
|
|
43
|
+
PosZ?: string;
|
|
44
|
+
Rot?: string;
|
|
45
|
+
[key: string]: string | undefined;
|
|
46
|
+
}
|
|
47
|
+
export interface CatalogRuleset {
|
|
48
|
+
ArtType: string;
|
|
49
|
+
rules: CatalogRuleEntry[];
|
|
50
|
+
dockingPoints: CatalogDockingPoint[];
|
|
51
|
+
attributes: Record<string, string>;
|
|
52
|
+
}
|
|
53
|
+
export interface CatalogArticle {
|
|
54
|
+
ArtNr: string;
|
|
55
|
+
ArtType?: string;
|
|
56
|
+
Name?: string;
|
|
57
|
+
children: CatalogChildNode[];
|
|
58
|
+
attributes: Record<string, string>;
|
|
59
|
+
}
|
|
60
|
+
export interface ParsedCatalog {
|
|
61
|
+
catalogCodex: string;
|
|
62
|
+
articles: Map<string, CatalogArticle>;
|
|
63
|
+
rulesets: Map<string, CatalogRuleset>;
|
|
64
|
+
rawAttributes: Record<string, string>;
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../../src/logic/Set/catalogXml/types.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,cAAc,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC;AAE5G,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,QAAQ,EAAE,gBAAgB,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,IAAI,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,QAAQ,EAAE,gBAAgB,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,CAAC,eAAe,EAAE,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC;IACrD,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC/B;AAED,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG,cAAc,GAAG,aAAa,GAAG,kBAAkB,CAAC;AAEpG,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,aAAa,EAAE,mBAAmB,EAAE,CAAC;IACrC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACtC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACtC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Host end of the boot-timeline diagnostics channel.
|
|
3
|
+
*
|
|
4
|
+
* The viewer (`@crystaldesign/real-time-viewer-next`) records the whole page boot and prints it
|
|
5
|
+
* as one consolidated report when the 3D scene reveals. Most of that boot happens here, long
|
|
6
|
+
* before the viewer's lazy chunk is even fetched — but this package must not depend on the viewer
|
|
7
|
+
* (it does not today, and `web-planner-react` must keep the viewer behind its `React.lazy` split
|
|
8
|
+
* so the 2D boot never downloads it). So the marks travel through a global instead:
|
|
9
|
+
*
|
|
10
|
+
* - `globalThis.__rtvBoot` — installed by the viewer's recorder once its module evaluates.
|
|
11
|
+
* - `globalThis.__rtvBootBuffer` — everything emitted before that, drained on install.
|
|
12
|
+
*
|
|
13
|
+
* Every mark carries its own `performance.now()` timestamp (ms since navigation start), so marks
|
|
14
|
+
* that predate the viewer still sort into the right place in the timeline.
|
|
15
|
+
*
|
|
16
|
+
* Diagnostics only: debug log level, no behavior, and a no-op when the viewer never loads.
|
|
17
|
+
*/
|
|
18
|
+
/** Detail bag attached to a mark. Values must be already known — never computed just for the mark. */
|
|
19
|
+
export type BootDetail = Record<string, string | number>;
|
|
20
|
+
interface BootChannel {
|
|
21
|
+
mark: (phase: string, detail?: BootDetail, t?: number) => void;
|
|
22
|
+
net: (name: string, start: number, ms: number, detail?: BootDetail) => void;
|
|
23
|
+
}
|
|
24
|
+
type BufferedMark = ['mark', string, BootDetail | undefined, number];
|
|
25
|
+
type BufferedNet = ['net', string, number, number, BootDetail | undefined];
|
|
26
|
+
declare global {
|
|
27
|
+
interface Window {
|
|
28
|
+
/** Installed by the viewer's recorder once its module evaluates. */
|
|
29
|
+
__rtvBoot?: BootChannel;
|
|
30
|
+
/** Marks emitted before the recorder installed, drained on install. */
|
|
31
|
+
__rtvBootBuffer?: (BufferedMark | BufferedNet)[];
|
|
32
|
+
/** DIVA log level, read directly because this package cannot depend on `diva-core`. */
|
|
33
|
+
DIVA_LOGGER?: number;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* True while the DIVA log level is at debug. The same global `ApplicationLogger` reads, checked
|
|
38
|
+
* directly because this package has no dependency on `@crystaldesign/diva-core`. A per-module
|
|
39
|
+
* debug override (`DIVA_LOGGER_MODULES`) is deliberately not honored — boot marks are all-or-nothing.
|
|
40
|
+
*/
|
|
41
|
+
export declare function bootMarksEnabled(): boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Records one lifecycle edge of the page boot — an init step, an await boundary, a hand-off.
|
|
44
|
+
* Call sites must be once-per-boot edges, never loops or per-frame paths.
|
|
45
|
+
*
|
|
46
|
+
* @param phase short name, e.g. `'signalr login sent'`
|
|
47
|
+
* @param detail already-known counts/sizes to attach
|
|
48
|
+
*/
|
|
49
|
+
export declare function bootMark(phase: string, detail?: BootDetail): void;
|
|
50
|
+
/**
|
|
51
|
+
* Records one completed request for the report's network section.
|
|
52
|
+
*
|
|
53
|
+
* @param name path-derived short name — see {@link bootRequestName}; NEVER a raw URL
|
|
54
|
+
* @param start page time the request started (`performance.now()` before the call)
|
|
55
|
+
* @param ms wall duration
|
|
56
|
+
*/
|
|
57
|
+
export declare function bootNetworkMark(name: string, start: number, ms: number, detail?: BootDetail): void;
|
|
58
|
+
/** Page time, for pairing a `bootNetworkMark` start with its duration. */
|
|
59
|
+
export declare function bootNow(): number;
|
|
60
|
+
/**
|
|
61
|
+
* Derives a short, log-safe name from a request URL.
|
|
62
|
+
*
|
|
63
|
+
* Query strings on these APIs carry JWTs, session guids, account ids and customer data, so the
|
|
64
|
+
* whole query is dropped except the api2 `function=` verb (which IS the call's name, and is
|
|
65
|
+
* matched against a strict charset). Path segments that look like an id are replaced with `:id`.
|
|
66
|
+
*
|
|
67
|
+
* @returns e.g. `'catalog'`, `'articles/geobbox'`, `'diva-api?GetJsonCatalogData'`
|
|
68
|
+
*/
|
|
69
|
+
export declare function bootRequestName(url: string): string;
|
|
70
|
+
export {};
|
|
71
|
+
//# sourceMappingURL=bootMark.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bootMark.d.ts","sourceRoot":"","sources":["../../../../../src/logic/bootMark.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,sGAAsG;AACtG,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;AAEzD,UAAU,WAAW;IACnB,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/D,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;CAC7E;AAED,KAAK,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,SAAS,EAAE,MAAM,CAAC,CAAC;AACrE,KAAK,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,SAAS,CAAC,CAAC;AAE3E,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,oEAAoE;QACpE,SAAS,CAAC,EAAE,WAAW,CAAC;QACxB,uEAAuE;QACvE,eAAe,CAAC,EAAE,CAAC,YAAY,GAAG,WAAW,CAAC,EAAE,CAAC;QACjD,uFAAuF;QACvF,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB;CACF;AASD;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAG1C;AAaD;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAIjE;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAIlG;AAED,0EAA0E;AAC1E,wBAAgB,OAAO,IAAI,MAAM,CAEhC;AAQD;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAenD"}
|
|
@@ -16,6 +16,8 @@ export default class CatalogArticleData {
|
|
|
16
16
|
get id(): number | undefined;
|
|
17
17
|
get contentItemId(): string | undefined;
|
|
18
18
|
get featureProperties(): import("../../../interface/AdditionalModelInfos").MetaDataFeature[] | undefined;
|
|
19
|
+
/** Raw wire properties (`{ Codex, Name, Value, Value_locales }`) of this article, unparsed — for inspection/debug views. */
|
|
20
|
+
get properties(): any[];
|
|
19
21
|
get optionProperties(): import("../../../interface/AdditionalModelInfos").MetaDataOption[] | undefined;
|
|
20
22
|
get groupContentItemId(): string | undefined;
|
|
21
23
|
get articleCodex(): string;
|
|
@@ -68,6 +70,7 @@ export default class CatalogArticleData {
|
|
|
68
70
|
get hasPartlistArticle(): boolean;
|
|
69
71
|
get possiblePartlistCodexes(): string | undefined;
|
|
70
72
|
get idmPartlist(): Partlist | undefined;
|
|
73
|
+
get itemIdentification(): string | undefined;
|
|
71
74
|
set idmPartlist(val: Partlist | undefined);
|
|
72
75
|
get idmPartlistDecisions(): number[];
|
|
73
76
|
get articleDecisions(): import("../../../interface/OptionTypes/DecisionType").Decision[];
|
|
@@ -88,6 +91,7 @@ export default class CatalogArticleData {
|
|
|
88
91
|
get typeNr(): string;
|
|
89
92
|
get isPartlistExclusive(): boolean;
|
|
90
93
|
get model3DName(): string | undefined;
|
|
94
|
+
get accessoireFamily(): string | undefined;
|
|
91
95
|
get hasType1Dependencies(): boolean;
|
|
92
96
|
get articleRelations(): import("../../..").AccessoireItemType[] | undefined;
|
|
93
97
|
get shelfHeight(): number | undefined;
|
package/build/types/web-planner-logic/src/model/Articles/Article/CatalogArticleData.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CatalogArticleData.d.ts","sourceRoot":"","sources":["../../../../../../../src/model/Articles/Article/CatalogArticleData.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uDAAuD,CAAC;AAC/F,OAAO,sBAAsB,EAAE,EAAE,QAAQ,EAAE,MAAM,oDAAoD,CAAC;AACtG,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,6CAA6C,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,eAAe,MAAM,2BAA2B,CAAC;AAGxD,MAAM,CAAC,OAAO,OAAO,kBAAkB;IACrC,OAAO,CAAC,eAAe,CAAyB;IAChD,OAAO,CAAC,kBAAkB,CAAU;gBACxB,cAAc,EAAE,sBAAsB,EAAE,WAAW,EAAE,eAAe;
|
|
1
|
+
{"version":3,"file":"CatalogArticleData.d.ts","sourceRoot":"","sources":["../../../../../../../src/model/Articles/Article/CatalogArticleData.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,20 @@
|
|
|
1
1
|
import DivaSet from '../../../logic/Set/DivaSet';
|
|
2
2
|
import CatalogArticleData from './CatalogArticleData';
|
|
3
3
|
import { IDMDecision } from '../../../interface/IDM/Decision';
|
|
4
|
+
import { IDMItemApi } from '../../../interface/IDM/ArticleApi';
|
|
4
5
|
import { ProjectOptionsSetRef } from '../../../interface/IDM/OptionSetRef';
|
|
6
|
+
/** Loads the IDM data these articles need; missing price feature groups, features and decisions are reported, never fatal. */
|
|
5
7
|
export declare function loadMoreFromIDMArticles(catalogArticleDatas: CatalogArticleData[], set: DivaSet): Promise<void>;
|
|
8
|
+
/** One additional-item reference of an item - the mandatory and optional sides of the same accessory merged. */
|
|
9
|
+
export interface AdditionalItemRef {
|
|
10
|
+
serieNo: string;
|
|
11
|
+
typeNo: string;
|
|
12
|
+
mandatoryQuantity?: number;
|
|
13
|
+
optionalQuantity?: number;
|
|
14
|
+
setNo: number;
|
|
15
|
+
}
|
|
16
|
+
/** An accessory referenced by several groups of the same side keeps its first occurrence. */
|
|
17
|
+
export declare function readAdditionalItemRefs(item: IDMItemApi): AdditionalItemRef[];
|
|
6
18
|
export declare const initializeDecision: (decision: IDMDecision, idmOptionGroups?: {
|
|
7
19
|
[optionGroupName: string]: string[];
|
|
8
20
|
}) => {
|
|
@@ -47,5 +59,6 @@ export declare const initializeDecision: (decision: IDMDecision, idmOptionGroups
|
|
|
47
59
|
enabled?: boolean;
|
|
48
60
|
disableHistory?: string[];
|
|
49
61
|
activeCombination?: number;
|
|
62
|
+
addedViaDisableEnableRef?: boolean;
|
|
50
63
|
};
|
|
51
64
|
//# sourceMappingURL=IDMCatalogArticle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IDMCatalogArticle.d.ts","sourceRoot":"","sources":["../../../../../../../src/model/Articles/Article/IDMCatalogArticle.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,4BAA4B,CAAC;AACjD,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAMtD,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"IDMCatalogArticle.d.ts","sourceRoot":"","sources":["../../../../../../../src/model/Articles/Article/IDMCatalogArticle.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,4BAA4B,CAAC;AACjD,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAMtD,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAO9D,OAAO,EAA6C,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAE1G,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAQ3E,8HAA8H;AAC9H,wBAAsB,uBAAuB,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,EAAE,GAAG,EAAE,OAAO,iBAmIpG;AAED,gHAAgH;AAChH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf;AAOD,6FAA6F;AAC7F,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,UAAU,GAAG,iBAAiB,EAAE,CAoB5E;AAyLD,eAAO,MAAM,kBAAkB,aACnB,WAAW,oBACH;IAChB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYF,CAAC"}
|
|
@@ -11,6 +11,8 @@ import OptionCatalogValueData from '../Options/CatalogOptionValueData';
|
|
|
11
11
|
import CatalogPlannerArticleData from '../Articles/CatalogPlannerArticleData';
|
|
12
12
|
import CatalogArticleData from '../Articles/Article/CatalogArticleData';
|
|
13
13
|
import DivaSet from '@crystaldesign/web-planner-logic/logic/Set/DivaSet';
|
|
14
|
+
import { PriceFeatureGroup } from '../../interface/IDM/PriceFeatureGroup';
|
|
15
|
+
import { IDMDecision } from '../../interface/IDM/Decision';
|
|
14
16
|
export interface PlannerConfigParams {
|
|
15
17
|
ignoreLayerAVC: boolean;
|
|
16
18
|
ignoreLayerAVOAVU: boolean;
|
|
@@ -62,10 +64,14 @@ export default class DivaCatalogData {
|
|
|
62
64
|
private catalogData;
|
|
63
65
|
private additionalModelInfos?;
|
|
64
66
|
private origProperties;
|
|
67
|
+
private reportedMissingPricefeaturegroups;
|
|
68
|
+
private reportedMissingDecisions;
|
|
69
|
+
private reportedMissingFeatures;
|
|
65
70
|
plannerPaletteViewInfo: PlannerPaletteViewDataType;
|
|
66
71
|
private _api;
|
|
67
72
|
private variantsPriceHashObj;
|
|
68
73
|
private _isIDMFormat;
|
|
74
|
+
catalogXml?: string;
|
|
69
75
|
constructor(json: any, catalogCodex: string, orderSet: OrderSetData, api: DivaApiHandler, articleJson: any, plannerElementsJson?: any, isIDMFormat?: boolean, additionalModelInfos?: AdditionalModelInfos);
|
|
70
76
|
getCatImageURL(filename: string, replaceExtWith: string): string;
|
|
71
77
|
loadArticleData(catalogArticles: CatalogArticleData[], set: DivaSet): Promise<void>;
|
|
@@ -91,13 +97,21 @@ export default class DivaCatalogData {
|
|
|
91
97
|
get offlineFilesLastUpdate(): number | undefined;
|
|
92
98
|
get retailCatalogNr(): string | undefined;
|
|
93
99
|
get description(): string | undefined;
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
100
|
+
/** The loaded decisions for these numbers; a number the catalog does not hold is omitted and reported once. */
|
|
101
|
+
getDecisionsByNo(decisionNos?: number[]): IDMDecision[];
|
|
102
|
+
/** Reports a decision the catalog does not hold - once per number, whichever caller notices it first. */
|
|
103
|
+
reportMissingDecision(decisionNo: number, custom?: Record<string, unknown>): void;
|
|
104
|
+
getDecisionByNo(decisionNo: number): IDMDecision | undefined;
|
|
105
|
+
/** The loaded price feature groups for these numbers; a group the catalog does not hold is omitted and reported once. */
|
|
106
|
+
getPricefeaturegroups(prfgNos?: number[]): PriceFeatureGroup[];
|
|
107
|
+
/** Reports a price feature group the catalog does not hold - once per group, whichever caller notices it first. */
|
|
108
|
+
reportMissingPricefeaturegroup(prfgNo: number, custom?: Record<string, unknown>): void;
|
|
109
|
+
/** Reports a feature the catalog did not return - once per feature, whichever caller notices it first. */
|
|
110
|
+
reportMissingFeature(featureNo: number, custom?: Record<string, unknown>): void;
|
|
111
|
+
getPricefeaturegroup(key: number): PriceFeatureGroup | undefined;
|
|
112
|
+
get loadedPriceFeaturegroups(): PriceFeatureGroup[];
|
|
113
|
+
get loadedDecisions(): IDMDecision[];
|
|
114
|
+
get globalDecisions(): IDMDecision[];
|
|
101
115
|
get serieDecisionRefs(): number[];
|
|
102
116
|
get loadedFeatureClasses(): import("../../interface/IDM/FeatureClass").FeatureClass[];
|
|
103
117
|
getFeatureClass(featureClassNo: number): import("../../interface/IDM/FeatureClass").FeatureClass | undefined;
|
|
@@ -124,6 +138,12 @@ export default class DivaCatalogData {
|
|
|
124
138
|
} | undefined;
|
|
125
139
|
get archived(): boolean;
|
|
126
140
|
get divaArReady(): boolean;
|
|
141
|
+
/**
|
|
142
|
+
* Render this catalog with the rtv-next viewer instead of the old RTV / 3DCOMB stack
|
|
143
|
+
* (`DIVA3D_USE_RTV_NEXT`). `?rtv-next` forces it on for any catalog, so the viewer can be tried
|
|
144
|
+
* where the property is not set yet.
|
|
145
|
+
*/
|
|
146
|
+
get divaUseRtvNext(): boolean;
|
|
127
147
|
get divaForceRTV(): boolean;
|
|
128
148
|
get PlannerMeasureDigits(): number;
|
|
129
149
|
get ShowAllItemsInPlanner(): boolean;
|
|
@@ -178,6 +198,12 @@ export default class DivaCatalogData {
|
|
|
178
198
|
get mergeOptionsToSameOption(): string[][] | undefined;
|
|
179
199
|
checkIfUseBoxPlanner(articleCodex: string[]): boolean;
|
|
180
200
|
get useBoxPlanner(): boolean | string[];
|
|
201
|
+
/** AVL/AVR copy buttons on the selected element (`ELEMENT_COPY_AVLR`); absent = no buttons. */
|
|
202
|
+
get elementCopyAVLR(): true | string[] | undefined;
|
|
203
|
+
get dimensionConfig2D(): Record<string, unknown> | undefined;
|
|
204
|
+
/** Font for the 2D plan's dimension lines and annotations (`PLAN_2D_FONT_URL`). */
|
|
205
|
+
get plan2DFontUrl(): string | undefined;
|
|
206
|
+
get rtvPreset(): Record<string, unknown> | undefined;
|
|
181
207
|
get plannerType(): PlannerStepsType | undefined;
|
|
182
208
|
get ignoreIsDefinedCheck(): boolean;
|
|
183
209
|
get hide2DPlanner(): boolean;
|