@basemaps/lambda-tiler 6.33.0 → 6.35.0

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 (156) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/build/__tests__/config.data.d.ts +2 -1
  3. package/build/__tests__/config.data.d.ts.map +1 -1
  4. package/build/__tests__/config.data.js +14 -1
  5. package/build/__tests__/config.data.js.map +1 -1
  6. package/build/__tests__/tile.style.json.test.js +17 -3
  7. package/build/__tests__/tile.style.json.test.js.map +1 -1
  8. package/build/__tests__/wmts.capability.test.js +17 -0
  9. package/build/__tests__/wmts.capability.test.js.map +1 -1
  10. package/build/__tests__/xyz.util.d.ts +1 -1
  11. package/build/__tests__/xyz.util.d.ts.map +1 -1
  12. package/build/__tests__/xyz.util.js +2 -2
  13. package/build/__tests__/xyz.util.js.map +1 -1
  14. package/build/arcgis/__tests__/arcgis.style.json.test.d.ts +2 -0
  15. package/build/arcgis/__tests__/arcgis.style.json.test.d.ts.map +1 -0
  16. package/build/arcgis/__tests__/arcgis.style.json.test.js +131 -0
  17. package/build/arcgis/__tests__/arcgis.style.json.test.js.map +1 -0
  18. package/build/arcgis/__tests__/vector.tiler.server.test.d.ts +2 -0
  19. package/build/arcgis/__tests__/vector.tiler.server.test.d.ts.map +1 -0
  20. package/build/arcgis/__tests__/vector.tiler.server.test.js +54 -0
  21. package/build/arcgis/__tests__/vector.tiler.server.test.js.map +1 -0
  22. package/build/arcgis/arcgis.info.d.ts +3 -0
  23. package/build/arcgis/arcgis.info.d.ts.map +1 -0
  24. package/build/arcgis/arcgis.info.js +25 -0
  25. package/build/arcgis/arcgis.info.js.map +1 -0
  26. package/build/arcgis/arcgis.style.json.d.ts +9 -0
  27. package/build/arcgis/arcgis.style.json.d.ts.map +1 -0
  28. package/build/arcgis/arcgis.style.json.js +75 -0
  29. package/build/arcgis/arcgis.style.json.js.map +1 -0
  30. package/build/arcgis/vector.tile.server.d.ts +8 -0
  31. package/build/arcgis/vector.tile.server.d.ts.map +1 -0
  32. package/build/arcgis/vector.tile.server.js +73 -0
  33. package/build/arcgis/vector.tile.server.js.map +1 -0
  34. package/build/index.d.ts +1 -3
  35. package/build/index.d.ts.map +1 -1
  36. package/build/index.js +15 -4
  37. package/build/index.js.map +1 -1
  38. package/build/routes/__tests__/attribution.test.js +3 -2
  39. package/build/routes/__tests__/attribution.test.js.map +1 -1
  40. package/build/routes/__tests__/fonts.test.js +46 -29
  41. package/build/routes/__tests__/fonts.test.js.map +1 -1
  42. package/build/routes/__tests__/health.test.js +4 -2
  43. package/build/routes/__tests__/health.test.js.map +1 -1
  44. package/build/routes/__tests__/sprites.test.js +7 -2
  45. package/build/routes/__tests__/sprites.test.js.map +1 -1
  46. package/build/routes/__tests__/tile.json.test.js +24 -2
  47. package/build/routes/__tests__/tile.json.test.js.map +1 -1
  48. package/build/routes/__tests__/tile.style.json.test.js +58 -7
  49. package/build/routes/__tests__/tile.style.json.test.js.map +1 -1
  50. package/build/routes/__tests__/wmts.test.js +17 -14
  51. package/build/routes/__tests__/wmts.test.js.map +1 -1
  52. package/build/routes/__tests__/xyz.test.js +4 -2
  53. package/build/routes/__tests__/xyz.test.js.map +1 -1
  54. package/build/routes/attribution.d.ts.map +1 -1
  55. package/build/routes/attribution.js +20 -10
  56. package/build/routes/attribution.js.map +1 -1
  57. package/build/routes/config.d.ts +22 -0
  58. package/build/routes/config.d.ts.map +1 -0
  59. package/build/routes/config.js +63 -0
  60. package/build/routes/config.js.map +1 -0
  61. package/build/routes/fonts.d.ts +0 -2
  62. package/build/routes/fonts.d.ts.map +1 -1
  63. package/build/routes/fonts.js +3 -66
  64. package/build/routes/fonts.js.map +1 -1
  65. package/build/routes/health.d.ts.map +1 -1
  66. package/build/routes/health.js +3 -2
  67. package/build/routes/health.js.map +1 -1
  68. package/build/routes/imagery.d.ts.map +1 -1
  69. package/build/routes/imagery.js +3 -2
  70. package/build/routes/imagery.js.map +1 -1
  71. package/build/routes/sprites.d.ts.map +1 -1
  72. package/build/routes/sprites.js +3 -29
  73. package/build/routes/sprites.js.map +1 -1
  74. package/build/routes/tile.json.d.ts.map +1 -1
  75. package/build/routes/tile.json.js +7 -4
  76. package/build/routes/tile.json.js.map +1 -1
  77. package/build/routes/tile.style.json.d.ts +4 -3
  78. package/build/routes/tile.style.json.d.ts.map +1 -1
  79. package/build/routes/tile.style.json.js +53 -12
  80. package/build/routes/tile.style.json.js.map +1 -1
  81. package/build/routes/tile.wmts.d.ts.map +1 -1
  82. package/build/routes/tile.wmts.js +7 -4
  83. package/build/routes/tile.wmts.js.map +1 -1
  84. package/build/routes/tile.xyz.d.ts.map +1 -1
  85. package/build/routes/tile.xyz.js +4 -2
  86. package/build/routes/tile.xyz.js.map +1 -1
  87. package/build/routes/tile.xyz.raster.d.ts.map +1 -1
  88. package/build/routes/tile.xyz.raster.js +4 -2
  89. package/build/routes/tile.xyz.raster.js.map +1 -1
  90. package/build/util/__test__/config.loader.test.d.ts +2 -0
  91. package/build/util/__test__/config.loader.test.d.ts.map +1 -0
  92. package/build/util/__test__/config.loader.test.js +79 -0
  93. package/build/util/__test__/config.loader.test.js.map +1 -0
  94. package/build/util/assets.provider.d.ts +24 -0
  95. package/build/util/assets.provider.d.ts.map +1 -0
  96. package/build/util/assets.provider.js +69 -0
  97. package/build/util/assets.provider.js.map +1 -0
  98. package/build/util/config.cache.d.ts +16 -0
  99. package/build/util/config.cache.d.ts.map +1 -0
  100. package/build/util/config.cache.js +40 -0
  101. package/build/util/config.cache.js.map +1 -0
  102. package/build/util/config.loader.d.ts +10 -0
  103. package/build/util/config.loader.d.ts.map +1 -0
  104. package/build/util/config.loader.js +47 -0
  105. package/build/util/config.loader.js.map +1 -0
  106. package/build/util/response.d.ts +2 -1
  107. package/build/util/response.d.ts.map +1 -1
  108. package/build/util/response.js +1 -0
  109. package/build/util/response.js.map +1 -1
  110. package/build/wmts.capability.d.ts +3 -1
  111. package/build/wmts.capability.d.ts.map +1 -1
  112. package/build/wmts.capability.js +5 -15
  113. package/build/wmts.capability.js.map +1 -1
  114. package/dist/index.js +68 -68
  115. package/dist/node_modules/.package-lock.json +4 -4
  116. package/dist/node_modules/node-abi/abi_registry.json +8 -1
  117. package/dist/node_modules/node-abi/package.json +1 -1
  118. package/dist/package-lock.json +8 -8
  119. package/dist/package.json +1 -1
  120. package/package.json +8 -9
  121. package/src/__tests__/config.data.ts +25 -1
  122. package/src/__tests__/tile.style.json.test.ts +19 -3
  123. package/src/__tests__/wmts.capability.test.ts +21 -0
  124. package/src/__tests__/xyz.util.ts +7 -2
  125. package/src/arcgis/__tests__/arcgis.style.json.test.ts +157 -0
  126. package/src/arcgis/__tests__/vector.tiler.server.test.ts +70 -0
  127. package/src/arcgis/arcgis.info.ts +26 -0
  128. package/src/arcgis/arcgis.style.json.ts +83 -0
  129. package/src/arcgis/vector.tile.server.ts +81 -0
  130. package/src/index.ts +18 -5
  131. package/src/routes/__tests__/attribution.test.ts +4 -2
  132. package/src/routes/__tests__/fonts.test.ts +54 -32
  133. package/src/routes/__tests__/health.test.ts +4 -2
  134. package/src/routes/__tests__/sprites.test.ts +7 -3
  135. package/src/routes/__tests__/tile.json.test.ts +30 -2
  136. package/src/routes/__tests__/tile.style.json.test.ts +68 -9
  137. package/src/routes/__tests__/wmts.test.ts +23 -17
  138. package/src/routes/__tests__/xyz.test.ts +4 -2
  139. package/src/routes/attribution.ts +23 -8
  140. package/src/routes/config.ts +83 -0
  141. package/src/routes/fonts.ts +4 -64
  142. package/src/routes/health.ts +4 -2
  143. package/src/routes/imagery.ts +3 -2
  144. package/src/routes/sprites.ts +4 -27
  145. package/src/routes/tile.json.ts +10 -4
  146. package/src/routes/tile.style.json.ts +58 -12
  147. package/src/routes/tile.wmts.ts +9 -4
  148. package/src/routes/tile.xyz.raster.ts +4 -2
  149. package/src/routes/tile.xyz.ts +5 -2
  150. package/src/util/__test__/config.loader.test.ts +116 -0
  151. package/src/util/assets.provider.ts +66 -0
  152. package/src/util/config.cache.ts +44 -0
  153. package/src/util/config.loader.ts +50 -0
  154. package/src/util/response.ts +3 -1
  155. package/src/wmts.capability.ts +9 -15
  156. package/tsconfig.tsbuildinfo +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tile.xyz.raster.js","sourceRoot":"","sources":["../../src/routes/tile.xyz.raster.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tile.xyz.raster.js","sourceRoot":"","sources":["../../src/routes/tile.xyz.raster.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=config.loader.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.loader.test.d.ts","sourceRoot":"","sources":["../../../src/util/__test__/config.loader.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,79 @@
