@cognite/reveal 4.27.1-dev.20251105 → 4.28.0-dev.20251106

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.
@@ -3,14 +3,14 @@
3
3
  */
4
4
  export { Image360, Image360IconStyle } from './src/entity/Image360';
5
5
  export { Image360Revision } from './src/entity/Image360Revision';
6
- export { Image360Collection, Image360AnnotationAssetFilter, Image360AnnotationAssetQueryResult, InstanceLinkable360ImageAnnotationType, AssetAnnotationImage360Info } from './src/collection/Image360Collection';
6
+ export { Image360Collection, Image360AnnotationAssetFilter, Image360AnnotationAssetQueryResult, InstanceLinkable360ImageAnnotationType, AssetAnnotationImage360Info, AssetHybridAnnotationImage360Info } from './src/collection/Image360Collection';
7
7
  export { Image360Facade } from './src/Image360Facade';
8
8
  export { Image360CollectionFactory } from './src/collection/Image360CollectionFactory';
9
9
  export { Image360Entity } from './src/entity/Image360Entity';
10
10
  export { Image360RevisionEntity } from './src/entity/Image360RevisionEntity';
11
11
  export { Image360Visualization } from './src/entity/Image360Visualization';
12
12
  export { Image360EnteredDelegate, Image360ExitedDelegate } from './src/types';
13
- export { Image360AnnotationAppearance, Image360AnnotationFilterOptions } from './src/annotation/types';
13
+ export { Image360AnnotationAppearance, Image360AnnotationFilterOptions, Image360AnnotationInstanceReference } from './src/annotation/types';
14
14
  export { Image360AnnotationIntersection } from './src/annotation/Image360AnnotationIntersection';
15
15
  export { Image360Annotation } from './src/annotation/Image360Annotation';
16
16
  export { DefaultImage360Collection } from './src/collection/DefaultImage360Collection';
@@ -19,6 +19,7 @@ export declare class ImageAnnotationObject<T extends DataSourceType> implements
19
19
  private static createObjectData;
20
20
  private static createObjectDetectionAnnotationGeometry;
21
21
  private static createAssetLinkAnnotationData;
22
+ private static createInstanceLinkAnnotationData;
22
23
  private static createFdmAnnotationData;
23
24
  private constructor();
24
25
  private getRotationFromFace;
@@ -3,4 +3,4 @@
3
3
  */
4
4
  import { DataSourceType } from '../../../data-providers';
5
5
  import { InstanceReference } from '../../../data-providers/src/types';
6
- export declare function getInstanceIdFromAnnotation<T extends DataSourceType>(annotation: T['image360AnnotationType']): InstanceReference<T> | undefined;
6
+ export declare function getClassicInstanceRef<T extends DataSourceType>(annotation: T['image360AnnotationType']): InstanceReference<T> | undefined;
@@ -1,8 +1,11 @@
1
1
  /*!
2
2
  * Copyright 2025 Cognite AS
3
3
  */
4
- import { AnnotationData, AnnotationsObjectDetection, AnnotationsTypesImagesAssetLink, AnnotationType } from '@cognite/sdk';
5
- import { DataSourceType, DMDataSourceType } from '../../../data-providers';
4
+ import { AnnotationData, AnnotationModel, AnnotationsObjectDetection, AnnotationsTypesImagesAssetLink, AnnotationsTypesImagesInstanceLink, AnnotationType } from '@cognite/sdk';
5
+ import { DataSourceType, DMDataSourceType, ImageAssetLinkAnnotationInfo, ImageInstanceLinkAnnotationInfo } from '../../../data-providers';
6
6
  export declare function isCoreDmImage360Annotation(annotation: DataSourceType['image360AnnotationType']): annotation is DMDataSourceType['image360AnnotationType'];
7
7
  export declare function isAnnotationsObjectDetection(annotationType: AnnotationType, annotation: AnnotationData): annotation is AnnotationsObjectDetection;
8
- export declare function isAnnotationAssetLink(annotationType: AnnotationType, annotation: AnnotationData): annotation is AnnotationsTypesImagesAssetLink;
8
+ export declare function isImageAssetLinkAnnotation(annotation: AnnotationModel): annotation is ImageAssetLinkAnnotationInfo;
9
+ export declare function isAssetLinkAnnotationData(annotationData: AnnotationData): annotationData is AnnotationsTypesImagesAssetLink;
10
+ export declare function isImageInstanceLinkAnnotation(annotation: AnnotationModel): annotation is ImageInstanceLinkAnnotationInfo;
11
+ export declare function isAnnotationsTypesImagesInstanceLink(annotationData: AnnotationData): annotationData is AnnotationsTypesImagesInstanceLink;
@@ -2,6 +2,7 @@
2
2
  * Copyright 2023 Cognite AS
