@loaders.gl/loader-utils 4.4.0-alpha.1 → 4.4.0-alpha.9

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 (160) hide show
  1. package/README.md +8 -0
  2. package/dist/format-types.js +1 -0
  3. package/dist/format-types.js.map +1 -0
  4. package/dist/index.cjs +165 -287
  5. package/dist/index.cjs.map +4 -4
  6. package/dist/index.d.ts +6 -9
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +4 -6
  9. package/dist/index.js.map +1 -0
  10. package/dist/json-loader.js +2 -1
  11. package/dist/json-loader.js.map +1 -0
  12. package/dist/lib/binary-utils/array-buffer-utils.d.ts +2 -2
  13. package/dist/lib/binary-utils/array-buffer-utils.d.ts.map +1 -1
  14. package/dist/lib/binary-utils/array-buffer-utils.js +1 -0
  15. package/dist/lib/binary-utils/array-buffer-utils.js.map +1 -0
  16. package/dist/lib/binary-utils/dataview-copy-utils.js +1 -0
  17. package/dist/lib/binary-utils/dataview-copy-utils.js.map +1 -0
  18. package/dist/lib/binary-utils/get-first-characters.d.ts +1 -1
  19. package/dist/lib/binary-utils/get-first-characters.d.ts.map +1 -1
  20. package/dist/lib/binary-utils/get-first-characters.js +1 -0
  21. package/dist/lib/binary-utils/get-first-characters.js.map +1 -0
  22. package/dist/lib/binary-utils/memory-conversion-utils.d.ts +10 -4
  23. package/dist/lib/binary-utils/memory-conversion-utils.d.ts.map +1 -1
  24. package/dist/lib/binary-utils/memory-conversion-utils.js +40 -4
  25. package/dist/lib/binary-utils/memory-conversion-utils.js.map +1 -0
  26. package/dist/lib/binary-utils/memory-copy-utils.js +1 -0
  27. package/dist/lib/binary-utils/memory-copy-utils.js.map +1 -0
  28. package/dist/lib/env-utils/assert.js +1 -0
  29. package/dist/lib/env-utils/assert.js.map +1 -0
  30. package/dist/lib/env-utils/globals.js +1 -0
  31. package/dist/lib/env-utils/globals.js.map +1 -0
  32. package/dist/lib/file-provider/data-view-file.d.ts.map +1 -1
  33. package/dist/lib/file-provider/data-view-file.js +3 -1
  34. package/dist/lib/file-provider/data-view-file.js.map +1 -0
  35. package/dist/lib/file-provider/file-handle-file.js +1 -0
  36. package/dist/lib/file-provider/file-handle-file.js.map +1 -0
  37. package/dist/lib/file-provider/file-provider-interface.js +1 -0
  38. package/dist/lib/file-provider/file-provider-interface.js.map +1 -0
  39. package/dist/lib/file-provider/file-provider.js +1 -0
  40. package/dist/lib/file-provider/file-provider.js.map +1 -0
  41. package/dist/lib/files/blob-file.js +1 -0
  42. package/dist/lib/files/blob-file.js.map +1 -0
  43. package/dist/lib/files/file.js +1 -0
  44. package/dist/lib/files/file.js.map +1 -0
  45. package/dist/lib/files/http-file.js +1 -0
  46. package/dist/lib/files/http-file.js.map +1 -0
  47. package/dist/lib/files/node-file-facade.js +1 -0
  48. package/dist/lib/files/node-file-facade.js.map +1 -0
  49. package/dist/lib/files/sources.js +1 -0
  50. package/dist/lib/files/sources.js.map +1 -0
  51. package/dist/lib/filesystems/filesystem.js +1 -0
  52. package/dist/lib/filesystems/filesystem.js.map +1 -0
  53. package/dist/lib/filesystems/node-filesystem-facade.js +1 -0
  54. package/dist/lib/filesystems/node-filesystem-facade.js.map +1 -0
  55. package/dist/lib/iterators/async-iteration.d.ts +14 -14
  56. package/dist/lib/iterators/async-iteration.d.ts.map +1 -1
  57. package/dist/lib/iterators/async-iteration.js +68 -16
  58. package/dist/lib/iterators/async-iteration.js.map +1 -0
  59. package/dist/lib/iterators/text-iterators.js +2 -1
  60. package/dist/lib/iterators/text-iterators.js.map +1 -0
  61. package/dist/lib/javascript-utils/is-type.d.ts +59 -0
  62. package/dist/lib/javascript-utils/is-type.d.ts.map +1 -0
  63. package/dist/lib/javascript-utils/is-type.js +68 -0
  64. package/dist/lib/javascript-utils/is-type.js.map +1 -0
  65. package/dist/lib/log-utils/log.js +2 -1
  66. package/dist/lib/log-utils/log.js.map +1 -0
  67. package/dist/lib/module-utils/js-module-utils.js +1 -0
  68. package/dist/lib/module-utils/js-module-utils.js.map +1 -0
  69. package/dist/lib/node/buffer.browser.js +1 -0
  70. package/dist/lib/node/buffer.browser.js.map +1 -0
  71. package/dist/lib/node/buffer.js +1 -0
  72. package/dist/lib/node/buffer.js.map +1 -0
  73. package/dist/lib/node/fs.browser.js +1 -0
  74. package/dist/lib/node/fs.browser.js.map +1 -0
  75. package/dist/lib/node/promisify.js +1 -0
  76. package/dist/lib/node/promisify.js.map +1 -0
  77. package/dist/lib/node/stream.browser.js +1 -0
  78. package/dist/lib/node/stream.browser.js.map +1 -0
  79. package/dist/lib/node/stream.js +1 -0
  80. package/dist/lib/node/stream.js.map +1 -0
  81. package/dist/lib/option-utils/merge-options.js +1 -0
  82. package/dist/lib/option-utils/merge-options.js.map +1 -0
  83. package/dist/lib/parser-utils/parse-json.js +1 -0
  84. package/dist/lib/parser-utils/parse-json.js.map +1 -0
  85. package/dist/lib/path-utils/file-aliases.js +1 -0
  86. package/dist/lib/path-utils/file-aliases.js.map +1 -0
  87. package/dist/lib/path-utils/get-cwd.js +1 -0
  88. package/dist/lib/path-utils/get-cwd.js.map +1 -0
  89. package/dist/lib/path-utils/path.js +2 -1
  90. package/dist/lib/path-utils/path.js.map +1 -0
  91. package/dist/lib/request-utils/request-scheduler.d.ts +4 -0
  92. package/dist/lib/request-utils/request-scheduler.d.ts.map +1 -1
  93. package/dist/lib/request-utils/request-scheduler.js +15 -0
  94. package/dist/lib/request-utils/request-scheduler.js.map +1 -0
  95. package/dist/lib/sources/data-source.d.ts +4 -4
  96. package/dist/lib/sources/data-source.d.ts.map +1 -1
  97. package/dist/lib/sources/data-source.js +2 -1
  98. package/dist/lib/sources/data-source.js.map +1 -0
  99. package/dist/lib/sources/image-source.js +1 -0
  100. package/dist/lib/sources/image-source.js.map +1 -0
  101. package/dist/lib/sources/image-tile-source.js +1 -0
  102. package/dist/lib/sources/image-tile-source.js.map +1 -0
  103. package/dist/lib/sources/tile-source-adapter.js +1 -0
  104. package/dist/lib/sources/tile-source-adapter.js.map +1 -0
  105. package/dist/lib/sources/tile-source.js +1 -0
  106. package/dist/lib/sources/tile-source.js.map +1 -0
  107. package/dist/lib/sources/utils/image-type.js +1 -0
  108. package/dist/lib/sources/utils/image-type.js.map +1 -0
  109. package/dist/lib/sources/utils/utils.js +2 -1
  110. package/dist/lib/sources/utils/utils.js.map +1 -0
  111. package/dist/lib/sources/vector-source.js +1 -0
  112. package/dist/lib/sources/vector-source.js.map +1 -0
  113. package/dist/lib/sources/vector-tile-source.js +1 -0
  114. package/dist/lib/sources/vector-tile-source.js.map +1 -0
  115. package/dist/lib/worker-loader-utils/create-loader-worker.js +5 -1
  116. package/dist/lib/worker-loader-utils/create-loader-worker.js.map +1 -0
  117. package/dist/lib/worker-loader-utils/encode-with-worker.d.ts +1 -1
  118. package/dist/lib/worker-loader-utils/encode-with-worker.d.ts.map +1 -1
  119. package/dist/lib/worker-loader-utils/encode-with-worker.js +5 -2
  120. package/dist/lib/worker-loader-utils/encode-with-worker.js.map +1 -0
  121. package/dist/lib/worker-loader-utils/parse-with-worker.d.ts +1 -1
  122. package/dist/lib/worker-loader-utils/parse-with-worker.d.ts.map +1 -1
  123. package/dist/lib/worker-loader-utils/parse-with-worker.js +6 -3
  124. package/dist/lib/worker-loader-utils/parse-with-worker.js.map +1 -0
  125. package/dist/loader-types.d.ts +91 -67
  126. package/dist/loader-types.d.ts.map +1 -1
  127. package/dist/loader-types.js +1 -0
  128. package/dist/loader-types.js.map +1 -0
  129. package/dist/source-types.js +1 -0
  130. package/dist/source-types.js.map +1 -0
  131. package/dist/types.d.ts +9 -4
  132. package/dist/types.d.ts.map +1 -1
  133. package/dist/types.js +1 -0
  134. package/dist/types.js.map +1 -0
  135. package/dist/workers/json-worker.js +1 -0
  136. package/dist/workers/json-worker.js.map +1 -0
  137. package/dist/writer-types.d.ts +14 -7
  138. package/dist/writer-types.d.ts.map +1 -1
  139. package/dist/writer-types.js +1 -0
  140. package/dist/writer-types.js.map +1 -0
  141. package/package.json +4 -4
  142. package/src/index.ts +36 -9
  143. package/src/lib/binary-utils/array-buffer-utils.ts +3 -3
  144. package/src/lib/binary-utils/get-first-characters.ts +1 -1
  145. package/src/lib/binary-utils/memory-conversion-utils.ts +58 -8
  146. package/src/lib/file-provider/data-view-file.ts +6 -1
  147. package/src/lib/iterators/async-iteration.ts +94 -19
  148. package/src/lib/iterators/text-iterators.ts +1 -1
  149. package/src/lib/javascript-utils/is-type.ts +130 -0
  150. package/src/lib/node/buffer.ts +1 -1
  151. package/src/lib/path-utils/path.ts +1 -1
  152. package/src/lib/request-utils/request-scheduler.ts +15 -0
  153. package/src/lib/sources/data-source.ts +5 -5
  154. package/src/lib/sources/utils/utils.ts +1 -1
  155. package/src/lib/worker-loader-utils/create-loader-worker.ts +4 -1
  156. package/src/lib/worker-loader-utils/encode-with-worker.ts +5 -2
  157. package/src/lib/worker-loader-utils/parse-with-worker.ts +5 -3
  158. package/src/loader-types.ts +115 -84
  159. package/src/types.ts +17 -9
  160. package/src/writer-types.ts +15 -8
