vibeglobe 0.3.0-rc.2 → 0.3.0-rc.3
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/core/dist/globe/imagery-layers.d.ts.map +1 -1
- package/core/dist/globe/imagery-layers.js +6 -3
- package/core/dist/globe/imagery-layers.js.map +1 -1
- package/core/dist/globe/imagery-runtime.d.ts +3 -1
- package/core/dist/globe/imagery-runtime.d.ts.map +1 -1
- package/core/dist/globe/imagery-runtime.js +1 -0
- package/core/dist/globe/imagery-runtime.js.map +1 -1
- package/core/dist/imagery/imagery-stack.js +8 -4
- package/core/dist/imagery/imagery-stack.js.map +1 -1
- package/core/src/globe/imagery-layers.ts +6 -2
- package/core/src/globe/imagery-runtime.ts +2 -1
- package/core/src/imagery/imagery-stack.ts +7 -7
- package/offline/dist/idb-store.d.ts.map +1 -1
- package/offline/dist/idb-store.js +105 -42
- package/offline/dist/idb-store.js.map +1 -1
- package/offline/src/idb-store.ts +106 -36
- package/package.json +1 -1
- package/web-component/dist/browser/vibe-globe.js +10 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imagery-layers.d.ts","sourceRoot":"","sources":["../../src/globe/imagery-layers.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"imagery-layers.d.ts","sourceRoot":"","sources":["../../src/globe/imagery-layers.ts"],"names":[],"mappings":"AAGA,OAAO,EAOL,KAAK,aAAa,EAEnB,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,iEAAiE;AACjE,UAAU,aAAa;IACrB,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;IAC9C,kGAAkG;IAClG,cAAc,IAAI,IAAI,CAAC;CACxB;AAQD,sEAAsE;AACtE,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,aAAa,CAOnE"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { applyChanges, sourceInfo, validStack, } from '../imagery/imagery-stack.js';
|
|
1
|
+
import { applyChanges, pinnedLevels, sourceInfo, validStack, } from '../imagery/imagery-stack.js';
|
|
2
2
|
import { GlobeError, messageOf } from './errors.js';
|
|
3
3
|
/**
|
|
4
4
|
* The controllers of the globes' imagery, kept outside the per-frame classes: a field more on those changes how V8 lays
|
|
@@ -76,8 +76,11 @@ class ImageryLayersController {
|
|
|
76
76
|
const taken = entry.sources.find((source) => imagery.layers.some((layer) => layer.source.id === source.id));
|
|
77
77
|
if (taken)
|
|
78
78
|
throw new GlobeError('invalid-option', `An imagery source already has the id "${taken.id}"`);
|
|
79
|
-
|
|
80
|
-
|
|
79
|
+
// Its base is pinned as if it had been given at creation, after the layers already there (KB-347).
|
|
80
|
+
const stack = [...imagery.stack.map((layer) => layer.entry), entry];
|
|
81
|
+
const pinned = pinnedLevels(stack, imagery.residency.budgetBytes).slice(-entry.sources.length);
|
|
82
|
+
const chain = entry.sources.map((source, at) => {
|
|
83
|
+
const layer = imagery.newLayer(source, freeIndex(imagery), pinned[at] ?? -1);
|
|
81
84
|
imagery.layers.push(layer);
|
|
82
85
|
return layer;
|
|
83
86
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imagery-layers.js","sourceRoot":"","sources":["../../src/globe/imagery-layers.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"imagery-layers.js","sourceRoot":"","sources":["../../src/globe/imagery-layers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { FlightPlan } from './flight-preload.js';
|
|
2
2
|
import { type LoaderContext } from './loader-context.js';
|
|
3
3
|
import { type Observability, type PhaseTimer } from '../diagnostics/observability.js';
|
|
4
|
+
import { Residency } from '../cache/residency.hot.js';
|
|
4
5
|
import type { Camera } from '../camera/camera.js';
|
|
5
6
|
import { type ImageryLayer, type StackLayer } from '../imagery/imagery-draws.js';
|
|
6
7
|
import { type StackEntry } from '../imagery/imagery-stack.js';
|
|
@@ -65,7 +66,8 @@ export declare class ImageryRuntime {
|
|
|
65
66
|
readonly network: NetworkPool;
|
|
66
67
|
/** The engine's share of the page's worker pool (render extensions run their tasks on it too). */
|
|
67
68
|
readonly lease: WorkerPoolLease;
|
|
68
|
-
|
|
69
|
+
/** The GPU textures and their budget, shared by every layer (ADR 0007). */
|
|
70
|
+
readonly residency: Residency;
|
|
69
71
|
private readonly ram;
|
|
70
72
|
private frame;
|
|
71
73
|
private readonly fades;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imagery-runtime.d.ts","sourceRoot":"","sources":["../../src/globe/imagery-runtime.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAA+B,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,EAAkC,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"imagery-runtime.d.ts","sourceRoot":"","sources":["../../src/globe/imagery-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -80,6 +80,7 @@ export class ImageryRuntime {
|
|
|
80
80
|
network;
|
|
81
81
|
/** The engine's share of the page's worker pool (render extensions run their tasks on it too). */
|
|
82
82
|
lease;
|
|
83
|
+
/** The GPU textures and their budget, shared by every layer (ADR 0007). */
|
|
83
84
|
residency;
|
|
84
85
|
ram;
|
|
85
86
|
frame = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imagery-runtime.js","sourceRoot":"","sources":["../../src/globe/imagery-runtime.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"imagery-runtime.js","sourceRoot":"","sources":["../../src/globe/imagery-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -172,11 +172,15 @@ const MAX_PINNED_START = 8;
|
|
|
172
172
|
*/
|
|
173
173
|
export function pinnedLevels(entries, gpuBudgetBytes) {
|
|
174
174
|
const sources = entries.flatMap((entry) => entry.sources);
|
|
175
|
-
// One source of a chain pins a base, the later ones serving finer levels or standing in (F247): the
|
|
176
|
-
//
|
|
177
|
-
//
|
|
175
|
+
// One source of a chain pins a base, the later ones serving finer levels or standing in (F247): the one that starts
|
|
176
|
+
// coarsest, the first among equals, from its first level (F634). A chain over a world source from a regional one
|
|
177
|
+
// that starts deeper so pins the world's low levels (KB-218, KB-346).
|
|
178
178
|
const heads = entries.flatMap((entry) => {
|
|
179
|
-
|
|
179
|
+
let base = 0;
|
|
180
|
+
entry.sources.forEach((source, index) => {
|
|
181
|
+
if (source.minLevel < (entry.sources[base]?.minLevel ?? 0))
|
|
182
|
+
base = index;
|
|
183
|
+
});
|
|
180
184
|
return entry.sources.map((_, index) => index === base);
|
|
181
185
|
});
|
|
182
186
|
// A source starting deeper than this pins nothing: its first level has too many tiles to count, let alone pin.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imagery-stack.js","sourceRoot":"","sources":["../../src/imagery/imagery-stack.ts"],"names":[],"mappings":"AAAA,oHAAoH;AACpH,kFAAkF;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,mBAAmB,EAAE,aAAa,EAAsB,MAAM,qBAAqB,CAAC;AACrH,OAAO,EAAE,UAAU,IAAI,GAAG,EAAE,MAAM,+BAA+B,CAAC;AA8FlE,mDAAmD;AACnD,MAAM,UAAU,UAAU,CAAC,MAAqB;IAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,EAAE,EAAE,IAAI,QAAQ,CAAC;IAClD,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG;QACtB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,GAAG,CAAC,MAAM,CAAC,QAAQ;YACjB,CAAC,CAAC;gBACE,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACvC,OAAO,EAAE,CAAC,CAAC,OAAO,GAAG,GAAG;oBACxB,QAAQ,EAAE,CAAC,CAAC,QAAQ,GAAG,GAAG;oBAC1B,OAAO,EAAE,CAAC,CAAC,OAAO,GAAG,GAAG;oBACxB,QAAQ,EAAE,CAAC,CAAC,QAAQ,GAAG,GAAG;iBAC3B,CAAC,CAAC;aACJ;YACH,CAAC,CAAC,EAAE,CAAC;QACP,WAAW,EAAE,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACnG,GAAG,CAAC,MAAM,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,EAAE,CAAC;QACrG,GAAG,CAAC,MAAM,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,MAAM,CAAC,oBAAoB,EAAE,CAAC;QAC3G,YAAY,EAAE,CAAC,KAAK,GAAG,mBAAmB,CAAC,KAAK,CAAC;QACjD,QAAQ,EAAE,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC;QACvC,aAAa,EAAE,MAAM,CAAC,aAAa,KAAK,IAAI;KAC7C,CAAC;AACJ,CAAC;AA+BD,iFAAiF;AACjF,MAAM,CAAC,MAAM,WAAW,GAA2C,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;AAoBnH,SAAS,QAAQ,CAAC,KAAwB;IACxC,OAAO,SAAS,IAAI,KAAK,CAAC;AAC5B,CAAC;AAED,kHAAkH;AAClH,MAAM,UAAU,YAAY,CAAC,MAAoC;IAC/D,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAc,EAAE;QAC/C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;QAClD,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;QAC1D,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,UAAU,CAAC,4CAA4C,CAAC,CAAC;QAC/E,MAAM,KAAK,GAAe;YACxB,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,KAAK,CAAC,EAAE;YACzB,OAAO;YACP,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,KAAK,IAAI,CAAC;YAClE,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,QAAQ;YACf,SAAS,EAAE,IAAI;SAChB,CAAC;QACF,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAC;QACzB,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC3B,IAAI,KAAK,CAAC,MAAM;YAAE,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAClE,IAAI,KAAK,CAAC,aAAa;YAAE,KAAK,CAAC,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;QAC9F,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAAE,MAAM,IAAI,UAAU,CAAC,mCAAmC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;QAC5F,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,sGAAsG;AACtG,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAY,EAAE,IAAY;IAC5D,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,GAAG,MAAM,CAAC;QAC9E,MAAM,IAAI,UAAU,CAAC,GAAG,IAAI,4BAA4B,CAAC,CAAC;IAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AAC9B,CAAC;AAED,2GAA2G;AAC3G,MAAM,UAAU,YAAY,CAAC,KAAiB,EAAE,OAA4B;IAC1E,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IACvD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,OAAO;YACpE,MAAM,IAAI,UAAU,CAAC,4BAA4B,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACzE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IAC9B,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,UAAU,CAAC,WAAW,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;QAC/G,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IAC1B,CAAC;IACD,IAAI,OAAO,KAAK,SAAS;QAAE,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IACnD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC;YAAE,MAAM,IAAI,UAAU,CAAC,uBAAuB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;IACtB,CAAC;AACH,CAAC;AAED,wGAAwG;AACxG,MAAM,UAAU,QAAQ,CAAC,KAAiB;IACxC,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;AACpF,CAAC;AAED,iGAAiG;AACjG,MAAM,UAAU,YAAY,CAAC,KAAiB;IAC5C,OAAO,KAAK,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;AAClD,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAC;AAEjC;;;;;;;;GAQG;AACH,MAAM,UAAU,UAAU,CACxB,OAAkD,EAClD,MAAc,EACd,IAAmB,EACnB,QAA0C,EAAE;IAE5C,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACtC,sDAAsD;IACtD,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;IAC5F,IAAI,IAAI;QAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,kFAAkF;IAClF,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;IACxB,KAAK,MAAM,EAAE,KAAK,EAAE,IAAI,OAAO,EAAE,CAAC;QAChC,KAAK,CAAC,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC3C,uGAAuG;QACvG,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QACjE,IAAI,KAAK,KAAK,MAAM;YAAE,MAAM,GAAG,IAAI,CAAC;QACpC,IAAI,MAAM,KAAK,QAAQ,CAAC,KAAK,CAAC;YAAE,IAAI,GAAG,CAAC,CAAC;aACpC,IAAI,MAAM,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC;YAAE,QAAQ,GAAG,IAAI,CAAC;aAChD,IAAI,QAAQ,IAAI,KAAK,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC;YAAE,IAAI,GAAG,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE;QAAG,KAAK,CAAC,IAAI,CAA2B,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC3F,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,kHAAkH;AAClH,MAAM,UAAU,OAAO,CAAC,KAAiB,EAAE,IAAY;IACrD,OAAO,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;AAC/E,CAAC;AAED,0EAA0E;AAC1E,SAAS,MAAM,CAAC,KAAa,EAAE,MAAc,EAAE,IAAY;IACzD,OAAO,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;AAC9F,CAAC;AAED,qEAAqE;AACrE,SAAS,IAAI,CAAC,IAA0B,EAAE,IAAY,EAAE,MAAc;IACpE,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AAC1G,CAAC;AAED,gGAAgG;AAChG,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAE3B;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,OAA8B,EAAE,cAAsB;IACjF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC1D,mHAAmH;IACnH,oHAAoH;IACpH,sEAAsE;IACtE,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CACnB,CAAC,EACD,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CACtD,CAAC;QACF,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IACH,+GAA+G;IAC/G,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACrH,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;IAC3B,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,yGAAyG;IACzG,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;QACzC,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;YAChD,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK;gBAAE,SAAS;YACxG,MAAM,KAAK,GACT,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;gBACvB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,IAAI,KAAK;gBAClE,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAClC,MAAM,KAAK,GAAG,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;YACvE,IAAI,IAAI,GAAG,KAAK,GAAG,cAAc,GAAG,CAAC;gBAAE,SAAS;YAChD,IAAI,IAAI,KAAK,CAAC;YACd,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;YACtB,KAAK,GAAG,IAAI,CAAC;QACf,CAAC;QACD,IAAI,CAAC,KAAK;YAAE,MAAM;IACpB,CAAC;IACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAC3F,CAAC;AAED,mHAAmH;AACnH,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;AAE1D,MAAM,cAAc,GAAG,CAAC,KAAc,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAChH,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAW,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAK,KAAgB,GAAG,CAAC,CAAC;AAExG,oHAAoH;AACpH,SAAS,KAAK,CAAC,KAAc;IAC3B,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,MAAqB;IACjD,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAgC,CAAC;IAC5E,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,WAAW,CAAC;IAClE,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACrE,OAAO,qCAAqC,KAAK,CAAE,MAAwC,EAAE,GAAG,CAAC,EAAE,CAAC;IACtG,IACE,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;QAC3B,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;QAC1B,QAAmB,GAAG,CAAC;QACvB,QAAmB,GAAG,EAAE;QAEzB,OAAO,cAAc,KAAK,CAAC,QAAQ,CAAC,OAAO,KAAK,CAAC,QAAQ,CAAC,sCAAsC,CAAC;IACnG,IAAK,QAAmB,GAAI,QAAmB;QAC7C,OAAO,uBAAuB,KAAK,CAAC,QAAQ,CAAC,sBAAsB,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;IACvF,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC;QAAE,OAAO,sBAAsB,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC;IAC1G,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,UAAU,GAAG,CAAC;QAC7D,OAAO,wBAAwB,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;IAC5D,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;QAAE,OAAO,mCAAmC,CAAC;IACjH,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;QACzC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QACtD,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,QAAQ,IAAI,QAAQ,IAAI,OAAO,KAAK,OAAO;YAC9G,OAAO,gEAAgE,CAAC;IAC5E,CAAC;IACD,IAAI,MAAM,CAAC,kBAAkB,KAAK,SAAS,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,kBAAkB,CAAC;QAC1F,OAAO,UAAU,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,oBAAoB,CAAC;IACxE,IACE,MAAM,CAAC,oBAAoB,KAAK,SAAS;QACzC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,oBAAoB,CAAC,IAAI,MAAM,CAAC,oBAAoB,IAAI,CAAC,CAAC;QAElF,OAAO,4BAA4B,KAAK,CAAC,MAAM,CAAC,oBAAoB,CAAC,sBAAsB,CAAC;IAC9F,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC;IACnC,IACE,QAAQ;QACR,CAAC,CACC,cAAc,CAAC,QAAQ,CAAC,WAAW,CAAC;YACpC,QAAQ,CAAC,WAAW,GAAG,CAAC;YACxB,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC;YAChC,QAAQ,CAAC,OAAO,GAAG,CAAC,CACrB;QAED,OAAO,+CAA+C,CAAC;IACzD,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,WAAW,IAAI,EAAE;QAChD,IAAI,OAAO,WAAW,EAAE,IAAI,KAAK,QAAQ;YAAE,OAAO,2BAA2B,CAAC;IAChF,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,UAAU,CAAC,MAAoC,EAAE,OAAkC;IACjG,MAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,KAAK,MAAM,KAAK,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9G,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;YAE7C,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,QAAQ;gBACtC,OAAO,CACL,mBAAmB,KAAK,CAAE,MAAiC,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,OAAO,CAAC,gBAAgB,KAAK,CAAC,EAAE,eAAe,CAC1H,CAAC;IACR,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
1
|
+
{"version":3,"file":"imagery-stack.js","sourceRoot":"","sources":["../../src/imagery/imagery-stack.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
import type { StackLayer } from '../imagery/imagery-draws.js';
|
|
4
4
|
import {
|
|
5
5
|
applyChanges,
|
|
6
|
+
pinnedLevels,
|
|
6
7
|
sourceInfo,
|
|
7
8
|
validStack,
|
|
8
9
|
type ImageryLayerChanges,
|
|
@@ -97,8 +98,11 @@ class ImageryLayersController implements ImageryLayers {
|
|
|
97
98
|
throw new GlobeError('invalid-option', `An imagery layer already has the id "${entry.id}"`);
|
|
98
99
|
const taken = entry.sources.find((source) => imagery.layers.some((layer) => layer.source.id === source.id));
|
|
99
100
|
if (taken) throw new GlobeError('invalid-option', `An imagery source already has the id "${taken.id}"`);
|
|
100
|
-
|
|
101
|
-
|
|
101
|
+
// Its base is pinned as if it had been given at creation, after the layers already there (KB-347).
|
|
102
|
+
const stack = [...imagery.stack.map((layer) => layer.entry), entry];
|
|
103
|
+
const pinned = pinnedLevels(stack, imagery.residency.budgetBytes).slice(-entry.sources.length);
|
|
104
|
+
const chain = entry.sources.map((source, at) => {
|
|
105
|
+
const layer = imagery.newLayer(source, freeIndex(imagery), pinned[at] ?? -1);
|
|
102
106
|
imagery.layers.push(layer);
|
|
103
107
|
return layer;
|
|
104
108
|
});
|
|
@@ -115,7 +115,8 @@ export class ImageryRuntime {
|
|
|
115
115
|
readonly network: NetworkPool;
|
|
116
116
|
/** The engine's share of the page's worker pool (render extensions run their tasks on it too). */
|
|
117
117
|
readonly lease: WorkerPoolLease;
|
|
118
|
-
|
|
118
|
+
/** The GPU textures and their budget, shared by every layer (ADR 0007). */
|
|
119
|
+
readonly residency: Residency;
|
|
119
120
|
private readonly ram: RamTier;
|
|
120
121
|
private frame = 0;
|
|
121
122
|
private readonly fades = new ImageryFades();
|
|
@@ -318,14 +318,14 @@ const MAX_PINNED_START = 8;
|
|
|
318
318
|
*/
|
|
319
319
|
export function pinnedLevels(entries: readonly StackEntry[], gpuBudgetBytes: number): number[] {
|
|
320
320
|
const sources = entries.flatMap((entry) => entry.sources);
|
|
321
|
-
// One source of a chain pins a base, the later ones serving finer levels or standing in (F247): the
|
|
322
|
-
//
|
|
323
|
-
//
|
|
321
|
+
// One source of a chain pins a base, the later ones serving finer levels or standing in (F247): the one that starts
|
|
322
|
+
// coarsest, the first among equals, from its first level (F634). A chain over a world source from a regional one
|
|
323
|
+
// that starts deeper so pins the world's low levels (KB-218, KB-346).
|
|
324
324
|
const heads = entries.flatMap((entry) => {
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
);
|
|
325
|
+
let base = 0;
|
|
326
|
+
entry.sources.forEach((source, index) => {
|
|
327
|
+
if (source.minLevel < (entry.sources[base]?.minLevel ?? 0)) base = index;
|
|
328
|
+
});
|
|
329
329
|
return entry.sources.map((_, index) => index === base);
|
|
330
330
|
});
|
|
331
331
|
// A source starting deeper than this pins nothing: its first level has too many tiles to count, let alone pin.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"idb-store.d.ts","sourceRoot":"","sources":["../src/idb-store.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAc,UAAU,EAAgB,MAAM,YAAY,CAAC;AAEvE,yCAAyC;AACzC,MAAM,WAAW,qBAAqB;IACpC,6GAA6G;IAC7G,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,mDAAmD;IACnD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,gEAAgE;IAChE,QAAQ,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C;AAED,kDAAkD;AAClD,eAAO,MAAM,mBAAmB,QAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"idb-store.d.ts","sourceRoot":"","sources":["../src/idb-store.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAc,UAAU,EAAgB,MAAM,YAAY,CAAC;AAEvE,yCAAyC;AACzC,MAAM,WAAW,qBAAqB;IACpC,6GAA6G;IAC7G,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,mDAAmD;IACnD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,gEAAgE;IAChE,QAAQ,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C;AAED,kDAAkD;AAClD,eAAO,MAAM,mBAAmB,QAAoB,CAAC;AA0BrD,mHAAmH;AACnH,wBAAgB,cAAc,CAAC,OAAO,GAAE,qBAA0B,GAAG,UAAU,CAE9E"}
|
|
@@ -10,6 +10,8 @@ const EVICT_TO = 0.9;
|
|
|
10
10
|
* after this fraction of the limit was written here, so the shared database stays within its limit.
|
|
11
11
|
*/
|
|
12
12
|
const RESUM_EVERY = 0.05;
|
|
13
|
+
/** The most tiles one write transaction holds: a read that comes after it waits for these alone. */
|
|
14
|
+
const WRITES_PER_TRANSACTION = 16;
|
|
13
15
|
/** A persistent {@link CacheStore} in IndexedDB with least-recently-used eviction to a byte limit (F273, F274). */
|
|
14
16
|
export function indexedDbStore(options = {}) {
|
|
15
17
|
return new IndexedDbStore(options);
|
|
@@ -26,47 +28,40 @@ class IndexedDbStore {
|
|
|
26
28
|
/** Access times waiting to be written, batched so reads cost no write each. */
|
|
27
29
|
touched = new Map();
|
|
28
30
|
touchTimer;
|
|
31
|
+
/**
|
|
32
|
+
* Tiles waiting to be written. One write transaction runs at a time and the tiles that arrive meanwhile share the
|
|
33
|
+
* next ones: a write transaction holds back every read that comes after it, so one per tile queued each frame's
|
|
34
|
+
* reads, misses included, behind the writes of the tiles before (400 tiles: 380 ms against 17 ms without writes).
|
|
35
|
+
*/
|
|
36
|
+
writes = new Map();
|
|
37
|
+
flushing;
|
|
29
38
|
constructor(options) {
|
|
30
39
|
this.options = options;
|
|
31
40
|
this.maxBytes = options.maxBytes ?? DEFAULT_CACHE_BYTES;
|
|
32
41
|
this.factory = options.indexedDB ?? (typeof indexedDB === 'undefined' ? undefined : indexedDB);
|
|
33
42
|
}
|
|
34
43
|
async get(key) {
|
|
44
|
+
// A tile still waiting for its transaction reads back as written; a copy, since the caller may transfer its bytes.
|
|
45
|
+
const waiting = this.writes.get(key)?.tile;
|
|
46
|
+
if (waiting)
|
|
47
|
+
return { ...waiting, bytes: waiting.bytes.slice(0) };
|
|
35
48
|
const db = await this.open();
|
|
36
49
|
const tile = (await requestResult(db.transaction(TILES).objectStore(TILES).get(key)));
|
|
37
50
|
if (tile)
|
|
38
51
|
this.touch(key);
|
|
39
52
|
return tile;
|
|
40
53
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
tx.objectStore(TILES).put(tile, key);
|
|
50
|
-
index.put({ size, accessMs: Date.now() }, key);
|
|
51
|
-
try {
|
|
52
|
-
await transactionDone(tx);
|
|
53
|
-
this.bytes += size - ((await previous)?.size ?? 0);
|
|
54
|
-
this.writtenSinceSum += size;
|
|
55
|
-
}
|
|
56
|
-
catch (error) {
|
|
57
|
-
if (!isQuotaError(error))
|
|
58
|
-
throw error;
|
|
59
|
-
// The browser quota: make room for the next writes (F274).
|
|
60
|
-
await this.evict(Math.floor(this.bytes * 0.75));
|
|
61
|
-
return 'quota';
|
|
62
|
-
}
|
|
63
|
-
if (this.writtenSinceSum >= this.maxBytes * RESUM_EVERY)
|
|
64
|
-
await this.resum(db);
|
|
65
|
-
if (this.bytes > this.maxBytes)
|
|
66
|
-
await this.evict(Math.floor(this.maxBytes * EVICT_TO));
|
|
67
|
-
return 'stored';
|
|
54
|
+
put(key, tile) {
|
|
55
|
+
if (tile.bytes.byteLength > this.maxBytes)
|
|
56
|
+
return Promise.resolve('quota');
|
|
57
|
+
return new Promise((done, failed) => {
|
|
58
|
+
this.writes.get(key)?.done('stored');
|
|
59
|
+
this.writes.set(key, { tile, done, failed });
|
|
60
|
+
void this.flush();
|
|
61
|
+
});
|
|
68
62
|
}
|
|
69
63
|
async delete(key) {
|
|
64
|
+
await this.flush();
|
|
70
65
|
const db = await this.open();
|
|
71
66
|
const tx = db.transaction([TILES, TILE_INDEX], 'readwrite');
|
|
72
67
|
const index = tx.objectStore(TILE_INDEX);
|
|
@@ -78,6 +73,7 @@ class IndexedDbStore {
|
|
|
78
73
|
this.bytes -= old.size;
|
|
79
74
|
}
|
|
80
75
|
async deletePrefix(prefix) {
|
|
76
|
+
await this.flush();
|
|
81
77
|
const db = await this.open();
|
|
82
78
|
const tx = db.transaction([TILES, TILE_INDEX], 'readwrite');
|
|
83
79
|
const range = prefixRange(prefix);
|
|
@@ -97,14 +93,17 @@ class IndexedDbStore {
|
|
|
97
93
|
return removed;
|
|
98
94
|
}
|
|
99
95
|
async usage() {
|
|
96
|
+
await this.flush();
|
|
100
97
|
await this.resum(await this.open());
|
|
101
98
|
return { bytes: this.bytes, quotaBytes: this.maxBytes };
|
|
102
99
|
}
|
|
103
100
|
close() {
|
|
101
|
+
// The waiting tiles' transaction starts before the store closes, and the connection closes once it ends.
|
|
102
|
+
const last = this.flush();
|
|
103
|
+
const db = this.db;
|
|
104
104
|
this.closed = true;
|
|
105
|
-
clearTimeout(this.touchTimer);
|
|
106
|
-
void this.db?.then((db) => db.close()).catch(() => undefined);
|
|
107
105
|
this.db = undefined;
|
|
106
|
+
void last.then(() => db?.then((open) => open.close())).catch(() => undefined);
|
|
108
107
|
}
|
|
109
108
|
open() {
|
|
110
109
|
if (this.closed)
|
|
@@ -123,6 +122,9 @@ class IndexedDbStore {
|
|
|
123
122
|
this.db = undefined;
|
|
124
123
|
this.bytes = 0;
|
|
125
124
|
this.touched.clear();
|
|
125
|
+
for (const write of this.writes.values())
|
|
126
|
+
write.failed(new StorageUnavailableError(reason));
|
|
127
|
+
this.writes.clear();
|
|
126
128
|
this.options.onLost?.(reason);
|
|
127
129
|
});
|
|
128
130
|
this.bytes = await this.sumSizes(db);
|
|
@@ -150,7 +152,6 @@ class IndexedDbStore {
|
|
|
150
152
|
}
|
|
151
153
|
/** Deletes least-recently-used tiles until at most `targetBytes` remain. */
|
|
152
154
|
async evict(targetBytes) {
|
|
153
|
-
await this.flushTouches();
|
|
154
155
|
const db = await this.open();
|
|
155
156
|
const tx = db.transaction([TILES, TILE_INDEX], 'readwrite');
|
|
156
157
|
const tiles = tx.objectStore(TILES);
|
|
@@ -168,27 +169,89 @@ class IndexedDbStore {
|
|
|
168
169
|
}
|
|
169
170
|
touch(key) {
|
|
170
171
|
this.touched.set(key, Date.now());
|
|
171
|
-
this.touchTimer ??= setTimeout(() => void this.
|
|
172
|
+
this.touchTimer ??= setTimeout(() => void this.flush().catch(() => undefined), 500);
|
|
172
173
|
}
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
this.
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
174
|
+
/** Writes the waiting tiles and access times, a transaction at a time, until none waits. */
|
|
175
|
+
flush() {
|
|
176
|
+
if (!this.flushing && (this.writes.size > 0 || this.touched.size > 0))
|
|
177
|
+
this.flushing = this.writeWaiting();
|
|
178
|
+
return this.flushing ?? Promise.resolve();
|
|
179
|
+
}
|
|
180
|
+
async writeWaiting() {
|
|
181
|
+
try {
|
|
182
|
+
while (this.writes.size > 0 || this.touched.size > 0) {
|
|
183
|
+
clearTimeout(this.touchTimer);
|
|
184
|
+
this.touchTimer = undefined;
|
|
185
|
+
await this.open().then((db) => this.commit(db), (error) => this.drop(error));
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
finally {
|
|
189
|
+
this.flushing = undefined;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
/** Fails the waiting tiles' `put`s with `error`. */
|
|
193
|
+
drop(error) {
|
|
194
|
+
for (const write of this.writes.values())
|
|
195
|
+
write.failed(error);
|
|
196
|
+
this.writes.clear();
|
|
179
197
|
this.touched.clear();
|
|
180
|
-
|
|
181
|
-
|
|
198
|
+
}
|
|
199
|
+
/** One transaction with the first waiting tiles (up to 16) and every access time, then the eviction they call for. */
|
|
200
|
+
async commit(db) {
|
|
201
|
+
const writes = [...this.writes].slice(0, WRITES_PER_TRANSACTION);
|
|
202
|
+
for (const [key] of writes)
|
|
203
|
+
this.writes.delete(key);
|
|
204
|
+
const touched = [...this.touched];
|
|
205
|
+
this.touched.clear();
|
|
206
|
+
await this.write(db, writes, touched).catch((error) => {
|
|
207
|
+
for (const [, write] of writes)
|
|
208
|
+
write.failed(error);
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
async write(db, writes, touched) {
|
|
212
|
+
// A cache can lose its last writes in a power cut: relaxed durability spares a disk flush per transaction.
|
|
213
|
+
const tx = db.transaction([TILES, TILE_INDEX], 'readwrite', { durability: 'relaxed' });
|
|
214
|
+
const tiles = tx.objectStore(TILES);
|
|
182
215
|
const index = tx.objectStore(TILE_INDEX);
|
|
183
|
-
|
|
216
|
+
const accessMs = Date.now();
|
|
217
|
+
let grown = 0;
|
|
218
|
+
let written = 0;
|
|
219
|
+
for (const [key, { tile }] of writes) {
|
|
220
|
+
const size = tile.bytes.byteLength;
|
|
221
|
+
const previous = index.get(key);
|
|
222
|
+
previous.onsuccess = () => (grown += size - (previous.result?.size ?? 0));
|
|
223
|
+
tiles.put(tile, key);
|
|
224
|
+
index.put({ size, accessMs }, key);
|
|
225
|
+
written += size;
|
|
226
|
+
}
|
|
227
|
+
for (const [key, at] of touched) {
|
|
184
228
|
const request = index.get(key);
|
|
185
229
|
request.onsuccess = () => {
|
|
186
230
|
const record = request.result;
|
|
187
231
|
if (record)
|
|
188
|
-
index.put({ size: record.size, accessMs }, key);
|
|
232
|
+
index.put({ size: record.size, accessMs: at }, key);
|
|
189
233
|
};
|
|
190
234
|
}
|
|
191
|
-
|
|
235
|
+
try {
|
|
236
|
+
await transactionDone(tx);
|
|
237
|
+
}
|
|
238
|
+
catch (error) {
|
|
239
|
+
if (!isQuotaError(error))
|
|
240
|
+
throw error;
|
|
241
|
+
// The browser quota: make room for the next writes (F274).
|
|
242
|
+
await this.evict(Math.floor(this.bytes * 0.75));
|
|
243
|
+
for (const [, write] of writes)
|
|
244
|
+
write.done('quota');
|
|
245
|
+
return;
|
|
246
|
+
}
|
|
247
|
+
this.bytes += grown;
|
|
248
|
+
this.writtenSinceSum += written;
|
|
249
|
+
if (this.writtenSinceSum >= this.maxBytes * RESUM_EVERY)
|
|
250
|
+
await this.resum(db);
|
|
251
|
+
if (this.bytes > this.maxBytes)
|
|
252
|
+
await this.evict(Math.floor(this.maxBytes * EVICT_TO));
|
|
253
|
+
for (const [, write] of writes)
|
|
254
|
+
write.done('stored');
|
|
192
255
|
}
|
|
193
256
|
}
|
|
194
257
|
//# sourceMappingURL=idb-store.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"idb-store.js","sourceRoot":"","sources":["../src/idb-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"idb-store.js","sourceRoot":"","sources":["../src/idb-store.ts"],"names":[],"mappings":"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"}
|
package/offline/src/idb-store.ts
CHANGED
|
@@ -41,11 +41,21 @@ const EVICT_TO = 0.9;
|
|
|
41
41
|
*/
|
|
42
42
|
const RESUM_EVERY = 0.05;
|
|
43
43
|
|
|
44
|
+
/** The most tiles one write transaction holds: a read that comes after it waits for these alone. */
|
|
45
|
+
const WRITES_PER_TRANSACTION = 16;
|
|
46
|
+
|
|
44
47
|
interface IndexRecord {
|
|
45
48
|
readonly size: number;
|
|
46
49
|
readonly accessMs: number;
|
|
47
50
|
}
|
|
48
51
|
|
|
52
|
+
/** A tile waiting for the next write transaction, and its `put`'s answer. */
|
|
53
|
+
interface Write {
|
|
54
|
+
readonly tile: CachedTile;
|
|
55
|
+
readonly done: (result: 'stored' | 'quota') => void;
|
|
56
|
+
readonly failed: (error: unknown) => void;
|
|
57
|
+
}
|
|
58
|
+
|
|
49
59
|
/** A persistent {@link CacheStore} in IndexedDB with least-recently-used eviction to a byte limit (F273, F274). */
|
|
50
60
|
export function indexedDbStore(options: IndexedDbStoreOptions = {}): CacheStore {
|
|
51
61
|
return new IndexedDbStore(options);
|
|
@@ -62,6 +72,13 @@ class IndexedDbStore implements CacheStore {
|
|
|
62
72
|
/** Access times waiting to be written, batched so reads cost no write each. */
|
|
63
73
|
private readonly touched = new Map<string, number>();
|
|
64
74
|
private touchTimer: ReturnType<typeof setTimeout> | undefined;
|
|
75
|
+
/**
|
|
76
|
+
* Tiles waiting to be written. One write transaction runs at a time and the tiles that arrive meanwhile share the
|
|
77
|
+
* next ones: a write transaction holds back every read that comes after it, so one per tile queued each frame's
|
|
78
|
+
* reads, misses included, behind the writes of the tiles before (400 tiles: 380 ms against 17 ms without writes).
|
|
79
|
+
*/
|
|
80
|
+
private readonly writes = new Map<string, Write>();
|
|
81
|
+
private flushing: Promise<void> | undefined;
|
|
65
82
|
|
|
66
83
|
constructor(private readonly options: IndexedDbStoreOptions) {
|
|
67
84
|
this.maxBytes = options.maxBytes ?? DEFAULT_CACHE_BYTES;
|
|
@@ -69,37 +86,26 @@ class IndexedDbStore implements CacheStore {
|
|
|
69
86
|
}
|
|
70
87
|
|
|
71
88
|
async get(key: string): Promise<CachedTile | undefined> {
|
|
89
|
+
// A tile still waiting for its transaction reads back as written; a copy, since the caller may transfer its bytes.
|
|
90
|
+
const waiting = this.writes.get(key)?.tile;
|
|
91
|
+
if (waiting) return { ...waiting, bytes: waiting.bytes.slice(0) };
|
|
72
92
|
const db = await this.open();
|
|
73
93
|
const tile = (await requestResult(db.transaction(TILES).objectStore(TILES).get(key))) as CachedTile | undefined;
|
|
74
94
|
if (tile) this.touch(key);
|
|
75
95
|
return tile;
|
|
76
96
|
}
|
|
77
97
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
tx.objectStore(TILES).put(tile, key);
|
|
86
|
-
index.put({ size, accessMs: Date.now() } satisfies IndexRecord, key);
|
|
87
|
-
try {
|
|
88
|
-
await transactionDone(tx);
|
|
89
|
-
this.bytes += size - ((await previous)?.size ?? 0);
|
|
90
|
-
this.writtenSinceSum += size;
|
|
91
|
-
} catch (error) {
|
|
92
|
-
if (!isQuotaError(error)) throw error;
|
|
93
|
-
// The browser quota: make room for the next writes (F274).
|
|
94
|
-
await this.evict(Math.floor(this.bytes * 0.75));
|
|
95
|
-
return 'quota';
|
|
96
|
-
}
|
|
97
|
-
if (this.writtenSinceSum >= this.maxBytes * RESUM_EVERY) await this.resum(db);
|
|
98
|
-
if (this.bytes > this.maxBytes) await this.evict(Math.floor(this.maxBytes * EVICT_TO));
|
|
99
|
-
return 'stored';
|
|
98
|
+
put(key: string, tile: CachedTile): Promise<'stored' | 'quota'> {
|
|
99
|
+
if (tile.bytes.byteLength > this.maxBytes) return Promise.resolve('quota');
|
|
100
|
+
return new Promise((done, failed) => {
|
|
101
|
+
this.writes.get(key)?.done('stored');
|
|
102
|
+
this.writes.set(key, { tile, done, failed });
|
|
103
|
+
void this.flush();
|
|
104
|
+
});
|
|
100
105
|
}
|
|
101
106
|
|
|
102
107
|
async delete(key: string): Promise<void> {
|
|
108
|
+
await this.flush();
|
|
103
109
|
const db = await this.open();
|
|
104
110
|
const tx = db.transaction([TILES, TILE_INDEX], 'readwrite');
|
|
105
111
|
const index = tx.objectStore(TILE_INDEX);
|
|
@@ -111,6 +117,7 @@ class IndexedDbStore implements CacheStore {
|
|
|
111
117
|
}
|
|
112
118
|
|
|
113
119
|
async deletePrefix(prefix: string): Promise<number> {
|
|
120
|
+
await this.flush();
|
|
114
121
|
const db = await this.open();
|
|
115
122
|
const tx = db.transaction([TILES, TILE_INDEX], 'readwrite');
|
|
116
123
|
const range = prefixRange(prefix);
|
|
@@ -130,15 +137,18 @@ class IndexedDbStore implements CacheStore {
|
|
|
130
137
|
}
|
|
131
138
|
|
|
132
139
|
async usage(): Promise<StorageUsage> {
|
|
140
|
+
await this.flush();
|
|
133
141
|
await this.resum(await this.open());
|
|
134
142
|
return { bytes: this.bytes, quotaBytes: this.maxBytes };
|
|
135
143
|
}
|
|
136
144
|
|
|
137
145
|
close(): void {
|
|
146
|
+
// The waiting tiles' transaction starts before the store closes, and the connection closes once it ends.
|
|
147
|
+
const last = this.flush();
|
|
148
|
+
const db = this.db;
|
|
138
149
|
this.closed = true;
|
|
139
|
-
clearTimeout(this.touchTimer);
|
|
140
|
-
void this.db?.then((db) => db.close()).catch(() => undefined);
|
|
141
150
|
this.db = undefined;
|
|
151
|
+
void last.then(() => db?.then((open) => open.close())).catch(() => undefined);
|
|
142
152
|
}
|
|
143
153
|
|
|
144
154
|
private open(): Promise<IDBDatabase> {
|
|
@@ -157,6 +167,8 @@ class IndexedDbStore implements CacheStore {
|
|
|
157
167
|
this.db = undefined;
|
|
158
168
|
this.bytes = 0;
|
|
159
169
|
this.touched.clear();
|
|
170
|
+
for (const write of this.writes.values()) write.failed(new StorageUnavailableError(reason));
|
|
171
|
+
this.writes.clear();
|
|
160
172
|
this.options.onLost?.(reason);
|
|
161
173
|
});
|
|
162
174
|
this.bytes = await this.sumSizes(db);
|
|
@@ -186,7 +198,6 @@ class IndexedDbStore implements CacheStore {
|
|
|
186
198
|
|
|
187
199
|
/** Deletes least-recently-used tiles until at most `targetBytes` remain. */
|
|
188
200
|
private async evict(targetBytes: number): Promise<void> {
|
|
189
|
-
await this.flushTouches();
|
|
190
201
|
const db = await this.open();
|
|
191
202
|
const tx = db.transaction([TILES, TILE_INDEX], 'readwrite');
|
|
192
203
|
const tiles = tx.objectStore(TILES);
|
|
@@ -204,25 +215,84 @@ class IndexedDbStore implements CacheStore {
|
|
|
204
215
|
|
|
205
216
|
private touch(key: string): void {
|
|
206
217
|
this.touched.set(key, Date.now());
|
|
207
|
-
this.touchTimer ??= setTimeout(() => void this.
|
|
218
|
+
this.touchTimer ??= setTimeout(() => void this.flush().catch(() => undefined), 500);
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
/** Writes the waiting tiles and access times, a transaction at a time, until none waits. */
|
|
222
|
+
private flush(): Promise<void> {
|
|
223
|
+
if (!this.flushing && (this.writes.size > 0 || this.touched.size > 0)) this.flushing = this.writeWaiting();
|
|
224
|
+
return this.flushing ?? Promise.resolve();
|
|
208
225
|
}
|
|
209
226
|
|
|
210
|
-
private async
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
227
|
+
private async writeWaiting(): Promise<void> {
|
|
228
|
+
try {
|
|
229
|
+
while (this.writes.size > 0 || this.touched.size > 0) {
|
|
230
|
+
clearTimeout(this.touchTimer);
|
|
231
|
+
this.touchTimer = undefined;
|
|
232
|
+
await this.open().then(
|
|
233
|
+
(db) => this.commit(db),
|
|
234
|
+
(error: unknown) => this.drop(error),
|
|
235
|
+
);
|
|
236
|
+
}
|
|
237
|
+
} finally {
|
|
238
|
+
this.flushing = undefined;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
/** Fails the waiting tiles' `put`s with `error`. */
|
|
243
|
+
private drop(error: unknown): void {
|
|
244
|
+
for (const write of this.writes.values()) write.failed(error);
|
|
245
|
+
this.writes.clear();
|
|
215
246
|
this.touched.clear();
|
|
216
|
-
|
|
217
|
-
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
/** One transaction with the first waiting tiles (up to 16) and every access time, then the eviction they call for. */
|
|
250
|
+
private async commit(db: IDBDatabase): Promise<void> {
|
|
251
|
+
const writes = [...this.writes].slice(0, WRITES_PER_TRANSACTION);
|
|
252
|
+
for (const [key] of writes) this.writes.delete(key);
|
|
253
|
+
const touched = [...this.touched];
|
|
254
|
+
this.touched.clear();
|
|
255
|
+
await this.write(db, writes, touched).catch((error: unknown) => {
|
|
256
|
+
for (const [, write] of writes) write.failed(error);
|
|
257
|
+
});
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
private async write(db: IDBDatabase, writes: [string, Write][], touched: [string, number][]): Promise<void> {
|
|
261
|
+
// A cache can lose its last writes in a power cut: relaxed durability spares a disk flush per transaction.
|
|
262
|
+
const tx = db.transaction([TILES, TILE_INDEX], 'readwrite', { durability: 'relaxed' });
|
|
263
|
+
const tiles = tx.objectStore(TILES);
|
|
218
264
|
const index = tx.objectStore(TILE_INDEX);
|
|
219
|
-
|
|
265
|
+
const accessMs = Date.now();
|
|
266
|
+
let grown = 0;
|
|
267
|
+
let written = 0;
|
|
268
|
+
for (const [key, { tile }] of writes) {
|
|
269
|
+
const size = tile.bytes.byteLength;
|
|
270
|
+
const previous = index.get(key);
|
|
271
|
+
previous.onsuccess = () => (grown += size - ((previous.result as IndexRecord | undefined)?.size ?? 0));
|
|
272
|
+
tiles.put(tile, key);
|
|
273
|
+
index.put({ size, accessMs } satisfies IndexRecord, key);
|
|
274
|
+
written += size;
|
|
275
|
+
}
|
|
276
|
+
for (const [key, at] of touched) {
|
|
220
277
|
const request = index.get(key);
|
|
221
278
|
request.onsuccess = () => {
|
|
222
279
|
const record = request.result as IndexRecord | undefined;
|
|
223
|
-
if (record) index.put({ size: record.size, accessMs } satisfies IndexRecord, key);
|
|
280
|
+
if (record) index.put({ size: record.size, accessMs: at } satisfies IndexRecord, key);
|
|
224
281
|
};
|
|
225
282
|
}
|
|
226
|
-
|
|
283
|
+
try {
|
|
284
|
+
await transactionDone(tx);
|
|
285
|
+
} catch (error) {
|
|
286
|
+
if (!isQuotaError(error)) throw error;
|
|
287
|
+
// The browser quota: make room for the next writes (F274).
|
|
288
|
+
await this.evict(Math.floor(this.bytes * 0.75));
|
|
289
|
+
for (const [, write] of writes) write.done('quota');
|
|
290
|
+
return;
|
|
291
|
+
}
|
|
292
|
+
this.bytes += grown;
|
|
293
|
+
this.writtenSinceSum += written;
|
|
294
|
+
if (this.writtenSinceSum >= this.maxBytes * RESUM_EVERY) await this.resum(db);
|
|
295
|
+
if (this.bytes > this.maxBytes) await this.evict(Math.floor(this.maxBytes * EVICT_TO));
|
|
296
|
+
for (const [, write] of writes) write.done('stored');
|
|
227
297
|
}
|
|
228
298
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vibeglobe",
|
|
3
|
-
"version": "0.3.0-rc.
|
|
3
|
+
"version": "0.3.0-rc.3",
|
|
4
4
|
"description": "VibeGlobe: a 3D globe and 2D map engine for the web, started in one call with the application's tile, terrain and geocoder services.",
|
|
5
5
|
"license": "MPL-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -983,8 +983,10 @@ function Zt(e, t, n) {
|
|
|
983
983
|
var Qt = 8;
|
|
984
984
|
function $t(e, t) {
|
|
985
985
|
let n = e.flatMap((e) => e.sources), r = e.flatMap((e) => {
|
|
986
|
-
let t =
|
|
987
|
-
return e.sources.
|
|
986
|
+
let t = 0;
|
|
987
|
+
return e.sources.forEach((n, r) => {
|
|
988
|
+
n.minLevel < (e.sources[t]?.minLevel ?? 0) && (t = r);
|
|
989
|
+
}), e.sources.map((e, n) => n === t);
|
|
988
990
|
}), i = n.map((e) => e.minLevel > Qt ? -2 : Math.max(0, e.minLevel) - 1), a = [...i], o = 0;
|
|
989
991
|
for (let e = 0; e <= 25; e++) {
|
|
990
992
|
let s = !1;
|
|
@@ -2403,13 +2405,13 @@ var Ba = class {
|
|
|
2403
2405
|
if (n.stack.some((e) => e.entry.id === i.id)) throw new b("invalid-option", `An imagery layer already has the id "${i.id}"`);
|
|
2404
2406
|
let a = i.sources.find((e) => n.layers.some((t) => t.source.id === e.id));
|
|
2405
2407
|
if (a) throw new b("invalid-option", `An imagery source already has the id "${a.id}"`);
|
|
2406
|
-
let o = i.sources.map((e) => {
|
|
2407
|
-
let
|
|
2408
|
-
return n.layers.push(
|
|
2409
|
-
}),
|
|
2410
|
-
n.stack.splice(
|
|
2408
|
+
let o = $t([...n.stack.map((e) => e.entry), i], n.residency.budgetBytes).slice(-i.sources.length), s = i.sources.map((e, t) => {
|
|
2409
|
+
let r = n.newLayer(e, Va(n), o[t] ?? -1);
|
|
2410
|
+
return n.layers.push(r), r;
|
|
2411
|
+
}), c = Math.max(0, Math.min(n.stack.length, Math.round(t ?? n.stack.length)));
|
|
2412
|
+
n.stack.splice(c, 0, {
|
|
2411
2413
|
entry: i,
|
|
2412
|
-
chain:
|
|
2414
|
+
chain: s
|
|
2413
2415
|
}), this.restacked(n);
|
|
2414
2416
|
}
|
|
2415
2417
|
remove(e) {
|