1
+ import { base58, ConfigProviderMemory } from '@basemaps/config';
2
+ import { fsa } from '@basemaps/shared';
3
+ import { LambdaHttpResponse } from '@linzjs/lambda';
4
+ import o from 'ospec';
5
+ import { createSandbox } from 'sinon';
6
+ import { FsMemory } from '../../routes/__tests__/memory.fs.js';
7
+ import { FakeData } from '../../__tests__/config.data.js';
8
+ import { Api, mockRequest, mockUrlRequest } from '../../__tests__/xyz.util.js';
9
+ import { CachedConfig } from '../config.cache.js';
10
+ import { ConfigLoader } from '../config.loader.js';
11
+ o.spec('ConfigLoader', () => {
12
+ const memory = new FsMemory();
13
+ const config = new ConfigProviderMemory();
14
+ const sandbox = createSandbox();
15
+ o.before(() => {
16
+ fsa.register('memory://', memory);
17
+ });
18
+ o.beforeEach(() => {
19
+ sandbox.stub(ConfigLoader, 'getDefaultConfig').resolves(config);
20
+ });
21
+ o.afterEach(() => {
22
+ sandbox.restore();
23
+ config.objects.clear();
24
+ memory.files.clear();
25
+ CachedConfig.cache.clear();
26
+ });
27
+ o('should return default config', async () => {
28
+ const provider = await ConfigLoader.load(mockRequest('/v1/fonts.json'));
29
+ o(provider).deepEquals(config);
30
+ });
31
+ o('should Not working with wrong config url', async () => {
32
+ const error = await ConfigLoader.load(mockUrlRequest('/v1/tiles/🦄 🌈/NZTM2000Quad/tile.json', `?config=notapath`, Api.header))
33
+ .then(() => null)
34
+ .catch((e) => e);
35
+ o(error instanceof LambdaHttpResponse).equals(true);
36
+ o(error.status).equals(400);
37
+ o(error.statusDescription).equals('Invalid config location');
38
+ });
39
+ o('should Not working with wrong protocol', async () => {
40
+ const error = await ConfigLoader.load(mockUrlRequest('/v1/tiles/🦄 🌈/NZTM2000Quad/tile.json', `?config=memory1://linz-basemaps/config`, Api.header))
41
+ .then(() => null)
42
+ .catch((e) => e);
43
+ o(error instanceof LambdaHttpResponse).equals(true);
44
+ o(error.status).equals(400);
45
+ o(error.statusDescription).equals('Invalid configuration location protocol:memory1');
46
+ });
47
+ o('should Not working with wrong s3 bucket', async () => {
48
+ const error = await ConfigLoader.load(mockUrlRequest('/v1/tiles/🦄 🌈/NZTM2000Quad/tile.json', `?config=s3://wrong-bucket/config`, Api.header))
49
+ .then(() => null)
50
+ .catch((e) => e);
51
+ o(error instanceof LambdaHttpResponse).equals(true);
52
+ o(error.status).equals(400);
53
+ o(error.statusDescription).equals('Bucket: "wrong-bucket" is not a allowed bucket location');
54
+ });
55
+ const location = 'memory://linz-basemaps/config.json';
56
+ o('should Not working with no file in the path', async () => {
57
+ const error = await ConfigLoader.load(mockUrlRequest('/v1/tiles/🦄 🌈/NZTM2000Quad/tile.json', `?config=${location}`, Api.header))
58
+ .then(() => null)
59
+ .catch((e) => e);
60
+ o(error instanceof LambdaHttpResponse).equals(true);
61
+ o(error.status).equals(404);
62
+ o(error.statusDescription).equals(`Config not found at ${location}`);
63
+ });
64
+ o('should get expected config file', async () => {
65
+ const expectedConfig = new ConfigProviderMemory();
66
+ expectedConfig.put(FakeData.tileSetRaster('aerial'));
67
+ await fsa.write(location, Buffer.from(JSON.stringify(expectedConfig.toJson())));
68
+ const provider = await ConfigLoader.load(mockUrlRequest('/v1/tiles/🦄 🌈/NZTM2000Quad/tile.json', `?config=${location}`, Api.header));
69
+ o(await provider.Imagery.get('aerial')).deepEquals(await expectedConfig.Imagery.get('aerial'));
70
+ });
71
+ o('should get expected config file with base58 location', async () => {
72
+ const expectedConfig = new ConfigProviderMemory();
73
+ expectedConfig.put(FakeData.tileSetVector('topographic'));
74
+ await fsa.write(location, Buffer.from(JSON.stringify(expectedConfig.toJson())));
75
+ const provider = await ConfigLoader.load(mockUrlRequest('/v1/tiles/🦄 🌈/NZTM2000Quad/tile.json', `?config=${base58.encode(Buffer.from(location))}`, Api.header));
76
+ o(await provider.Imagery.get('topographic')).deepEquals(await expectedConfig.Imagery.get('topographic'));
77
+ });
78
+ });
79
+ //# sourceMappingURL=config.loader.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.loader.test.js","sourceRoot":"","sources":["../../../src/util/__test__/config.loader.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /// <reference types="node" />
2
+ import { LambdaHttpResponse, LambdaHttpRequest } from '@linzjs/lambda';
3
+ export declare class AssetProvider {
4
+ /**
5
+ * Assets can be ready from the following locations.
6
+ *
7
+ * /home/blacha/config/build/assets # Local File
8
+ * /home/blacha/config/build/assets.tar.co # Local Cotar
9
+ * s3://linz-baesmaps/assets/ # Remote location
10
+ * s3://linz-basemaps/assets/assets-b4ff211a.tar.co # Remote Cotar
11
+ */
12
+ get(path: string, fileName: string): Promise<Buffer | null>;
13
+ getFromCotar(path: string, fileName: string): Promise<Buffer | null>;
14
+ /**
15
+ * Load a assets from local path or cotar returning the file back as a LambdaResponse
16
+ *
17
+ * This will also set two headers
18
+ * - Content-Encoding if the file starts with gzip magic
19
+ * - Content-Type from the parameter contentType
20
+ */
21
+ serve(req: LambdaHttpRequest, file: string, contentType: string): Promise<LambdaHttpResponse>;
22
+ }
23
+ export declare const assetProvider: AssetProvider;
24
+ //# sourceMappingURL=assets.provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assets.provider.d.ts","sourceRoot":"","sources":["../../src/util/assets.provider.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAc,MAAM,gBAAgB,CAAC;AAOnF,qBAAa,aAAa;IACxB;;;;;;;OAOG;IAEG,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAc3D,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAM1E;;;;;;OAMG;IACG,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAiBpG;AAED,eAAO,MAAM,aAAa,eAAsB,CAAC"}
@@ -0,0 +1,69 @@
1
+ import { Env } from '@basemaps/shared';
2
+ import { fsa } from '@chunkd/fs';
3
+ import { LambdaHttpResponse, HttpHeader } from '@linzjs/lambda';
4
+ import { ConfigLoader } from './config.loader.js';
5
+ import { isGzip } from './cotar.serve.js';
6
+ import { Etag } from './etag.js';
7
+ import { NotFound, NotModified } from './response.js';
8
+ import { CoSources } from './source.cache.js';
9
+ export class AssetProvider {
10
+ /**
11
+ * Assets can be ready from the following locations.
12
+ *
13
+ * /home/blacha/config/build/assets # Local File
14
+ * /home/blacha/config/build/assets.tar.co # Local Cotar
15
+ * s3://linz-baesmaps/assets/ # Remote location
16
+ * s3://linz-basemaps/assets/assets-b4ff211a.tar.co # Remote Cotar
17
+ */
18
+ async get(path, fileName) {
19
+ // get assets file from cotar
20
+ if (path.endsWith('.tar.co'))
21
+ return await this.getFromCotar(path, fileName);
22
+ // get assets file for directory
23
+ try {
24
+ const filePath = fsa.join(path, fileName);
25
+ return await fsa.read(filePath);
26
+ }
27
+ catch (e) {
28
+ if (e.code === 404)
29
+ return null;
30
+ throw e;
31
+ }
32
+ }
33
+ async getFromCotar(path, fileName) {
34
+ const cotar = await CoSources.getCotar(path);
35
+ const data = await cotar.get(fileName);
36
+ return data ? Buffer.from(data) : data;
37
+ }
38
+ /**
39
+ * Load a assets from local path or cotar returning the file back as a LambdaResponse
40
+ *
41
+ * This will also set two headers
42
+ * - Content-Encoding if the file starts with gzip magic
43
+ * - Content-Type from the parameter contentType
44
+ */
45
+ async serve(req, file, contentType) {
46
+ const config = await ConfigLoader.load(req);
47
+ let assetLocation = Env.get(Env.AssetLocation);
48
+ if (config == null)
49
+ return NotFound();
50
+ if (config.assets != null)
51
+ assetLocation = config.assets;
52
+ if (assetLocation == null)
53
+ return NotFound();
54
+ const buf = await assetProvider.get(assetLocation, file);
55
+ if (buf == null)
56
+ return NotFound();
57
+ const cacheKey = Etag.key(buf);
58
+ if (Etag.isNotModified(req, cacheKey))
59
+ return NotModified();
60
+ const response = LambdaHttpResponse.ok().buffer(buf, contentType);
61
+ response.header(HttpHeader.ETag, cacheKey);
62
+ response.header(HttpHeader.CacheControl, 'public, max-age=604800, stale-while-revalidate=86400');
63
+ if (isGzip(buf))
64
+ response.header(HttpHeader.ContentEncoding, 'gzip');
65
+ return response;
66
+ }
67
+ }
68
+ export const assetProvider = new AssetProvider();
69
+ //# sourceMappingURL=assets.provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assets.provider.js","sourceRoot":"","sources":["../../src/util/assets.provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAqB,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,MAAM,OAAO,aAAa;IACxB;;;;;;;OAOG;IAEH,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,QAAgB;QACtC,6BAA6B;QAC7B,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAE7E,gCAAgC;QAChC,IAAI;YACF,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC1C,OAAO,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACjC;QAAC,OAAO,CAAM,EAAE;YACf,IAAI,CAAC,CAAC,IAAI,KAAK,GAAG;gBAAE,OAAO,IAAI,CAAC;YAChC,MAAM,CAAC,CAAC;SACT;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,QAAgB;QAC/C,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,KAAK,CAAC,GAAsB,EAAE,IAAY,EAAE,WAAmB;QACnE,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,aAAa,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC/C,IAAI,MAAM,IAAI,IAAI;YAAE,OAAO,QAAQ,EAAE,CAAC;QACtC,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI;YAAE,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;QACzD,IAAI,aAAa,IAAI,IAAI;YAAE,OAAO,QAAQ,EAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QACzD,IAAI,GAAG,IAAI,IAAI;YAAE,OAAO,QAAQ,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,QAAQ,CAAC;YAAE,OAAO,WAAW,EAAE,CAAC;QAE5D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAClE,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC3C,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,EAAE,sDAAsD,CAAC,CAAC;QACjG,IAAI,MAAM,CAAC,GAAG,CAAC;YAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QACrE,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { ConfigBundled, ConfigProviderMemory } from '@basemaps/config';
2
+ import { SwappingLru } from './swapping.lru.js';
3
+ declare class LruConfig {
4
+ configProvider: Promise<ConfigProviderMemory | null>;
5
+ constructor(config: Promise<ConfigBundled>);
6
+ get size(): number;
7
+ }
8
+ export declare class ConfigCache {
9
+ cache: SwappingLru<LruConfig>;
10
+ constructor(maxSize: number);
11
+ get(location: string): Promise<ConfigProviderMemory | null>;
12
+ }
13
+ /** Cache 20 configs (Around <30KB -> 5MB each)*/
14
+ export declare const CachedConfig: ConfigCache;
15
+ export {};
16
+ //# sourceMappingURL=config.cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.cache.d.ts","sourceRoot":"","sources":["../../src/util/config.cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAEvE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,cAAM,SAAS;IACb,cAAc,EAAE,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAAC;gBAEzC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC;IAa1C,IAAI,IAAI,IAAI,MAAM,CAGjB;CACF;AAED,qBAAa,WAAW;IACtB,KAAK,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;gBAClB,OAAO,EAAE,MAAM;IAI3B,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;CAQ5D;AAED,iDAAiD;AACjD,eAAO,MAAM,YAAY,aAAsB,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { ConfigProviderMemory } from '@basemaps/config';
2
+ import { fsa } from '@basemaps/shared';
3
+ import { SwappingLru } from './swapping.lru.js';
4
+ class LruConfig {
5
+ constructor(config) {
6
+ this.configProvider = config
7
+ .then((c) => {
8
+ const configProvider = ConfigProviderMemory.fromJson(c);
9
+ configProvider.createVirtualTileSets();
10
+ return configProvider;
11
+ })
12
+ .catch((e) => {
13
+ if (e.code === 404)
14
+ return null;
15
+ throw e;
16
+ });
17
+ }
18
+ get size() {
19
+ // Return size 1 for the config and cache the number of configs based on size number.
20
+ return 1;
21
+ }
22
+ }
23
+ export class ConfigCache {
24
+ constructor(maxSize) {
25
+ this.cache = new SwappingLru(maxSize);
26
+ }
27
+ get(location) {
28
+ var _a;
29
+ const existing = (_a = this.cache.get(location)) === null || _a === void 0 ? void 0 : _a.configProvider;
30
+ if (existing != null)
31
+ return existing;
32
+ const configJson = fsa.readJson(location);
33
+ const config = new LruConfig(configJson);
34
+ this.cache.set(location, config);
35
+ return config.configProvider;
36
+ }
37
+ }
38
+ /** Cache 20 configs (Around <30KB -> 5MB each)*/
39
+ export const CachedConfig = new ConfigCache(20);
40
+ //# sourceMappingURL=config.cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.cache.js","sourceRoot":"","sources":["../../src/util/config.cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,SAAS;IAGb,YAAY,MAA8B;QACxC,IAAI,CAAC,cAAc,GAAG,MAAM;aACzB,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACV,MAAM,cAAc,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACxD,cAAc,CAAC,qBAAqB,EAAE,CAAC;YACvC,OAAO,cAAc,CAAC;QACxB,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACX,IAAI,CAAC,CAAC,IAAI,KAAK,GAAG;gBAAE,OAAO,IAAI,CAAC;YAChC,MAAM,CAAC,CAAC;QACV,CAAC,CAAC,CAAC;IACP,CAAC;IAED,IAAI,IAAI;QACN,qFAAqF;QACrF,OAAO,CAAC,CAAC;IACX,CAAC;CACF;AAED,MAAM,OAAO,WAAW;IAEtB,YAAY,OAAe;QACzB,IAAI,CAAC,KAAK,GAAG,IAAI,WAAW,CAAY,OAAO,CAAC,CAAC;IACnD,CAAC;IAED,GAAG,CAAC,QAAgB;;QAClB,MAAM,QAAQ,GAAG,MAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,0CAAE,cAAc,CAAC;QAC1D,IAAI,QAAQ,IAAI,IAAI;YAAE,OAAO,QAAQ,CAAC;QACtC,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAgB,QAAQ,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,UAAU,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO,MAAM,CAAC,cAAc,CAAC;IAC/B,CAAC;CACF;AAED,iDAAiD;AACjD,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { BasemapsConfigProvider } from '@basemaps/config';
2
+ import { LambdaHttpRequest } from '@linzjs/lambda';
3
+ export declare class ConfigLoader {
4
+ /** Exposed for testing */
5
+ static getDefaultConfig(): Promise<BasemapsConfigProvider>;
6
+ /** Lookup the config path from a request and return a standardized location */
7
+ static extract(req: LambdaHttpRequest): string | null;
8
+ static load(req: LambdaHttpRequest): Promise<BasemapsConfigProvider>;
9
+ }
10
+ //# sourceMappingURL=config.loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.loader.d.ts","sourceRoot":"","sources":["../../src/util/config.loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,sBAAsB,EAAY,MAAM,kBAAkB,CAAC;AAG5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAQnD,qBAAa,YAAY;IACvB,0BAA0B;WACb,gBAAgB,IAAI,OAAO,CAAC,sBAAsB,CAAC;IAIhE,+EAA+E;IAC/E,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,iBAAiB,GAAG,MAAM,GAAG,IAAI;WAOxC,IAAI,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAwB3E"}
@@ -0,0 +1,47 @@
1
+ import { base58, isBase58 } from '@basemaps/config';
2
+ import { LambdaHttpResponse } from '@linzjs/lambda';
3
+ import { parseUri } from '@chunkd/core';
4
+ import { CachedConfig } from './config.cache.js';
5
+ import { getDefaultConfig } from '@basemaps/shared';
6
+ // FIXME load this from process.env COG BUCKETS?
7
+ const SafeBuckets = new Set(['linz-workflow-artifacts', 'linz-basemaps']);
8
+ const SafeProtocols = new Set(['s3', 'memory']);
9
+ export class ConfigLoader {
10
+ /** Exposed for testing */
11
+ static async getDefaultConfig() {
12
+ return getDefaultConfig();
13
+ }
14
+ /** Lookup the config path from a request and return a standardized location */
15
+ static extract(req) {
16
+ const rawLocation = req.query.get('config');
17
+ if (rawLocation == null)
18
+ return null;
19
+ if (rawLocation.includes('/'))
20
+ return base58.encode(Buffer.from(rawLocation));
21
+ return rawLocation;
22
+ }
23
+ static async load(req) {
24
+ const rawLocation = req.query.get('config');
25
+ if (rawLocation == null)
26
+ return this.getDefaultConfig();
27
+ const configLocation = isBase58(rawLocation) ? Buffer.from(base58.decode(rawLocation)).toString() : rawLocation;
28
+ const r = parseUri(configLocation);
29
+ if (r == null)
30
+ throw new LambdaHttpResponse(400, 'Invalid config location');
31
+ if (!SafeProtocols.has(r.protocol)) {
32
+ throw new LambdaHttpResponse(400, `Invalid configuration location protocol:${r.protocol}`);
33
+ }
34
+ if (!SafeBuckets.has(r.bucket)) {
35
+ throw new LambdaHttpResponse(400, `Bucket: "${r.bucket}" is not a allowed bucket location`);
36
+ }
37
+ req.set('config', configLocation);
38
+ req.timer.start('config:load');
39
+ return CachedConfig.get(configLocation).then((f) => {
40
+ req.timer.end('config:load');
41
+ if (f == null)
42
+ throw new LambdaHttpResponse(404, `Config not found at ${configLocation}`);
43
+ return f;
44
+ });
45
+ }
46
+ }
47
+ //# sourceMappingURL=config.loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.loader.js","sourceRoot":"","sources":["../../src/util/config.loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAA0B,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,gDAAgD;AAChD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,yBAAyB,EAAE,eAAe,CAAC,CAAC,CAAC;AAC1E,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;AAEhD,MAAM,OAAO,YAAY;IACvB,0BAA0B;IAC1B,MAAM,CAAC,KAAK,CAAC,gBAAgB;QAC3B,OAAO,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IAED,+EAA+E;IAC/E,MAAM,CAAC,OAAO,CAAC,GAAsB;QACnC,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,WAAW,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;QACrC,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAC9E,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAsB;QACtC,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,WAAW,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExD,MAAM,cAAc,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;QAEhH,MAAM,CAAC,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;QAEnC,IAAI,CAAC,IAAI,IAAI;YAAE,MAAM,IAAI,kBAAkB,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;QAC5E,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE;YAClC,MAAM,IAAI,kBAAkB,CAAC,GAAG,EAAE,2CAA2C,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC5F;QACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;YAC9B,MAAM,IAAI,kBAAkB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,MAAM,oCAAoC,CAAC,CAAC;SAC7F;QAED,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAClC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC/B,OAAO,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACjD,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAC7B,IAAI,CAAC,IAAI,IAAI;gBAAE,MAAM,IAAI,kBAAkB,CAAC,GAAG,EAAE,uBAAuB,cAAc,EAAE,CAAC,CAAC;YAC1F,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,5 +1,6 @@
1
- import { LambdaHttpResponse } from '@linzjs/lambda';
1
+ import { LambdaHttpRequest, LambdaHttpResponse } from '@linzjs/lambda';
2
2
  export declare const NotFound: () => LambdaHttpResponse;