@@ -8,97 +8,126 @@ import {ReadableFile} from './lib/files/file';
8
8
 
9
9
  // LOADERS
10
10
 
11
+ /**
12
+ * Core Loader Options
13
+ */
14
+ export type StrictLoaderOptions = {
15
+ core?: {
16
+ /** Base URI for resolving relative paths */
17
+ baseUri?: string;
18
+ /** fetch options or a custom fetch function */
19
+ fetch?: typeof fetch | FetchLike | RequestInit | null;
20
+ /** Do not throw on errors */
21
+ nothrow?: boolean;
22
+
23
+ /** loader selection, search first for supplied mimeType */
24
+ mimeType?: string;
25
+ /** loader selection, provide fallback mimeType is server does not provide */
26
+ fallbackMimeType?: string;
27
+ /** loader selection, avoid searching registered loaders */
28
+ ignoreRegisteredLoaders?: boolean;
29
+
30
+ // general
31
+ /** Experimental: Supply a logger to the parser */
32
+ log?: any;
33
+
34
+ // batched parsing
35
+
36
+ /** Size of each batch. `auto` matches batches to size of incoming chunks */
37
+ batchSize?: number | 'auto';
38
+ /** Minimal amount of time between batches */
39
+ batchDebounceMs?: number;
40
+ /** Stop loading after a given number of rows (compare SQL limit clause) */
41
+ limit?: 0;
42
+ /** Experimental: Stop loading after reaching */
43
+ _limitMB?: 0;
44
+ /** Generate metadata batches */
45
+ metadata?: boolean;
46
+ /** Transforms to run on incoming batches */
47
+ transforms?: TransformBatches[];
48
+
49
+ // module loading
50
+
51
+ /** Force to load WASM libraries from local file system in NodeJS or from loaders.gl CDN in a web browser */
52
+ useLocalLibraries?: boolean;
53
+
54
+ // workers
55
+
56
+ /** CDN load workers from */
57
+ CDN?: string | null;
58
+ /** Set to `false` to disable workers */
59
+ worker?: boolean;
60
+ /** Number of concurrent workers (per loader) on desktop browser */
61
+ maxConcurrency?: number;
62
+ /** Number of concurrent workers (per loader) on mobile browsers */
63
+ maxMobileConcurrency?: number;
64
+ /** Set to `false` to prevent reuse workers */
65
+ reuseWorkers?: boolean;
66
+ /** Whether to use workers under Node.js (experimental) */
67
+ _nodeWorkers?: boolean;
68
+ /** set to 'test' to run local worker */
69
+ _workerType?: string;
70
+ };
71
+
72
+ /** Any additional JS libraries */
73
+ modules?: Record<string, unknown>;
74
+
75
+ // Accept other keys (loader options objects, e.g. `options.csv`, `options.json` ...)
76
+ [loaderId: string]: Record<string, unknown> | undefined;
77
+ };
78
+
11
79
  /**
12
80
  * Core Loader Options
13
81
  */
