@roomle/web-sdk 3.10.0-alpha.4 → 3.10.0-alpha.6

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 (62) hide show
  1. package/lib/ConfiguratorKernel.wasm +0 -0
  2. package/lib/RoomleCore.wasm +0 -0
  3. package/lib/RoomleToolsCore.wasm +0 -0
  4. package/lib/{api-ckpzIPty.mjs → api-D64AfPG6.mjs} +2 -2
  5. package/lib/{api-ckpzIPty.mjs.map → api-D64AfPG6.mjs.map} +1 -1
  6. package/lib/asset-loader.worker-CHyN7JB1.mjs.map +1 -1
  7. package/lib/budgeteer.sw-BCLEIWCW.mjs.map +1 -1
  8. package/lib/{common-utils-DMk5jc_R.mjs → common-utils-uHp4dDZQ.mjs} +20 -17
  9. package/lib/{common-utils-DMk5jc_R.mjs.map → common-utils-uHp4dDZQ.mjs.map} +1 -1
  10. package/lib/{component-dimensioning-DcmDM6gV.mjs → component-dimensioning-lu16QjEZ.mjs} +2 -2
  11. package/lib/{component-dimensioning-DcmDM6gV.mjs.map → component-dimensioning-lu16QjEZ.mjs.map} +1 -1
  12. package/lib/{component-raycast-helper-CXN2MHtG.mjs → component-raycast-helper-DRE5bxWr.mjs} +3 -3
  13. package/lib/{component-raycast-helper-CXN2MHtG.mjs.map → component-raycast-helper-DRE5bxWr.mjs.map} +1 -1
  14. package/lib/configurator-C3LkQHDF.mjs +2 -0
  15. package/lib/{configurator-D6lTTIlU.mjs → configurator-CEHN5oY2.mjs} +4 -4
  16. package/lib/{configurator-D6lTTIlU.mjs.map → configurator-CEHN5oY2.mjs.map} +1 -1
  17. package/lib/{glb-viewer-CuRDCxVq.mjs → glb-viewer-C03QVqRZ.mjs} +5 -5
  18. package/lib/{glb-viewer-CuRDCxVq.mjs.map → glb-viewer-C03QVqRZ.mjs.map} +1 -1
  19. package/lib/glb-viewer-vQQ5RF-e.mjs +2 -0
  20. package/lib/{highlight-coordinator-CTZ_qcde.mjs → highlight-coordinator-DZReLBh6.mjs} +2 -2
  21. package/lib/{highlight-coordinator-CTZ_qcde.mjs.map → highlight-coordinator-DZReLBh6.mjs.map} +1 -1
  22. package/lib/{homag-intelligence-CIBPifJk.mjs → homag-intelligence-CaflKydn.mjs} +3 -3
  23. package/lib/{homag-intelligence-CIBPifJk.mjs.map → homag-intelligence-CaflKydn.mjs.map} +1 -1
  24. package/lib/{imos-ix-poc-export-helper-D2KaQu_v.mjs → imos-ix-poc-export-helper-D6oTPQr3.mjs} +2 -2
  25. package/lib/{imos-ix-poc-export-helper-D2KaQu_v.mjs.map → imos-ix-poc-export-helper-D6oTPQr3.mjs.map} +1 -1
  26. package/lib/{main-KSs3XdXO.mjs → main-BkA09a6W.mjs} +7941 -7859
  27. package/lib/main-BkA09a6W.mjs.map +1 -0
  28. package/lib/{material-viewer-Ced_pruD.mjs → material-viewer-Nkl4Qx29.mjs} +5 -5
  29. package/lib/{material-viewer-Ced_pruD.mjs.map → material-viewer-Nkl4Qx29.mjs.map} +1 -1
  30. package/lib/packages-CNXXlUsV.mjs +4 -0
  31. package/lib/{planner-ykpwnVZa.mjs → planner-DsChoUH0.mjs} +3 -3
  32. package/lib/{planner-ykpwnVZa.mjs.map → planner-DsChoUH0.mjs.map} +1 -1
  33. package/lib/planner-Z2m78Y_4.mjs +2 -0
  34. package/lib/roomle-headless.d.ts +201 -58
  35. package/lib/roomle-headless.js +9 -9
  36. package/lib/roomle-sdk.d.ts +201 -58
  37. package/lib/roomle-sdk.js +8 -8
  38. package/lib/{roomle-webgpu-renderer-NhCn2iM-.mjs → roomle-webgpu-renderer-OGrZqd3w.mjs} +4 -4
  39. package/lib/{roomle-webgpu-renderer-NhCn2iM-.mjs.map → roomle-webgpu-renderer-OGrZqd3w.mjs.map} +1 -1
  40. package/lib/{scene-renderer-DbHi1plp.mjs → scene-renderer-kbl6O83T.mjs} +3 -3
  41. package/lib/{scene-renderer-DbHi1plp.mjs.map → scene-renderer-kbl6O83T.mjs.map} +1 -1
  42. package/lib/{script-loader-DKx7ZvkP.mjs → script-loader-vbm5pELp.mjs} +2 -2
  43. package/lib/{script-loader-DKx7ZvkP.mjs.map → script-loader-vbm5pELp.mjs.map} +1 -1
  44. package/lib/{shading-settings-BWeccIZv.mjs → shading-settings-BXL0haNX.mjs} +2 -2
  45. package/lib/{shading-settings-BWeccIZv.mjs.map → shading-settings-BXL0haNX.mjs.map} +1 -1
  46. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/package.json +1 -1
  47. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm +0 -0
  48. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleCore.wasm +0 -0
  49. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleToolsCore.wasm +0 -0
  50. package/lib/{stats-helper-Bs79UZne.mjs → stats-helper-B4ejVlyj.mjs} +2 -2
  51. package/lib/{stats-helper-Bs79UZne.mjs.map → stats-helper-B4ejVlyj.mjs.map} +1 -1
  52. package/lib/{threejs-utils-E4yVZATI.mjs → threejs-utils-DQCcy2fJ.mjs} +57 -54
  53. package/lib/threejs-utils-DQCcy2fJ.mjs.map +1 -0
  54. package/lib/{tools-core-D4EbqT91.mjs → tools-core-f9Mqfmi2.mjs} +3 -3
  55. package/lib/{tools-core-D4EbqT91.mjs.map → tools-core-f9Mqfmi2.mjs.map} +1 -1
  56. package/package.json +1 -1
  57. package/lib/configurator-DZotRC5_.mjs +0 -2
  58. package/lib/glb-viewer-DKWeC8wq.mjs +0 -2
  59. package/lib/main-KSs3XdXO.mjs.map +0 -1
  60. package/lib/packages-oEzg5zoT.mjs +0 -4
  61. package/lib/planner-QF8IrfPz.mjs +0 -2
  62. package/lib/threejs-utils-E4yVZATI.mjs.map +0 -1
