@roomle/embedding-lib 5.32.0 → 5.33.0-alpha.2
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/docs/md/web/embedding/CHANGELOG.md +10 -62
- package/package.json +1 -1
- package/packages/embedding-lib/src/embedding-lib.d.ts +1 -0
- package/packages/embedding-lib/src/examples/utils/homag-intelligence/create-catalog.d.ts +1 -0
- package/packages/embedding-lib/src/examples/utils/homag-intelligence/default-api-options.d.ts +6 -22
- package/packages/embedding-lib/src/examples/utils/homag-intelligence/util.d.ts +6 -1
- package/packages/web-sdk/packages/common-core/mock/kernel-instances.d.ts +1 -0
- package/packages/web-sdk/packages/common-core/mock/mock-image-renderer.d.ts +1 -1
- package/packages/web-sdk/packages/common-core/src/configurator-kernel-access.d.ts +2 -2
- package/packages/web-sdk/packages/common-core/src/utils/shims.d.ts +0 -6
- package/packages/web-sdk/packages/common-core/src/view-model/configurator-view-model.d.ts +2 -1
- package/packages/web-sdk/packages/common-core/src/webgl/image-renderer.d.ts +2 -1
- package/packages/web-sdk/packages/configurator-core/mock/configurator-mock-data.d.ts +0 -2
- package/packages/web-sdk/packages/configurator-core/src/roomle-configurator.d.ts +2 -0
- package/packages/web-sdk/packages/configurator-core/src/webgl/configurator-scene-manager.d.ts +2 -0
- package/packages/web-sdk/packages/homag-intelligence/__tests__/hi-object-selection-test.d.ts +1 -0
- package/packages/web-sdk/packages/homag-intelligence/src/api.d.ts +1 -6
- package/packages/web-sdk/packages/homag-intelligence/src/debug-logging.d.ts +5 -10
- package/packages/web-sdk/packages/homag-intelligence/src/external-object-api.d.ts +38 -0
- package/packages/web-sdk/packages/homag-intelligence/src/glue-logic.d.ts +7 -12
- package/packages/web-sdk/packages/homag-intelligence/src/hi-object-selection.d.ts +9 -1
- package/packages/web-sdk/packages/homag-intelligence/src/loader.d.ts +4 -20
- package/packages/web-sdk/packages/homag-intelligence/src/model/oc-scripts-domain.model.d.ts +11 -8
- package/packages/web-sdk/packages/planner-core/src/roomle-planner.d.ts +4 -25
- package/packages/web-sdk/packages/planner-core/src/view-model/plan-view-model.d.ts +2 -0
- package/packages/web-sdk/packages/planner-core/src/webgl/planner-scene-manager.d.ts +5 -3
- package/packages/web-sdk/packages/typings/kernel.d.ts +14 -8
- package/packages/web-sdk/packages/typings/planner.d.ts +3 -2
- package/packages/web-sdk/packages/typings/rapi-types.d.ts +0 -4
- package/roomle-embedding-lib.es.js +22 -21
- package/roomle-embedding-lib.es.min.js +1 -1
- package/roomle-embedding-lib.umd.js +6 -6
- package/roomle-embedding-lib.umd.min.js +1 -1
- package/src/common/composables/use-configurator-actions-visibility.d.ts +1 -1
- package/src/configurator/business-logic/sdk-connector.d.ts +1 -0
- package/src/configurator/embedding/exposed-api.d.ts +5 -0
- package/src/planner/business-logic/sdk-connector-planner.d.ts +1 -0
|
@@ -1,70 +1,18 @@
|
|
|
1
|
-
## [5.
|
|
1
|
+
## [5.33.0-alpha.2](https://github.com/roomle-dev/roomle-ui/compare/embedding-lib-v5.33.0-alpha.1...embedding-lib-v5.33.0-alpha.2) (2025-11-27)
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
### Features
|
|
5
5
|
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* core api - KernelPermissionToDelete ([1b92613](https://github.com/roomle-dev/roomle-ui/commit/1b9261376583de2cc7769525eb9da7b6b1aedcd7))
|
|
13
|
-
* core api - loadFreeFlyingExternalObject ([6190ceb](https://github.com/roomle-dev/roomle-ui/commit/6190ceba50c5c62e8ce72ec903af4ae87da00347))
|
|
14
|
-
* core api - permissionToDelete ([9cb31e3](https://github.com/roomle-dev/roomle-ui/commit/9cb31e3262f03db6ee317f746a16310d024688a4))
|
|
15
|
-
* core api - sub articles ([4f729bc](https://github.com/roomle-dev/roomle-ui/commit/4f729bc2c094903b9214825d3f4d56f69cdef403))
|
|
16
|
-
* core api - sub modules ([1743bf6](https://github.com/roomle-dev/roomle-ui/commit/1743bf6d059ba0a32767ea924c3ebf8306c7b8b7))
|
|
17
|
-
* core api - updateConfiguration ([68f84ea](https://github.com/roomle-dev/roomle-ui/commit/68f84ea3a46e5a93cd067e0f633f06c3535b9879))
|
|
18
|
-
* core api - updateConfiguration ([f01e6f5](https://github.com/roomle-dev/roomle-ui/commit/f01e6f573af8794a7778518133c467ae6b5f133d))
|
|
19
|
-
* core api geometry bounds ([69bc272](https://github.com/roomle-dev/roomle-ui/commit/69bc27212b30fbc2ffe47a91e55ebdbaf5c9a177))
|
|
20
|
-
* delegate undo/redo to ConfiguratorHistory in isolation mode ([c8fe7c5](https://github.com/roomle-dev/roomle-ui/commit/c8fe7c5e8156bfd980d080ac757c418094ea1dc9))
|
|
21
|
-
* download externalObjectSnapshot.json in Homag Intelligence Example ([08e6510](https://github.com/roomle-dev/roomle-ui/commit/08e6510fe787dc70ad03bd184c8026023a34f3cf))
|
|
22
|
-
* download orderData.json in Homag Intelligence Catalog Exmaple ([4d84ba4](https://github.com/roomle-dev/roomle-ui/commit/4d84ba42f704c16cda4fd404d890e996837a5b0f))
|
|
23
|
-
* download orderManagerGroupData.json in Homag Intelligence Example ([2c100a3](https://github.com/roomle-dev/roomle-ui/commit/2c100a32e00b6f05496b5cdf5fc76819e88a8e12))
|
|
24
|
-
* feature flag "undoRedoInConfiguratorInPlanner" ([84fb03c](https://github.com/roomle-dev/roomle-ui/commit/84fb03c250c26c3cd7586e75086877ae86d488b8))
|
|
25
|
-
* get valid containers when sub article is selected ([eaeef6e](https://github.com/roomle-dev/roomle-ui/commit/eaeef6ec78309c51bf1a5817fb8673a5270cd4ac))
|
|
26
|
-
* getExternalObjectSnapshot api ([0b2f2d7](https://github.com/roomle-dev/roomle-ui/commit/0b2f2d7d7fb779f1ef07bca3354f3e31f5696ab7))
|
|
27
|
-
* glue logic - addSubArticle ([76f5bdc](https://github.com/roomle-dev/roomle-ui/commit/76f5bdcd3fbd3828d884bafee0fe2028bce7fb5c))
|
|
28
|
-
* glue logic - get valid containers for sub articles ([a829ccf](https://github.com/roomle-dev/roomle-ui/commit/a829ccfd2266a89dadb5b9a63f5eb87fd78d40b6))
|
|
29
|
-
* glue logic - get valid sub articles ([0f67084](https://github.com/roomle-dev/roomle-ui/commit/0f6708405dc81f342c5733aae40425ddaee9a73e))
|
|
30
|
-
* glue-layer - sub article requests ([451e3b1](https://github.com/roomle-dev/roomle-ui/commit/451e3b12217b75f986024b2aec175230a966482d))
|
|
31
|
-
* HI api - getExternalObjectValidSubArticles ([e21f623](https://github.com/roomle-dev/roomle-ui/commit/e21f623ae0c734c6151804d97a13a39493f33a28))
|
|
32
|
-
* hi library api for sub articles ([a273e65](https://github.com/roomle-dev/roomle-ui/commit/a273e65052d7d9f5936d3ee8bb0f56c67022562f))
|
|
33
|
-
* initially load group from save data if "startInDetail: true" ([a79bcb6](https://github.com/roomle-dev/roomle-ui/commit/a79bcb673b7f59ec9f5f16003981e840c3a2ede5))
|
|
34
|
-
* tidy-up core api - requestPreviewGeometry ([430f14d](https://github.com/roomle-dev/roomle-ui/commit/430f14dca912dffa859190b957e44e1bf935db07))
|
|
35
|
-
* update article types ([59de0c0](https://github.com/roomle-dev/roomle-ui/commit/59de0c0d4713557604642d3d06d2e02b835a15cb))
|
|
36
|
-
* update configurable object from history on undo/redo ([ef89aef](https://github.com/roomle-dev/roomle-ui/commit/ef89aef8be0f4da67116b3669382cfb0623c4c89))
|
|
37
|
-
* update external object group from history on undo/redo ([0ba38a9](https://github.com/roomle-dev/roomle-ui/commit/0ba38a9c800dd82fef278c1a2d5c10e8c7790d5f))
|
|
38
|
-
* **core:** upgrade to version 2.64.0-alpha.10 ([5086296](https://github.com/roomle-dev/roomle-ui/commit/5086296e1f9c6e41526468370294a9b693243394))
|
|
39
|
-
* **core:** upgrade to version 2.64.0-alpha.11 ([8da30f3](https://github.com/roomle-dev/roomle-ui/commit/8da30f36a2ff46c363c8311410617c97c62aa9db))
|
|
40
|
-
* **core:** upgrade to version 2.64.0-alpha.12 ([eaefd95](https://github.com/roomle-dev/roomle-ui/commit/eaefd95b4d34c7081da5c19ccffcc3680e91a1c9))
|
|
41
|
-
* **core:** upgrade to version 2.64.0-alpha.1 ([03314f1](https://github.com/roomle-dev/roomle-ui/commit/03314f1f61df1162e54cd828ea9caba17b4b8671))
|
|
42
|
-
* **core:** upgrade to version 2.64.0-alpha.2 ([783b045](https://github.com/roomle-dev/roomle-ui/commit/783b045fcc6d62434d3f2d554c47fb27b818243e))
|
|
43
|
-
* **core:** upgrade to version 2.64.0-alpha.3 ([3fcde79](https://github.com/roomle-dev/roomle-ui/commit/3fcde79f483fc0f7dddcd8140ff9292a1e5922e0))
|
|
44
|
-
* **core:** upgrade to version 2.64.0-alpha.4 ([b3afac3](https://github.com/roomle-dev/roomle-ui/commit/b3afac377fdfe47d9b4ec0f31cbcff8a89aec64d))
|
|
45
|
-
* **core:** upgrade to version 2.64.0-alpha.5 ([ace7bb0](https://github.com/roomle-dev/roomle-ui/commit/ace7bb017637379c72e747ad19d256a40f228a92))
|
|
46
|
-
* **core:** upgrade to version 2.64.0-alpha.6 ([8ab32d8](https://github.com/roomle-dev/roomle-ui/commit/8ab32d831a9f7c965fa6cd14a39b0a8dfa0aad02))
|
|
47
|
-
* **core:** upgrade to version 2.64.0-alpha.7 ([7bf70a6](https://github.com/roomle-dev/roomle-ui/commit/7bf70a649dce24de73fa1d34b517a3dcf182e4d0))
|
|
48
|
-
* **core:** upgrade to version 2.64.0-alpha.8 ([433f820](https://github.com/roomle-dev/roomle-ui/commit/433f820150e4e6d9b098c1ce93048bf9fe41ab1c))
|
|
49
|
-
* **core:** upgrade to version 2.64.0-alpha.9 ([61b7de7](https://github.com/roomle-dev/roomle-ui/commit/61b7de7538883e07eee8f330094d9b75dc3d602f))
|
|
6
|
+
* core api - object component and permission to delete ([087aff9](https://github.com/roomle-dev/roomle-ui/commit/087aff965a24f99a9780a604af743dfdcaf99559))
|
|
7
|
+
* core api - Plan.getRotationForFrontView ([af665c7](https://github.com/roomle-dev/roomle-ui/commit/af665c7af8b2d7d8b9becbaaf7ffa142948dc525))
|
|
8
|
+
* enable undo/redo in isolation mode and remove feature flag ([cc5f059](https://github.com/roomle-dev/roomle-ui/commit/cc5f0590b79879a17eb5ef4d6c0ea67e6f4cf7ad))
|
|
9
|
+
* set rotation for perspective object image ([6d29fd1](https://github.com/roomle-dev/roomle-ui/commit/6d29fd15ddfdeee32e4de508782bf91d516db609))
|
|
10
|
+
* **core:** upgrade to version 2.65.0-alpha.6 ([bbfd2ad](https://github.com/roomle-dev/roomle-ui/commit/bbfd2ade04bf31e8d67abc910864b335ba873f63))
|
|
11
|
+
* **core:** upgrade to version 2.65.0-alpha.7 ([b2b491c](https://github.com/roomle-dev/roomle-ui/commit/b2b491c1099c62d67f42ebb05c3afb72a72c1463))
|
|
50
12
|
|
|
51
13
|
|
|
52
14
|
### Bug Fixes
|
|
53
15
|
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
*
|
|
57
|
-
* flaky test ([d463826](https://github.com/roomle-dev/roomle-ui/commit/d463826ff0705ab7bc490ef15ec88f9c5e7852d9))
|
|
58
|
-
* flaky test, lint ([c4a2012](https://github.com/roomle-dev/roomle-ui/commit/c4a20125d4c05a9e462dee3d694afdd934954dcd))
|
|
59
|
-
* get group data from glue-layer instead of possible outdate group data from core ([8214993](https://github.com/roomle-dev/roomle-ui/commit/8214993e8ffbebf2d1b3bb413d80bf71c0f43a68))
|
|
60
|
-
* initial test fixes ([7e75f5b](https://github.com/roomle-dev/roomle-ui/commit/7e75f5bd65ae4a6733aa81068a33db621d6e68ae))
|
|
61
|
-
* on undo redo the group which is stored in the glue layer needs to be recalculated ([fadcdbc](https://github.com/roomle-dev/roomle-ui/commit/fadcdbc2bbb543c7d73c865482dd65512405d0a5))
|
|
62
|
-
* recalculate group - don't modify input group but only recalculated group ([fd87ec4](https://github.com/roomle-dev/roomle-ui/commit/fd87ec450f4a15c0a36d7092e671171313ede140))
|
|
63
|
-
* tests passing ([6f30123](https://github.com/roomle-dev/roomle-ui/commit/6f3012366cd0907c3e6baad04cc7f9f17c576d1f))
|
|
64
|
-
* types, broken e2e ([3971941](https://github.com/roomle-dev/roomle-ui/commit/39719414a2be7cf4b19cefa1d082693d48774ad8))
|
|
65
|
-
* vector mock ([ed9e056](https://github.com/roomle-dev/roomle-ui/commit/ed9e0565e4ccfea10db9008dee67dcbdd4faf587))
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
### Reverts
|
|
69
|
-
|
|
70
|
-
* unnecessary changes ([e7888c0](https://github.com/roomle-dev/roomle-ui/commit/e7888c026100958b8d2f8631be0e98271abf93fe))
|
|
16
|
+
* cannot read properties of null ([873981e](https://github.com/roomle-dev/roomle-ui/commit/873981ebf763052882affb13216d509df113eca8))
|
|
17
|
+
* typo in comment ([3a381c1](https://github.com/roomle-dev/roomle-ui/commit/3a381c1cd9c6ac2a10657f5a7ae391f840b2a32c))
|
|
18
|
+
* **planner:** update bounding box of configurable construction items ([ccc5de1](https://github.com/roomle-dev/roomle-ui/commit/ccc5de14ca67a6e8b9c8475661b29a8fb074fce3))
|
package/package.json
CHANGED
|
@@ -138,6 +138,7 @@ export default class RoomleEmbeddingApi<SdkType, SdkCallbacks> extends Connector
|
|
|
138
138
|
* @param initData settings with which the configurator should be started
|
|
139
139
|
*/
|
|
140
140
|
static createViewer(configuratorId: string, container: HTMLElement, initData: UiInitData, plugins?: PluginDefinitions): Promise<RoomleViewerApi>;
|
|
141
|
+
private static hiMessageHandler;
|
|
141
142
|
static setupHi(callbacks: HiCallbacks): void;
|
|
142
143
|
private static _create;
|
|
143
144
|
private _waitForIframe;
|
package/packages/embedding-lib/src/examples/utils/homag-intelligence/default-api-options.d.ts
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
import { ApiOptions } from '@roomle/web-sdk/homag-intelligence/src/loader';
|
|
2
|
+
|
|
3
|
+
interface TcOptions extends ApiOptions {
|
|
4
|
+
libraryId: string;
|
|
5
|
+
}
|
|
1
6
|
declare const _default: {
|
|
2
7
|
enableArrangementCorrection: boolean;
|
|
3
8
|
uiConfiguration: {
|
|
@@ -10,31 +15,10 @@ declare const _default: {
|
|
|
10
15
|
};
|
|
11
16
|
materialConfiguration: {
|
|
12
17
|
defaultMaterial: string;
|
|
13
|
-
replaceUnmappedMaterialsWithDefault: boolean;
|
|
14
|
-
materialMapping: any[];
|
|
15
18
|
};
|
|
16
19
|
debugConfiguration: {
|
|
17
20
|
createDebugGeometry: boolean;
|
|
18
21
|
};
|
|
19
|
-
tecConfigInfo:
|
|
20
|
-
baseUrlDebug: string;
|
|
21
|
-
/**
|
|
22
|
-
* If you do not want to use the proxy provided by Roomle
|
|
23
|
-
* uncomment the next three lines and comment the line
|
|
24
|
-
* which has the Roomle proxy URL in it.
|
|
25
|
-
* BE AWARE: That the example url dfteccdeveu01-app.azurewebsites.net
|
|
26
|
-
* only works if you requesting from localhost:3100 otherwise you
|
|
27
|
-
* will have CORS issues
|
|
28
|
-
*/
|
|
29
|
-
/** comment this line if you do not want to use the Roomle proxy */
|
|
30
|
-
baseUrl: string;
|
|
31
|
-
subscriptionId: string;
|
|
32
|
-
om: {
|
|
33
|
-
subscriptionId: string;
|
|
34
|
-
key: string;
|
|
35
|
-
importBaseUrl: string;
|
|
36
|
-
};
|
|
37
|
-
libraryId: string;
|
|
38
|
-
};
|
|
22
|
+
tecConfigInfo: TcOptions;
|
|
39
23
|
};
|
|
40
24
|
export default _default;
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
export declare const fetchJSONData: (url: string) => Promise<any>;
|
|
2
|
-
export declare const fetchDataWithAuthorization: (url: string, type:
|
|
2
|
+
export declare const fetchDataWithAuthorization: (url: string, type: 'json' | 'text', apiOptions: any, debug?: {
|
|
3
|
+
property: string;
|
|
4
|
+
}) => Promise<Response>;
|
|
5
|
+
export declare const loadArticleCatalog: (hiInitData: any) => Promise<any>;
|
|
6
|
+
export declare const loadMasterData: (hiInitData: any) => Promise<any>;
|
|
7
|
+
export declare const loadCalcScript: (hiInitData: any) => Promise<string>;
|
|
3
8
|
export declare const logInUi: (area: string, message: string, args?: (string | null)[]) => void;
|
|
4
9
|
export declare const logMessage: (message: string, ...args: (string | null)[]) => void;
|
|
5
10
|
export declare const logApiCall: (message: string) => void;
|
|
@@ -121,6 +121,7 @@ export declare const MOCK_MINIMAL_KERNEL_INSTANCE: {
|
|
|
121
121
|
getPlanComponentAnimations: () => KernelParameter[];
|
|
122
122
|
getComponent: () => any;
|
|
123
123
|
getPlanObjectPossibleChildren: () => KernelPossibleChild[];
|
|
124
|
+
getComponentOrModuleInformation: () => void;
|
|
124
125
|
};
|
|
125
126
|
export declare class MockConfiguratorKernel {
|
|
126
127
|
}
|
|
@@ -11,7 +11,7 @@ export default class MockImageRenderer {
|
|
|
11
11
|
switchToPlannerSettings(): void;
|
|
12
12
|
switchToConfiguratorSettings(): void;
|
|
13
13
|
static getCameraTargetForBBox(bbox: Box3, spacing?: number): CameraTarget;
|
|
14
|
-
preparePerspectiveImage(_scene: Scene, _uiScene: Scene, _camera: PerspectiveCamera, _cameraTarget: CameraTarget, _options?: PrepareImageOptions
|
|
14
|
+
preparePerspectiveImage(_scene: Scene, _uiScene: Scene, _camera: PerspectiveCamera, _cameraTarget: CameraTarget, _options?: PrepareImageOptions): Promise<Base64Image>;
|
|
15
15
|
renderPerspectiveImage(_scene: Scene, _camera: PerspectiveCamera, _cameraTarget: CameraTarget, _size?: number): Promise<Base64Image>;
|
|
16
16
|
static placeCameraForPerspectiveImage(_camera: PerspectiveCamera, _cameraTarget: CameraTarget, _angleX: number, _angleY: number): void;
|
|
17
17
|
prepareTopImage(_scene: Scene, _uiScene: Scene, _cameraTarget: CameraTarget, _options?: PrepareImageOptions): Promise<Base64Image>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { default as ConfiguratorContext } from './webgl/configurator-context';
|
|
2
|
-
import { DebugClient, KernelDockPairPreview, KernelObjectInformation, EmscriptenString, KernelAnimation, KernelComponent, KernelParameter, KernelParameterGroup, KernelVector3, PlanObject, VariantsList } from '../../typings/kernel';
|
|
2
|
+
import { DebugClient, KernelDockPairPreview, KernelObjectInformation, PossibleChildPreviewElement, EmscriptenString, KernelAnimation, KernelComponent, KernelParameter, KernelParameterGroup, KernelVector3, PlanObject, VariantsList } from '../../typings/kernel';
|
|
3
3
|
import { default as CommonKernelAccess, KERNEL_TYPE } from './services/common-kernel-access';
|
|
4
4
|
import { ArticleNumber, ConfigurationHash, ConfigurationString, RapiId, RapiPrice } from '../../typings/rapi-types';
|
|
5
5
|
import { CommonConfiguratorKernelCallbackI } from './common-configurator-kernel-callback';
|
|
@@ -54,7 +54,7 @@ export default class ConfiguratorKernelAccess extends CommonKernelAccess {
|
|
|
54
54
|
dockComponent(parentId: number, parentDockId: number, childId: number, childDockId: number): void;
|
|
55
55
|
changeUseOfHDGeometry(context: ConfiguratorContext, useHDGeometry: boolean): void;
|
|
56
56
|
webGlPreviewDockings(context: ConfiguratorContext, dragIn: boolean): void;
|
|
57
|
-
|
|
57
|
+
webGlPreviewDockingsForPlanObject(planObjectId: number, possibleChild: PossibleChildPreviewElement, dragIn: boolean): void;
|
|
58
58
|
previewDockingsWithDrag(componentId: number, planObjectId: number): void;
|
|
59
59
|
cancelDocking(componentId: number): void;
|
|
60
60
|
loadConfiguration(configuration: ConfigurationString): void;
|
|
@@ -118,12 +118,6 @@ export interface FeatureFlags {
|
|
|
118
118
|
* @description If true, the advanced dimensioning is enabled (for test purposes only)
|
|
119
119
|
*/
|
|
120
120
|
advancedDimensioning?: boolean;
|
|
121
|
-
/**
|
|
122
|
-
* @internal
|
|
123
|
-
* @description If true, the undo/redo feature is enabled in the configurator in planner.
|
|
124
|
-
* This is for test purposes only.
|
|
125
|
-
*/
|
|
126
|
-
undoRedoInConfiguratorInPlanner?: boolean;
|
|
127
121
|
/**
|
|
128
122
|
* @internal
|
|
129
123
|
* @description If true, the scene will be rendered with WebGPU instead of WebGL
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { PreviewComponent, PreviewLineComponent, RoomleComponent, RoomleComponentFactory } from '../../../common-core/src/webgl/roomle-component-factory';
|
|
2
2
|
import { ConfiguratorKernelCallbackI } from '../configurator-kernel-access';
|
|
3
3
|
import { KernelComponent, KernelDockPairPreview, KernelEnum, KernelLightSourceAttributes, KernelMeshAttributes, KernelMeshBuffer, KernelParameter, KernelVector3, PlanObject } from '../../../typings/kernel';
|
|
4
4
|
import { ConfigurationString } from '../../../typings/rapi-types';
|
|
@@ -52,6 +52,7 @@ export default class ConfiguratorViewModel implements ConfiguratorKernelCallback
|
|
|
52
52
|
private _applyMeshUVTransform;
|
|
53
53
|
updateAnimationParameters(elementId: number | number[], parameters: KernelParameter[]): void;
|
|
54
54
|
changeAnimationValue(elementId: number, parameterKey: string, value: string, level: number, animationLevel: AnimationLevelType, animate: boolean): void;
|
|
55
|
+
protected updatePlanElement(_elementId: number): void;
|
|
55
56
|
getComponentFromRuntimeId(elementId: number): RoomleComponent | null;
|
|
56
57
|
private _addMeshToSubPart;
|
|
57
58
|
private _addMeshToComponent;
|
|
@@ -13,6 +13,7 @@ export interface PrepareImageOptions {
|
|
|
13
13
|
size?: number;
|
|
14
14
|
showDimensions?: boolean;
|
|
15
15
|
runtimeIds?: number[];
|
|
16
|
+
rotationY?: number;
|
|
16
17
|
}
|
|
17
18
|
export interface CameraTarget {
|
|
18
19
|
center: Vector3;
|
|
@@ -29,7 +30,7 @@ export default class ImageRenderer {
|
|
|
29
30
|
switchToConfiguratorSettings(): void;
|
|
30
31
|
updateBounds(bounds: Box3): void;
|
|
31
32
|
static getCameraTargetForBBox(bbox: Box3, spacing?: number): CameraTarget;
|
|
32
|
-
preparePerspectiveImage(scene: Scene, uiScene: Scene, camera: PerspectiveCamera, cameraTarget: CameraTarget, options?: PrepareImageOptions,
|
|
33
|
+
preparePerspectiveImage(scene: Scene, uiScene: Scene, camera: PerspectiveCamera, cameraTarget: CameraTarget, options?: PrepareImageOptions, onBeforeRender?: (camera: Camera) => void): Promise<Base64Image>;
|
|
33
34
|
renderPerspectiveImage(scene: Scene, camera: PerspectiveCamera, cameraTarget: CameraTarget, size?: number): Promise<Base64Image>;
|
|
34
35
|
static placeCameraForPerspectiveImage(camera: PerspectiveCamera, cameraTarget: CameraTarget, angleX: number, angleY: number): void;
|
|
35
36
|
prepareTopImage(scene: Scene, uiScene: Scene, cameraTarget: CameraTarget, options?: PrepareImageOptions): Promise<Base64Image>;
|
|
@@ -4,8 +4,6 @@ export declare const USM_PARTLIST: any;
|
|
|
4
4
|
export declare const CUBE_PARTLIST: any;
|
|
5
5
|
export declare const USM_KERNEL_POSSIBLE_CHILD: KernelPossibleChild;
|
|
6
6
|
export declare const USM_KERNEL_IMPOSSIBLE_CHILD: KernelPossibleChild;
|
|
7
|
-
export declare const EXTERNAL_COMPONENT: KernelPossibleChild;
|
|
8
|
-
export declare const EXTERNAL_ITEM: KernelPossibleChild;
|
|
9
7
|
export declare const USM_RAPI_COMPONENT: {
|
|
10
8
|
externalIdentifier: string;
|
|
11
9
|
catalog: string;
|
|
@@ -668,6 +668,8 @@ export default class RoomleConfigurator<P extends readonly PluginName[] = readon
|
|
|
668
668
|
}>;
|
|
669
669
|
private _addAdditionalInfoToPossibleChildren;
|
|
670
670
|
private _getPossibleChildrenForKernelPossibleChildren;
|
|
671
|
+
private _addPossibleChildren;
|
|
672
|
+
private _getPossibleChildrenFromSubArticles;
|
|
671
673
|
/**
|
|
672
674
|
* returns unit formatter for formatting input und output values in scene
|
|
673
675
|
*/
|
package/packages/web-sdk/packages/configurator-core/src/webgl/configurator-scene-manager.d.ts
CHANGED
|
@@ -23,6 +23,7 @@ import { default as GlobalInitData } from '../../../common-core/src/utils/global
|
|
|
23
23
|
import { CancelSelectionReasons } from '../../../typings/planner';
|
|
24
24
|
import { default as UnitFormatter } from '../services/unit-formatter';
|
|
25
25
|
import { AnimationLevelType } from '../utils/animation/animation-helper';
|
|
26
|
+
import { PosArticle } from '../../../homag-intelligence/src/model/oc-scripts-domain.model';
|
|
26
27
|
|
|
27
28
|
export default class ConfiguratorSceneManager extends SceneManager implements ConfiguratorViewModelCallbackI {
|
|
28
29
|
_creator_: string;
|
|
@@ -175,4 +176,5 @@ export default class ConfiguratorSceneManager extends SceneManager implements Co
|
|
|
175
176
|
private _showCustomComponentDimensions;
|
|
176
177
|
private _removeCustomComponentDimensions;
|
|
177
178
|
clearHighlighting(): void;
|
|
179
|
+
getExternalSubArticles(_id: number): PosArticle[];
|
|
178
180
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -20,12 +20,7 @@ export declare class RoomDesignerApi implements RoomDesignerRequests {
|
|
|
20
20
|
deleteRootModule(rootModuleId: string): void;
|
|
21
21
|
getPosDataOfAllGroups(): Promise<PosGroup[]>;
|
|
22
22
|
getRoomInformation(): Promise<import('./external-object-api').ExternalRoomInformation>;
|
|
23
|
-
|
|
24
|
-
objectId: string;
|
|
25
|
-
planId: string;
|
|
26
|
-
}>;
|
|
27
|
-
saveExternalObjectSnapshot(): Promise<import('../../typings/rapi-types').RapiPlanSnapshotGetDataWith3dUrls>;
|
|
23
|
+
saveExternalObjectSnapshot(): Promise<import('./external-object-api').ExternalObjectSnapshotSaveResult>;
|
|
28
24
|
saveCurrentPlanSnapshot(): Promise<import('../../typings/rapi-types').RapiPlanSnapshotGetData>;
|
|
29
25
|
renderPosDataImage(posDataJson: object): Promise<void>;
|
|
30
|
-
downloadGlb(): Promise<void>;
|
|
31
26
|
}
|
|
@@ -3,8 +3,8 @@ import { GlueLogic, LibraryData, PlanSnapshot, RoomDesignerRequests } from './gl
|
|
|
3
3
|
import { ExternalObjectGroup } from 'roomle-core-hsc/src/embind/plannerCoreInterface';
|
|
4
4
|
import { ExternalModuleInformation } from '../../typings/kernel';
|
|
5
5
|
import { CheckResult, PosArticle, PosGroup, PosSaveData } from './model/oc-scripts-domain.model';
|
|
6
|
-
import {
|
|
7
|
-
import { LoadExternalObjectOptions } from './external-object-api';
|
|
6
|
+
import { HiObjectSelectionApi } from './hi-object-selection';
|
|
7
|
+
import { ExternalObjectSnapshotSaveResult, ExternalRoomInformation, LoadExternalObjectOptions } from './external-object-api';
|
|
8
8
|
import { ExternalObjectValidContainerModules } from './external-object-api-callbacks';
|
|
9
9
|
|
|
10
10
|
export declare class GlueLayerRequestDebugLogging implements GlueLogic {
|
|
@@ -12,7 +12,7 @@ export declare class GlueLayerRequestDebugLogging implements GlueLogic {
|
|
|
12
12
|
private _hiCallbacks;
|
|
13
13
|
constructor(glueLogic: GlueLogic, hiCallbacks: HiCallbacks);
|
|
14
14
|
get hiCallbacks(): HiCallbacks | null;
|
|
15
|
-
get hiObjectSelection():
|
|
15
|
+
get hiObjectSelection(): HiObjectSelectionApi;
|
|
16
16
|
private _logRequest;
|
|
17
17
|
isLibraryLoaded(libraryId: string): boolean;
|
|
18
18
|
getLibraryData(libraryId: string): LibraryData | null;
|
|
@@ -58,11 +58,6 @@ export declare class GlueLayerResponseDebugLogging implements RoomDesignerReques
|
|
|
58
58
|
deleteGroup(groupId: string): void;
|
|
59
59
|
deleteRootModule(rootModuleId: string): void;
|
|
60
60
|
getPosDataOfAllGroups(): Promise<PosGroup[]>;
|
|
61
|
-
getRoomInformation(): Promise<
|
|
62
|
-
|
|
63
|
-
objectId: string;
|
|
64
|
-
planId: string;
|
|
65
|
-
}>;
|
|
66
|
-
saveExternalObjectSnapshot(): Promise<any>;
|
|
67
|
-
saveCurrentPlanSnapshot(): Promise<any>;
|
|
61
|
+
getRoomInformation(): Promise<ExternalRoomInformation>;
|
|
62
|
+
saveExternalObjectSnapshot(): Promise<ExternalObjectSnapshotSaveResult | null>;
|
|
68
63
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Position3 } from '../../common-core/src/common-interfaces';
|
|
2
|
+
import { RapiId } from '../../typings/rapi-types';
|
|
2
3
|
import { CheckResult, PosArticle, PosContour } from './model/oc-scripts-domain.model';
|
|
3
4
|
|
|
4
5
|
export interface ExternalObjectUiSliderRange {
|
|
@@ -64,6 +65,26 @@ export interface LoadExternalObjectOptions {
|
|
|
64
65
|
export interface LoadExternalObjectGroupResult {
|
|
65
66
|
id: number;
|
|
66
67
|
}
|
|
68
|
+
export interface ExternalObjectSnapshotData {
|
|
69
|
+
orderData: string;
|
|
70
|
+
planXML: string;
|
|
71
|
+
objectGlb: string;
|
|
72
|
+
perspectiveImage: string;
|
|
73
|
+
topImage: string;
|
|
74
|
+
perspectiveObjectImage: string;
|
|
75
|
+
topObjectImage: string;
|
|
76
|
+
}
|
|
77
|
+
export interface ExternalObjectSnapshotSaveResult {
|
|
78
|
+
orderData: string;
|
|
79
|
+
planSnapshotId: string;
|
|
80
|
+
perspectiveImageLink: string;
|
|
81
|
+
topImageLink: string;
|
|
82
|
+
fullPlanGlbLink: string;
|
|
83
|
+
perspectiveObjectImageLink: string;
|
|
84
|
+
topObjectImageLink: string;
|
|
85
|
+
objectGlbLink: string;
|
|
86
|
+
glb: string;
|
|
87
|
+
}
|
|
67
88
|
export interface ExternalObjectAPI {
|
|
68
89
|
/**
|
|
69
90
|
* With "configureExternalObjectApi" the default representation of the objects and UI and
|
|
@@ -196,5 +217,22 @@ export interface ExternalObjectAPI {
|
|
|
196
217
|
* "getExternalRoomInformation" returns the room information for currently loaded in the plan.
|
|
197
218
|
*/
|
|
198
219
|
getExternalRoomInformation(): Promise<ExternalRoomInformation>;
|
|
220
|
+
/**
|
|
221
|
+
* It generates a snapshot of the external object in the plan without saving any data.
|
|
222
|
+
* The snapshot includes order data, room information, the plan XML, GLBs of the complete scene,
|
|
223
|
+
* and only the objects in the scene, as well as perspective images and a top image.
|
|
224
|
+
* The complete XML plan is returned. The assets are returned as base64 strings.
|
|
225
|
+
* @returns the snapshot of the external objects
|
|
226
|
+
*/
|
|
227
|
+
getExternalObjectSnapshot(): Promise<ExternalObjectSnapshotData | null>;
|
|
228
|
+
/**
|
|
229
|
+
* It generates a snapshot of the external object and saves the data and assets in the Roomle backend.
|
|
230
|
+
* The snapshot includes order data, room information, the plan XML, GLBs of the complete scene,
|
|
231
|
+
* and only the objects in the scene, as well as perspective images and a top image.
|
|
232
|
+
* Only the plan snapshot ID is returned from the plan. The assets are returned as URLs.
|
|
233
|
+
* @param parentPlanId id of the current plan, optional
|
|
234
|
+
* @returns the snapshot of the external objects if there are no external objects it returns null
|
|
235
|
+
*/
|
|
236
|
+
saveExternalObjectSnapshot(parentPlanId?: RapiId): Promise<ExternalObjectSnapshotSaveResult | null>;
|
|
199
237
|
}
|
|
200
238
|
export declare const getDefaultExternalObjectApiConfiguration: () => Promise<ExternalObjectApiConfiguration>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { HiCallbacks } from '../../../../embedding-lib/src/embedding-lib';
|
|
2
2
|
import { ExternalModuleInformation, ExternalObjectGroup, ExternalObjectValidContainerModules } from './external-object-api-callbacks';
|
|
3
3
|
import { MasterData, PosModuleAttribute, PosGroup, PosModuleData, CheckResult, PosSaveData, PosArticle } from './model/oc-scripts-domain.model';
|
|
4
|
-
import {
|
|
5
|
-
import { LoadExternalObjectOptions } from './external-object-api';
|
|
4
|
+
import { HiObjectSelectionApi } from './hi-object-selection';
|
|
5
|
+
import { ExternalObjectSnapshotSaveResult, ExternalRoomInformation, LoadExternalObjectOptions } from './external-object-api';
|
|
6
6
|
|
|
7
7
|
export interface LibraryIdAndLibraryData {
|
|
8
8
|
libraryId?: string;
|
|
@@ -30,17 +30,12 @@ export interface RoomDesignerRequests {
|
|
|
30
30
|
deleteGroup(groupId: string): void;
|
|
31
31
|
deleteRootModule(rootModuleId: string): void;
|
|
32
32
|
getPosDataOfAllGroups(): Promise<PosGroup[]>;
|
|
33
|
-
getRoomInformation(): Promise<
|
|
34
|
-
|
|
35
|
-
objectId: string;
|
|
36
|
-
planId: string;
|
|
37
|
-
}>;
|
|
38
|
-
saveExternalObjectSnapshot(): Promise<any>;
|
|
39
|
-
saveCurrentPlanSnapshot(): Promise<any>;
|
|
33
|
+
getRoomInformation(): Promise<ExternalRoomInformation>;
|
|
34
|
+
saveExternalObjectSnapshot(): Promise<ExternalObjectSnapshotSaveResult | null>;
|
|
40
35
|
}
|
|
41
36
|
export interface GlueLogic {
|
|
42
37
|
hiCallbacks: HiCallbacks | null;
|
|
43
|
-
hiObjectSelection:
|
|
38
|
+
hiObjectSelection: HiObjectSelectionApi;
|
|
44
39
|
isLibraryLoaded(libraryId: string): boolean;
|
|
45
40
|
getLibraryData(libraryId: string): LibraryData | null;
|
|
46
41
|
addLibrary(libraryData: LibraryData): void;
|
|
@@ -87,6 +82,7 @@ export declare class GlueLogicImplementation implements GlueLogic {
|
|
|
87
82
|
private _libraryData;
|
|
88
83
|
private _posDataForLoading;
|
|
89
84
|
private _posArticleMap;
|
|
85
|
+
private _posSubArticleMap;
|
|
90
86
|
private _groupMap;
|
|
91
87
|
private _nextPosDataId;
|
|
92
88
|
private _hiCallbacks;
|
|
@@ -96,7 +92,7 @@ export declare class GlueLogicImplementation implements GlueLogic {
|
|
|
96
92
|
private _validSubArticles;
|
|
97
93
|
constructor(designerRequests: RoomDesignerRequests, hiCallbacks?: HiCallbacks | null);
|
|
98
94
|
get hiCallbacks(): HiCallbacks | null;
|
|
99
|
-
get hiObjectSelection():
|
|
95
|
+
get hiObjectSelection(): HiObjectSelectionApi;
|
|
100
96
|
private _getGroup;
|
|
101
97
|
getLibraryData(data: string | PosGroup): LibraryData | null;
|
|
102
98
|
isLibraryLoaded(libraryId: string): boolean;
|
|
@@ -135,7 +131,6 @@ export declare class GlueLogicImplementation implements GlueLogic {
|
|
|
135
131
|
private _splitOffRootModulesFromGroup;
|
|
136
132
|
private _calculateNewGroup;
|
|
137
133
|
private _getLibraryIdForPosData;
|
|
138
|
-
private _populateRootFromMasterData;
|
|
139
134
|
private _setSubmoduleImages;
|
|
140
135
|
private _calculateAndUpdateGroupMap;
|
|
141
136
|
private _addNewGroup;
|
|
@@ -19,7 +19,15 @@ export declare const HI_SELECTION_MODE: {
|
|
|
19
19
|
readonly RML_OBJECT: "rml-object";
|
|
20
20
|
};
|
|
21
21
|
export type HiSelectionMode = (typeof HI_SELECTION_MODE)[keyof typeof HI_SELECTION_MODE];
|
|
22
|
-
export
|
|
22
|
+
export interface HiObjectSelectionApi {
|
|
23
|
+
setSidebar(viewName: string): void;
|
|
24
|
+
contextChanged(context: BASE_CONTEXT): void;
|
|
25
|
+
groupOrModuleSelected(groupId: string, rootModuleId: string | null, subModuleId: string | null): void;
|
|
26
|
+
componentSelectionCancel(reason: CancelSelectionReasons): void;
|
|
27
|
+
selectionCancel(reason: CancelSelectionReasons): void;
|
|
28
|
+
selectionChanged(selectionMode: SELECTION_MODE, objectType: CallbackObjectType, payload: SelectionPayload, _payloadPromise: Promise<SelectionPayload>, _planElementViewModel: PlanElementViewModel): void;
|
|
29
|
+
}
|
|
30
|
+
export declare class HiObjectSelection implements HiObjectSelectionApi {
|
|
23
31
|
private _callbacks;
|
|
24
32
|
private _contextType;
|
|
25
33
|
private _selectionMode;
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { MasterData } from './model/oc-scripts-domain.model';
|
|
2
|
-
|
|
3
1
|
export interface HomagIntelligenceInitData {
|
|
4
2
|
libraryId: string;
|
|
5
3
|
serverOptions?: ApiOptions;
|
|
@@ -8,27 +6,13 @@ export interface HomagIntelligenceInitData {
|
|
|
8
6
|
export interface OrderManagerOptions {
|
|
9
7
|
key?: string;
|
|
10
8
|
importBaseUrl?: string;
|
|
9
|
+
subscriptionId?: string;
|
|
11
10
|
}
|
|
12
11
|
export interface ApiOptions {
|
|
13
12
|
subscriptionId: string;
|
|
14
|
-
om?: OrderManagerOptions;
|
|
15
13
|
endpointUrl?: string;
|
|
14
|
+
key?: string;
|
|
15
|
+
om?: OrderManagerOptions;
|
|
16
|
+
baseUrl?: string;
|
|
16
17
|
localUrl?: string;
|
|
17
18
|
}
|
|
18
|
-
export declare const fetchDataWithAuthorization: (url: string, type: 'json' | 'text', apiOptions: ApiOptions, debug?: {
|
|
19
|
-
property: string;
|
|
20
|
-
}) => Promise<Response>;
|
|
21
|
-
export declare const loadArticleCatalog: (apiOptions: HomagIntelligenceInitData) => Promise<any>;
|
|
22
|
-
export declare const loadMasterData: (apiOptions: HomagIntelligenceInitData) => Promise<MasterData>;
|
|
23
|
-
export declare const loadCalcScript: (apiOptions: HomagIntelligenceInitData) => Promise<string>;
|
|
24
|
-
export declare const getRequestSettings: (apiOptions: ApiOptions) => {
|
|
25
|
-
subscriptionId: string;
|
|
26
|
-
headers: {
|
|
27
|
-
headers: {
|
|
28
|
-
'Content-Type': string;
|
|
29
|
-
};
|
|
30
|
-
};
|
|
31
|
-
key: string;
|
|
32
|
-
importBaseUrl: string;
|
|
33
|
-
};
|
|
34
|
-
export declare const omRequest: (apiOptions: ApiOptions, body: any, url: string, debugStr?: string, extraHeaders?: {}) => Promise<any>;
|
|
@@ -9,7 +9,7 @@ export declare const enum UserRightLevel {
|
|
|
9
9
|
Master = 2
|
|
10
10
|
}
|
|
11
11
|
export declare const getUserRightLevel: (right?: PosUserRight | null) => UserRightLevel;
|
|
12
|
-
interface PosArticleInfo {
|
|
12
|
+
export interface PosArticleInfo {
|
|
13
13
|
/**
|
|
14
14
|
* Defined the library that is used / must match the MasterData
|
|
15
15
|
*/
|
|
@@ -31,6 +31,12 @@ interface PosArticleInfo {
|
|
|
31
31
|
category?: string;
|
|
32
32
|
isConfigDummy?: boolean;
|
|
33
33
|
}
|
|
34
|
+
export interface PosPositionInfo extends PosArticleInfo {
|
|
35
|
+
/**
|
|
36
|
+
* Additional text for this root module
|
|
37
|
+
*/
|
|
38
|
+
additionalText?: string;
|
|
39
|
+
}
|
|
34
40
|
export interface PosPartData {
|
|
35
41
|
id: string;
|
|
36
42
|
hidden?: boolean;
|
|
@@ -79,18 +85,16 @@ export interface PosModuleData {
|
|
|
79
85
|
id: string;
|
|
80
86
|
name: string;
|
|
81
87
|
modules?: PosModuleData[];
|
|
88
|
+
containers?: PosModuleData[];
|
|
82
89
|
parts?: PosPartData[];
|
|
83
90
|
imageUrl?: string;
|
|
84
91
|
attributes?: PosModuleAttribute[];
|
|
85
92
|
canBeDeleted?: boolean;
|
|
86
93
|
isGenerated?: boolean;
|
|
87
94
|
checkAttributes?: Map<string, string | number | boolean | undefined>;
|
|
95
|
+
articleInfo?: PosPositionInfo;
|
|
88
96
|
}
|
|
89
|
-
export interface PosModuleRootData extends PosModuleData,
|
|
90
|
-
/**
|
|
91
|
-
* Additional text for this root module
|
|
92
|
-
*/
|
|
93
|
-
additionalText?: string;
|
|
97
|
+
export interface PosModuleRootData extends PosModuleData, PosPositionInfo {
|
|
94
98
|
/**
|
|
95
99
|
* Position of this article; if not set it is always 0,0,0 (x/y/z)
|
|
96
100
|
*/
|
|
@@ -315,7 +319,6 @@ export interface CheckDropDownEntry {
|
|
|
315
319
|
}
|
|
316
320
|
export declare enum CheckDropDownEntryKind {
|
|
317
321
|
Normal = 0,
|
|
318
|
-
Conflicting = 1
|
|
319
|
-
Invalid = 2
|
|
322
|
+
Conflicting = 1
|
|
320
323
|
}
|
|
321
324
|
export {};
|
|
@@ -4,7 +4,7 @@ import { GlbViewer } from '../../glb-viewer-core/src/glb-viewer';
|
|
|
4
4
|
import { default as Main, ExternalEmbeddable, GlobalAPI, KernelUtilityForUi, RubensAPI } from '../../common-core/src/main';
|
|
5
5
|
import { Configurator } from '../../configurator-core/src/configurator';
|
|
6
6
|
import { GlobalInitDataDefinition, InitDataDefinition } from '../../common-core/src/utils/shims';
|
|
7
|
-
import { ConfigurationString, RapiConfiguration, RapiId, RapiItem, RapiPlan, RapiPlanSnapshotGetData
|
|
7
|
+
import { ConfigurationString, RapiConfiguration, RapiId, RapiItem, RapiPlan, RapiPlanSnapshotGetData } from '../../typings/rapi-types';
|
|
8
8
|
import { Context } from '../../common-core/src/di/context';
|
|
9
9
|
import { KernelAttic, PlanObject, WallSide, CancelSelectionReasons, KernelObject, KernelWall, PlanInteractionHandler, PlanModelViewHelper, PlanOverview } from '../../typings/planner';
|
|
10
10
|
import { KernelAccessCallbackI } from '../../common-core/src/kernel-access-callback';
|
|
@@ -21,11 +21,10 @@ import { default as PlanElementViewModel } from '../../common-core/src/view-mode
|
|
|
21
21
|
import { default as WallPlanElementViewModel } from './view-model/wall-plan-element-view-model';
|
|
22
22
|
import { default as ConfiguratorContext } from '../../common-core/src/webgl/configurator-context';
|
|
23
23
|
import { default as IdbManager } from '../../common-core/src/services/idb-manager';
|
|
24
|
-
import { LoadExternalObjectGroupResult, LoadExternalObjectOptions, ExternalObjectAPI, ExternalObjectApiConfiguration, ExternalObjectModuleIdMap, ExternalRoomInformation, HiContextAction } from '../../homag-intelligence/src/external-object-api';
|
|
24
|
+
import { ExternalObjectSnapshotData, ExternalObjectSnapshotSaveResult, LoadExternalObjectGroupResult, LoadExternalObjectOptions, ExternalObjectAPI, ExternalObjectApiConfiguration, ExternalObjectModuleIdMap, ExternalRoomInformation, HiContextAction } from '../../homag-intelligence/src/external-object-api';
|
|
25
25
|
import { GlobalCallback } from '../../common-core/src/services/global-callback';
|
|
26
26
|
import { ExternalGroupData, ExternalObject, ExtObjId } from '../../typings/external-objects';
|
|
27
27
|
import { PluginName } from '../../configurator-core/src/utils/plugin-types';
|
|
28
|
-
import { Nullable } from '../../typings/helper';
|
|
29
28
|
import { MaybePromise } from '../../common-core/src/utils/common-utils';
|
|
30
29
|
import { HomagIntelligence } from '../../homag-intelligence/src/homag-intelligence';
|
|
31
30
|
import { RoomleLightSource } from '../../common-core/src/light/light-source';
|
|
@@ -360,28 +359,8 @@ export default class RoomlePlanner<P extends readonly PluginName[] = readonly []
|
|
|
360
359
|
* @param sceneEvents
|
|
361
360
|
*/
|
|
362
361
|
setSceneEvents(sceneEvents: SceneEvents): void;
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
* The snapshot includes order data, room information, the plan XML, GLBs of the complete scene,
|
|
366
|
-
* and only the objects in the scene, as well as perspective images and a top image.
|
|
367
|
-
* @returns the snapshot of the external objects
|
|
368
|
-
*/
|
|
369
|
-
getExternalObjectSnapshot(): Promise<{
|
|
370
|
-
orderData: any;
|
|
371
|
-
planXML: string;
|
|
372
|
-
objectGlb: string;
|
|
373
|
-
perspectiveImage: string;
|
|
374
|
-
topImage: string;
|
|
375
|
-
perspectiveObjectImage: string;
|
|
376
|
-
topObjectImage: string;
|
|
377
|
-
}>;
|
|
378
|
-
/**
|
|
379
|
-
* Saves a snapshot of the external objects in the plan without walls and other objects
|
|
380
|
-
* Also contains the urls to the glb and usdz files
|
|
381
|
-
* @param parentPlanId id of the current plan, optional
|
|
382
|
-
* @returns the snapshot of the external objects if there are no external objects it returns null
|
|
383
|
-
*/
|
|
384
|
-
saveExternalObjectSnapshot(parentPlanId?: RapiId): Promise<Nullable<RapiPlanSnapshotGetDataWith3dUrls>>;
|
|
362
|
+
getExternalObjectSnapshot(): Promise<ExternalObjectSnapshotData | null>;
|
|
363
|
+
saveExternalObjectSnapshot(parentPlanId?: RapiId): Promise<ExternalObjectSnapshotSaveResult | null>;
|
|
385
364
|
private _getExternalObjectGroupsInPlan;
|
|
386
365
|
private _savePlanSnapshotExternalObjects;
|
|
387
366
|
saveCurrentPlanSnapshot(parentPlanId?: RapiId, configurationHashOrGroupId?: string | string[]): Promise<RapiPlanSnapshotGetData>;
|
|
@@ -101,6 +101,8 @@ export default class PlanViewModel extends ConfiguratorViewModel implements Plan
|
|
|
101
101
|
protected _addComponent(component: RoomleComponent): void;
|
|
102
102
|
private _getPlanObjectViewModelForRuntimeId;
|
|
103
103
|
getConfigurablePlanObjectForId(id: number): ConfiguratorPlanObjectViewModel;
|
|
104
|
+
private _findPlanObjectViewModel;
|
|
105
|
+
protected updatePlanElement(elementId: number): void;
|
|
104
106
|
getStaticPlanObjectForId(id: number): StaticPlanObjectViewModel;
|
|
105
107
|
getConstructionObjectForId(id: number): ConstructionPlanObjectViewModel;
|
|
106
108
|
getStaticPlanObjectViewModelForId(id: number): StaticPlanObjectViewModel;
|