14
82
  export type LoaderOptions = {
15
- /** fetch options or a custom fetch function */
16
- fetch?: typeof fetch | FetchLike | RequestInit | null;
17
- /** Do not throw on errors */
18
- nothrow?: boolean;
83
+ core?: StrictLoaderOptions['core'];
84
+ modules?: StrictLoaderOptions['modules'];
19
85
 
20
- /** loader selection, search first for supplied mimeType */
86
+ // Deprecated top-level aliases for core options
87
+ /** @deprecated Use options.core.baseUri */
88
+ baseUri?: string;
89
+ /** @deprecated Use options.core.fetch */
90
+ fetch?: typeof fetch | FetchLike | RequestInit | null;
91
+ /** @deprecated Use options.core.mimeType */
21
92
  mimeType?: string;
22
- /** loader selection, provide fallback mimeType is server does not provide */
93
+ /** @deprecated Use options.core.fallbackMimeType */
23
94
  fallbackMimeType?: string;
24
- /** loader selection, avoid searching registered loaders */
95
+ /** @deprecated Use options.core.ignoreRegisteredLoaders */
25
96
  ignoreRegisteredLoaders?: boolean;
26
-
27
- // general
28
- /** Experimental: Supply a logger to the parser */
97
+ /** @deprecated Use options.core.nothrow */
98
+ nothrow?: boolean;
99
+ /** @deprecated Use options.core.log */
29
100
  log?: any;
30
-
31
- // batched parsing
32
-
33
- /** Size of each batch. `auto` matches batches to size of incoming chunks */
34
- batchSize?: number | 'auto';
35
- /** Minimal amount of time between batches */
36
- batchDebounceMs?: number;
37
- /** Stop loading after a given number of rows (compare SQL limit clause) */
38
- limit?: 0;
39
- /** Experimental: Stop loading after reaching */
40
- _limitMB?: 0;
41
- /** Generate metadata batches */
42
- metadata?: boolean;
43
- /** Transforms to run on incoming batches */
44
- transforms?: TransformBatches[];
45
-
46
- // module loading
47
-
48
- /** Any additional JS libraries */
49
- modules?: Record<string, any>;
50
- /** Force to load WASM libraries from local file system in NodeJS or from loaders.gl CDN in a web browser */
101
+ /** @deprecated Use options.core.useLocalLibraries */
51
102
  useLocalLibraries?: boolean;
52
-
53
- // workers
54
-
55
- /** CDN load workers from */
103
+ /** @deprecated Use options.core.CDN */
56
104
  CDN?: string | null;
57
- /** Set to `false` to disable workers */
105
+ /** @deprecated Use options.core.worker */
58
106
  worker?: boolean;
59
- /** Number of concurrent workers (per loader) on desktop browser */
107
+ /** @deprecated Use options.core.maxConcurrency */
60
108
  maxConcurrency?: number;
61
- /** Number of concurrent workers (per loader) on mobile browsers */
109
+ /** @deprecated Use options.core.maxMobileConcurrency */
62
110
  maxMobileConcurrency?: number;
63
- /** Set to `false` to prevent reuse workers */
111
+ /** @deprecated Use options.core.reuseWorkers */
64
112
  reuseWorkers?: boolean;
65
- /** Whether to use workers under Node.js (experimental) */
113
+ /** @deprecated Use options.core._nodeWorkers */
66
114
  _nodeWorkers?: boolean;
67
- /** set to 'test' to run local worker */
115
+ /** @deprecated Use options.core._workerType */
68
116
  _workerType?: string;
69
-
70
- /** @deprecated `options.batchType` removed, Use `options.<loader>.type` instead */
71
- batchType?: 'row' | 'columnar' | 'arrow';
72
- /** @deprecated `options.throw removed`, Use `options.nothrow` instead */
73
- throws?: boolean;
74
- /** @deprecated `options.dataType` no longer used */
75
- dataType?: never;
76
- /** @deprecated `options.uri` no longer used */
77
- uri?: never;
78
- /** @deprecated Use `options.fetch.method` */
79
- method?: never;
80
- /** @deprecated Use `options.fetch.headers` */
81
- headers?: never;
82
- /** @deprecated Use `options.fetch.body` */
83
- body?: never;
84
- /** @deprecated Use `options.fetch.mode` */
85
- mode?: never;
86
- /** @deprecated Use `options.fetch.credentials` */
87
- credentials?: never;
88
- /** @deprecated Use `options.fetch.cache` */
89
- cache?: never;
90
- /** @deprecated Use `options.fetch.redirect` */
91
- redirect?: never;
92
- /** @deprecated Use `options.fetch.referrer` */
93
- referrer?: never;
94
- /** @deprecated Use `options.fetch.referrerPolicy` */
95
- referrerPolicy?: never;
96
- /** @deprecated Use `options.fetch.integrity` */
97
- integrity?: never;
98
- /** @deprecated Use `options.fetch.keepalive` */
99
- keepalive?: never;
100
- /** @deprecated Use `options.fetch.signal` */
101
- signal?: never;
117
+ /** @deprecated Use options.core._workerType */
118
+ _worker?: string;
119
+ /** @deprecated Use options.core.limit */
120
+ limit?: 0;
121
+ /** @deprecated Use options.core._limitMB */
122
+ _limitMB?: 0;
123
+ /** @deprecated Use options.core.batchSize */
124
+ batchSize?: number | 'auto';
125
+ /** @deprecated Use options.core.batchDebounceMs */
126
+ batchDebounceMs?: number;
127
+ /** @deprecated Use options.core.metadata */
128
+ metadata?: boolean;
129
+ /** @deprecated Use options.core.transforms */
130
+ transforms?: TransformBatches[];
102
131
 
103
132
  // Accept other keys (loader options objects, e.g. `options.csv`, `options.json` ...)
104
133
  [loaderId: string]: unknown;
@@ -111,7 +140,7 @@ type PreloadOptions = {
111
140
  /**
112
141
  * A worker loader definition that can be used with `@loaders.gl/core` functions
113
142
  */
114
- export type Loader<DataT = any, BatchT = any, LoaderOptionsT = LoaderOptions> = Format & {
143
+ export type Loader<DataT = any, BatchT = any, LoaderOptionsT = StrictLoaderOptions> = Format & {
115
144
  /** The result type of this loader */
116
145
  dataType?: DataT;
117
146
  /** The batched result type of this loader */
@@ -157,11 +186,11 @@ export type Loader<DataT = any, BatchT = any, LoaderOptionsT = LoaderOptions> =
157
186
  * A "bundled" loader definition that can be used with `@loaders.gl/core` functions
158
187
  * If a worker loader is supported it will also be supported.
159
188
  */
160
- export type LoaderWithParser<DataT = any, BatchT = any, LoaderOptionsT = LoaderOptions> = Loader<
161
- DataT,
162
- BatchT,
163
- LoaderOptionsT
164
- > & {
189
+ export type LoaderWithParser<
190
+ DataT = any,
191
+ BatchT = any,
192
+ LoaderOptionsT = StrictLoaderOptions
193
+ > = Loader<DataT, BatchT, LoaderOptionsT> & {
165
194
  /** Perform actions before load. @deprecated Not officially supported. */
166
195
  preload?: Preload;
167
196
  /** Parse asynchronously and atomically from an arraybuffer */
@@ -184,7 +213,9 @@ export type LoaderWithParser<DataT = any, BatchT = any, LoaderOptionsT = LoaderO
184
213
  ) => DataT;
185
214
  /** Parse batches of data from an iterator (e.g. fetch stream), return an iterator that yield parsed batches. */
186
215
  parseInBatches?: (
187
- iterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>,
216
+ iterator:
217
+ | AsyncIterable<ArrayBufferLike | ArrayBufferView>
218
+ | Iterable<ArrayBufferLike | ArrayBufferView>,
188
219
  options?: LoaderOptionsT,
189
220
  context?: LoaderContext
190
221
  ) => AsyncIterable<BatchT>;
@@ -314,7 +345,7 @@ export type LoaderArrayBatchType<LoadersT extends Loader[] = Loader[]> =
314
345
  */
315
346
  export async function parseFromContext<
316
347
  LoaderT extends Loader,
317
- OptionsT extends LoaderOptions = LoaderOptionsType<LoaderT>
348
+ OptionsT extends StrictLoaderOptions = LoaderOptionsType<LoaderT>
318
349
  >(
319
350
  data: ArrayBuffer,
320
351
  loader: LoaderT,
@@ -354,7 +385,7 @@ export async function parseFromContext(
354
385
  */
355
386
  export function parseSyncFromContext<
356
387
  LoaderT extends Loader,
357
- OptionsT extends LoaderOptions = LoaderOptionsType<LoaderT>
388
+ OptionsT extends StrictLoaderOptions = LoaderOptionsType<LoaderT>
358
389
  >(
359
390
  data: ArrayBuffer,
360
391
  loader: LoaderT,
@@ -372,7 +403,7 @@ export function parseSyncFromContext<
372
403
  */
373
404
  export async function parseInBatchesFromContext<
374
405
  LoaderT extends Loader,
375
- OptionsT extends LoaderOptions = LoaderOptionsType<LoaderT>
406
+ OptionsT extends StrictLoaderOptions = LoaderOptionsType<LoaderT>
376
407
  >(
377
408
  data: Iterable<ArrayBuffer> | AsyncIterable<ArrayBuffer> | Response,
378
409
  loader: LoaderT,
package/src/types.ts CHANGED
@@ -41,27 +41,35 @@ export type FetchLike = (url: string, options?: RequestInit) => Promise<Response
41
41
 
42
42
  // MISC TYPES
43
43
 
44
+ /**
45
+ * Transformation callback used by batch parsers to reshape streamed binary chunks.
46
+ * Accepts iterables of `ArrayBuffer`, `ArrayBufferView`, or `ArrayBufferLike` values and
47
+ * returns an async iterable of the same surface.
48
+ */
44
49
  export type TransformBatches = (
45
- asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>
46
- ) => AsyncIterable<ArrayBuffer>;
50
+ asyncIterator:
51
+ | AsyncIterable<ArrayBufferLike | ArrayBufferView>
52
+ | Iterable<ArrayBufferLike | ArrayBufferView>
53
+ ) => AsyncIterable<ArrayBufferLike | ArrayBufferView>;
47
54
 
48
55
  /** Types that can be synchronously parsed */
49
- export type SyncDataType = string | ArrayBuffer; // TODO File | Blob can be read synchronously...
56
+ export type SyncDataType = string | ArrayBufferLike | ArrayBufferView; // TODO File | Blob can be read synchronously...
50
57
 
51
58
  /** Types that can be parsed async */
52
59
  export type DataType =
53
60
  | string
54
- | ArrayBuffer
61
+ | ArrayBufferLike
62
+ | ArrayBufferView
55
63
  | File
56
64
  | Blob
57
65
  | Response
58
66
  | ReadableStream
59
- | Iterable<ArrayBuffer>
60
- | AsyncIterable<ArrayBuffer>;
67
+ | Iterable<ArrayBufferLike | ArrayBufferView>
68
+ | AsyncIterable<ArrayBufferLike | ArrayBufferView>;
61
69
 
62
70
  /** Types that can be parsed in batches */
63
71
  export type BatchableDataType =
64
72
  | DataType
65
- | Iterable<ArrayBuffer>
66
- | AsyncIterable<ArrayBuffer>
67
- | Promise<AsyncIterable<ArrayBuffer>>;
73
+ | Iterable<ArrayBufferLike | ArrayBufferView>
74
+ | AsyncIterable<ArrayBufferLike | ArrayBufferView>
75
+ | Promise<AsyncIterable<ArrayBufferLike | ArrayBufferView>>;
@@ -8,18 +8,25 @@ import type {Format} from './format-types';
8
8
 
9
9
  /** Options for writers */
10
10
  export type WriterOptions = {
11
- /** worker source. If is set will be used instead of loading worker from the Internet */
12
- source?: string | null;
11
+ core?: {
12
+ /** worker source. If is set will be used instead of loading worker from the Internet */
13
+ source?: string | null;
13
14
 
14
- // module loading
15
+ // module loading
15
16
 
16
- /** Any additional JS libraries */
17
- modules?: Record<string, any>;
18
- /** Force to load WASM libraries from local file system in NodeJS or from loaders.gl CDN in a web browser */
19
- useLocalLibraries?: boolean;
17
+ /** Any additional JS libraries */
18
+ modules?: Record<string, any>;
19
+ /** Force to load WASM libraries from local file system in NodeJS or from loaders.gl CDN in a web browser */
20
+ useLocalLibraries?: boolean;
21
+ /** Whether to use workers under Node.js (experimental) */
22
+ _nodeWorkers?: boolean;
23
+ /** Set to `false` to disable workers */
24
+ worker?: boolean;
25
+ log?: any;
26
+ };
20
27
 
21
28
  /** writer-specific options */
22
- [writerId: string]: any;
29
+ [writerId: string]: Record<string, unknown> | undefined;
23
30
  };
24
31
 
25
32
  /**