@fusion.dev/helix-map 0.207.0 → 0.207.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.
@@ -64,8 +64,9 @@ export interface MapSnapshot {
64
64
  credit: CreditPart[];
65
65
  /**
66
66
  * The picture, then the credit in the frame's `attribution` slot, as markup
67
- * to write in the frame after the element the renderer draws in. An empty
68
- * string where the snapshot could not be drawn.
67
+ * to write in the frame after the element the renderer draws in. The credit
68
+ * alone where the picture could not be drawn and the tiles' TileJSON was
69
+ * read, and an empty string where neither is known.
69
70
  */
70
71
  markup: string;
71
72
  /** The picture alone, as markup. An empty string where it could not be drawn. */
@@ -97,11 +98,19 @@ export interface MapSnapshot {
97
98
  * `connectMap` hides it once the renderer's credit is written, or at once
98
99
  * where the page slotted its own.
99
100
  *
100
- * **Whole or nothing.** Holds empty strings where any tile the view needs
101
- * cannot be read in time, or the view is not numbers, which a page renders
102
- * as nothing and the renderer then draws. A snapshot with a tile missing
103
- * looks finished and is not, and one that waited on a slow server held the
104
- * page: each request is given `timeout` milliseconds. A tile the server says
105
- * it does not have, a 404, is drawn empty, as the sea is.
101
+ * **The picture is whole or nothing.** `picture` is an empty string where
102
+ * any tile the view needs cannot be read in time, or the view is not
103
+ * numbers, which a page renders as nothing and the renderer then draws. A
104
+ * snapshot with a tile missing looks finished and is not, and one that waited
105
+ * on a slow server held the page: each request is given `timeout`
106
+ * milliseconds. A tile the server says it does not have, a 404, is drawn
107
+ * empty, as the sea is.
108
+ *
109
+ * **The credit outlives a missing tile.** It is read from the TileJSON before
110
+ * any tile is asked for, so a tile that fails costs the picture and keeps
111
+ * the credit, and `markup` is then the credit alone. A page that wrote
112
+ * nothing for a failed picture showed the map with no credit until the
113
+ * renderer read its own, and a page that never loads one, never. Cache only a
114
+ * snapshot whose `picture` is not empty.
106
115
  */
107
116
  export declare const mapSnapshot: (asked: MapView, options?: SnapshotOptions) => Promise<MapSnapshot>;
@@ -312,7 +312,7 @@ export const mapSnapshot = async (asked, options = {}) => {
312
312
  }
313
313
  }
314
314
  if (!whole) {
315
- return nothing();
315
+ return { credit, markup: creditMarkup(credit), picture: '' };
316
316
  }
317
317
  const body = shown
318
318
  .map((layer) => {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@fusion.dev/helix-map",
3
3
  "description": "Connects the Helix Map frame to a map renderer: MapLibre, Leaflet, or a driver of your own.",
4
- "version": "0.207.0",
4
+ "version": "0.207.2",
5
5
  "license": "MIT",
6
6
  "author": "Ross Sheppard <ross.sheppard@fusion.dev>",
7
7
  "repository": {
@@ -44,14 +44,14 @@
44
44
  },
45
45
  "bugs": "https://github.com/project-fusion/fusion/issues",
46
46
  "dependencies": {
47
- "@fusion.dev/helix-core": "0.207.0",
48
- "@fusion.dev/helix-icons": "0.207.0",
47
+ "@fusion.dev/helix-core": "0.207.2",
48
+ "@fusion.dev/helix-icons": "0.207.2",
49
49
  "@mapbox/vector-tile": "^3.0.0",
50
50
  "pbf": "^5.1.2"
51
51
  },
52
52
  "devDependencies": {
53
- "@fusion.dev/helix-headless": "0.207.0",
54
- "@fusion.dev/helix-testing": "0.207.0",
53
+ "@fusion.dev/helix-headless": "0.207.2",
54
+ "@fusion.dev/helix-testing": "0.207.2",
55
55
  "@maplibre/maplibre-gl-style-spec": "^26.4.4",
56
56
  "@types/bun": "^1.4.2",
57
57
  "@types/leaflet": "^1.9.20",