@roomle/web-sdk 3.9.0-alpha.1 → 3.9.0-alpha.3

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-Cp8M5v8V.mjs} +12 -12
  10. package/lib/api-Cp8M5v8V.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-FjlPqIvQ.mjs} +44 -38
  18. package/lib/component-dimensioning-FjlPqIvQ.mjs.map +1 -0
  19. package/lib/{component-raycast-helper-Bl0mWPcj.mjs → component-raycast-helper-1n4uXeSD.mjs} +28 -28
  20. package/lib/{component-raycast-helper-Bl0mWPcj.mjs.map → component-raycast-helper-1n4uXeSD.mjs.map} +1 -1
  21. package/lib/configurator-B9H-kPm2.mjs +45 -0
  22. package/lib/{configurator-Cf6J4eOF.mjs.map → configurator-B9H-kPm2.mjs.map} +1 -1
  23. package/lib/configurator-CWD62G9Q.mjs +2 -0
  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-BxbH6fKg.mjs +2 -0
  32. package/lib/{glb-viewer-B95ZWAO-.mjs → glb-viewer-MuC-xMpl.mjs} +69 -69
  33. package/lib/{glb-viewer-B95ZWAO-.mjs.map → glb-viewer-MuC-xMpl.mjs.map} +1 -1
  34. package/lib/{highlight-coordinator-DeB46jQq.mjs → highlight-coordinator-BJJw_RgR.mjs} +3 -3
  35. package/lib/{highlight-coordinator-DeB46jQq.mjs.map → highlight-coordinator-BJJw_RgR.mjs.map} +1 -1
  36. package/lib/{homag-intelligence-ByOCaAFW.mjs → homag-intelligence-Bq-OZ8uy.mjs} +21 -8
  37. package/lib/homag-intelligence-Bq-OZ8uy.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-BvkSjJpQ.mjs} +36538 -3295
  46. package/lib/main-BvkSjJpQ.mjs.map +1 -0
  47. package/lib/{material-viewer-37JiZSuS.mjs → material-viewer-xyS-wPPD.mjs} +55 -55
  48. package/lib/material-viewer-xyS-wPPD.mjs.map +1 -0
  49. package/lib/packages-C5mL8tCk.mjs +4 -0
  50. package/lib/planner-CMKaBsin.mjs +2 -0
  51. package/lib/{planner-DBhjeG6D.mjs → planner-CfxenPvQ.mjs} +14 -14
  52. package/lib/{planner-DBhjeG6D.mjs.map → planner-CfxenPvQ.mjs.map} +1 -1
  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 +222 -36
  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 +222 -36
  62. package/lib/roomle-sdk.js +8 -7
  63. package/lib/{roomle-webgpu-renderer-CdD3cYxN.mjs → roomle-webgpu-renderer-DUr1RZL6.mjs} +426 -393
  64. package/lib/roomle-webgpu-renderer-DUr1RZL6.mjs.map +1 -0
  65. package/lib/{scene-renderer-Bdl7umAf.mjs → scene-renderer-BuMnigf2.mjs} +228 -228
  66. package/lib/{scene-renderer-Bdl7umAf.mjs.map → scene-renderer-BuMnigf2.mjs.map} +1 -1
  67. package/lib/{script-loader-D3Cbc5BY.mjs → script-loader-uiPKVdkx.mjs} +9 -9
  68. package/lib/{script-loader-D3Cbc5BY.mjs.map → script-loader-uiPKVdkx.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-BZnX3BX3.mjs} +3 -3
  81. package/lib/{stats-helper-BvDfWWfq.mjs.map → stats-helper-BZnX3BX3.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-D7sinreM.mjs} +106 -88
  90. package/lib/threejs-utils-D7sinreM.mjs.map +1 -0
  91. package/lib/{tools-core-CUTTHUku.mjs → tools-core-CCIcHAKj.mjs} +5 -5
  92. package/lib/{tools-core-CUTTHUku.mjs.map → tools-core-CCIcHAKj.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'> & {
@@ -3210,10 +3298,6 @@ export declare interface FeatureFlags {
3210
3298
  * @description Sets whether the snapping behavior of objects in the planner is initially enabled.
3211
3299
  */
3212
3300
  enableSnapping?: boolean;
3213
- /**
3214
- * @description If set to true we will not hide other items while configuring in the planner
3215
- */
3216
- configureInRoom?: boolean;
3217
3301
  /* Excluded from this release type: advancedDocking */
3218
3302
  /* Excluded from this release type: mergeOnInsert */
3219
3303
  /* Excluded from this release type: drawPreviewMode */
@@ -3312,6 +3396,11 @@ export declare class GeometryHelpLineArray extends EmsArray<GeometryHelpLine> {
3312
3396
 
3313
3397
  export declare const getCatalogIdFromConfigurationHash: (id: RapiId) => RapiId | null;
3314
3398
 
3399
+ export declare interface GetGroupDataForOrderOptions {
3400
+ roomlePlannerId?: string;
3401
+ mode?: PlanRoomGeometryMode;
3402
+ }
3403
+
3315
3404
  export declare interface GLBRenderWorkerListener {
3316
3405
  onStart(count: number): void;
3317
3406
  onElementFinished(finishedElements: number): void;
@@ -3499,6 +3588,7 @@ export declare interface GlueLogic {
3499
3588
  deleteRootModule(remainingGroup: ExternalObjectGroup, rootModuleIdToDelete: string, splitOffGroups: ExternalObjectGroup[]): Promise<void>;
3500
3589
  splitRootModuleFromGroup(splitGroup: ExternalObjectGroup, newGroupedRootModules: ExternalObjectGroup[]): Promise<void>;
3501
3590
  duplicateGroup(duplicatedGroup: ExternalObjectGroup): Promise<void>;
3591
+ adjustGroup(groupId: string): Promise<void>;
3502
3592
  swapRootModule(groupId: string, rootModuleId: string, articleId: string): Promise<void>;
3503
3593
  modifyAttribute(groupId: string, moduleIdObjects: ExternalModuleInformation_2[], attributeName: string, value: string): Promise<void>;
3504
3594
  updateAttribute(rootModuleId: string, moduleId: string | null, attributeId: string, attributeValue: string | boolean): Promise<void>;
@@ -3519,8 +3609,9 @@ export declare interface GlueLogic {
3519
3609
  getSaveDataGroups(): Promise<PosGroup[] | null>;
3520
3610
  getSubArticleId(id: string): string | undefined;
3521
3611
  newPosDataFromId(id: string): Promise<PosGroup | undefined>;
3612
+ newPosDataFromArticleLayout(articleLayoutJson: ExternalObjectGroupLayout, layoutType: string, posArticles?: PosArticle[]): Promise<PosGroup | undefined>;
3522
3613
  newPosDataFromGroup(posDataJson: PosGroup): Promise<PosGroup>;
3523
- getGroupDataForOrder(roomlePlannerId?: string): Promise<HiOrderData | null>;
3614
+ getGroupDataForOrder(options: GetGroupDataForOrderOptions): Promise<HiOrderData | null>;
3524
3615
  getMaterialUrl(materialId: string, groupOrModuleId?: string): string | null;
3525
3616
  }
3526
3617
 
@@ -3753,6 +3844,7 @@ export declare const HI_CONTEXT_ACTION: {
3753
3844
 
3754
3845
  export declare const HI_LOAD_OBJECT_REASON: {
3755
3846
  readonly ADD_SUBARTICLE: "add_subarticle";
3847
+ readonly ADJUSTED: "adjusted";
3756
3848
  readonly ARRANGED: "arranged";
3757
3849
  readonly CHANGE_ATTRIBUTE: "change_attribute";
3758
3850
  readonly CHANGE_META: "change_meta";
@@ -4039,6 +4131,7 @@ export declare class InitData implements Context, Omit<InitDataDefinition, 'colo
4039
4131
  lockPlan: boolean;
4040
4132
  readonly?: boolean;
4041
4133
  externalObjectSettings?: ExternalObjectApiConfiguration;
4134
+ plannerIsolationConfigurator?: boolean;
4042
4135
  /**
4043
4136
  * If true, the callbacks will only be called if the geometry is ready.
4044
4137
  * Before RML-8368 false was the default. For more info see there
@@ -4522,6 +4615,7 @@ export declare interface KernelParameter {
4522
4615
  viewType: KernelViewType;
4523
4616
  source: 'external' | 'internal';
4524
4617
  level?: number;
4618
+ objectIds: number[];
4525
4619
  }
4526
4620
 
4527
4621
  export declare interface KernelParameterGroup {
@@ -4734,10 +4828,12 @@ export declare interface LibraryData {
4734
4828
  libraryId: string;
4735
4829
  get masterData(): MasterData | null;
4736
4830
  get posGroupVersion(): number;
4831
+ initializePosGroup(posGroup: PosGroup): void;
4737
4832
  calculateGroup(posGroup: PosGroup): PosGroup;
4738
4833
  getOrderData(posGroup: PosGroup[], roomlePlannerId?: string, rooms?: PosContour[]): any;
4739
4834
  getAttributesDropDownValues(module: PosModuleData, attributeIds?: string | string[]): Promise<Record<string, HiAttributeOptionsResult>>;
4740
4835
  solveModuleAttributeConflict(module: PosModuleData, attributeName: string, value: string | number | boolean): PosModuleAttribute[] | undefined;
4836
+ groupAdjust(posGroup: PosGroup, articles: PosArticle[], roomInformation: PosRoom): PosGroup;
4741
4837
  getValidSubArticles(calculatedPosGroup: PosGroup, articles: PosArticle[], masterData: MasterData): PosArticle[];
4742
4838
  getValidContainerModulesForSubArticle(calculatedPosGroup: PosGroup, subArticle: PosArticle, masterData: MasterData): ExternalObjectValidContainerModules[];
4743
4839
  addSubArticle(targetPosGroup: PosGroup, article: PosArticle, rootId: string, parentModuleId: string, insertPosition?: number[]): PosGroup;
@@ -4762,7 +4858,8 @@ export declare class LightCache {
4762
4858
  activeLights: Map<string, Light>;
4763
4859
  maximumLights: number;
4764
4860
  private readonly _inactivePosition;
4765
- constructor(scene: Scene, maxAnisotropy: number);
4861
+ constructor(scene: Scene, renderer: WebGLRenderer | WebGPURenderer, maxAnisotropy: number);
4862
+ private registerWebGPULightNodes;
4766
4863
  allowedToSpawnMoreLights(): boolean;
4767
4864
  addActiveLight(light: Light): void;
4768
4865
  cacheLight(light: Light): void;
@@ -4963,6 +5060,12 @@ export declare interface MDModuleInfo {
4963
5060
  group?: string;
4964
5061
  imageUrl?: string;
4965
5062
  assignedAttributes: string[];
5063
+ allowedChildModules?: string[];
5064
+ isRoot?: boolean;
5065
+ isConfigDummy?: boolean;
5066
+ isDropContainer?: boolean;
5067
+ isGroupOrchestrator?: boolean;
5068
+ moduleType?: 'RootModule' | 'SubModule' | 'DropContainer' | 'GroupOrchestrator';
4966
5069
  }
4967
5070
 
4968
5071
  export declare interface MDNumberMinMaxAttributeSelection {
@@ -5148,6 +5251,12 @@ export declare abstract class Node_2 extends PlanElement {
5148
5251
  getMaxWallHeight(): number;
5149
5252
  }
5150
5253
 
5254
+ export declare interface NodeDimensionTransferable {
5255
+ id: number;
5256
+ position2d: Position2;
5257
+ zCoordinate: number;
5258
+ }
5259
+
5151
5260
  export declare class NodePlanElementViewModel extends PlanElementViewModel {
5152
5261
  private _nodeUiMesh;
5153
5262
  constructor(planObject: PlanObject);
@@ -5219,6 +5328,10 @@ export declare const enum OBJECT_EVENT {
5219
5328
  ROTATE = "rotate"
5220
5329
  }
5221
5330
 
5331
+ export declare interface ObjectCategory {
5332
+ value: Enumify_3<typeof CORE_OBJECT_CATEGORY>;
5333
+ }
5334
+
5222
5335
  export declare interface ObjectConfigurationType {
5223
5336
  value: Enumify_3<typeof CONFIGURATION_TYPE>;
5224
5337
  }
@@ -5275,6 +5388,11 @@ export declare interface OffsetCamera {
5275
5388
  export declare interface OrthographicOffsetCamera extends OrthographicCamera, OffsetCamera {
5276
5389
  }
5277
5390
 
5391
+ export declare interface OutlineColors {
5392
+ outlineVisibleEdgeColor: ColorRepresentation;
5393
+ outlineHiddenEdgeColor: ColorRepresentation;
5394
+ }
5395
+
5278
5396
  export declare interface OutlineCustomParameters {
5279
5397
  outlineVisibleEdgeColor: ColorRepresentation;
5280
5398
  outlineHiddenEdgeColor: ColorRepresentation;
@@ -5407,6 +5525,11 @@ export declare const PLAN_ELEMENT_CHANGE_TYPES: {
5407
5525
  readonly REMOVED: "removed";
5408
5526
  };
5409
5527
 
5528
+ export declare const PLAN_ROOM_GEOMETRY_MODE: {
5529
+ readonly FLOOR: "floor";
5530
+ readonly ROOM: "room";
5531
+ };
5532
+
5410
5533
  export declare abstract class PlanElement extends AbstractModelWrapper {
5411
5534
  isLocked: boolean;
5412
5535
  isValid: boolean;
@@ -5453,6 +5576,7 @@ export declare class PlanElementViewModel extends KernelViewModel {
5453
5576
  getMeasurementBounds(): Box3[];
5454
5577
  hasFixedZ(): boolean;
5455
5578
  getBoundingBox(): RoomleEventedMesh;
5579
+ recomputeBoundingBox(): void;
5456
5580
  getPlanElement(): PlanObject;
5457
5581
  setObject(object: RoomleEventedObject3D): void;
5458
5582
  getObject(): RoomleEventedObject3D;
@@ -5642,9 +5766,11 @@ export declare interface PlanModelViewHelper_2 {
5642
5766
  getExternalObjectComponent(plan: Plan_2, groupId: string, moduleId: string): KernelPlanObjectComponent;
5643
5767
  requestMesh3d(element: PlanElement_2): void;
5644
5768
  getExternalObjectGroups(plan: Plan_2): KernelObjectConfigurationArray;
5645
- getExternalRoomInformation(plan: Plan_2): RoomInformation;
5769
+ getExternalRoomInformation(plan: Plan_2, mode: PlanRoomGeometryMode_2): RoomInformation;
5770
+ getGroupedObjects(anObject: PlanObject): KernelPlanObject[];
5646
5771
  calculateLightSourceDistribution(plan: Plan_2, lightSourceConfiguration: LightSourceConfiguration): RoomLightSourceDistributionArray;
5647
5772
  getObjectSnapInformation(anObject: PlanObject, debugHelpLines: boolean): ObjectSnapInformation;
5773
+ getElevationViews(plan: Plan_2): ElevationView[];
5648
5774
  }
5649
5775
 
5650
5776
  export declare class Planner<P extends readonly PluginName[] = readonly []> extends Main {
@@ -5746,6 +5872,10 @@ export declare interface PlannerInitData {
5746
5872
  * - reduce initial spacing of camera (higher zoom)
5747
5873
  */
5748
5874
  moc?: boolean;
5875
+ /**
5876
+ * @description If set to true we will not hide other items while configuring in the planner
5877
+ */
5878
+ configureInRoom?: boolean;
5749
5879
  }
5750
5880
 
5751
5881
  export declare class PlannerKernelAccess extends ConfiguratorKernelAccess {
@@ -6001,6 +6131,7 @@ export declare class PlannerSceneEventHandler extends SceneEventHandler<SceneEve
6001
6131
  private _selectElement;
6002
6132
  private _handleSingleClick;
6003
6133
  private _isObjectOrSiblingSelected;
6134
+ private _toggleGroupSelection;
6004
6135
  getRootPlanObjectId(id: number): number;
6005
6136
  private _doubleClickElement;
6006
6137
  private _hoverOn;
@@ -6010,7 +6141,7 @@ export declare class PlannerSceneEventHandler extends SceneEventHandler<SceneEve
6010
6141
  private _isHoveredObjectNonDraggable;
6011
6142
  private _setCursor;
6012
6143
  setCamera(camera: Camera): void;
6013
- setObject(object: Object3D): void;
6144
+ setObject(object: Object3D, secondaryObject?: Object3D): void;
6014
6145
  getSelectedIds(): number[];
6015
6146
  setSelectionMode(selectionMode: SELECTION_MODE): void;
6016
6147
  setPlanViewModel(planViewModel: PlanViewModel): void;
@@ -6120,6 +6251,7 @@ export declare class PlannerSceneManager extends ConfiguratorSceneManager implem
6120
6251
  private _getDragPosition;
6121
6252
  private _hideAllMeasurementsNodeOnElementChange;
6122
6253
  private _onSelectionChange;
6254
+ planObjectDependencyUpdated(planObjectId: number): void;
6123
6255
  private _onSelectionCancel;
6124
6256
  private _handleMeasurementLineDraggablePoints;
6125
6257
  resetConfiguratorContext(reason: CancelSelectionReasons): void;
@@ -6229,7 +6361,12 @@ export declare class PlannerSceneManager extends ConfiguratorSceneManager implem
6229
6361
  enableChildObjects(planElementViewModel: PlanElementViewModel): KernelObject | null;
6230
6362
  disableChildObjects(planElementViewModel: PlanElementViewModel): KernelObject | null;
6231
6363
  dragIn(dragEvent: DragEvent): void;
6232
- getPositionForDragEvent(dragEvent: DragEvent | TouchEvent): Vector3 | null;
6364
+ getPositionForDragEvent(dragEvent: DragEvent | TouchEvent | {
6365
+ clientX: number;
6366
+ clientY: number;
6367
+ }): Vector3 | null;
6368
+ getPositionForLastPointer(): Vector3 | null;
6369
+ isPointerUp(): boolean;
6233
6370
  getPlannerSceneEventHandler(): PlannerSceneEventHandler;
6234
6371
  disablePlannerEvents(): void;
6235
6372
  enablePlannerEvents(): void;
@@ -6317,13 +6454,15 @@ export declare class PlannerSceneManager extends ConfiguratorSceneManager implem
6317
6454
  setObjectToWallMeasurementLength(planElementId: number, measurementId: number, length: number): void;
6318
6455
  setWallMeasurementLength(measurementId: number, length: number, wallDirection: EMSConstant): void;
6319
6456
  setMeasurementLineLength(measurementId: number, length: number, wallDirection: string): void;
6320
- protected setEventHandlerObject(object: Object3D): void;
6457
+ setNodeZCoordinate(nodeId: number, z: number): void;
6458
+ protected setEventHandlerObject(object: Object3D, secondaryObject?: Object3D): void;
6321
6459
  protected _readyForRender(): void;
6322
6460
  protected notifyPlannerOnComponentSelectionCancel(isExternalObject: boolean, reason: CancelSelectionReasons): void;
6323
6461
  private _externalPlanObjectSelectionChanged;
6324
6462
  highlightExternalObject(planObjectComponent: KernelPlanObjectComponent): void;
6325
6463
  private _selectExternalObjectComponent;
6326
6464
  getSelectedPlanObjectComponent(): KernelPlanObjectComponent | null;
6465
+ switchConfiguratorObject(clickedComponentId: number): Promise<void>;
6327
6466
  selectObjectComponent(planObjectComponent: KernelPlanObjectComponent, switchToConfigurator: boolean, selectComponent: boolean): Promise<void>;
6328
6467
  _swapObjectInConfigurator(planObjectComponent: KernelPlanObjectComponent): Promise<void>;
6329
6468
  getObjectComponent(id: number, typeOfId: Enumify_2<typeof CORE_TYPE_OF_CORE_ID>): KernelPlanObjectComponent | null;
@@ -6357,12 +6496,14 @@ export declare interface PlanObject extends PlanElement_2 {
6357
6496
  boxForMeasurement: KernelCube;
6358
6497
  measurementBounds: KernelAssembledObjectBounds;
6359
6498
  hasConfiguration(): boolean;
6499
+ isAdjustable(): boolean;
6360
6500
  isExternalObject(): boolean;
6361
6501
  retrieveConfigurationId(): ConfigurationUniqueIdAndHash;
6362
6502
  getConfiguration(): string;
6363
6503
  getCatalogItemId(): string;
6364
6504
  getConfigurationRuntimeId(): number;
6365
6505
  getObjectType(): string;
6506
+ getObjectCategory(): ObjectCategory;
6366
6507
  getWallDistances(): ObjectToWallLineArray;
6367
6508
  getRectangle(): Rectangle;
6368
6509
  getRotationToPreferredFront(): ObjectFrontRotation;
@@ -6444,6 +6585,12 @@ export declare interface PlanOverview {
6444
6585
  rooms: PlanElement_2[];
6445
6586
  }
6446
6587
 
6588
+ export declare type PlanRoomGeometryMode = (typeof PLAN_ROOM_GEOMETRY_MODE)[keyof typeof PLAN_ROOM_GEOMETRY_MODE];
6589
+
6590
+ export declare interface PlanRoomGeometryMode_2 {
6591
+ value: Enumify_3<typeof CORE_PLAN_ROOM_GEOMETRY_MODE>;
6592
+ }
6593
+
6447
6594
  export declare abstract class PlanText extends PlanElement {
6448
6595
  getText(): string;
6449
6596
  }
@@ -6573,6 +6720,7 @@ export declare class PlanViewModel extends ConfiguratorViewModel implements Plan
6573
6720
  endPlanConstruction(_plan: Plan_2): void;
6574
6721
  planElementChanged(_plan: Plan_2, _planObject: PlanElementViewModel): void;
6575
6722
  planObjectConfigurationLoaded(_plan: Plan_2, planElement: PlanElement_2, success: boolean): void;
6723
+ recomputeConfigurableBoundingBoxes(): void;
6576
6724
  planObjectConfigurationChanged(_plan: Plan_2, _element: PlanElementViewModel): void;
6577
6725
  addMesh(planElement: PlanElement_2, material: any, vertices: Float32Array, indices: Int32Array, uvCoords: Float32Array, normals: Float32Array): void;
6578
6726
  removePlanObjectFromScene(planElementViewModel: PlanElementViewModel | undefined): void;
@@ -6698,12 +6846,14 @@ export declare const enum PosDock {
6698
6846
 
6699
6847
  export declare interface PosDockedContext {
6700
6848
  ownDockingVector: PosDock | string;
6849
+ ownDockingVectorIndex: number;
6701
6850
  dockedRoots: PosDockedContextRoot[];
6702
6851
  }
6703
6852
 
6704
6853
  export declare interface PosDockedContextRoot {
6705
6854
  id: string;
6706
6855
  dockingVector: PosDock | string;
6856
+ dockingVectorIndex: number;
6707
6857
  }
6708
6858
 
6709
6859
  export declare interface PosDockInfo {
@@ -6772,6 +6922,10 @@ export declare interface PosGroup {
6772
6922
  * The version used for this data structure
6773
6923
  */
6774
6924
  ver?: number;
6925
+ /**
6926
+ * Optional the attributes of this group
6927
+ */
6928
+ attributes?: PosModuleAttribute[];
6775
6929
  }
6776
6930
 
6777
6931
  export declare interface PosInsertLevelInfo {
@@ -6858,6 +7012,10 @@ export declare interface PosPositionInfo extends PosArticleInfo {
6858
7012
  additionalText?: string;
6859
7013
  }
6860
7014
 
7015
+ export declare interface PosRoom {
7016
+ levels: PosContour[];
7017
+ }
7018
+
6861
7019
  export declare interface PosSaveData {
6862
7020
  groups: PosGroup[];
6863
7021
  roomlePlannerId?: string;
@@ -7067,6 +7225,7 @@ export declare class RapiAccess implements Context {
7067
7225
  constructor(creator: string);
7068
7226
  setConfiguratorSettings(): Promise<void>;
7069
7227
  getTenantId(): Promise<number>;
7228
+ getCurrentTenantId(fallbackTenantId?: number | null): Promise<CurrentTenantId>;
7070
7229
  getPreloadForItem(id: RapiId): Promise<void>;
7071
7230
  getPreloadForConfiguration(id: RapiId): Promise<void>;
7072
7231
  private _getPreload;
@@ -7658,6 +7817,7 @@ export declare type RayCasterObjectFilter = (object3d: Object3D) => boolean;
7658
7817
  export declare class RaycastHelper extends EventDispatcher<Record<RAYCAST_EVENT, SceneEventInfo>> {
7659
7818
  private _mode;
7660
7819
  private _object;
7820
+ private _secondaryObject?;
7661
7821
  private _camera;
7662
7822
  private _inputManager;
7663
7823
  private _raycaster;
@@ -7700,7 +7860,7 @@ export declare class RaycastHelper extends EventDispatcher<Record<RAYCAST_EVENT,
7700
7860
  enableDragIn(mesh: RoomleEventedMesh): void;
7701
7861
  setRootComponentId(rootComponentId: number): void;
7702
7862
  setCamera(camera: Camera): void;
7703
- setObject(object: Object3D): void;
7863
+ setObject(object: Object3D, secondaryObject?: Object3D): void;
7704
7864
  setMode(mode: INTERSECTION_MODE): void;
7705
7865
  intersectMouseOnScene(event: Pick<PointerInputEvent, 'positionRelative'>): KernelVector3 | null;
7706
7866
  enableOnWallSnapping(): void;
@@ -7757,7 +7917,7 @@ export declare class RoomDesignerApi implements RoomDesignerRequests {
7757
7917
  deleteGroup(groupId: string): void;
7758
7918
  deleteRootModule(rootModuleId: string): void;
7759
7919
  getPosDataOfAllGroups(): Promise<PosGroup[]>;
7760
- getRoomInformation(): Promise<ExternalRoomInformation>;
7920
+ getRoomInformation(mode?: PlanRoomGeometryMode): Promise<ExternalRoomInformation>;
7761
7921
  saveExternalObjectSnapshot(): Promise<ExternalObjectSnapshotSaveResult | null>;
7762
7922
  saveCurrentPlanSnapshot(): Promise<RapiPlanSnapshotGetData>;
7763
7923
  renderPosDataImage(posDataJson: object): Promise<void>;
@@ -7774,7 +7934,7 @@ export declare interface RoomDesignerRequests {
7774
7934
  deleteGroup(groupId: string): void;
7775
7935
  deleteRootModule(rootModuleId: string): void;
7776
7936
  getPosDataOfAllGroups(): Promise<PosGroup[]>;
7777
- getRoomInformation(): Promise<ExternalRoomInformation>;
7937
+ getRoomInformation(mode?: PlanRoomGeometryMode): Promise<ExternalRoomInformation>;
7778
7938
  saveExternalObjectSnapshot(): Promise<ExternalObjectSnapshotSaveResult | null>;
7779
7939
  }
7780
7940
 
@@ -7782,9 +7942,16 @@ export declare class RoomGeometryArray extends EmsArray<PosContour> {
7782
7942
  }
7783
7943
 
7784
7944
  export declare interface RoomInformation {
7945
+ rooms: RoomInformationRoomArray;
7946
+ }
7947
+
7948
+ export declare interface RoomInformationRoom {
7785
7949
  rooms: RoomGeometryArray;
7786
7950
  }
7787
7951
 
7952
+ export declare class RoomInformationRoomArray extends EmsArray<RoomInformationRoom> {
7953
+ }
7954
+
7788
7955
  /**
7789
7956
  * Colors can be set as hex value, eg 0x00ff00 or as official HTML color name: https://www.w3schools.com/colors/colors_names.asp
7790
7957
  */
@@ -8943,6 +9110,11 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
8943
9110
  * @param itemList Array of PlanObjects
8944
9111
  */
8945
9112
  mergeItems(itemList: PlanObject[]): void;
9113
+ /**
9114
+ * Adjust plan object to planning situation
9115
+ * @param item PlanObject
9116
+ */
9117
+ adjustItem(item: PlanObject): Promise<void>;
8946
9118
  getScene(): Scene;
8947
9119
  getSceneManager(): PlannerSceneManager;
8948
9120
  updateScene(): void;
@@ -8987,7 +9159,10 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
8987
9159
  */
8988
9160
  disableMultiselect(): void;
8989
9161
  private _insertExternalObject;
8990
- dragInObject(idOrSerializedConfigString: string, dragEvent: DragEvent, type?: ID_TYPE): Promise<RuntimeId>;
9162
+ dragInObject(idOrSerializedConfigString: string, dragEvent: DragEvent, type?: ID_TYPE, pointerPosition?: {
9163
+ clientX: number;
9164
+ clientY: number;
9165
+ }): Promise<RuntimeId>;
8991
9166
  /**
8992
9167
  * Will remove an element that was dragged into the scene while still dragging it.
8993
9168
  * This is mainly used in the context of pressing ESC while dragging or dragging the element away from the scene again.
@@ -9132,6 +9307,7 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
9132
9307
  setObjectToWallMeasurementLength(planElementId: number, measurementId: number, length: number): void;
9133
9308
  setWallMeasurementLength(measurementId: number, length: number, wallDirection: EMSConstant): void;
9134
9309
  setMeasurementLineLength(measurementId: number, length: number, wallDirection: string): void;
9310
+ setNodeZCoordinate(nodeId: number, z: number): void;
9135
9311
  escapeDrawing(cancelDrawing: boolean): void;
9136
9312
  isCurrentlyDrawing(): boolean;
9137
9313
  /**
@@ -9151,6 +9327,7 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
9151
9327
  getInitialExternalObjectGroup(): Promise<PosGroup | null>;
9152
9328
  loadNewExternalObjectInIsolation(groupObject: object): Promise<LoadExternalObjectGroupResult[]>;
9153
9329
  loadExternalObjectGroups(groupData: ExternalGroupData, options?: LoadExternalObjectOptions): Promise<LoadExternalObjectGroupResult[]>;
9330
+ loadExternalObjectGroupLayout(articleLayoutJson: ExternalObjectGroupLayout, layoutType: string, options?: LoadExternalObjectOptions): Promise<LoadExternalObjectGroupResult[]>;
9154
9331
  private _loadExternalObjectGroup;
9155
9332
  private _loadExternalObjectGroupInConfigurator;
9156
9333
  private _loadExternalObjectGroupInPlanner;
@@ -9176,7 +9353,7 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
9176
9353
  openOrCloseGeometryOfExternalObject(groupIdOrRootModuleId: string, _subModuleId: string | null, open: boolean, animate: boolean): void;
9177
9354
  _selectExternalObjectGroup(groupId: string, switchToPlanner: boolean): Promise<void>;
9178
9355
  getExternalObjectGroups(): Promise<object[]>;
9179
- getExternalRoomInformation(): Promise<ExternalRoomInformation>;
9356
+ getExternalRoomInformation(mode?: PlanRoomGeometryMode): Promise<ExternalRoomInformation>;
9180
9357
  /**
9181
9358
  * Highlights a product in the planner.
9182
9359
  * @param planElementId The ID of the plan element to highlight.
@@ -9300,7 +9477,7 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
9300
9477
  * @param orderHeader optional order header information
9301
9478
  */
9302
9479
  fetchPrice(planId?: string, orderHeader?: HiOrderHeader): Promise<any>;
9303
- getOrderManagerGroupData(planId?: string): Promise<HiOrderData | null | undefined>;
9480
+ getOrderManagerGroupData(options?: GetGroupDataForOrderOptions): Promise<HiOrderData | null | undefined>;
9304
9481
  getRapiAccess(): RapiAccess;
9305
9482
  getElementOpenCloseAnimation(planElement: PlanElementViewModel, componentIds?: number[]): AnimationKeyAndValue | null;
9306
9483
  /**
@@ -9394,6 +9571,12 @@ export declare class RoomlePlannerUiCallback extends UiCallback implements Exter
9394
9571
  * @param wallDimensions
9395
9572
  */
9396
9573
  onUpdateWallDimensions: (wallDimensions: WallDimensionTransferable[]) => void;
9574
+ /**
9575
+ * This function gets called when the camera is no longer moving
9576
+ * and the position of node dimensions can be calculated
9577
+ * @param nodeDimensions
9578
+ */
9579
+ onUpdateNodeDimensions: (nodeDimensions: NodeDimensionTransferable[]) => void;
9397
9580
  /**
9398
9581
  * This function gets called when the camera is no longer moving
9399
9582
  * and the position of the measurement line dimensions can be calculated
@@ -9598,10 +9781,9 @@ export declare class RoomleWebGPURenderer extends RoomleRenderer<WebGPURenderer>
9598
9781
  private readonly guiParameterGroups;
9599
9782
  private lastRenderCamera;
9600
9783
  private _domHelper;
9601
- constructor(creator: string, renderer: WebGPURenderer, enableSSGI: boolean, outlineColors?: {
9602
- outlineVisibleEdgeColor: ColorRepresentation;
9603
- outlineHiddenEdgeColor: ColorRepresentation;
9604
- });
9784
+ private _webGpuGroundShadow;
9785
+ constructor(creator: string, renderer: WebGPURenderer, enableSSGI: boolean, outlineColors?: OutlineColors);
9786
+ private enableRenderPasses;
9605
9787
  addGroundShadowLightAndFloor(scene: Scene): void;
9606
9788
  private addRenderPass;
9607
9789
  clearCache(): void;
@@ -9609,6 +9791,7 @@ export declare class RoomleWebGPURenderer extends RoomleRenderer<WebGPURenderer>
9609
9791
  enableUiInteractionMode(): void;
9610
9792
  getQualityLevel(): QualityLevel;
9611
9793
  setCameraType(cameraType: Enumify_2<typeof CAMERA_TYPE>): void;
9794
+ switchToConfigurator(): void;
9612
9795
  switchToPlanner(renderMode: PlannerRenderMode): void;
9613
9796
  highlightObjects(selectedMeshes: Object3D[]): void;
9614
9797
  loadLutImages(_luts: LutImageDefinition[]): void;
@@ -9618,16 +9801,18 @@ export declare class RoomleWebGPURenderer extends RoomleRenderer<WebGPURenderer>
9618
9801
  setAutoQuality(_autoQuality: boolean): void;
9619
9802
  setCustomShadingParameters(_customShadingParameters: CustomShadingParameters | undefined, _customShadingParametersMoc: CustomShadingParameters | undefined): void;
9620
9803
  setCustomOutlineParameters(customOutlineParameters: OutlineCustomParameters): void;
9621
- setGroundShadow(enabled: boolean, scene: Scene): void;
9804
+ setGroundShadow(enabled: boolean, _scene: Scene): void;
9622
9805
  setOnQualityLevelChangeCallback(_callback: (qualityLevel: QualityLevel) => void): void;
9623
9806
  private enableOutline;
9624
9807
  private getOutlinePassOrUndefined;
9625
9808
  private enableSsgiPass;
9809
+ private enableTraaPass;
9626
9810
  setQualityLevel(_qualityLevel: QualityLevel): void;
9627
9811
  setQualityMap(_qualityMap: QualityMap): void;
9628
- setShadingType(_shadingType: SceneShadingType): void;
9812
+ setShadingType(shadingType: SceneShadingType): void;
9629
9813
  showGUI(updateCallback: () => void): void;
9630
9814
  private addDebugGUI;
9815
+ private addToneMappingSettings;
9631
9816
  getOrCreateGUIParameters(name: string): ParametersGroup;
9632
9817
  private createAndCacheGUIParameters;
9633
9818
  }
@@ -9770,6 +9955,7 @@ export declare abstract class SceneManager implements Context, LifeCycleCallback
9770
9955
  protected _stopRendering: boolean;
9771
9956
  protected _roomleRenderer: GenericRoomleRenderer | null;
9772
9957
  private _roomleRendererReady;
9958
+ private _isDebugGUIInitialized;
9773
9959
  private _forceRender;
9774
9960
  private _lastChange;
9775
9961
  private _running;