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

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 (66) hide show
  1. package/dist/format-types.d.ts +24 -0
  2. package/dist/format-types.d.ts.map +1 -0
  3. package/dist/format-types.js +4 -0
  4. package/dist/index.cjs +41 -25
  5. package/dist/index.cjs.map +3 -3
  6. package/dist/index.d.ts +10 -8
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +2 -3
  9. package/dist/json-loader.js +1 -1
  10. package/dist/lib/files/blob-file.d.ts +1 -1
  11. package/dist/lib/files/blob-file.d.ts.map +1 -1
  12. package/dist/lib/files/blob-file.js +3 -1
  13. package/dist/lib/files/http-file.d.ts +1 -1
  14. package/dist/lib/files/http-file.d.ts.map +1 -1
  15. package/dist/lib/files/http-file.js +1 -1
  16. package/dist/lib/files/node-file-facade.d.ts +1 -1
  17. package/dist/lib/files/node-file-facade.d.ts.map +1 -1
  18. package/dist/lib/files/node-file-facade.js +1 -1
  19. package/dist/lib/log-utils/log.js +1 -1
  20. package/dist/lib/option-utils/merge-options.d.ts +12 -0
  21. package/dist/lib/option-utils/merge-options.d.ts.map +1 -0
  22. package/dist/lib/option-utils/{merge-loader-options.js → merge-options.js} +4 -1
  23. package/dist/lib/sources/data-source.d.ts +25 -13
  24. package/dist/lib/sources/data-source.d.ts.map +1 -1
  25. package/dist/lib/sources/data-source.js +30 -8
  26. package/dist/lib/sources/image-source.d.ts +1 -4
  27. package/dist/lib/sources/image-source.d.ts.map +1 -1
  28. package/dist/lib/sources/image-source.js +2 -2
  29. package/dist/lib/sources/image-tile-source.d.ts +2 -1
  30. package/dist/lib/sources/image-tile-source.d.ts.map +1 -1
  31. package/dist/lib/sources/tile-source-adapter.d.ts +3 -3
  32. package/dist/lib/sources/tile-source-adapter.d.ts.map +1 -1
  33. package/dist/lib/sources/tile-source-adapter.js +0 -1
  34. package/dist/lib/sources/tile-source.d.ts +3 -5
  35. package/dist/lib/sources/tile-source.d.ts.map +1 -1
  36. package/dist/lib/sources/vector-source.d.ts +2 -4
  37. package/dist/lib/sources/vector-source.d.ts.map +1 -1
  38. package/dist/lib/sources/vector-source.js +1 -2
  39. package/dist/lib/sources/vector-tile-source.d.ts +2 -2
  40. package/dist/lib/sources/vector-tile-source.d.ts.map +1 -1
  41. package/dist/loader-types.d.ts +9 -8
  42. package/dist/loader-types.d.ts.map +1 -1
  43. package/dist/source-types.d.ts +20 -8
  44. package/dist/source-types.d.ts.map +1 -1
  45. package/dist/source-types.js +1 -0
  46. package/dist/writer-types.d.ts +8 -8
  47. package/dist/writer-types.d.ts.map +1 -1
  48. package/package.json +4 -7
  49. package/src/format-types.ts +27 -0
  50. package/src/index.ts +15 -8
  51. package/src/lib/files/blob-file.ts +4 -2
  52. package/src/lib/files/http-file.ts +1 -1
  53. package/src/lib/files/node-file-facade.ts +1 -1
  54. package/src/lib/option-utils/{merge-loader-options.ts → merge-options.ts} +10 -6
  55. package/src/lib/sources/data-source.ts +51 -17
  56. package/src/lib/sources/image-source.ts +2 -7
  57. package/src/lib/sources/image-tile-source.ts +2 -4
  58. package/src/lib/sources/tile-source-adapter.ts +4 -4
  59. package/src/lib/sources/tile-source.ts +3 -9
  60. package/src/lib/sources/vector-source.ts +2 -6
  61. package/src/lib/sources/vector-tile-source.ts +2 -5
  62. package/src/loader-types.ts +12 -15
  63. package/src/source-types.ts +35 -10
  64. package/src/writer-types.ts +10 -12
  65. package/dist/lib/option-utils/merge-loader-options.d.ts +0 -9
  66. package/dist/lib/option-utils/merge-loader-options.d.ts.map +0 -1
@@ -24,7 +24,9 @@ export class BlobFile {
24
24
  };
25
25
  }
26
26
  async read(start, length) {
27
- const arrayBuffer = await this.handle.slice(start, start + length).arrayBuffer();
27
+ const arrayBuffer = await this.handle
28
+ .slice(Number(start), Number(start) + Number(length))
29
+ .arrayBuffer();
28
30
  return arrayBuffer;
29
31
  }
30
32
  }