3
3
  */
4
4
  import { AnnotationStatus } from '@cognite/sdk';
5
+ import { ClassicDataSourceType, DataSourceType, DMDataSourceType, InstanceReference } from '../../../data-providers';
5
6
  import { Color } from 'three';
6
7
  /**
7
8
  * The appearance of a 360 image annotation
@@ -26,3 +27,7 @@ export type Image360AnnotationFilterOptions = {
26
27
  */
27
28
  status?: 'all' | AnnotationStatus | AnnotationStatus[];
28
29
  };
30
+ /**
31
+ * Instance reference type for image 360 annotations
32
+ */
33
+ export type Image360AnnotationInstanceReference<T extends DataSourceType> = T extends ClassicDataSourceType ? InstanceReference<ClassicDataSourceType | DMDataSourceType> : InstanceReference<DMDataSourceType>;
@@ -2,7 +2,7 @@
2
2
  * Copyright 2023 Cognite AS
3
3
  */
4
4
  import { EventTrigger } from '../../../utilities';
5
- import { AssetAnnotationImage360Info, Image360AnnotationAssetFilter, Image360AnnotationAssetQueryResult, Image360Collection } from './Image360Collection';
5
+ import { AssetAnnotationImage360Info, AssetHybridAnnotationImage360Info, Image360AnnotationAssetFilter, Image360AnnotationAssetQueryResult, Image360Collection } from './Image360Collection';
6
6
  import { Image360Entity } from '../entity/Image360Entity';
7
7
  import { Image360EnteredDelegate, Image360ExitedDelegate } from '../types';
8
8
  import { IconCollection, IconCullingScheme } from '../icons/IconCollection';
@@ -98,5 +98,6 @@ export declare class DefaultImage360Collection<T extends DataSourceType> impleme
98
98
  getAnnotationsInfo(source: 'assets'): Promise<AssetAnnotationImage360Info<ClassicDataSourceType>[]>;
99
99
  getAnnotationsInfo(source: 'cdm'): Promise<AssetAnnotationImage360Info<DMDataSourceType>[]>;
100
100
  getAnnotationsInfo(source: 'all'): Promise<AssetAnnotationImage360Info<DataSourceType>[]>;
101
+ getAnnotationsInfo(source: 'hybrid'): Promise<AssetHybridAnnotationImage360Info[]>;
101
102
  getAllFileDescriptors(): Image360FileDescriptor[];
102
103
  }
@@ -3,13 +3,13 @@
3
3
  */
4
4
  import { Image360 } from './../entity/Image360';
5
5
  import { Image360EnteredDelegate, Image360ExitedDelegate } from '../types';
6
- import { Image360AnnotationAppearance } from '../annotation/types';
6
+ import { Image360AnnotationAppearance, Image360AnnotationInstanceReference } from '../annotation/types';
7
7
  import { Image360Revision } from '../entity/Image360Revision';
8
8
  import { IdEither } from '@cognite/sdk';
9
9
  import { Image360Annotation } from '../annotation/Image360Annotation';
10
- import { ClassicDataSourceType, DataSourceType, DMDataSourceType } from '../../../data-providers';
10
+ import { ClassicDataSourceType, DataSourceType, DMDataSourceType, ImageInstanceLinkAnnotationInfo } from '../../../data-providers';
11
11
  import { Matrix4 } from 'three';
12
- import { ImageAssetLinkAnnotationInfo, InstanceReference } from '../../../data-providers';
12
+ import { ImageAssetLinkAnnotationInfo } from '../../../data-providers';
13
13
  /**
14
14
  * Annotation type that may be linked to assets. Only relevant for classic annotations, where some
15
15
  * annotation types are visible in Reveal, but not linkable to assets
@@ -22,7 +22,7 @@ export type Image360AnnotationAssetFilter<T extends DataSourceType = ClassicData
22
22
  /**
23
23
  * Reference to the wanted asset
24
24
  */
25
- assetRef: InstanceReference<T>;
25
+ assetRef: Image360AnnotationInstanceReference<T>;
26
26
  };
