@basemaps/server 8.6.0 → 8.10.2

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.
@@ -1,46 +1,56 @@
1
- import { ConfigProviderMemory, getAllImagery, } from '@basemaps/config';
2
- import { Epsg, GoogleTms, TileMatrixSets } from '@basemaps/geo';
1
+ import { ConfigProviderMemory } from '@basemaps/config';
2
+ import { GoogleTms, TileMatrixSets } from '@basemaps/geo';
3
3
  import { getPreviewUrl, V } from '@basemaps/shared';
4
+ async function getAllImagery(cfg) {
5
+ const allImagery = [];
6
+ if (ConfigProviderMemory.is(cfg)) {
7
+ for (const obj of cfg.objects.values())
8
+ if (cfg.Imagery.is(obj))
9
+ allImagery.push(obj);
10
+ }
11
+ return Promise.resolve(allImagery);
12
+ }
4
13
  export async function createLayersHtml(mem) {
5
- const allLayers = await Promise.all([mem.TileSet.get('ts_all'), mem.TileSet.get('ts_elevation')]);
6
- const allSourceLayers = allLayers.flatMap((m) => m?.layers).filter(Boolean);
7
- if (allSourceLayers == null)
8
- return 'No layers found.';
9
- const allImagery = await getAllImagery(mem, allSourceLayers, [...Epsg.Codes.values()]);
14
+ const allImagery = await getAllImagery(mem);
15
+ if (allImagery.length === 0)
16
+ return 'No imagery found';
17
+ allImagery.sort((a, b) => a.title.localeCompare(b.title));
18
+ const showPreview = allImagery.length < 10;
10
19
  const cards = [];
11
- const layers = [...allImagery.values()].sort((a, b) => a.title.localeCompare(b.title));
12
- const showPreview = allImagery.size < 10;
13
- for (const img of layers) {
20
+ for (const img of allImagery) {
14
21
  let tileMatrix = TileMatrixSets.find(img.tileMatrix);
15
22
  if (tileMatrix == null)
16
23
  tileMatrix = GoogleTms;
17
24
  const ts = ConfigProviderMemory.imageryToTileSet(img);
18
- const output = ts.outputs?.find((f) => f.format == null || f.format.includes('webp'));
19
- const ret = getPreviewUrl({ imagery: img, pipeline: output?.name });
20
- const els = [
21
- V('div', { class: `layer-header`, style: 'display:flex; justify-content: space-around;' }, [
22
- V('div', { class: 'layer-title' }, img.title),
23
- V('div', { class: 'layer-tile-matrix' }, `TileMatrix: ${img.tileMatrix}`),
24
- V('div', { class: 'layer-tile-epsg' }, tileMatrix.projection.toEpsgString()),
25
- ]),
26
- ];
27
- if (showPreview)
28
- els.push(V('img', { width: '600px', height: '315px', src: ret.url }));
29
- cards.push(V('a', {
30
- class: `layer layer-${img.id}`,
31
- href: `/${ret.slug}?tileMatrix=${tileMatrix.identifier}&style=${ret.name}`,
32
- }, els));
25
+ for (const o of ts.outputs ?? []) {
26
+ const ret = getPreviewUrl({ imagery: img, pipeline: o.name });
27
+ const els = [
28
+ V('div', { class: `layer-header`, style: 'display:flex; justify-content: space-around;' }, [
29
+ V('div', { class: 'layer-title' }, img.title),
30
+ V('div', { class: 'layer-tile-matrix' }, `TileMatrix: ${img.tileMatrix}`),
31
+ V('div', { class: 'layer-tile-epsg' }, tileMatrix.projection.toEpsgString()),
32
+ ]),
33
+ ];
34
+ if (showPreview)
35
+ els.push(V('img', { width: '600px', height: '315px', src: ret.url }));
36
+ cards.push(V('a', {
37
+ class: `layer layer-${img.id}`,
38
+ href: `/${ret.slug}?tileMatrix=${tileMatrix.identifier}&style=${ret.name}&pipeline=${o.name}`,
39
+ }, els));
40
+ }
33
41
  }
34
42
  const style = `
35
43
  body {
36
44
  font-family: 'Fira Sans', 'Open Sans';
37
45
  }
46
+ .layer-grid {
47
+ display: flex;
48
+ flex-wrap: wrap;
49
+ gap: 1rem;
50
+ padding: 1rem;
51
+ }
38
52
  .layer {
39
- margin: auto;
40
- margin-top: 32px;
41
53
  width: 600px;
42
- display: flex;
43
- flex-direction: column;
44
54
  padding: 16px;
45
55
  box-shadow: 0px 2px 3px 0px rgba(0,0,0,.2509803922), 0px 0px 3px 0px rgba(0,0,0,.1490196078);
46
56
  }
@@ -53,13 +63,13 @@ body {
53
63
  padding-bottom: 16px;
54
64
  display: flex;
55
65
  flex-direction: column;
56
- line-height: 1.5em;
66
+ line-height: 1.5rem;
57
67
  }
58
68
  .layer-title {
59
69
  font-weight: bold;
60
70
  }
61
71
  `;
62
- return V('html', [V('head', [V('style', '__STYLE_TEXT__')]), V('body', cards)])
72
+ return V('html', [V('head', [V('style', '__STYLE_TEXT__')]), V('body', [V('div', { class: 'layer-grid' }, cards)])])
63
73
  .toString()
64
74
  .replace('__STYLE_TEXT__', style); // CSS gets escaped be escaped
65
75
  }
@@ -1 +1 @@
1
- {"version":3,"file":"route.layers.js","sourceRoot":"","sources":["../src/route.layers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"route.layers.js","sourceRoot":"","sources":["../src/route.layers.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@basemaps/server",
3
- "version": "8.6.0",
3
+ "version": "8.10.2",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/linz/basemaps.git",
@@ -19,7 +19,7 @@
19
19
  "main": "./build/index.js",
20
20
  "types": "./build/index.d.ts",
21
21
  "scripts": {
22
- "test": "node --test",
22
+ "test": "node --test \"build/**/*.test.js\"",
23
23
  "bundle": "../../scripts/bundle.mjs package.json"
24
24
  },
25
25
  "publishConfig": {
@@ -45,24 +45,24 @@
45
45
  "bin/"
46
46
  ],
47
47
  "optionalDependencies": {
48
- "@basemaps/landing": "^7.0.0"
48
+ "@basemaps/landing": "^8.11.0"
49
49
  },
50
50
  "dependencies": {
51
51
  "lerc": "^4.0.4",
52
52
  "sharp": "^0.33.0"
53
53
  },
54
54
  "devDependencies": {
55
- "@basemaps/config": "^8.6.0",
56
- "@basemaps/config-loader": "^8.6.0",
57
- "@basemaps/geo": "^8.3.0",
58
- "@basemaps/lambda-tiler": "^8.6.0",
59
- "@basemaps/landing": "^6.39.0",
60
- "@basemaps/shared": "^8.6.0",
55
+ "@basemaps/config": "^8.10.1",
56
+ "@basemaps/config-loader": "^8.10.1",
57
+ "@basemaps/geo": "^8.9.0",
58
+ "@basemaps/lambda-tiler": "^8.10.1",
59
+ "@basemaps/landing": "^8.11.0",
60
+ "@basemaps/shared": "^8.9.2",
61
61
  "@fastify/formbody": "^7.0.1",
62
62
  "@fastify/static": "^6.5.0",
63
63
  "cmd-ts": "^0.12.1",
64
64
  "fastify": "^4.9.2",
65
65
  "pretty-json-log": "^1.0.0"
66
66
  },
67
- "gitHead": "bd34894f26d1c7827503e0cb9d48d0773ecd6775"
67
+ "gitHead": "5a1984ab0e9b3939aab0db451d2f5e7aee1919af"
68
68
  }