@basemaps/landing 6.46.0 → 7.1.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.
- package/README.md +2 -4
- package/build/__tests__/config.debug.test.d.ts +0 -1
- package/build/__tests__/config.debug.test.js +11 -10
- package/build/__tests__/config.debug.test.js.map +1 -1
- package/build/__tests__/config.test.d.ts +0 -1
- package/build/__tests__/config.test.js +5 -4
- package/build/__tests__/config.test.js.map +1 -1
- package/build/__tests__/geojson.test.d.ts +0 -1
- package/build/__tests__/geojson.test.js +6 -5
- package/build/__tests__/geojson.test.js.map +1 -1
- package/build/__tests__/map.config.test.d.ts +0 -1
- package/build/__tests__/map.config.test.js +66 -65
- package/build/__tests__/map.config.test.js.map +1 -1
- package/build/__tests__/tile.matrix.test.d.ts +0 -1
- package/build/__tests__/tile.matrix.test.js +11 -10
- package/build/__tests__/tile.matrix.test.js.map +1 -1
- package/build/attribution.d.ts +8 -11
- package/build/attribution.js +145 -66
- package/build/attribution.js.map +1 -1
- package/build/components/copyable.d.ts +1 -2
- package/build/components/copyable.js +27 -18
- package/build/components/copyable.js.map +1 -1
- package/build/components/daterange.d.ts +0 -1
- package/build/components/daterange.js +11 -7
- package/build/components/daterange.js.map +1 -1
- package/build/components/debug.d.ts +13 -2
- package/build/components/debug.js +273 -78
- package/build/components/debug.js.map +1 -1
- package/build/components/layer.switcher.dropdown.d.ts +1 -2
- package/build/components/layer.switcher.dropdown.js +43 -29
- package/build/components/layer.switcher.dropdown.js.map +1 -1
- package/build/components/layout.footer.d.ts +0 -1
- package/build/components/layout.footer.js +7 -2
- package/build/components/layout.footer.js.map +1 -1
- package/build/components/layout.header.d.ts +1 -2
- package/build/components/layout.header.js +44 -23
- package/build/components/layout.header.js.map +1 -1
- package/build/components/link.d.ts +0 -1
- package/build/components/link.js +1 -1
- package/build/components/link.js.map +1 -1
- package/build/components/map.d.ts +14 -4
- package/build/components/map.js +221 -84
- package/build/components/map.js.map +1 -1
- package/build/components/map.switcher.d.ts +1 -2
- package/build/components/map.switcher.js +80 -31
- package/build/components/map.switcher.js.map +1 -1
- package/build/config.d.ts +0 -1
- package/build/config.debug.d.ts +6 -1
- package/build/config.debug.js +6 -0
- package/build/config.debug.js.map +1 -1
- package/build/config.js +4 -8
- package/build/config.js.map +1 -1
- package/build/config.layer.d.ts +31 -2
- package/build/config.layer.js +14 -6
- package/build/config.layer.js.map +1 -1
- package/build/config.map.d.ts +6 -6
- package/build/config.map.js +95 -29
- package/build/config.map.js.map +1 -1
- package/build/debug.map.d.ts +2 -3
- package/build/debug.map.js +57 -23
- package/build/debug.map.js.map +1 -1
- package/build/global.d.ts +3 -3
- package/build/index.d.ts +0 -1
- package/build/index.js.map +1 -1
- package/build/tile.matrix.d.ts +0 -1
- package/build/tile.matrix.js +12 -0
- package/build/tile.matrix.js.map +1 -1
- package/build/url.d.ts +4 -1
- package/build/url.js +10 -8
- package/build/url.js.map +1 -1
- package/build/webp.d.ts +0 -1
- package/build/webp.js.map +1 -1
- package/dist/docs/404.html +849 -0
- package/dist/docs/assets/images/favicon.png +0 -0
- package/dist/docs/assets/javascripts/bundle.6c14ae12.min.js +29 -0
- package/dist/docs/assets/javascripts/bundle.6c14ae12.min.js.map +7 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.ar.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.da.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.de.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.du.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.el.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.es.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.fi.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.fr.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.he.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.hi.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.hu.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.hy.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.it.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.ja.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.jp.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.kn.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.ko.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.multi.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.nl.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.no.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.pt.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.ro.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.ru.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.sa.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.stemmer.support.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.sv.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.ta.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.te.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.th.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.tr.min.js +18 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.vi.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/min/lunr.zh.min.js +1 -0
- package/dist/docs/assets/javascripts/lunr/tinyseg.js +206 -0
- package/dist/docs/assets/javascripts/lunr/wordcut.js +6708 -0
- package/dist/docs/assets/javascripts/swagger-initializer.js +20 -0
- package/dist/docs/assets/javascripts/swagger-ui-bundle.js +3 -0
- package/dist/docs/assets/javascripts/swagger-ui-bundle.js.map +1 -0
- package/dist/docs/assets/javascripts/swagger-ui-es-bundle-core.js +3 -0
- package/dist/docs/assets/javascripts/swagger-ui-es-bundle-core.js.map +1 -0
- package/dist/docs/assets/javascripts/swagger-ui-es-bundle.js +3 -0
- package/dist/docs/assets/javascripts/swagger-ui-es-bundle.js.map +1 -0
- package/dist/docs/assets/javascripts/swagger-ui-standalone-preset.js +3 -0
- package/dist/docs/assets/javascripts/swagger-ui-standalone-preset.js.map +1 -0
- package/dist/docs/assets/javascripts/workers/search.f886a092.min.js +42 -0
- package/dist/docs/assets/javascripts/workers/search.f886a092.min.js.map +7 -0
- package/dist/docs/assets/stylesheets/main.fad675c6.min.css +1 -0
- package/dist/docs/assets/stylesheets/main.fad675c6.min.css.map +1 -0
- package/dist/docs/assets/stylesheets/palette.356b1318.min.css +1 -0
- package/dist/docs/assets/stylesheets/palette.356b1318.min.css.map +1 -0
- package/dist/docs/assets/stylesheets/swagger-ui-dark.css +833 -0
- package/dist/docs/assets/stylesheets/swagger-ui.css +3 -0
- package/dist/docs/assets/stylesheets/swagger-ui.css.map +1 -0
- package/dist/docs/assets/stylesheets/swagger-ui.js +2 -0
- package/dist/docs/assets/stylesheets/swagger-ui.js.map +1 -0
- package/dist/docs/assets/swagger-ui/oauth2-redirect.html +79 -0
- package/dist/docs/configuration/index.html +503 -0
- package/dist/docs/deployment/index.html +457 -0
- package/dist/docs/developer-guide/index.html +434 -0
- package/dist/docs/examples/_overview/index.html +413 -0
- package/dist/docs/examples/index.leaflet.xyz.3857.html +38 -0
- package/dist/docs/examples/index.maplibre.opacity.3857.html +215 -0
- package/dist/docs/examples/index.maplibre.vector.3857.html +45 -0
- package/dist/docs/examples/leaflet.xyz.3857/index.html +448 -0
- package/dist/docs/examples/maplibre.opacity.3857/index.html +625 -0
- package/dist/docs/examples/maplibre.vector.3857/index.html +455 -0
- package/dist/docs/index.css +3 -0
- package/dist/docs/index.html +623 -0
- package/dist/docs/linz-motif.svg +124 -0
- package/dist/docs/operator-guide/cog-quality/index.html +608 -0
- package/dist/docs/operator-guide/empty-tiles/index.html +513 -0
- package/dist/docs/operator-guide/gebco/index.html +479 -0
- package/dist/docs/operator-guide/index.html +413 -0
- package/dist/docs/operator-guide/quick-start/index.html +611 -0
- package/dist/docs/operator-guide/relief-shade/index.html +490 -0
- package/dist/docs/operator-guide/static/2023-06-26-gisborne-2023.png +0 -0
- package/dist/docs/operator-guide/static/quality__005_006_0_bilinear.webp +0 -0
- package/dist/docs/operator-guide/static/quality__005_006_0_lanczos.webp +0 -0
- package/dist/docs/operator-guide/static/quality__i6.bilinear.webp +0 -0
- package/dist/docs/operator-guide/static/quality__i6.cubic.webp +0 -0
- package/dist/docs/operator-guide/static/quality__i6.lanczos.webp +0 -0
- package/dist/docs/operator-guide/static/quality__resampling-overview.webp +0 -0
- package/dist/docs/operator-guide/static/quick-start__layers.png +0 -0
- package/dist/docs/operator-guide/static/relief__aerial.webp +0 -0
- package/dist/docs/operator-guide/static/relief__base.webp +0 -0
- package/dist/docs/operator-guide/static/relief__darken.webp +0 -0
- package/dist/docs/operator-guide/static/relief__lighten.webp +0 -0
- package/dist/docs/operator-guide/texture-shade/index.html +537 -0
- package/dist/docs/quick-start/index.html +419 -0
- package/dist/docs/sitemap.xml +98 -0
- package/dist/docs/sitemap.xml.gz +0 -0
- package/dist/docs/static/basemaps-service.png +0 -0
- package/dist/docs/static/tile-resize.png +0 -0
- package/dist/docs/static/workflow-run.png +0 -0
- package/dist/docs/user-guide/_get-started/index.html +602 -0
- package/dist/docs/user-guide/api-documentation/index.html +409 -0
- package/dist/docs/user-guide/api-documentation/swagger-c1884237.html +120 -0
- package/dist/docs/user-guide/swagger-api.json +393 -0
- package/dist/docs/user-guide/technical-documentation/index.html +930 -0
- package/package.json +17 -17
- package/CHANGELOG.md +0 -1374
- package/build/__tests__/config.debug.test.d.ts.map +0 -1
- package/build/__tests__/config.test.d.ts.map +0 -1
- package/build/__tests__/geojson.test.d.ts.map +0 -1
- package/build/__tests__/map.config.test.d.ts.map +0 -1
- package/build/__tests__/tile.matrix.test.d.ts.map +0 -1
- package/build/attribution.d.ts.map +0 -1
- package/build/components/copyable.d.ts.map +0 -1
- package/build/components/daterange.d.ts.map +0 -1
- package/build/components/debug.d.ts.map +0 -1
- package/build/components/layer.switcher.dropdown.d.ts.map +0 -1
- package/build/components/layout.footer.d.ts.map +0 -1
- package/build/components/layout.header.d.ts.map +0 -1
- package/build/components/link.d.ts.map +0 -1
- package/build/components/map.d.ts.map +0 -1
- package/build/components/map.switcher.d.ts.map +0 -1
- package/build/config.d.ts.map +0 -1
- package/build/config.debug.d.ts.map +0 -1
- package/build/config.layer.d.ts.map +0 -1
- package/build/config.map.d.ts.map +0 -1
- package/build/debug.map.d.ts.map +0 -1
- package/build/global.d.ts.map +0 -1
- package/build/index.d.ts.map +0 -1
- package/build/tile.matrix.d.ts.map +0 -1
- package/build/url.d.ts.map +0 -1
- package/build/webp.d.ts.map +0 -1
package/README.md
CHANGED
|
@@ -2,14 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
The landing page for basemaps https://basemaps.linz.govt.nz
|
|
4
4
|
|
|
5
|
-
|
|
6
5
|
## Development
|
|
7
6
|
|
|
8
7
|
To start a local test server there are two options
|
|
9
8
|
|
|
10
9
|
### Create a full basemaps server
|
|
11
10
|
|
|
12
|
-
Using [@basemaps/server](../server/README.md) a entire local test environment can be run. to ensure the latest assets are served by the local server `
|
|
11
|
+
Using [@basemaps/server](../server/README.md) a entire local test environment can be run. to ensure the latest assets are served by the local server `npm run bundle` should be run first
|
|
13
12
|
|
|
14
13
|
this is best when testing larger basemaps changes across multiple packages, but needs access to some imagery.
|
|
15
14
|
|
|
@@ -18,7 +17,6 @@ this is best when testing larger basemaps changes across multiple packages, but
|
|
|
18
17
|
The simple local server is used to validate html/css/js changes in the landing page this does not run a basemaps tile server and will default to `https://dev.basemaps.linz.govt.nz`
|
|
19
18
|
|
|
20
19
|
```bash
|
|
21
|
-
|
|
20
|
+
npm run bundle
|
|
22
21
|
node serve.mjs
|
|
23
22
|
```
|
|
24
|
-
|
|
@@ -1,20 +1,21 @@
|
|
|
1
|
-
import
|
|
1
|
+
import assert from 'node:assert';
|
|
2
|
+
import { describe, it } from 'node:test';
|
|
2
3
|
import { ConfigDebug, DebugDefaults } from '../config.debug.js';
|
|
3
4
|
function urlToString(o) {
|
|
4
5
|
const url = new URLSearchParams();
|
|
5
6
|
ConfigDebug.toUrl(o, url);
|
|
6
7
|
return url.toString();
|
|
7
8
|
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
describe('ConfigDebug', () => {
|
|
10
|
+
it('should only serialize when not defaults', () => {
|
|
11
|
+
assert.equal(urlToString(DebugDefaults), '');
|
|
11
12
|
});
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
it('should write to url', () => {
|
|
14
|
+
assert.equal(urlToString({ debug: true }), 'debug=true');
|
|
15
|
+
assert.equal(urlToString({ debug: false }), '');
|
|
16
|
+
assert.equal(urlToString({ debug: true, 'debug.background': 'magenta' }), 'debug=true&debug.background=magenta');
|
|
16
17
|
});
|
|
17
|
-
|
|
18
|
+
it('should round trip', () => {
|
|
18
19
|
const cfg = { ...DebugDefaults };
|
|
19
20
|
cfg.debug = true;
|
|
20
21
|
cfg['debug.background'] = 'magenta';
|
|
@@ -23,7 +24,7 @@ o.spec('ConfigDebug', () => {
|
|
|
23
24
|
const url = urlToString(cfg);
|
|
24
25
|
const newCfg = { ...DebugDefaults };
|
|
25
26
|
ConfigDebug.fromUrl(newCfg, new URLSearchParams(`?${url}`));
|
|
26
|
-
|
|
27
|
+
assert.deepEqual(newCfg, cfg);
|
|
27
28
|
});
|
|
28
29
|
});
|
|
29
30
|
//# sourceMappingURL=config.debug.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.debug.test.js","sourceRoot":"","sources":["../../src/__tests__/config.debug.test.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"config.debug.test.js","sourceRoot":"","sources":["../../src/__tests__/config.debug.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAc,MAAM,oBAAoB,CAAC;AAE5E,SAAS,WAAW,CAAC,CAAsB;IACzC,MAAM,GAAG,GAAG,IAAI,eAAe,EAAE,CAAC;IAClC,WAAW,CAAC,KAAK,CAAC,CAAe,EAAE,GAAG,CAAC,CAAC;IACxC,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC;AAED,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC7B,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;QACzD,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAChD,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE,CAAC,EAAE,qCAAqC,CAAC,CAAC;IACnH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;QAC3B,MAAM,GAAG,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC;QACjC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC;QACjB,GAAG,CAAC,kBAAkB,CAAC,GAAG,SAAS,CAAC;QACpC,GAAG,CAAC,8BAA8B,CAAC,GAAG,GAAG,CAAC;QAC1C,GAAG,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC;QAEpC,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,MAAM,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC;QACpC,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,eAAe,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import
|
|
1
|
+
import assert from 'node:assert';
|
|
2
|
+
import { describe, it } from 'node:test';
|
|
2
3
|
import { Config } from '../config.js';
|
|
3
|
-
|
|
4
|
-
|
|
4
|
+
describe('Config', () => {
|
|
5
|
+
it('should return the same api key', () => {
|
|
5
6
|
const keyA = Config.ApiKey;
|
|
6
|
-
|
|
7
|
+
assert.equal(keyA, Config.ApiKey);
|
|
7
8
|
});
|
|
8
9
|
});
|
|
9
10
|
//# sourceMappingURL=config.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.test.js","sourceRoot":"","sources":["../../src/__tests__/config.test.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"config.test.js","sourceRoot":"","sources":["../../src/__tests__/config.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;QAC3B,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import assert from 'node:assert';
|
|
2
|
+
import { describe, it } from 'node:test';
|
|
1
3
|
import { GoogleTms, Nztm2000QuadTms, Projection } from '@basemaps/geo';
|
|
2
|
-
import o from 'ospec';
|
|
3
4
|
import { projectGeoJson } from '../tile.matrix.js';
|
|
4
5
|
/** This feautre is located in tile x:237, y:278, z:9 of NZTM2000Quad see ./NZTMTileLocation.png for a reference picture */
|
|
5
6
|
const feature = {
|
|
@@ -26,8 +27,8 @@ const feature = {
|
|
|
26
27
|
},
|
|
27
28
|
],
|
|
28
29
|
};
|
|
29
|
-
|
|
30
|
-
|
|
30
|
+
describe('GeoJSONTransform', () => {
|
|
31
|
+
it('should convert to the right tile location', () => {
|
|
31
32
|
const newFeatures = JSON.parse(JSON.stringify(feature));
|
|
32
33
|
projectGeoJson(newFeatures, Nztm2000QuadTms);
|
|
33
34
|
const firstPoint = newFeatures.features[0].geometry.coordinates[0][0];
|
|
@@ -35,8 +36,8 @@ o.spec('GeoJSONTransform', () => {
|
|
|
35
36
|
const proj = Projection.get(GoogleTms).fromWgs84(firstPoint);
|
|
36
37
|
const pixels = GoogleTms.sourceToPixels(proj[0], proj[1], 9);
|
|
37
38
|
const tile = { x: pixels.x / GoogleTms.tileSize, y: pixels.y / GoogleTms.tileSize };
|
|
38
|
-
|
|
39
|
-
|
|
39
|
+
assert.equal(tile.x.toFixed(2), '237.11');
|
|
40
|
+
assert.equal(tile.y.toFixed(2), '278.69');
|
|
40
41
|
});
|
|
41
42
|
});
|
|
42
43
|
//# sourceMappingURL=geojson.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geojson.test.js","sourceRoot":"","sources":["../../src/__tests__/geojson.test.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"geojson.test.js","sourceRoot":"","sources":["../../src/__tests__/geojson.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEvE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,4HAA4H;AAC5H,MAAM,OAAO,GAAG;IACd,IAAI,EAAE,mBAAmB;IACzB,QAAQ,EAAE;QACR;YACE,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE;oBACX;wBACE,CAAC,kBAAkB,EAAE,CAAC,iBAAiB,CAAC;wBACxC,CAAC,kBAAkB,EAAE,CAAC,kBAAkB,CAAC;wBACzC,CAAC,kBAAkB,EAAE,CAAC,iBAAiB,CAAC;wBACxC,CAAC,kBAAkB,EAAE,CAAC,iBAAiB,CAAC;wBACxC,CAAC,kBAAkB,EAAE,CAAC,iBAAiB,CAAC;qBACzC;iBACF;aACF;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,mDAAmD;aAC1D;YACD,IAAI,EAAE,CAAC,kBAAkB,EAAE,CAAC,iBAAiB,EAAE,kBAAkB,EAAE,CAAC,iBAAiB,CAAC;SACvF;KACF;CACF,CAAC;AAEF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QACxD,cAAc,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QAE7C,MAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEtE,0DAA0D;QAC1D,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAE7D,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;QAEpF,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC1C,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,119 +1,120 @@
|
|
|
1
|
+
import assert from 'node:assert';
|
|
2
|
+
import { afterEach, beforeEach, describe, it } from 'node:test';
|
|
1
3
|
import { GoogleTms, Nztm2000QuadTms, Nztm2000Tms } from '@basemaps/geo';
|
|
2
|
-
import o from 'ospec';
|
|
3
4
|
import { Config } from '../config.js';
|
|
4
5
|
import { MapConfig } from '../config.map.js';
|
|
5
6
|
import { WindowUrl } from '../url.js';
|
|
6
|
-
|
|
7
|
+
describe('WindowUrl', () => {
|
|
7
8
|
const mc = new MapConfig();
|
|
8
|
-
|
|
9
|
+
beforeEach(() => {
|
|
9
10
|
global.window = { location: { origin: 'https://basemaps.linz.govt.nz' } };
|
|
10
11
|
});
|
|
11
|
-
|
|
12
|
+
afterEach(() => {
|
|
12
13
|
delete global.window;
|
|
13
14
|
});
|
|
14
|
-
|
|
15
|
+
it('should extract default information', () => {
|
|
15
16
|
mc.updateFromUrl('');
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
17
|
+
assert.equal(mc.tileMatrix, GoogleTms);
|
|
18
|
+
assert.equal(mc.layerId, 'aerial');
|
|
19
|
+
assert.equal(mc.style, null);
|
|
20
|
+
assert.equal(mc.isDebug, false);
|
|
21
|
+
assert.equal(mc.config, null);
|
|
21
22
|
});
|
|
22
|
-
|
|
23
|
+
it('should support "tileMatrix"', () => {
|
|
23
24
|
mc.updateFromUrl('?tileMatrix=nztm2000quad');
|
|
24
|
-
|
|
25
|
+
assert.equal(mc.tileMatrix, Nztm2000QuadTms);
|
|
25
26
|
});
|
|
26
|
-
|
|
27
|
+
it('should support config locations', () => {
|
|
27
28
|
mc.updateFromUrl('?config=s3://linz-basemaps/config/bar.json');
|
|
28
|
-
|
|
29
|
+
assert.equal(mc.config, 's3://linz-basemaps/config/bar.json');
|
|
29
30
|
});
|
|
30
|
-
|
|
31
|
+
it('should support vector tiles', () => {
|
|
31
32
|
mc.updateFromUrl('?i=topographic');
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
assert.equal(mc.tileMatrix, GoogleTms);
|
|
34
|
+
assert.equal(mc.layerId, 'topographic');
|
|
35
|
+
assert.equal(mc.style, 'topographic');
|
|
36
|
+
assert.equal(mc.isDebug, false);
|
|
36
37
|
});
|
|
37
|
-
|
|
38
|
+
it('should support NZTM tiles', () => {
|
|
38
39
|
mc.updateFromUrl('?p=2193');
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
40
|
+
assert.equal(mc.tileMatrix, Nztm2000QuadTms);
|
|
41
|
+
assert.equal(mc.layerId, 'aerial');
|
|
42
|
+
assert.equal(mc.style, null);
|
|
43
|
+
assert.equal(mc.isDebug, false);
|
|
43
44
|
});
|
|
44
|
-
|
|
45
|
+
it('should support basic', () => {
|
|
45
46
|
mc.updateFromUrl('?i=abc123&s=basic&p=2193&d=true&debug');
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
47
|
+
assert.equal(mc.tileMatrix, Nztm2000QuadTms);
|
|
48
|
+
assert.equal(mc.layerId, 'abc123');
|
|
49
|
+
assert.equal(mc.style, 'basic');
|
|
50
|
+
assert.equal(mc.isDebug, true);
|
|
50
51
|
});
|
|
51
|
-
|
|
52
|
+
it('should extract tile matrix information', () => {
|
|
52
53
|
mc.updateFromUrl('?i=abc123&p=nztm2000&d=true&debug=yes');
|
|
53
|
-
|
|
54
|
+
assert.equal(mc.tileMatrix, Nztm2000QuadTms);
|
|
54
55
|
mc.updateFromUrl('?i=abc123&p=nztm2000quad&d=true&debug=yes');
|
|
55
|
-
|
|
56
|
+
assert.equal(mc.tileMatrix, Nztm2000QuadTms);
|
|
56
57
|
mc.updateFromUrl('?i=abc123&s=basic&p=NZTM2000Quad&d=true&debug=yes');
|
|
57
|
-
|
|
58
|
+
assert.equal(mc.tileMatrix, Nztm2000QuadTms);
|
|
58
59
|
});
|
|
59
|
-
|
|
60
|
+
it('should extract dateRange', () => {
|
|
60
61
|
mc.updateFromUrl('?i=abc123&p=nztm2000&d=true&debug=yes&date[before]=1975-12-31T23:59:59.999Z');
|
|
61
|
-
|
|
62
|
+
assert.equal(mc.filter.date.before, '1975-12-31T23:59:59.999Z');
|
|
62
63
|
mc.updateFromUrl('?date[after]=1952-01-01T00:00:00.000Z&date[before]=1975-12-31T23:59:59.999Z');
|
|
63
|
-
|
|
64
|
+
assert.equal(mc.filter.date.before, '1975-12-31T23:59:59.999Z');
|
|
64
65
|
mc.updateFromUrl('?date%5Bafter%5D=1952-01-01T00%3A00%3A00.000Z&date%5Bbefore%5D=1975-12-31T23%3A59%3A59.999Z');
|
|
65
|
-
|
|
66
|
+
assert.equal(mc.filter.date.before, '1975-12-31T23:59:59.999Z');
|
|
66
67
|
});
|
|
67
|
-
|
|
68
|
+
it('should resolve the invalid dateRange', () => {
|
|
68
69
|
mc.updateFromUrl('?i=abc123&p=nztm2000&d=true&debug=yes&date[before]=1949-12-31T23:59:59.999Z');
|
|
69
|
-
|
|
70
|
+
assert.equal(mc.filter.date.before, undefined);
|
|
70
71
|
mc.updateFromUrl('?date[before]=2099-12-31T23:59:59.999Z');
|
|
71
|
-
|
|
72
|
+
assert.equal(mc.filter.date.before, undefined);
|
|
72
73
|
});
|
|
73
|
-
|
|
74
|
+
it('should convert to a url', () => {
|
|
74
75
|
const apiKey = Config.ApiKey;
|
|
75
76
|
mc.updateFromUrl('');
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
77
|
+
assert.equal(mc.toTileUrl("raster" /* MapOptionType.TileRaster */), `https://basemaps.linz.govt.nz/v1/tiles/aerial/WebMercatorQuad/{z}/{x}/{y}.png?api=${apiKey}`);
|
|
78
|
+
assert.equal(mc.toTileUrl("wmts" /* MapOptionType.Wmts */), `https://basemaps.linz.govt.nz/v1/tiles/aerial/WebMercatorQuad/WMTSCapabilities.xml?api=${apiKey}`);
|
|
79
|
+
assert.equal(mc.toTileUrl("tile-wmts" /* MapOptionType.TileWmts */), `https://basemaps.linz.govt.nz/v1/tiles/aerial/WebMercatorQuad/{TileMatrix}/{TileCol}/{TileRow}.png?api=${apiKey}`);
|
|
79
80
|
});
|
|
80
|
-
|
|
81
|
+
it('should use default epsg codes for urls', () => {
|
|
81
82
|
const apiKey = Config.ApiKey;
|
|
82
83
|
mc.updateFromUrl('');
|
|
83
|
-
|
|
84
|
+
assert.equal(mc.toTileUrl("raster" /* MapOptionType.TileRaster */), `https://basemaps.linz.govt.nz/v1/tiles/aerial/WebMercatorQuad/{z}/{x}/{y}.png?api=${apiKey}`);
|
|
84
85
|
mc.tileMatrix = Nztm2000Tms;
|
|
85
|
-
|
|
86
|
+
assert.equal(mc.toTileUrl("raster" /* MapOptionType.TileRaster */), `https://basemaps.linz.govt.nz/v1/tiles/aerial/NZTM2000/{z}/{x}/{y}.png?api=${apiKey}`);
|
|
86
87
|
mc.tileMatrix = Nztm2000QuadTms;
|
|
87
|
-
|
|
88
|
+
assert.equal(mc.toTileUrl("raster" /* MapOptionType.TileRaster */), `https://basemaps.linz.govt.nz/v1/tiles/aerial/NZTM2000Quad/{z}/{x}/{y}.png?api=${apiKey}`);
|
|
88
89
|
});
|
|
89
|
-
|
|
90
|
+
it('should convert to a url with baseUrl', () => {
|
|
90
91
|
const apiKey = Config.ApiKey;
|
|
91
92
|
mc.updateFromUrl('');
|
|
92
|
-
process.env
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
93
|
+
process.env['TILE_HOST'] = 'https://foo.bar.com';
|
|
94
|
+
assert.equal(mc.toTileUrl("raster" /* MapOptionType.TileRaster */), `https://foo.bar.com/v1/tiles/aerial/WebMercatorQuad/{z}/{x}/{y}.png?api=${apiKey}`);
|
|
95
|
+
assert.equal(mc.toTileUrl("wmts" /* MapOptionType.Wmts */), `https://foo.bar.com/v1/tiles/aerial/WebMercatorQuad/WMTSCapabilities.xml?api=${apiKey}`);
|
|
96
|
+
assert.equal(mc.toTileUrl("tile-wmts" /* MapOptionType.TileWmts */), `https://foo.bar.com/v1/tiles/aerial/WebMercatorQuad/{TileMatrix}/{TileCol}/{TileRow}.png?api=${apiKey}`);
|
|
96
97
|
WindowUrl.ImageFormat = 'webp';
|
|
97
|
-
|
|
98
|
+
assert.equal(mc.toTileUrl("tile-wmts" /* MapOptionType.TileWmts */), `https://foo.bar.com/v1/tiles/aerial/WebMercatorQuad/{TileMatrix}/{TileCol}/{TileRow}.webp?api=${apiKey}`);
|
|
98
99
|
WindowUrl.ImageFormat = 'png';
|
|
99
|
-
delete process.env
|
|
100
|
+
delete process.env['TILE_HOST'];
|
|
100
101
|
});
|
|
101
|
-
|
|
102
|
+
it('should include config in all requests', () => {
|
|
102
103
|
const apiKey = Config.ApiKey;
|
|
103
104
|
mc.updateFromUrl('?config=s3://linz-basemaps/config.json');
|
|
104
|
-
process.env
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
105
|
+
process.env['TILE_HOST'] = 'https://foo.bar.com';
|
|
106
|
+
assert.equal(mc.toTileUrl("raster" /* MapOptionType.TileRaster */), `https://foo.bar.com/v1/tiles/aerial/WebMercatorQuad/{z}/{x}/{y}.png?api=${apiKey}&config=Q5pC4UjWdtFLU1CYtLcRSmB49RekgDgMa5EGJnB2M`);
|
|
107
|
+
assert.equal(mc.toTileUrl("vector-xyz" /* MapOptionType.TileVectorXyz */), `https://foo.bar.com/v1/tiles/aerial/WebMercatorQuad/{z}/{x}/{y}.pbf?api=${apiKey}&config=Q5pC4UjWdtFLU1CYtLcRSmB49RekgDgMa5EGJnB2M`);
|
|
108
|
+
assert.equal(mc.toTileUrl("attribution" /* MapOptionType.Attribution */), `https://foo.bar.com/v1/tiles/aerial/WebMercatorQuad/attribution.json?api=${apiKey}&config=Q5pC4UjWdtFLU1CYtLcRSmB49RekgDgMa5EGJnB2M`);
|
|
109
|
+
assert.equal(mc.toTileUrl("wmts" /* MapOptionType.Wmts */), `https://foo.bar.com/v1/tiles/aerial/WebMercatorQuad/WMTSCapabilities.xml?api=${apiKey}&config=Q5pC4UjWdtFLU1CYtLcRSmB49RekgDgMa5EGJnB2M`);
|
|
109
110
|
WindowUrl.ImageFormat = 'png';
|
|
110
|
-
|
|
111
|
+
assert.equal(mc.toTileUrl("style" /* MapOptionType.Style */), `https://foo.bar.com/v1/styles/aerial.json?api=${apiKey}&config=Q5pC4UjWdtFLU1CYtLcRSmB49RekgDgMa5EGJnB2M&format=png`);
|
|
111
112
|
});
|
|
112
|
-
|
|
113
|
+
it('should remove im_ prefix from imagery', () => {
|
|
113
114
|
mc.updateFromUrl('i=im_01EDA2YFXH2JN264VG1HKBT625');
|
|
114
|
-
|
|
115
|
+
assert.equal(mc.layerId, '01EDA2YFXH2JN264VG1HKBT625');
|
|
115
116
|
mc.updateFromUrl('i=01EDA2YFXH2JN264VG1HKBT625');
|
|
116
|
-
|
|
117
|
+
assert.equal(mc.layerId, '01EDA2YFXH2JN264VG1HKBT625');
|
|
117
118
|
});
|
|
118
119
|
});
|
|
119
120
|
//# sourceMappingURL=map.config.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map.config.test.js","sourceRoot":"","sources":["../../src/__tests__/map.config.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"map.config.test.js","sourceRoot":"","sources":["../../src/__tests__/map.config.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAEhE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAExE,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAiB,SAAS,EAAE,MAAM,WAAW,CAAC;AAMrD,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACzB,MAAM,EAAE,GAAG,IAAI,SAAS,EAAE,CAAC;IAC3B,UAAU,CAAC,GAAG,EAAE;QACd,MAAM,CAAC,MAAM,GAAG,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,+BAA+B,EAAE,EAAE,CAAC;IAC5E,CAAC,CAAC,CAAC;IACH,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,MAAM,CAAC,MAAM,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACrB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QACvC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAChC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,EAAE,CAAC,aAAa,CAAC,0BAA0B,CAAC,CAAC;QAC7C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,EAAE,CAAC,aAAa,CAAC,4CAA4C,CAAC,CAAC;QAC/D,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,oCAAoC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,EAAE,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QACvC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QACxC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QACtC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAC5B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QAC7C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sBAAsB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,aAAa,CAAC,uCAAuC,CAAC,CAAC;QAC1D,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QAC7C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAChC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,EAAE,CAAC,aAAa,CAAC,uCAAuC,CAAC,CAAC;QAC1D,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QAC7C,EAAE,CAAC,aAAa,CAAC,2CAA2C,CAAC,CAAC;QAC9D,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QAC7C,EAAE,CAAC,aAAa,CAAC,mDAAmD,CAAC,CAAC;QACtE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,EAAE,CAAC,aAAa,CAAC,6EAA6E,CAAC,CAAC;QAChG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;QAChE,EAAE,CAAC,aAAa,CAAC,6EAA6E,CAAC,CAAC;QAChG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;QAChE,EAAE,CAAC,aAAa,CAAC,6FAA6F,CAAC,CAAC;QAChH,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,EAAE,CAAC,aAAa,CAAC,6EAA6E,CAAC,CAAC;QAChG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC/C,EAAE,CAAC,aAAa,CAAC,wCAAwC,CAAC,CAAC;QAC3D,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACjC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC7B,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QAErB,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,yCAA0B,EACtC,qFAAqF,MAAM,EAAE,CAC9F,CAAC;QACF,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,iCAAoB,EAChC,0FAA0F,MAAM,EAAE,CACnG,CAAC;QACF,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,0CAAwB,EACpC,0GAA0G,MAAM,EAAE,CACnH,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC7B,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QAErB,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,yCAA0B,EACtC,qFAAqF,MAAM,EAAE,CAC9F,CAAC;QACF,EAAE,CAAC,UAAU,GAAG,WAAW,CAAC;QAC5B,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,yCAA0B,EACtC,8EAA8E,MAAM,EAAE,CACvF,CAAC;QACF,EAAE,CAAC,UAAU,GAAG,eAAe,CAAC;QAChC,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,yCAA0B,EACtC,kFAAkF,MAAM,EAAE,CAC3F,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC7B,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QAErB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,qBAAqB,CAAC;QACjD,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,yCAA0B,EACtC,2EAA2E,MAAM,EAAE,CACpF,CAAC;QACF,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,iCAAoB,EAChC,gFAAgF,MAAM,EAAE,CACzF,CAAC;QACF,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,0CAAwB,EACpC,gGAAgG,MAAM,EAAE,CACzG,CAAC;QAEF,SAAS,CAAC,WAAW,GAAG,MAAM,CAAC;QAC/B,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,0CAAwB,EACpC,iGAAiG,MAAM,EAAE,CAC1G,CAAC;QACF,SAAS,CAAC,WAAW,GAAG,KAAK,CAAC;QAC9B,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAE7B,EAAE,CAAC,aAAa,CAAC,wCAAwC,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,qBAAqB,CAAC;QAEjD,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,yCAA0B,EACtC,2EAA2E,MAAM,mDAAmD,CACrI,CAAC;QACF,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,gDAA6B,EACzC,2EAA2E,MAAM,mDAAmD,CACrI,CAAC;QACF,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,+CAA2B,EACvC,4EAA4E,MAAM,mDAAmD,CACtI,CAAC;QACF,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,iCAAoB,EAChC,gFAAgF,MAAM,mDAAmD,CAC1I,CAAC;QAEF,SAAS,CAAC,WAAW,GAAG,KAAK,CAAC;QAC9B,MAAM,CAAC,KAAK,CACV,EAAE,CAAC,SAAS,mCAAqB,EACjC,iDAAiD,MAAM,8DAA8D,CACtH,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,EAAE,CAAC,aAAa,CAAC,iCAAiC,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,4BAA4B,CAAC,CAAC;QAEvD,EAAE,CAAC,aAAa,CAAC,8BAA8B,CAAC,CAAC;QACjD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,4BAA4B,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,30 +1,31 @@
|
|
|
1
|
+
import assert from 'node:assert';
|
|
2
|
+
import { describe, it } from 'node:test';
|
|
1
3
|
import { GoogleTms, Nztm2000QuadTms, Nztm2000Tms } from '@basemaps/geo';
|
|
2
|
-
import o from 'ospec';
|
|
3
4
|
import { locationTransform } from '../tile.matrix.js';
|
|
4
|
-
|
|
5
|
+
describe('locationTransform', () => {
|
|
5
6
|
const Precision = 10 ** 8;
|
|
6
|
-
|
|
7
|
+
it('should return the same google coordinate', () => {
|
|
7
8
|
const location = { lat: -41.2953946, lon: 174.7812425, zoom: 15.5128 };
|
|
8
|
-
|
|
9
|
+
assert.deepEqual(location, locationTransform(location, GoogleTms, GoogleTms));
|
|
9
10
|
});
|
|
10
|
-
|
|
11
|
+
it('should return get the nztm location', () => {
|
|
11
12
|
const location = { lat: -41.29539461, lon: 174.78124251, zoom: 15.5128 };
|
|
12
13
|
const nztmLocation = locationTransform(location, Nztm2000QuadTms, GoogleTms);
|
|
13
|
-
|
|
14
|
+
assert.deepEqual(nztmLocation, { lon: 0.01247576, lat: -0.0680115, zoom: 15.5128 });
|
|
14
15
|
});
|
|
15
|
-
|
|
16
|
+
it('should return Transform Back', () => {
|
|
16
17
|
const location = { lat: -41.29539461, lon: 174.78124251, zoom: 15.5128 };
|
|
17
18
|
const nztmLocation = locationTransform(location, Nztm2000QuadTms, GoogleTms);
|
|
18
19
|
const back = locationTransform(nztmLocation, GoogleTms, Nztm2000QuadTms);
|
|
19
|
-
|
|
20
|
+
assert.deepEqual(location, {
|
|
20
21
|
lon: Math.round(back.lon * Precision) / Precision,
|
|
21
22
|
lat: Math.round(back.lat * Precision) / Precision,
|
|
22
23
|
zoom: back.zoom,
|
|
23
24
|
});
|
|
24
25
|
});
|
|
25
|
-
|
|
26
|
+
it('should not convert between non google tms', () => {
|
|
26
27
|
const location = { lat: -41.29539461, lon: 174.78124251, zoom: 15.5128 };
|
|
27
|
-
|
|
28
|
+
assert.throws(() => locationTransform(location, Nztm2000QuadTms, Nztm2000Tms), Error);
|
|
28
29
|
});
|
|
29
30
|
});
|
|
30
31
|
//# sourceMappingURL=tile.matrix.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tile.matrix.test.js","sourceRoot":"","sources":["../../src/__tests__/tile.matrix.test.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"tile.matrix.test.js","sourceRoot":"","sources":["../../src/__tests__/tile.matrix.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAExE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,MAAM,SAAS,GAAG,EAAE,IAAI,CAAC,CAAC;IAE1B,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QACvE,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QACzE,MAAM,YAAY,GAAG,iBAAiB,CAAC,QAAQ,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC;QAC7E,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACtF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACtC,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QACzE,MAAM,YAAY,GAAG,iBAAiB,CAAC,QAAQ,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC;QAC7E,MAAM,IAAI,GAAG,iBAAiB,CAAC,YAAY,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;QACzE,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE;YACzB,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,SAAS;YACjD,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,SAAS;YACjD,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QACzE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,QAAQ,EAAE,eAAe,EAAE,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;IACxF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/build/attribution.d.ts
CHANGED
|
@@ -23,17 +23,19 @@ export declare const MapAttrState: MapAttributionState;
|
|
|
23
23
|
/**
|
|
24
24
|
* Handles displaying attributions for the OpenLayers interface
|
|
25
25
|
*/
|
|
26
|
-
export declare class MapAttribution {
|
|
27
|
-
map: maplibregl.Map;
|
|
26
|
+
export declare class MapAttribution implements maplibre.IControl {
|
|
28
27
|
/** handle for scheduleRender setTimeout */
|
|
29
28
|
private _scheduled;
|
|
30
29
|
/** handle for scheduleRender requestAnimationFrame */
|
|
31
30
|
private _raf;
|
|
32
|
-
attributionHtml: string;
|
|
33
31
|
bounds: maplibre.LngLatBounds;
|
|
34
32
|
zoom: number;
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
attrHtml: HTMLDivElement;
|
|
34
|
+
attrContainer: HTMLDivElement;
|
|
35
|
+
map?: maplibre.Map;
|
|
36
|
+
constructor();
|
|
37
|
+
onAdd(map: maplibre.Map): HTMLElement;
|
|
38
|
+
onRemove(map: maplibre.Map): void;
|
|
37
39
|
_events: (() => boolean)[];
|
|
38
40
|
/**
|
|
39
41
|
* Trigger an attribution text update.
|
|
@@ -48,14 +50,9 @@ export declare class MapAttribution {
|
|
|
48
50
|
* Only update attributions at most every 200ms
|
|
49
51
|
*/
|
|
50
52
|
private scheduleRender;
|
|
51
|
-
removeAttribution(): void;
|
|
52
53
|
/**
|
|
53
54
|
* Set the attribution text if needed
|
|
54
55
|
*/
|
|
55
56
|
renderAttribution: () => void;
|
|
56
|
-
|
|
57
|
-
* Add attribution for vector map
|
|
58
|
-
*/
|
|
59
|
-
vectorAttribution(): void;
|
|
57
|
+
setAttribution(text: string): void;
|
|
60
58
|
}
|
|
61
|
-
//# sourceMappingURL=attribution.d.ts.map
|