@roomle/embedding-lib 5.30.1 → 5.31.0-alpha.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/docs/md/web/embedding/CHANGELOG.md +44 -2
- package/package.json +1 -1
- package/packages/embedding-lib/src/examples/homag-intelligence-example.d.ts +11 -0
- package/packages/web-sdk/packages/common-core/src/configurator-kernel-access.d.ts +3 -2
- package/packages/web-sdk/packages/common-core/src/services/cache-holder.d.ts +5 -2
- package/packages/web-sdk/packages/common-core/src/utils/common-utils.d.ts +37 -0
- package/packages/web-sdk/packages/common-core/src/utils/init-data.d.ts +1 -1
- package/packages/web-sdk/packages/common-core/src/view-model/configurator-view-model.d.ts +1 -4
- package/packages/web-sdk/packages/common-core/src/webgl/roomle-component-factory.d.ts +1 -1
- package/packages/web-sdk/packages/configurator-core/src/services/configurator-ui-callback.d.ts +4 -0
- package/packages/web-sdk/packages/configurator-core/src/utils/animation/animation-helper.d.ts +3 -2
- package/packages/web-sdk/packages/configurator-core/src/utils/dimensioning-helper.d.ts +13 -10
- package/packages/web-sdk/packages/configurator-core/src/webgl/configurator-scene-event-handler.d.ts +4 -0
- package/packages/web-sdk/packages/configurator-core/src/webgl/configurator-scene-manager.d.ts +0 -3
- package/packages/web-sdk/packages/homag-intelligence/__tests__/glue-logic-test.d.ts +1 -0
- package/packages/web-sdk/packages/homag-intelligence/src/api.d.ts +4 -3
- package/packages/web-sdk/packages/homag-intelligence/src/callbacks.d.ts +1 -1
- package/packages/web-sdk/packages/homag-intelligence/src/debug-logging.d.ts +3 -3
- package/packages/web-sdk/packages/{planner-core → homag-intelligence}/src/external-object-api.d.ts +26 -10
- package/packages/web-sdk/packages/homag-intelligence/src/{emulator.d.ts → glue-logic.d.ts} +6 -5
- package/packages/web-sdk/packages/homag-intelligence/src/hi-object-selection.d.ts +2 -2
- package/packages/web-sdk/packages/homag-intelligence/src/hi-tag-catalog-callbacks.d.ts +1 -1
- package/packages/web-sdk/packages/homag-intelligence/src/homag-intelligence.d.ts +1 -1
- package/packages/web-sdk/packages/homag-intelligence/src/orders.d.ts +1 -1
- package/packages/web-sdk/packages/planner-core/src/roomle-planner-ui-callback.d.ts +1 -1
- package/packages/web-sdk/packages/planner-core/src/roomle-planner.d.ts +20 -21
- package/packages/web-sdk/packages/planner-core/src/services/planner-kernel-access.d.ts +10 -6
- package/packages/web-sdk/packages/planner-core/src/view-model/plan-view-model.d.ts +1 -1
- package/packages/web-sdk/packages/planner-core/src/webgl/planner-element-highlighter.d.ts +1 -0
- package/packages/web-sdk/packages/planner-core/src/webgl/planner-scene-event-handler.d.ts +4 -4
- package/packages/web-sdk/packages/planner-core/src/webgl/planner-scene-manager.d.ts +10 -5
- package/packages/web-sdk/packages/typings/kernel.d.ts +2 -1
- package/packages/web-sdk/packages/typings/planner-kernel-container.d.ts +1 -1
- package/packages/web-sdk/packages/typings/planner.d.ts +10 -6
- package/src/common/components/notifications/MaximumLightNotification.vue.d.ts +8 -0
- package/src/common/components/notifications/RenderingLightNotification.vue.d.ts +6 -0
- package/src/common/components/parameters/ColorParameter.vue.d.ts +2 -2
- package/src/common/components/side-bar/utils/configurator-sidebar-components.d.ts +2 -2
- package/src/common/components/utils/-utils/notifications.d.ts +4 -0
- package/src/common/composables/use-static-item-parameters.d.ts +1 -1
- package/src/configurator/embedding/types.d.ts +3 -0
- /package/packages/web-sdk/packages/{planner-core → homag-intelligence}/src/external-object-api-callbacks.d.ts +0 -0
|
@@ -1,6 +1,48 @@
|
|
|
1
|
-
## [5.
|
|
1
|
+
## [5.31.0-alpha.1](https://github.com/roomle-dev/roomle-ui/compare/embedding-lib-v5.30.1...embedding-lib-v5.31.0-alpha.1) (2025-10-23)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Features
|
|
5
|
+
|
|
6
|
+
* core api - isChildObjectRootComponent ([027e033](https://github.com/roomle-dev/roomle-ui/commit/027e0335af12b5c59a0c42a9403ed94ed3589291))
|
|
7
|
+
* core api - plan object children ([33259e1](https://github.com/roomle-dev/roomle-ui/commit/33259e158b40cb0136d5a60a9a41f992666420e5))
|
|
8
|
+
* core api - setObjectCustomColor ([70ce529](https://github.com/roomle-dev/roomle-ui/commit/70ce52925dc36824beb895b16cf686c5e93496c5))
|
|
9
|
+
* custom color picker on static items ([1942a7d](https://github.com/roomle-dev/roomle-ui/commit/1942a7d15af8f8d6af3bf9b786c05da4737faefa))
|
|
10
|
+
* do not allow dragging of modules in configurator ([adcd12a](https://github.com/roomle-dev/roomle-ui/commit/adcd12a44bd2d50018e05bedc1bf4b848e15b380))
|
|
11
|
+
* hi example - article image ([996dca9](https://github.com/roomle-dev/roomle-ui/commit/996dca93850096c5560a24a8ec94dc5326a267d3))
|
|
12
|
+
* homag intelligence example - debug ui ([47d635d](https://github.com/roomle-dev/roomle-ui/commit/47d635d55347bcb2da57f3672597db7cc086cd7d))
|
|
13
|
+
* Implement html measurements for "normal" measurements ([60bccbb](https://github.com/roomle-dev/roomle-ui/commit/60bccbbe940cd1c03f434e22895d8ce7edaf84d1))
|
|
14
|
+
* initial light working ([a8ed3eb](https://github.com/roomle-dev/roomle-ui/commit/a8ed3ebdf9ad5b9c2f5ea8f216cbb7a78b1f694c))
|
|
15
|
+
* lock camera state when switching object in configurator ([ce4bd0c](https://github.com/roomle-dev/roomle-ui/commit/ce4bd0ce3f2acc19f06ff933a9d511508dfa6a34))
|
|
16
|
+
* module selection logic in isolation mode ([b6736e1](https://github.com/roomle-dev/roomle-ui/commit/b6736e1e7bd846c5aa82a8435608e3756390f2ab))
|
|
17
|
+
* save configuration on planObjectConfigurationChanged ([0a4a57e](https://github.com/roomle-dev/roomle-ui/commit/0a4a57e87db6759039f64373873a4fb4990f8b5c))
|
|
18
|
+
* select the component of the child object on start configuring ([c7b7ed6](https://github.com/roomle-dev/roomle-ui/commit/c7b7ed656a538617efd0dee6de0c617518774aba))
|
|
19
|
+
* setting maximum lights based on max anisotrophy ([f0aa240](https://github.com/roomle-dev/roomle-ui/commit/f0aa240c0bebe9ef11138a78bde9f993e262d2f5))
|
|
20
|
+
* **core:** upgrade to version 2.63.0-alpha.1 ([f2301cc](https://github.com/roomle-dev/roomle-ui/commit/f2301cc82ea02d5d83da0df183a1b6a04c641123))
|
|
21
|
+
* **core:** upgrade to version 2.63.0-alpha.2 ([eae6240](https://github.com/roomle-dev/roomle-ui/commit/eae62407b3116734a17271d3a687cf556326ede6))
|
|
22
|
+
* **core:** upgrade to version 2.63.0-alpha.3 ([45ff1eb](https://github.com/roomle-dev/roomle-ui/commit/45ff1eb7067807299d93df40bd10d8fead846b3b))
|
|
23
|
+
* **core:** upgrade to version 2.63.0-alpha.4 ([fc48712](https://github.com/roomle-dev/roomle-ui/commit/fc48712bd5de99b90197ba7cd91ee07b71f46079))
|
|
24
|
+
* web api - disableChildObjectsOfAllPlanObjects ([b4a006b](https://github.com/roomle-dev/roomle-ui/commit/b4a006bbed50927869342a0c0d7348573d9dd1e9))
|
|
2
25
|
|
|
3
26
|
|
|
4
27
|
### Bug Fixes
|
|
5
28
|
|
|
6
|
-
*
|
|
29
|
+
* add a copy of the generated root modules to the split-off group for attribute transfer ([88e21b2](https://github.com/roomle-dev/roomle-ui/commit/88e21b2090109c8af157030dcc822ea2153863db))
|
|
30
|
+
* check if added or removed plan elements are children of plan object ([75cec14](https://github.com/roomle-dev/roomle-ui/commit/75cec14ee29bb8d3fa7f5038514a5593284d40e1))
|
|
31
|
+
* create a single undo/redo step for "swap" object ([52bb02d](https://github.com/roomle-dev/roomle-ui/commit/52bb02d98ae1da1440345fad6bdfd14a72933522))
|
|
32
|
+
* exception - calculateTotalSum ([7a84c34](https://github.com/roomle-dev/roomle-ui/commit/7a84c349915ea7bcc71470024f901eb0c3deaec4))
|
|
33
|
+
* exception when executing object animation in standalone configurator ([f72c382](https://github.com/roomle-dev/roomle-ui/commit/f72c38233e830890e243da7b4be74c9573d2ba70))
|
|
34
|
+
* failing playwright test case ([700a286](https://github.com/roomle-dev/roomle-ui/commit/700a2867b3a8646ce96a12717cd09c1a0fcbee63))
|
|
35
|
+
* failing sdk test ([d148883](https://github.com/roomle-dev/roomle-ui/commit/d148883d15dae4b80d4c3767ef0c4578366f32ab))
|
|
36
|
+
* glue-layer attribute value assignment ([33803f9](https://github.com/roomle-dev/roomle-ui/commit/33803f96d8580b742990f480f9be3c2475bf0407))
|
|
37
|
+
* glue-layer group modification callbacks ([5fd2854](https://github.com/roomle-dev/roomle-ui/commit/5fd28549d2a35d0cd67ad354d3429da388a44754))
|
|
38
|
+
* HF hi compatibility - load master data ([d5e8f1d](https://github.com/roomle-dev/roomle-ui/commit/d5e8f1d1ac93f949e66460312006f3820c689be0))
|
|
39
|
+
* hi object undo/redo action steps ([1c0457a](https://github.com/roomle-dev/roomle-ui/commit/1c0457ab2e6dedaf6c507e6ee668c3c5c17e3c40))
|
|
40
|
+
* highlighting of plan objects after merging ([0c05222](https://github.com/roomle-dev/roomle-ui/commit/0c05222e5fa2ea83194ea0d0e3acefced6105921))
|
|
41
|
+
* linting issues ([8d6d4fc](https://github.com/roomle-dev/roomle-ui/commit/8d6d4fc8566e1db24131e5e2703fc2fbb39cb1b6))
|
|
42
|
+
* make sure onPosGroupsCompletelyLoaded is sent when loading plan prior to library ([4bd834d](https://github.com/roomle-dev/roomle-ui/commit/4bd834d58b50c68f84a4febd0b94b55b57e8a846))
|
|
43
|
+
* only check for children on configurable plan objects ([2667c18](https://github.com/roomle-dev/roomle-ui/commit/2667c184f96de47a1d8b6633ea60fb4cb804ef0a))
|
|
44
|
+
* set "id" property in the external material's parameter value payload ([2adf311](https://github.com/roomle-dev/roomle-ui/commit/2adf31115aa2ab2c0cce42206f9e2d51b00f359c))
|
|
45
|
+
* transfer attributes when root module of group is swapped ([3ae226a](https://github.com/roomle-dev/roomle-ui/commit/3ae226a65a6fdfb0e4ec803d4864efb3fb26ca88))
|
|
46
|
+
* ts lint ([33b20c5](https://github.com/roomle-dev/roomle-ui/commit/33b20c5a18e4d27cbc0e50c60f41312aec942635))
|
|
47
|
+
* update groups already loaded when PosSaveData is assigned ([6bf3943](https://github.com/roomle-dev/roomle-ui/commit/6bf39439b99b64b7af01c1322055035d9a3444ca))
|
|
48
|
+
* wrong links in README in web-SDK package ([677a3c8](https://github.com/roomle-dev/roomle-ui/commit/677a3c807e2ba1f72175241c2704c798dba0ca6e))
|
package/package.json
CHANGED
|
@@ -2,8 +2,19 @@ import { Example } from '../example';
|
|
|
2
2
|
|
|
3
3
|
export default class HomagIntelligenceExample implements Example {
|
|
4
4
|
private _abortController;
|
|
5
|
+
private _masterDataJson;
|
|
6
|
+
private _groupMap;
|
|
7
|
+
private _uiContainer;
|
|
8
|
+
private _uiMap;
|
|
9
|
+
private _roomDesignerApi;
|
|
5
10
|
setupHtml(parent: HTMLElement): Promise<void>;
|
|
6
11
|
closeExample(): Promise<void>;
|
|
7
12
|
private start;
|
|
8
13
|
runExample(): Promise<void>;
|
|
14
|
+
private _clearUiELements;
|
|
15
|
+
private _createUiElements;
|
|
16
|
+
private _getThumbnailUrl;
|
|
17
|
+
private _addUiElements;
|
|
18
|
+
private _removeUiElements;
|
|
19
|
+
private _addButton;
|
|
9
20
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { default as ConfiguratorContext } from './webgl/configurator-context';
|
|
2
|
-
import { DebugClient, KernelDockPairToLine, KernelDockPairToPoint, EmscriptenString, KernelAnimation, KernelComponent, KernelParameter, KernelParameterGroup, KernelVector3, PlanObject, VariantsList } from '../../typings/kernel';
|
|
2
|
+
import { DebugClient, KernelDockPairToLine, KernelDockPairToPoint, KernelObjectInformation, 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';
|
|
6
6
|
import { PromiseQueue } from './utils/promise-queue';
|
|
7
7
|
import { default as InitData } from './utils/init-data';
|
|
8
|
-
import { ExternalObjectApiConfiguration } from '../../
|
|
8
|
+
import { ExternalObjectApiConfiguration } from '../../homag-intelligence/src/external-object-api';
|
|
9
9
|
import { AnimationLevelType } from '../../configurator-core/src/utils/animation/animation-helper';
|
|
10
10
|
|
|
11
11
|
export interface ConfiguratorKernelCallbackI extends CommonConfiguratorKernelCallbackI {
|
|
@@ -142,6 +142,7 @@ export default class ConfiguratorKernelAccess extends CommonKernelAccess {
|
|
|
142
142
|
createNewSerializedConfiguration(configurationRuntimeId: number): string;
|
|
143
143
|
getCurrentConfigurationHash(planObjectId: number): ConfigurationHash;
|
|
144
144
|
isExternalObjectOrComponent(planObjectOrComponentId: number): boolean;
|
|
145
|
+
getComponentOrModuleInformation(planObjectOrComponentId: number): KernelObjectInformation | null;
|
|
145
146
|
listOfVariants: (_componentId: RapiId, _list: VariantsList) => void;
|
|
146
147
|
listOfVariantsError(dbId: RapiId, error: string): void;
|
|
147
148
|
addDebugClient(debugClient: DebugClient): void;
|
|
@@ -6,12 +6,15 @@ declare class LightCache {
|
|
|
6
6
|
private _scene;
|
|
7
7
|
availableLights: Light[];
|
|
8
8
|
activeLights: Map<string, Light>;
|
|
9
|
+
maximumLights: number;
|
|
9
10
|
private readonly _inactivePosition;
|
|
10
|
-
constructor(scene: Scene);
|
|
11
|
+
constructor(scene: Scene, maxAnisotropy: number);
|
|
12
|
+
allowedToSpawnMoreLights(): boolean;
|
|
11
13
|
addActiveLight(light: Light): void;
|
|
12
14
|
cacheLight(light: Light): void;
|
|
13
15
|
getLightFromCache(type: KernelLightSourceType): Light<import('three').LightShadow<import('three').Camera>>;
|
|
14
16
|
clear(): void;
|
|
17
|
+
private _setMaximumLights;
|
|
15
18
|
}
|
|
16
19
|
export default class CacheHolder {
|
|
17
20
|
private _componentCache;
|
|
@@ -23,6 +26,6 @@ export default class CacheHolder {
|
|
|
23
26
|
get geometryCache(): Map<string, BufferGeometry>;
|
|
24
27
|
get materialCache(): Map<string, Material>;
|
|
25
28
|
clear(): void;
|
|
26
|
-
setupLightCache(scene: Scene): void;
|
|
29
|
+
setupLightCache(scene: Scene, maxAnisotropy: number): void;
|
|
27
30
|
}
|
|
28
31
|
export {};
|
|
@@ -49,6 +49,42 @@ export declare const throttle: <T extends (...args: any[]) => any>(func: T, dela
|
|
|
49
49
|
*/
|
|
50
50
|
export declare const callAgainAfter: <T extends (...args: any[]) => any>(func: T, after?: number) => (...funcArgs: Parameters<T>) => void;
|
|
51
51
|
export declare const debounce: <Params extends any[]>(func: (...args: Params) => any, timeout: number) => (...args: Params) => void;
|
|
52
|
+
/**
|
|
53
|
+
* A generic type for a function.
|
|
54
|
+
*/
|
|
55
|
+
type AnyFunction = (...args: any[]) => any;
|
|
56
|
+
/**
|
|
57
|
+
* Creates a debounced function that delays invoking `func` until after `delay`
|
|
58
|
+
* milliseconds have elapsed since the last time the debounced function was
|
|
59
|
+
* invoked with the same key. The debounced function comes with a `cancel`
|
|
60
|
+
* method to cancel delayed `func` invocations and a `flush` method to
|
|
61
|
+
* immediately invoke them.
|
|
62
|
+
*
|
|
63
|
+
* T The type of the function to debounce.
|
|
64
|
+
* @param {T} func The function to debounce.
|
|
65
|
+
* @param {number} delay The number of milliseconds to delay.
|
|
66
|
+
* @param {(...args: Parameters<T>) => unknown} [keyResolver]
|
|
67
|
+
* Optional. A function to resolve the key from the arguments.
|
|
68
|
+
* Defaults to using the first argument as the key.
|
|
69
|
+
* @returns {((...args: Parameters<T>) => void)} The new debounced function.
|
|
70
|
+
*/
|
|
71
|
+
export declare const debounceByKey: <T extends AnyFunction>(func: T, delay: number, keyResolver?: (...args: Parameters<T>) => unknown) => (this: ThisParameterType<T>, ...args: Parameters<T>) => void;
|
|
72
|
+
/**
|
|
73
|
+
* Creates a debounced function that delays invoking `func` until after `delay`
|
|
74
|
+
* milliseconds have elapsed since the last time the debounced function was
|
|
75
|
+
* invoked with the same key. All calls made with the same key during the
|
|
76
|
+
* delay period will have their returned promises resolved with the result
|
|
77
|
+
* of the single final invocation.
|
|
78
|
+
*
|
|
79
|
+
* T The type of the function to debounce.
|
|
80
|
+
* @param {T} func The function to debounce. This function can be synchronous or asynchronous.
|
|
81
|
+
* @param {number} delay The number of milliseconds to delay.
|
|
82
|
+
* @param {(...args: Parameters<T>) => unknown} [keyResolver]
|
|
83
|
+
* Optional. A function to resolve the key from the arguments.
|
|
84
|
+
* Defaults to using the first argument as the key.
|
|
85
|
+
* @returns {((...args: Parameters<T>) => Promise<ReturnType<T>>)} The new debounced function.
|
|
86
|
+
*/
|
|
87
|
+
export declare const debounceByKeyAsync: <T extends AnyFunction>(func: T, delay: number, keyResolver?: (...args: Parameters<T>) => unknown) => (this: ThisParameterType<T>, ...args: Parameters<T>) => Promise<ReturnType<T>>;
|
|
52
88
|
export declare const wait: (delay: number) => Promise<void>;
|
|
53
89
|
export declare const nextTick: () => Promise<void>;
|
|
54
90
|
export declare const roundWithPrecision: (float: number, precision: number) => number;
|
|
@@ -117,3 +153,4 @@ export declare const getIdQueryParam: (urlString: string) => string | null;
|
|
|
117
153
|
export declare const isCtrlOrCmd: (event: KeyboardEvent) => boolean;
|
|
118
154
|
export declare const ctrlOrCmd: (event: KeyboardEvent, checkIfItIsTheOnlyKey?: boolean) => boolean;
|
|
119
155
|
export declare const runIfNotEmpty: <T extends any[]>(ids: string[], executor: () => Promise<T>) => Promise<T>;
|
|
156
|
+
export {};
|
|
@@ -8,7 +8,7 @@ import { DefaultEnvironmentSceneType } from '../webgl/renderer/environment-scene
|
|
|
8
8
|
import { CustomShadingParameters, SceneShadingType } from '../webgl/renderer/shading-settings';
|
|
9
9
|
import { RapiId } from '../../../typings/rapi-types';
|
|
10
10
|
import { CanvasOffset } from '../common-interfaces';
|
|
11
|
-
import { ExternalObjectApiConfiguration } from '../../../
|
|
11
|
+
import { ExternalObjectApiConfiguration } from '../../../homag-intelligence/src/external-object-api';
|
|
12
12
|
import { HomagIntelligenceInitData } from '../../../homag-intelligence/src/loader';
|
|
13
13
|
|
|
14
14
|
export declare const DEFAULT_ENV_MAP_INTENSITY = 1.5;
|
|
@@ -10,7 +10,6 @@ import { default as MeshGenerator } from '../webgl/mesh-generator';
|
|
|
10
10
|
import { default as PlannerKernelAccess } from '../../../planner-core/src/services/planner-kernel-access';
|
|
11
11
|
import { Box3, Mesh } from 'three';
|
|
12
12
|
import { AnimationLevelType } from '../../../configurator-core/src/utils/animation/animation-helper';
|
|
13
|
-
import { ExternalConfiguration } from '../../../typings/external-objects';
|
|
14
13
|
|
|
15
14
|
export interface ConfiguratorViewModelCallbackI {
|
|
16
15
|
componentUpdated(component: RoomleComponent, kernelComponent: KernelComponent): void;
|
|
@@ -31,6 +30,7 @@ export default class ConfiguratorViewModel implements ConfiguratorKernelCallback
|
|
|
31
30
|
protected _configuratorContext: ConfiguratorContext;
|
|
32
31
|
private _cacheHolder;
|
|
33
32
|
protected _initData: InitData;
|
|
33
|
+
private _configuratorUiCallbacks;
|
|
34
34
|
private _listener;
|
|
35
35
|
private _mergeThreshold;
|
|
36
36
|
private _componentsToMerge;
|
|
@@ -38,7 +38,6 @@ export default class ConfiguratorViewModel implements ConfiguratorKernelCallback
|
|
|
38
38
|
private _geometriesMerged;
|
|
39
39
|
private _subPartObject;
|
|
40
40
|
private _subPartGuard;
|
|
41
|
-
private _externalConfigurations;
|
|
42
41
|
protected _components: Map<number, RoomleComponent>;
|
|
43
42
|
private _previews;
|
|
44
43
|
protected _componentNumberOfPossibleChildren: Map<number, number>;
|
|
@@ -53,8 +52,6 @@ export default class ConfiguratorViewModel implements ConfiguratorKernelCallback
|
|
|
53
52
|
private _applyMeshUVTransform;
|
|
54
53
|
updateAnimationParameters(elementId: number | number[], parameters: KernelParameter[]): void;
|
|
55
54
|
changeAnimationValue(elementId: number, parameterKey: string, value: string, level: number, animationLevel: AnimationLevelType, animate: boolean): void;
|
|
56
|
-
saveExternalConfiguration(externalConfiguration: ExternalConfiguration): void;
|
|
57
|
-
getExternalConfigurationById(id: string): ExternalConfiguration;
|
|
58
55
|
getComponentFromRuntimeId(elementId: number): RoomleComponent | null;
|
|
59
56
|
private _addMeshToSubPart;
|
|
60
57
|
private _addMeshToComponent;
|
|
@@ -12,7 +12,6 @@ export interface RoomleComponent extends RoomleEventedObject3D {
|
|
|
12
12
|
runtimeId: number;
|
|
13
13
|
parentObjectId: number;
|
|
14
14
|
isRootComponent: boolean;
|
|
15
|
-
isChildPlanObject: boolean;
|
|
16
15
|
meshes: RoomleEventedMesh[];
|
|
17
16
|
boundingBox: Box3;
|
|
18
17
|
boundingBoxMesh: RoomleEventedMesh;
|
|
@@ -23,6 +22,7 @@ export interface RoomleComponent extends RoomleEventedObject3D {
|
|
|
23
22
|
geometryChanged: boolean;
|
|
24
23
|
animationValueMap?: AnimationValueMap;
|
|
25
24
|
get childComponents(): RoomleComponent[];
|
|
25
|
+
get parentComponent(): RoomleComponent | null;
|
|
26
26
|
replaceMeshes(meshes: Mesh[]): void;
|
|
27
27
|
addMesh(mesh: Mesh, transform?: Float32Array): void;
|
|
28
28
|
removeMesh(mesh: Mesh): void;
|
package/packages/web-sdk/packages/configurator-core/src/services/configurator-ui-callback.d.ts
CHANGED
|
@@ -299,5 +299,9 @@ export default class ConfiguratorUiCallbacks extends UiCallback implements Confi
|
|
|
299
299
|
* is called when the external configuration should be saved
|
|
300
300
|
*/
|
|
301
301
|
onExternalConfigurationSaved: (configuration: ExternalConfiguration) => void;
|
|
302
|
+
/**
|
|
303
|
+
* Is run when the maximum amount of lights the user's hardware can handle have been spawned into the scene.
|
|
304
|
+
*/
|
|
305
|
+
onMaximumLightsReached: (maximumLights: number) => void;
|
|
302
306
|
constructor(creator: string);
|
|
303
307
|
}
|
package/packages/web-sdk/packages/configurator-core/src/utils/animation/animation-helper.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import { RoomleComponent } from '../../../../common-core/src/webgl/roomle-compon
|
|
|
3
3
|
import { default as PlannerSceneManager } from '../../../../planner-core/src/webgl/planner-scene-manager';
|
|
4
4
|
import { AnimationKeyAndValue } from './animation-value-map';
|
|
5
5
|
import { ComponentAnimationTransformation, KernelParameter } from '../../../../typings/kernel';
|
|
6
|
+
import { default as PlannerKernelAccess } from '../../../../planner-core/src/services/planner-kernel-access';
|
|
6
7
|
|
|
7
8
|
export declare const ANIMATION_LEVEL: {
|
|
8
9
|
readonly COMPONENT: 0;
|
|
@@ -11,8 +12,8 @@ export declare const ANIMATION_LEVEL: {
|
|
|
11
12
|
};
|
|
12
13
|
export type AnimationLevelType = (typeof ANIMATION_LEVEL)[keyof typeof ANIMATION_LEVEL];
|
|
13
14
|
export declare const updateComponentAnimationParameters: (components: RoomleComponent[], parameters: KernelParameter[]) => void;
|
|
14
|
-
export declare const getObjectAnimationValue: (component: RoomleComponent, animationName: string, onlyChildObject: boolean) => AnimationKeyAndValue | null;
|
|
15
|
-
export declare const changeObjectAnimationValueAndAnimate: (component: RoomleComponent, parameterKey: string, value: string, level: number, animationLevel: AnimationLevelType, animate: boolean, invalidateRenderCallback: () => void) => void;
|
|
15
|
+
export declare const getObjectAnimationValue: (component: RoomleComponent, animationName: string, onlyChildObject: boolean, plannerKernelAccess?: PlannerKernelAccess) => AnimationKeyAndValue | null;
|
|
16
|
+
export declare const changeObjectAnimationValueAndAnimate: (component: RoomleComponent, parameterKey: string, value: string, level: number, animationLevel: AnimationLevelType, animate: boolean, invalidateRenderCallback: () => void, plannerKernelAccess?: PlannerKernelAccess) => void;
|
|
16
17
|
export declare const hasObjectOpenCloseAnimation: (sceneManager: PlannerSceneManager, planObject: ConfiguratorPlanObjectViewModel) => boolean;
|
|
17
18
|
export declare const getObjectOpenCloseAnimationValue: (sceneManager: PlannerSceneManager, planObject: ConfiguratorPlanObjectViewModel) => AnimationKeyAndValue | null;
|
|
18
19
|
export declare const updateChildObjectAnimations: (component: RoomleComponent, childAnimationTransformations?: ComponentAnimationTransformation[]) => void;
|
|
@@ -2,33 +2,39 @@ import { Object3D, Scene, Box3, Vector3 } from 'three';
|
|
|
2
2
|
import { KernelCube } from '../../../typings/kernel';
|
|
3
3
|
|
|
4
4
|
export declare const DIMENSIONING_GEOMETRY = "dimensioning";
|
|
5
|
+
/**
|
|
6
|
+
* @interface DimensionLabelUIData
|
|
7
|
+
* Defines the structure for a single dimension label's data that will be sent to the UI.
|
|
8
|
+
*/
|
|
9
|
+
export interface DimensionLabelUIData {
|
|
10
|
+
id: 'width' | 'height' | 'depth';
|
|
11
|
+
text: string;
|
|
12
|
+
worldPosition: Vector3;
|
|
13
|
+
visible: boolean;
|
|
14
|
+
}
|
|
5
15
|
export default class DimensioningHelper {
|
|
6
16
|
_creator_: string;
|
|
7
17
|
private _unitFormatter;
|
|
8
|
-
private _uiScene;
|
|
9
18
|
private _object;
|
|
10
19
|
private _objectRotation;
|
|
11
20
|
private _cameraPosition;
|
|
12
21
|
private _font;
|
|
13
|
-
private
|
|
22
|
+
private _onVisibilityChange;
|
|
14
23
|
private _topDimensions;
|
|
15
24
|
private _initialized;
|
|
16
25
|
private _origin;
|
|
17
26
|
private _dimensions;
|
|
18
27
|
private _lineMaterial;
|
|
19
|
-
private _planeMaterial;
|
|
20
28
|
private _widthLine;
|
|
21
29
|
private _heightLine;
|
|
22
30
|
private _depthLine;
|
|
23
|
-
private _widthText;
|
|
24
|
-
private _heightText;
|
|
25
|
-
private _depthText;
|
|
26
31
|
private _enabled;
|
|
27
32
|
private _dimensionsVisible;
|
|
28
33
|
private _dimensionLineGroup;
|
|
29
|
-
private
|
|
34
|
+
private _onLabelsUpdate;
|
|
30
35
|
constructor(creator: string);
|
|
31
36
|
private _loaded;
|
|
37
|
+
onLabelsUpdate(callback: (labels: DimensionLabelUIData[]) => void): void;
|
|
32
38
|
private _performUpdate;
|
|
33
39
|
private _updateWidth;
|
|
34
40
|
private _updateHeight;
|
|
@@ -37,8 +43,6 @@ export default class DimensioningHelper {
|
|
|
37
43
|
update(force?: boolean): void;
|
|
38
44
|
addToObject(object: Object3D): void;
|
|
39
45
|
removeFromObject(object: Object3D): void;
|
|
40
|
-
addToUiScene(uiScene: Scene): void;
|
|
41
|
-
removeFromUiScene(uiScene: Scene): void;
|
|
42
46
|
private _isCameraInsideOrTooClose;
|
|
43
47
|
private _getWidthEdge;
|
|
44
48
|
private _getDepthEdge;
|
|
@@ -56,7 +60,6 @@ export default class DimensioningHelper {
|
|
|
56
60
|
moveCameraEnd(position: Vector3): void;
|
|
57
61
|
clearScene(_scene: Scene): void;
|
|
58
62
|
setObject(object: Object3D, rotation?: number): void;
|
|
59
|
-
setUiScene(uiScene: Scene): void;
|
|
60
63
|
isInitialized(): Promise<void>;
|
|
61
64
|
areDimensionsEnabled(): boolean;
|
|
62
65
|
private _getRotation;
|
package/packages/web-sdk/packages/configurator-core/src/webgl/configurator-scene-event-handler.d.ts
CHANGED
|
@@ -46,6 +46,7 @@ export default class ConfiguratorSceneEventHandler extends SceneEventHandler<Sce
|
|
|
46
46
|
_creator_: string;
|
|
47
47
|
private _selectionHandler;
|
|
48
48
|
private _configuratorUiCallbacks;
|
|
49
|
+
private _plannerKernelAccess;
|
|
49
50
|
private _cameraMoving;
|
|
50
51
|
private _hoveredComponent;
|
|
51
52
|
private _hoveredPreview;
|
|
@@ -75,6 +76,7 @@ export default class ConfiguratorSceneEventHandler extends SceneEventHandler<Sce
|
|
|
75
76
|
private _updatePositionForPreviewLine;
|
|
76
77
|
private _hoverOffPreviewLine;
|
|
77
78
|
private _setDragComponentShadow;
|
|
79
|
+
private _isDraggingPossible;
|
|
78
80
|
private _dragStart;
|
|
79
81
|
private _drag;
|
|
80
82
|
private _dragEnd;
|
|
@@ -91,4 +93,6 @@ export default class ConfiguratorSceneEventHandler extends SceneEventHandler<Sce
|
|
|
91
93
|
setCameraMoving(cameraMoving: boolean): void;
|
|
92
94
|
setCamera(camera: Camera): void;
|
|
93
95
|
setObject(object: Object3D): void;
|
|
96
|
+
private _findComponentToBeSelected;
|
|
97
|
+
private isSiblingSelected;
|
|
94
98
|
}
|
package/packages/web-sdk/packages/configurator-core/src/webgl/configurator-scene-manager.d.ts
CHANGED
|
@@ -21,7 +21,6 @@ import { default as CameraBehaviour } from '../../../common-core/src/cameracontr
|
|
|
21
21
|
import { default as CameraBehaviour3d } from '../../../common-core/src/cameracontrol/camera-behaviour-3d';
|
|
22
22
|
import { default as GlobalInitData } from '../../../common-core/src/utils/global-init-data';
|
|
23
23
|
import { CancelSelectionReasons } from '../../../typings/planner';
|
|
24
|
-
import { ExternalConfiguration } from '../../../typings/external-objects';
|
|
25
24
|
import { default as UnitFormatter } from '../services/unit-formatter';
|
|
26
25
|
import { AnimationLevelType } from '../utils/animation/animation-helper';
|
|
27
26
|
|
|
@@ -53,8 +52,6 @@ export default class ConfiguratorSceneManager extends SceneManager implements Co
|
|
|
53
52
|
enableEvents(): void;
|
|
54
53
|
enableConfiguratorEvents(): void;
|
|
55
54
|
disableConfiguratorEvents(): void;
|
|
56
|
-
saveExternalConfiguration(externalConfiguration: ExternalConfiguration): void;
|
|
57
|
-
getExternalConfigurationById(id: string): ExternalConfiguration;
|
|
58
55
|
protected _getViewModel(): ConfiguratorViewModel;
|
|
59
56
|
protected _getKernelAccess(): PlannerKernelAccess;
|
|
60
57
|
private _showDockings;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { RoomDesignerRequests } from './
|
|
1
|
+
import { RoomDesignerRequests } from './glue-logic';
|
|
2
2
|
import { MasterData, PosGroup } from './model/oc-scripts-domain.model';
|
|
3
3
|
import { RoomlePlannerType } from '../../typings/external-objects';
|
|
4
|
+
import { LoadExternalObjectOptions } from './external-object-api';
|
|
4
5
|
|
|
5
6
|
export interface ExternalObjectModuleIdMap {
|
|
6
7
|
originalModuleId: string;
|
|
@@ -10,7 +11,7 @@ export declare class RoomDesignerApi implements RoomDesignerRequests {
|
|
|
10
11
|
private _roomlePlanner;
|
|
11
12
|
constructor(roomlePlanner: RoomlePlannerType);
|
|
12
13
|
loadMasterData(masterData: MasterData): void;
|
|
13
|
-
loadPosGroups(posDataJson: PosGroup | PosGroup[],
|
|
14
|
+
loadPosGroups(posDataJson: PosGroup | PosGroup[], options: LoadExternalObjectOptions): Promise<void>;
|
|
14
15
|
selectGroup(groupId: string): Promise<void>;
|
|
15
16
|
selectRoot(rootModuleId: string): Promise<void>;
|
|
16
17
|
selectModule(rootModuleId: string, subModuleId: string): Promise<void>;
|
|
@@ -18,7 +19,7 @@ export declare class RoomDesignerApi implements RoomDesignerRequests {
|
|
|
18
19
|
deleteGroup(groupId: string): void;
|
|
19
20
|
deleteRootModule(rootModuleId: string): void;
|
|
20
21
|
getPosDataOfAllGroups(): Promise<PosGroup[]>;
|
|
21
|
-
getRoomInformation(): Promise<import('
|
|
22
|
+
getRoomInformation(): Promise<import('./external-object-api').ExternalRoomInformation>;
|
|
22
23
|
generatePlanSnapshot(): Promise<{
|
|
23
24
|
objectId: string;
|
|
24
25
|
planId: string;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { HiCallbacks } from '../../../../embedding-lib/src/embedding-lib';
|
|
2
|
-
import { GlueLogic, LibraryData, RoomDesignerRequests } from './
|
|
2
|
+
import { GlueLogic, LibraryData, RoomDesignerRequests } from './glue-logic';
|
|
3
3
|
import { ExternalObjectGroup } from 'roomle-core-hsc/src/embind/plannerCoreInterface';
|
|
4
4
|
import { ExternalModuleInformation } from '../../typings/kernel';
|
|
5
5
|
import { CheckResult, PosGroup, PosSaveData } from './model/oc-scripts-domain.model';
|
|
6
|
-
import { ExternalObjectModuleIdMap } from './api';
|
|
7
6
|
import { HiObjectSelection } from './hi-object-selection';
|
|
7
|
+
import { LoadExternalObjectOptions } from './external-object-api';
|
|
8
8
|
|
|
9
9
|
export declare class GlueLayerRequestDebugLogging implements GlueLogic {
|
|
10
10
|
private _glueLogic;
|
|
@@ -45,7 +45,7 @@ export declare class GlueLayerResponseDebugLogging implements RoomDesignerReques
|
|
|
45
45
|
constructor(roomDesignerRequests: RoomDesignerRequests, hiCallbacks: HiCallbacks);
|
|
46
46
|
private _logResponse;
|
|
47
47
|
loadMasterData(masterData: any): void;
|
|
48
|
-
loadPosGroups(posDataJson: PosGroup | PosGroup[],
|
|
48
|
+
loadPosGroups(posDataJson: PosGroup | PosGroup[], options: LoadExternalObjectOptions): Promise<void>;
|
|
49
49
|
selectGroup(groupId: string): Promise<void>;
|
|
50
50
|
selectRoot(rootModuleId: string): Promise<void>;
|
|
51
51
|
selectModule(rootModuleId: string, subModuleId: string): Promise<void>;
|
package/packages/web-sdk/packages/{planner-core → homag-intelligence}/src/external-object-api.d.ts
RENAMED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Position3 } from '../../common-core/src/common-interfaces';
|
|
2
|
+
import { CheckResult, PosContour } from './model/oc-scripts-domain.model';
|
|
2
3
|
|
|
3
4
|
export interface ExternalObjectUiSliderRange {
|
|
4
5
|
min: number;
|
|
@@ -44,7 +45,22 @@ export declare const HI_CONTEXT_ACTION: {
|
|
|
44
45
|
readonly ROOM: "room";
|
|
45
46
|
readonly ISOLATION: "isolation";
|
|
46
47
|
};
|
|
47
|
-
export type HiContextAction = typeof HI_CONTEXT_ACTION[keyof typeof HI_CONTEXT_ACTION];
|
|
48
|
+
export type HiContextAction = (typeof HI_CONTEXT_ACTION)[keyof typeof HI_CONTEXT_ACTION];
|
|
49
|
+
export type ExternalGroupData = object | object[] | string | string[];
|
|
50
|
+
export interface LoadExternalObjectOptions {
|
|
51
|
+
dragIn?: boolean;
|
|
52
|
+
newAction?: boolean;
|
|
53
|
+
findFreeSpaceInPlan?: boolean;
|
|
54
|
+
correctArrangement?: boolean;
|
|
55
|
+
moduleIdMap?: Array<{
|
|
56
|
+
originalModuleId: string;
|
|
57
|
+
newModuleId: string;
|
|
58
|
+
}>;
|
|
59
|
+
respondWithPositionInPlan?: boolean;
|
|
60
|
+
mergedGroups?: string[];
|
|
61
|
+
position?: Position3;
|
|
62
|
+
rotation?: number;
|
|
63
|
+
}
|
|
48
64
|
export interface ExternalObjectAPI {
|
|
49
65
|
/**
|
|
50
66
|
* With "configureExternalObjectApi" the default representation of the objects and UI and
|
|
@@ -66,20 +82,20 @@ export interface ExternalObjectAPI {
|
|
|
66
82
|
*/
|
|
67
83
|
loadExternalObjectMasterData(masterDataJson: string | object): void;
|
|
68
84
|
/**
|
|
69
|
-
* "
|
|
85
|
+
* "loadExternalObjectGroups" loads groups of modules and places them in the plan.
|
|
70
86
|
* If the group has already been loaded, it is completely replaced by the new group.
|
|
71
87
|
* This function therefore has 2 use cases:
|
|
72
88
|
* 1. Load a new group of modules
|
|
73
89
|
* 2. Update or modify an existing group of modules
|
|
74
90
|
* The initial location of the group and the IDs of the modules are defined in the group JSON.
|
|
75
91
|
* @param groupJson The group JSON as string or object.
|
|
76
|
-
* @param
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
*
|
|
92
|
+
* @param options Options for loading the external object groups.
|
|
93
|
+
*/
|
|
94
|
+
loadExternalObjectGroups(groupJson: ExternalGroupData, options: LoadExternalObjectOptions): Promise<void>;
|
|
95
|
+
/**
|
|
96
|
+
* Deprecated API that can be deleted once the new API is fully integrated into the OC.
|
|
81
97
|
*/
|
|
82
|
-
loadExternalObjectGroup(groupJson: object | string | string[], findFreeSpaceInPlan: boolean, verifyArrangement?: boolean, mergedGroups?: string[], respondWithPositionInPlan?: boolean, moduleIdMap?: ExternalObjectModuleIdMap[]): Promise<void>;
|
|
98
|
+
loadExternalObjectGroup(groupJson: object | string | string[], findFreeSpaceInPlan: boolean, verifyArrangement?: boolean, mergedGroups?: string[], respondWithPositionInPlan?: boolean, moduleIdMap?: ExternalObjectModuleIdMap[], newAction?: boolean): Promise<void>;
|
|
83
99
|
/**
|
|
84
100
|
* "updateExternalObjectGroupAttribute" modifies an attribute of a root module or sub module.
|
|
85
101
|
* The attribute with the ID "attributeId" of the sub module with the ID "moduleId"
|
|
@@ -146,7 +162,7 @@ export interface ExternalObjectAPI {
|
|
|
146
162
|
* @param groupOrRootModuleId The ID of the group or root module that should be selected.
|
|
147
163
|
* @param subModuleId The optional ID of the sub module that should be selected.
|
|
148
164
|
* @param contextAction The context action defines whether the selection is done in room context or isolation context or no context change is done.
|
|
149
|
-
|
|
165
|
+
*/
|
|
150
166
|
selectExternalObject(groupOrRootModuleId: string, subModuleId: string | null, contextAction: HiContextAction): Promise<void>;
|
|
151
167
|
/**
|
|
152
168
|
* "openOrCloseGeometryOfExternalObject" switches the geometry of the modules between closed and open representation.
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { HiCallbacks } from '../../../../embedding-lib/src/embedding-lib';
|
|
2
2
|
import { ExternalModuleInformation, ExternalObjectGroup } from './callbacks';
|
|
3
3
|
import { MasterData, PosModuleAttribute, PosGroup, PosModuleData, CheckResult, PosSaveData } from './model/oc-scripts-domain.model';
|
|
4
|
-
import { ExternalObjectModuleIdMap } from './api';
|
|
5
4
|
import { HiObjectSelection } from './hi-object-selection';
|
|
5
|
+
import { LoadExternalObjectOptions } from './external-object-api';
|
|
6
6
|
|
|
7
7
|
export interface LibraryData {
|
|
8
8
|
libraryId: string;
|
|
@@ -15,7 +15,7 @@ export interface LibraryData {
|
|
|
15
15
|
}
|
|
16
16
|
export interface RoomDesignerRequests {
|
|
17
17
|
loadMasterData(masterData: MasterData): void;
|
|
18
|
-
loadPosGroups(posDataJson: PosGroup | PosGroup[],
|
|
18
|
+
loadPosGroups(posDataJson: PosGroup | PosGroup[], options: LoadExternalObjectOptions): Promise<void>;
|
|
19
19
|
selectGroup(groupId: string): Promise<void>;
|
|
20
20
|
selectRoot(rootModuleId: string): Promise<void>;
|
|
21
21
|
selectModule(rootModuleId: string, subModuleId: string): Promise<void>;
|
|
@@ -71,7 +71,7 @@ interface GroupItem {
|
|
|
71
71
|
posDataJson: PosGroup;
|
|
72
72
|
opened: boolean;
|
|
73
73
|
}
|
|
74
|
-
export declare class
|
|
74
|
+
export declare class GlueLogicImplementation implements GlueLogic {
|
|
75
75
|
private _designerRequests;
|
|
76
76
|
private _libraryData;
|
|
77
77
|
private _posDataForLoading;
|
|
@@ -85,6 +85,7 @@ export declare class Emulator implements GlueLogic {
|
|
|
85
85
|
constructor(designerRequests: RoomDesignerRequests, hiCallbacks?: HiCallbacks | null);
|
|
86
86
|
get hiCallbacks(): HiCallbacks | null;
|
|
87
87
|
get hiObjectSelection(): HiObjectSelection;
|
|
88
|
+
private _getGroup;
|
|
88
89
|
getLibraryData(data: string | PosGroup): LibraryData | null;
|
|
89
90
|
isLibraryLoaded(libraryId: string): boolean;
|
|
90
91
|
addLibrary(libraryData: LibraryData): void;
|
|
@@ -99,7 +100,7 @@ export declare class Emulator implements GlueLogic {
|
|
|
99
100
|
openCloseGroup(groupId: string): Promise<void>;
|
|
100
101
|
deleteRootModule(remainingGroup: ExternalObjectGroup, rootModuleIdToDelete: string, splitOffGroups: ExternalObjectGroup[]): void;
|
|
101
102
|
duplicateGroup(_sourceGroupId: string, duplicatedGroup: ExternalObjectGroup): Promise<void>;
|
|
102
|
-
mergeGroups(targetGroup: ExternalObjectGroup, idsOfGroupsMerged: string | string[], idOfTargetRootModule: string): void
|
|
103
|
+
mergeGroups(targetGroup: ExternalObjectGroup, idsOfGroupsMerged: string | string[], idOfTargetRootModule: string): Promise<void>;
|
|
103
104
|
private _applyImplicitRelevantAttributes;
|
|
104
105
|
splitRootModuleFromGroup(splitGroup: ExternalObjectGroup, newGroupedRootModules: ExternalObjectGroup[]): void;
|
|
105
106
|
arrangeRootModulesOfGroup(changedGroup: ExternalObjectGroup): void;
|
|
@@ -132,7 +133,7 @@ export declare class Emulator implements GlueLogic {
|
|
|
132
133
|
getVerifiedAttributeOptions(moduleId: string, attributeIds?: string | string[]): Promise<Record<string, CheckResult> | undefined>;
|
|
133
134
|
updateAdditionalInfo(rootModuleId: string, additionalInfo: string): void;
|
|
134
135
|
swapRootModule(groupId: string, rootModuleId: string, articleId: string): void;
|
|
135
|
-
_modifyAttributeOfModules(emulatorGroupItem: GroupItem, moduleIds: string[] | string,
|
|
136
|
+
_modifyAttributeOfModules(emulatorGroupItem: GroupItem, moduleIds: string[] | string, attributeId: string, value: string | boolean): PosGroup;
|
|
136
137
|
private _setAttribute;
|
|
137
138
|
savePlanSnapshot(): Promise<PlanSnapshot>;
|
|
138
139
|
private _findRootModuleInAllGroups;
|
|
@@ -12,13 +12,13 @@ export declare const HI_SELECTION_TYPE: {
|
|
|
12
12
|
readonly ROOT_MODULE: "rootModule";
|
|
13
13
|
readonly SUB_MODULE: "subModule";
|
|
14
14
|
};
|
|
15
|
-
export type HiSelectionType = typeof HI_SELECTION_TYPE[keyof typeof HI_SELECTION_TYPE];
|
|
15
|
+
export type HiSelectionType = (typeof HI_SELECTION_TYPE)[keyof typeof HI_SELECTION_TYPE];
|
|
16
16
|
export declare const HI_SELECTION_MODE: {
|
|
17
17
|
readonly MULTI_SELECT: "multiselect";
|
|
18
18
|
readonly TC_CONFIG: "tc-config";
|
|
19
19
|
readonly RML_OBJECT: "rml-object";
|
|
20
20
|
};
|
|
21
|
-
export type HiSelectionMode = typeof HI_SELECTION_MODE[keyof typeof HI_SELECTION_MODE];
|
|
21
|
+
export type HiSelectionMode = (typeof HI_SELECTION_MODE)[keyof typeof HI_SELECTION_MODE];
|
|
22
22
|
export declare class HiObjectSelection {
|
|
23
23
|
private _callbacks;
|
|
24
24
|
private _contextType;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { RmlPlugin } from './rml-plugin';
|
|
2
|
-
import { GlueLogic } from './
|
|
2
|
+
import { GlueLogic } from './glue-logic';
|
|
3
3
|
import { HomagIntelligenceInitData } from './loader';
|
|
4
4
|
import { MasterData } from './model/oc-scripts-domain.model';
|
|
5
5
|
import { default as RoomlePlanner } from '../../planner-core/src/roomle-planner';
|
|
@@ -14,7 +14,7 @@ import { MeasurementLineDimension, MeasurementLineDimensionTransferable } from '
|
|
|
14
14
|
import { ConstructionMeasurementsTransferable } from './utils/measurements';
|
|
15
15
|
import { FloorAreaDataTransferable } from './view-model/floor-plan-element-view-model';
|
|
16
16
|
import { BASE_CONTEXT } from '../../common-core/src/main';
|
|
17
|
-
import { ExternalObjectGroup, ExternalObjectUiCallback } from '
|
|
17
|
+
import { ExternalObjectGroup, ExternalObjectUiCallback } from '../../homag-intelligence/src/external-object-api-callbacks';
|
|
18
18
|
|
|
19
19
|
export interface SelectionPayload {
|
|
20
20
|
item?: RapiItem;
|
|
@@ -21,7 +21,7 @@ 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 { ExternalObjectAPI, ExternalObjectApiConfiguration, ExternalObjectModuleIdMap, ExternalRoomInformation, HiContextAction } from '
|
|
24
|
+
import { 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';
|
|
@@ -78,17 +78,10 @@ export interface InsertItemResult {
|
|
|
78
78
|
runtimeId: RuntimeId;
|
|
79
79
|
originalIndex: number;
|
|
80
80
|
}
|
|
81
|
-
export interface
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
moduleIdMap?: Array<{
|
|
86
|
-
originalModuleId: string;
|
|
87
|
-
newModuleId: string;
|
|
88
|
-
}>;
|
|
89
|
-
respondWithPositionInPlan?: boolean;
|
|
90
|
-
position?: Position3;
|
|
91
|
-
rotation?: number;
|
|
81
|
+
export interface LightCacheInfo {
|
|
82
|
+
activeLights: number;
|
|
83
|
+
availableLights: number;
|
|
84
|
+
maximumLights: number;
|
|
92
85
|
}
|
|
93
86
|
export default class RoomlePlanner<P extends readonly PluginName[] = readonly []> implements KernelAccessCallbackI, RoomlePlannerCallback, GlobalAPI, Context, KernelUtilityForUi, ExternalEmbeddable<RoomlePlannerUiCallback>, RubensAPI, ExternalObjectAPI {
|
|
94
87
|
_creator_: string;
|
|
@@ -167,7 +160,8 @@ export default class RoomlePlanner<P extends readonly PluginName[] = readonly []
|
|
|
167
160
|
showBenchmarks(): void;
|
|
168
161
|
getConfiguratorApi(): RoomleConfigurator<P>;
|
|
169
162
|
startViewing(): void;
|
|
170
|
-
startConfiguring(): void
|
|
163
|
+
startConfiguring(): Promise<void>;
|
|
164
|
+
private _getObjectComponentForStartConfiguring;
|
|
171
165
|
/**
|
|
172
166
|
* select an object in the scene based on its runtime id
|
|
173
167
|
* @param runtimeId
|
|
@@ -234,6 +228,7 @@ export default class RoomlePlanner<P extends readonly PluginName[] = readonly []
|
|
|
234
228
|
* @param rotation in radians
|
|
235
229
|
*/
|
|
236
230
|
insertObject(id: RapiId | ExtObjId, position?: Position3, rotation?: number): Promise<RuntimeId>;
|
|
231
|
+
_insertObject(id: RapiId | ExtObjId, newUndoRedoStep: boolean, position?: Position3, rotation?: number): Promise<RuntimeId>;
|
|
237
232
|
insertItemList(ids: Array<RapiId | ExtObjId>): Promise<RuntimeId[]>;
|
|
238
233
|
/**
|
|
239
234
|
* Inserts all of the items in the array into current plan
|
|
@@ -312,15 +307,15 @@ export default class RoomlePlanner<P extends readonly PluginName[] = readonly []
|
|
|
312
307
|
/**
|
|
313
308
|
* returns true if interaction with the child components of a configuration object is enabled, and flashes otherwise
|
|
314
309
|
*/
|
|
315
|
-
|
|
310
|
+
isEnabledChildObjectMode(planElementViewModel: PlanElementViewModel): boolean;
|
|
316
311
|
/**
|
|
317
312
|
* enable interaction with child components of configurable objects in the plan
|
|
318
313
|
*/
|
|
319
|
-
|
|
314
|
+
enableChildObjects(planElementViewModel: PlanElementViewModel): KernelObject;
|
|
320
315
|
/**
|
|
321
316
|
* disable interaction with child components of configurable objects in the plan
|
|
322
317
|
*/
|
|
323
|
-
|
|
318
|
+
disableChildObjects(planElementViewModel: PlanElementViewModel): KernelObject;
|
|
324
319
|
/**
|
|
325
320
|
* get the Partlist of certain runtimeID
|
|
326
321
|
* can be used if partlist of a selected Item is needed
|
|
@@ -437,7 +432,11 @@ export default class RoomlePlanner<P extends readonly PluginName[] = readonly []
|
|
|
437
432
|
configureExternalObjectApi(configurationJson: string | ExternalObjectApiConfiguration): Promise<void>;
|
|
438
433
|
loadExternalObjectLibrary(libraryId: string): Promise<void>;
|
|
439
434
|
loadExternalObjectMasterData(masterDataJson: string | object): void;
|
|
440
|
-
|
|
435
|
+
/**
|
|
436
|
+
* Deprecated API that can be deleted once the new API is fully integrated into the OC.
|
|
437
|
+
*/
|
|
438
|
+
loadExternalObjectGroup(groupData: ExternalGroupData, findFreeSpaceInPlan: boolean, correctArrangement?: boolean, mergedGroups?: string[], respondWithPositionInPlan?: boolean, moduleIdMap?: ExternalObjectModuleIdMap[], newAction?: boolean): Promise<void>;
|
|
439
|
+
loadExternalObjectGroups(groupData: ExternalGroupData, options?: LoadExternalObjectOptions): Promise<void>;
|
|
441
440
|
private _loadExternalObjectGroup;
|
|
442
441
|
private _loadExternalObjectGroupInConfigurator;
|
|
443
442
|
private _loadExternalObjectGroupInPlanner;
|
|
@@ -473,12 +472,8 @@ export default class RoomlePlanner<P extends readonly PluginName[] = readonly []
|
|
|
473
472
|
*/
|
|
474
473
|
selectExternalObjectSubModule(rootModuleId: string, subModuleId: string): Promise<void>;
|
|
475
474
|
selectExternalObject(groupOrRootModuleId: string, subModuleId: string | null, contextAction: HiContextAction): Promise<void>;
|
|
476
|
-
private _switchExternalObjectMode;
|
|
477
475
|
openOrCloseGeometryOfExternalObject(groupIdOrRootModuleId: string, _subModuleId: string | null, open: boolean, animate: boolean): void;
|
|
478
476
|
_selectExternalObjectGroup(groupId: string, switchToPlanner: boolean): Promise<void>;
|
|
479
|
-
_selectExternalObjectModule(rootModuleId: string, subModuleId: string | null, selectPlanObject: boolean, switchToConfigurator: boolean, selectComponent: boolean, highlightSelection: boolean): Promise<void>;
|
|
480
|
-
private _selectPlanObject;
|
|
481
|
-
private _getSelectedPlanObjectComponent;
|
|
482
477
|
getExternalObjectGroups(): Promise<object[]>;
|
|
483
478
|
getExternalRoomInformation(): Promise<ExternalRoomInformation>;
|
|
484
479
|
/**
|
|
@@ -558,6 +553,10 @@ export default class RoomlePlanner<P extends readonly PluginName[] = readonly []
|
|
|
558
553
|
* @param ids array of light IDs, see type interface RoomleLightSource._lightSourceId
|
|
559
554
|
*/
|
|
560
555
|
setElementLightsOnOff(planElementViewModel: PlanElementViewModel, state: boolean): void;
|
|
556
|
+
/**
|
|
557
|
+
* Returns an object containing the amount of active, available and maximum lights for the scene.
|
|
558
|
+
*/
|
|
559
|
+
getLightCache(): LightCacheInfo;
|
|
561
560
|
getPlanObjectForRuntimeId(runtimeId: number): Promise<PlanElementViewModel | null>;
|
|
562
561
|
rotateByRuntimeId(runtimeId: number, rotateBy: number): Promise<void>;
|
|
563
562
|
deleteByRuntimeId(runtimeId: number): Promise<void>;
|
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
import { KernelAnimation, KernelComponent, KernelEnum, RuntimeId, PlanObject as ConfiguratorPlanObject } from '../../../typings/kernel';
|
|
1
|
+
import { KernelAnimation, KernelPlanObjectComponent, KernelComponent, KernelEnum, RuntimeId, PlanObject as ConfiguratorPlanObject } from '../../../typings/kernel';
|
|
2
2
|
import { default as PlanObjectViewModel } from '../../../common-core/src/view-model/plan-object-view-model';
|
|
3
|
-
import { KernelObject, Plan, PlanElement, PlanInteractionHandler, PlanModelViewHelper, PlanObject } from '../../../typings/planner';
|
|
3
|
+
import { KernelObject, Plan, PlanElement, PlanInteractionHandler, PlanModelViewHelper, PlanObject, CORE_TYPE_OF_CORE_ID } from '../../../typings/planner';
|
|
4
4
|
import { RapiConfiguration, RapiItem, RapiPlanSnapshotPostData } from '../../../typings/rapi-types';
|
|
5
5
|
import { default as RoomlePlannerUiCallback } from '../roomle-planner-ui-callback';
|
|
6
6
|
import { default as PlanElementViewModel } from '../../../common-core/src/view-model/plan-element-view-model';
|
|
7
7
|
import { Position3 } from '../../../common-core/src/common-interfaces';
|
|
8
8
|
import { default as ConfiguratorKernelAccess } from '../../../common-core/src/configurator-kernel-access';
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
9
|
+
import { RoomleComponent } from '../../../common-core/src/webgl/roomle-component-factory';
|
|
10
|
+
import { ExternalObjectApiConfiguration } from '../../../homag-intelligence/src/external-object-api';
|
|
11
|
+
import { ExternalObjectGroup } from '../../../homag-intelligence/src/external-object-api-callbacks';
|
|
11
12
|
import { AnimationLevelType } from '../../../configurator-core/src/utils/animation/animation-helper';
|
|
13
|
+
import { Enumify } from '../../../common-core/src/types';
|
|
12
14
|
|
|
13
15
|
export interface PlannerKernelCallbackI {
|
|
14
16
|
handlerSwitchedPlans(fromPlan: Plan, toPlan: Plan): void;
|
|
@@ -48,7 +50,7 @@ export default class PlannerKernelAccess extends ConfiguratorKernelAccess {
|
|
|
48
50
|
get planInteractionHandler(): PlanInteractionHandler;
|
|
49
51
|
get planModelViewHelper(): PlanModelViewHelper;
|
|
50
52
|
catalogItemLoaded(catalogItem: RapiItem): void;
|
|
51
|
-
insertItems(itemList: Array<RapiItem | RapiConfiguration
|
|
53
|
+
insertItems(itemList: Array<RapiItem | RapiConfiguration>, newUndoRedoStep?: boolean): Promise<RuntimeId[]>;
|
|
52
54
|
duplicateItems(planObjects: PlanObject[]): PlanObject[];
|
|
53
55
|
private _rapiItemToKernelItem;
|
|
54
56
|
planObjectDeleted(): void;
|
|
@@ -90,7 +92,7 @@ export default class PlannerKernelAccess extends ConfiguratorKernelAccess {
|
|
|
90
92
|
addPlanMesh(plan: Plan, material: any, vertices: Float32Array, indices: Int32Array, uvCoords: Float32Array, normals: Float32Array, type: KernelEnum): void;
|
|
91
93
|
endPlanConstruction(plan: Plan): void;
|
|
92
94
|
createPlanFromObject(rapiElement: RapiItem | RapiConfiguration, position?: Position3, rotation?: number): Plan;
|
|
93
|
-
addPlanObjectFromItem(rapiElement: RapiItem | RapiConfiguration, position?: Position3, rotation?: number): Promise<RuntimeId>;
|
|
95
|
+
addPlanObjectFromItem(rapiElement: RapiItem | RapiConfiguration, newUndoRedoStep: boolean, position?: Position3, rotation?: number): Promise<RuntimeId>;
|
|
94
96
|
coupleReferences(jsObject: any, coreReference: KernelObject): void;
|
|
95
97
|
private _decoupleReferences;
|
|
96
98
|
isConstructionPlanElement(planElement: PlanElement): boolean;
|
|
@@ -115,4 +117,6 @@ export default class PlannerKernelAccess extends ConfiguratorKernelAccess {
|
|
|
115
117
|
configureExternalObjectApi(externalObjectSettings?: ExternalObjectApiConfiguration): Promise<void>;
|
|
116
118
|
setComponentParameter(componentId: number, interactionKey: string, newValue: any): void;
|
|
117
119
|
protected _getAnimationLevelForObject(runtimeId: number, _animation: KernelAnimation): AnimationLevelType;
|
|
120
|
+
getObjectComponent(runtimeId: number, typeOfId: Enumify<typeof CORE_TYPE_OF_CORE_ID>): KernelPlanObjectComponent | null;
|
|
121
|
+
isChildObjectRootComponent(roomleComponent: RoomleComponent): boolean;
|
|
118
122
|
}
|
|
@@ -64,7 +64,6 @@ export default class PlanViewModel extends ConfiguratorViewModel implements Plan
|
|
|
64
64
|
addPlanElementViewModel(planElementViewModel: PlanElementViewModel): void;
|
|
65
65
|
private _handleConfiguratorPlanObjectViewModel;
|
|
66
66
|
private _linkPlanObjectViewModelAndComponent;
|
|
67
|
-
private _detachPlanObjectViewModelFromComponent;
|
|
68
67
|
private _handleConfiguratorConstructionPlanObjectViewModel;
|
|
69
68
|
private _handleConstructionPlanObjectViewModel;
|
|
70
69
|
private _handleStaticPlanObjectViewModel;
|
|
@@ -97,6 +96,7 @@ export default class PlanViewModel extends ConfiguratorViewModel implements Plan
|
|
|
97
96
|
}): void;
|
|
98
97
|
toggleCeilingLights(on: boolean): void;
|
|
99
98
|
private commonHandlerForEditableAndTopView;
|
|
99
|
+
isChildObjectRootComponent(roomleComponent: RoomleComponent): boolean;
|
|
100
100
|
protected dockComponent(componentId: number, isRootComponent: boolean, parentId: number, componentPosition: KernelVector3, componentRotation: KernelVector3): void;
|
|
101
101
|
protected _addComponent(component: RoomleComponent): void;
|
|
102
102
|
private _getPlanObjectViewModelForRuntimeId;
|
|
@@ -9,6 +9,7 @@ export default class PlanElementHighlighter {
|
|
|
9
9
|
private _planViewModel;
|
|
10
10
|
constructor(sceneEventHandler: PlannerSceneEventHandler, roomleRenderer: RoomleWebGLRenderer, planViewModel: PlanViewModel);
|
|
11
11
|
private _processViewModel;
|
|
12
|
+
private _isChildObjectRootComponent;
|
|
12
13
|
private _processSelectedPlanElementIds;
|
|
13
14
|
private _highlightPlanElementsBase;
|
|
14
15
|
highlightPlanElements(runtimeIds?: number[]): void;
|
|
@@ -141,10 +141,10 @@ export default class PlannerSceneEventHandler extends SceneEventHandler<SceneEve
|
|
|
141
141
|
disableSnapping(): void;
|
|
142
142
|
enableAdvancedDocking(): void;
|
|
143
143
|
disableAdvancedDocking(): void;
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
144
|
+
isEnabledChildObjectMode(object: KernelObject): boolean;
|
|
145
|
+
enableChildObjects(object: KernelObject, switchChildModeOffForAllOtherObjects?: boolean): KernelObject | null;
|
|
146
|
+
disableChildObjects(object: KernelObject): KernelObject | null;
|
|
147
|
+
disableChildObjectsOfAllPlanObjects(): void;
|
|
148
148
|
private _checkRaycasterSnapping;
|
|
149
149
|
enableWallDrawing(): Group;
|
|
150
150
|
cancelWallDrawing(): Group;
|
|
@@ -52,6 +52,7 @@ export default class PlannerSceneManager extends ConfiguratorSceneManager implem
|
|
|
52
52
|
currentSelection: SelectionPayload | null;
|
|
53
53
|
private _paperBackground;
|
|
54
54
|
private _cameraState;
|
|
55
|
+
private _cameraStateLocked;
|
|
55
56
|
private _planElementHighlighter;
|
|
56
57
|
private _debugSpheres;
|
|
57
58
|
constructor(creator: string, offset: CanvasOffset, plannerCallback: RoomlePlannerCallback, mode: Enumify<typeof CAMERA_TYPE>);
|
|
@@ -159,9 +160,9 @@ export default class PlannerSceneManager extends ConfiguratorSceneManager implem
|
|
|
159
160
|
disableSnapping(): void;
|
|
160
161
|
enableAdvancedDocking(): void;
|
|
161
162
|
disableAdvancedDocking(): void;
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
163
|
+
isEnabledChildObjectMode(planElementViewModel: PlanElementViewModel): boolean;
|
|
164
|
+
enableChildObjects(planElementViewModel: PlanElementViewModel): import('../../../typings/planner').KernelObject;
|
|
165
|
+
disableChildObjects(planElementViewModel: PlanElementViewModel): import('../../../typings/planner').KernelObject;
|
|
165
166
|
dragIn(dragEvent: DragEvent): void;
|
|
166
167
|
getPlannerSceneEventHandler(): PlannerSceneEventHandler;
|
|
167
168
|
disablePlannerEvents(): void;
|
|
@@ -221,13 +222,17 @@ export default class PlannerSceneManager extends ConfiguratorSceneManager implem
|
|
|
221
222
|
protected notifyPlannerOnComponentSelectionCancel(isExternalObject: boolean, reason: CancelSelectionReasons): void;
|
|
222
223
|
private _externalPlanObjectSelectionChanged;
|
|
223
224
|
highlightExternalObject(planObjectComponent: KernelPlanObjectComponent): void;
|
|
224
|
-
private
|
|
225
|
-
|
|
225
|
+
private _selectExternalObjectComponent;
|
|
226
|
+
private _getSelectedPlanObjectComponent;
|
|
227
|
+
selectObjectComponent(planObjectComponent: KernelPlanObjectComponent, switchToConfigurator: boolean, selectComponent: boolean): Promise<void>;
|
|
228
|
+
_swapObjectInConfigurator(planObjectComponent: KernelPlanObjectComponent): Promise<void>;
|
|
229
|
+
getObjectComponent(id: number, typeOfId: Enumify<typeof CORE_TYPE_OF_CORE_ID>): KernelPlanObjectComponent | null;
|
|
226
230
|
getExternalObjectComponent(groupOrRootModuleId: string, subModuleId: string): KernelPlanObjectComponent;
|
|
227
231
|
getCameraParameters3d(): NonNullable<CameraParameter>;
|
|
228
232
|
private _createCeilingLightGroup;
|
|
229
233
|
toggleInteriorLightsSceneSettings(on: boolean): void;
|
|
230
234
|
private _insertRapiItems;
|
|
231
235
|
insertRapiObjects(rapiIds: InsertItemIdInfo[]): Promise<InsertItemResult[]>;
|
|
236
|
+
private _saveConfiguration;
|
|
232
237
|
}
|
|
233
238
|
export {};
|
|
@@ -234,7 +234,8 @@ export interface KernelPlanObjectBase {
|
|
|
234
234
|
center: KernelVector3;
|
|
235
235
|
rootComponentCenter: KernelVector3;
|
|
236
236
|
rotation: number;
|
|
237
|
-
|
|
237
|
+
rgbValue: number;
|
|
238
|
+
useCustomColor?: boolean;
|
|
238
239
|
customLabel: string;
|
|
239
240
|
catalogItemId: string;
|
|
240
241
|
runtimeId: number;
|
|
@@ -83,7 +83,7 @@ declare class PlanObjectPtrVector extends EmsArray<PlanObjectPtr> {
|
|
|
83
83
|
}
|
|
84
84
|
declare abstract class PlanObjectPtr extends AbstractModelWrapper {
|
|
85
85
|
rotation: KernelVector3f;
|
|
86
|
-
|
|
86
|
+
rgbColor: number;
|
|
87
87
|
level: number;
|
|
88
88
|
flipX: boolean;
|
|
89
89
|
flipY: boolean;
|
|
@@ -76,7 +76,8 @@ export interface ObjectFrontRotation {
|
|
|
76
76
|
export interface PlanObject extends PlanElement {
|
|
77
77
|
size: KernelVector3;
|
|
78
78
|
rotation: number;
|
|
79
|
-
|
|
79
|
+
rgbColor: number;
|
|
80
|
+
useCustomColor?: boolean;
|
|
80
81
|
flipX: boolean;
|
|
81
82
|
flipY: boolean;
|
|
82
83
|
fixedZ: boolean;
|
|
@@ -264,18 +265,21 @@ export interface PlanInteractionHandler {
|
|
|
264
265
|
getContinuousDrawingManager(): ContinuousDrawingManager;
|
|
265
266
|
setSnapFeedbackWhileDrawing(enabled: boolean): void;
|
|
266
267
|
consistsOfMergedComponents(object: KernelObject): boolean;
|
|
267
|
-
getShowChildrenOfPlanObject(object: KernelObject): ChildEntityMode;
|
|
268
|
-
setShowChildrenOfPlanObject(object: KernelObject, mode: ChildEntityMode, switchChildModeOffForAllOtherObjects: boolean): KernelObject;
|
|
269
|
-
setShowChildrenOfExternalObject(objectId: string, mode: ChildEntityMode, switchChildModeOffForAllOtherObjects: boolean): KernelObject;
|
|
270
268
|
setObjectSize(anObject: KernelObject, aNewSize: KernelVector3, anAnchor: Anchor): void;
|
|
271
269
|
setObjectFlipX(anObject: KernelObject, shouldFlipX: boolean): void;
|
|
272
270
|
setObjectFlipY(anObject: KernelObject, shouldFlipY: boolean): void;
|
|
273
|
-
setObjectCustomColor(
|
|
271
|
+
setObjectCustomColor(object: PlanObject, rgbColor: number, useCustomColor: boolean): void;
|
|
274
272
|
setObjectFixedZ(anObject: KernelObject, shouldFlipZ: boolean): void;
|
|
275
273
|
setMeasurePoint1(measure: PlanMeasure, point: KernelVector3f, snapToWalls: boolean, snapToObjects: boolean): void;
|
|
276
274
|
setMeasurePoint2(measure: PlanMeasure, point: KernelVector3f, snapToWalls: boolean, snapToObjects: boolean): void;
|
|
277
275
|
addMeasure(startPosition: KernelVector3f, endPosition: KernelVector3f): PlanMeasure;
|
|
278
276
|
setDiscardExternalObjectsOnLoad(discard: boolean): void;
|
|
277
|
+
isEnabledChildObjectMode(object: KernelObject): boolean;
|
|
278
|
+
enableChildObjects(object: KernelObject, switchChildModeOffForAllOtherObjects: boolean): KernelObject;
|
|
279
|
+
disableChildObjects(object: KernelObject): KernelObject;
|
|
280
|
+
enableChildObjectsOfExternalObject(objectId: string, switchChildModeOffForAllOtherObjects: boolean): KernelObject;
|
|
281
|
+
disableChildObjectsOfExternalObject(objectId: string): KernelObject;
|
|
282
|
+
disableChildObjectsOfAllPlanObjects(): void;
|
|
279
283
|
unit: string;
|
|
280
284
|
enableRaster: boolean;
|
|
281
285
|
customRaster: number;
|
|
@@ -285,7 +289,6 @@ export interface PlanInteractionHandler {
|
|
|
285
289
|
objectToObjectSnapMode: SnapMode;
|
|
286
290
|
dockWhenSnap: boolean;
|
|
287
291
|
unDockOnMove: boolean;
|
|
288
|
-
showChildrenOfPlanObjects: ChildEntityMode;
|
|
289
292
|
}
|
|
290
293
|
export interface PlanOverview {
|
|
291
294
|
area: number;
|
|
@@ -336,6 +339,7 @@ declare class GeometryHelpLineArray extends EmsArray<GeometryHelpLine> {
|
|
|
336
339
|
export interface PlanModelViewHelper {
|
|
337
340
|
getPlanOverview(planObject: KernelObject): PlanOverview;
|
|
338
341
|
getPlanObject(plan: Plan, aRuntimeId: number): KernelPlanObject;
|
|
342
|
+
isChildObjectRootComponent(plan: Plan, componentRuntimeId: number): boolean;
|
|
339
343
|
getRootPlanObjectId(plan: Plan, aRuntimeId: number): number;
|
|
340
344
|
getObjectComponent(plan: Plan, typeOfId: TypeOfCoreId, anId: number): KernelPlanObjectComponent;
|
|
341
345
|
getExternalObjectComponent(plan: Plan, groupId: string, moduleId: string): KernelPlanObjectComponent;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
declare const _default: import('vue').DefineComponent<{
|
|
2
|
+
close: () => void;
|
|
3
|
+
payload: number;
|
|
4
|
+
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
|
|
5
|
+
close: () => void;
|
|
6
|
+
payload: number;
|
|
7
|
+
}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
8
|
+
export default _default;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
declare const _default: import('vue').DefineComponent<{
|
|
2
|
+
close: () => void;
|
|
3
|
+
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
|
|
4
|
+
close: () => void;
|
|
5
|
+
}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
6
|
+
export default _default;
|
|
@@ -1114,7 +1114,7 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
1114
1114
|
isExpanded?: boolean;
|
|
1115
1115
|
onExpand?: () => void;
|
|
1116
1116
|
onCollapse?: (_payload: MouseEvent) => void;
|
|
1117
|
-
onSetColor?: (element: GridViewElement<any>, key?: string) => void | Promise<void>;
|
|
1117
|
+
onSetColor?: (element: GridViewElement<any>, key?: string, isCustomColor?: boolean) => void | Promise<void>;
|
|
1118
1118
|
value?: MinimalBoundValue<any>;
|
|
1119
1119
|
label?: string;
|
|
1120
1120
|
originalPayload?: any;
|
|
@@ -2224,7 +2224,7 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
2224
2224
|
isExpanded?: boolean;
|
|
2225
2225
|
onExpand?: () => void;
|
|
2226
2226
|
onCollapse?: (_payload: MouseEvent) => void;
|
|
2227
|
-
onSetColor?: (element: GridViewElement<any>, key?: string) => void | Promise<void>;
|
|
2227
|
+
onSetColor?: (element: GridViewElement<any>, key?: string, isCustomColor?: boolean) => void | Promise<void>;
|
|
2228
2228
|
value?: MinimalBoundValue<any>;
|
|
2229
2229
|
label?: string;
|
|
2230
2230
|
originalPayload?: any;
|
|
@@ -1382,7 +1382,7 @@ declare const dynamicComponents: {
|
|
|
1382
1382
|
isExpanded?: boolean;
|
|
1383
1383
|
onExpand?: () => void;
|
|
1384
1384
|
onCollapse?: (_payload: MouseEvent) => void;
|
|
1385
|
-
onSetColor?: (element: import('../../../../configurator/components/grid-view/-utils/GridViewHelper').GridViewElement<any>, key?: string) => void | Promise<void>;
|
|
1385
|
+
onSetColor?: (element: import('../../../../configurator/components/grid-view/-utils/GridViewHelper').GridViewElement<any>, key?: string, isCustomColor?: boolean) => void | Promise<void>;
|
|
1386
1386
|
value?: import('../../../composables/use-core-bound-value').MinimalBoundValue<any>;
|
|
1387
1387
|
label?: string;
|
|
1388
1388
|
originalPayload?: any;
|
|
@@ -2492,7 +2492,7 @@ declare const dynamicComponents: {
|
|
|
2492
2492
|
isExpanded?: boolean;
|
|
2493
2493
|
onExpand?: () => void;
|
|
2494
2494
|
onCollapse?: (_payload: MouseEvent) => void;
|
|
2495
|
-
onSetColor?: (element: import('../../../../configurator/components/grid-view/-utils/GridViewHelper').GridViewElement<any>, key?: string) => void | Promise<void>;
|
|
2495
|
+
onSetColor?: (element: import('../../../../configurator/components/grid-view/-utils/GridViewHelper').GridViewElement<any>, key?: string, isCustomColor?: boolean) => void | Promise<void>;
|
|
2496
2496
|
value?: import('../../../composables/use-core-bound-value').MinimalBoundValue<any>;
|
|
2497
2497
|
label?: string;
|
|
2498
2498
|
originalPayload?: any;
|
|
@@ -13,6 +13,8 @@ export declare const NOTIFICATION_SHOW_TIMEOUTS: {
|
|
|
13
13
|
readonly LONG: 8000;
|
|
14
14
|
};
|
|
15
15
|
export declare const NOTIFICATIONS: {
|
|
16
|
+
readonly RENDERING_LIGHT: "rendering-light-notification";
|
|
17
|
+
readonly MAXIMUM_LIGHTS: "maximum-lights-notification";
|
|
16
18
|
readonly LOAD_IDB_CONFIG: "load-idb-config";
|
|
17
19
|
readonly FIRST_PERSON_CONTROLS: "first-person-controls";
|
|
18
20
|
readonly STOP_CONFIGURE_HINT: "stop-configure-hint";
|
|
@@ -43,8 +45,10 @@ export type InteractionNotificationStore = Record<InteractionTypes, Notification
|
|
|
43
45
|
message: string;
|
|
44
46
|
}>>;
|
|
45
47
|
export interface NotificationsStore {
|
|
48
|
+
[NOTIFICATIONS.MAXIMUM_LIGHTS]: NotificationData<number>;
|
|
46
49
|
[NOTIFICATIONS.LOAD_IDB_CONFIG]: NotificationData<SavedIdbData<string>>;
|
|
47
50
|
[NOTIFICATIONS.FIRST_PERSON_CONTROLS]: NotificationData<null>;
|
|
51
|
+
[NOTIFICATIONS.RENDERING_LIGHT]: NotificationData<null>;
|
|
48
52
|
[NOTIFICATIONS.INTERACTION_NOTE]: InteractionNotificationStore;
|
|
49
53
|
}
|
|
50
54
|
export {};
|
|
@@ -1109,5 +1109,5 @@ export declare const useStaticItemParameters: (api: RoomlePlannerWithExtObjs, ma
|
|
|
1109
1109
|
readonly __IS_SAMPLE_COLOR__: 1;
|
|
1110
1110
|
}];
|
|
1111
1111
|
}] | RapiMaterialGroup[]>;
|
|
1112
|
-
onMaterialSelection: (element: GridViewElement<MaterialsForObjects
|
|
1112
|
+
onMaterialSelection: (element: GridViewElement<MaterialsForObjects>, _key?: string, isCustomColor?: boolean) => Promise<void>;
|
|
1113
1113
|
};
|
|
@@ -153,6 +153,9 @@ export interface UiInitData extends InitDataDefinition, GlobalInitDataDefinition
|
|
|
153
153
|
[INTERACTION_NOTIFICATIONS.ADD_ELEMENT]?: boolean;
|
|
154
154
|
[INTERACTION_NOTIFICATIONS.PARAMETER_CHANGED]?: boolean;
|
|
155
155
|
};
|
|
156
|
+
[key: string]: boolean | {
|
|
157
|
+
[key: string]: boolean | undefined;
|
|
158
|
+
} | undefined;
|
|
156
159
|
};
|
|
157
160
|
/**
|
|
158
161
|
* @description skin the embedding instance
|
|
File without changes
|