@@ -7,7 +7,7 @@ export declare class HttpFile implements ReadableFile {
7
7
  constructor(url: string);
8
8
  close(): Promise<void>;
9
9
  stat(): Promise<Stat>;
10
- read(offset: number | bigint, length: number): Promise<ArrayBuffer>;
10
+ read(offset?: number | bigint, length?: number): Promise<ArrayBuffer>;
11
11
  /**
12
12
  *
13
13
  * @param offset
@@ -1 +1 @@
1
- {"version":3,"file":"http-file.d.ts","sourceRoot":"","sources":["../../../src/lib/files/http-file.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,YAAY,EAAE,IAAI,EAAC,kBAAe;AAE1C,qBAAa,QAAS,YAAW,YAAY;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAK;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAM;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;gBAET,GAAG,EAAE,MAAM;IAKjB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAEtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAarB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAMzE;;;;;;;OAOG;IAEG,UAAU,CACd,MAAM,EAAE,MAAM,GAAG,MAAM,EACvB,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,QAAQ,CAAC;CAsErB"}
1
+ {"version":3,"file":"http-file.d.ts","sourceRoot":"","sources":["../../../src/lib/files/http-file.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,YAAY,EAAE,IAAI,EAAC,kBAAe;AAE1C,qBAAa,QAAS,YAAW,YAAY;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAK;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAM;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;gBAET,GAAG,EAAE,MAAM;IAKjB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAEtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAarB,IAAI,CAAC,MAAM,GAAE,MAAM,GAAG,MAAU,EAAE,MAAM,GAAE,MAAU,GAAG,OAAO,CAAC,WAAW,CAAC;IAMjF;;;;;;;OAOG;IAEG,UAAU,CACd,MAAM,EAAE,MAAM,GAAG,MAAM,EACvB,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,QAAQ,CAAC;CAsErB"}
@@ -23,7 +23,7 @@ export class HttpFile {
23
23
  isDirectory: false
24
24
  };
25
25
  }
26
- async read(offset, length) {
26
+ async read(offset = 0, length = 0) {
27
27
  const response = await this.fetchRange(offset, length);
28
28
  const arrayBuffer = await response.arrayBuffer();
29
29
  return arrayBuffer;
@@ -7,7 +7,7 @@ export declare class NodeFileFacade implements ReadableFile, WritableFile {
7
7
  url: string;
8
8
  constructor(url: string, flags?: 'r' | 'w' | 'wx' | 'a+', mode?: number);
9
9
  /** Read data */
10
- read(start?: number | bigint, end?: number | bigint): Promise<ArrayBuffer>;
10
+ read(start?: number | bigint, length?: number): Promise<ArrayBuffer>;
11
11
  /** Write to file. The number of bytes written will be returned */
12
12
  write(arrayBuffer: ArrayBuffer, offset?: number | bigint, length?: number | bigint): Promise<number>;
13
13
  /** Get information about file */
@@ -1 +1 @@
1
- {"version":3,"file":"node-file-facade.d.ts","sourceRoot":"","sources":["../../../src/lib/files/node-file-facade.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,YAAY,EAAE,YAAY,EAAE,IAAI,EAAC,kBAAe;AAIxD,kFAAkF;AAClF,qBAAa,cAAe,YAAW,YAAY,EAAE,YAAY;IAC/D,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,CAAK;IACjB,OAAO,EAAE,MAAM,CAAM;IACrB,GAAG,EAAE,MAAM,CAAM;gBAEL,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM;IAUvE,gBAAgB;IACV,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAGhF,kEAAkE;IAC5D,KAAK,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAG1G,iCAAiC;IAC3B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,iEAAiE;IAC3D,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7C,yDAAyD;IACnD,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAG7C,qBAAqB;IACf,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAC7B"}
1
+ {"version":3,"file":"node-file-facade.d.ts","sourceRoot":"","sources":["../../../src/lib/files/node-file-facade.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,YAAY,EAAE,YAAY,EAAE,IAAI,EAAC,kBAAe;AAIxD,kFAAkF;AAClF,qBAAa,cAAe,YAAW,YAAY,EAAE,YAAY;IAC/D,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,CAAK;IACjB,OAAO,EAAE,MAAM,CAAM;IACrB,GAAG,EAAE,MAAM,CAAM;gBAEL,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM;IAUvE,gBAAgB;IACV,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAG1E,kEAAkE;IAC5D,KAAK,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAG1G,iCAAiC;IAC3B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,iEAAiE;IAC3D,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7C,yDAAyD;IACnD,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAG7C,qBAAqB;IACf,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAC7B"}
@@ -20,7 +20,7 @@ export class NodeFileFacade {
20
20
  throw new Error('Can\'t instantiate NodeFile. Make sure to import @loaders.gl/polyfills first.');
21
21
  }
22
22
  /** Read data */
23
- async read(start, end) {
23
+ async read(start, length) {
24
24
  throw NOT_IMPLEMENTED;
25
25
  }
26
26
  /** Write to file. The number of bytes written will be returned */
@@ -5,7 +5,7 @@ import { Log } from '@probe.gl/log';
5
5
  // Version constant cannot be imported, it needs to correspond to the build version of **this** module.
6
6
  // __VERSION__ is injected by babel-plugin-version-inline
7
7
  // @ts-ignore TS2304: Cannot find name '__VERSION__'.
8
- export const VERSION = typeof "4.3.1" !== 'undefined' ? "4.3.1" : 'latest';
8
+ export const VERSION = typeof "4.4.0-alpha.0" !== 'undefined' ? "4.4.0-alpha.0" : 'latest';
9
9
  const version = VERSION[0] >= '0' && VERSION[0] <= '9' ? `v${VERSION}` : '';
10
10
  // Make sure we set the global variable
11
11
  function createLog() {
@@ -0,0 +1,12 @@
1
+ export type RequiredOptions<T> = Required<{
2
+ [K in keyof T]: Required<T[K]>;
3
+ }>;
4
+ export declare function getRequiredOptions<T>(options: T): RequiredOptions<T>;
5
+ /**
6
+ *
7
+ * @param baseOptions Can be undefined, in which case a fresh options object will be minted
8
+ * @param newOptions
9
+ * @returns
10
+ */
11
+ export declare function mergeOptions<OptionsT extends Record<string, unknown>>(baseOptions: OptionsT | undefined, newOptions: OptionsT): OptionsT;
12
+ //# sourceMappingURL=merge-options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge-options.d.ts","sourceRoot":"","sources":["../../../src/lib/option-utils/merge-options.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,QAAQ,CAAC;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAC,CAAC,CAAC;AAE5E,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAEpE;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnE,WAAW,EAAE,QAAQ,GAAG,SAAS,EACjC,UAAU,EAAE,QAAQ,GACnB,QAAQ,CAEV"}
@@ -1,13 +1,16 @@
1
1
  // loaders.gl
2
2
  // SPDX-License-Identifier: MIT
3
3
  // Copyright (c) vis.gl contributors
4
+ export function getRequiredOptions(options) {
5
+ return options;
6
+ }
4
7
  /**
5
8
  *
6
9
  * @param baseOptions Can be undefined, in which case a fresh options object will be minted
7
10
  * @param newOptions
8
11
  * @returns
9
12
  */
10
- export function mergeLoaderOptions(baseOptions, newOptions) {
13
+ export function mergeOptions(baseOptions, newOptions) {
11
14
  return mergeOptionsRecursively(baseOptions || {}, newOptions);
12
15
  }
13
16
  function mergeOptionsRecursively(baseOptions, newOptions, level = 0) {
@@ -1,21 +1,33 @@
1
- import type { LoaderOptions } from '@loaders.gl/loader-utils';
1
+ import type { LoaderOptions, Loader } from "../../loader-types.js";
2
+ import type { RequiredOptions } from "../option-utils/merge-options.js";
2
3
  /** Common properties for all data sources */
3
- export type DataSourceProps = {
4
- url?: string | Blob;
5
- /** LoaderOptions provide an option to override `fetch`. Will also be passed to any sub loaders */
6
- loadOptions?: LoaderOptions;
7
- };
4
+ export type DataSourceOptions = Partial<{
5
+ core: {
6
+ /** Allows application to specify which source should be selected. Matches `Source.type`. Defaults to 'auto' */
7
+ type?: string;
8
+ /** Any dataset attributions (in case underlying metadata does not include attributions) */
9
+ attributions?: string[];
10
+ /** LoaderOptions provide an option to override `fetch`. Will also be passed to any sub loaders */
11
+ loadOptions?: LoaderOptions;
12
+ /** Make additional loaders available to the data source */
13
+ loaders?: Loader[];
14
+ };
15
+ [key: string]: Record<string, unknown>;
16
+ }>;
8
17
  /** base class of all data sources */
9
- export declare abstract class DataSource<PropsT extends DataSourceProps = DataSourceProps> {
10
- abstract data: unknown;
11
- /** A resolved fetch function extracted from loadOptions prop */
12
- fetch: (url: string, options?: RequestInit) => Promise<Response>;
18
+ export declare abstract class DataSource<DataT, OptionsT extends DataSourceOptions> {
19
+ static defaultOptions: Required<DataSourceOptions>;
20
+ optionsType?: OptionsT & DataSourceOptions;
21
+ options: Required<OptionsT & DataSourceOptions>;
22
+ readonly data: DataT;
23
+ readonly url: string;
13
24
  /** The actual load options, if calling a loaders.gl loader */
14
25
  loadOptions: LoaderOptions;
26
+ /** A resolved fetch function extracted from loadOptions prop */
27
+ fetch: (url: string, options?: RequestInit) => Promise<Response>;
15
28
  _needsRefresh: boolean;
16
- props: PropsT;
17
- constructor(props: PropsT);
18
- setProps(props: PropsT): void;
29
+ constructor(data: DataT, options: OptionsT, defaultOptions?: Omit<RequiredOptions<OptionsT>, 'core'>);
30
+ setProps(options: OptionsT): void;
19
31
  /** Mark this data source as needing a refresh (redraw) */
20
32
  setNeedsRefresh(): void;
21
33
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"data-source.d.ts","sourceRoot":"","sources":["../../../src/lib/sources/data-source.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAE5D,6CAA6C;AAC7C,MAAM,MAAM,eAAe,GAAG;IAC5B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,kGAAkG;IAClG,WAAW,CAAC,EAAE,aAAa,CAAC;CAC7B,CAAC;AAEF,qCAAqC;AACrC,8BAAsB,UAAU,CAAC,MAAM,SAAS,eAAe,GAAG,eAAe;IAC/E,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,gEAAgE;IAChE,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjE,8DAA8D;IAC9D,WAAW,EAAE,aAAa,CAAC;IAC3B,aAAa,EAAE,OAAO,CAAQ;IAE9B,KAAK,EAAE,MAAM,CAAC;gBAEF,KAAK,EAAE,MAAM;IAMzB,QAAQ,CAAC,KAAK,EAAE,MAAM;IAMtB,0DAA0D;IAC1D,eAAe,IAAI,IAAI;IAIvB;;;OAGG;IACH,eAAe,CAAC,KAAK,GAAE,OAAc;CAOtC;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE,aAAa,SAKvC,MAAM,iBAAiB,WAAW,uBAWlD"}
1
+ {"version":3,"file":"data-source.d.ts","sourceRoot":"","sources":["../../../src/lib/sources/data-source.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,aAAa,EAAE,MAAM,EAAC,8BAA2B;AAC9D,OAAO,KAAK,EAAC,eAAe,EAAC,yCAAsC;AAInE,6CAA6C;AAC7C,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC;IACtC,IAAI,EAAE;QACJ,+GAA+G;QAC/G,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,2FAA2F;QAC3F,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,kGAAkG;QAClG,WAAW,CAAC,EAAE,aAAa,CAAC;QAC5B,2DAA2D;QAC3D,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;KACpB,CAAC;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC,CAAC,CAAC;AAEH,qCAAqC;AACrC,8BAAsB,UAAU,CAAC,KAAK,EAAE,QAAQ,SAAS,iBAAiB;IACxE,MAAM,CAAC,cAAc,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAOhD;IAEF,WAAW,CAAC,EAAE,QAAQ,GAAG,iBAAiB,CAAC;IAC3C,OAAO,EAAE,QAAQ,CAAC,QAAQ,GAAG,iBAAiB,CAAC,CAAC;IAChD,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAErB,8DAA8D;IAC9D,WAAW,EAAE,aAAa,CAAC;IAC3B,gEAAgE;IAChE,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjE,aAAa,EAAE,OAAO,CAAQ;gBAG5B,IAAI,EAAE,KAAK,EACX,OAAO,EAAE,QAAQ,EACjB,cAAc,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAe1D,QAAQ,CAAC,OAAO,EAAE,QAAQ;IAM1B,0DAA0D;IAC1D,eAAe,IAAI,IAAI;IAIvB;;;OAGG;IACH,eAAe,CAAC,KAAK,GAAE,OAAc;CAOtC;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE,aAAa,SAKvC,MAAM,iBAAiB,WAAW,uBAWlD"}
@@ -1,21 +1,43 @@
1
1
  // loaders.gl
2
2
  // SPDX-License-Identifier: MIT
3
3
  // Copyright (c) vis.gl contributors
4
+ import { mergeOptions } from "../option-utils/merge-options.js";
5
+ import { resolvePath } from "../path-utils/file-aliases.js";
4
6
  /** base class of all data sources */
5
7
  export class DataSource {
6
- /** A resolved fetch function extracted from loadOptions prop */
7
- fetch;
8
+ static defaultOptions = {
9
+ core: {
10
+ type: 'auto',
11
+ attributions: [],
12
+ loadOptions: {},
13
+ loaders: []
14
+ }
15
+ };
16
+ optionsType;
17
+ options;
18
+ data;
19
+ url;
8
20
  /** The actual load options, if calling a loaders.gl loader */
9
21
  loadOptions;
22
+ /** A resolved fetch function extracted from loadOptions prop */
23
+ fetch;
10
24
  _needsRefresh = true;
11
- props;
12
- constructor(props) {
13
- this.props = { ...props };
14
- this.loadOptions = { ...props.loadOptions };
25
+ constructor(data, options, defaultOptions) {
26
+ if (defaultOptions) {
27
+ // @ts-expect-error Typescript gets confused
28
+ this.options = mergeOptions({ ...defaultOptions, core: DataSource.defaultOptions }, options);
29
+ }
30
+ else {
31
+ // @ts-expect-error
32
+ this.options = { ...options };
33
+ }
34
+ this.data = data;
35
+ this.url = typeof data === 'string' ? resolvePath(data) : '';
36
+ this.loadOptions = { ...this.options.core?.loadOptions };
15
37
  this.fetch = getFetchFunction(this.loadOptions);
16
38
  }
17
- setProps(props) {
18
- this.props = Object.assign(this.props, props);
39
+ setProps(options) {
40
+ this.options = Object.assign(this.options, options);
19
41
  // TODO - add a shallow compare to avoid setting refresh if no change?
20
42
  this.setNeedsRefresh();
21
43
  }
@@ -1,11 +1,8 @@
1
- import type { DataSourceProps } from "./data-source.js";
2
- import { DataSource } from "./data-source.js";
3
1
  import { ImageType } from "./utils/image-type.js";
4
- export type ImageSourceProps = DataSourceProps;
5
2
  /**
6
3
  * ImageSource - data sources that allow images to be queried by (geospatial) extents
7
4
  */
8
- export declare abstract class ImageSource<PropsT extends ImageSourceProps = ImageSourceProps> extends DataSource<PropsT> {
5
+ export declare abstract class ImageSource {
9
6
  static type: string;
10
7
  static testURL: (url: string) => boolean;
11
8
  abstract getMetadata(): Promise<ImageSourceMetadata>;
@@ -1 +1 @@
1
- {"version":3,"file":"image-source.d.ts","sourceRoot":"","sources":["../../../src/lib/sources/image-source.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,eAAe,EAAC,yBAAsB;AACnD,OAAO,EAAC,UAAU,EAAC,yBAAsB;AAEzC,OAAO,EAAC,SAAS,EAAC,8BAA2B;AAE7C,MAAM,MAAM,gBAAgB,GAAG,eAAe,CAAC;AAE/C;;GAEG;AACH,8BAAsB,WAAW,CAC/B,MAAM,SAAS,gBAAgB,GAAG,gBAAgB,CAClD,SAAQ,UAAU,CAAC,MAAM,CAAC;IAC1B,MAAM,CAAC,IAAI,EAAE,MAAM,CAAc;IACjC,MAAM,CAAC,OAAO,QAAS,MAAM,KAAG,OAAO,CAAU;IAEjD,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,mBAAmB,CAAC;IACpD,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC;CACtE;AAID;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,gBAAgB,EAAE,CAAC;CAC5B,CAAC;AAEF,wDAAwD;AACxD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,yBAAyB;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,8FAA8F;IAC9F,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACzE,+BAA+B;IAC/B,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC7B,CAAC;AAEF,sEAAsE;AACtE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,uBAAuB;IACvB,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,cAAc;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,8CAA8C;IAC9C,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACxE,kCAAkC;IAClC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa;IACb,MAAM,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC"}
1
+ {"version":3,"file":"image-source.d.ts","sourceRoot":"","sources":["../../../src/lib/sources/image-source.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,SAAS,EAAC,8BAA2B;AAG7C;;GAEG;AACH,8BAAsB,WAAW;IAC/B,MAAM,CAAC,IAAI,EAAE,MAAM,CAAc;IACjC,MAAM,CAAC,OAAO,QAAS,MAAM,KAAG,OAAO,CAAU;IAEjD,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,mBAAmB,CAAC;IACpD,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC;CACtE;AAID;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,gBAAgB,EAAE,CAAC;CAC5B,CAAC;AAEF,wDAAwD;AACxD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,yBAAyB;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,8FAA8F;IAC9F,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACzE,+BAA+B;IAC/B,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC7B,CAAC;AAEF,sEAAsE;AACtE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,uBAAuB;IACvB,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,cAAc;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,8CAA8C;IAC9C,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACxE,kCAAkC;IAClC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa;IACb,MAAM,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC"}
@@ -1,11 +1,11 @@
1
1
  // loaders.gl
2
2
  // SPDX-License-Identifier: MIT
3
3
  // Copyright (c) vis.gl contributors
4
- import { DataSource } from "./data-source.js";
4
+ // TODO - remove (this breaks WMS layer)
5
5
  /**
6
6
  * ImageSource - data sources that allow images to be queried by (geospatial) extents
7
7
  */
8
- export class ImageSource extends DataSource {
8
+ export class ImageSource {
9
9
  static type = 'template';
10
10
  static testURL = (url) => false;
11
11
  }
@@ -5,7 +5,8 @@ export type ImageTileSourceProps = TileSourceProps;
5
5
  * MapTileSource - data sources that allow data to be queried by (geospatial) tile
6
6
  * @note If geospatial, bounding box is expected to be in web mercator coordinates
7
7
  */
8
- export interface ImageTileSource<PropsT extends TileSourceProps = TileSourceProps, MetadataT extends TileSourceMetadata = TileSourceMetadata> extends TileSource<PropsT, MetadataT> {
8
+ export interface ImageTileSource extends TileSource {
9
+ getMetadata(): Promise<TileSourceMetadata>;
9
10
  getImageTile(parameters: GetTileParameters): Promise<ImageType | null>;
10
11
  }
11
12
  //# sourceMappingURL=image-tile-source.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"image-tile-source.d.ts","sourceRoot":"","sources":["../../../src/lib/sources/image-tile-source.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,SAAS,EAAC,8BAA2B;AAClD,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACX,yBAAsB;AAEvB,MAAM,MAAM,oBAAoB,GAAG,eAAe,CAAC;AAEnD;;;GAGG;AACH,MAAM,WAAW,eAAe,CAC9B,MAAM,SAAS,eAAe,GAAG,eAAe,EAChD,SAAS,SAAS,kBAAkB,GAAG,kBAAkB,CACzD,SAAQ,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC;IACrC,YAAY,CAAC,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;CACxE"}
1
+ {"version":3,"file":"image-tile-source.d.ts","sourceRoot":"","sources":["../../../src/lib/sources/image-tile-source.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,SAAS,EAAC,8BAA2B;AAClD,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACX,yBAAsB;AAEvB,MAAM,MAAM,oBAAoB,GAAG,eAAe,CAAC;AAEnD;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,UAAU;IACjD,WAAW,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC3C,YAAY,CAAC,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;CACxE"}
@@ -5,9 +5,9 @@ import { ImageSource, ImageSourceMetadata } from "./image-source.js";
5
5
  * @note
6
6
  * - If geospatial, bounding box is expected to be in web mercator coordinates
7
7
  */
8
- export declare class TileSourceAdapter implements TileSource<ImageSourceMetadata> {
9
- readonly viewportSource: ImageSource;
10
- constructor(source: ImageSource);
8
+ export declare class TileSourceAdapter<ImageSourceT extends ImageSource> implements TileSource {
9
+ readonly viewportSource: ImageSourceT;
10
+ constructor(source: ImageSourceT);
11
11
  getMetadata(): Promise<ImageSourceMetadata>;
12
12
  /** Flat parameters */
13
13
  getTile(parameters: GetTileParameters): Promise<unknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"tile-source-adapter.d.ts","sourceRoot":"","sources":["../../../src/lib/sources/tile-source-adapter.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,UAAU,EAAE,iBAAiB,EAAE,qBAAqB,EAAC,yBAAsB;AACnF,OAAO,EAAC,WAAW,EAAE,mBAAmB,EAAC,0BAAuB;AAEhE;;;;GAIG;AAEH,qBAAa,iBAAkB,YAAW,UAAU,CAAC,mBAAmB,CAAC;IACvE,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC;gBACzB,MAAM,EAAE,WAAW;IAGzB,WAAW,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIjD,sBAAsB;IACtB,OAAO,CAAC,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IAOxD,+BAA+B;IAC/B,WAAW,CAAC,UAAU,EAAE,qBAAqB,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAIvE,gEAAgE;IAChE,SAAS,CAAC,kBAAkB,CAC1B,UAAU,EAAE,iBAAiB,GAC5B,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAc7D,sBAAsB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;CAO7E"}
1
+ {"version":3,"file":"tile-source-adapter.d.ts","sourceRoot":"","sources":["../../../src/lib/sources/tile-source-adapter.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,UAAU,EAAE,iBAAiB,EAAE,qBAAqB,EAAC,yBAAsB;AACnF,OAAO,EAAC,WAAW,EAAE,mBAAmB,EAAC,0BAAuB;AAEhE;;;;GAIG;AACH,qBAAa,iBAAiB,CAAC,YAAY,SAAS,WAAW,CAAE,YAAW,UAAU;IACpF,QAAQ,CAAC,cAAc,EAAE,YAAY,CAAC;gBAC1B,MAAM,EAAE,YAAY;IAI1B,WAAW,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIjD,sBAAsB;IACtB,OAAO,CAAC,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IAOxD,+BAA+B;IAC/B,WAAW,CAAC,UAAU,EAAE,qBAAqB,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAIvE,gEAAgE;IAChE,SAAS,CAAC,kBAAkB,CAC1B,UAAU,EAAE,iBAAiB,GAC5B,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAc7D,sBAAsB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;CAO7E"}
@@ -5,7 +5,6 @@
5
5
  * @note
6
6
  * - If geospatial, bounding box is expected to be in web mercator coordinates
7
7
  */
8
- // @ts-expect-error TODO - does not implement all DataSource members
9
8
  export class TileSourceAdapter {
10
9
  viewportSource;
11
10
  constructor(source) {
@@ -1,16 +1,14 @@
1
- import type { DataSourceProps } from "./data-source.js";
2
- import { DataSource } from "./data-source.js";
3
1
  /**
4
2
  * Props for a TileSource
5
3
  */
6
- export type TileSourceProps = DataSourceProps;
4
+ export type TileSourceProps = {};
7
5
  /**
8
6
  * MapTileSource - data sources that allow data to be queried by (geospatial) extents
9
7
  * @note
10
8
  * - If geospatial, bounding box is expected to be in web mercator coordinates
11
9
  */
12
- export interface TileSource<PropsT extends TileSourceProps = TileSourceProps, MetadataT extends TileSourceMetadata = TileSourceMetadata> extends DataSource<PropsT> {
13
- getMetadata(): Promise<MetadataT>;
10
+ export interface TileSource {
11
+ getMetadata(): Promise<TileSourceMetadata>;
14
12
  /** Flat parameters */
15
13
  getTile(parameters: GetTileParameters): Promise<unknown | null>;
16
14
  /** deck.gl compatibility: TileLayer and MTVLayer */
@@ -1 +1 @@
1
- {"version":3,"file":"tile-source.d.ts","sourceRoot":"","sources":["../../../src/lib/sources/tile-source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tile-source.d.ts","sourceRoot":"","sources":["../../../src/lib/sources/tile-source.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,11 @@
1
1
  import type { Schema, GeoJSONTable, BinaryFeatureCollection } from '@loaders.gl/schema';
2
- import type { DataSourceProps } from "./data-source.js";
3
- import { DataSource } from "./data-source.js";
4
- export type VectorSourceProps = DataSourceProps;
2
+ export type VectorSourceProps = {};
5
3
  /**
6
4
  * VectorSource - data sources that allow features to be queried by (geospatial) extents
7
5
  * @note
8
6
  * - If geospatial, bounding box is expected to be in web mercator coordinates
9
7
  */
10
- export declare abstract class VectorSource<PropsT extends VectorSourceProps = VectorSourceProps> extends DataSource<PropsT> {
8
+ export declare abstract class VectorSource {
11
9
  static type: string;
12
10
  static testURL: (url: string) => boolean;
13
11
  abstract getSchema(): Promise<Schema>;
@@ -1 +1 @@
1
- {"version":3,"file":"vector-source.d.ts","sourceRoot":"","sources":["../../../src/lib/sources/vector-source.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,MAAM,EAAE,YAAY,EAAE,uBAAuB,EAAC,MAAM,oBAAoB,CAAC;AACtF,OAAO,KAAK,EAAC,eAAe,EAAC,yBAAsB;AACnD,OAAO,EAAC,UAAU,EAAC,yBAAsB;AAEzC,MAAM,MAAM,iBAAiB,GAAG,eAAe,CAAC;AAEhD;;;;GAIG;AACH,8BAAsB,YAAY,CAChC,MAAM,SAAS,iBAAiB,GAAG,iBAAiB,CACpD,SAAQ,UAAU,CAAC,MAAM,CAAC;IAC1B,MAAM,CAAC,IAAI,EAAE,MAAM,CAAc;IACjC,MAAM,CAAC,OAAO,QAAS,MAAM,KAAG,OAAO,CAAU;IAEjD,QAAQ,CAAC,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC;IACrC,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE;QAAC,sBAAsB,CAAC,EAAE,OAAO,CAAA;KAAC,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAChG,QAAQ,CAAC,WAAW,CAClB,UAAU,EAAE,qBAAqB,GAChC,OAAO,CAAC,YAAY,GAAG,uBAAuB,CAAC;CACnD;AAID;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B;;;OAGG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC9C,CAAC;AAEF,wDAAwD;AACxD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,yBAAyB;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,8FAA8F;IAC9F,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACzE,+BAA+B;IAC/B,MAAM,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAC9B,CAAC;AAEF,sEAAsE;AACtE,MAAM,MAAM,qBAAqB,GAAG;IAClC,uBAAuB;IACvB,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,sEAAsE;IACtE,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACxE,2DAA2D;IAC3D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,MAAM,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;CAC/B,CAAC"}
1
+ {"version":3,"file":"vector-source.d.ts","sourceRoot":"","sources":["../../../src/lib/sources/vector-source.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,MAAM,EAAE,YAAY,EAAE,uBAAuB,EAAC,MAAM,oBAAoB,CAAC;AAEtF,MAAM,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAEnC;;;;GAIG;AACH,8BAAsB,YAAY;IAChC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAc;IACjC,MAAM,CAAC,OAAO,QAAS,MAAM,KAAG,OAAO,CAAU;IAEjD,QAAQ,CAAC,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC;IACrC,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE;QAAC,sBAAsB,CAAC,EAAE,OAAO,CAAA;KAAC,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAChG,QAAQ,CAAC,WAAW,CAClB,UAAU,EAAE,qBAAqB,GAChC,OAAO,CAAC,YAAY,GAAG,uBAAuB,CAAC;CACnD;AAID;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B;;;OAGG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC9C,CAAC;AAEF,wDAAwD;AACxD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,yBAAyB;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,8FAA8F;IAC9F,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACzE,+BAA+B;IAC/B,MAAM,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAC9B,CAAC;AAEF,sEAAsE;AACtE,MAAM,MAAM,qBAAqB,GAAG;IAClC,uBAAuB;IACvB,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,sEAAsE;IACtE,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACxE,2DAA2D;IAC3D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,MAAM,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;CAC/B,CAAC"}
@@ -1,13 +1,12 @@
1
1
  // loaders.gl
2
2
  // SPDX-License-Identifier: MIT
3
3
  // Copyright (c) vis.gl contributors
4
- import { DataSource } from "./data-source.js";
5
4
  /**
6
5
  * VectorSource - data sources that allow features to be queried by (geospatial) extents
7
6
  * @note
8
7
  * - If geospatial, bounding box is expected to be in web mercator coordinates
9
8
  */
10
- export class VectorSource extends DataSource {
9
+ export class VectorSource {
11
10
  static type = 'template';
12
11
  static testURL = (url) => false;
13
12
  }
@@ -1,5 +1,5 @@
1
1
  import type { Schema, Feature, BinaryFeatureCollection } from '@loaders.gl/schema';
2
- import { TileSource, TileSourceProps, TileSourceMetadata, GetTileParameters } from "./tile-source.js";
2
+ import { TileSource, TileSourceProps, GetTileParameters } from "./tile-source.js";
3
3
  import type { GetTileDataParameters } from "./tile-source.js";
4
4
  export type VectorTile = unknown;
5
5
  export type VectorTileSourceProps = TileSourceProps;
@@ -7,7 +7,7 @@ export type VectorTileSourceProps = TileSourceProps;
7
7
  * VectorTileSource - data sources that allow data to be queried by (geospatial) tile
8
8
  * @note If geospatial, bounding box is expected to be in web mercator coordinates
9
9
  */
10
- export interface VectorTileSource<PropsT extends VectorTileSourceProps = VectorTileSourceProps, MetadataT extends TileSourceMetadata = TileSourceMetadata> extends TileSource<PropsT, MetadataT> {
10
+ export interface VectorTileSource extends TileSource {
11
11
  getSchema(): Promise<Schema>;
12
12
  getVectorTile(parameters: GetTileParameters): Promise<VectorTile | null>;
13
13
  getTileData(parameters: GetTileDataParameters): Promise<Feature[] | BinaryFeatureCollection | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"vector-tile-source.d.ts","sourceRoot":"","sources":["../../../src/lib/sources/vector-tile-source.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,MAAM,EAAE,OAAO,EAAE,uBAAuB,EAAC,MAAM,oBAAoB,CAAC;AACjF,OAAO,EAAC,UAAU,EAAE,eAAe,EAAE,kBAAkB,EAAE,iBAAiB,EAAC,yBAAsB;AACjG,OAAO,KAAK,EAAC,qBAAqB,EAAC,yBAAsB;AAEzD,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC;AAEjC,MAAM,MAAM,qBAAqB,GAAG,eAAe,CAAC;AAEpD;;;GAGG;AACH,MAAM,WAAW,gBAAgB,CAC/B,MAAM,SAAS,qBAAqB,GAAG,qBAAqB,EAC5D,SAAS,SAAS,kBAAkB,GAAG,kBAAkB,CACzD,SAAQ,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC;IACrC,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,aAAa,CAAC,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IACzE,WAAW,CACT,UAAU,EAAE,qBAAqB,GAChC,OAAO,CAAC,OAAO,EAAE,GAAG,uBAAuB,GAAG,IAAI,CAAC,CAAC;CACxD"}
1
+ {"version":3,"file":"vector-tile-source.d.ts","sourceRoot":"","sources":["../../../src/lib/sources/vector-tile-source.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,MAAM,EAAE,OAAO,EAAE,uBAAuB,EAAC,MAAM,oBAAoB,CAAC;AACjF,OAAO,EAAC,UAAU,EAAE,eAAe,EAAE,iBAAiB,EAAC,yBAAsB;AAC7E,OAAO,KAAK,EAAC,qBAAqB,EAAC,yBAAsB;AAEzD,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC;AAEjC,MAAM,MAAM,qBAAqB,GAAG,eAAe,CAAC;AAEpD;;;GAGG;AACH,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,aAAa,CAAC,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IACzE,WAAW,CACT,UAAU,EAAE,qBAAqB,GAChC,OAAO,CAAC,OAAO,EAAE,GAAG,uBAAuB,GAAG,IAAI,CAAC,CAAC;CACxD"}
@@ -1,3 +1,4 @@
1
+ import type { Format } from "./format-types.js";
1
2
  import { FetchLike, TransformBatches } from "./types.js";
2
3
  import { ReadableFile } from "./lib/files/file.js";
3
4
  /**
@@ -86,7 +87,7 @@ type PreloadOptions = {
86
87
  /**
87
88
  * A worker loader definition that can be used with `@loaders.gl/core` functions
88
89
  */
89
- export type Loader<DataT = any, BatchT = any, LoaderOptionsT = LoaderOptions> = {
90
+ export type Loader<DataT = any, BatchT = any, LoaderOptionsT = LoaderOptions> = Format & {
90
91
  /** The result type of this loader */
91
92
  dataType?: DataT;
92
93
  /** The batched result type of this loader */
@@ -95,16 +96,16 @@ export type Loader<DataT = any, BatchT = any, LoaderOptionsT = LoaderOptions> =
95
96
  options: LoaderOptionsT;
96
97
  /** Deprecated Options */
97
98
  deprecatedOptions?: Record<string, string | Record<string, string>>;
99
+ /** Version should be injected by build tools */
100
+ version: string;
101
+ /** A boolean, or a URL */
102
+ worker?: string | boolean;
98
103
  /** Human readable name */
99
104
  name: string;
100
105
  /** id should be the same as the field used in LoaderOptions */
101
106
  id: string;
102
107
  /** module is used to generate worker threads, need to be the module directory name */
103
108
  module: string;
104
- /** Version should be injected by build tools */
105
- version: string;
106
- /** A boolean, or a URL */
107
- worker?: string | boolean;
108
109
  /** Which category does this loader belong to */
109
110
  category?: string;
110
111
  /** File extensions that are potential matches with this loader. */
@@ -188,11 +189,11 @@ export type LoaderContext = {
188
189
  };
189
190
  type Preload = (url: string, options?: PreloadOptions) => any;
190
191
  /** Typescript helper to extract options type from a loader type */
191
- export type LoaderOptionsType<T = Loader> = T extends Loader<any, any, infer Options> ? Options : never;
192
+ export type LoaderOptionsType<T = Loader> = T extends Loader<unknown, unknown, infer Options> ? Options : never;
192
193
  /** Typescript helper to extract data type from a loader type */
193
- export type LoaderReturnType<T = Loader> = T extends Loader<infer Return, any, any> ? Return : never;
194
+ export type LoaderReturnType<T = Loader> = T extends Loader<infer Return, unknown, unknown> ? Return : never;
194
195
  /** Typescript helper to extract batch type from a loader type */
195
- export type LoaderBatchType<T = Loader> = T extends Loader<any, infer Batch, any> ? Batch : never;
196
+ export type LoaderBatchType<T = Loader> = T extends Loader<unknown, infer Batch, unknown> ? Batch : never;
196
197
  /** Typescript helper to extract options type from an array of loader types */
197
198
  export type LoaderArrayOptionsType<LoadersT extends Loader[] = Loader[]> = LoadersT[number]['options'];
198
199
  /** Typescript helper to extract data type from a loader type */
@@ -1 +1 @@
1
- {"version":3,"file":"loader-types.d.ts","sourceRoot":"","sources":["../src/loader-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader-types.d.ts","sourceRoot":"","sources":["../src/loader-types.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,16 @@
1
- import type { DataSource, DataSourceProps } from "./lib/sources/data-source.js";
1
+ import type { Format } from "./format-types.js";
2
+ import type { DataSource, DataSourceOptions } from "./lib/sources/data-source.js";
2
3
  /**
3
4
  * A `Source` contains metadata and a factory method for creating instances of a specific `DataSource`.
4
5
  * It allows a list of `Source` objects to be passed to methods
5
6
  * @example
6
7
  * `createDataSource(... , [MVTSource, PMTilesSource, ...])
7
8
  */
8
- export interface Source<DataSourceT extends DataSource = DataSource, DataSourcePropsT extends DataSourceProps = any> {
9
+ export interface Source<DataSourceT extends DataSource<unknown, DataSourceOptions> = DataSource<unknown, DataSourceOptions>> extends Format {
9
10
  /** Type of source created by this service */
10
- source?: DataSourceT;
11
- /** Type of props used when creating sources */
12
- props?: DataSourcePropsT;
11
+ dataSource?: DataSourceT;
12
+ /** Type of options used when creating sources */
13
+ options?: DataSourceT['optionsType'];
13
14
  /** Name of the service */
14
15
  name: string;
15
16
  id: string;
@@ -21,19 +22,30 @@ export interface Source<DataSourceT extends DataSource = DataSource, DataSourceP
21
22
  extensions: string[];
22
23
  /** MIME extensions that this service uses */
23
24
  mimeTypes: string[];
24
- /** Default options */
25
- options: DataSourcePropsT;
26
25
  /** Type string identifying this service, e.g. 'wms' */
27
26
  type: string;
28
27
  /** Can source be created from a URL */
29
28
  fromUrl: boolean;
30
29
  /** Can source be created from a Blob or File */
31
30
  fromBlob: boolean;
31
+ /** Default options */
32
+ defaultOptions: Omit<Required<{
33
+ [K in keyof DataSourceT['options']]: Required<DataSourceT['options'][K]>;
34
+ }>, 'core'>;
32
35
  /** Check if a URL can support this service */
33
36
  testURL: (url: string) => boolean;
34
37
  /** Test data */
35
38
  testData?: (data: Blob) => boolean;
36
39
  /** Create a source */
37
- createDataSource(data: string | Blob, props: DataSourcePropsT): DataSourceT;
40
+ createDataSource(data: string | Blob, options: Readonly<DataSourceT['optionsType']>): DataSourceT;
38
41
  }
42
+ /** Typescript helper to extract input data type from a source type */
43
+ export type SourcePropsType<SourceT extends Source> = Required<SourceT['options']>;
44
+ /** Typescript helper to extract the source options type from a source type */
45
+ export type SourceDataSourceType<SourceT extends Source> = SourceT['dataSource'];
46
+ /** Typescript helper to extract options type from an array of source types */
47
+ export type SourceArrayOptionsType<SourcesT extends Source[] = Source[]> = SourcesT[number]['options'] & DataSourceOptions;
48
+ /** Typescript helper to extract data type from a source type */
49
+ export type SourceArrayDataSourceType<SourcesT extends Source[] = Source[]> = SourcesT[number]['dataSource'];
50
+ /** Typescript helper to extract batch type from a source type */
39
51
  //# sourceMappingURL=source-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"source-types.d.ts","sourceRoot":"","sources":["../src/source-types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,UAAU,EAAE,eAAe,EAAC,qCAAkC;AAE3E;;;;;GAKG;AACH,MAAM,WAAW,MAAM,CACrB,WAAW,SAAS,UAAU,GAAG,UAAU,EAC3C,gBAAgB,SAAS,eAAe,GAAG,GAAG;IAE9C,6CAA6C;IAC7C,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,gBAAgB,CAAC;IAEzB,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,iEAAiE;IACjE,OAAO,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,sBAAsB;IACtB,OAAO,EAAE,gBAAgB,CAAC;IAE1B,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,gDAAgD;IAChD,QAAQ,EAAE,OAAO,CAAC;IAElB,8CAA8C;IAC9C,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IAClC,gBAAgB;IAChB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC;IACnC,uBAAuB;IACvB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,gBAAgB,GAAG,WAAW,CAAC;CAC7E"}
1
+ {"version":3,"file":"source-types.d.ts","sourceRoot":"","sources":["../src/source-types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,MAAM,EAAC,0BAAuB;AAC3C,OAAO,KAAK,EAAC,UAAU,EAAE,iBAAiB,EAAC,qCAAkC;AAE7E;;;;;GAKG;AACH,MAAM,WAAW,MAAM,CACrB,WAAW,SAAS,UAAU,CAAC,OAAO,EAAE,iBAAiB,CAAC,GAAG,UAAU,CACrE,OAAO,EACP,iBAAiB,CAClB,CACD,SAAQ,MAAM;IACd,6CAA6C;IAC7C,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,iDAAiD;IACjD,OAAO,CAAC,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IAErC,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,iEAAiE;IACjE,OAAO,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,EAAE,CAAC;IAEpB,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,gDAAgD;IAChD,QAAQ,EAAE,OAAO,CAAC;IAElB,sBAAsB;IACtB,cAAc,EAAE,IAAI,CAClB,QAAQ,CAAC;SAAE,CAAC,IAAI,MAAM,WAAW,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;KAAC,CAAC,EACpF,MAAM,CACP,CAAC;IAEF,8CAA8C;IAC9C,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IAClC,gBAAgB;IAChB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC;IACnC,uBAAuB;IACvB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,GAAG,WAAW,CAAC;CACnG;AAKD,sEAAsE;AACtE,MAAM,MAAM,eAAe,CAAC,OAAO,SAAS,MAAM,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;AAEnF,8EAA8E;AAC9E,MAAM,MAAM,oBAAoB,CAAC,OAAO,SAAS,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;AAEjF,8EAA8E;AAC9E,MAAM,MAAM,sBAAsB,CAAC,QAAQ,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,IACrE,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,GAAG,iBAAiB,CAAC;AAElD,gEAAgE;AAChE,MAAM,MAAM,yBAAyB,CAAC,QAAQ,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,IACxE,QAAQ,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;AACjC,iEAAiE"}
@@ -2,3 +2,4 @@
2
2
  // SPDX-License-Identifier: MIT
3
3
  // Copyright (c) vis.gl contributors
4
4
  export {};
5
+ /** Typescript helper to extract batch type from a source type */