@loaders.gl/core 4.5.3 → 5.0.0-alpha.10

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 (127) hide show
  1. package/LICENSE +14 -3
  2. package/dist/dist.dev.js +1789 -352
  3. package/dist/dist.min.js +4 -3
  4. package/dist/index.cjs +3087 -311
  5. package/dist/index.cjs.map +3 -4
  6. package/dist/index.d.ts +8 -2
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +7 -1
  9. package/dist/index.js.map +1 -1
  10. package/dist/iterators/make-iterator/make-stream-iterator.js +48 -9
  11. package/dist/iterators/make-iterator/make-stream-iterator.js.map +1 -1
  12. package/dist/lib/api/core-api.d.ts +6 -0
  13. package/dist/lib/api/core-api.d.ts.map +1 -0
  14. package/dist/lib/api/core-api.js +23 -0
  15. package/dist/lib/api/core-api.js.map +1 -0
  16. package/dist/lib/api/create-data-source.d.ts +2 -2
  17. package/dist/lib/api/create-data-source.d.ts.map +1 -1
  18. package/dist/lib/api/create-data-source.js +36 -14
  19. package/dist/lib/api/create-data-source.js.map +1 -1
  20. package/dist/lib/api/load-in-batches.d.ts +4 -4
  21. package/dist/lib/api/load-in-batches.d.ts.map +1 -1
  22. package/dist/lib/api/load-in-batches.js +17 -6
  23. package/dist/lib/api/load-in-batches.js.map +1 -1
  24. package/dist/lib/api/load-loader.d.ts +10 -0
  25. package/dist/lib/api/load-loader.d.ts.map +1 -0
  26. package/dist/lib/api/load-loader.js +222 -0
  27. package/dist/lib/api/load-loader.js.map +1 -0
  28. package/dist/lib/api/load.d.ts +3 -3
  29. package/dist/lib/api/load.d.ts.map +1 -1
  30. package/dist/lib/api/load.js +84 -5
  31. package/dist/lib/api/load.js.map +1 -1
  32. package/dist/lib/api/parse-file.d.ts +15 -0
  33. package/dist/lib/api/parse-file.d.ts.map +1 -0
  34. package/dist/lib/api/parse-file.js +74 -0
  35. package/dist/lib/api/parse-file.js.map +1 -0
  36. package/dist/lib/api/parse-in-batches.d.ts +2 -2
  37. package/dist/lib/api/parse-in-batches.d.ts.map +1 -1
  38. package/dist/lib/api/parse-in-batches.js +18 -7
  39. package/dist/lib/api/parse-in-batches.js.map +1 -1
  40. package/dist/lib/api/parse-sync.d.ts +2 -2
  41. package/dist/lib/api/parse-sync.d.ts.map +1 -1
  42. package/dist/lib/api/parse-sync.js +10 -1
  43. package/dist/lib/api/parse-sync.js.map +1 -1
  44. package/dist/lib/api/parse.d.ts +2 -2
  45. package/dist/lib/api/parse.d.ts.map +1 -1
  46. package/dist/lib/api/parse.js +34 -17
  47. package/dist/lib/api/parse.js.map +1 -1
  48. package/dist/lib/api/preload.d.ts +14 -0
  49. package/dist/lib/api/preload.d.ts.map +1 -0
  50. package/dist/lib/api/preload.js +13 -0
  51. package/dist/lib/api/preload.js.map +1 -0
  52. package/dist/lib/api/register-loaders.js +1 -1
  53. package/dist/lib/api/register-loaders.js.map +1 -1
  54. package/dist/lib/api/select-loader.d.ts.map +1 -1
  55. package/dist/lib/api/select-loader.js +48 -5
  56. package/dist/lib/api/select-loader.js.map +1 -1
  57. package/dist/lib/api/select-source.d.ts +3 -3
  58. package/dist/lib/api/select-source.d.ts.map +1 -1
  59. package/dist/lib/api/select-source.js +2 -5
  60. package/dist/lib/api/select-source.js.map +1 -1
  61. package/dist/lib/fetch/fetch-error-message.js +1 -1
  62. package/dist/lib/fetch/fetch-error-message.js.map +1 -1
  63. package/dist/lib/filesystems/browser-filesystem.d.ts.map +1 -1
  64. package/dist/lib/filesystems/browser-filesystem.js +25 -11
  65. package/dist/lib/filesystems/browser-filesystem.js.map +1 -1
  66. package/dist/lib/init.js +1 -1
  67. package/dist/lib/init.js.map +1 -1
  68. package/dist/lib/loader-utils/check-errors.js +1 -1
  69. package/dist/lib/loader-utils/check-errors.js.map +1 -1
  70. package/dist/lib/loader-utils/get-data.d.ts +4 -0
  71. package/dist/lib/loader-utils/get-data.d.ts.map +1 -1
  72. package/dist/lib/loader-utils/get-data.js +26 -0
  73. package/dist/lib/loader-utils/get-data.js.map +1 -1
  74. package/dist/lib/loader-utils/get-fetch-function.d.ts +1 -1
  75. package/dist/lib/loader-utils/get-fetch-function.d.ts.map +1 -1
  76. package/dist/lib/loader-utils/get-fetch-function.js +16 -10
  77. package/dist/lib/loader-utils/get-fetch-function.js.map +1 -1
  78. package/dist/lib/loader-utils/loader-context.d.ts +2 -2
  79. package/dist/lib/loader-utils/loader-context.d.ts.map +1 -1
  80. package/dist/lib/loader-utils/loader-context.js +11 -4
  81. package/dist/lib/loader-utils/loader-context.js.map +1 -1
  82. package/dist/lib/loader-utils/loggers.d.ts +19 -0
  83. package/dist/lib/loader-utils/loggers.d.ts.map +1 -1
  84. package/dist/lib/loader-utils/loggers.js +28 -2
  85. package/dist/lib/loader-utils/loggers.js.map +1 -1
  86. package/dist/lib/loader-utils/option-defaults.d.ts +1 -0
  87. package/dist/lib/loader-utils/option-defaults.d.ts.map +1 -1
  88. package/dist/lib/loader-utils/option-defaults.js +5 -0
  89. package/dist/lib/loader-utils/option-defaults.js.map +1 -1
  90. package/dist/lib/loader-utils/option-utils.d.ts +7 -0
  91. package/dist/lib/loader-utils/option-utils.d.ts.map +1 -1
  92. package/dist/lib/loader-utils/option-utils.js +91 -3
  93. package/dist/lib/loader-utils/option-utils.js.map +1 -1
  94. package/dist/lib/utils/response-utils.js +5 -14
  95. package/dist/lib/utils/response-utils.js.map +1 -1
  96. package/dist/null-loader.d.ts.map +1 -1
  97. package/dist/null-loader.js +1 -1
  98. package/dist/null-loader.js.map +1 -1
  99. package/dist/null-worker-node.js +270 -42
  100. package/dist/null-worker.js +270 -42
  101. package/package.json +6 -6
  102. package/src/index.ts +10 -1
  103. package/src/iterators/make-iterator/make-stream-iterator.ts +47 -9
  104. package/src/lib/api/core-api.ts +25 -0
  105. package/src/lib/api/create-data-source.ts +53 -24
  106. package/src/lib/api/load-in-batches.ts +33 -21
  107. package/src/lib/api/load-loader.ts +306 -0
  108. package/src/lib/api/load.ts +160 -9
  109. package/src/lib/api/parse-file.ts +156 -0
  110. package/src/lib/api/parse-in-batches.ts +35 -8
  111. package/src/lib/api/parse-sync.ts +27 -2
  112. package/src/lib/api/parse.ts +61 -20
  113. package/src/lib/api/preload.ts +46 -0
  114. package/src/lib/api/register-loaders.ts +1 -1
  115. package/src/lib/api/select-loader.ts +57 -5
  116. package/src/lib/api/select-source.ts +7 -10
  117. package/src/lib/fetch/fetch-error-message.ts +1 -1
  118. package/src/lib/filesystems/browser-filesystem.ts +25 -11
  119. package/src/lib/loader-utils/check-errors.ts +1 -1
  120. package/src/lib/loader-utils/get-data.ts +36 -0
  121. package/src/lib/loader-utils/get-fetch-function.ts +17 -15
  122. package/src/lib/loader-utils/loader-context.ts +13 -5
  123. package/src/lib/loader-utils/loggers.ts +28 -2
  124. package/src/lib/loader-utils/option-defaults.ts +5 -0
  125. package/src/lib/loader-utils/option-utils.ts +106 -3
  126. package/src/lib/utils/response-utils.ts +5 -15
  127. package/src/null-loader.ts +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"check-errors.js","sourceRoot":"","sources":["../../../src/lib/loader-utils/check-errors.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAEpC;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,QAAkB;IAC/D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,IAAI,YAAY,GAAG,gBAAgB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC5E,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,IAAI,IAAI,EAAE,CAAC;gBACT,YAAY,IAAI,KAAK,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5C,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAe;QACjB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAAC,QAAkB;IAC7D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,gBAAgB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACrD,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,IAAY;IAChC,4BAA4B;IAC5B,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC;AAC3D,CAAC"}
