@cognite/reveal 4.28.5-dev.20251204 → 4.28.5-dev.20251205

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.
@@ -15,6 +15,7 @@ export declare class CadManager {
15
15
  private readonly _cadModelUpdateHandler;
16
16
  private readonly _cadModelMap;
17
17
  private readonly _unsubscribeConsumedSectors;
18
+ private readonly _unsubscribeLoadingState;
18
19
  private _compatibleFileFormat;
19
20
  private _needsRedraw;
20
21
  private readonly _loadingStateChangedTrigger;
@@ -2,14 +2,18 @@
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
4
  import * as THREE from 'three';
5
+ import { EventTrigger, type EventListener } from '../../utilities';
5
6
  import { ConsumedSector } from '../../cad-parsers';
6
- import { Observable } from 'rxjs';
7
7
  import { SectorCuller } from './sector/culling/SectorCuller';
8
8
  import { CadLoadingHints } from './CadLoadingHints';
9
9
  import { LoadingState } from '../../model-base';
10
10
  import { CadModelBudget } from './CadModelBudget';
11
11
  import { SectorLoadingSpent } from './sector/culling/types';
12
12
  import { CadNode } from '../../cad-model';
13
+ type CadModelUpdateHandlerEvents = {
14
+ onNewConsumedSector: EventTrigger<(consumedSector: ConsumedSector) => void>;
15
+ onLoadingStateChanged: EventTrigger<(loadingState: LoadingState) => void>;
16
+ };
13
17
  export declare class CadModelUpdateHandler {
14
18
  private readonly _sectorCuller;
15
19
  private readonly _modelStateHandler;
@@ -22,8 +26,8 @@ export declare class CadModelUpdateHandler {
22
26
  private readonly _prioritizedLoadingHintsSubject;
23
27
  private readonly _modelSubject;
24
28
  private readonly _budgetSubject;
25
- private readonly _progressSubject;
26
- private _updateObservable;
29
+ private readonly _consumedSectorSubscription;
30
+ private readonly _events;
27
31
  constructor(sectorCuller: SectorCuller, continuousModelStreaming?: boolean);
28
32
  dispose(): void;
29
33
  updateCamera(camera: THREE.PerspectiveCamera, cameraInMotion: boolean): void;
@@ -35,8 +39,7 @@ export declare class CadModelUpdateHandler {
35
39
  removeModel(model: CadNode): void;
36
40
  updateLoadingHints(cadLoadingHints: CadLoadingHints): void;
37
41
  private updatePrioritizedAreas;
38
- consumedSectorObservable(): Observable<ConsumedSector>;
39
- getLoadingStateObserver(): Observable<LoadingState>;
42
+ on<EventKey extends keyof CadModelUpdateHandlerEvents>(event: EventKey, listener: EventListener<CadModelUpdateHandlerEvents, EventKey>): () => void;
40
43
  reportNewSectorsLoaded(loadedCountChange: number): void;
41
44
  /**
42
45
  * When loading hints of a CAD model changes, propagate the event down to the stream and either add or remove
@@ -44,3 +47,4 @@ export declare class CadModelUpdateHandler {
44
47
  */
45
48
  private loadingModelObservable;
46
49
  }
50
+ export {};
@@ -10,7 +10,7 @@ export declare class CadModelFactory {
10
10
  private _gltfSectorRepository;
11
11
  constructor(materialManager: CadMaterialManager, modelMetadataProvider: ModelMetadataProvider, modelDataProvider: ModelDataProvider);
12
12
  loadModelMetadata(externalModelIdentifier: ModelIdentifier): Promise<CadModelMetadata>;
13
- createModel(metadata: CadModelMetadata, geometryFilter?: GeometryFilter): Promise<CadNode>;
13
+ createModel(metadata: CadModelMetadata, geometryFilter?: GeometryFilter): CadNode;
14
14
  private getSectorRepository;
15
15
  dispose(): void;
16
16
  }
@@ -5,7 +5,7 @@ export { traverseDepthFirst } from './src/objectTraversal';
5
5
  export { transformCameraConfiguration } from './src/transformCameraConfiguration';
6
6
  export { RandomColors } from './src/RandomColors';
7
7
  export { CameraConfiguration } from './src/CameraConfiguration';
8
- export { EventTrigger } from './src/events/EventTrigger';
8
+ export { EventTrigger, EventListener } from './src/events/EventTrigger';
9
9
  export { InputHandler } from './src/events/InputHandler';
10
10
  export { PointerEvents } from './src/events/PointerEvents';
11
11
  export { PointerEventsTarget } from './src/events/PointerEventsTarget';
@@ -1,6 +1,10 @@
1
1
  /*!
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
+ /**
5
+ * Extracts the listener type from an EventTrigger in an events map
6
+ */
7
+ export type EventListener<T extends Record<string, EventTrigger<(...args: any[]) => void>>, K extends keyof T> = T[K] extends EventTrigger<infer U> ? U : never;
4
8
  /**
5
9
  * Subscribable event source.
6
10
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cognite/reveal",
3
- "version": "4.28.5-dev.20251204",
3
+ "version": "4.28.5-dev.20251205",
4
4
  "description": "WebGL based 3D viewer for CAD and point clouds processed in Cognite Data Fusion.",
5
5
  "homepage": "https://github.com/cognitedata/reveal/tree/master/viewer",
6
6
  "repository": {