27
27
  /**
28
28
  * Asset search return type, including information about the image in which the asset is found
@@ -41,6 +41,23 @@ export type AssetAnnotationImage360Info<T extends DataSourceType = ClassicDataSo
41
41
  */
42
42
  imageRevision: Image360Revision<T>;
43
43
  };
44
+ /**
45
+ * Asset search return type, including information about the image in which the asset is found
46
+ */
47
+ export type AssetHybridAnnotationImage360Info = {
48
+ /**
49
+ * Reference to the relevant asset
50
+ */
51
+ annotationInfo: ImageAssetLinkAnnotationInfo | ImageInstanceLinkAnnotationInfo;
52
+ /**
53
+ * The image entity in which the asset was found
54
+ */
55
+ imageEntity: Image360<ClassicDataSourceType>;
56
+ /**
57
+ * The image revision in which the asset was found
58
+ */
59
+ imageRevision: Image360Revision<ClassicDataSourceType>;
60
+ };
44
61
  /**
45
62
  * Result item from an asset annotation query
46
63
  */
@@ -178,6 +195,10 @@ export interface Image360Collection<T extends DataSourceType = ClassicDataSource
178
195
  * Fetches annotations from the CDF Annotation APIs, which are linked to CDF assets
179
196
  */
180
197
  getAnnotationsInfo(source: 'assets'): Promise<AssetAnnotationImage360Info<ClassicDataSourceType>[]>;
198
+ /**
199
+ * Fetches annotations from the CDF Core Data Model
200
+ */
201
+ getAnnotationsInfo(source: 'hybrid'): Promise<AssetHybridAnnotationImage360Info[]>;
181
202
  /**
182
203
  * Fetches annotations from the CDF Core Data Model
183
204
  */
@@ -188,5 +209,5 @@ export interface Image360Collection<T extends DataSourceType = ClassicDataSource
188
209
  *
189
210
  * @param source What source data to pull the annotation info from. Must be `'asset'`, `'cdm'` or `'all'`
190
211
  */
191
- getAnnotationsInfo(source: 'assets' | 'cdm' | 'all'): Promise<AssetAnnotationImage360Info<ClassicDataSourceType>[] | AssetAnnotationImage360Info<DMDataSourceType> | AssetAnnotationImage360Info<DataSourceType>[]>;
212
+ getAnnotationsInfo(source: 'assets' | 'hybrid' | 'cdm' | 'all'): Promise<AssetAnnotationImage360Info<ClassicDataSourceType>[] | AssetAnnotationImage360Info<DMDataSourceType> | AssetAnnotationImage360Info<DataSourceType>[] | AssetHybridAnnotationImage360Info[]>;
192
213
  }
@@ -10,7 +10,7 @@ export { CoreDm360ImageAnnotationProvider } from './src/image-360-data-providers
10
10
  export { Cdf360CdmDescriptorProvider } from './src/image-360-data-providers/descriptor-providers/datamodels/cdm/Cdf360CdmDescriptorProvider';
11
11
  export { Cdf360ImageFileProvider } from './src/image-360-data-providers/Cdf360ImageFileProvider';
12
12
  export { Cdf360DataModelsDescriptorProvider, Image360DataModelIdentifier, Image360CoreDataModelIdentifier, Image360LegacyDataModelIdentifier, Image360BaseIdentifier } from './src/image-360-data-providers/descriptor-providers/datamodels/system-space/Cdf360DataModelsDescriptorProvider';
13
- export { isClassic360Identifier, isCoreDmImage360Identifier, isLegacyDM360Identifier, isFdm360ImageCollectionIdentifier, isImageAssetLinkAnnotation, isClassicMetadata360Identifier } from './src/image-360-data-providers/shared';
13
+ export { isClassic360Identifier, isCoreDmImage360Identifier, isLegacyDM360Identifier, isFdm360ImageCollectionIdentifier, isClassicMetadata360Identifier } from './src/image-360-data-providers/shared';
14
14
  export { CoreDmImage360Annotation } from './src/image-360-data-providers/cdm/types';
15
15
  export { LocalModelDataProvider } from './src/model-data-providers/LocalModelDataProvider';
16
16
  export { LocalModelIdentifier } from './src/model-identifiers/LocalModelIdentifier';
