-
Notifications
You must be signed in to change notification settings - Fork 8
/
nodes3DApi.ts
61 lines (56 loc) · 1.66 KB
/
nodes3DApi.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
// Copyright 2020 Cognite AS
import { BaseResourceAPI, CursorAndAsyncIterator } from '@cognite/sdk-core';
import {
CogniteInternalId,
CursorResponse,
InternalId,
List3DNodesQuery,
Filter3DNodesQuery,
Node3D,
} from '../../types';
export class Nodes3DAPI extends BaseResourceAPI<Node3D> {
public list(
modelId: CogniteInternalId,
revisionId: CogniteInternalId,
scope?: List3DNodesQuery
): CursorAndAsyncIterator<Node3D> {
const path = this.url(`${modelId}/revisions/${revisionId}/nodes`);
return super.listEndpoint(
(params) => this.get<CursorResponse<Node3D[]>>(path, { params }),
scope
);
}
public filter(
modelId: CogniteInternalId,
revisionId: CogniteInternalId,
scope?: Filter3DNodesQuery
): CursorAndAsyncIterator<Node3D> {
const path = this.url(`${modelId}/revisions/${revisionId}/nodes/list`);
return super.listEndpoint(
(params) => this.post<CursorResponse<Node3D[]>>(path, { data: params }),
scope
);
}
public retrieve = (
modelId: CogniteInternalId,
revisionId: CogniteInternalId,
ids: InternalId[]
): Promise<Node3D[]> => {
const path = this.url(`${modelId}/revisions/${revisionId}/nodes/byids`);
return super.retrieveEndpoint(ids, {}, path);
};
public listAncestors(
modelId: CogniteInternalId,
revisionId: CogniteInternalId,
nodeId: CogniteInternalId,
scope?: List3DNodesQuery
): CursorAndAsyncIterator<Node3D> {
const path = this.url(
`${modelId}/revisions/${revisionId}/nodes/${nodeId}/ancestors`
);
return super.listEndpoint(
(params) => this.get<CursorResponse<Node3D[]>>(path, { params }),
scope
);
}
}