@loaders.gl/services 5.0.0-alpha.7 → 5.0.0-alpha.8

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 (69) hide show
  1. package/README.md +7 -46
  2. package/dist/authentication.d.ts +22 -9
  3. package/dist/authentication.d.ts.map +1 -1
  4. package/dist/authentication.js +28 -11
  5. package/dist/authentication.js.map +1 -1
  6. package/dist/index.cjs +301 -23886
  7. package/dist/index.cjs.map +3 -3
  8. package/dist/index.d.ts +2 -31
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +1 -20
  11. package/dist/index.js.map +1 -1
  12. package/package.json +6 -16
  13. package/src/authentication.ts +31 -19
  14. package/src/index.ts +3 -84
  15. package/dist/arcgis/arcgis-capability-graph.d.ts +0 -48
  16. package/dist/arcgis/arcgis-capability-graph.d.ts.map +0 -1
  17. package/dist/arcgis/arcgis-capability-graph.js +0 -220
  18. package/dist/arcgis/arcgis-capability-graph.js.map +0 -1
  19. package/dist/arcgis/arcgis-feature-server-source-loader.d.ts +0 -94
  20. package/dist/arcgis/arcgis-feature-server-source-loader.d.ts.map +0 -1
  21. package/dist/arcgis/arcgis-feature-server-source-loader.js +0 -231
  22. package/dist/arcgis/arcgis-feature-server-source-loader.js.map +0 -1
  23. package/dist/arcgis/arcgis-image-server-source-loader.d.ts +0 -96
  24. package/dist/arcgis/arcgis-image-server-source-loader.d.ts.map +0 -1
  25. package/dist/arcgis/arcgis-image-server-source-loader.js +0 -143
  26. package/dist/arcgis/arcgis-image-server-source-loader.js.map +0 -1
  27. package/dist/arcgis/arcgis-image-tile-source-loader.d.ts +0 -71
  28. package/dist/arcgis/arcgis-image-tile-source-loader.d.ts.map +0 -1
  29. package/dist/arcgis/arcgis-image-tile-source-loader.js +0 -153
  30. package/dist/arcgis/arcgis-image-tile-source-loader.js.map +0 -1
  31. package/dist/arcgis/arcgis-map-tile-source-loader.d.ts +0 -106
  32. package/dist/arcgis/arcgis-map-tile-source-loader.d.ts.map +0 -1
  33. package/dist/arcgis/arcgis-map-tile-source-loader.js +0 -202
  34. package/dist/arcgis/arcgis-map-tile-source-loader.js.map +0 -1
  35. package/dist/arcgis/arcgis-scene-aggregation.d.ts +0 -34
  36. package/dist/arcgis/arcgis-scene-aggregation.d.ts.map +0 -1
  37. package/dist/arcgis/arcgis-scene-aggregation.js +0 -57
  38. package/dist/arcgis/arcgis-scene-aggregation.js.map +0 -1
  39. package/dist/arcgis/arcgis-scene-server-source-loader.d.ts +0 -112
  40. package/dist/arcgis/arcgis-scene-server-source-loader.d.ts.map +0 -1
  41. package/dist/arcgis/arcgis-scene-server-source-loader.js +0 -157
  42. package/dist/arcgis/arcgis-scene-server-source-loader.js.map +0 -1
  43. package/dist/arcgis/arcgis-server.d.ts +0 -15
  44. package/dist/arcgis/arcgis-server.d.ts.map +0 -1
  45. package/dist/arcgis/arcgis-server.js +0 -41
  46. package/dist/arcgis/arcgis-server.js.map +0 -1
  47. package/dist/arcgis/arcgis-url-utils.d.ts +0 -3
  48. package/dist/arcgis/arcgis-url-utils.d.ts.map +0 -1
  49. package/dist/arcgis/arcgis-url-utils.js +0 -23
  50. package/dist/arcgis/arcgis-url-utils.js.map +0 -1
  51. package/dist/arcgis/arcgis-vector-tile-server-source-loader.d.ts +0 -115
  52. package/dist/arcgis/arcgis-vector-tile-server-source-loader.d.ts.map +0 -1
  53. package/dist/arcgis/arcgis-vector-tile-server-source-loader.js +0 -156
  54. package/dist/arcgis/arcgis-vector-tile-server-source-loader.js.map +0 -1
  55. package/dist/service-registry.d.ts +0 -18
  56. package/dist/service-registry.d.ts.map +0 -1
  57. package/dist/service-registry.js +0 -29
  58. package/dist/service-registry.js.map +0 -1
  59. package/src/arcgis/arcgis-capability-graph.ts +0 -295
  60. package/src/arcgis/arcgis-feature-server-source-loader.ts +0 -346
  61. package/src/arcgis/arcgis-image-server-source-loader.ts +0 -242
  62. package/src/arcgis/arcgis-image-tile-source-loader.ts +0 -206
  63. package/src/arcgis/arcgis-map-tile-source-loader.ts +0 -286
  64. package/src/arcgis/arcgis-scene-aggregation.ts +0 -90
  65. package/src/arcgis/arcgis-scene-server-source-loader.ts +0 -258
  66. package/src/arcgis/arcgis-server.ts +0 -61
  67. package/src/arcgis/arcgis-url-utils.ts +0 -26
  68. package/src/arcgis/arcgis-vector-tile-server-source-loader.ts +0 -233
  69. package/src/service-registry.ts +0 -43
