@roomle/web-sdk 3.9.0-alpha.1 → 3.9.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.
Files changed (109) hide show
  1. package/lib/ConfiguratorKernel.wasm +0 -0
  2. package/lib/{GLTFExporter-BqjC9LhS.mjs → GLTFExporter-yfYOtLdk.mjs} +2 -2
  3. package/lib/{GLTFExporter-BqjC9LhS.mjs.map → GLTFExporter-yfYOtLdk.mjs.map} +1 -1
  4. package/lib/RoomleCore.js +3 -3
  5. package/lib/RoomleCore.wasm +0 -0
  6. package/lib/RoomleToolsCore.wasm +0 -0
  7. package/lib/{USDZExporter-qUD2VgwK.mjs → USDZExporter-DFJQYX8l.mjs} +2 -2
  8. package/lib/{USDZExporter-qUD2VgwK.mjs.map → USDZExporter-DFJQYX8l.mjs.map} +1 -1
  9. package/lib/{api-ByHTYrQ_.mjs → api-s0Yey2rD.mjs} +12 -12
  10. package/lib/api-s0Yey2rD.mjs.map +1 -0
  11. package/lib/asset-loader.worker-A7nEeQB4.mjs.map +1 -1
  12. package/lib/{banana-for-scale-DiBCpVNM.mjs → banana-for-scale-CFY_5rk1.mjs} +4 -4
  13. package/lib/{banana-for-scale-DiBCpVNM.mjs.map → banana-for-scale-CFY_5rk1.mjs.map} +1 -1
  14. package/lib/budgeteer.sw-CQWYbQSc.mjs.map +1 -1
  15. package/lib/{common-utils-AB4Lnet3.mjs → common-utils-L3DF6Ey5.mjs} +2 -2
  16. package/lib/{common-utils-AB4Lnet3.mjs.map → common-utils-L3DF6Ey5.mjs.map} +1 -1
  17. package/lib/{component-dimensioning-LUnZnpqG.mjs → component-dimensioning-DmcHgmpq.mjs} +44 -38
  18. package/lib/component-dimensioning-DmcHgmpq.mjs.map +1 -0
  19. package/lib/{component-raycast-helper-Bl0mWPcj.mjs → component-raycast-helper-cJxdYLXm.mjs} +28 -28
  20. package/lib/{component-raycast-helper-Bl0mWPcj.mjs.map → component-raycast-helper-cJxdYLXm.mjs.map} +1 -1
  21. package/lib/configurator-CC0uDa2i.mjs +2 -0
  22. package/lib/configurator-CxsFgHxg.mjs +45 -0
  23. package/lib/{configurator-Cf6J4eOF.mjs.map → configurator-CxsFgHxg.mjs.map} +1 -1
  24. package/lib/{continuous-drawing-helper-BlRy7u2t.mjs → continuous-drawing-helper-DEmx54k_.mjs} +3 -3
  25. package/lib/{continuous-drawing-helper-BlRy7u2t.mjs.map → continuous-drawing-helper-DEmx54k_.mjs.map} +1 -1
  26. package/lib/{decorate-Bck1_lG8.mjs → decorate-C9r0zXzz.mjs} +1 -1
  27. package/lib/{decorate-Bck1_lG8.mjs.map → decorate-C9r0zXzz.mjs.map} +1 -1
  28. package/lib/{dimensioning-helper-vPhGfHd-.mjs → dimensioning-helper-BXD6AEqL.mjs} +28 -21
  29. package/lib/dimensioning-helper-BXD6AEqL.mjs.map +1 -0
  30. package/lib/dimensioning-helper-Do9jwg8T.mjs +2 -0
  31. package/lib/glb-viewer-DyHnMYi0.mjs +2 -0
  32. package/lib/{glb-viewer-B95ZWAO-.mjs → glb-viewer-I86nXb0A.mjs} +69 -69
  33. package/lib/{glb-viewer-B95ZWAO-.mjs.map → glb-viewer-I86nXb0A.mjs.map} +1 -1
  34. package/lib/{highlight-coordinator-DeB46jQq.mjs → highlight-coordinator-DvgAfvb2.mjs} +3 -3
  35. package/lib/{highlight-coordinator-DeB46jQq.mjs.map → highlight-coordinator-DvgAfvb2.mjs.map} +1 -1
  36. package/lib/{homag-intelligence-ByOCaAFW.mjs → homag-intelligence-Bt--x6_f.mjs} +17 -7
  37. package/lib/homag-intelligence-Bt--x6_f.mjs.map +1 -0
  38. package/lib/{imos-ix-poc-export-helper-Vyv-uuNs.mjs → imos-ix-poc-export-helper-C9wPB6fl.mjs} +3 -3
  39. package/lib/{imos-ix-poc-export-helper-Vyv-uuNs.mjs.map → imos-ix-poc-export-helper-C9wPB6fl.mjs.map} +1 -1
  40. package/lib/kernel-C7YDLxq8.mjs.map +1 -1
  41. package/lib/{kernel-utils-BG1uqfT_.mjs → kernel-utils-B5QlsCwn.mjs} +15 -7
  42. package/lib/kernel-utils-B5QlsCwn.mjs.map +1 -0
  43. package/lib/{layer-BfckfWZz.mjs → layer-C_JtkhdO.mjs} +1 -1
  44. package/lib/{layer-BfckfWZz.mjs.map → layer-C_JtkhdO.mjs.map} +1 -1
  45. package/lib/{main-TlUQxOeW.mjs → main-DeOPstVA.mjs} +36481 -3268
  46. package/lib/main-DeOPstVA.mjs.map +1 -0
  47. package/lib/{material-viewer-37JiZSuS.mjs → material-viewer-D8Qdq6-m.mjs} +55 -55
  48. package/lib/material-viewer-D8Qdq6-m.mjs.map +1 -0
  49. package/lib/packages-eckwotTn.mjs +4 -0
  50. package/lib/{planner-DBhjeG6D.mjs → planner-BWZr-Th2.mjs} +14 -14
  51. package/lib/{planner-DBhjeG6D.mjs.map → planner-BWZr-Th2.mjs.map} +1 -1
  52. package/lib/planner-D3jvWraY.mjs +2 -0
  53. package/lib/{plugin-system-BEZnFUyT.mjs → plugin-system-BBgoIai2.mjs} +3 -3
  54. package/lib/{plugin-system-BEZnFUyT.mjs.map → plugin-system-BBgoIai2.mjs.map} +1 -1
  55. package/lib/roomle-headless-setup-CMK-quZI.mjs.map +1 -1
  56. package/lib/roomle-headless.d.ts +212 -32
  57. package/lib/roomle-headless.js +42 -41
  58. package/lib/roomle-headless.js.map +1 -1
  59. package/lib/{roomle-renderer-BgT28pfp.mjs → roomle-renderer-CkSFbpmg.mjs} +2 -2
  60. package/lib/{roomle-renderer-BgT28pfp.mjs.map → roomle-renderer-CkSFbpmg.mjs.map} +1 -1
  61. package/lib/roomle-sdk.d.ts +212 -32
  62. package/lib/roomle-sdk.js +8 -7
  63. package/lib/{roomle-webgpu-renderer-CdD3cYxN.mjs → roomle-webgpu-renderer-Cs4eLEwf.mjs} +426 -393
  64. package/lib/roomle-webgpu-renderer-Cs4eLEwf.mjs.map +1 -0
  65. package/lib/{scene-renderer-Bdl7umAf.mjs → scene-renderer-4zk6BXsR.mjs} +228 -228
  66. package/lib/{scene-renderer-Bdl7umAf.mjs.map → scene-renderer-4zk6BXsR.mjs.map} +1 -1
  67. package/lib/{script-loader-D3Cbc5BY.mjs → script-loader-DSL6zJat.mjs} +9 -9
  68. package/lib/{script-loader-D3Cbc5BY.mjs.map → script-loader-DSL6zJat.mjs.map} +1 -1
  69. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/package.json +1 -1
  70. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/configuratorCoreInterface.d.ts +7 -3
  71. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/configuratorCoreInterface.js +2 -1
  72. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/configuratorCoreInterface.js.map +1 -1
  73. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/plannerCoreInterface.d.ts +35 -2
  74. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/plannerCoreInterface.js +12 -1
  75. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/plannerCoreInterface.js.map +1 -1
  76. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm +0 -0
  77. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleCore.js +3 -3
  78. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleCore.wasm +0 -0
  79. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleToolsCore.wasm +0 -0
  80. package/lib/{stats-helper-BvDfWWfq.mjs → stats-helper-DyRFKnMs.mjs} +3 -3
  81. package/lib/{stats-helper-BvDfWWfq.mjs.map → stats-helper-DyRFKnMs.mjs.map} +1 -1
  82. package/lib/{three.core-K1JzUaep.mjs → three.core-DNErG1F6.mjs} +1 -1
  83. package/lib/{three.core-K1JzUaep.mjs.map → three.core-DNErG1F6.mjs.map} +1 -1
  84. package/lib/{three.module-Q2K9uyhi.mjs → three.module-BZkESKo3.mjs} +2 -2
  85. package/lib/{three.module-Q2K9uyhi.mjs.map → three.module-BZkESKo3.mjs.map} +1 -1
  86. package/lib/{three.webgpu-7v7o6Pxs.mjs → three.webgpu-C8myBXe1.mjs} +2 -2
  87. package/lib/{three.webgpu-7v7o6Pxs.mjs.map → three.webgpu-C8myBXe1.mjs.map} +1 -1
  88. package/lib/three.webgpu-WIkDzwXU.mjs +3 -0
  89. package/lib/{threejs-utils-BzXU2M3w.mjs → threejs-utils-fEhH05zP.mjs} +103 -87
  90. package/lib/threejs-utils-fEhH05zP.mjs.map +1 -0
  91. package/lib/{tools-core-CUTTHUku.mjs → tools-core-Bf4_WCg8.mjs} +5 -5
  92. package/lib/{tools-core-CUTTHUku.mjs.map → tools-core-Bf4_WCg8.mjs.map} +1 -1
  93. package/package.json +5 -2
  94. package/lib/api-ByHTYrQ_.mjs.map +0 -1
  95. package/lib/component-dimensioning-LUnZnpqG.mjs.map +0 -1
  96. package/lib/configurator-Cf6J4eOF.mjs +0 -45
  97. package/lib/configurator-D5FuWg5f.mjs +0 -2
  98. package/lib/dimensioning-helper-5xsc6I7Y.mjs +0 -2
  99. package/lib/dimensioning-helper-vPhGfHd-.mjs.map +0 -1
  100. package/lib/glb-viewer-C-IBj6p6.mjs +0 -2
  101. package/lib/homag-intelligence-ByOCaAFW.mjs.map +0 -1
  102. package/lib/kernel-utils-BG1uqfT_.mjs.map +0 -1
  103. package/lib/main-TlUQxOeW.mjs.map +0 -1
  104. package/lib/material-viewer-37JiZSuS.mjs.map +0 -1
  105. package/lib/packages-BPyzoYeC.mjs +0 -4
  106. package/lib/planner-BBUr8xHt.mjs +0 -2
  107. package/lib/roomle-webgpu-renderer-CdD3cYxN.mjs.map +0 -1
  108. package/lib/three.webgpu-ChguPx4k.mjs +0 -3
  109. package/lib/threejs-utils-BzXU2M3w.mjs.map +0 -1