1
+ {"version":3,"file":"check-errors.js","sourceRoot":"","sources":["../../../src/lib/loader-utils/check-errors.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAEpC;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,QAAkB;IAC/D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,IAAI,YAAY,GAAG,gBAAgB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC5E,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,IAAI,IAAI,EAAE,CAAC;gBACT,YAAY,IAAI,KAAK,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5C,CAAC;QACH,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,eAAe;QACjB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAAC,QAAkB;IAC7D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,gBAAgB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACrD,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,IAAY;IAChC,4BAA4B;IAC5B,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC;AAC3D,CAAC"}
@@ -10,6 +10,10 @@ export declare function getArrayBufferOrStringFromDataSync(data: SyncDataType, l
10
10
  * Accepts the full {@link DataType} surface including responses and async iterables.
11
11
  */
12
12
  export declare function getArrayBufferOrStringFromData(data: DataType, loader: Loader, options: LoaderOptions): Promise<ArrayBuffer | string>;
13
+ /**
14
+ * Resolves the provided data into an {@link ArrayBuffer}, preserving bytes for worker transfer.
15
+ */
16
+ export declare function getArrayBufferFromData(data: DataType, options: LoaderOptions): Promise<ArrayBuffer>;
13
17
  /**
14
18
  * Normalizes batchable inputs into async iterables for batch parsing flows.
15
19
  * Supports synchronous iterables, async iterables, fetch responses, readable streams, and
@@ -1 +1 @@
1
- {"version":3,"file":"get-data.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/get-data.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,MAAM,EACN,aAAa,EACd,MAAM,0BAA0B,CAAC;AAoBlC;;;;GAIG;AAEH,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,GACrB,WAAW,GAAG,MAAM,CAmBtB;AAED;;;GAGG;AACH,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,CA0B/B;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,iBAAiB,EACvB,OAAO,EAAE,aAAa,GACrB,OAAO,CACR,aAAa,CAAC,eAAe,GAAG,eAAe,CAAC,GAAG,QAAQ,CAAC,eAAe,GAAG,eAAe,CAAC,CAC/F,CAmCA;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CAiBxF"}
1
+ {"version":3,"file":"get-data.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/get-data.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,MAAM,EACN,aAAa,EACd,MAAM,0BAA0B,CAAC;AAoBlC;;;;GAIG;AAEH,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,GACrB,WAAW,GAAG,MAAM,CAmBtB;AAED;;;GAGG;AACH,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,CA0B/B;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,WAAW,CAAC,CA4BtB;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,iBAAiB,EACvB,OAAO,EAAE,aAAa,GACrB,OAAO,CACR,aAAa,CAAC,eAAe,GAAG,eAAe,CAAC,GAAG,QAAQ,CAAC,eAAe,GAAG,eAAe,CAAC,CAC/F,CAmCA;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CAiBxF"}
@@ -54,6 +54,32 @@ export async function getArrayBufferOrStringFromData(data, loader, options) {
54
54
  }
55
55
  throw new Error(ERR_DATA);
56
56
  }
57
+ /**
58
+ * Resolves the provided data into an {@link ArrayBuffer}, preserving bytes for worker transfer.
59
+ */
60
+ export async function getArrayBufferFromData(data, options) {
61
+ if (typeof data === 'string') {
62
+ return new TextEncoder().encode(data).buffer;
63
+ }
64
+ if (isArrayBufferLike(data)) {
65
+ return toArrayBuffer(toArrayBufferView(data));
66
+ }
67
+ if (isBlob(data)) {
68
+ data = await makeResponse(data);
69
+ }
70
+ if (isResponse(data)) {
71
+ await checkResponse(data);
72
+ return await data.arrayBuffer();
73
+ }
74
+ if (isReadableStream(data)) {
75
+ // @ts-expect-error TS2559 options type
76
+ data = makeIterator(data, options);
77
+ }
78
+ if (isIterable(data) || isAsyncIterable(data)) {
79
+ return concatenateArrayBuffersAsync(data);
80
+ }
81
+ throw new Error(ERR_DATA);
82
+ }
57
83
  /**
58
84
  * Normalizes batchable inputs into async iterables for batch parsing flows.
59
85
  * Supports synchronous iterables, async iterables, fetch responses, readable streams, and
@@ -1 +1 @@
1
- {"version":3,"file":"get-data.js","sourceRoot":"","sources":["../../../src/lib/loader-utils/get-data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-data.js","sourceRoot":"","sources":["../../../src/lib/loader-utils/get-data.ts"],"names":[],"mappings":"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"}
@@ -4,5 +4,5 @@ import type { LoaderContext, LoaderOptions, FetchLike } from '@loaders.gl/loader
4
4
  * @param options
5
5
  * @param context
6
6
  */
7
- export declare function getFetchFunction(options?: LoaderOptions, context?: Omit<LoaderContext, 'fetch'> & Partial<Pick<LoaderContext, 'fetch'>>): FetchLike;
7
+ export declare function getFetchFunction(options?: LoaderOptions, context?: Omit<LoaderContext, 'fetch' | 'coreApi'> & Partial<Pick<LoaderContext, 'fetch' | 'coreApi'>>): FetchLike;
8
8
  //# sourceMappingURL=get-fetch-function.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-fetch-function.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/get-fetch-function.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,aAAa,EAAE,aAAa,EAAE,SAAS,EAAC,MAAM,0BAA0B,CAAC;AAKtF;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,CAAC,EAAE,aAAa,EACvB,OAAO,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,GAC7E,SAAS,CAuBX"}
1
+ {"version":3,"file":"get-fetch-function.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/get-fetch-function.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,aAAa,EAAE,aAAa,EAAE,SAAS,EAAC,MAAM,0BAA0B,CAAC;AAKtF;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,CAAC,EAAE,aAAa,EACvB,OAAO,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,GAAG,SAAS,CAAC,GAChD,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC,GAClD,SAAS,CAwBX"}
@@ -1,7 +1,7 @@
1
1
  // loaders.gl
2
2
  // SPDX-License-Identifier: MIT
3
3
  // Copyright (c) vis.gl contributors
4
- import { isObject } from '@loaders.gl/loader-utils';
4
+ import { createAuthenticatedFetch, isObject } from '@loaders.gl/loader-utils';
5
5
  import { fetchFile } from "../fetch/fetch-file.js";
6
6
  import { getGlobalLoaderOptions } from "./option-utils.js";
7
7
  /**
@@ -13,19 +13,25 @@ export function getFetchFunction(options, context) {
13
13
  const globalOptions = getGlobalLoaderOptions();
14
14
  const loaderOptions = options || globalOptions;
15
15
  const fetchOption = loaderOptions.fetch ?? loaderOptions.core?.fetch;
16
+ let fetchFunction;
16
17
  // options.fetch can be a function
17
18
  if (typeof fetchOption === 'function') {
18
- return fetchOption;
19
+ fetchFunction = fetchOption;
19
20
  }
20
- // options.fetch can be an options object
21
- if (isObject(fetchOption)) {
22
- return (url) => fetchFile(url, fetchOption);
21
+ else if (isObject(fetchOption)) {
22
+ fetchFunction = context?.fetch || fetchFile;
23
23
  }
24
- // else refer to context (from parent loader) if available
25
- if (context?.fetch) {
26
- return context?.fetch;
24
+ else if (context?.fetch) {
25
+ fetchFunction = context.fetch;
27
26
  }
28
- // else return the default fetch function
29
- return fetchFile;
27
+ else {
28
+ fetchFunction = fetchFile;
29
+ }
30
+ return createAuthenticatedFetch({
31
+ fetch: fetchFunction,
32
+ credentials: loaderOptions.core?.credentials || [],
33
+ authentications: loaderOptions.core?.authentications,
34
+ fetchOptions: isObject(fetchOption) ? fetchOption : undefined
35
+ });
30
36
  }
31
37
  //# sourceMappingURL=get-fetch-function.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-fetch-function.js","sourceRoot":"","sources":["../../../src/lib/loader-utils/get-fetch-function.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,QAAQ,EAAC,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAC,SAAS,EAAC,+BAA4B;AAC9C,OAAO,EAAC,sBAAsB,EAAC,0BAAuB;AAEtD;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAuB,EACvB,OAA8E;IAE9E,MAAM,aAAa,GAAG,sBAAsB,EAAE,CAAC;IAE/C,MAAM,aAAa,GAAG,OAAO,IAAI,aAAa,CAAC;IAC/C,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC;IAErE,kCAAkC;IAClC,IAAI,OAAO,WAAW,KAAK,UAAU,EAAE,CAAC;QACtC,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,yCAAyC;IACzC,IAAI,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,WAA0B,CAAC,CAAC;IAC7D,CAAC;IAED,0DAA0D;IAC1D,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,OAAO,OAAO,EAAE,KAAK,CAAC;IACxB,CAAC;IAED,yCAAyC;IACzC,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"get-fetch-function.js","sourceRoot":"","sources":["../../../src/lib/loader-utils/get-fetch-function.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,wBAAwB,EAAE,QAAQ,EAAC,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAC,SAAS,EAAC,+BAA4B;AAC9C,OAAO,EAAC,sBAAsB,EAAC,0BAAuB;AAEtD;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAuB,EACvB,OACmD;IAEnD,MAAM,aAAa,GAAG,sBAAsB,EAAE,CAAC;IAE/C,MAAM,aAAa,GAAG,OAAO,IAAI,aAAa,CAAC;IAC/C,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC;IACrE,IAAI,aAAwB,CAAC;IAE7B,kCAAkC;IAClC,IAAI,OAAO,WAAW,KAAK,UAAU,EAAE,CAAC;QACtC,aAAa,GAAG,WAAW,CAAC;IAC9B,CAAC;SAAM,IAAI,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QACjC,aAAa,GAAG,OAAO,EAAE,KAAK,IAAI,SAAS,CAAC;IAC9C,CAAC;SAAM,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;QAC1B,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC;IAChC,CAAC;SAAM,CAAC;QACN,aAAa,GAAG,SAAS,CAAC;IAC5B,CAAC;IAED,OAAO,wBAAwB,CAAC;QAC9B,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,aAAa,CAAC,IAAI,EAAE,WAAW,IAAI,EAAE;QAClD,eAAe,EAAE,aAAa,CAAC,IAAI,EAAE,eAAe;QACpD,YAAY,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAE,WAA2B,CAAC,CAAC,CAAC,SAAS;KAC/E,CAAC,CAAC;AACL,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { Loader, LoaderContext, StrictLoaderOptions } from '@loaders.gl/loader-utils';
2
2
  /** Properties for creating an updated context */
3
- type LoaderContextProps = Omit<LoaderContext, 'fetch'> & Partial<Pick<LoaderContext, 'fetch'>>;
3
+ type LoaderContextProps = Omit<LoaderContext, 'fetch' | 'coreApi'> & Partial<Pick<LoaderContext, 'fetch' | 'coreApi'>>;
4
4
  /**
5
5
  * "sub" loaders invoked by other loaders get a "context" injected on `this`
6
6
  * The context will inject core methods like `parse` and contain information
@@ -8,7 +8,7 @@ type LoaderContextProps = Omit<LoaderContext, 'fetch'> & Partial<Pick<LoaderCont
8
8
  *
9
9
  * @param context
10
10
  * @param options
11
- * @param previousContext
11
+ * @param parentContext
12
12
  */
13
13
  export declare function getLoaderContext(context: LoaderContextProps, options: StrictLoaderOptions, parentContext: LoaderContext | null): LoaderContext;
14
14
  export declare function getLoadersFromContext(loaders: Loader[] | Loader | undefined, context?: LoaderContext): Loader | Loader[] | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"loader-context.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/loader-context.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,MAAM,EAAE,aAAa,EAAE,mBAAmB,EAAC,MAAM,0BAA0B,CAAC;AAKzF,iDAAiD;AACjD,KAAK,kBAAkB,GAAG,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;AAE/F;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,mBAAmB,EAC5B,aAAa,EAAE,aAAa,GAAG,IAAI,GAClC,aAAa,CA2Bf;AAGD,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,EACtC,OAAO,CAAC,EAAE,aAAa,GACtB,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAiB/B"}
1
+ {"version":3,"file":"loader-context.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/loader-context.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,MAAM,EAAE,aAAa,EAAE,mBAAmB,EAAC,MAAM,0BAA0B,CAAC;AAMzF,iDAAiD;AACjD,KAAK,kBAAkB,GAAG,IAAI,CAAC,aAAa,EAAE,OAAO,GAAG,SAAS,CAAC,GAChE,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC;AAEpD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,mBAAmB,EAC5B,aAAa,EAAE,aAAa,GAAG,IAAI,GAClC,aAAa,CAiCf;AAGD,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,EACtC,OAAO,CAAC,EAAE,aAAa,GACtB,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAiB/B"}
@@ -4,6 +4,7 @@
4
4
  import { getFetchFunction } from "./get-fetch-function.js";
5
5
  import { extractQueryString, stripQueryString } from "../utils/url-utils.js";
6
6
  import { path } from '@loaders.gl/loader-utils';
7
+ import { coreApi } from "../api/core-api.js";
7
8
  /**
8
9
  * "sub" loaders invoked by other loaders get a "context" injected on `this`
9
10
  * The context will inject core methods like `parse` and contain information
@@ -11,17 +12,23 @@ import { path } from '@loaders.gl/loader-utils';
11
12
  *
12
13
  * @param context
13
14
  * @param options
14
- * @param previousContext
15
+ * @param parentContext
15
16
  */
16
17
  export function getLoaderContext(context, options, parentContext) {
17
- // For recursive calls, we already have a context
18
+ // For recursive calls, preserve the context while applying this loader's options
18
19
  // TODO - add any additional loaders to context?
19
20
  if (parentContext) {
20
- return parentContext;
21
+ return {
22
+ ...parentContext,
23
+ coreApi: parentContext.coreApi || context.coreApi || coreApi,
24
+ _parse: parentContext._parse || context._parse,
25
+ fetch: getFetchFunction(options, parentContext)
26
+ };
21
27
  }
22
28
  const newContext = {
29
+ ...context,
23
30
  fetch: getFetchFunction(options, context),
24
- ...context
31
+ coreApi: context.coreApi || coreApi
25
32
  };
26
33
  // Parse URLs so that subloaders can easily generate correct strings
27
34
  if (newContext.url) {
@@ -1 +1 @@
1
- {"version":3,"file":"loader-context.js","sourceRoot":"","sources":["../../../src/lib/loader-utils/loader-context.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,gBAAgB,EAAC,gCAA6B;AACtD,OAAO,EAAC,kBAAkB,EAAE,gBAAgB,EAAC,8BAA2B;AACxE,OAAO,EAAC,IAAI,EAAC,MAAM,0BAA0B,CAAC;AAK9C;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAA2B,EAC3B,OAA4B,EAC5B,aAAmC;IAEnC,iDAAiD;IACjD,gDAAgD;IAChD,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,MAAM,UAAU,GAAkB;QAChC,KAAK,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC;QACzC,GAAG,OAAO;KACX,CAAC;IAEF,oEAAoE;IACpE,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;QACnB,MAAM,OAAO,GAAG,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACjD,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;QAC7B,UAAU,CAAC,WAAW,GAAG,kBAAkB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAC5D,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC7C,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,+CAA+C;IAC/C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACvC,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,sCAAsC;AACtC,MAAM,UAAU,qBAAqB,CACnC,OAAsC,EACtC,OAAuB;IAEvB,4EAA4E;IAC5E,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACvC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,uBAAuB;IACvB,IAAI,gBAAgB,CAAC;IACrB,IAAI,OAAO,EAAE,CAAC;QACZ,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAC/B,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5F,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,gBAAgB,EAAE,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;IAClG,CAAC;IACD,oEAAoE;IACpE,OAAO,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;AACpF,CAAC"}
1
+ {"version":3,"file":"loader-context.js","sourceRoot":"","sources":["../../../src/lib/loader-utils/loader-context.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,gBAAgB,EAAC,gCAA6B;AACtD,OAAO,EAAC,kBAAkB,EAAE,gBAAgB,EAAC,8BAA2B;AACxE,OAAO,EAAC,IAAI,EAAC,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAC,OAAO,EAAC,2BAAwB;AAMxC;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAA2B,EAC3B,OAA4B,EAC5B,aAAmC;IAEnC,iFAAiF;IACjF,gDAAgD;IAChD,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO;YACL,GAAG,aAAa;YAChB,OAAO,EAAE,aAAa,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO;YAC5D,MAAM,EAAE,aAAa,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM;YAC9C,KAAK,EAAE,gBAAgB,CAAC,OAAO,EAAE,aAAa,CAAC;SAChD,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAkB;QAChC,GAAG,OAAO;QACV,KAAK,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC;QACzC,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,OAAO;KACpC,CAAC;IAEF,oEAAoE;IACpE,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;QACnB,MAAM,OAAO,GAAG,gBAAgB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACjD,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;QAC7B,UAAU,CAAC,WAAW,GAAG,kBAAkB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAC5D,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC7C,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,+CAA+C;IAC/C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACvC,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,sCAAsC;AACtC,MAAM,UAAU,qBAAqB,CACnC,OAAsC,EACtC,OAAuB;IAEvB,4EAA4E;IAC5E,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACvC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,uBAAuB;IACvB,IAAI,gBAAgB,CAAC;IACrB,IAAI,OAAO,EAAE,CAAC;QACZ,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAC/B,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5F,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,gBAAgB,EAAE,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;IAClG,CAAC;IACD,oEAAoE;IACpE,OAAO,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;AACpF,CAAC"}
@@ -1,18 +1,37 @@
1
1
  import { Log } from '@probe.gl/log';
2
+ /** Default probe.gl logger used by loaders.gl. */
2
3
  export declare const probeLog: Log;
3
4
  type LogFunction = () => void;
5
+ /** Logger implementation that intentionally drops all messages. */
4
6
  export declare class NullLog {
7
+ /** Drops a log message. */
5
8
  log(): LogFunction;
9
+ /** Drops an info message. */
6
10
  info(): LogFunction;
11
+ /** Logs one message once; no-op for the null logger. */
12
+ once(): LogFunction;
13
+ /** Drops a warning message. */
7
14
  warn(): LogFunction;
15
+ /** Drops an error message. */
8
16
  error(): LogFunction;
9
17
  }
18
+ /** Logger implementation that forwards messages to the global console. */
10
19
  export declare class ConsoleLog {
20
+ /** Console-like object used for message output. */
11
21
  console: any;
22
+ /** Messages already emitted through `once`. */
23
+ private onceMessages;
24
+ /** Creates a console-backed logger. */
12
25
  constructor();
26
+ /** Logs a message to the console. */
13
27
  log(...args: unknown[]): LogFunction;
28
+ /** Logs an informational message to the console. */
14
29
  info(...args: unknown[]): LogFunction;
30
+ /** Logs one message once to the console. */
31
+ once(...args: unknown[]): LogFunction;
32
+ /** Logs a warning message to the console. */
15
33
  warn(...args: unknown[]): LogFunction;
34
+ /** Logs an error message to the console. */
16
35
  error(...args: unknown[]): LogFunction;
17
36
  }
18
37
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"loggers.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/loggers.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,GAAG,EAAC,MAAM,eAAe,CAAC;AAElC,eAAO,MAAM,QAAQ,KAA8B,CAAC;AAEpD,KAAK,WAAW,GAAG,MAAM,IAAI,CAAC;AAG9B,qBAAa,OAAO;IAClB,GAAG,IAAI,WAAW;IAGlB,IAAI,IAAI,WAAW;IAGnB,IAAI,IAAI,WAAW;IAGnB,KAAK,IAAI,WAAW;CAGrB;AAGD,qBAAa,UAAU;IACrB,OAAO,MAAC;;IAKR,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW;IAGpC,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW;IAGrC,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW;IAGrC,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW;CAGvC"}
1
+ {"version":3,"file":"loggers.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/loggers.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,GAAG,EAAC,MAAM,eAAe,CAAC;AAElC,kDAAkD;AAClD,eAAO,MAAM,QAAQ,KAA8B,CAAC;AAEpD,KAAK,WAAW,GAAG,MAAM,IAAI,CAAC;AAE9B,mEAAmE;AACnE,qBAAa,OAAO;IAClB,2BAA2B;IAC3B,GAAG,IAAI,WAAW;IAGlB,6BAA6B;IAC7B,IAAI,IAAI,WAAW;IAGnB,wDAAwD;IACxD,IAAI,IAAI,WAAW;IAGnB,+BAA+B;IAC/B,IAAI,IAAI,WAAW;IAGnB,8BAA8B;IAC9B,KAAK,IAAI,WAAW;CAGrB;AAED,0EAA0E;AAC1E,qBAAa,UAAU;IACrB,mDAAmD;IACnD,OAAO,MAAC;IACR,+CAA+C;IAC/C,OAAO,CAAC,YAAY,CAAqB;IAEzC,uCAAuC;;IAIvC,qCAAqC;IACrC,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW;IAGpC,oDAAoD;IACpD,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW;IAGrC,4CAA4C;IAC5C,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW;IAQrC,6CAA6C;IAC7C,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW;IAGrC,4CAA4C;IAC5C,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW;CAGvC"}
@@ -3,37 +3,63 @@
3
3
  // Copyright (c) vis.gl contributors
4
4
  // probe.gl Log compatible loggers
5
5
  import { Log } from '@probe.gl/log';
6
+ /** Default probe.gl logger used by loaders.gl. */
6
7
  export const probeLog = new Log({ id: 'loaders.gl' });
7
- // Logs nothing
8
+ /** Logger implementation that intentionally drops all messages. */
8
9
  export class NullLog {
10
+ /** Drops a log message. */
9
11
  log() {
10
12
  return () => { };
11
13
  }
14
+ /** Drops an info message. */
12
15
  info() {
13
16
  return () => { };
14
17
  }
18
+ /** Logs one message once; no-op for the null logger. */
19
+ once() {
20
+ return () => { };
21
+ }
22
+ /** Drops a warning message. */
15
23
  warn() {
16
24
  return () => { };
17
25
  }
26
+ /** Drops an error message. */
18
27
  error() {
19
28
  return () => { };
20
29
  }
21
30
  }
22
- // Logs to console
31
+ /** Logger implementation that forwards messages to the global console. */
23
32
  export class ConsoleLog {
33
+ /** Console-like object used for message output. */
24
34
  console;
35
+ /** Messages already emitted through `once`. */
36
+ onceMessages = new Set();
37
+ /** Creates a console-backed logger. */
25
38
  constructor() {
26
39
  this.console = console; // eslint-disable-line
27
40
  }
41
+ /** Logs a message to the console. */
28
42
  log(...args) {
29
43
  return this.console.log.bind(this.console, ...args);
30
44
  }
45
+ /** Logs an informational message to the console. */
31
46
  info(...args) {
32
47
  return this.console.info.bind(this.console, ...args);
33
48
  }
49
+ /** Logs one message once to the console. */
50
+ once(...args) {
51
+ const message = String(args[0]);
52
+ if (this.onceMessages.has(message)) {
53
+ return () => { };
54
+ }
55
+ this.onceMessages.add(message);
56
+ return this.console.info.bind(this.console, ...args);
57
+ }
58
+ /** Logs a warning message to the console. */
34
59
  warn(...args) {
35
60
  return this.console.warn.bind(this.console, ...args);
36
61
  }
62
+ /** Logs an error message to the console. */
37
63
  error(...args) {
38
64
  return this.console.error.bind(this.console, ...args);
39
65
  }
@@ -1 +1 @@
1
- {"version":3,"file":"loggers.js","sourceRoot":"","sources":["../../../src/lib/loader-utils/loggers.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAEpC,kCAAkC;AAElC,OAAO,EAAC,GAAG,EAAC,MAAM,eAAe,CAAC;AAElC,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,EAAC,EAAE,EAAE,YAAY,EAAC,CAAC,CAAC;AAIpD,eAAe;AACf,MAAM,OAAO,OAAO;IAClB,GAAG;QACD,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;IACD,IAAI;QACF,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;IACD,IAAI;QACF,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;IACD,KAAK;QACH,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;CACF;AAED,kBAAkB;AAClB,MAAM,OAAO,UAAU;IACrB,OAAO,CAAC;IAER;QACE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,CAAC,sBAAsB;IAChD,CAAC;IACD,GAAG,CAAC,GAAG,IAAe;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,CAAC,GAAG,IAAe;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,CAAC,GAAG,IAAe;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACvD,CAAC;IACD,KAAK,CAAC,GAAG,IAAe;QACtB,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACxD,CAAC;CACF"}
1
+ {"version":3,"file":"loggers.js","sourceRoot":"","sources":["../../../src/lib/loader-utils/loggers.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAEpC,kCAAkC;AAElC,OAAO,EAAC,GAAG,EAAC,MAAM,eAAe,CAAC;AAElC,kDAAkD;AAClD,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,EAAC,EAAE,EAAE,YAAY,EAAC,CAAC,CAAC;AAIpD,mEAAmE;AACnE,MAAM,OAAO,OAAO;IAClB,2BAA2B;IAC3B,GAAG;QACD,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;IACD,6BAA6B;IAC7B,IAAI;QACF,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;IACD,wDAAwD;IACxD,IAAI;QACF,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;IACD,+BAA+B;IAC/B,IAAI;QACF,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;IACD,8BAA8B;IAC9B,KAAK;QACH,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;CACF;AAED,0EAA0E;AAC1E,MAAM,OAAO,UAAU;IACrB,mDAAmD;IACnD,OAAO,CAAC;IACR,+CAA+C;IACvC,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IAEzC,uCAAuC;IACvC;QACE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,CAAC,sBAAsB;IAChD,CAAC;IACD,qCAAqC;IACrC,GAAG,CAAC,GAAG,IAAe;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACtD,CAAC;IACD,oDAAoD;IACpD,IAAI,CAAC,GAAG,IAAe;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACvD,CAAC;IACD,4CAA4C;IAC5C,IAAI,CAAC,GAAG,IAAe;QACrB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACnC,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACvD,CAAC;IACD,6CAA6C;IAC7C,IAAI,CAAC,GAAG,IAAe;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACvD,CAAC;IACD,4CAA4C;IAC5C,KAAK,CAAC,GAAG,IAAe;QACtB,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACxD,CAAC;CACF"}
@@ -19,6 +19,7 @@ export declare const REMOVED_LOADER_OPTIONS: {
19
19
  _worker: string;
20
20
  limit: string;
21
21
  _limitMB: string;
22
+ shape: string;
22
23
  batchSize: string;
23
24
  batchDebounceMs: string;
24
25
  metadata: string;
@@ -1 +1 @@
1
- {"version":3,"file":"option-defaults.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/option-defaults.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAI5D,eAAO,MAAM,sBAAsB,EAAE,aA2BpC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6ClC,CAAC"}
1
+ {"version":3,"file":"option-defaults.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/option-defaults.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAI5D,eAAO,MAAM,sBAAsB,EAAE,aA+BpC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8ClC,CAAC"}
@@ -4,6 +4,7 @@
4
4
  import { isBrowser } from '@loaders.gl/loader-utils';
5
5
  import { ConsoleLog } from "./loggers.js";
6
6
  export const DEFAULT_LOADER_OPTIONS = {
7
+ searchParams: undefined,
7
8
  core: {
8
9
  baseUrl: undefined,
9
10
  // baseUrl
@@ -12,10 +13,13 @@ export const DEFAULT_LOADER_OPTIONS = {
12
13
  fallbackMimeType: undefined,
13
14
  ignoreRegisteredLoaders: undefined,
14
15
  nothrow: false,
16
+ shape: undefined,
15
17
  log: new ConsoleLog(), // A probe.gl compatible (`log.log()()` syntax) that just logs to console
16
18
  useLocalLibraries: false,
19
+ subloaders: undefined,
17
20
  CDN: 'https://unpkg.com/@loaders.gl',
18
21
  worker: true, // By default, use worker if provided by loader.
22
+ workerThreshold: 0.1,
19
23
  maxConcurrency: 3, // How many worker instances should be created for each loader.
20
24
  maxMobileConcurrency: 1, // How many worker instances should be created for each loader on mobile devices.
21
25
  reuseWorkers: isBrowser, // By default reuse workers in browser (Node.js refuses to terminate if browsers are running)
@@ -49,6 +53,7 @@ export const REMOVED_LOADER_OPTIONS = {
49
53
  _worker: 'core._workerType',
50
54
  limit: 'core.limit',
51
55
  _limitMB: 'core._limitMB',
56
+ shape: 'core.shape',
52
57
  batchSize: 'core.batchSize',
53
58
  batchDebounceMs: 'core.batchDebounceMs',
54
59
  metadata: 'core.metadata',
@@ -1 +1 @@
1
- {"version":3,"file":"option-defaults.js","sourceRoot":"","sources":["../../../src/lib/loader-utils/option-defaults.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,SAAS,EAAC,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAC,UAAU,EAAC,qBAAkB;AAErC,MAAM,CAAC,MAAM,sBAAsB,GAAkB;IACnD,IAAI,EAAE;QACJ,OAAO,EAAE,SAAS;QAClB,UAAU;QACV,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,SAAS;QACnB,gBAAgB,EAAE,SAAS;QAC3B,uBAAuB,EAAE,SAAS;QAClC,OAAO,EAAE,KAAK;QACd,GAAG,EAAE,IAAI,UAAU,EAAE,EAAE,yEAAyE;QAChG,iBAAiB,EAAE,KAAK;QAExB,GAAG,EAAE,+BAA+B;QACpC,MAAM,EAAE,IAAI,EAAE,gDAAgD;QAC9D,cAAc,EAAE,CAAC,EAAE,+DAA+D;QAClF,oBAAoB,EAAE,CAAC,EAAE,iFAAiF;QAC1G,YAAY,EAAE,SAAS,EAAE,6FAA6F;QACtH,YAAY,EAAE,KAAK,EAAE,yCAAyC;QAC9D,WAAW,EAAE,EAAE,EAAE,0CAA0C;QAE3D,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,CAAC;QACX,SAAS,EAAE,MAAM;QACjB,eAAe,EAAE,CAAC;QAClB,QAAQ,EAAE,KAAK,EAAE,qFAAqF;QACtG,UAAU,EAAE,EAAE;KACf;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,6BAA6B;IAC7B,OAAO,EAAE,cAAc;IACvB,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE,eAAe;IACzB,gBAAgB,EAAE,uBAAuB;IACzC,uBAAuB,EAAE,8BAA8B;IACvD,OAAO,EAAE,cAAc;IACvB,GAAG,EAAE,UAAU;IACf,iBAAiB,EAAE,wBAAwB;IAE3C,GAAG,EAAE,UAAU;IACf,MAAM,EAAE,aAAa;IACrB,cAAc,EAAE,qBAAqB;IACrC,oBAAoB,EAAE,2BAA2B;IACjD,YAAY,EAAE,mBAAmB;IACjC,YAAY,EAAE,kBAAkB;IAChC,WAAW,EAAE,kBAAkB;IAC/B,OAAO,EAAE,kBAAkB;IAE3B,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE,eAAe;IACzB,SAAS,EAAE,gBAAgB;IAC3B,eAAe,EAAE,sBAAsB;IACvC,QAAQ,EAAE,eAAe;IACzB,UAAU,EAAE,iBAAiB;IAE7B,qBAAqB;IACrB,MAAM,EAAE,SAAS;IACjB,QAAQ,EAAE,kBAAkB;IAC5B,GAAG,EAAE,cAAc;IAEnB,6CAA6C;IAC7C,MAAM,EAAE,mBAAmB;IAC3B,OAAO,EAAE,oBAAoB;IAC7B,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE,wBAAwB;IACrC,KAAK,EAAE,kBAAkB;IACzB,QAAQ,EAAE,qBAAqB;IAC/B,QAAQ,EAAE,qBAAqB;IAC/B,cAAc,EAAE,2BAA2B;IAC3C,SAAS,EAAE,sBAAsB;IACjC,SAAS,EAAE,sBAAsB;IACjC,MAAM,EAAE,mBAAmB;CAC5B,CAAC"}
1
+ {"version":3,"file":"option-defaults.js","sourceRoot":"","sources":["../../../src/lib/loader-utils/option-defaults.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,SAAS,EAAC,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAC,UAAU,EAAC,qBAAkB;AAErC,MAAM,CAAC,MAAM,sBAAsB,GAAkB;IACnD,YAAY,EAAE,SAAS;IACvB,IAAI,EAAE;QACJ,OAAO,EAAE,SAAS;QAClB,UAAU;QACV,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,SAAS;QACnB,gBAAgB,EAAE,SAAS;QAC3B,uBAAuB,EAAE,SAAS;QAClC,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,IAAI,UAAU,EAAE,EAAE,yEAAyE;QAChG,iBAAiB,EAAE,KAAK;QACxB,UAAU,EAAE,SAAS;QAErB,GAAG,EAAE,+BAA+B;QACpC,MAAM,EAAE,IAAI,EAAE,gDAAgD;QAC9D,eAAe,EAAE,GAAG;QACpB,cAAc,EAAE,CAAC,EAAE,+DAA+D;QAClF,oBAAoB,EAAE,CAAC,EAAE,iFAAiF;QAC1G,YAAY,EAAE,SAAS,EAAE,6FAA6F;QACtH,YAAY,EAAE,KAAK,EAAE,yCAAyC;QAC9D,WAAW,EAAE,EAAE,EAAE,0CAA0C;QAE3D,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,CAAC;QACX,SAAS,EAAE,MAAM;QACjB,eAAe,EAAE,CAAC;QAClB,QAAQ,EAAE,KAAK,EAAE,qFAAqF;QACtG,UAAU,EAAE,EAAE;KACf;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,6BAA6B;IAC7B,OAAO,EAAE,cAAc;IACvB,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE,eAAe;IACzB,gBAAgB,EAAE,uBAAuB;IACzC,uBAAuB,EAAE,8BAA8B;IACvD,OAAO,EAAE,cAAc;IACvB,GAAG,EAAE,UAAU;IACf,iBAAiB,EAAE,wBAAwB;IAE3C,GAAG,EAAE,UAAU;IACf,MAAM,EAAE,aAAa;IACrB,cAAc,EAAE,qBAAqB;IACrC,oBAAoB,EAAE,2BAA2B;IACjD,YAAY,EAAE,mBAAmB;IACjC,YAAY,EAAE,kBAAkB;IAChC,WAAW,EAAE,kBAAkB;IAC/B,OAAO,EAAE,kBAAkB;IAE3B,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE,eAAe;IACzB,KAAK,EAAE,YAAY;IACnB,SAAS,EAAE,gBAAgB;IAC3B,eAAe,EAAE,sBAAsB;IACvC,QAAQ,EAAE,eAAe;IACzB,UAAU,EAAE,iBAAiB;IAE7B,qBAAqB;IACrB,MAAM,EAAE,SAAS;IACjB,QAAQ,EAAE,kBAAkB;IAC5B,GAAG,EAAE,cAAc;IAEnB,6CAA6C;IAC7C,MAAM,EAAE,mBAAmB;IAC3B,OAAO,EAAE,oBAAoB;IAC7B,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE,wBAAwB;IACrC,KAAK,EAAE,kBAAkB;IACzB,QAAQ,EAAE,qBAAqB;IAC/B,QAAQ,EAAE,qBAAqB;IAC/B,cAAc,EAAE,2BAA2B;IAC3C,SAAS,EAAE,sBAAsB;IACjC,SAAS,EAAE,sBAAsB;IACjC,MAAM,EAAE,mBAAmB;CAC5B,CAAC"}
@@ -1,4 +1,11 @@
1
1
  import { Loader, LoaderOptions, StrictLoaderOptions } from '@loaders.gl/loader-utils';
2
+ /**
3
+ * Appends loader search parameters to a URL while preserving existing parameters and fragments.
4
+ * @param url URL to update
5
+ * @param options Loader options containing optional search parameters
6
+ * @returns URL with the configured parameters appended
7
+ */
8
+ export declare function applySearchParamsToUrl(url: string, options?: LoaderOptions): string;
2
9
  /**
3
10
  * Global state for loaders.gl. Stored on `globalThis.loaders._state`
4
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"option-utils.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/option-utils.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,MAAM,EACN,aAAa,EAIb,mBAAmB,EAEpB,MAAM,0BAA0B,CAAC;AA6BlC;;GAEG;AACH,KAAK,iBAAiB,GAAG;IACvB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,iBAAiB,CAWxD;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,IAAI,mBAAmB,CAQ5D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAO7D;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,EAAE,EAClB,GAAG,CAAC,EAAE,MAAM,GACX,mBAAmB,CAMrB;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,aAAa,GAAG,mBAAmB,CAYlF"}
1
+ {"version":3,"file":"option-utils.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/option-utils.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,MAAM,EACN,aAAa,EAIb,mBAAmB,EAEpB,MAAM,0BAA0B,CAAC;AAgClC;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,CA0BnF;AAED;;GAEG;AACH,KAAK,iBAAiB,GAAG;IACvB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,iBAAiB,CAWxD;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,IAAI,mBAAmB,CAQ5D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAO7D;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,EAAE,EAClB,GAAG,CAAC,EAAE,MAAM,GACX,mBAAmB,CASrB;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,aAAa,GAAG,mBAAmB,CAYlF"}
@@ -16,18 +16,50 @@ const CORE_LOADER_OPTION_KEYS = [
16
16
  'useLocalLibraries',
17
17
  'CDN',
18
18
  'worker',
19
+ 'workerThreshold',
19
20
  'maxConcurrency',
20
21
  'maxMobileConcurrency',
21
22
  'reuseWorkers',
23
+ 'workerTransferBufferCopy',
22
24
  '_nodeWorkers',
23
25
  '_workerType',
24
26
  'limit',
25
27
  '_limitMB',
28
+ 'shape',
26
29
  'batchSize',
27
30
  'batchDebounceMs',
28
31
  'metadata',
29
32
  'transforms'
30
33
  ];
34
+ /**
35
+ * Appends loader search parameters to a URL while preserving existing parameters and fragments.
36
+ * @param url URL to update
37
+ * @param options Loader options containing optional search parameters
38
+ * @returns URL with the configured parameters appended
39
+ */
40
+ export function applySearchParamsToUrl(url, options) {
41
+ const searchParams = options?.searchParams;
42
+ if (!searchParams || Object.keys(searchParams).length === 0 || /^(?:data|blob):/i.test(url)) {
43
+ return url;
44
+ }
45
+ const hashIndex = url.indexOf('#');
46
+ const hash = hashIndex >= 0 ? url.slice(hashIndex) : '';
47
+ const urlWithoutHash = hashIndex >= 0 ? url.slice(0, hashIndex) : url;
48
+ const queryIndex = urlWithoutHash.indexOf('?');
49
+ const path = queryIndex >= 0 ? urlWithoutHash.slice(0, queryIndex) : urlWithoutHash;
50
+ const query = queryIndex >= 0 ? urlWithoutHash.slice(queryIndex + 1) : '';
51
+ const existingSearchParams = new URLSearchParams(query);
52
+ const appendedSearchParams = new URLSearchParams();
53
+ for (const [key, value] of Object.entries(searchParams)) {
54
+ if (!existingSearchParams.has(key)) {
55
+ appendedSearchParams.set(key, String(value));
56
+ }
57
+ }
58
+ const serializedAppendedSearchParams = appendedSearchParams.toString();
59
+ return `${path}${queryIndex >= 0 ? `?${query}` : ''}${serializedAppendedSearchParams
60
+ ? `${queryIndex >= 0 ? '&' : '?'}${serializedAppendedSearchParams}`
61
+ : ''}${hash}`;
62
+ }
31
63
  /**
32
64
  * Helper for safely accessing global loaders.gl variables
33
65
  * Wraps initialization of global variable in function to defeat overly aggressive tree-shakers
@@ -80,7 +112,10 @@ export function normalizeOptions(options, loader, loaders, url) {
80
112
  loaders = loaders || [];
81
113
  loaders = Array.isArray(loaders) ? loaders : [loaders];
82
114
  validateOptions(options, loaders);
83
- return normalizeLoaderOptions(normalizeOptionsInternal(loader, options, url));
115
+ validateWorkerThreshold(options);
116
+ const normalizedOptions = normalizeLoaderOptions(normalizeOptionsInternal(loader, options, url));
117
+ validateWorkerThreshold(normalizedOptions);
118
+ return normalizedOptions;
84
119
  }
85
120
  /**
86
121
  * Returns a copy of the provided options with deprecated top-level core fields moved into `core`
@@ -120,6 +155,13 @@ function validateOptions(options, loaders) {
120
155
  validateOptionsObject(idOptions, loader.id, loaderOptions, deprecatedOptions, loaders);
121
156
  }
122
157
  }
158
+ /** Validates the automatic worker-selection threshold. */
159
+ function validateWorkerThreshold(options) {
160
+ const threshold = options.core?.workerThreshold;
161
+ if (threshold !== undefined && (!Number.isFinite(threshold) || threshold < 0 || threshold > 1)) {
162
+ throw new Error('core.workerThreshold must be a finite number between 0 and 1');
163
+ }
164
+ }
123
165
  // eslint-disable-next-line max-params, complexity
124
166
  function validateOptionsObject(options, id, defaultOptions, deprecatedOptions, loaders) {
125
167
  const loaderName = id || 'Top level';
@@ -177,11 +219,46 @@ function normalizeOptionsInternal(loader, options, url) {
177
219
  mergeNestedFields(mergedOptions, normalizeLoaderOptions(getGlobalLoaderOptions()));
178
220
  const userOptions = normalizeLoaderOptions(options);
179
221
  mergeNestedFields(mergedOptions, userOptions);
222
+ applyCoreShapeDefault(mergedOptions, userOptions, loader);
180
223
  addUrlOptions(mergedOptions, url);
181
224
  addDeprecatedTopLevelOptions(mergedOptions);
182
225
  return mergedOptions;
183
226
  }
184
- // Merge nested options objects
227
+ /**
228
+ * Applies `options.core.shape` to a loader's scoped `shape` option when that loader declares
229
+ * shape support and neither global nor user-supplied loader-scoped options override it.
230
+ * @param mergedOptions fully merged options object being normalized
231
+ * @param userOptions normalized user-supplied options
232
+ * @param loader selected loader
233
+ */
234
+ function applyCoreShapeDefault(mergedOptions, userOptions, loader) {
235
+ const coreShape = mergedOptions.core?.shape;
236
+ if (coreShape === undefined) {
237
+ return;
238
+ }
239
+ const loaderScopedDefaults = loader.options?.[loader.id];
240
+ if (!isPureObject(loaderScopedDefaults) || !('shape' in loaderScopedDefaults)) {
241
+ return;
242
+ }
243
+ const globalLoaderScopedOptions = getGlobalLoaderOptions()[loader.id];
244
+ if (isPureObject(globalLoaderScopedOptions) && 'shape' in globalLoaderScopedOptions) {
245
+ return;
246
+ }
247
+ const userLoaderScopedOptions = userOptions[loader.id];
248
+ if (isPureObject(userLoaderScopedOptions) && 'shape' in userLoaderScopedOptions) {
249
+ return;
250
+ }
251
+ const loaderScopedOptions = mergedOptions[loader.id];
252
+ mergedOptions[loader.id] = {
253
+ ...(isPureObject(loaderScopedOptions) ? loaderScopedOptions : {}),
254
+ shape: coreShape
255
+ };
256
+ }
257
+ /**
258
+ * Merges one level of nested option objects into the target options record.
259
+ * @param mergedOptions target options object to mutate
260
+ * @param options source options object
261
+ */
185
262
  function mergeNestedFields(mergedOptions, options) {
186
263
  for (const key in options) {
187
264
  // Check for nested options
@@ -225,6 +302,11 @@ function cloneLoaderOptions(options) {
225
302
  }
226
303
  return clonedOptions;
227
304
  }
305
+ /**
306
+ * Moves deprecated top-level core option aliases into `options.core` without overwriting
307
+ * explicitly provided `options.core` values.
308
+ * @param options loader options to normalize in place
309
+ */
228
310
  function moveDeprecatedTopLevelOptionsToCore(options) {
229
311
  if (options.baseUri !== undefined) {
230
312
  options.core ||= {};
@@ -234,7 +316,8 @@ function moveDeprecatedTopLevelOptionsToCore(options) {
234
316
  }
235
317
  for (const key of CORE_LOADER_OPTION_KEYS) {
236
318
  if (options[key] !== undefined) {
237
- const coreOptions = (options.core = options.core || {});
319
+ options.core ||= {};
320
+ const coreOptions = options.core;
238
321
  const coreRecord = coreOptions;
239
322
  // Treat deprecated top-level core options as aliases to `options.core`, but never override an explicitly
240
323
  // provided `options.core` value.
@@ -252,6 +335,11 @@ function moveDeprecatedTopLevelOptionsToCore(options) {
252
335
  }
253
336
  }
254
337
  }
338
+ /**
339
+ * Rehydrates deprecated top-level aliases from `options.core` for compatibility with older
340
+ * call sites that still read normalized options from the top level.
341
+ * @param options normalized loader options to mutate in place
342
+ */
255
343
  function addDeprecatedTopLevelOptions(options) {
256
344
  const coreOptions = options.core;
257
345
  if (!coreOptions) {
@@ -1 +1 @@
1
- {"version":3,"file":"option-utils.js","sourceRoot":"","sources":["../../../src/lib/loader-utils/option-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"option-utils.js","sourceRoot":"","sources":["../../../src/lib/loader-utils/option-utils.ts"],"names":[],"mappings":"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"}