@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;
@@ -2891,6 +2935,13 @@ export declare interface ExternalObjectAPI {
2891
2935
  * @param options Options for loading the external object groups.
2892
2936
  */
2893
2937
  loadExternalObjectGroups(groupJson: ExternalGroupData, options: LoadExternalObjectOptions): Promise<LoadExternalObjectGroupResult[]>;
2938
+ /**
2939
+ * "loadExternalObjectGroupLayout" creates and loads a group of modules from an article layout.
2940
+ * @param articleLayoutJson The article layout JSON as object.
2941
+ * @param layoutType The article layout type. Only "nobila" is supported at the moment.
2942
+ * @param options Options for loading the external object group.
2943
+ */
2944
+ loadExternalObjectGroupLayout(articleLayoutJson: ExternalObjectGroupLayout, layoutType: string, options?: LoadExternalObjectOptions): Promise<LoadExternalObjectGroupResult[]>;
2894
2945
  /**
2895
2946
  * "updateExternalObjectGroupAttribute" modifies an attribute of a root module or sub module.
2896
2947
  * The attribute with the ID "attributeId" of the sub module with the ID "moduleId"
@@ -2983,7 +3034,7 @@ export declare interface ExternalObjectAPI {
2983
3034
  /**
2984
3035
  * "getExternalRoomInformation" returns the room information for currently loaded in the plan.
2985
3036
  */
2986
- getExternalRoomInformation(): Promise<ExternalRoomInformation>;
3037
+ getExternalRoomInformation(mode?: PlanRoomGeometryMode): Promise<ExternalRoomInformation>;
2987
3038
  /**
2988
3039
  * It generates a snapshot of the external object in the plan without saving any data.
2989
3040
  * By default, the snapshot includes order data, room information, the plan XML, GLBs of the complete scene,
@@ -3035,10 +3086,12 @@ export declare interface ExternalObjectDebugConfiguration {
3035
3086
  export declare interface ExternalObjectDockedContext {
3036
3087
  dockedRoots: ExternalObjectDockedRootModule[];
3037
3088
  ownDockingVector: string;
3089
+ ownDockingVectorIndex: number;
3038
3090
  }
3039
3091
 
3040
3092
  export declare interface ExternalObjectDockedRootModule {
3041
3093
  dockingVector: string;
3094
+ dockingVectorIndex: number;
3042
3095
  id: string;
3043
3096
  }
3044
3097
 
@@ -3051,6 +3104,41 @@ export declare interface ExternalObjectGroup {
3051
3104
  contextData?: ExternalObjectContextDataItem[];
3052
3105
  }
3053
3106
 
3107
+ export declare interface ExternalObjectGroupLayout {
3108
+ [key: string]: unknown;
3109
+ shapes?: ExternalObjectGroupLayoutShape[];
3110
+ }
3111
+
3112
+ export declare interface ExternalObjectGroupLayoutArticle {
3113
+ [key: string]: unknown;
3114
+ name?: string;
3115
+ position?: Partial<Position3>;
3116
+ rotation?: number | null;
3117
+ dimensions?: ExternalObjectGroupLayoutDimensions;
3118
+ hingeId?: string | null;
3119
+ constructionId?: string | null;
3120
+ }
3121
+
3122
+ export declare type ExternalObjectGroupLayoutAttributeValue = string | number | boolean;
3123
+
3124
+ export declare interface ExternalObjectGroupLayoutDimensions {
3125
+ [key: string]: ExternalObjectGroupLayoutAttributeValue | null | undefined;
3126
+ b?: ExternalObjectGroupLayoutAttributeValue | null;
3127
+ h?: ExternalObjectGroupLayoutAttributeValue | null;
3128
+ t?: ExternalObjectGroupLayoutAttributeValue | null;
3129
+ }
3130
+
3131
+ export declare interface ExternalObjectGroupLayoutShape {
3132
+ [key: string]: unknown;
3133
+ sides?: ExternalObjectGroupLayoutSide[];
3134
+ bespokeArticles?: ExternalObjectGroupLayoutArticle[];
3135
+ }
3136
+
3137
+ export declare interface ExternalObjectGroupLayoutSide {
3138
+ [key: string]: unknown;
3139
+ articles?: ExternalObjectGroupLayoutArticle[];
3140
+ }
3141
+
3054
3142
  export declare interface ExternalObjectLoadConfiguration {
3055
3143
  applyGlobalChildMode: boolean;
3056
3144
  correctArrangement: boolean;
@@ -3112,7 +3200,7 @@ export declare interface ExternalObjectSnapshotData {
3112
3200
  }
3113
3201
 
3114
3202
  export declare interface ExternalObjectSnapshotRequest {
3115
- orderData?: boolean;
3203
+ orderData?: boolean | PlanRoomGeometryMode;
3116
3204
  planXML?: boolean;
3117
3205
  objectGlb?: boolean;
3118
3206
  perspectiveImage?: boolean;
@@ -3184,7 +3272,7 @@ export declare class ExternalReference {
3184
3272
  export declare type ExternalResponseValidator = (type: 'rapi-access', response: Response) => Promise<boolean>;
3185
3273
 
3186
3274
  export declare interface ExternalRoomInformation {
3187
- rooms: PosContour[];
3275
+ rooms: PosRoom[];
3188
3276
  }
3189
3277
 
3190
3278
  export declare type ExternalTag = Partial<RapiTag> & Pick<RapiTag, 'label'> & {
@@ -3308,6 +3396,11 @@ export declare class GeometryHelpLineArray extends EmsArray<GeometryHelpLine> {
3308
3396
 
3309
3397
  export declare const getCatalogIdFromConfigurationHash: (id: RapiId) => RapiId | null;
3310
3398
 
3399
+ export declare interface GetGroupDataForOrderOptions {
3400
+ roomlePlannerId?: string;
3401
+ mode?: PlanRoomGeometryMode;
3402
+ }
3403
+
3311
3404
  export declare interface GLBRenderWorkerListener {
3312
3405
  onStart(count: number): void;
3313
3406
  onElementFinished(finishedElements: number): void;
@@ -3495,6 +3588,7 @@ export declare interface GlueLogic {
3495
3588
  deleteRootModule(remainingGroup: ExternalObjectGroup, rootModuleIdToDelete: string, splitOffGroups: ExternalObjectGroup[]): Promise<void>;
3496
3589
  splitRootModuleFromGroup(splitGroup: ExternalObjectGroup, newGroupedRootModules: ExternalObjectGroup[]): Promise<void>;
3497
3590
  duplicateGroup(duplicatedGroup: ExternalObjectGroup): Promise<void>;
3591
+ adjustGroup(groupId: string): Promise<void>;
3498
3592
  swapRootModule(groupId: string, rootModuleId: string, articleId: string): Promise<void>;
3499
3593
  modifyAttribute(groupId: string, moduleIdObjects: ExternalModuleInformation_2[], attributeName: string, value: string): Promise<void>;
3500
3594
  updateAttribute(rootModuleId: string, moduleId: string | null, attributeId: string, attributeValue: string | boolean): Promise<void>;
@@ -3515,8 +3609,9 @@ export declare interface GlueLogic {
3515
3609
  getSaveDataGroups(): Promise<PosGroup[] | null>;
3516
3610
  getSubArticleId(id: string): string | undefined;
3517
3611
  newPosDataFromId(id: string): Promise<PosGroup | undefined>;
3612
+ newPosDataFromArticleLayout(articleLayoutJson: ExternalObjectGroupLayout, layoutType: string, posArticles?: PosArticle[]): Promise<PosGroup | undefined>;
3518
3613
  newPosDataFromGroup(posDataJson: PosGroup): Promise<PosGroup>;
3519
- getGroupDataForOrder(roomlePlannerId?: string): Promise<HiOrderData | null>;
3614
+ getGroupDataForOrder(options: GetGroupDataForOrderOptions): Promise<HiOrderData | null>;
3520
3615
  getMaterialUrl(materialId: string, groupOrModuleId?: string): string | null;
3521
3616
  }
3522
3617
 
@@ -3549,6 +3644,7 @@ export declare const HI_CONTEXT_ACTION: {
3549
3644
 
3550
3645
  export declare const HI_LOAD_OBJECT_REASON: {
3551
3646
  readonly ADD_SUBARTICLE: "add_subarticle";
3647
+ readonly ADJUSTED: "adjusted";
3552
3648
  readonly ARRANGED: "arranged";
3553
3649
  readonly CHANGE_ATTRIBUTE: "change_attribute";
3554
3650
  readonly CHANGE_META: "change_meta";
@@ -3828,6 +3924,7 @@ export declare class InitData implements Context, Omit<InitDataDefinition, 'colo
3828
3924
  lockPlan: boolean;
3829
3925
  readonly?: boolean;
3830
3926
  externalObjectSettings?: ExternalObjectApiConfiguration;
3927
+ plannerIsolationConfigurator?: boolean;
3831
3928
  /**
3832
3929
  * If true, the callbacks will only be called if the geometry is ready.
3833
3930
  * Before RML-8368 false was the default. For more info see there
@@ -4311,6 +4408,7 @@ export declare interface KernelParameter {
4311
4408
  viewType: KernelViewType;
4312
4409
  source: 'external' | 'internal';
4313
4410
  level?: number;
4411
+ objectIds: number[];
4314
4412
  }
4315
4413
 
4316
4414
  export declare interface KernelParameterGroup {
@@ -4523,10 +4621,12 @@ export declare interface LibraryData {
4523
4621
  libraryId: string;
4524
4622
  get masterData(): MasterData | null;
4525
4623
  get posGroupVersion(): number;
4624
+ initializePosGroup(posGroup: PosGroup): void;
4526
4625
  calculateGroup(posGroup: PosGroup): PosGroup;
4527
4626
  getOrderData(posGroup: PosGroup[], roomlePlannerId?: string, rooms?: PosContour[]): any;
4528
4627
  getAttributesDropDownValues(module: PosModuleData, attributeIds?: string | string[]): Promise<Record<string, HiAttributeOptionsResult>>;
4529
4628
  solveModuleAttributeConflict(module: PosModuleData, attributeName: string, value: string | number | boolean): PosModuleAttribute[] | undefined;
4629
+ groupAdjust(posGroup: PosGroup, articles: PosArticle[], roomInformation: PosRoom): PosGroup;
4530
4630
  getValidSubArticles(calculatedPosGroup: PosGroup, articles: PosArticle[], masterData: MasterData): PosArticle[];
4531
4631
  getValidContainerModulesForSubArticle(calculatedPosGroup: PosGroup, subArticle: PosArticle, masterData: MasterData): ExternalObjectValidContainerModules[];
4532
4632
  addSubArticle(targetPosGroup: PosGroup, article: PosArticle, rootId: string, parentModuleId: string, insertPosition?: number[]): PosGroup;
@@ -4551,7 +4651,8 @@ export declare class LightCache {
4551
4651
  activeLights: Map<string, Light>;
4552
4652
  maximumLights: number;
4553
4653
  private readonly _inactivePosition;
4554
- constructor(scene: Scene, maxAnisotropy: number);
4654
+ constructor(scene: Scene, renderer: WebGLRenderer | WebGPURenderer, maxAnisotropy: number);
4655
+ private registerWebGPULightNodes;
4555
4656
  allowedToSpawnMoreLights(): boolean;
4556
4657
  addActiveLight(light: Light): void;
4557
4658
  cacheLight(light: Light): void;
@@ -4752,6 +4853,12 @@ export declare interface MDModuleInfo {
4752
4853
  group?: string;
4753
4854
  imageUrl?: string;
4754
4855
  assignedAttributes: string[];
4856
+ allowedChildModules?: string[];
4857
+ isRoot?: boolean;
4858
+ isConfigDummy?: boolean;
4859
+ isDropContainer?: boolean;
4860
+ isGroupOrchestrator?: boolean;
4861
+ moduleType?: 'RootModule' | 'SubModule' | 'DropContainer' | 'GroupOrchestrator';
4755
4862
  }
4756
4863
 
4757
4864
  export declare interface MDNumberMinMaxAttributeSelection {
@@ -4937,6 +5044,12 @@ export declare abstract class Node_2 extends PlanElement {
4937
5044
  getMaxWallHeight(): number;
4938
5045
  }
4939
5046
 
5047
+ export declare interface NodeDimensionTransferable {
5048
+ id: number;
5049
+ position2d: Position2;
5050
+ zCoordinate: number;
5051
+ }
5052
+
4940
5053
  export declare class NodePlanElementViewModel extends PlanElementViewModel {
4941
5054
  private _nodeUiMesh;
4942
5055
  constructor(planObject: PlanObject);
@@ -5008,6 +5121,10 @@ export declare const enum OBJECT_EVENT {
5008
5121
  ROTATE = "rotate"
5009
5122
  }
5010
5123
 
5124
+ export declare interface ObjectCategory {
5125
+ value: Enumify<typeof CORE_OBJECT_CATEGORY>;
5126
+ }
5127
+
5011
5128
  export declare interface ObjectConfigurationType {
5012
5129
  value: Enumify<typeof CONFIGURATION_TYPE>;
5013
5130
  }
@@ -5064,6 +5181,11 @@ export declare interface OffsetCamera {
5064
5181
  export declare interface OrthographicOffsetCamera extends OrthographicCamera, OffsetCamera {
5065
5182
  }
5066
5183
 
5184
+ export declare interface OutlineColors {
5185
+ outlineVisibleEdgeColor: ColorRepresentation;
5186
+ outlineHiddenEdgeColor: ColorRepresentation;
5187
+ }
5188
+
5067
5189
  export declare interface OutlineCustomParameters {
5068
5190
  outlineVisibleEdgeColor: ColorRepresentation;
5069
5191
  outlineHiddenEdgeColor: ColorRepresentation;
@@ -5192,6 +5314,11 @@ export declare const PLAN_ELEMENT_CHANGE_TYPES: {
5192
5314
  readonly REMOVED: "removed";
5193
5315
  };
5194
5316
 
5317
+ export declare const PLAN_ROOM_GEOMETRY_MODE: {
5318
+ readonly FLOOR: "floor";
5319
+ readonly ROOM: "room";
5320
+ };
5321
+
5195
5322
  export declare abstract class PlanElement extends AbstractModelWrapper {
5196
5323
  isLocked: boolean;
5197
5324
  isValid: boolean;
@@ -5427,9 +5554,11 @@ export declare interface PlanModelViewHelper_2 {
5427
5554
  getExternalObjectComponent(plan: Plan_2, groupId: string, moduleId: string): KernelPlanObjectComponent;
5428
5555
  requestMesh3d(element: PlanElement_2): void;
5429
5556
  getExternalObjectGroups(plan: Plan_2): KernelObjectConfigurationArray;
5430
- getExternalRoomInformation(plan: Plan_2): RoomInformation;
5557
+ getExternalRoomInformation(plan: Plan_2, mode: PlanRoomGeometryMode_2): RoomInformation;
5558
+ getGroupedObjects(anObject: PlanObject): KernelPlanObject[];
5431
5559
  calculateLightSourceDistribution(plan: Plan_2, lightSourceConfiguration: LightSourceConfiguration): RoomLightSourceDistributionArray;
5432
5560
  getObjectSnapInformation(anObject: PlanObject, debugHelpLines: boolean): ObjectSnapInformation;
5561
+ getElevationViews(plan: Plan_2): ElevationView[];
5433
5562
  }
5434
5563
 
5435
5564
  export declare class Planner<P extends readonly PluginName[] = readonly []> extends Main {
@@ -5786,6 +5915,7 @@ export declare class PlannerSceneEventHandler extends SceneEventHandler<SceneEve
5786
5915
  private _selectElement;
5787
5916
  private _handleSingleClick;
5788
5917
  private _isObjectOrSiblingSelected;
5918
+ private _toggleGroupSelection;
5789
5919
  getRootPlanObjectId(id: number): number;
5790
5920
  private _doubleClickElement;
5791
5921
  private _hoverOn;
@@ -5795,7 +5925,7 @@ export declare class PlannerSceneEventHandler extends SceneEventHandler<SceneEve
5795
5925
  private _isHoveredObjectNonDraggable;
5796
5926
  private _setCursor;
5797
5927
  setCamera(camera: Camera): void;
5798
- setObject(object: Object3D): void;
5928
+ setObject(object: Object3D, secondaryObject?: Object3D): void;
5799
5929
  getSelectedIds(): number[];
5800
5930
  setSelectionMode(selectionMode: SELECTION_MODE): void;
5801
5931
  setPlanViewModel(planViewModel: PlanViewModel): void;
@@ -5905,6 +6035,7 @@ export declare class PlannerSceneManager extends ConfiguratorSceneManager implem
5905
6035
  private _getDragPosition;
5906
6036
  private _hideAllMeasurementsNodeOnElementChange;
5907
6037
  private _onSelectionChange;
6038
+ planObjectDependencyUpdated(planObjectId: number): void;
5908
6039
  private _onSelectionCancel;
5909
6040
  private _handleMeasurementLineDraggablePoints;
5910
6041
  resetConfiguratorContext(reason: CancelSelectionReasons): void;
@@ -6014,7 +6145,12 @@ export declare class PlannerSceneManager extends ConfiguratorSceneManager implem
6014
6145
  enableChildObjects(planElementViewModel: PlanElementViewModel): KernelObject | null;
6015
6146
  disableChildObjects(planElementViewModel: PlanElementViewModel): KernelObject | null;
6016
6147
  dragIn(dragEvent: DragEvent): void;
6017
- getPositionForDragEvent(dragEvent: DragEvent | TouchEvent): Vector3 | null;
6148
+ getPositionForDragEvent(dragEvent: DragEvent | TouchEvent | {
6149
+ clientX: number;
6150
+ clientY: number;
6151
+ }): Vector3 | null;
6152
+ getPositionForLastPointer(): Vector3 | null;
6153
+ isPointerUp(): boolean;
6018
6154
  getPlannerSceneEventHandler(): PlannerSceneEventHandler;
6019
6155
  disablePlannerEvents(): void;
6020
6156
  enablePlannerEvents(): void;
@@ -6102,13 +6238,15 @@ export declare class PlannerSceneManager extends ConfiguratorSceneManager implem
6102
6238
  setObjectToWallMeasurementLength(planElementId: number, measurementId: number, length: number): void;
6103
6239
  setWallMeasurementLength(measurementId: number, length: number, wallDirection: EMSConstant): void;
6104
6240
  setMeasurementLineLength(measurementId: number, length: number, wallDirection: string): void;
6105
- protected setEventHandlerObject(object: Object3D): void;
6241
+ setNodeZCoordinate(nodeId: number, z: number): void;
6242
+ protected setEventHandlerObject(object: Object3D, secondaryObject?: Object3D): void;
6106
6243
  protected _readyForRender(): void;
6107
6244
  protected notifyPlannerOnComponentSelectionCancel(isExternalObject: boolean, reason: CancelSelectionReasons): void;
6108
6245
  private _externalPlanObjectSelectionChanged;
6109
6246
  highlightExternalObject(planObjectComponent: KernelPlanObjectComponent): void;
6110
6247
  private _selectExternalObjectComponent;
6111
6248
  getSelectedPlanObjectComponent(): KernelPlanObjectComponent | null;
6249
+ switchConfiguratorObject(clickedComponentId: number): Promise<void>;
6112
6250
  selectObjectComponent(planObjectComponent: KernelPlanObjectComponent, switchToConfigurator: boolean, selectComponent: boolean): Promise<void>;
6113
6251
  _swapObjectInConfigurator(planObjectComponent: KernelPlanObjectComponent): Promise<void>;
6114
6252
  getObjectComponent(id: number, typeOfId: Enumify_3<typeof CORE_TYPE_OF_CORE_ID>): KernelPlanObjectComponent | null;
@@ -6142,12 +6280,14 @@ export declare interface PlanObject extends PlanElement_2 {
6142
6280
  boxForMeasurement: KernelCube;
6143
6281
  measurementBounds: KernelAssembledObjectBounds;
6144
6282
  hasConfiguration(): boolean;
6283
+ isAdjustable(): boolean;
6145
6284
  isExternalObject(): boolean;
6146
6285
  retrieveConfigurationId(): ConfigurationUniqueIdAndHash;
6147
6286
  getConfiguration(): string;
6148
6287
  getCatalogItemId(): string;
6149
6288
  getConfigurationRuntimeId(): number;
6150
6289
  getObjectType(): string;
6290
+ getObjectCategory(): ObjectCategory;
6151
6291
  getWallDistances(): ObjectToWallLineArray;
6152
6292
  getRectangle(): Rectangle;
6153
6293
  getRotationToPreferredFront(): ObjectFrontRotation;
@@ -6229,6 +6369,12 @@ export declare interface PlanOverview {
6229
6369
  rooms: PlanElement_2[];
6230
6370
  }
6231
6371
 
6372
+ export declare type PlanRoomGeometryMode = (typeof PLAN_ROOM_GEOMETRY_MODE)[keyof typeof PLAN_ROOM_GEOMETRY_MODE];
6373
+
6374
+ export declare interface PlanRoomGeometryMode_2 {
6375
+ value: Enumify<typeof CORE_PLAN_ROOM_GEOMETRY_MODE>;
6376
+ }
6377
+
6232
6378
  export declare abstract class PlanText extends PlanElement {
6233
6379
  getText(): string;
6234
6380
  }
@@ -6483,12 +6629,14 @@ export declare const enum PosDock {
6483
6629
 
6484
6630
  export declare interface PosDockedContext {
6485
6631
  ownDockingVector: PosDock | string;
6632
+ ownDockingVectorIndex: number;
6486
6633
  dockedRoots: PosDockedContextRoot[];
6487
6634
  }
6488
6635
 
6489
6636
  export declare interface PosDockedContextRoot {
6490
6637
  id: string;
6491
6638
  dockingVector: PosDock | string;
6639
+ dockingVectorIndex: number;
6492
6640
  }
6493
6641
 
6494
6642
  export declare interface PosDockInfo {
@@ -6643,6 +6791,10 @@ export declare interface PosPositionInfo extends PosArticleInfo {
6643
6791
  additionalText?: string;
6644
6792
  }
6645
6793
 
6794
+ export declare interface PosRoom {
6795
+ levels: PosContour[];
6796
+ }
6797
+
6646
6798
  export declare interface PosSaveData {
6647
6799
  groups: PosGroup[];
6648
6800
  roomlePlannerId?: string;
@@ -6852,6 +7004,7 @@ export declare class RapiAccess implements Context {
6852
7004
  constructor(creator: string);
6853
7005
  setConfiguratorSettings(): Promise<void>;
6854
7006
  getTenantId(): Promise<number>;
7007
+ getCurrentTenantId(fallbackTenantId?: number | null): Promise<CurrentTenantId>;
6855
7008
  getPreloadForItem(id: RapiId): Promise<void>;
6856
7009
  getPreloadForConfiguration(id: RapiId): Promise<void>;
6857
7010
  private _getPreload;
@@ -7443,6 +7596,7 @@ export declare type RayCasterObjectFilter = (object3d: Object3D) => boolean;
7443
7596
  export declare class RaycastHelper extends EventDispatcher<Record<RAYCAST_EVENT, SceneEventInfo>> {
7444
7597
  private _mode;
7445
7598
  private _object;
7599
+ private _secondaryObject?;
7446
7600
  private _camera;
7447
7601
  private _inputManager;
7448
7602
  private _raycaster;
@@ -7485,7 +7639,7 @@ export declare class RaycastHelper extends EventDispatcher<Record<RAYCAST_EVENT,
7485
7639
  enableDragIn(mesh: RoomleEventedMesh): void;
7486
7640
  setRootComponentId(rootComponentId: number): void;
7487
7641
  setCamera(camera: Camera): void;
7488
- setObject(object: Object3D): void;
7642
+ setObject(object: Object3D, secondaryObject?: Object3D): void;
7489
7643
  setMode(mode: INTERSECTION_MODE): void;
7490
7644
  intersectMouseOnScene(event: Pick<PointerInputEvent, 'positionRelative'>): KernelVector3 | null;
7491
7645
  enableOnWallSnapping(): void;
@@ -7542,7 +7696,7 @@ export declare class RoomDesignerApi implements RoomDesignerRequests {
7542
7696
  deleteGroup(groupId: string): void;
7543
7697
  deleteRootModule(rootModuleId: string): void;
7544
7698
  getPosDataOfAllGroups(): Promise<PosGroup[]>;
7545
- getRoomInformation(): Promise<ExternalRoomInformation>;
7699
+ getRoomInformation(mode?: PlanRoomGeometryMode): Promise<ExternalRoomInformation>;
7546
7700
  saveExternalObjectSnapshot(): Promise<ExternalObjectSnapshotSaveResult | null>;
7547
7701
  saveCurrentPlanSnapshot(): Promise<RapiPlanSnapshotGetData>;
7548
7702
  renderPosDataImage(posDataJson: object): Promise<void>;
@@ -7559,7 +7713,7 @@ export declare interface RoomDesignerRequests {
7559
7713
  deleteGroup(groupId: string): void;
7560
7714
  deleteRootModule(rootModuleId: string): void;
7561
7715
  getPosDataOfAllGroups(): Promise<PosGroup[]>;
7562
- getRoomInformation(): Promise<ExternalRoomInformation>;
7716
+ getRoomInformation(mode?: PlanRoomGeometryMode): Promise<ExternalRoomInformation>;
7563
7717
  saveExternalObjectSnapshot(): Promise<ExternalObjectSnapshotSaveResult | null>;
7564
7718
  }
7565
7719
 
@@ -7567,9 +7721,16 @@ export declare class RoomGeometryArray extends EmsArray<PosContour> {
7567
7721
  }
7568
7722
 
7569
7723
  export declare interface RoomInformation {
7724
+ rooms: RoomInformationRoomArray;
7725
+ }
7726
+
7727
+ export declare interface RoomInformationRoom {
7570
7728
  rooms: RoomGeometryArray;
7571
7729
  }
7572
7730
 
7731
+ export declare class RoomInformationRoomArray extends EmsArray<RoomInformationRoom> {
7732
+ }
7733
+
7573
7734
  /**
7574
7735
  * Colors can be set as hex value, eg 0x00ff00 or as official HTML color name: https://www.w3schools.com/colors/colors_names.asp
7575
7736
  */
@@ -8728,6 +8889,11 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
8728
8889
  * @param itemList Array of PlanObjects
8729
8890
  */
8730
8891
  mergeItems(itemList: PlanObject[]): void;
8892
+ /**
8893
+ * Adjust plan object to planning situation
8894
+ * @param item PlanObject
8895
+ */
8896
+ adjustItem(item: PlanObject): Promise<void>;
8731
8897
  getScene(): Scene;
8732
8898
  getSceneManager(): PlannerSceneManager;
8733
8899
  updateScene(): void;
@@ -8772,7 +8938,10 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
8772
8938
  */
8773
8939
  disableMultiselect(): void;
8774
8940
  private _insertExternalObject;
8775
- dragInObject(idOrSerializedConfigString: string, dragEvent: DragEvent, type?: ID_TYPE): Promise<RuntimeId>;
8941
+ dragInObject(idOrSerializedConfigString: string, dragEvent: DragEvent, type?: ID_TYPE, pointerPosition?: {
8942
+ clientX: number;
8943
+ clientY: number;
8944
+ }): Promise<RuntimeId>;
8776
8945
  /**
8777
8946
  * Will remove an element that was dragged into the scene while still dragging it.
8778
8947
  * This is mainly used in the context of pressing ESC while dragging or dragging the element away from the scene again.
@@ -8917,6 +9086,7 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
8917
9086
  setObjectToWallMeasurementLength(planElementId: number, measurementId: number, length: number): void;
8918
9087
  setWallMeasurementLength(measurementId: number, length: number, wallDirection: EMSConstant): void;
8919
9088
  setMeasurementLineLength(measurementId: number, length: number, wallDirection: string): void;
9089
+ setNodeZCoordinate(nodeId: number, z: number): void;
8920
9090
  escapeDrawing(cancelDrawing: boolean): void;
8921
9091
  isCurrentlyDrawing(): boolean;
8922
9092
  /**
@@ -8936,6 +9106,7 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
8936
9106
  getInitialExternalObjectGroup(): Promise<PosGroup | null>;
8937
9107
  loadNewExternalObjectInIsolation(groupObject: object): Promise<LoadExternalObjectGroupResult[]>;
8938
9108
  loadExternalObjectGroups(groupData: ExternalGroupData, options?: LoadExternalObjectOptions): Promise<LoadExternalObjectGroupResult[]>;
9109
+ loadExternalObjectGroupLayout(articleLayoutJson: ExternalObjectGroupLayout, layoutType: string, options?: LoadExternalObjectOptions): Promise<LoadExternalObjectGroupResult[]>;
8939
9110
  private _loadExternalObjectGroup;
8940
9111
  private _loadExternalObjectGroupInConfigurator;
8941
9112
  private _loadExternalObjectGroupInPlanner;
@@ -8961,7 +9132,7 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
8961
9132
  openOrCloseGeometryOfExternalObject(groupIdOrRootModuleId: string, _subModuleId: string | null, open: boolean, animate: boolean): void;
8962
9133
  _selectExternalObjectGroup(groupId: string, switchToPlanner: boolean): Promise<void>;
8963
9134
  getExternalObjectGroups(): Promise<object[]>;
8964
- getExternalRoomInformation(): Promise<ExternalRoomInformation>;
9135
+ getExternalRoomInformation(mode?: PlanRoomGeometryMode): Promise<ExternalRoomInformation>;
8965
9136
  /**
8966
9137
  * Highlights a product in the planner.
8967
9138
  * @param planElementId The ID of the plan element to highlight.
@@ -9085,7 +9256,7 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
9085
9256
  * @param orderHeader optional order header information
9086
9257
  */
9087
9258
  fetchPrice(planId?: string, orderHeader?: HiOrderHeader): Promise<any>;
9088
- getOrderManagerGroupData(planId?: string): Promise<HiOrderData | null | undefined>;
9259
+ getOrderManagerGroupData(options?: GetGroupDataForOrderOptions): Promise<HiOrderData | null | undefined>;
9089
9260
  getRapiAccess(): RapiAccess;
9090
9261
  getElementOpenCloseAnimation(planElement: PlanElementViewModel, componentIds?: number[]): AnimationKeyAndValue | null;
9091
9262
  /**
@@ -9179,6 +9350,12 @@ export declare class RoomlePlannerUiCallback extends UiCallback implements Exter
9179
9350
  * @param wallDimensions
9180
9351
  */
9181
9352
  onUpdateWallDimensions: (wallDimensions: WallDimensionTransferable[]) => void;
9353
+ /**
9354
+ * This function gets called when the camera is no longer moving
9355
+ * and the position of node dimensions can be calculated
9356
+ * @param nodeDimensions
9357
+ */
9358
+ onUpdateNodeDimensions: (nodeDimensions: NodeDimensionTransferable[]) => void;
9182
9359
  /**
9183
9360
  * This function gets called when the camera is no longer moving
9184
9361
  * and the position of the measurement line dimensions can be calculated
@@ -9383,10 +9560,9 @@ export declare class RoomleWebGPURenderer extends RoomleRenderer<WebGPURenderer>
9383
9560
  private readonly guiParameterGroups;
9384
9561
  private lastRenderCamera;
9385
9562
  private _domHelper;
9386
- constructor(creator: string, renderer: WebGPURenderer, enableSSGI: boolean, outlineColors?: {
9387
- outlineVisibleEdgeColor: ColorRepresentation;
9388
- outlineHiddenEdgeColor: ColorRepresentation;
9389
- });
9563
+ private _webGpuGroundShadow;
9564
+ constructor(creator: string, renderer: WebGPURenderer, enableSSGI: boolean, outlineColors?: OutlineColors);
9565
+ private enableRenderPasses;
9390
9566
  addGroundShadowLightAndFloor(scene: Scene): void;
9391
9567
  private addRenderPass;
9392
9568
  clearCache(): void;
@@ -9394,6 +9570,7 @@ export declare class RoomleWebGPURenderer extends RoomleRenderer<WebGPURenderer>
9394
9570
  enableUiInteractionMode(): void;
9395
9571
  getQualityLevel(): QualityLevel;
9396
9572
  setCameraType(cameraType: Enumify_3<typeof CAMERA_TYPE>): void;
9573
+ switchToConfigurator(): void;
9397
9574
  switchToPlanner(renderMode: PlannerRenderMode): void;
9398
9575
  highlightObjects(selectedMeshes: Object3D[]): void;
9399
9576
  loadLutImages(_luts: LutImageDefinition[]): void;
@@ -9403,16 +9580,18 @@ export declare class RoomleWebGPURenderer extends RoomleRenderer<WebGPURenderer>
9403
9580
  setAutoQuality(_autoQuality: boolean): void;
9404
9581
  setCustomShadingParameters(_customShadingParameters: CustomShadingParameters | undefined, _customShadingParametersMoc: CustomShadingParameters | undefined): void;
9405
9582
  setCustomOutlineParameters(customOutlineParameters: OutlineCustomParameters): void;
9406
- setGroundShadow(enabled: boolean, scene: Scene): void;
9583
+ setGroundShadow(enabled: boolean, _scene: Scene): void;
9407
9584
  setOnQualityLevelChangeCallback(_callback: (qualityLevel: QualityLevel) => void): void;
9408
9585
  private enableOutline;
9409
9586
  private getOutlinePassOrUndefined;
9410
9587
  private enableSsgiPass;
9588
+ private enableTraaPass;
9411
9589
  setQualityLevel(_qualityLevel: QualityLevel): void;
9412
9590
  setQualityMap(_qualityMap: QualityMap): void;
9413
- setShadingType(_shadingType: SceneShadingType): void;
9591
+ setShadingType(shadingType: SceneShadingType): void;
9414
9592
  showGUI(updateCallback: () => void): void;
9415
9593
  private addDebugGUI;
9594
+ private addToneMappingSettings;
9416
9595
  getOrCreateGUIParameters(name: string): ParametersGroup;
9417
9596
  private createAndCacheGUIParameters;
9418
9597
  }
@@ -9549,6 +9728,7 @@ export declare abstract class SceneManager implements Context, LifeCycleCallback
9549
9728
  protected _stopRendering: boolean;
9550
9729
  protected _roomleRenderer: GenericRoomleRenderer | null;
9551
9730
  private _roomleRendererReady;
9731
+ private _isDebugGUIInitialized;
9552
9732
  private _forceRender;
9553
9733
  private _lastChange;
9554
9734
  private _running;