@@ -1,71 +0,0 @@
1
- import type { ImageType } from '@loaders.gl/images';
2
- import type { CoreAPI, DataSourceOptions, GetTileDataParameters, GetTileParameters, TileSource, TileSourceMetadata } from '@loaders.gl/loader-utils';
3
- import { DataSource } from '@loaders.gl/loader-utils';
4
- import type { LERCData } from '@loaders.gl/lerc';
5
- /** Options for the ArcGIS ImageServer tile source. */
6
- export type ArcGISImageTileSourceLoaderOptions = DataSourceOptions & {
7
- 'arcgis-image-server-tiles'?: {
8
- /** Tile size used for exportImage requests. */
9
- tileSize?: number;
10
- /** Optional service URL pool for simple request distribution. */
11
- urls?: string[];
12
- /** Additional exportImage parameters. */
13
- parameters?: Record<string, string | number | boolean>;
14
- /** Response format, using LERC for analytical raster tiles. */
15
- format?: 'png32' | 'lerc';
16
- };
17
- };
18
- /** A tile source that renders ArcGIS ImageServer exports as deck.gl tiles. */
19
- export declare class ArcGISImageTileSource extends DataSource<string, ArcGISImageTileSourceLoaderOptions> implements TileSource {
20
- /** MIME type represented by the tile response. */
21
- readonly mimeType: string;
22
- /** Cached ImageServer metadata. */
23
- private _metadata;
24
- /** In-flight metadata request shared by concurrent callers. */
25
- private _metadataPromise;
26
- /** Parameters applied to subsequent export requests. */
27
- private _runtimeParameters;
28
- /** Creates an ArcGIS ImageServer tile source. */
29
- constructor(url: string, options?: ArcGISImageTileSourceLoaderOptions, coreApi?: CoreAPI);
30
- /** Returns normalized ImageServer metadata. */
31
- getMetadata(): Promise<TileSourceMetadata>;
32
- /** Fetches one ImageServer export tile. */
33
- getTile(parameters: GetTileParameters, signal?: AbortSignal): Promise<ImageType | LERCData | null>;
34
- /** Fetches a tile using the deck.gl-compatible request shape. */
35
- getTileData(parameters: GetTileDataParameters): Promise<ImageType | LERCData | null>;
36
- /** Updates parameters applied to subsequent ImageServer export requests. */
37
- updateParameters(parameters: Record<string, string | number | boolean>): void;
38
- /** Builds an ImageServer exportImage URL for one web-mercator tile. */
39
- getTileURL(parameters: GetTileParameters, tileSize?: number): string;
40
- /** Fetches the ImageServer metadata document. */
41
- private _loadMetadata;
42
- /** Returns cached metadata and shares a single request among concurrent callers. */
43
- private _getMetadata;
44
- /** Selects a service endpoint for a tile using a stable URL-pool mapping. */
45
- private getServiceURL;
46
- /** Returns the response format after applying configured and runtime overrides. */
47
- private _getResponseFormat;
48
- }
49
- /** Source loader for ArcGIS ImageServer export tiles. */
50
- export declare const ArcGISImageTileSourceLoader: {
51
- readonly dataType: ArcGISImageTileSource;
52
- readonly batchType: never;
53
- readonly name: "ArcGIS ImageServer tiles";
54
- readonly id: "arcgis-image-server-tiles";
55
- readonly module: "services";
56
- readonly version: "0.0.0";
57
- readonly extensions: [];
58
- readonly mimeTypes: [];
59
- readonly type: "arcgis-image-server-tiles";
60
- readonly fromUrl: true;
61
- readonly fromBlob: false;
62
- readonly options: {
63
- readonly 'arcgis-image-server-tiles': {};
64
- };
65
- readonly defaultOptions: {
66
- readonly 'arcgis-image-server-tiles': {};
67
- };
68
- readonly testURL: (url: string) => boolean;
69
- readonly createDataSource: (url: string, options?: ArcGISImageTileSourceLoaderOptions, coreApi?: CoreAPI) => ArcGISImageTileSource;
70
- };
71
- //# sourceMappingURL=arcgis-image-tile-source-loader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"arcgis-image-tile-source-loader.d.ts","sourceRoot":"","sources":["../../src/arcgis/arcgis-image-tile-source-loader.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,oBAAoB,CAAC;AAElD,OAAO,KAAK,EACV,OAAO,EACP,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EAEjB,UAAU,EACV,kBAAkB,EACnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AACpD,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAG/C,sDAAsD;AACtD,MAAM,MAAM,kCAAkC,GAAG,iBAAiB,GAAG;IACnE,2BAA2B,CAAC,EAAE;QAC5B,+CAA+C;QAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,iEAAiE;QACjE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,yCAAyC;QACzC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;QACvD,+DAA+D;QAC/D,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;KAC3B,CAAC;CACH,CAAC;AAEF,8EAA8E;AAC9E,qBAAa,qBACX,SAAQ,UAAU,CAAC,MAAM,EAAE,kCAAkC,CAC7D,YAAW,UAAU;IAErB,kDAAkD;IAClD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,mCAAmC;IACnC,OAAO,CAAC,SAAS,CAAoB;IACrC,+DAA+D;IAC/D,OAAO,CAAC,gBAAgB,CAA6B;IACrD,wDAAwD;IACxD,OAAO,CAAC,kBAAkB,CAAiD;IAE3E,iDAAiD;gBACrC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,kCAAuC,EAAE,OAAO,CAAC,EAAE,OAAO;IAM5F,+CAA+C;IACzC,WAAW,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAuBhD,2CAA2C;IACrC,OAAO,CACX,UAAU,EAAE,iBAAiB,EAC7B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC;IAevC,iEAAiE;IAC3D,WAAW,CAAC,UAAU,EAAE,qBAAqB,GAAG,OAAO,CAAC,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC;IAI1F,4EAA4E;IAC5E,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,IAAI;IAI7E,uEAAuE;IACvE,UAAU,CAAC,UAAU,EAAE,iBAAiB,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM;IAuBpE,iDAAiD;YACnC,aAAa;IAU3B,oFAAoF;YACtE,YAAY;IAc1B,6EAA6E;IAC7E,OAAO,CAAC,aAAa;IAKrB,mFAAmF;IACnF,OAAO,CAAC,kBAAkB;CAK3B;AAED,yDAAyD;AACzD,eAAO,MAAM,2BAA2B;uBACT,qBAAqB;wBAC/B,KAAK;;;;;;;;;;;;;;;;4BAYT,MAAM,KAAG,OAAO;qCAExB,MAAM,YACF,kCAAkC,YACjC,OAAO;CAEmC,CAAC"}
@@ -1,153 +0,0 @@
1
- // loaders.gl
2
- // SPDX-License-Identifier: MIT
3
- // Copyright (c) vis.gl contributors
4
- import { ImageLoader } from '@loaders.gl/images';
5
- import { DataSource } from '@loaders.gl/loader-utils';
6
- import { LERCLoader } from '@loaders.gl/lerc';
7
- /** A tile source that renders ArcGIS ImageServer exports as deck.gl tiles. */
8
- export class ArcGISImageTileSource extends DataSource {
9
- /** MIME type represented by the tile response. */
10
- mimeType;
11
- /** Cached ImageServer metadata. */
12
- _metadata = null;
13
- /** In-flight metadata request shared by concurrent callers. */
14
- _metadataPromise = null;
15
- /** Parameters applied to subsequent export requests. */
16
- _runtimeParameters = {};
17
- /** Creates an ArcGIS ImageServer tile source. */
18
- constructor(url, options = {}, coreApi) {
19
- super(url.replace(/\/$/, ''), options, ArcGISImageTileSourceLoader.defaultOptions, coreApi);
20
- this.mimeType = this._getResponseFormat() === 'lerc' ? 'application/octet-stream' : 'image/png';
21
- this.getTileData = this.getTileData.bind(this);
22
- }
23
- /** Returns normalized ImageServer metadata. */
24
- async getMetadata() {
25
- const metadata = await this._getMetadata();
26
- const extent = metadata.fullExtent || metadata.extent;
27
- const spatialReference = metadata.spatialReference || extent?.spatialReference;
28
- return {
29
- name: metadata.name || metadata.serviceDescription || '',
30
- title: metadata.name || metadata.serviceDescription || '',
31
- abstract: metadata.description || metadata.serviceDescription || '',
32
- attributions: metadata.copyrightText ? [metadata.copyrightText] : undefined,
33
- boundingBox: extent
34
- ? [
35
- [extent.xmin, extent.ymin],
36
- [extent.xmax, extent.ymax]
37
- ]
38
- : undefined,
39
- layer: {
40
- name: metadata.name || '',
41
- srs: spatialReference?.wkid ? [`EPSG:${spatialReference.wkid}`] : [],
42
- layers: []
43
- }
44
- };
45
- }
46
- /** Fetches one ImageServer export tile. */
47
- async getTile(parameters, signal) {
48
- const response = await this.fetch(this.getTileURL(parameters), signal ? { signal } : undefined);
49
- if (!response.ok) {
50
- throw new Error(`ArcGIS ImageServer tile request failed: ${response.status} ${response.statusText}`);
51
- }
52
- const loader = this._getResponseFormat() === 'lerc' ? LERCLoader : ImageLoader;
53
- return (await this.coreApi.parse(await response.arrayBuffer(), loader, this.loadOptions));
54
- }
55
- /** Fetches a tile using the deck.gl-compatible request shape. */
56
- async getTileData(parameters) {
57
- return this.getTile(parameters.index, parameters.signal);
58
- }
59
- /** Updates parameters applied to subsequent ImageServer export requests. */
60
- updateParameters(parameters) {
61
- this._runtimeParameters = { ...this._runtimeParameters, ...parameters };
62
- }
63
- /** Builds an ImageServer exportImage URL for one web-mercator tile. */
64
- getTileURL(parameters, tileSize) {
65
- const options = this.options['arcgis-image-server-tiles'] || {};
66
- const resolvedTileSize = tileSize || options.tileSize || 256;
67
- const [west, south, east, north] = getWebMercatorTileBounds(parameters);
68
- const url = new URL(this.getServiceURL(parameters));
69
- url.pathname = `${url.pathname.replace(/\/$/, '')}/exportImage`;
70
- const requestParameters = {
71
- f: 'image',
72
- bbox: `${west},${south},${east},${north}`,
73
- bboxSR: 3857,
74
- imageSR: 3857,
75
- size: `${resolvedTileSize},${resolvedTileSize}`,
76
- format: this._getResponseFormat(),
77
- transparent: true,
78
- ...options.parameters,
79
- ...this._runtimeParameters
80
- };
81
- for (const [key, value] of Object.entries(requestParameters)) {
82
- url.searchParams.set(key, String(value));
83
- }
84
- return url.toString();
85
- }
86
- /** Fetches the ImageServer metadata document. */
87
- async _loadMetadata() {
88
- const url = new URL(this.url);
89
- url.searchParams.set('f', 'pjson');
90
- const response = await this.fetch(url.toString());
91
- if (!response.ok) {
92
- throw new Error(`ArcGIS ImageServer metadata request failed: ${response.status}`);
93
- }
94
- return response.json();
95
- }
96
- /** Returns cached metadata and shares a single request among concurrent callers. */
97
- async _getMetadata() {
98
- if (this._metadata)
99
- return this._metadata;
100
- if (!this._metadataPromise) {
101
- this._metadataPromise = this._loadMetadata();
102
- }
103
- try {
104
- const metadata = await this._metadataPromise;
105
- this._metadata = metadata;
106
- return metadata;
107
- }
108
- finally {
109
- this._metadataPromise = null;
110
- }
111
- }
112
- /** Selects a service endpoint for a tile using a stable URL-pool mapping. */
113
- getServiceURL(parameters) {
114
- const urls = this.options['arcgis-image-server-tiles']?.urls;
115
- return urls?.length ? urls[(parameters.x + parameters.y) % urls.length] : this.url;
116
- }
117
- /** Returns the response format after applying configured and runtime overrides. */
118
- _getResponseFormat() {
119
- const options = this.options['arcgis-image-server-tiles'] || {};
120
- const format = this._runtimeParameters.format || options.parameters?.format || options.format;
121
- return format === 'lerc' ? 'lerc' : 'png32';
122
- }
123
- }
124
- /** Source loader for ArcGIS ImageServer export tiles. */
125
- export const ArcGISImageTileSourceLoader = {
126
- dataType: null,
127
- batchType: null,
128
- name: 'ArcGIS ImageServer tiles',
129
- id: 'arcgis-image-server-tiles',
130
- module: 'services',
131
- version: '0.0.0',
132
- extensions: [],
133
- mimeTypes: [],
134
- type: 'arcgis-image-server-tiles',
135
- fromUrl: true,
136
- fromBlob: false,
137
- options: { 'arcgis-image-server-tiles': {} },
138
- defaultOptions: { 'arcgis-image-server-tiles': {} },
139
- testURL: (url) => /imageserver/i.test(url),
140
- createDataSource: (url, options = {}, coreApi) => new ArcGISImageTileSource(url, options, coreApi)
141
- };
142
- /** Calculates the Web Mercator extent represented by an XYZ tile. */
143
- function getWebMercatorTileBounds(parameters) {
144
- const worldSize = 20037508.342789244;
145
- const tileCount = 2 ** parameters.z;
146
- const tileSize = (worldSize * 2) / tileCount;
147
- const west = -worldSize + parameters.x * tileSize;
148
- const east = west + tileSize;
149
- const north = worldSize - parameters.y * tileSize;
150
- const south = north - tileSize;
151
- return [west, south, east, north];
152
- }
153
- //# sourceMappingURL=arcgis-image-tile-source-loader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"arcgis-image-tile-source-loader.js","sourceRoot":"","sources":["../../src/arcgis/arcgis-image-tile-source-loader.ts"],"names":[],"mappings":"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"}
@@ -1,106 +0,0 @@
1
- import type { ImageType } from '@loaders.gl/images';
2
- import type { CoreAPI, DataSourceOptions, GetTileDataParameters, GetTileParameters, TileSource, TileSourceMetadata } from '@loaders.gl/loader-utils';
3
- import { DataSource } from '@loaders.gl/loader-utils';
4
- /** Options for an ArcGIS cached MapServer tile source. */
5
- export type ArcGISMapTileSourceLoaderOptions = DataSourceOptions & {
6
- 'arcgis-map-server'?: {
7
- /** Select cached tiles, dynamic export tiles, or automatic metadata-based selection. */
8
- mode?: 'cached' | 'dynamic' | 'auto';
9
- /** Tile size used for dynamic export requests. */
10
- tileSize?: number;
11
- /** Optional custom tile URL template. */
12
- urlTemplate?: string;
13
- /** Optional service URL pool for simple request distribution. */
14
- urls?: string[];
15
- /** Additional query parameters sent to the metadata endpoint. */
16
- parameters?: Record<string, string>;
17
- /** Metadata document supplied by the application. */
18
- metadata?: ArcGISMapServerMetadata;
19
- /** Default parameters forwarded to MapServer `export` requests. */
20
- exportParameters?: Record<string, string | number | boolean>;
21
- };
22
- };
23
- /** Relevant normalized fields from an ArcGIS MapServer metadata document. */
24
- export type ArcGISMapServerMetadata = {
25
- name?: string;
26
- description?: string;
27
- serviceDescription?: string;
28
- copyrightText?: string;
29
- fullExtent?: {
30
- xmin: number;
31
- ymin: number;
32
- xmax: number;
33
- ymax: number;
34
- spatialReference?: unknown;
35
- };
36
- spatialReference?: unknown;
37
- tileInfo?: {
38
- lods?: {
39
- level: number;
40
- }[];
41
- rows?: number;
42
- cols?: number;
43
- format?: string;
44
- spatialReference?: unknown;
45
- origin?: {
46
- x: number;
47
- y: number;
48
- };
49
- };
50
- };
51
- /** Parameters that can be changed between ArcGIS map tile requests. */
52
- export type ArcGISMapTileParameters = Record<string, string | number | boolean>;
53
- /** ArcGIS MapServer source for cached `/tile/{z}/{y}/{x}` image tiles. */
54
- export declare class ArcGISMapTileSource extends DataSource<string, ArcGISMapTileSourceLoaderOptions> implements TileSource {
55
- /** MIME type rendered by the generic deck.gl tile adapter. */
56
- readonly mimeType = "image/png";
57
- /** Cached service metadata. */
58
- private _metadata;
59
- /** In-flight metadata request shared by concurrent callers. */
60
- private _metadataPromise;
61
- /** Parameters applied to subsequent dynamic exports. */
62
- private _runtimeParameters;
63
- /** Creates an ArcGIS MapServer tile source. */
64
- constructor(url: string, options?: ArcGISMapTileSourceLoaderOptions, coreApi?: CoreAPI);
65
- /** Loads and normalizes ArcGIS service metadata. */
66
- getMetadata(): Promise<TileSourceMetadata>;
67
- /** Fetches and decodes one cached ArcGIS tile. */
68
- getTile(parameters: GetTileParameters, signal?: AbortSignal): Promise<ImageType | null>;
69
- /** Fetches a tile using the deck.gl-compatible request shape. */
70
- getTileData(parameters: GetTileDataParameters): Promise<ImageType | null>;
71
- /** Builds the standard ArcGIS cached tile URL. */
72
- getTileURL(parameters: GetTileParameters): string;
73
- /** Updates parameters applied to subsequent dynamic MapServer export requests. */
74
- updateParameters(parameters: ArcGISMapTileParameters): void;
75
- /** Builds a dynamic MapServer `export` request for one web-mercator tile. */
76
- getExportTileURL(parameters: GetTileParameters, tileSize?: number): string;
77
- /** Fetches the MapServer metadata document and applies configured parameters. */
78
- private _loadMetadata;
79
- /** Returns cached metadata and shares a single request among concurrent callers. */
80
- private _getMetadata;
81
- /** Selects a service endpoint for a tile using a stable URL-pool mapping. */
82
- private getServiceURL;
83
- }
84
- /** Source loader for ArcGIS cached MapServer tiles. */
85
- export declare const ArcGISMapTileSourceLoader: {
86
- readonly dataType: ArcGISMapTileSource;
87
- readonly batchType: never;
88
- readonly name: "ArcGIS MapServer tiles";
89
- readonly id: "arcgis-map-server";
90
- readonly module: "services";
91
- readonly version: "0.0.0";
92
- readonly extensions: [];
93
- readonly mimeTypes: [];
94
- readonly type: "arcgis-map-server";
95
- readonly fromUrl: true;
96
- readonly fromBlob: false;
97
- readonly options: {
98
- readonly 'arcgis-map-server': {};
99
- };
100
- readonly defaultOptions: {
101
- readonly 'arcgis-map-server': {};
102
- };
103
- readonly testURL: (url: string) => boolean;
104
- readonly createDataSource: (url: string, options?: ArcGISMapTileSourceLoaderOptions, coreApi?: CoreAPI) => ArcGISMapTileSource;
105
- };
106
- //# sourceMappingURL=arcgis-map-tile-source-loader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"arcgis-map-tile-source-loader.d.ts","sourceRoot":"","sources":["../../src/arcgis/arcgis-map-tile-source-loader.ts"],"names":[],"mappings":"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"}
@@ -1,202 +0,0 @@
1
- // loaders.gl
2
- // SPDX-License-Identifier: MIT
3
- // Copyright (c) vis.gl contributors
4
- import { ImageLoader } from '@loaders.gl/images';
5
- import { DataSource } from '@loaders.gl/loader-utils';
6
- /** ArcGIS MapServer source for cached `/tile/{z}/{y}/{x}` image tiles. */
7
- export class ArcGISMapTileSource extends DataSource {
8
- /** MIME type rendered by the generic deck.gl tile adapter. */
9
- mimeType = 'image/png';
10
- /** Cached service metadata. */
11
- _metadata = null;
12
- /** In-flight metadata request shared by concurrent callers. */
13
- _metadataPromise = null;
14
- /** Parameters applied to subsequent dynamic exports. */
15
- _runtimeParameters = {};
16
- /** Creates an ArcGIS MapServer tile source. */
17
- constructor(url, options = {}, coreApi) {
18
- super(url.replace(/\/$/, ''), options, ArcGISMapTileSourceLoader.defaultOptions, coreApi);
19
- this.getTileData = this.getTileData.bind(this);
20
- }
21
- /** Loads and normalizes ArcGIS service metadata. */
22
- async getMetadata() {
23
- const metadata = await this._getMetadata();
24
- const extent = metadata.fullExtent;
25
- const spatialReference = metadata.spatialReference || extent?.spatialReference;
26
- const spatialReferenceWkid = spatialReference?.wkid;
27
- return {
28
- name: metadata.name || '',
29
- title: metadata.name || '',
30
- abstract: metadata.description || metadata.serviceDescription || '',
31
- attributions: metadata.copyrightText ? [metadata.copyrightText] : undefined,
32
- minZoom: 0,
33
- maxZoom: metadata.tileInfo?.lods?.length
34
- ? Math.max(...metadata.tileInfo.lods.map(lod => lod.level))
35
- : undefined,
36
- boundingBox: extent
37
- ? [
38
- [extent.xmin, extent.ymin],
39
- [extent.xmax, extent.ymax]
40
- ]
41
- : undefined,
42
- layer: {
43
- name: metadata.name || '',
44
- srs: spatialReferenceWkid ? [`EPSG:${spatialReferenceWkid}`] : [],
45
- layers: []
46
- },
47
- tileGrid: metadata.tileInfo
48
- ? {
49
- crs: metadata.tileInfo.spatialReference?.wkid
50
- ? `EPSG:${metadata.tileInfo.spatialReference.wkid}`
51
- : undefined,
52
- tileSize: metadata.tileInfo.rows && metadata.tileInfo.cols
53
- ? [metadata.tileInfo.cols, metadata.tileInfo.rows]
54
- : undefined,
55
- origin: metadata.tileInfo.origin
56
- ? [metadata.tileInfo.origin.x, metadata.tileInfo.origin.y]
57
- : undefined,
58
- matrixIds: metadata.tileInfo.lods?.map(lod => String(lod.level))
59
- }
60
- : undefined
61
- };
62
- }
63
- /** Fetches and decodes one cached ArcGIS tile. */
64
- async getTile(parameters, signal) {
65
- const options = this.options['arcgis-map-server'] || {};
66
- const mode = options.mode || 'auto';
67
- const metadata = mode === 'auto' ? await this._getMetadata() : null;
68
- const useCachedTiles = mode === 'cached' || (mode === 'auto' && isCompatibleCache(metadata));
69
- const tileURL = useCachedTiles
70
- ? this.getTileURL(parameters)
71
- : this.getExportTileURL(parameters, options.tileSize || 256);
72
- const response = await this.fetch(tileURL, signal ? { signal } : undefined);
73
- if (!response.ok) {
74
- throw new Error(`ArcGIS MapServer tile request failed: ${response.status} ${response.statusText}`);
75
- }
76
- return (await this.coreApi.parse(await response.arrayBuffer(), ImageLoader, this.loadOptions));
77
- }
78
- /** Fetches a tile using the deck.gl-compatible request shape. */
79
- async getTileData(parameters) {
80
- return this.getTile(parameters.index, parameters.signal);
81
- }
82
- /** Builds the standard ArcGIS cached tile URL. */
83
- getTileURL(parameters) {
84
- const template = this.options['arcgis-map-server']?.urlTemplate;
85
- if (template) {
86
- const templateURL = new URL(template
87
- .replaceAll('{z}', String(parameters.z))
88
- .replaceAll('{y}', String(parameters.y))
89
- .replaceAll('{x}', String(parameters.x)));
90
- return templateURL.toString();
91
- }
92
- const url = new URL(this.getServiceURL(parameters));
93
- url.pathname = `${url.pathname.replace(/\/$/, '')}/tile/${parameters.z}/${parameters.y}/${parameters.x}`;
94
- return url.toString();
95
- }
96
- /** Updates parameters applied to subsequent dynamic MapServer export requests. */
97
- updateParameters(parameters) {
98
- this._runtimeParameters = { ...this._runtimeParameters, ...parameters };
99
- }
100
- /** Builds a dynamic MapServer `export` request for one web-mercator tile. */
101
- getExportTileURL(parameters, tileSize) {
102
- const options = this.options['arcgis-map-server'] || {};
103
- const resolvedTileSize = tileSize || options.tileSize || 256;
104
- const [west, south, east, north] = getWebMercatorTileBounds(parameters);
105
- const url = new URL(this.getServiceURL(parameters));
106
- url.pathname = `${url.pathname.replace(/\/$/, '')}/export`;
107
- const searchParameters = {
108
- f: 'image',
109
- bbox: `${west},${south},${east},${north}`,
110
- bboxSR: 3857,
111
- imageSR: 3857,
112
- size: `${resolvedTileSize},${resolvedTileSize}`,
113
- format: 'png32',
114
- transparent: true,
115
- ...options.exportParameters,
116
- ...this._runtimeParameters
117
- };
118
- for (const [key, value] of Object.entries(searchParameters)) {
119
- url.searchParams.set(key, String(value));
120
- }
121
- return url.toString();
122
- }
123
- /** Fetches the MapServer metadata document and applies configured parameters. */
124
- async _loadMetadata() {
125
- const configuredMetadata = this.options['arcgis-map-server']?.metadata;
126
- if (configuredMetadata)
127
- return configuredMetadata;
128
- const url = new URL(this.url);
129
- url.searchParams.set('f', 'pjson');
130
- for (const [key, value] of Object.entries(this.options['arcgis-map-server']?.parameters || {})) {
131
- url.searchParams.set(key, value);
132
- }
133
- const response = await this.fetch(url.toString());
134
- if (!response.ok) {
135
- throw new Error(`ArcGIS MapServer metadata request failed: ${response.status} ${response.statusText}`);
136
- }
137
- return response.json();
138
- }
139
- /** Returns cached metadata and shares a single request among concurrent callers. */
140
- async _getMetadata() {
141
- if (this._metadata)
142
- return this._metadata;
143
- if (!this._metadataPromise) {
144
- this._metadataPromise = this._loadMetadata();
145
- }
146
- try {
147
- const metadata = await this._metadataPromise;
148
- this._metadata = metadata;
149
- return metadata;
150
- }
151
- finally {
152
- this._metadataPromise = null;
153
- }
154
- }
155
- /** Selects a service endpoint for a tile using a stable URL-pool mapping. */
156
- getServiceURL(parameters) {
157
- const urls = this.options['arcgis-map-server']?.urls;
158
- return urls?.length ? urls[(parameters.x + parameters.y) % urls.length] : this.url;
159
- }
160
- }
161
- function isCompatibleCache(metadata) {
162
- const tileInfo = metadata?.tileInfo;
163
- if (!tileInfo || tileInfo.rows !== 256 || tileInfo.cols !== 256)
164
- return false;
165
- const spatialReference = tileInfo.spatialReference || metadata?.spatialReference;
166
- const wkid = spatialReference?.wkid;
167
- if (wkid !== 3857 && wkid !== 102100 && wkid !== 102113)
168
- return false;
169
- const origin = tileInfo.origin;
170
- return (!origin ||
171
- (Math.abs(origin.x + 20037508.342789244) < 1 && Math.abs(origin.y - 20037508.342789244) < 1));
172
- }
173
- /** Calculates the Web Mercator extent represented by an XYZ tile. */
174
- function getWebMercatorTileBounds(parameters) {
175
- const worldSize = 20037508.342789244;
176
- const tileCount = 2 ** parameters.z;
177
- const tileSize = (worldSize * 2) / tileCount;
178
- const west = -worldSize + parameters.x * tileSize;
179
- const east = west + tileSize;
180
- const north = worldSize - parameters.y * tileSize;
181
- const south = north - tileSize;
182
- return [west, south, east, north];
183
- }
184
- /** Source loader for ArcGIS cached MapServer tiles. */
185
- export const ArcGISMapTileSourceLoader = {
186
- dataType: null,
187
- batchType: null,
188
- name: 'ArcGIS MapServer tiles',
189
- id: 'arcgis-map-server',
190
- module: 'services',
191
- version: '0.0.0',
192
- extensions: [],
193
- mimeTypes: [],
194
- type: 'arcgis-map-server',
195
- fromUrl: true,
196
- fromBlob: false,
197
- options: { 'arcgis-map-server': {} },
198
- defaultOptions: { 'arcgis-map-server': {} },
199
- testURL: (url) => /mapserver/i.test(url) && !/imageserver|featureserver/i.test(url),
200
- createDataSource: (url, options = {}, coreApi) => new ArcGISMapTileSource(url, options, coreApi)
201
- };
202
- //# sourceMappingURL=arcgis-map-tile-source-loader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"arcgis-map-tile-source-loader.js","sourceRoot":"","sources":["../../src/arcgis/arcgis-map-tile-source-loader.ts"],"names":[],"mappings":"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"}
@@ -1,34 +0,0 @@
1
- /** Aggregation operation supported by the SceneServer client helper. */
2
- export type ArcGISSceneAggregationOperation = 'count' | 'sum' | 'min' | 'max' | 'average';
3
- /** A single aggregation specification. */
4
- export type ArcGISSceneAggregationSpec = {
5
- /** Output field name. */
6
- name: string;
7
- /** Input property used by numeric operations. */
8
- field?: string;
9
- /** Operation to apply. */
10
- operation: ArcGISSceneAggregationOperation;
11
- };
12
- /** Options for deterministic client-side feature aggregation. */
13
- export type ArcGISSceneAggregationOptions = {
14
- /** Features represented as ArcGIS feature objects or plain attribute records. */
15
- features: unknown[];
16
- /** Optional property used to create groups. */
17
- groupBy?: string;
18
- /** Aggregations to compute for each group. */
19
- aggregations: ArcGISSceneAggregationSpec[];
20
- };
21
- /** Result of one group in a client-side aggregation. */
22
- export type ArcGISSceneAggregationGroup = {
23
- /** Group key, or `undefined` when no grouping was requested. */
24
- group: unknown;
25
- /** Aggregated values keyed by specification name. */
26
- values: Record<string, number>;
27
- };
28
- /**
29
- * Aggregates SceneServer features without evaluating renderer or Arcade expressions.
30
- * Missing and non-numeric values are ignored by numeric operations; `count` counts
31
- * records regardless of field presence.
32
- */
33
- export declare function aggregateArcGISSceneFeatures(options: ArcGISSceneAggregationOptions): ArcGISSceneAggregationGroup[];
34
- //# sourceMappingURL=arcgis-scene-aggregation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"arcgis-scene-aggregation.d.ts","sourceRoot":"","sources":["../../src/arcgis/arcgis-scene-aggregation.ts"],"names":[],"mappings":"AAIA,wEAAwE;AACxE,MAAM,MAAM,+BAA+B,GAAG,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,SAAS,CAAC;AAE1F,0CAA0C;AAC1C,MAAM,MAAM,0BAA0B,GAAG;IACvC,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0BAA0B;IAC1B,SAAS,EAAE,+BAA+B,CAAC;CAC5C,CAAC;AAEF,iEAAiE;AACjE,MAAM,MAAM,6BAA6B,GAAG;IAC1C,iFAAiF;IACjF,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,YAAY,EAAE,0BAA0B,EAAE,CAAC;CAC5C,CAAC;AAEF,wDAAwD;AACxD,MAAM,MAAM,2BAA2B,GAAG;IACxC,gEAAgE;IAChE,KAAK,EAAE,OAAO,CAAC;IACf,qDAAqD;IACrD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,6BAA6B,GACrC,2BAA2B,EAAE,CAgB/B"}