@@ -289,7 +289,7 @@ export declare class CacheHolder {
289
289
  get geometryCache(): Map<string, BufferGeometry>;
290
290
  get materialCache(): Map<string, Material>;
291
291
  clear(): void;
292
- setupLightCache(scene: Scene, maxAnisotropy: number): void;
292
+ setupLightCache(scene: Scene, renderer: WebGLRenderer | WebGPURenderer, maxAnisotropy: number): void;
293
293
  }
294
294
 
295
295
  export declare type CallbackObjectType = 'static' | 'configuration' | 'wall' | 'measure' | 'attic' | 'door' | 'floor' | 'window' | 'unknown' | 'external-configuration';
@@ -1075,6 +1075,7 @@ export declare class ConfiguratorCameraBehaviour extends CameraBehaviour {
1075
1075
  zoomToComponentOnConsecutiveClick(cameraParameters: CameraParameter): Promise<void>;
1076
1076
  resetCameraToStateOnCancelSelection(): void;
1077
1077
  zoomToFitBoundsAfterUserInitiatedPreviews(boundingBox: Box3): void;
1078
+ zoomToFitBoundsAfterSwitchConfiguratorObject(boundingBox: Box3): void;
1078
1079
  resetCameraOnStartConfiguring(boundingBox: Box3, cameraParameters: CameraParameter, rotation?: number, lookAtSide?: number): Promise<void>;
1079
1080
  }
1080
1081
 