@@ -28,7 +28,7 @@ export { CdfPointCloudDMStylableObjectProvider } from './src/pointcloud-stylable
28
28
  export { DummyPointCloudDMStylableObjectProvider } from './src/pointcloud-stylable-object-providers/pointcloud-volume-data-providers/DummyPointCloudDMStylableObjectProvider';
29
29
  export { Image360Provider, Image360ProviderMap, getImage360ProviderFromMap } from './src/Image360Provider';
30
30
  export { Image360ProviderCombiner } from './src/Image360ProviderCombiner';
31
- export { BinaryFileProvider, JsonFileProvider, File3dFormat, BlobOutputMetadata, Image360Descriptor, Image360FileProvider, Image360Face, Image360Texture, Image360FileDescriptor, ImageAssetLinkAnnotationInfo, InstanceReference, Image360Id, Image360RevisionId } from './src/types';
31
+ export { BinaryFileProvider, JsonFileProvider, File3dFormat, BlobOutputMetadata, Image360Descriptor, Image360FileProvider, Image360Face, Image360Texture, Image360FileDescriptor, ImageAssetLinkAnnotationInfo, ImageInstanceLinkAnnotationInfo, InstanceReference, Image360Id, Image360RevisionId } from './src/types';
32
32
  export { fetchDMModelIdFromRevisionId } from './src/requests/fetchDMModelIdFromRevisionId';
33
33
  export { isDMPointCloudVolumeObject, isClassicPointCloudVolumeObject, isDMPointCloudVolume, isClassicPointCloudVolume } from './src/utilities/utils';
34
34
  export { DataSourceType, ClassicDataSourceType, DMDataSourceType, ClassicModelIdentifierType, DMModelIdentifierType, isClassicIdentifier, isDMIdentifier, InternalDataSourceType, LocalDataSourceType, LocalModelIdentifierType, isLocalIdentifier, GenericDataSourceType } from './src/DataSourceType';
@@ -3,8 +3,9 @@
3
3
  */
4
4
  import { Image360Provider } from './Image360Provider';
5
5
  import { ClassicDataSourceType, DataSourceType, DMDataSourceType } from './DataSourceType';
6
- import { Historical360ImageSet, Image360AnnotationFilterDelegate, Image360AnnotationProvider, Image360AnnotationSpecifier, Image360DescriptorProvider, Image360Face, Image360FileDescriptor, Image360FileProvider, InstanceReference } from './types';
7
- import { AssetAnnotationImage360Info, DefaultImage360Collection, Image360AnnotationAssetQueryResult } from '../../360-images';
6
+ import { Historical360ImageSet, Image360AnnotationFilterDelegate, Image360AnnotationProvider, Image360AnnotationSpecifier, Image360DescriptorProvider, Image360Face, Image360FileDescriptor, Image360FileProvider } from './types';
7
+ import { AssetAnnotationImage360Info, AssetHybridAnnotationImage360Info, DefaultImage360Collection, Image360AnnotationAssetQueryResult } from '../../360-images';
8
+ import { Image360AnnotationInstanceReference } from '../../360-images/src/annotation/types';
8
9
  export declare class Image360ProviderCombiner<T extends DataSourceType> implements Image360Provider<T> {
9
10
  private readonly _descriptorProvider;
10
11
  private readonly _fileProvider;
@@ -14,8 +15,9 @@ export declare class Image360ProviderCombiner<T extends DataSourceType> implemen
14
15
  get360ImageFiles(image360FaceDescriptors: Image360FileDescriptor[], abortSignal?: AbortSignal): Promise<Image360Face[]>;
15
16
  getLowResolution360ImageFiles(image360FaceDescriptors: Image360FileDescriptor[], abortSignal?: AbortSignal): Promise<Image360Face[]>;
16
17
  getRelevant360ImageAnnotations(annotationSpecifier: Image360AnnotationSpecifier<T>): Promise<T['image360AnnotationType'][]>;
17
- findImageAnnotationsForInstance(instanceFilter: InstanceReference<T>, collection: DefaultImage360Collection<T>): Promise<Image360AnnotationAssetQueryResult<T>[]>;
18
+ findImageAnnotationsForInstance(instanceFilter: Image360AnnotationInstanceReference<T>, collection: DefaultImage360Collection<T>): Promise<Image360AnnotationAssetQueryResult<T>[]>;
18
19
  getAllImage360AnnotationInfos(source: 'assets', collection: DefaultImage360Collection<T>, annotationFilter: Image360AnnotationFilterDelegate<T>): Promise<AssetAnnotationImage360Info<ClassicDataSourceType>[]>;
20
+ getAllImage360AnnotationInfos(source: 'hybrid', collection: DefaultImage360Collection<T>, annotationFilter: Image360AnnotationFilterDelegate<T>): Promise<AssetHybridAnnotationImage360Info[]>;
19
21
  getAllImage360AnnotationInfos(source: 'cdm', collection: DefaultImage360Collection<T>, annotationFilter: Image360AnnotationFilterDelegate<T>): Promise<AssetAnnotationImage360Info<DMDataSourceType>[]>;
20
22
  getAllImage360AnnotationInfos(source: 'all', collection: DefaultImage360Collection<T>, annotationFilter: Image360AnnotationFilterDelegate<T>): Promise<AssetAnnotationImage360Info<DataSourceType>[]>;
21
23
  }