3
3
  export declare const NotModified: () => LambdaHttpResponse;
4
4
  export declare const NoContent: () => LambdaHttpResponse;
5
+ export declare const OkResponse: (req: LambdaHttpRequest) => LambdaHttpResponse;
5
6
  //# sourceMappingURL=response.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../src/util/response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,eAAO,MAAM,QAAQ,QAAO,kBAA8D,CAAC;AAC3F,eAAO,MAAM,WAAW,QAAO,kBAAiE,CAAC;AACjG,eAAO,MAAM,SAAS,QAAO,kBAA+D,CAAC"}
1
+ {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../src/util/response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEvE,eAAO,MAAM,QAAQ,QAAO,kBAA8D,CAAC;AAC3F,eAAO,MAAM,WAAW,QAAO,kBAAiE,CAAC;AACjG,eAAO,MAAM,SAAS,QAAO,kBAA+D,CAAC;AAC7F,eAAO,MAAM,UAAU,QAAS,iBAAiB,KAAG,kBACqD,CAAC"}
@@ -2,4 +2,5 @@ import { LambdaHttpResponse } from '@linzjs/lambda';
2
2
  export const NotFound = () => new LambdaHttpResponse(404, 'Not Found');
3
3
  export const NotModified = () => new LambdaHttpResponse(304, 'Not modified');
4
4
  export const NoContent = () => new LambdaHttpResponse(204, 'No Content');
5
+ export const OkResponse = (req) => new LambdaHttpResponse(200, 'ok').json({ id: req.id, correlationId: req.correlationId, message: 'ok' });
5
6
  //# sourceMappingURL=response.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"response.js","sourceRoot":"","sources":["../../src/util/response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAuB,EAAE,CAAC,IAAI,kBAAkB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;AAC3F,MAAM,CAAC,MAAM,WAAW,GAAG,GAAuB,EAAE,CAAC,IAAI,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;AACjG,MAAM,CAAC,MAAM,SAAS,GAAG,GAAuB,EAAE,CAAC,IAAI,kBAAkB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"response.js","sourceRoot":"","sources":["../../src/util/response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEvE,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAuB,EAAE,CAAC,IAAI,kBAAkB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;AAC3F,MAAM,CAAC,MAAM,WAAW,GAAG,GAAuB,EAAE,CAAC,IAAI,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;AACjG,MAAM,CAAC,MAAM,SAAS,GAAG,GAAuB,EAAE,CAAC,IAAI,kBAAkB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;AAC7F,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAsB,EAAsB,EAAE,CACvE,IAAI,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,aAAa,EAAE,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC"}
@@ -17,18 +17,20 @@ export interface WmtsCapabilitiesParams {
17
17
  apiKey?: string;
18
18
  /** Limit the output to the following image formats other wise @see ImageFormatOrder */
19
19
  formats?: ImageFormat[] | null;
20
+ /** Config location */
21
+ config?: string | null;
20
22
  }
21
23
  export declare class WmtsCapabilities {
22
24
  httpBase: string;
23
25
  provider?: WmtsProvider;
24
26
  tileSet: ConfigTileSet;
25
27
  apiKey?: string;
28
+ config?: string | null;
26
29
  tileMatrixSets: Map<string, TileMatrixSet>;
27
30
  imagery: Map<string, ConfigImagery>;
28
31
  formats: ImageFormat[];
29
32
  isIndividualLayers: boolean;
30
33
  constructor(params: WmtsCapabilitiesParams);
31
- loadImagery(): Promise<void>;
32
34
  buildWgs84BoundingBox(tms: TileMatrixSet, layers: Bounds[]): VNodeElement;
33
35
  /** Combine all the bounds of the imagery inside the layers into a extent for the imagery set */
34
36
  buildBoundingBoxFromImagery(tms: TileMatrixSet, layers: ConfigLayer[]): VNodeElement | null;
@@ -1 +1 @@
1
- {"version":3,"file":"wmts.capability.d.ts","sourceRoot":"","sources":["../src/wmts.capability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,aAAa,EAAE,WAAW,EAAE,aAAa,EAAwB,MAAM,kBAAkB,CAAC;AAC3G,OAAO,EAAE,MAAM,EAAa,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAiB,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAoB/D,MAAM,WAAW,sBAAsB;IACrC,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,kCAAkC;IAClC,OAAO,EAAE,aAAa,CAAC;IACvB,sCAAsC;IACtC,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,6EAA6E;IAC7E,kBAAkB,EAAE,OAAO,CAAC;IAC5B,2DAA2D;IAC3D,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACpC,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uFAAuF;IACvF,OAAO,CAAC,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;CAChC;AAeD,qBAAa,gBAAgB;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,6BAAoC;IAClD,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACpC,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,kBAAkB,UAAS;gBAEf,MAAM,EAAE,sBAAsB;IAWpC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAWlC,qBAAqB,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY;IAyBzE,gGAAgG;IAChG,2BAA2B,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,YAAY,GAAG,IAAI;IAmB3F,aAAa,IAAI,YAAY,EAAE;IAmC/B,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAcvD,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY;IAQjE,qBAAqB,CAAC,KAAK,EAAE,WAAW,GAAG,YAAY,GAAG,IAAI;IAmC9D,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,YAAY;IAqC9C,aAAa,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,YAAY;IAK3D,UAAU,IAAI,YAAY;IAI1B,kBAAkB,CAAC,GAAG,EAAE,aAAa,GAAG,YAAY;IAoBpD,OAAO,IAAI,YAAY;IAmBvB,KAAK,IAAI,MAAM;CAGhB"}
1
+ {"version":3,"file":"wmts.capability.d.ts","sourceRoot":"","sources":["../src/wmts.capability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,EAAwB,MAAM,kBAAkB,CAAC;AACnG,OAAO,EAAE,MAAM,EAAa,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAgC,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAoB9E,MAAM,WAAW,sBAAsB;IACrC,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,kCAAkC;IAClC,OAAO,EAAE,aAAa,CAAC;IACvB,sCAAsC;IACtC,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,6EAA6E;IAC7E,kBAAkB,EAAE,OAAO,CAAC;IAC5B,2DAA2D;IAC3D,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACpC,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uFAAuF;IACvF,OAAO,CAAC,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IAC/B,sBAAsB;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAeD,qBAAa,gBAAgB;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,cAAc,6BAAoC;IAClD,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACpC,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,kBAAkB,UAAS;gBAEf,MAAM,EAAE,sBAAsB;IAY1C,qBAAqB,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY;IAyBzE,gGAAgG;IAChG,2BAA2B,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,YAAY,GAAG,IAAI;IAmB3F,aAAa,IAAI,YAAY,EAAE;IAmC/B,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAevD,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY;IAQjE,qBAAqB,CAAC,KAAK,EAAE,WAAW,GAAG,YAAY,GAAG,IAAI;IAmC9D,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,YAAY;IAqC9C,aAAa,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,YAAY;IAK3D,UAAU,IAAI,YAAY;IAI1B,kBAAkB,CAAC,GAAG,EAAE,aAAa,GAAG,YAAY;IAoBpD,OAAO,IAAI,YAAY;IAmBvB,KAAK,IAAI,MAAM;CAGhB"}
@@ -1,6 +1,6 @@
1
- import { Config, standardizeLayerName } from '@basemaps/config';
1
+ import { standardizeLayerName } from '@basemaps/config';
2
2
  import { Bounds, GoogleTms } from '@basemaps/geo';
3
- import { Projection, V } from '@basemaps/shared';
3
+ import { Projection, toQueryString, V } from '@basemaps/shared';
4
4
  import { ImageFormatOrder } from '@basemaps/tiler';
5
5
  const CapabilitiesAttrs = {
6
6
  xmlns: 'http://www.opengis.net/wmts/1.0',
@@ -32,6 +32,7 @@ export class WmtsCapabilities {
32
32
  this.httpBase = params.httpBase;
33
33
  this.provider = params.provider;
34
34
  this.tileSet = params.tileSet;
35
+ this.config = params.config;
35
36
  this.isIndividualLayers = params.isIndividualLayers;
36
37
  for (const tms of params.tileMatrix)
37
38
  this.tileMatrixSets.set(tms.identifier, tms);
@@ -39,17 +40,6 @@ export class WmtsCapabilities {
39
40
  this.formats = (_a = params.formats) !== null && _a !== void 0 ? _a : ImageFormatOrder;
40
41
  this.imagery = params.imagery;
41
42
  }
42
- async loadImagery() {
43
- const ids = new Set();
44
- for (const tms of this.tileMatrixSets.values()) {
45
- for (const layer of this.tileSet.layers) {
46
- const layerId = layer[tms.projection.code];
47
- if (layerId != null)
48
- ids.add(layerId);
49
- }
50
- }
51
- this.imagery = await Config.Imagery.getAll(ids);
52
- }
53
43
  buildWgs84BoundingBox(tms, layers) {
54
44
  let bbox;
55
45
  if (layers.length > 0) {
@@ -131,7 +121,7 @@ export class WmtsCapabilities {
131
121
  ];
132
122
  }
133
123
  buildTileUrl(tileSetId, suffix) {
134
- const apiSuffix = this.apiKey ? `?api=${this.apiKey}` : '';
124
+ const query = toQueryString({ api: this.apiKey, config: this.config });
135
125
  return [
136
126
  this.httpBase,
137
127
  'v1',
@@ -140,7 +130,7 @@ export class WmtsCapabilities {
140
130
  '{TileMatrixSet}',
141
131
  '{TileMatrix}',
142
132
  '{TileCol}',
143
- `{TileRow}.${suffix}${apiSuffix}`,
133
+ `{TileRow}.${suffix}${query}`,
144
134
  ].join('/');
145
135
  }
146
136
  buildResourceUrl(tileSetId, suffix) {
@@ -1 +1 @@
1
- {"version":3,"file":"wmts.capability.js","sourceRoot":"","sources":["../src/wmts.capability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wmts.capability.js","sourceRoot":"","sources":["../src/wmts.capability.ts"],"names":[],"mappings":"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"}