@speckle/objectloader 2.24.0 → 2.24.2

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 (2) hide show
  1. package/package.json +3 -3
  2. package/types/index.d.cts +57 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@speckle/objectloader",
3
- "version": "2.24.0",
3
+ "version": "2.24.2",
4
4
  "description": "Simple API helper to stream in objects from the Speckle Server.",
5
5
  "main": "dist/objectloader.cjs",
6
6
  "module": "dist/objectloader.esm.js",
@@ -13,7 +13,7 @@
13
13
  "default": "./dist/objectloader.esm.js"
14
14
  },
15
15
  "require": {
16
- "types": "./types/index.d.ts",
16
+ "types": "./types/index.d.cts",
17
17
  "default": "./dist/objectloader.cjs"
18
18
  }
19
19
  },
@@ -51,7 +51,7 @@
51
51
  "license": "Apache-2.0",
52
52
  "dependencies": {
53
53
  "@babel/core": "^7.17.9",
54
- "@speckle/shared": "^2.24.0",
54
+ "@speckle/shared": "^2.24.2",
55
55
  "core-js": "^3.21.1",
56
56
  "lodash": "^4.17.21",
57
57
  "lodash-es": "^4.17.21",
@@ -0,0 +1,57 @@
1
+ /**
2
+ * This is written manually & should be kept up to date when the API changes
3
+ */
4
+
5
+ export interface SpeckleObject extends Record<string, unknown> {
6
+ totalChildrenCount?: number
7
+ }
8
+
9
+ type Logger = (...args: unknown[]) => void
10
+
11
+ export type ProgressStage = 'download' | 'construction'
12
+
13
+ /**
14
+ * ObjectLoader class
15
+ */
16
+ class ObjectLoader {
17
+ constructor(params: {
18
+ serverUrl: string
19
+ streamId: string
20
+ objectId: string
21
+ token?: string
22
+ options?: Partial<{
23
+ /**
24
+ * Whether IndexedDB caching is enabled (disabled by default in node envs where IndexedDB is not available)
25
+ */
26
+ enableCaching: boolean
27
+ fullyTraverseArrays: boolean
28
+ excludeProps: Array
29
+ /**
30
+ * Override fetch implementation (necessary in node environment)
31
+ */
32
+ fetch: GlobalFetch['fetch']
33
+ /**
34
+ * Optionally provide alternative for console.log
35
+ */
36
+ customLogger: Logger
37
+ /**
38
+ * Optionally provide alternative for console.warn
39
+ */
40
+ customWarner: Logger
41
+ }>
42
+ })
43
+
44
+ static createFromObjects(objects: object[]): ObjectLoader
45
+ static createFromJSON(input: string): ObjectLoader
46
+ async getRootObject(): Promise<SpeckleObject>
47
+ async getTotalObjectCount(): Promise<number>
48
+ async getAndConstructObject(
49
+ onProgress: (e: { stage: ProgressStage; current: number; total: number }) => void
50
+ ): SpeckleObject | SpeckleObject[]
51
+
52
+ async *getObjectIterator(): AsyncGenerator<SpeckleObject, SpeckleObject>
53
+ async getObject(id: string): Promise<Record<string, unknown>>
54
+ dispose(): void
55
+ }
56
+
57
+ export default ObjectLoader