@@ -4,14 +4,16 @@
4
4
  import { CogniteClient } from '@cognite/sdk';
5
5
  import { Image360AnnotationFilterDelegate, Image360AnnotationProvider, Image360AnnotationSpecifier, InstanceReference } from '../types';
6
6
  import { ClassicDataSourceType, DataSourceType, DMDataSourceType } from '../DataSourceType';
7
- import { AssetAnnotationImage360Info, DefaultImage360Collection, Image360AnnotationAssetQueryResult } from '../../../360-images';
7
+ import { AssetAnnotationImage360Info, AssetHybridAnnotationImage360Info, DefaultImage360Collection, Image360AnnotationAssetQueryResult } from '../../../360-images';
8
8
  export declare class Cdf360ImageAnnotationProvider implements Image360AnnotationProvider<ClassicDataSourceType> {
9
9
  private readonly _client;
10
10
  constructor(client: CogniteClient);
11
- findImageAnnotationsForInstance(asset: InstanceReference<ClassicDataSourceType>, collection: DefaultImage360Collection<ClassicDataSourceType>): Promise<Image360AnnotationAssetQueryResult<ClassicDataSourceType>[]>;
11
+ findImageAnnotationsForInstance(asset: InstanceReference<DataSourceType>, collection: DefaultImage360Collection<ClassicDataSourceType>): Promise<Image360AnnotationAssetQueryResult<ClassicDataSourceType>[]>;
12
12
  getRelevant360ImageAnnotations(annotationSpecifier: Image360AnnotationSpecifier<ClassicDataSourceType>): Promise<ClassicDataSourceType['image360AnnotationType'][]>;
13
13
  private getFilesByAssetRef;
14
+ private getAnnotationDataByAssetRefType;
14
15
  getAllImage360AnnotationInfos(source: 'assets', collection: DefaultImage360Collection<ClassicDataSourceType>, annotationFilter: Image360AnnotationFilterDelegate<ClassicDataSourceType>): Promise<AssetAnnotationImage360Info<ClassicDataSourceType>[]>;
16
+ getAllImage360AnnotationInfos(source: 'hybrid', collection: DefaultImage360Collection<ClassicDataSourceType>, annotationFilter: Image360AnnotationFilterDelegate<ClassicDataSourceType>): Promise<AssetHybridAnnotationImage360Info[]>;
15
17
  getAllImage360AnnotationInfos(source: 'cdm', collection: DefaultImage360Collection<ClassicDataSourceType>, annotationFilter: Image360AnnotationFilterDelegate<ClassicDataSourceType>): Promise<AssetAnnotationImage360Info<DMDataSourceType>[]>;
16
18
  getAllImage360AnnotationInfos(source: 'all', collection: DefaultImage360Collection<ClassicDataSourceType>, annotationFilter: Image360AnnotationFilterDelegate<ClassicDataSourceType>): Promise<AssetAnnotationImage360Info<DataSourceType>[]>;
17
19
  private createFileIdToEntityRevisionMap;
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { ClassicDataSourceType, DataSourceType, DMDataSourceType } from '../DataSourceType';
5
5
  import { Image360AnnotationFilterDelegate, Image360AnnotationProvider, Image360AnnotationSpecifier, InstanceReference } from '../types';
6
- import { AssetAnnotationImage360Info, DefaultImage360Collection, Image360AnnotationAssetQueryResult } from '../../../360-images';
6
+ import { AssetAnnotationImage360Info, AssetHybridAnnotationImage360Info, DefaultImage360Collection, Image360AnnotationAssetQueryResult } from '../../../360-images';
7
7
  import { CogniteClient } from '@cognite/sdk';
8
8
  export declare class CoreDm360ImageAnnotationProvider implements Image360AnnotationProvider<DMDataSourceType> {
9
9
  private readonly _client;
@@ -11,6 +11,7 @@ export declare class CoreDm360ImageAnnotationProvider implements Image360Annotat
11
11
  getRelevant360ImageAnnotations(annotationSpecifier: Image360AnnotationSpecifier<DMDataSourceType>): Promise<DMDataSourceType['image360AnnotationType'][]>;
12
12
  findImageAnnotationsForInstance(instanceFilter: InstanceReference<DMDataSourceType>, collection: DefaultImage360Collection<DMDataSourceType>): Promise<Image360AnnotationAssetQueryResult<DMDataSourceType>[]>;
13
13
  getAllImage360AnnotationInfos(source: 'assets', collection: DefaultImage360Collection<DMDataSourceType>, annotationFilter: Image360AnnotationFilterDelegate<DMDataSourceType>): Promise<AssetAnnotationImage360Info<ClassicDataSourceType>[]>;
14
+ getAllImage360AnnotationInfos(source: 'hybrid', collection: DefaultImage360Collection<DMDataSourceType>, annotationFilter: Image360AnnotationFilterDelegate<DMDataSourceType>): Promise<AssetHybridAnnotationImage360Info[]>;
14
15
  getAllImage360AnnotationInfos(source: 'cdm', collection: DefaultImage360Collection<DMDataSourceType>, annotationFilter: Image360AnnotationFilterDelegate<DMDataSourceType>): Promise<AssetAnnotationImage360Info<DMDataSourceType>[]>;
15
16
  getAllImage360AnnotationInfos(source: 'all', collection: DefaultImage360Collection<DMDataSourceType>, annotationFilter: Image360AnnotationFilterDelegate<DMDataSourceType>): Promise<AssetAnnotationImage360Info<DataSourceType>[]>;
16
17
  }
@@ -2,7 +2,7 @@ import { Image360Provider } from '../Image360Provider';
2
2
  import { Historical360ImageSet, Image360AnnotationFilterDelegate, Image360AnnotationSpecifier, Image360Face, Image360FileDescriptor, InstanceReference } from '../types';
3
3
  import { CogniteInternalId, IdEither } from '@cognite/sdk';
4
4
  import { ClassicDataSourceType, DataSourceType, DMDataSourceType } from '../DataSourceType';
5
- import { AssetAnnotationImage360Info, DefaultImage360Collection, Image360AnnotationAssetQueryResult } from '../../../360-images';
5
+ import { AssetAnnotationImage360Info, AssetHybridAnnotationImage360Info, DefaultImage360Collection, Image360AnnotationAssetQueryResult } from '../../../360-images';
6
6
  export declare class Local360ImageProvider implements Image360Provider<ClassicDataSourceType> {
7
7
  private readonly _modelUrl;
8
8
  constructor(modelUrl: string);
@@ -13,6 +13,7 @@ export declare class Local360ImageProvider implements Image360Provider<ClassicDa
13
13
  getLowResolution360ImageFiles(image360FaceDescriptors: Image360FileDescriptor[], abortSignal?: AbortSignal): Promise<Image360Face[]>;
14
14
  getFilesByAssetRef(_assetId: IdEither): Promise<CogniteInternalId[]>;
15
15
  getAllImage360AnnotationInfos(source: 'assets', collection: DefaultImage360Collection<ClassicDataSourceType>, annotationFilter: Image360AnnotationFilterDelegate<ClassicDataSourceType>): Promise<AssetAnnotationImage360Info<ClassicDataSourceType>[]>;
16
+ getAllImage360AnnotationInfos(source: 'hybrid', collection: DefaultImage360Collection<ClassicDataSourceType>, annotationFilter: Image360AnnotationFilterDelegate<ClassicDataSourceType>): Promise<AssetHybridAnnotationImage360Info[]>;
16
17
  getAllImage360AnnotationInfos(source: 'cdm', collection: DefaultImage360Collection<ClassicDataSourceType>, annotationFilter: Image360AnnotationFilterDelegate<ClassicDataSourceType>): Promise<AssetAnnotationImage360Info<DMDataSourceType>[]>;
17
18
  getAllImage360AnnotationInfos(source: 'all', collection: DefaultImage360Collection<ClassicDataSourceType>, annotationFilter: Image360AnnotationFilterDelegate<ClassicDataSourceType>): Promise<AssetAnnotationImage360Info<DataSourceType>[]>;
18
19
  }
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * Copyright 2025 Cognite AS
3
3
  */
4
- import { Image360RevisionId, ImageAssetLinkAnnotationInfo } from '../types';
4
+ import { Image360RevisionId } from '../types';
5
5
  import { DataSourceType } from '../DataSourceType';
6
- import { AnnotationModel, Metadata } from '@cognite/sdk';
6
+ import { Metadata } from '@cognite/sdk';
7
7
  import { Image360DataModelIdentifier, Image360LegacyDataModelIdentifier } from './descriptor-providers/datamodels/system-space/Cdf360DataModelsDescriptorProvider';
8
8
  export declare function isClassicMetadata360Identifier(id: DataSourceType['image360Identifier']): id is Metadata & {
9
9
  site_id: string;
@@ -15,4 +15,3 @@ export declare function isLegacyDM360Identifier(id: DataSourceType['image360Iden
15
15
  export declare function isCoreDmImage360Identifier(id: DataSourceType['image360Identifier']): id is Image360DataModelIdentifier;
16
16
  export declare function isFdm360ImageCollectionIdentifier(id: DataSourceType['image360Identifier']): id is Image360DataModelIdentifier;
17
17
  export declare function isSameImage360RevisionId<T extends DataSourceType>(id0: Image360RevisionId<T>, id1: Image360RevisionId<T>): boolean;
18
- export declare function isImageAssetLinkAnnotation(annotation: AnnotationModel): annotation is ImageAssetLinkAnnotationInfo;
@@ -1,11 +1,12 @@
1
1
  /*!
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
- import { AnnotationModel, AnnotationsTypesImagesAssetLink, IdEither } from '@cognite/sdk';
4
+ import { AnnotationModel, AnnotationsTypesImagesAssetLink, AnnotationsTypesImagesInstanceLink, IdEither } from '@cognite/sdk';
5
5
  import * as THREE from 'three';
6
6
  import { ClassicDataSourceType, DataSourceType, DMDataSourceType } from './DataSourceType';
7
- import { AssetAnnotationImage360Info, DefaultImage360Collection, Image360AnnotationAssetQueryResult } from '../../360-images';
7
+ import { AssetAnnotationImage360Info, AssetHybridAnnotationImage360Info, DefaultImage360Collection, Image360AnnotationAssetQueryResult } from '../../360-images';
8
8
  import { DMInstanceRef } from '../../utilities';
9
+ import { Image360AnnotationInstanceReference } from '../../360-images/src/annotation/types';
9
10
  export type Image360AnnotationFilterDelegate<T extends DataSourceType> = (annotation: T['image360AnnotationType']) => boolean;
10
11
  export interface JsonFileProvider {
11
12
  getJsonFile(baseUrl: string, fileName: string): Promise<any>;
@@ -31,11 +32,12 @@ export type Image360AnnotationSpecifier<T extends DataSourceType> = {
31
32
  export type InstanceReference<T extends DataSourceType> = T extends ClassicDataSourceType ? IdEither : DMInstanceRef;
32
33
  export interface Image360AnnotationProvider<T extends DataSourceType> {
33
34
  getRelevant360ImageAnnotations(annotationSpecifier: Image360AnnotationSpecifier<T>): Promise<T['image360AnnotationType'][]>;
34
- findImageAnnotationsForInstance(instanceFilter: InstanceReference<T>, collection: DefaultImage360Collection<T>): Promise<Image360AnnotationAssetQueryResult<T>[]>;
35
+ findImageAnnotationsForInstance(instanceFilter: Image360AnnotationInstanceReference<T>, collection: DefaultImage360Collection<T>): Promise<Image360AnnotationAssetQueryResult<T>[]>;
35
36
  getAllImage360AnnotationInfos(source: 'assets', collection: DefaultImage360Collection<T>, annotationFilter: Image360AnnotationFilterDelegate<T>): Promise<AssetAnnotationImage360Info<ClassicDataSourceType>[]>;
37
+ getAllImage360AnnotationInfos(source: 'hybrid', collection: DefaultImage360Collection<T>, annotationFilter: Image360AnnotationFilterDelegate<T>): Promise<AssetHybridAnnotationImage360Info[]>;
36
38
  getAllImage360AnnotationInfos(source: 'cdm', collection: DefaultImage360Collection<T>, annotationFilter: Image360AnnotationFilterDelegate<T>): Promise<AssetAnnotationImage360Info<DMDataSourceType>[]>;
37
39
  getAllImage360AnnotationInfos(source: 'all', collection: DefaultImage360Collection<T>, annotationFilter: Image360AnnotationFilterDelegate<T>): Promise<AssetAnnotationImage360Info<DataSourceType>[]>;
38
- getAllImage360AnnotationInfos(source: 'assets' | 'cdm' | 'all', collection: DefaultImage360Collection<T>, annotationFilter: Image360AnnotationFilterDelegate<T>): Promise<AssetAnnotationImage360Info<ClassicDataSourceType>[] | AssetAnnotationImage360Info<DMDataSourceType>[] | AssetAnnotationImage360Info<DataSourceType>[]>;
40
+ getAllImage360AnnotationInfos(source: 'assets' | 'hybrid' | 'cdm' | 'all', collection: DefaultImage360Collection<T>, annotationFilter: Image360AnnotationFilterDelegate<T>): Promise<AssetAnnotationImage360Info<ClassicDataSourceType>[] | AssetAnnotationImage360Info<DMDataSourceType>[] | AssetAnnotationImage360Info<DataSourceType>[] | AssetHybridAnnotationImage360Info[]>;
39
41
  }
40
42
  export interface Image360DescriptorProvider<T extends DataSourceType> {
41
43
  get360ImageDescriptors(metadataFilter: T['image360Identifier'], preMultipliedRotation: boolean): Promise<Historical360ImageSet<T>[]>;
@@ -53,6 +55,15 @@ export type ImageAssetLinkAnnotationInfo = Omit<AnnotationModel, 'data'> & {
53
55
  */
54
56
  data: AnnotationsTypesImagesAssetLink;
55
57
  };
58
+ /**
59
+ * A CDF AnnotationModel with a narrower type representing an image instance link
60
+ */
61
+ export type ImageInstanceLinkAnnotationInfo = Omit<AnnotationModel, 'data'> & {
62
+ /**
63
+ * The data associated with the image instance link
64
+ */
65
+ data: AnnotationsTypesImagesInstanceLink;
66
+ };
56
67
  export type Historical360ImageSet<T extends DataSourceType> = Image360RevisionDescriptor<T> & {
57
68
  imageRevisions: Image360Descriptor<T>[];
58
69
  };
@@ -136,6 +147,7 @@ export type NodeResultSetExpression = {
136
147
  from?: any;
137
148
  through?: any;
138
149
  chainTo?: any;
150
+ direction?: 'outwards' | 'inwards';
139
151
  };
140
152
  };
141
153
  export type EdgeResultSetExpression = {
@@ -33,3 +33,16 @@ export declare const COGNITE_360_IMAGE_SOURCE: {
33
33
  readonly version: "v1";
34
34
  readonly type: "view";
35
35
  };
36
+ export declare const COGNITE_360_IMAGE_COLLECTION_SOURCE: {
37
+ readonly externalId: "Cognite360ImageCollection";
38
+ readonly space: "cdf_cdm";
39
+ readonly version: "v1";
40
+ readonly type: "view";
41
+ };
42
+ export declare const COGNITE_360_IMAGE_STATION_SOURCE: {
43
+ readonly externalId: "Cognite360ImageStation";
44
+ readonly space: "cdf_cdm";
45
+ readonly version: "v1";
46
+ readonly type: "view";
47
+ };
48
+ export declare const MAX_DMS_QUERY_LIMIT = 10000;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cognite/reveal",
3
- "version": "4.27.1-dev.20251105",
3
+ "version": "4.28.0-dev.20251106",
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": {
@@ -80,7 +80,7 @@
80
80
  },
81
81
  "devDependencies": {
82
82
  "@azure/msal-browser": "^3.13.0",
83
- "@cognite/sdk": "^10.0.0",
83
+ "@cognite/sdk": "^10.1.3",
84
84
  "@microsoft/api-extractor": "^7.43.1",
85
85
  "@types/dat.gui": "^0.7.13",
86
86
  "@types/gl": "^6.0.5",