@@ -2284,6 +2284,11 @@ export declare const CORE_HELP_LINE_TYPE: {
2284
2284
  readonly OBJECT_CONTOUR: 5;
2285
2285
  };
2286
2286
 
2287
+ export declare const CORE_NODE_TYPE: {
2288
+ readonly DEFAULT: 0;
2289
+ readonly CONSTRUCTION: 1;
2290
+ };
2291
+
2287
2292
  export declare const CORE_OBJECT_CATEGORY: {
2288
2293
  readonly OBJECT: 0;
2289
2294
  readonly DOOR: 1;
@@ -2584,7 +2589,9 @@ export declare class DraggableNode extends Object3D {
2584
2589
  hoverOn(): void;
2585
2590
  hoverOff(): void;
2586
2591
  setSphereColor(color: number): void;
2592
+ getSphereColor(): number;
2587
2593
  setInnerRingColor(color: number): void;
2594
+ getInnerRingColor(): number;
2588
2595
  select(color: number): void;
2589
2596
  deselect(color: number): void;
2590
2597
  }
@@ -3343,6 +3350,24 @@ export declare interface FeatureFlags {
3343
3350
  /* Excluded from this release type: webGpuConfig */
3344
3351
  /* Excluded from this release type: advancedHighlighting */
3345
3352
  /* Excluded from this release type: fence */
3353
+ /* Excluded from this release type: awaitConfigurationSavesBeforeRequestPlan */
3354
+ }
3355
+
3356
+ export declare class FeatureFlagsImplementation implements FeatureFlags {
3357
+ pulsePreview: boolean;
3358
+ reDock: boolean;
3359
+ advancedDocking: boolean;
3360
+ mergeOnInsert: boolean;
3361
+ drawPreviewMode: Enumify_2<typeof DRAW_PREVIEW_MODES>;
3362
+ interiorLights: boolean;
3363
+ advancedDimensioning: boolean;
3364
+ enableSnapping: boolean;
3365
+ webGpu: boolean;
3366
+ webGpuConfig: WebGpuConfig;
3367
+ forceSaveThumbnails: boolean;
3368
+ advancedHighlighting: boolean;
3369
+ fence: boolean;
3370
+ awaitConfigurationSavesBeforeRequestPlan: boolean;
3346
3371
  }
3347
3372
 
3348
3373
  export declare interface FetchOptions {
@@ -3563,15 +3588,15 @@ export declare class GlobalCallback extends UiCallback {
3563
3588
 
3564
3589
  export declare class GlobalInitData implements Context, GlobalInitDataDefinition {
3565
3590
  _creator_: string;
3566
- locale?: string;
3591
+ locale: string;
3567
3592
  overrideTenant?: number;
3568
- overrideCountry?: string | null;
3593
+ overrideCountry: string | null;
3569
3594
  configuratorId?: string;
3570
3595
  overrideRapi?: RapiServerUrlType;
3571
- alwaysUseCache?: boolean;
3596
+ alwaysUseCache: boolean;
3572
3597
  customApiUrl?: string;
3573
- e2e?: boolean;
3574
- e2eRoomleRendererForImages?: boolean;
3598
+ e2e: boolean;
3599
+ e2eRoomleRendererForImages: boolean;
3575
3600
  constructor(creator: string);
3576
3601
  setOverrides(globalInitData: Partial<GlobalInitDataDefinition> | InitData): void;
3577
3602
  }
@@ -3597,7 +3622,7 @@ export declare interface GlobalInitDataDefinition {
3597
3622
  configuratorId?: string;
3598
3623
  /**
3599
3624
  * @deprecated
3600
- * @description when set to true and assets were prechaced by the asset loader they are returned from cache. Otherwise we always return a fresh copy from network usage: alwaysUseCache=true default: not set -> assets fetched from url, set -> assets from cache
3625
+ * @description when set to true and assets were precached by the asset loader they are returned from cache. Otherwise we always return a fresh copy from network usage: alwaysUseCache=true default: not set -> assets fetched from url, set -> assets from cache
3601
3626
  */
3602
3627
  alwaysUseCache?: boolean;
3603
3628
  /**
@@ -4244,13 +4269,13 @@ export declare class ImageRenderer implements Context {
4244
4269
 
4245
4270
  export declare class InitData implements Context, Omit<InitDataDefinition, 'colors'> {
4246
4271
  _creator_: string;
4247
- autoQuality?: boolean;
4272
+ autoQuality: boolean;
4248
4273
  colors: ThreeJsColorsIn3dScene;
4249
- isItem?: boolean;
4274
+ isItem: boolean;
4250
4275
  id?: RapiId;
4251
4276
  preloadId?: RapiId;
4252
- showArButton?: boolean;
4253
- useRoomlePrice?: boolean;
4277
+ showArButton: boolean;
4278
+ useRoomlePrice: boolean;
4254
4279
  precisionInch?: string;
4255
4280
  precisionCm?: string;
4256
4281
  unit?: string;
@@ -4260,37 +4285,37 @@ export declare class InitData implements Context, Omit<InitDataDefinition, 'colo
4260
4285
  offset?: CanvasOffset;
4261
4286
  startTag?: RapiId;
4262
4287
  measurementSystem?: Enumify_2<typeof MEASUREMENT_SYSTEM_STRING>;
4263
- meshSelection?: boolean;
4264
- stats?: boolean;
4265
- _measureTraffic?: boolean;
4266
- debug?: boolean;
4267
- debugGeometry?: boolean;
4268
- debugLines?: boolean;
4269
- debugBoundingBox?: boolean;
4270
- usePriceService?: boolean;
4271
- disableDebugGUI?: boolean;
4272
- disableEnvMap?: boolean;
4273
- envMapUrl?: string;
4288
+ meshSelection: boolean;
4289
+ stats: boolean;
4290
+ _measureTraffic: boolean;
4291
+ debug: boolean;
4292
+ debugGeometry: boolean;
4293
+ debugLines: boolean;
4294
+ debugBoundingBox: boolean;
4295
+ usePriceService: boolean;
4296
+ disableDebugGUI: boolean;
4297
+ disableEnvMap: boolean;
4298
+ envMapUrl: string;
4274
4299
  envMapIntensity: number;
4275
4300
  envMapRotation: number;
4276
- maxLightSources?: number;
4277
- legacyLight?: boolean;
4301
+ maxLightSources: number;
4302
+ legacyLight: boolean;
4278
4303
  sceneLight?: DefaultEnvironmentSceneType;
4279
- shading?: SceneShadingType;
4280
- linearAoFilter?: boolean;
4304
+ shading: SceneShadingType;
4305
+ linearAoFilter: boolean;
4281
4306
  customShading?: CustomShadingParameters;
4282
4307
  customShadingMoc?: CustomShadingParameters;
4283
- restrictionLevel?: number;
4308
+ restrictionLevel: number;
4284
4309
  hi?: HomagIntelligenceInitData;
4285
- disableDefaultLabelStyles?: boolean;
4310
+ disableDefaultLabelStyles: boolean;
4286
4311
  offlineSync?: string;
4287
- highlighting?: Enumify_2<typeof ROOMLE_HIGHLIGHTNG>;
4312
+ highlighting: Enumify_2<typeof ROOMLE_HIGHLIGHTNG>;
4288
4313
  initialFloorMaterial?: string;
4289
4314
  dls?: string;
4290
4315
  ls?: string;
4291
4316
  floorMaterialsTag?: RapiId;
4292
4317
  zoomDistance?: number;
4293
- cameraSpacing?: number;
4318
+ cameraSpacing: number;
4294
4319
  cameraRestriction?: number;
4295
4320
  verticalCameraAngle?: number;
4296
4321
  minVerticalCameraAngle?: number;
@@ -4299,31 +4324,31 @@ export declare class InitData implements Context, Omit<InitDataDefinition, 'colo
4299
4324
  horizontalCameraAngle?: number;
4300
4325
  minHorizontalCameraAngle?: number;
4301
4326
  maxHorizontalCameraAngle?: number;
4302
- bananaForScale?: boolean;
4303
- transparentHighlighting?: boolean;
4304
- transparentBackground?: boolean;
4305
- snappingEnabled?: boolean;
4306
- showInfos?: boolean;
4307
- showPrice?: boolean;
4308
- applyCurrentGlobalParameters?: boolean;
4309
- configureInRoom?: boolean;
4310
- dockInRoom?: boolean;
4311
- discardExternalObjectsWhenLoadingPlan?: boolean;
4312
- featureFlags: FeatureFlags;
4313
- meshRaycasting?: boolean;
4327
+ bananaForScale: boolean;
4328
+ transparentHighlighting: boolean;
4329
+ transparentBackground: boolean;
4330
+ snappingEnabled: boolean;
4331
+ showInfos: boolean;
4332
+ showPrice: boolean;
4333
+ applyCurrentGlobalParameters: boolean;
4334
+ configureInRoom: boolean;
4335
+ dockInRoom: boolean;
4336
+ discardExternalObjectsWhenLoadingPlan: boolean;
4337
+ featureFlags: FeatureFlagsImplementation;
4338
+ meshRaycasting: boolean;
4314
4339
  defaultFloorMaterial?: number | string;
4315
- mode?: Enumify_2<typeof CAMERA_TYPE>;
4316
- edit?: boolean;
4317
- moc?: boolean;
4340
+ mode: Enumify_2<typeof CAMERA_TYPE>;
4341
+ edit: boolean;
4342
+ moc: boolean;
4318
4343
  lockPlan: boolean;
4319
- readonly?: boolean;
4320
- externalObjectSettings?: ExternalObjectApiConfiguration;
4321
- plannerIsolationConfigurator?: boolean;
4344
+ readonly: boolean;
4345
+ externalObjectSettings: ExternalObjectApiConfiguration;
4346
+ plannerIsolationConfigurator: boolean;
4322
4347
  /**
4323
4348
  * If true, the callbacks will only be called if the geometry is ready.
4324
4349
  * Before RML-8368 false was the default. For more info see there
4325
4350
  */
4326
- callbacksOnlyIfGeometryIsReady?: boolean;
4351
+ callbacksOnlyIfGeometryIsReady: boolean;
4327
4352
  constructor(creator: string);
4328
4353
  setOverrides(initData: Partial<InitDataDefinition & GlobalInitDataDefinition> | InitData): void;
4329
4354
  }
@@ -5442,6 +5467,7 @@ export declare interface MessageObject {
5442
5467
  }
5443
5468
 
5444
5469
  export declare abstract class Node_2 extends PlanElement {
5470
+ readonly nodeType: NodeType;
5445
5471
  getNumberOfConnectedWalls(): number;
5446
5472
  getMaxWallHeight(): number;
5447
5473
  }
@@ -5455,13 +5481,18 @@ export declare interface NodeDimensionTransferable {
5455
5481
  export declare class NodePlanElementViewModel extends PlanElementViewModel {
5456
5482
  protected _nodeUiMesh: DraggableNode;
5457
5483
  protected _defaultRingColor: number;
5484
+ private _fenceEnabled;
5458
5485
  constructor(planObject: PlanObject);
5459
5486
  update(): void;
5487
+ setFenceEnabled(enabled: boolean): void;
5460
5488
  setTopView(enabled: boolean): void;
5461
5489
  getSize(): Vector3;
5462
5490
  show(): void;
5463
5491
  hide(): void;
5464
5492
  protected getSelectionRingColor(): number;
5493
+ protected getFillColor(): number;
5494
+ protected getDefaultRingColor(): number;
5495
+ protected _applyNodeStyle(): void;
5465
5496
  select(): void;
5466
5497
  deselect(): void;
5467
5498
  hoverOn(): void;
@@ -5469,14 +5500,21 @@ export declare class NodePlanElementViewModel extends PlanElementViewModel {
5469
5500
  protected _generateBoundingBox(): RoomleEventedMesh;
5470
5501
  setZoom(zoom: number): void;
5471
5502
  setFillColor(color: number): void;
5503
+ getSphereColor(): number;
5472
5504
  setDefaultRingColor(color: number): void;
5505
+ getInnerRingColor(): number;
5473
5506
  }
5474
5507
 
5475
5508
  export declare interface NodePlanObject extends PlanObject {
5509
+ readonly nodeType: NodeType;
5476
5510
  getNumberOfConnectedWalls(): number;
5477
5511
  getMaxWallHeight(): number;
5478
5512
  }
5479
5513
 
5514
+ export declare interface NodeType {
5515
+ value: Enumify_3<typeof CORE_NODE_TYPE>;
5516
+ }
5517
+
5480
5518
  export { Nullable }
5481
5519
 
5482
5520
  export declare interface Object3DRoomleEventMap extends Object3DEventMap {
@@ -6330,6 +6368,15 @@ export declare class PlannerSceneManager extends ConfiguratorSceneManager implem
6330
6368
  private _roomlePlannerCallback;
6331
6369
  private _homagIntelligence;
6332
6370
  private _itemsLoadingStatePromises;
6371
+ /**
6372
+ * Debounced wrapper around {@link _saveConfiguration}
6373
+ */
6374
+ private _debouncedSaveConfiguration;
6375
+ /**
6376
+ * In-flight configuration auto-saves (config POST + thumbnails), awaited by
6377
+ * {@link awaitPendingConfigurationSaves}.
6378
+ */
6379
+ private _pendingConfigurationSaves;
6333
6380
  private _sky;
6334
6381
  private _drawingEnabled;
6335
6382
  private _configureInRoom;
@@ -6498,13 +6545,13 @@ export declare class PlannerSceneManager extends ConfiguratorSceneManager implem
6498
6545
  private _hideAllNodeIfThereAreNoSelections;
6499
6546
  protected _onCameraMove(): boolean;
6500
6547
  private _showWallNodes;
6501
- private _applyFenceNodeStyle;
6502
6548
  private _shouldKeepFenceNodesVisible;
6503
6549
  private _updateNodeSize;
6504
6550
  private _sendPlanObjectPositions;
6505
6551
  private _sendMultiSelectionPosition;
6506
6552
  private _sendSelectedPlanObjectPositions;
6507
6553
  private _sendRoomAreaData;
6554
+ private _getSelectedTerrainFloorContext;
6508
6555
  private _updateMeasurementPositions;
6509
6556
  private _sendElementMeasurements;
6510
6557
  private _ensure3dDimensionHelperInitialized;
@@ -6578,7 +6625,7 @@ export declare class PlannerSceneManager extends ConfiguratorSceneManager implem
6578
6625
  protected enablePanning(): void;
6579
6626
  protected disablePanning(): void;
6580
6627
  setObjectToWallMeasurementLength(planElementId: number, measurementId: number, length: number): void;
6581
- setWallMeasurementLength(measurementId: number, length: number, wallDirection: EMSConstant): void;
6628
+ setWallMeasurementLength(measurementId: number, length: number, wallDirection: EMSConstant, measurementKind?: 'edge2d' | 'sloping'): void;
6582
6629
  setMeasurementLineLength(measurementId: number, length: number, wallDirection: string): void;
6583
6630
  setNodeZCoordinate(nodeId: number, z: number): void;
6584
6631
  protected setEventHandlerObject(object: Object3D, secondaryObject?: Object3D): void;
@@ -6598,6 +6645,8 @@ export declare class PlannerSceneManager extends ConfiguratorSceneManager implem
6598
6645
  toggleInteriorLightsSceneSettings(on: boolean): void;
6599
6646
  private _insertRapiItems;
6600
6647
  insertRapiObjects(rapiIds: InsertItemIdInfo[]): Promise<InsertItemResult[]>;
6648
+ private _scheduleConfigurationSave;
6649
+ awaitPendingConfigurationSaves(): Promise<void>;
6601
6650
  private _saveConfiguration;
6602
6651
  externalObjectRequestAddOnContainers(groupId: string, subArticleId: string): Promise<void>;
6603
6652
  externalObjectAddSubArticle(subArticleId: string, rootModuleId: string, parentModuleId: string, insertPosition?: number[]): void;
@@ -6606,6 +6655,7 @@ export declare class PlannerSceneManager extends ConfiguratorSceneManager implem
6606
6655
  }
6607
6656
 
6608
6657
  export declare interface PlanNode extends KernelObject {
6658
+ readonly nodeType: NodeType;
6609
6659
  getMaxWallHeight(): number;
6610
6660
  getNumberOfConnectedWalls(): number;
6611
6661
  }
@@ -7398,6 +7448,7 @@ export declare class RapiAccess implements Context {
7398
7448
  private _flushOfflineQueue;
7399
7449
  private _setQueuedConfiguration;
7400
7450
  saveConfiguration(configuration: RapiConfiguration): Promise<RapiConfiguration>;
7451
+ awaitPendingSaves(): Promise<void>;
7401
7452
  getShortUrl(referencedId: RapiId, type: SHORT_TYPES): Promise<RapiShortId>;
7402
7453
  resolveShortUrl(id: string): Promise<RapiShortId>;
7403
7454
  private _peekData;
@@ -8972,10 +9023,10 @@ export declare class RoomleGLBViewer implements GlobalAPI, Context, ExternalEmbe
8972
9023
  }
8973
9024
 
8974
9025
  export declare class RoomleLightSource {
8975
- private _lightSourceId;
9026
+ private readonly _lightSourceId;
8976
9027
  private _light;
8977
9028
  private _savedPosition;
8978
- constructor(lightSourceId: number, lightSource: Light);
9029
+ constructor(lightSourceId: number, lightSource: Light, enableShadows: boolean);
8979
9030
  get light(): Light;
8980
9031
  set light(light: Light);
8981
9032
  get lightSourceId(): number;
@@ -9297,6 +9348,7 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
9297
9348
  * this includes info about size, rotation, id and parts
9298
9349
  */
9299
9350
  getObjects(): Promise<UiPlanObject[]>;
9351
+ awaitPendingConfigurationSaves(): Promise<void>;
9300
9352
  /**
9301
9353
  * get all info available for the current plan, including objects, rooms and walls
9302
9354
  */
@@ -9483,7 +9535,7 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
9483
9535
  enableMeasurementLineDrawing(): void;
9484
9536
  disableMeasurementLineDrawing(): void;
9485
9537
  setObjectToWallMeasurementLength(planElementId: number, measurementId: number, length: number): void;
9486
- setWallMeasurementLength(measurementId: number, length: number, wallDirection: EMSConstant): void;
9538
+ setWallMeasurementLength(measurementId: number, length: number, wallDirection: EMSConstant, measurementKind?: 'edge2d' | 'sloping'): void;
9487
9539
  setMeasurementLineLength(measurementId: number, length: number, wallDirection: string): void;
9488
9540
  setNodeZCoordinate(nodeId: number, z: number): void;
9489
9541
  escapeDrawing(cancelDrawing: boolean): void;
@@ -10357,7 +10409,7 @@ export declare const STEP_GROUPS: {
10357
10409
  };
10358
10410
  readonly wallLength: {
10359
10411
  readonly finalize: "on-signal";
10360
- readonly methods: ["setLengthOfEdge2D"];
10412
+ readonly methods: ["setLengthOfEdge2D", "setLengthOfSlopingEdge"];
10361
10413
  };
10362
10414
  readonly wallThickness: {
10363
10415
  readonly finalize: "on-signal";
@@ -10930,9 +10982,17 @@ export declare interface WallDefinition {
10930
10982
  };
10931
10983
  }
10932
10984
 
10933
- export declare type WallDimension = DimensionDefinition<Vector3, Vector3>;
10985
+ export declare type WallDimension = DimensionDefinition<Vector3, Vector3> & {
10986
+ label?: string;
10987
+ measurementKind?: WallMeasurementKind;
10988
+ slopingMeasurement?: WallMeasurementVariant;
10989
+ };
10934
10990
 
10935
- export declare type WallDimensionTransferable = DimensionDefinition<Position2, Position3>;
10991
+ export declare type WallDimensionTransferable = DimensionDefinition<Position2, Position3> & {
10992
+ label?: string;
10993
+ measurementKind?: WallMeasurementKind;
10994
+ slopingMeasurement?: WallMeasurementVariant;
10995
+ };
10936
10996
 
10937
10997
  export declare interface WallExtensionType {
10938
10998
  ExtendBegin: EMSConstant;
@@ -10943,6 +11003,14 @@ export declare interface WallExtensionType {
10943
11003
  export declare class WallMaterial extends BaseMaterial {
10944
11004
  }
10945
11005
 
11006
+ export declare type WallMeasurementKind = 'edge2d' | 'sloping';
11007
+
11008
+ export declare interface WallMeasurementVariant {
11009
+ label: string;
11010
+ length: number;
11011
+ measurementKind: WallMeasurementKind;
11012
+ }
11013
+
10946
11014
  export declare class WallPlanElementViewModel extends PlanElementViewModel {
10947
11015
  private _lineForInvisibleWall?;
10948
11016
  private _hasAttachedAttic;
@@ -10950,7 +11018,7 @@ export declare class WallPlanElementViewModel extends PlanElementViewModel {
10950
11018
  constructor(planObject: PlanObject);
10951
11019
  get isSelected(): boolean;
10952
11020
  private _checkHasAttachedAttic;
10953
- getWallDimension(zoomFactor: number, clientWidth: number, clientHeight: number, preferredSideOverride?: LeftOrRightWallSide): WallDimension;
11021
+ getWallDimension(zoomFactor: number, clientWidth: number, clientHeight: number, preferredSideOverride?: LeftOrRightWallSide, isTerrainMeasurement?: boolean): WallDimension;
10954
11022
  private calculateNormalVector;
10955
11023
  private calculateShiftingFactor;
10956
11024
  private calculateAtticInfo;
@@ -11001,7 +11069,15 @@ export declare interface WallSide {
11001
11069
  value: Enumify_3<typeof WALL_SIDES>;
11002
11070
  }
11003
11071
 
11004
- export declare interface WebGpuConfig {
11072
+ export declare class WebGpuConfig implements WebGpuConfigDefinition {
11073
+ autoDetectQualityLevel: boolean;
11074
+ autoQualityMinFps: number;
11075
+ autoQualityMaxFps: number;
11076
+ topLight: WebGpuTopLightConfig;
11077
+ groundReflection: WebGpuGroundReflectionConfig;
11078
+ }
11079
+
11080
+ export declare interface WebGpuConfigDefinition {
11005
11081
  /**
11006
11082
  * @description If true, the initial webgpu quality level is autodetected based on
11007
11083
  * a benchmark of the graphics hardware. If false, the default quality level is used.
@@ -11023,6 +11099,73 @@ export declare interface WebGpuConfig {
11023
11099
  * @default 59
11024
11100
  */
11025
11101
  autoQualityMaxFps?: number;
11102
+ /**
11103
+ * @description Visual configuration for the WebGPU top light and its shadow.
11104
+ */
11105
+ topLight?: WebGpuTopLightConfigDefinition;
11106
+ /**
11107
+ * @description Visual configuration for the WebGPU ground reflection.
11108
+ */
11109
+ groundReflection?: WebGpuGroundReflectionConfigDefinition;
11110
+ }
11111
+
11112
+ export declare class WebGpuGroundReflectionConfig implements WebGpuGroundReflectionConfigDefinition {
11113
+ enabled: boolean;
11114
+ intensity: number;
11115
+ startFadeout: number;
11116
+ endFadeout: number;
11117
+ }
11118
+
11119
+ export declare interface WebGpuGroundReflectionConfigDefinition {
11120
+ /**
11121
+ * @description Enables or disables the ground reflection entirely.
11122
+ * When disabled the floor still receives shadows but does not render a reflection,
11123
+ * which also avoids the extra reflection render pass.
11124
+ * @default true
11125
+ */
11126
+ enabled?: boolean;
11127
+ /**
11128
+ * @description Strength of the ground reflection.
11129
+ * 0 means no reflection, 1 means a full mirror-like reflection.
11130
+ * @default 0.1
11131
+ */
11132
+ intensity?: number;
11133
+ /**
11134
+ * @description Depth at which the reflection starts to fade out.
11135
+ * @default 0.05
11136
+ */
11137
+ startFadeout?: number;
11138
+ /**
11139
+ * @description Depth at which the reflection is fully faded out.
11140
+ * @default 0.15
11141
+ */
11142
+ endFadeout?: number;
11143
+ }
11144
+
11145
+ export declare class WebGpuTopLightConfig implements WebGpuTopLightConfigDefinition {
11146
+ intensity: number;
11147
+ shadowIntensity: number;
11148
+ shadowRadius: number;
11149
+ }
11150
+
11151
+ export declare interface WebGpuTopLightConfigDefinition {
11152
+ /**
11153
+ * @description Intensity (brightness) of the WebGPU top light.
11154
+ * @default 1
11155
+ */
11156
+ intensity?: number;
11157
+ /**
11158
+ * @description Intensity of the shadow cast by the top light.
11159
+ * 0 means no shadow, 1 means a fully opaque shadow.
11160
+ * @default 1
11161
+ */
11162
+ shadowIntensity?: number;
11163
+ /**
11164
+ * @description Softness (blur radius) of the top light's shadow edges.
11165
+ * Higher values produce softer shadows.
11166
+ * @default 1.1
11167
+ */
11168
+ shadowRadius?: number;
11026
11169
  }
11027
11170
 
11028
11171
  export declare class ZoomChangeEvent {
@@ -1,13 +1,13 @@
1
1
  import { i as e, t } from "./kernel-C7YDLxq8.mjs";
2
- import { _t as n, mt as r } from "./threejs-utils-E4yVZATI.mjs";
2
+ import { mt as n, vt as r } from "./threejs-utils-DQCcy2fJ.mjs";
3
3
  import { xi as i } from "./three.core-tV_4n8Wg.mjs";
4
- import { A as a, B as o, F as s, G as c, H as l, I as u, J as d, K as f, M as p, N as m, P as h, S as g, U as _, W as v, a as y, b, c as x, ct as S, dt as C, i as w, it as T, k as E, l as D, n as O, nt as k, ot as A, pt as j, rt as M, s as N, st as P, ut as ee, v as F, x as I, y as L } from "./main-KSs3XdXO.mjs";
5
- import { n as R } from "./script-loader-DKx7ZvkP.mjs";
6
- import { t as z } from "./configurator-D6lTTIlU.mjs";
7
- import { t as B } from "./planner-ykpwnVZa.mjs";
8
- import { n as V, t as H } from "./glb-viewer-CuRDCxVq.mjs";
9
- import { t as U } from "./api-ckpzIPty.mjs";
10
- import "./packages-oEzg5zoT.mjs";
4
+ import { A as a, B as o, F as s, G as c, H as l, I as u, J as d, K as f, M as p, N as m, P as h, S as g, U as _, W as v, a as y, b, c as x, ct as S, dt as C, i as w, it as T, k as E, l as D, n as O, nt as k, ot as A, pt as j, rt as M, s as N, st as P, ut as ee, v as F, x as I, y as L } from "./main-BkA09a6W.mjs";
5
+ import { n as R } from "./script-loader-vbm5pELp.mjs";
6
+ import { t as z } from "./configurator-CEHN5oY2.mjs";
7
+ import { t as B } from "./planner-DsChoUH0.mjs";
8
+ import { n as V, t as H } from "./glb-viewer-C03QVqRZ.mjs";
9
+ import { t as U } from "./api-D64AfPG6.mjs";
10
+ import "./packages-CNXXlUsV.mjs";
11
11
  import "./roomle-headless-setup-Cc8EAnVe.mjs";
12
12
  import { createRequire as W } from "module";
13
13
  //#region packages/headless-core/src/headless-script-loader.ts
@@ -436,6 +436,6 @@ var G = W(import.meta.url), K = {}, q = [
436
436
  }
437
437
  };
438
438
  //#endregion
439
- export { t as CONFIGURATION_TYPE, r as CORE_EDGE_TYPE, n as CORE_OBJECT_CATEGORY, e as CORE_PERMISSION_TO_DELETE, z as Configurator, y as ConfiguratorUiCallbacks, p as FloorPlanElementViewModel, H as GlbViewer, d as GlobalCallback, o as HI_CONTEXT_ACTION, ae as HeadlessRoomleSdk, ee as IdbManager, O as Main, g as MeasurementLinePlanElementViewModel, F as PLAN_ELEMENT_CHANGE_TYPES, u as PlanElementViewModel, s as PlanObjectViewModel, B as Planner, A as RapiAccess, P as RapiInvalidIdError, S as RapiOfflineError, U as RoomDesignerApi, E as RoomleConfigurator, V as RoomleGLBViewer, j as RoomleLightSource, x as RoomlePlanner, L as RoomlePlannerUiCallback, D as RoomleSdk, h as StaticPlanObjectViewModel, m as WallPlanElementViewModel, l as createExtObj, f as createExtObjId, C as getCatalogIdFromConfigurationHash, _ as isExtObjId, v as isExternalObject, b as isFirefox, I as isSafari, c as removeExtObjIdPrefix };
439
+ export { t as CONFIGURATION_TYPE, n as CORE_EDGE_TYPE, r as CORE_OBJECT_CATEGORY, e as CORE_PERMISSION_TO_DELETE, z as Configurator, y as ConfiguratorUiCallbacks, p as FloorPlanElementViewModel, H as GlbViewer, d as GlobalCallback, o as HI_CONTEXT_ACTION, ae as HeadlessRoomleSdk, ee as IdbManager, O as Main, g as MeasurementLinePlanElementViewModel, F as PLAN_ELEMENT_CHANGE_TYPES, u as PlanElementViewModel, s as PlanObjectViewModel, B as Planner, A as RapiAccess, P as RapiInvalidIdError, S as RapiOfflineError, U as RoomDesignerApi, E as RoomleConfigurator, V as RoomleGLBViewer, j as RoomleLightSource, x as RoomlePlanner, L as RoomlePlannerUiCallback, D as RoomleSdk, h as StaticPlanObjectViewModel, m as WallPlanElementViewModel, l as createExtObj, f as createExtObjId, C as getCatalogIdFromConfigurationHash, _ as isExtObjId, v as isExternalObject, b as isFirefox, I as isSafari, c as removeExtObjIdPrefix };
440
440
 
441
441
  //# sourceMappingURL=roomle-headless.js.map