@@ -1246,6 +1247,7 @@ export declare class ConfiguratorKernelAccess extends CommonKernelAccess {
1246
1247
  private _configuratorHistory;
1247
1248
  externalMeshQueue: PromiseQueue<void>;
1248
1249
  muteKernelCallbacks: boolean;
1250
+ private _parameterUpdateIds;
1249
1251
  constructor(creator: string);
1250
1252
  init(kernelType: KERNEL_TYPE): void;
1251
1253
  protected _getScriptLoaderKernelId(_kernelType: KERNEL_TYPE): string;
@@ -1255,9 +1257,12 @@ export declare class ConfiguratorKernelAccess extends CommonKernelAccess {
1255
1257
  uiRequestConfiguration(objectId: number): void;
1256
1258
  getComponentParameters(componentId: number): Promise<KernelParameter[]>;
1257
1259
  getPlanObjectParameters(objectId: number): Promise<KernelParameter[]>;
1260
+ getCommonPlanObjectParameters(objectIds: number[]): Promise<KernelParameter[]>;
1258
1261
  protected _validateExternalComponentParameters(_componentId: number, parameters: KernelParameter[]): Promise<KernelParameter[]>;
1259
1262
  protected _validateExternalPlanObjectParameters(_objectId: number, parameters: KernelParameter[]): Promise<KernelParameter[]>;
1260
1263
  private _addAnimationParameters;
1264
+ private _nextParameterUpdateId;
1265
+ private _isSupersededParameterUpdate;
1261
1266
  private _updateComponentParameters;
1262
1267
  selectionChange(componentId: number, isRoot: boolean): void;
1263
1268
  protected _componentSelectionChanged(_planObject: PlanObjectKernel, _component: KernelComponent): void;
@@ -1267,9 +1272,13 @@ export declare class ConfiguratorKernelAccess extends CommonKernelAccess {
1267
1272
  private _updateComponentChildren;
1268
1273
  private _updateComponentDependencies;
1269
1274
  private _updatePlanObjectParameters;
1275
+ private _updateCommonPlanObjectParameters;
1270
1276
  private _enableRootComponentParametersAsGlobal;
1271
1277
  private _updatePlanObjectChildren;
1272
1278
  updatePlanObjectDependencies(planObjectId: number): void;
1279
+ private _updateSelectedComponentDependencies;
1280
+ private _isComponentOfPlanObject;
1281
+ updateCommonPlanObjectDependencies(planObjectIds: number[]): void;
1273
1282
  private _updateConfigurationHasChildren;
1274
1283
  dockComponent(parentId: number, parentDockId: number, childId: number, childDockId: number, position?: KernelVector3): void;
1275
1284
  changeUseOfHDGeometry(context: ConfiguratorContext, useHDGeometry: boolean): void;
@@ -1298,8 +1307,8 @@ export declare class ConfiguratorKernelAccess extends CommonKernelAccess {
1298
1307
  protected _setupKernel(): void;
1299
1308
  onLoadComponentError(error: Error, id: RapiId): void;
1300
1309
  configurationLoaded(conversationId: number, objectId: number, componentId: number, hash: string, errors: EmscriptenString[], _valid: boolean, isFreeFlying: boolean): void;
1301
- componentDefinitionLoaded(_conversationId: number, componentId: number): void;
1302
- componentDefinitionLoadingError(_conversationId: number, errorMessage: string): void;
1310
+ componentDefinitionLoaded(componentId: number): void;
1311
+ componentDefinitionLoadingError(errorMessage: string): void;
1303
1312
  configurationLoadingError(_runtimeId: number, errors?: EmscriptenString[]): void;
1304
1313
  componentConfigurationUpdated(componentId: number, geometryChanged: boolean): void;
1305
1314
  setActiveGroupInView(group: string): void;
@@ -1308,6 +1317,7 @@ export declare class ConfiguratorKernelAccess extends CommonKernelAccess {
1308
1317
  requestComponentDimensions(): void;
1309
1318
  planObjectCreated(conversationId: number, planObjectId: number): void;
1310
1319
  planObjectUpdated(planObjectId: number, pendingDocking: boolean, automaticCalculationUpdate: boolean): void;
1320
+ planObjectDependencyUpdated(planObjectId: number): void;
1311
1321
  planObjectConfigurationUpdated(planObjectId: number, configuration: ConfigurationString, hash: string, _rootPlanComponentId: number, _valid: boolean, pendingDocking: boolean): Promise<void>;
1312
1322
  private _onBoundsUpdate;
1313
1323
  planObjectDeleted(): void;
@@ -1376,6 +1386,7 @@ export declare interface ConfiguratorKernelAccessCallbackI extends KernelAccessC
1376
1386
  export declare interface ConfiguratorKernelCallbackI extends CommonConfiguratorKernelCallbackI {
1377
1387
  planObjectCreated(conversationId: number, planObjectId: number): void;
1378
1388
  planObjectUpdated(planObject: PlanObjectKernel, pendingDocking: boolean, automaticCalculationUpdate: boolean): void;
1389
+ planObjectDependencyUpdated(planObjectId: number): void;
1379
1390
  planObjectConfigurationUpdated(planObjectId: number, configuration: ConfigurationString, hash: string, pendingDocking: boolean): void;
1380
1391
  configurationLoaded(conversationId: number, objectId: number, componentId: number, hash: string, errors: any, isFreeFlying: boolean): void;
1381
1392
  Editor3dAddDockPreview(componentId: number, previewId: number, componentType: KernelComponentType): void;
@@ -1418,10 +1429,12 @@ export declare interface ConfiguratorKernelClass {
1418
1429
  getComponentParameters(componentId: number): KernelParameter[];
1419
1430
  getPlanComponentAnimations(planComponentId: number): KernelAnimation[];
1420
1431
  setComponentParameter(componentId: number, parameterKey: string, value: string): void;
1421
- setPlanComponentParameters(componentIds: any, parameterKey: string, value: string): void;
1432
+ setPlanComponentsParameter(componentIds: any, parameterKey: string, value: string): void;
1422
1433
  getPlanObjectParameters(planObjectId: number): KernelParameter[];
1434
+ getCommonPlanObjectParameters(planObjectIds: EmsArray<number>): KernelParameter[];
1423
1435
  getPlanObjectAnimations(planObjectId: number): KernelAnimation[];
1424
1436
  setPlanObjectParameter(planObjectId: number, parameterKey: string, value: string): void;
1437
+ setPlanObjectsParameter(planObjectIds: any, parameterKey: string, value: string): void;
1425
1438
  dockComponent(childId: number, childDockId: number, parentId: number, parentDockId: number, position?: KernelVector3): void;
1426
1439
  getComponent(componentId: number): KernelComponent;
1427
1440
  getComponentBounds(componentId: number, animationValues: string[]): KernelComponentBounds;
@@ -1448,7 +1461,7 @@ export declare interface ConfiguratorKernelClass {
1448
1461
  parameterGroups: KernelParameterGroup[];
1449
1462
  animations: KernelAnimation[];
1450
1463
  };
1451
- loadComponentDefinition(conversationId: number, component: string): void;
1464
+ loadComponentDefinition(component: string): void;
1452
1465
  syncPlanObjectToView(conversationId: number, planObjectId: number): void;
1453
1466
  setAssetInvalid(assetType: AssetType, idOrUrl: string, quality: number): void;
1454
1467
  setActiveGroupInView(groupId: string): void;
@@ -1527,14 +1540,14 @@ export declare class ConfiguratorSceneEventHandler extends SceneEventHandler<Sce
1527
1540
  disable(): void;
1528
1541
  enable(): void;
1529
1542
  private _addInputListeners;
1530
- addComponentHandlers(component: RoomleComponent): void;
1543
+ addComponentHandlers(component: RoomleComponent, switchObject?: (componentId: number) => Promise<void>): void;
1531
1544
  addComponentDragInHandler(component: RoomleComponent): void;
1532
1545
  private _addComponentHandlers;
1533
1546
  addPreviewHandlers(component: PreviewComponent): void;
1534
1547
  addPreviewLineHandlers(component: PreviewLineComponent, requestRenderSceneUpdateCallback?: () => void): void;
1535
1548
  private _clickPreview;
1536
1549
  private _clickPreviewLine;
1537
- clickComponent(component: RoomleComponent, componentIsClicked?: boolean): void;
1550
+ clickComponent(component: RoomleComponent, componentIsClicked?: boolean, switchObject?: (componentId: number) => Promise<void>): Promise<void>;
1538
1551
  private _clickOutside;
1539
1552
  private _hoverOn;
1540
1553
  private _hoverOff;
@@ -1562,7 +1575,7 @@ export declare class ConfiguratorSceneEventHandler extends SceneEventHandler<Sce
1562
1575
  getSelectedRuntimeComponentIds(): number[];
1563
1576
  setCameraMoving(cameraMoving: boolean): void;
1564
1577
  setCamera(camera: Camera): void;
1565
- setObject(object: Object3D): void;
1578
+ setObject(object: Object3D, secondaryObject?: Object3D): void;
1566
1579
  private _findComponentToBeSelected;
1567
1580
  private getRootComponent;
1568
1581
  }
@@ -1668,6 +1681,7 @@ export declare class ConfiguratorSceneManager extends SceneManager implements Co
1668
1681
  showDimensions(): Promise<void>;
1669
1682
  private _initDimensions;
1670
1683
  hideDimensions(): void;
1684
+ private _updateDimensionLabels;
1671
1685
  private _updateComponentDimensionLabels;
1672
1686
  loadSceneSettings(sceneSetting: SceneSettings): Promise<void>;
1673
1687
  protected onCameraChanged(): void;
@@ -1688,8 +1702,10 @@ export declare class ConfiguratorSceneManager extends SceneManager implements Co
1688
1702
  planObjectUpdated(planObject: PlanObjectKernel, geometryChanged: boolean, pendingDocking: boolean, automaticCalculationUpdate: boolean): void;
1689
1703
  componentDeleted(component: RoomleComponent): void;
1690
1704
  previewConstructionDone(_component: RoomleComponent, hasPreviews: boolean): void;
1705
+ planObjectDependencyUpdated(planObjectId: number): void;
1691
1706
  configurationLoaded(component: RoomleComponent, isFreeFlying: boolean): void;
1692
1707
  addComponentHandlers(component: RoomleComponent): void;
1708
+ switchConfiguratorObject(_clickedCompoentId: number): Promise<void>;
1693
1709
  addPreviewHandlers(previewComponent: PreviewComponent): void;
1694
1710
  addPreviewLineHandlers(previewLineComponent: PreviewLineComponent): void;
1695
1711
  private _updateComponentPosition;
@@ -1712,7 +1728,7 @@ export declare class ConfiguratorSceneManager extends SceneManager implements Co
1712
1728
  getComponent(componentRuntimeId: number): KernelComponent;
1713
1729
  cameraBehaviourChanged(updateDistance?: boolean): void;
1714
1730
  protected _setCameraControlListeners(): void;
1715
- protected setEventHandlerObject(object: Object3D): void;
1731
+ protected setEventHandlerObject(object: Object3D, secondaryObject?: Object3D): void;
1716
1732
  protected _readyForRender(): void;
1717
1733
  getComponentFromRuntimeId(elementId: number): RoomleComponent | null;
1718
1734
  animateElement(elementId: number, parameterName: string, value: string, animationLevel: AnimationLevelType, animate: boolean): void;
@@ -2087,6 +2103,7 @@ export declare class ConfiguratorViewModel implements ConfiguratorKernelCallback
2087
2103
  private _getRuntimeComponent;
2088
2104
  configurationLoaded(conversationId: number, objectId: number, componentId: number, _hash: string, _errors: any, isFreeFlying: boolean): void;
2089
2105
  finishParameterChange(resolve: () => void, _reject: () => void): void;
2106
+ planObjectDependencyUpdated(planObjectId: number): void;
2090
2107
  planObjectConfigurationUpdated(planObjectId: number, _configuration: ConfigurationString, _hash: string, pendingDocking: boolean): void;
2091
2108
  planObjectCreated(_conversationId: number, configurationRuntimeId: number): void;
2092
2109
  planObjectUpdated(planObject: PlanObjectKernel, pendingDocking: boolean, automaticCalculationUpdate: boolean): void;
@@ -2124,6 +2141,7 @@ export declare interface ConfiguratorViewModelCallbackI {
2124
2141
  planObjectUpdated(planObject: PlanObjectKernel, geometryChanged: boolean, pendingDocking: boolean, automaticCalculationUpdate: boolean): void;
2125
2142
  planObjectConstructionDone(planObject: PlanObjectKernel): void;
2126
2143
  previewConstructionDone(component: RoomleComponent, hasPreviews: boolean): void;
2144
+ planObjectDependencyUpdated(planObjectId: number): void;
2127
2145
  configurationLoaded(component: RoomleComponent, isFreeFlying: boolean): void;
2128
2146
  clearScene(): void;
2129
2147
  display(component: RoomleComponent): void;
@@ -2256,6 +2274,14 @@ export declare const CORE_HELP_LINE_TYPE: {
2256
2274
  readonly OBJECT_CONTOUR: 5;
2257
2275
  };
2258
2276
 
2277
+ export declare const CORE_OBJECT_CATEGORY: {
2278
+ readonly OBJECT: 0;
2279
+ readonly DOOR: 1;
2280
+ readonly WINDOW: 2;
2281
+ readonly CONSTRUCTION: 3;
2282
+ readonly UNKNOWN: 4;
2283
+ };
2284
+
2259
2285
  export declare const CORE_PERMISSION_TO_DELETE: {
2260
2286
  readonly NEVER: 0;
2261
2287
  readonly REDOCK_CHILDREN: 1;
@@ -2270,6 +2296,11 @@ export declare const CORE_PLAN_COMPONENT_TYPE: {
2270
2296
  readonly SUB_ARTICLE: 4;
2271
2297
  };
2272
2298
 
2299
+ export declare const CORE_PLAN_ROOM_GEOMETRY_MODE: {
2300
+ readonly FLOOR: 0;
2301
+ readonly ROOM: 1;
2302
+ };
2303
+
2273
2304
  export declare const CORE_SNAP_STATE: {
2274
2305
  readonly DEFAULT: 0;
2275
2306
  readonly DOCKING: 1;
@@ -2305,6 +2336,11 @@ export declare class CSS2DRendererManager implements Context {
2305
2336
  private injectStyles;
2306
2337
  }
2307
2338
 
2339
+ export declare interface CurrentTenantId {
2340
+ tenantId: number | string | null;
2341
+ fallbackTenantId: number | null;
2342
+ }
2343
+
2308
2344
  export declare interface CustomShadingParameters {
2309
2345
  aoIntensity?: number;
2310
2346
  aoExtent?: number;
@@ -2428,6 +2464,9 @@ export declare class DimensioningHelper {
2428
2464
  private readonly _widthLineGroup;
2429
2465
  private readonly _heightLineGroup;
2430
2466
  private readonly _depthLineGroup;
2467
+ private _widthLabel;
2468
+ private _heightLabel;
2469
+ private _depthLabel;
2431
2470
  private _enabled;
2432
2471
  private _dimensionsVisible;
2433
2472
  private _dimensionLineGroup;
@@ -2443,6 +2482,7 @@ export declare class DimensioningHelper {
2443
2482
  private _getLocalCameraPosition;
2444
2483
  private _getCameraDistanceInfo;
2445
2484
  private _visibilityChangedCallback;
2485
+ updateDimensionLabelVisibility(camera: Camera): void;
2446
2486
  update(force?: boolean): void;
2447
2487
  updateSize(boxForMeasurement: KernelCube): void;
2448
2488
  removeFromObject(object: Object3D): void;
@@ -2457,8 +2497,7 @@ export declare class DimensioningHelper {
2457
2497
  enableTopDimensions(): void;
2458
2498
  disableTopDimensions(): void;
2459
2499
  getBoundingBox(): Box3;
2460
- moveCameraStart(position: Vector3): void;
2461
- moveCameraEnd(position: Vector3): void;
2500
+ setCameraPosition(position: Vector3): void;
2462
2501
  private _performUpdate;
2463
2502
  private _clear;
2464
2503
  }
@@ -2615,6 +2654,11 @@ export declare interface Element_2 {
2615
2654
  perspectiveImage: AssetUrl;
2616
2655
  }
2617
2656
 
2657
+ export declare interface ElevationView {
2658
+ lineOfSight: KernelVector3f;
2659
+ objects: KernelPlanObject[];
2660
+ }
2661
+
2618
2662
  export declare class EmsArray<T> {
2619
2663
  get(index: number): T;
2620
2664
  push_back(element: T): void;
@@ -2895,6 +2939,13 @@ export declare interface ExternalObjectAPI {
2895
2939
  * @param options Options for loading the external object groups.
2896
2940
  */
2897
2941
  loadExternalObjectGroups(groupJson: ExternalGroupData, options: LoadExternalObjectOptions): Promise<LoadExternalObjectGroupResult[]>;
2942
+ /**
2943
+ * "loadExternalObjectGroupLayout" creates and loads a group of modules from an article layout.
2944
+ * @param articleLayoutJson The article layout JSON as object.
2945
+ * @param layoutType The article layout type. Only "nobila" is supported at the moment.
2946
+ * @param options Options for loading the external object group.
2947
+ */
2948
+ loadExternalObjectGroupLayout(articleLayoutJson: ExternalObjectGroupLayout, layoutType: string, options?: LoadExternalObjectOptions): Promise<LoadExternalObjectGroupResult[]>;
2898
2949
  /**
2899
2950
  * "updateExternalObjectGroupAttribute" modifies an attribute of a root module or sub module.
2900
2951
  * The attribute with the ID "attributeId" of the sub module with the ID "moduleId"
@@ -2987,7 +3038,7 @@ export declare interface ExternalObjectAPI {
2987
3038
  /**
2988
3039
  * "getExternalRoomInformation" returns the room information for currently loaded in the plan.
2989
3040
  */
2990
- getExternalRoomInformation(): Promise<ExternalRoomInformation>;
3041
+ getExternalRoomInformation(mode?: PlanRoomGeometryMode): Promise<ExternalRoomInformation>;
2991
3042
  /**
2992
3043
  * It generates a snapshot of the external object in the plan without saving any data.
2993
3044
  * By default, the snapshot includes order data, room information, the plan XML, GLBs of the complete scene,
@@ -3039,10 +3090,12 @@ export declare interface ExternalObjectDebugConfiguration {
3039
3090
  export declare interface ExternalObjectDockedContext {
3040
3091
  dockedRoots: ExternalObjectDockedRootModule[];
3041
3092
  ownDockingVector: string;
3093
+ ownDockingVectorIndex: number;
3042
3094
  }
3043
3095
 
3044
3096
  export declare interface ExternalObjectDockedRootModule {
3045
3097
  dockingVector: string;
3098
+ dockingVectorIndex: number;
3046
3099
  id: string;
3047
3100
  }
3048
3101
 
@@ -3055,6 +3108,41 @@ export declare interface ExternalObjectGroup {
3055
3108
  contextData?: ExternalObjectContextDataItem[];
3056
3109
  }
3057
3110
 
3111
+ export declare interface ExternalObjectGroupLayout {
3112
+ [key: string]: unknown;
3113
+ shapes?: ExternalObjectGroupLayoutShape[];
3114
+ }
3115
+
3116
+ export declare interface ExternalObjectGroupLayoutArticle {
3117
+ [key: string]: unknown;
3118
+ name?: string;
3119
+ position?: Partial<Position3>;
3120
+ rotation?: number | null;
3121
+ dimensions?: ExternalObjectGroupLayoutDimensions;
3122
+ hingeId?: string | null;
3123
+ constructionId?: string | null;
3124
+ }
3125
+
3126
+ export declare type ExternalObjectGroupLayoutAttributeValue = string | number | boolean;
3127
+
3128
+ export declare interface ExternalObjectGroupLayoutDimensions {
3129
+ [key: string]: ExternalObjectGroupLayoutAttributeValue | null | undefined;
3130
+ b?: ExternalObjectGroupLayoutAttributeValue | null;
3131
+ h?: ExternalObjectGroupLayoutAttributeValue | null;
3132
+ t?: ExternalObjectGroupLayoutAttributeValue | null;
3133
+ }
3134
+
3135
+ export declare interface ExternalObjectGroupLayoutShape {
3136
+ [key: string]: unknown;
3137
+ sides?: ExternalObjectGroupLayoutSide[];
3138
+ bespokeArticles?: ExternalObjectGroupLayoutArticle[];
3139
+ }
3140
+
3141
+ export declare interface ExternalObjectGroupLayoutSide {
3142
+ [key: string]: unknown;
3143
+ articles?: ExternalObjectGroupLayoutArticle[];
3144
+ }
3145
+
3058
3146
  export declare interface ExternalObjectLoadConfiguration {
3059
3147
  applyGlobalChildMode: boolean;
3060
3148
  correctArrangement: boolean;
@@ -3116,7 +3204,7 @@ export declare interface ExternalObjectSnapshotData {
3116
3204
  }
3117
3205
 
3118
3206
  export declare interface ExternalObjectSnapshotRequest {
3119
- orderData?: boolean;
3207
+ orderData?: boolean | PlanRoomGeometryMode;
3120
3208
  planXML?: boolean;
3121
3209
  objectGlb?: boolean;
3122
3210
  perspectiveImage?: boolean;
@@ -3188,7 +3276,7 @@ export declare class ExternalReference {
3188
3276
  export declare type ExternalResponseValidator = (type: 'rapi-access', response: Response) => Promise<boolean>;
3189
3277
 
3190
3278
  export declare interface ExternalRoomInformation {
3191
- rooms: PosContour[];
3279
+ rooms: PosRoom[];
3192
3280
  }
3193
3281
 
3194
3282
  export declare type ExternalTag = Partial<RapiTag> & Pick<RapiTag, 'label'> & {
@@ -3312,6 +3400,11 @@ export declare class GeometryHelpLineArray extends EmsArray<GeometryHelpLine> {
3312
3400
 
3313
3401
  export declare const getCatalogIdFromConfigurationHash: (id: RapiId) => RapiId | null;
3314
3402
 
3403
+ export declare interface GetGroupDataForOrderOptions {
3404
+ roomlePlannerId?: string;
3405
+ mode?: PlanRoomGeometryMode;
3406
+ }
3407
+
3315
3408
  export declare interface GLBRenderWorkerListener {
3316
3409
  onStart(count: number): void;
3317
3410
  onElementFinished(finishedElements: number): void;
@@ -3499,6 +3592,7 @@ export declare interface GlueLogic {
3499
3592
  deleteRootModule(remainingGroup: ExternalObjectGroup, rootModuleIdToDelete: string, splitOffGroups: ExternalObjectGroup[]): Promise<void>;
3500
3593
  splitRootModuleFromGroup(splitGroup: ExternalObjectGroup, newGroupedRootModules: ExternalObjectGroup[]): Promise<void>;
3501
3594
  duplicateGroup(duplicatedGroup: ExternalObjectGroup): Promise<void>;
3595
+ adjustGroup(groupId: string): Promise<void>;
3502
3596
  swapRootModule(groupId: string, rootModuleId: string, articleId: string): Promise<void>;
3503
3597
  modifyAttribute(groupId: string, moduleIdObjects: ExternalModuleInformation_2[], attributeName: string, value: string): Promise<void>;
3504
3598
  updateAttribute(rootModuleId: string, moduleId: string | null, attributeId: string, attributeValue: string | boolean): Promise<void>;
@@ -3519,8 +3613,9 @@ export declare interface GlueLogic {
3519
3613
  getSaveDataGroups(): Promise<PosGroup[] | null>;
3520
3614
  getSubArticleId(id: string): string | undefined;
3521
3615
  newPosDataFromId(id: string): Promise<PosGroup | undefined>;
3616
+ newPosDataFromArticleLayout(articleLayoutJson: ExternalObjectGroupLayout, layoutType: string, posArticles?: PosArticle[]): Promise<PosGroup | undefined>;
3522
3617
  newPosDataFromGroup(posDataJson: PosGroup): Promise<PosGroup>;
3523
- getGroupDataForOrder(roomlePlannerId?: string): Promise<HiOrderData | null>;
3618
+ getGroupDataForOrder(options: GetGroupDataForOrderOptions): Promise<HiOrderData | null>;
3524
3619
  getMaterialUrl(materialId: string, groupOrModuleId?: string): string | null;
3525
3620
  }
3526
3621
 
@@ -3753,6 +3848,7 @@ export declare const HI_CONTEXT_ACTION: {
3753
3848
 
3754
3849
  export declare const HI_LOAD_OBJECT_REASON: {
3755
3850
  readonly ADD_SUBARTICLE: "add_subarticle";
3851
+ readonly ADJUSTED: "adjusted";
3756
3852
  readonly ARRANGED: "arranged";
3757
3853
  readonly CHANGE_ATTRIBUTE: "change_attribute";
3758
3854
  readonly CHANGE_META: "change_meta";
@@ -4039,6 +4135,7 @@ export declare class InitData implements Context, Omit<InitDataDefinition, 'colo
4039
4135
  lockPlan: boolean;
4040
4136
  readonly?: boolean;
4041
4137
  externalObjectSettings?: ExternalObjectApiConfiguration;
4138
+ plannerIsolationConfigurator?: boolean;
4042
4139
  /**
4043
4140
  * If true, the callbacks will only be called if the geometry is ready.
4044
4141
  * Before RML-8368 false was the default. For more info see there
@@ -4522,6 +4619,7 @@ export declare interface KernelParameter {
4522
4619
  viewType: KernelViewType;
4523
4620
  source: 'external' | 'internal';
4524
4621
  level?: number;
4622
+ objectIds: number[];
4525
4623
  }
4526
4624
 
4527
4625
  export declare interface KernelParameterGroup {
@@ -4734,10 +4832,12 @@ export declare interface LibraryData {
4734
4832
  libraryId: string;
4735
4833
  get masterData(): MasterData | null;
4736
4834
  get posGroupVersion(): number;
4835
+ initializePosGroup(posGroup: PosGroup): void;
4737
4836
  calculateGroup(posGroup: PosGroup): PosGroup;
4738
4837
  getOrderData(posGroup: PosGroup[], roomlePlannerId?: string, rooms?: PosContour[]): any;
4739
4838
  getAttributesDropDownValues(module: PosModuleData, attributeIds?: string | string[]): Promise<Record<string, HiAttributeOptionsResult>>;
4740
4839
  solveModuleAttributeConflict(module: PosModuleData, attributeName: string, value: string | number | boolean): PosModuleAttribute[] | undefined;
4840
+ groupAdjust(posGroup: PosGroup, articles: PosArticle[], roomInformation: PosRoom): PosGroup;
4741
4841
  getValidSubArticles(calculatedPosGroup: PosGroup, articles: PosArticle[], masterData: MasterData): PosArticle[];
4742
4842
  getValidContainerModulesForSubArticle(calculatedPosGroup: PosGroup, subArticle: PosArticle, masterData: MasterData): ExternalObjectValidContainerModules[];
4743
4843
  addSubArticle(targetPosGroup: PosGroup, article: PosArticle, rootId: string, parentModuleId: string, insertPosition?: number[]): PosGroup;
@@ -4762,7 +4862,8 @@ export declare class LightCache {
4762
4862
  activeLights: Map<string, Light>;
4763
4863
  maximumLights: number;
4764
4864
  private readonly _inactivePosition;
4765
- constructor(scene: Scene, maxAnisotropy: number);
4865
+ constructor(scene: Scene, renderer: WebGLRenderer | WebGPURenderer, maxAnisotropy: number);
4866
+ private registerWebGPULightNodes;
4766
4867
  allowedToSpawnMoreLights(): boolean;
4767
4868
  addActiveLight(light: Light): void;
4768
4869
  cacheLight(light: Light): void;
@@ -4963,6 +5064,12 @@ export declare interface MDModuleInfo {
4963
5064
  group?: string;
4964
5065
  imageUrl?: string;
4965
5066
  assignedAttributes: string[];
5067
+ allowedChildModules?: string[];
5068
+ isRoot?: boolean;
5069
+ isConfigDummy?: boolean;
5070
+ isDropContainer?: boolean;
5071
+ isGroupOrchestrator?: boolean;
5072
+ moduleType?: 'RootModule' | 'SubModule' | 'DropContainer' | 'GroupOrchestrator';
4966
5073
  }
4967
5074
 
4968
5075
  export declare interface MDNumberMinMaxAttributeSelection {
@@ -5148,6 +5255,12 @@ export declare abstract class Node_2 extends PlanElement {
5148
5255
  getMaxWallHeight(): number;
5149
5256
  }
5150
5257
 
5258
+ export declare interface NodeDimensionTransferable {
5259
+ id: number;
5260
+ position2d: Position2;
5261
+ zCoordinate: number;
5262
+ }
5263
+
5151
5264
  export declare class NodePlanElementViewModel extends PlanElementViewModel {
5152
5265
  private _nodeUiMesh;
5153
5266
  constructor(planObject: PlanObject);
@@ -5219,6 +5332,10 @@ export declare const enum OBJECT_EVENT {
5219
5332
  ROTATE = "rotate"
5220
5333
  }
5221
5334
 
5335
+ export declare interface ObjectCategory {
5336
+ value: Enumify_3<typeof CORE_OBJECT_CATEGORY>;
5337
+ }
5338
+
5222
5339
  export declare interface ObjectConfigurationType {
5223
5340
  value: Enumify_3<typeof CONFIGURATION_TYPE>;
5224
5341
  }
@@ -5275,6 +5392,11 @@ export declare interface OffsetCamera {
5275
5392
  export declare interface OrthographicOffsetCamera extends OrthographicCamera, OffsetCamera {
5276
5393
  }
5277
5394
 
5395
+ export declare interface OutlineColors {
5396
+ outlineVisibleEdgeColor: ColorRepresentation;
5397
+ outlineHiddenEdgeColor: ColorRepresentation;
5398
+ }
5399
+
5278
5400
  export declare interface OutlineCustomParameters {
5279
5401
  outlineVisibleEdgeColor: ColorRepresentation;
5280
5402
  outlineHiddenEdgeColor: ColorRepresentation;
@@ -5407,6 +5529,11 @@ export declare const PLAN_ELEMENT_CHANGE_TYPES: {
5407
5529
  readonly REMOVED: "removed";
5408
5530
  };
5409
5531
 
5532
+ export declare const PLAN_ROOM_GEOMETRY_MODE: {
5533
+ readonly FLOOR: "floor";
5534
+ readonly ROOM: "room";
5535
+ };
5536
+
5410
5537
  export declare abstract class PlanElement extends AbstractModelWrapper {
5411
5538
  isLocked: boolean;
5412
5539
  isValid: boolean;
@@ -5642,9 +5769,11 @@ export declare interface PlanModelViewHelper_2 {
5642
5769
  getExternalObjectComponent(plan: Plan_2, groupId: string, moduleId: string): KernelPlanObjectComponent;
5643
5770
  requestMesh3d(element: PlanElement_2): void;
5644
5771
  getExternalObjectGroups(plan: Plan_2): KernelObjectConfigurationArray;
5645
- getExternalRoomInformation(plan: Plan_2): RoomInformation;
5772
+ getExternalRoomInformation(plan: Plan_2, mode: PlanRoomGeometryMode_2): RoomInformation;
5773
+ getGroupedObjects(anObject: PlanObject): KernelPlanObject[];
5646
5774
  calculateLightSourceDistribution(plan: Plan_2, lightSourceConfiguration: LightSourceConfiguration): RoomLightSourceDistributionArray;
5647
5775
  getObjectSnapInformation(anObject: PlanObject, debugHelpLines: boolean): ObjectSnapInformation;
5776
+ getElevationViews(plan: Plan_2): ElevationView[];
5648
5777
  }
5649
5778
 
5650
5779
  export declare class Planner<P extends readonly PluginName[] = readonly []> extends Main {
@@ -6001,6 +6130,7 @@ export declare class PlannerSceneEventHandler extends SceneEventHandler<SceneEve
6001
6130
  private _selectElement;
6002
6131
  private _handleSingleClick;
6003
6132
  private _isObjectOrSiblingSelected;
6133
+ private _toggleGroupSelection;
6004
6134
  getRootPlanObjectId(id: number): number;
6005
6135
  private _doubleClickElement;
6006
6136
  private _hoverOn;
@@ -6010,7 +6140,7 @@ export declare class PlannerSceneEventHandler extends SceneEventHandler<SceneEve
6010
6140
  private _isHoveredObjectNonDraggable;
6011
6141
  private _setCursor;
6012
6142
  setCamera(camera: Camera): void;
6013
- setObject(object: Object3D): void;
6143
+ setObject(object: Object3D, secondaryObject?: Object3D): void;
6014
6144
  getSelectedIds(): number[];
6015
6145
  setSelectionMode(selectionMode: SELECTION_MODE): void;
6016
6146
  setPlanViewModel(planViewModel: PlanViewModel): void;
@@ -6120,6 +6250,7 @@ export declare class PlannerSceneManager extends ConfiguratorSceneManager implem
6120
6250
  private _getDragPosition;
6121
6251
  private _hideAllMeasurementsNodeOnElementChange;
6122
6252
  private _onSelectionChange;
6253
+ planObjectDependencyUpdated(planObjectId: number): void;
6123
6254
  private _onSelectionCancel;
6124
6255
  private _handleMeasurementLineDraggablePoints;
6125
6256
  resetConfiguratorContext(reason: CancelSelectionReasons): void;
@@ -6229,7 +6360,12 @@ export declare class PlannerSceneManager extends ConfiguratorSceneManager implem
6229
6360
  enableChildObjects(planElementViewModel: PlanElementViewModel): KernelObject | null;
6230
6361
  disableChildObjects(planElementViewModel: PlanElementViewModel): KernelObject | null;
6231
6362
  dragIn(dragEvent: DragEvent): void;
6232
- getPositionForDragEvent(dragEvent: DragEvent | TouchEvent): Vector3 | null;
6363
+ getPositionForDragEvent(dragEvent: DragEvent | TouchEvent | {
6364
+ clientX: number;
6365
+ clientY: number;
6366
+ }): Vector3 | null;
6367
+ getPositionForLastPointer(): Vector3 | null;
6368
+ isPointerUp(): boolean;
6233
6369
  getPlannerSceneEventHandler(): PlannerSceneEventHandler;
6234
6370
  disablePlannerEvents(): void;
6235
6371
  enablePlannerEvents(): void;
@@ -6317,13 +6453,15 @@ export declare class PlannerSceneManager extends ConfiguratorSceneManager implem
6317
6453
  setObjectToWallMeasurementLength(planElementId: number, measurementId: number, length: number): void;
6318
6454
  setWallMeasurementLength(measurementId: number, length: number, wallDirection: EMSConstant): void;
6319
6455
  setMeasurementLineLength(measurementId: number, length: number, wallDirection: string): void;
6320
- protected setEventHandlerObject(object: Object3D): void;
6456
+ setNodeZCoordinate(nodeId: number, z: number): void;
6457
+ protected setEventHandlerObject(object: Object3D, secondaryObject?: Object3D): void;
6321
6458
  protected _readyForRender(): void;
6322
6459
  protected notifyPlannerOnComponentSelectionCancel(isExternalObject: boolean, reason: CancelSelectionReasons): void;
6323
6460
  private _externalPlanObjectSelectionChanged;
6324
6461
  highlightExternalObject(planObjectComponent: KernelPlanObjectComponent): void;
6325
6462
  private _selectExternalObjectComponent;
6326
6463
  getSelectedPlanObjectComponent(): KernelPlanObjectComponent | null;
6464
+ switchConfiguratorObject(clickedComponentId: number): Promise<void>;
6327
6465
  selectObjectComponent(planObjectComponent: KernelPlanObjectComponent, switchToConfigurator: boolean, selectComponent: boolean): Promise<void>;
6328
6466
  _swapObjectInConfigurator(planObjectComponent: KernelPlanObjectComponent): Promise<void>;
6329
6467
  getObjectComponent(id: number, typeOfId: Enumify_2<typeof CORE_TYPE_OF_CORE_ID>): KernelPlanObjectComponent | null;
@@ -6357,12 +6495,14 @@ export declare interface PlanObject extends PlanElement_2 {
6357
6495
  boxForMeasurement: KernelCube;
6358
6496
  measurementBounds: KernelAssembledObjectBounds;
6359
6497
  hasConfiguration(): boolean;
6498
+ isAdjustable(): boolean;
6360
6499
  isExternalObject(): boolean;
6361
6500
  retrieveConfigurationId(): ConfigurationUniqueIdAndHash;
6362
6501
  getConfiguration(): string;
6363
6502
  getCatalogItemId(): string;
6364
6503
  getConfigurationRuntimeId(): number;
6365
6504
  getObjectType(): string;
6505
+ getObjectCategory(): ObjectCategory;
6366
6506
  getWallDistances(): ObjectToWallLineArray;
6367
6507
  getRectangle(): Rectangle;
6368
6508
  getRotationToPreferredFront(): ObjectFrontRotation;
@@ -6444,6 +6584,12 @@ export declare interface PlanOverview {
6444
6584
  rooms: PlanElement_2[];
6445
6585
  }
6446
6586
 
6587
+ export declare type PlanRoomGeometryMode = (typeof PLAN_ROOM_GEOMETRY_MODE)[keyof typeof PLAN_ROOM_GEOMETRY_MODE];
6588
+
6589
+ export declare interface PlanRoomGeometryMode_2 {
6590
+ value: Enumify_3<typeof CORE_PLAN_ROOM_GEOMETRY_MODE>;
6591
+ }
6592
+
6447
6593
  export declare abstract class PlanText extends PlanElement {
6448
6594
  getText(): string;
6449
6595
  }
@@ -6698,12 +6844,14 @@ export declare const enum PosDock {
6698
6844
 
6699
6845
  export declare interface PosDockedContext {
6700
6846
  ownDockingVector: PosDock | string;
6847
+ ownDockingVectorIndex: number;
6701
6848
  dockedRoots: PosDockedContextRoot[];
6702
6849
  }
6703
6850
 
6704
6851
  export declare interface PosDockedContextRoot {
6705
6852
  id: string;
6706
6853
  dockingVector: PosDock | string;
6854
+ dockingVectorIndex: number;
6707
6855
  }
6708
6856
 
6709
6857
  export declare interface PosDockInfo {
@@ -6858,6 +7006,10 @@ export declare interface PosPositionInfo extends PosArticleInfo {
6858
7006
  additionalText?: string;
6859
7007
  }
6860
7008
 
7009
+ export declare interface PosRoom {
7010
+ levels: PosContour[];
7011
+ }
7012
+
6861
7013
  export declare interface PosSaveData {
6862
7014
  groups: PosGroup[];
6863
7015
  roomlePlannerId?: string;
@@ -7067,6 +7219,7 @@ export declare class RapiAccess implements Context {
7067
7219
  constructor(creator: string);
7068
7220
  setConfiguratorSettings(): Promise<void>;
7069
7221
  getTenantId(): Promise<number>;
7222
+ getCurrentTenantId(fallbackTenantId?: number | null): Promise<CurrentTenantId>;
7070
7223
  getPreloadForItem(id: RapiId): Promise<void>;
7071
7224
  getPreloadForConfiguration(id: RapiId): Promise<void>;
7072
7225
  private _getPreload;
@@ -7658,6 +7811,7 @@ export declare type RayCasterObjectFilter = (object3d: Object3D) => boolean;
7658
7811
  export declare class RaycastHelper extends EventDispatcher<Record<RAYCAST_EVENT, SceneEventInfo>> {
7659
7812
  private _mode;
7660
7813
  private _object;
7814
+ private _secondaryObject?;
7661
7815
  private _camera;
7662
7816
  private _inputManager;
7663
7817
  private _raycaster;
@@ -7700,7 +7854,7 @@ export declare class RaycastHelper extends EventDispatcher<Record<RAYCAST_EVENT,
7700
7854
  enableDragIn(mesh: RoomleEventedMesh): void;
7701
7855
  setRootComponentId(rootComponentId: number): void;
7702
7856
  setCamera(camera: Camera): void;
7703
- setObject(object: Object3D): void;
7857
+ setObject(object: Object3D, secondaryObject?: Object3D): void;
7704
7858
  setMode(mode: INTERSECTION_MODE): void;
7705
7859
  intersectMouseOnScene(event: Pick<PointerInputEvent, 'positionRelative'>): KernelVector3 | null;
7706
7860
  enableOnWallSnapping(): void;
@@ -7757,7 +7911,7 @@ export declare class RoomDesignerApi implements RoomDesignerRequests {
7757
7911
  deleteGroup(groupId: string): void;
7758
7912
  deleteRootModule(rootModuleId: string): void;
7759
7913
  getPosDataOfAllGroups(): Promise<PosGroup[]>;
7760
- getRoomInformation(): Promise<ExternalRoomInformation>;
7914
+ getRoomInformation(mode?: PlanRoomGeometryMode): Promise<ExternalRoomInformation>;
7761
7915
  saveExternalObjectSnapshot(): Promise<ExternalObjectSnapshotSaveResult | null>;
7762
7916
  saveCurrentPlanSnapshot(): Promise<RapiPlanSnapshotGetData>;
7763
7917
  renderPosDataImage(posDataJson: object): Promise<void>;
@@ -7774,7 +7928,7 @@ export declare interface RoomDesignerRequests {
7774
7928
  deleteGroup(groupId: string): void;
7775
7929
  deleteRootModule(rootModuleId: string): void;
7776
7930
  getPosDataOfAllGroups(): Promise<PosGroup[]>;
7777
- getRoomInformation(): Promise<ExternalRoomInformation>;
7931
+ getRoomInformation(mode?: PlanRoomGeometryMode): Promise<ExternalRoomInformation>;
7778
7932
  saveExternalObjectSnapshot(): Promise<ExternalObjectSnapshotSaveResult | null>;
7779
7933
  }
7780
7934
 
@@ -7782,9 +7936,16 @@ export declare class RoomGeometryArray extends EmsArray<PosContour> {
7782
7936
  }
7783
7937
 
7784
7938
  export declare interface RoomInformation {
7939
+ rooms: RoomInformationRoomArray;
7940
+ }
7941
+
7942
+ export declare interface RoomInformationRoom {
7785
7943
  rooms: RoomGeometryArray;
7786
7944
  }
7787
7945
 
7946
+ export declare class RoomInformationRoomArray extends EmsArray<RoomInformationRoom> {
7947
+ }
7948
+
7788
7949
  /**
7789
7950
  * Colors can be set as hex value, eg 0x00ff00 or as official HTML color name: https://www.w3schools.com/colors/colors_names.asp
7790
7951
  */
@@ -8943,6 +9104,11 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
8943
9104
  * @param itemList Array of PlanObjects
8944
9105
  */
8945
9106
  mergeItems(itemList: PlanObject[]): void;
9107
+ /**
9108
+ * Adjust plan object to planning situation
9109
+ * @param item PlanObject
9110
+ */
9111
+ adjustItem(item: PlanObject): Promise<void>;
8946
9112
  getScene(): Scene;
8947
9113
  getSceneManager(): PlannerSceneManager;
8948
9114
  updateScene(): void;
@@ -8987,7 +9153,10 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
8987
9153
  */
8988
9154
  disableMultiselect(): void;
8989
9155
  private _insertExternalObject;
8990
- dragInObject(idOrSerializedConfigString: string, dragEvent: DragEvent, type?: ID_TYPE): Promise<RuntimeId>;
9156
+ dragInObject(idOrSerializedConfigString: string, dragEvent: DragEvent, type?: ID_TYPE, pointerPosition?: {
9157
+ clientX: number;
9158
+ clientY: number;
9159
+ }): Promise<RuntimeId>;
8991
9160
  /**
8992
9161
  * Will remove an element that was dragged into the scene while still dragging it.
8993
9162
  * This is mainly used in the context of pressing ESC while dragging or dragging the element away from the scene again.
@@ -9132,6 +9301,7 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
9132
9301
  setObjectToWallMeasurementLength(planElementId: number, measurementId: number, length: number): void;
9133
9302
  setWallMeasurementLength(measurementId: number, length: number, wallDirection: EMSConstant): void;
9134
9303
  setMeasurementLineLength(measurementId: number, length: number, wallDirection: string): void;
9304
+ setNodeZCoordinate(nodeId: number, z: number): void;
9135
9305
  escapeDrawing(cancelDrawing: boolean): void;
9136
9306
  isCurrentlyDrawing(): boolean;
9137
9307
  /**
@@ -9151,6 +9321,7 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
9151
9321
  getInitialExternalObjectGroup(): Promise<PosGroup | null>;
9152
9322
  loadNewExternalObjectInIsolation(groupObject: object): Promise<LoadExternalObjectGroupResult[]>;
9153
9323
  loadExternalObjectGroups(groupData: ExternalGroupData, options?: LoadExternalObjectOptions): Promise<LoadExternalObjectGroupResult[]>;
9324
+ loadExternalObjectGroupLayout(articleLayoutJson: ExternalObjectGroupLayout, layoutType: string, options?: LoadExternalObjectOptions): Promise<LoadExternalObjectGroupResult[]>;
9154
9325
  private _loadExternalObjectGroup;
9155
9326
  private _loadExternalObjectGroupInConfigurator;
9156
9327
  private _loadExternalObjectGroupInPlanner;
@@ -9176,7 +9347,7 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
9176
9347
  openOrCloseGeometryOfExternalObject(groupIdOrRootModuleId: string, _subModuleId: string | null, open: boolean, animate: boolean): void;
9177
9348
  _selectExternalObjectGroup(groupId: string, switchToPlanner: boolean): Promise<void>;
9178
9349
  getExternalObjectGroups(): Promise<object[]>;
9179
- getExternalRoomInformation(): Promise<ExternalRoomInformation>;
9350
+ getExternalRoomInformation(mode?: PlanRoomGeometryMode): Promise<ExternalRoomInformation>;
9180
9351
  /**
9181
9352
  * Highlights a product in the planner.
9182
9353
  * @param planElementId The ID of the plan element to highlight.
@@ -9300,7 +9471,7 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
9300
9471
  * @param orderHeader optional order header information
9301
9472
  */
9302
9473
  fetchPrice(planId?: string, orderHeader?: HiOrderHeader): Promise<any>;
9303
- getOrderManagerGroupData(planId?: string): Promise<HiOrderData | null | undefined>;
9474
+ getOrderManagerGroupData(options?: GetGroupDataForOrderOptions): Promise<HiOrderData | null | undefined>;
9304
9475
  getRapiAccess(): RapiAccess;
9305
9476
  getElementOpenCloseAnimation(planElement: PlanElementViewModel, componentIds?: number[]): AnimationKeyAndValue | null;
9306
9477
  /**
@@ -9394,6 +9565,12 @@ export declare class RoomlePlannerUiCallback extends UiCallback implements Exter
9394
9565
  * @param wallDimensions
9395
9566
  */
9396
9567
  onUpdateWallDimensions: (wallDimensions: WallDimensionTransferable[]) => void;
9568
+ /**
9569
+ * This function gets called when the camera is no longer moving
9570
+ * and the position of node dimensions can be calculated
9571
+ * @param nodeDimensions
9572
+ */
9573
+ onUpdateNodeDimensions: (nodeDimensions: NodeDimensionTransferable[]) => void;
9397
9574
  /**
9398
9575
  * This function gets called when the camera is no longer moving
9399
9576
  * and the position of the measurement line dimensions can be calculated
@@ -9598,10 +9775,9 @@ export declare class RoomleWebGPURenderer extends RoomleRenderer<WebGPURenderer>
9598
9775
  private readonly guiParameterGroups;
9599
9776
  private lastRenderCamera;
9600
9777
  private _domHelper;
9601
- constructor(creator: string, renderer: WebGPURenderer, enableSSGI: boolean, outlineColors?: {
9602
- outlineVisibleEdgeColor: ColorRepresentation;
9603
- outlineHiddenEdgeColor: ColorRepresentation;
9604
- });
9778
+ private _webGpuGroundShadow;
9779
+ constructor(creator: string, renderer: WebGPURenderer, enableSSGI: boolean, outlineColors?: OutlineColors);
9780
+ private enableRenderPasses;
9605
9781
  addGroundShadowLightAndFloor(scene: Scene): void;
9606
9782
  private addRenderPass;
9607
9783
  clearCache(): void;
@@ -9609,6 +9785,7 @@ export declare class RoomleWebGPURenderer extends RoomleRenderer<WebGPURenderer>
9609
9785
  enableUiInteractionMode(): void;
9610
9786
  getQualityLevel(): QualityLevel;
9611
9787
  setCameraType(cameraType: Enumify_2<typeof CAMERA_TYPE>): void;
9788
+ switchToConfigurator(): void;
9612
9789
  switchToPlanner(renderMode: PlannerRenderMode): void;
9613
9790
  highlightObjects(selectedMeshes: Object3D[]): void;
9614
9791
  loadLutImages(_luts: LutImageDefinition[]): void;
@@ -9618,16 +9795,18 @@ export declare class RoomleWebGPURenderer extends RoomleRenderer<WebGPURenderer>
9618
9795
  setAutoQuality(_autoQuality: boolean): void;
9619
9796
  setCustomShadingParameters(_customShadingParameters: CustomShadingParameters | undefined, _customShadingParametersMoc: CustomShadingParameters | undefined): void;
9620
9797
  setCustomOutlineParameters(customOutlineParameters: OutlineCustomParameters): void;
9621
- setGroundShadow(enabled: boolean, scene: Scene): void;
9798
+ setGroundShadow(enabled: boolean, _scene: Scene): void;
9622
9799
  setOnQualityLevelChangeCallback(_callback: (qualityLevel: QualityLevel) => void): void;
9623
9800
  private enableOutline;
9624
9801
  private getOutlinePassOrUndefined;
9625
9802
  private enableSsgiPass;
9803
+ private enableTraaPass;
9626
9804
  setQualityLevel(_qualityLevel: QualityLevel): void;
9627
9805
  setQualityMap(_qualityMap: QualityMap): void;
9628
- setShadingType(_shadingType: SceneShadingType): void;
9806
+ setShadingType(shadingType: SceneShadingType): void;
9629
9807
  showGUI(updateCallback: () => void): void;
9630
9808
  private addDebugGUI;
9809
+ private addToneMappingSettings;
9631
9810
  getOrCreateGUIParameters(name: string): ParametersGroup;
9632
9811
  private createAndCacheGUIParameters;
9633
9812
  }
@@ -9770,6 +9949,7 @@ export declare abstract class SceneManager implements Context, LifeCycleCallback
9770
9949
  protected _stopRendering: boolean;
9771
9950
  protected _roomleRenderer: GenericRoomleRenderer | null;
9772
9951
  private _roomleRendererReady;
9952
+ private _isDebugGUIInitialized;
9773
9953
  private _forceRender;
9774
9954
  private _lastChange;
9775
9955
  private _running;