@fxi/zartigl 0.12.0 → 0.13.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/dist/engine.d.ts CHANGED
@@ -626,6 +626,12 @@ export declare interface GeoVideoIndex {
626
626
  sourceId: string;
627
627
  updatedAt: string | null;
628
628
  chunks: GeoVideoIndexChunk[];
629
+ /** On a surface index: the levels below it with playable chunks, shallow to deep. */
630
+ depths?: GeoVideoIndexDepth[];
631
+ /** On a surface index with depths: the surface level. */
632
+ surface?: GeoVideoVerticalLevel;
633
+ /** On a depth index: its level. */
634
+ vertical?: GeoVideoVerticalLevel;
629
635
  }
630
636
 
631
637
  /** One immutable, calendar-aligned artifact of a GeoVideo archive. */
@@ -652,6 +658,12 @@ export declare interface GeoVideoIndexChunk {
652
658
  */
653
659
  export declare function geoVideoIndexChunks(index: GeoVideoIndex, indexUrl: string): GeoVideoArchiveChunk[];
654
660
 
661
+ /** A level besides the surface, with the index of its own chunks. */
662
+ declare interface GeoVideoIndexDepth extends GeoVideoVerticalLevel {
663
+ /** Relative to the surface index URL. */
664
+ indexUrl: string;
665
+ }
666
+
655
667
  export declare interface GeoVideoManifest {
656
668
  schemaVersion: 3;
657
669
  id: string;
@@ -916,6 +928,15 @@ export declare class GeoVideoVectorSource extends GeoVideoFrameSource<GeoVideoVe
916
928
  protected capture(video: HTMLVideoElement, rows: number, mask: Uint8Array): Promise<GeoVideoVectorFrame | null>;
917
929
  }
918
930
 
931
+ /** A native vertical level: the store coordinate's identity and exact value. */
932
+ declare interface GeoVideoVerticalLevel {
933
+ name: string;
934
+ units: string;
935
+ /** CF `positive`: "up" for elevation, "down" for depth. */
936
+ positive: string;
937
+ value: number;
938
+ }
939
+
919
940
  /**
920
941
  * Palettes to offer, without deprecated ones (still resolvable for old
921
942
  * configs) unless `includeDeprecated`.
package/dist/engine.js CHANGED
@@ -1,4 +1,4 @@
1
- import { M as o, N as s, G as r, O as d, j as i, P as G, Q as c, R as t, S as l, U as V, m as n, V as S, W as L, X as C, T as u, Y as m, Z as O, _, $ as p, b as R, a0 as A, c as T, a1 as x, a2 as I, n as g, B as k, I as F, a3 as h, J as v, p as D, x as E, u as f, D as B, H as b, o as N, E as P, a4 as y, a5 as M, a6 as W, a7 as U, q as H, a8 as Y, a9 as j, aa as q, F as J, ab as K, ac as Q, L as X, v as Z, ad as $ } from "./engine-DM-lalJq.js";
1
+ import { O as o, P as s, G as r, Q as d, j as i, R as G, S as c, U as t, V as l, W as V, m as n, X as S, Y as C, Z as L, T as u, _ as m, $ as O, a0 as _, a1 as p, b as R, a2 as A, c as T, a3 as g, a4 as k, n as x, C as F, K as I, a5 as f, L as h, p as v, y as E, u as D, E as B, J as b, o as N, F as y, a6 as P, a7 as W, a8 as M, a9 as U, q as H, aa as K, ab as Y, ac as j, H as q, ad as J, ae as Q, N as X, v as Z, af as $ } from "./engine-Bhb-WayM.js";
2
2
  import { B as z, a as aa, f as ea, b as oa, e as sa, c as ra, g as da, i as ia, r as Ga, d as ca } from "./backdrop-Dceb4d8E.js";
3
3
  export {
4
4
  z as BACKDROP_OFF,
@@ -16,8 +16,8 @@ export {
16
16
  V as GeoVideoFrameSource,
17
17
  n as GeoVideoPlayback,
18
18
  S as GeoVideoScalarSource,
19
- L as GeoVideoVectorSource,
20
- C as RANDOM_GLSL,
19
+ C as GeoVideoVectorSource,
20
+ L as RANDOM_GLSL,
21
21
  u as TrailFade,
22
22
  m as VELOCITY_BLEND_GLSL,
23
23
  O as VIBRANCE_GLSL,
@@ -29,34 +29,34 @@ export {
29
29
  R as createColorRampTexture,
30
30
  A as createGeoVideoFrameSource,
31
31
  T as createProgram,
32
- x as createShader,
33
- I as fadeToFrames,
34
- g as fadeToOpacity,
35
- k as formatUnit,
36
- F as geoVideoChunkSources,
37
- h as geoVideoGrid,
38
- v as geoVideoIndexChunks,
39
- D as geoVideoScalarUniforms,
32
+ g as createShader,
33
+ k as fadeToFrames,
34
+ x as fadeToOpacity,
35
+ F as formatUnit,
36
+ I as geoVideoChunkSources,
37
+ f as geoVideoGrid,
38
+ h as geoVideoIndexChunks,
39
+ v as geoVideoScalarUniforms,
40
40
  E as geoVideoTimelineValues,
41
- f as getPalettes,
41
+ D as getPalettes,
42
42
  da as gradeToColorGrade,
43
43
  B as isGeoVideoArchiveSource,
44
44
  ia as isHexColor,
45
45
  b as loadGeoVideoIndex,
46
46
  N as loadGeoVideoManifest,
47
- P as nextChunk,
48
- y as nextChunkSpan,
49
- M as pairChunk,
50
- W as pairChunkSpan,
47
+ y as nextChunk,
48
+ P as nextChunkSpan,
49
+ W as pairChunk,
50
+ M as pairChunkSpan,
51
51
  U as parseTimeRange,
52
52
  Ga as resolveBackdrop,
53
53
  ca as resolveColorGrade,
54
54
  H as resolveColorRamp,
55
- Y as stepTime,
56
- j as subtractIsoDuration,
57
- q as timeBracket,
58
- J as timeRangeBounds,
59
- K as timeStep,
55
+ K as stepTime,
56
+ Y as subtractIsoDuration,
57
+ j as timeBracket,
58
+ q as timeRangeBounds,
59
+ J as timeStep,
60
60
  Q as validateGeoVideoIndex,
61
61
  X as validateGeoVideoManifest,
62
62
  Z as validateScalarColorDomain,
@@ -191,7 +191,7 @@ function _e(e, a, i = {}) {
191
191
  }
192
192
  return M(s);
193
193
  }
194
- const S = "0.12.0", N = { "maplibre-gl": "^5.17.0" }, le = {
194
+ const S = "0.13.0", N = { "maplibre-gl": "^5.17.0" }, le = {
195
195
  version: S,
196
196
  devDependencies: N
197
197
  }, F = "https://sos-ch-gva-2.exo.io/mapx-zartigl/catalog/v2/catalog.json";
package/dist/zartigl.d.ts CHANGED
@@ -212,6 +212,11 @@ export declare interface DepthMeta {
212
212
  label: "depth" | "pressure" | string;
213
213
  units?: string;
214
214
  current?: number;
215
+ /**
216
+ * The field has depths the source cannot show yet: a GeoVideo archive
217
+ * that publishes none, shown at its surface. A depth control stays fixed.
218
+ */
219
+ locked?: boolean;
215
220
  }
216
221
 
217
222
  export declare function deriveDirectionMagnitudeComponents(directionDegrees: number, magnitude: number, derivation: VectorDerivation): {
@@ -1580,6 +1585,14 @@ export declare class Zartigl {
1580
1585
  private archiveChunks;
1581
1586
  /** Samples of each archive chunk the index lists them for, by manifest URL. */
1582
1587
  private chunkTimes;
1588
+ /** Published levels of each archive, by surface index URL. */
1589
+ private archiveRoots;
1590
+ /** Level of the archive chunk shown: null for the surface. */
1591
+ private archiveLevel;
1592
+ /** A field with depths shown at its surface only, until GeoVideo publishes them. */
1593
+ private depthLocked;
1594
+ /** Level of each archive chunk, by manifest URL: null for the surface. */
1595
+ private chunkLevels;
1583
1596
  /** Manifest of the archive chunk expected next, requested ahead of it. */
1584
1597
  private nextChunkManifest;
1585
1598
  private activeFieldSource;
@@ -1612,9 +1625,8 @@ export declare class Zartigl {
1612
1625
  private changeSource;
1613
1626
  /**
1614
1627
  * Source switch after init. An archive moves between its own chunks with
1615
- * the time or window; no time ever switches to another source. In "auto"
1616
- * only, until GeoVideo renders depths, a deeper level shows Zarr and the
1617
- * surface level GeoVideo again.
1628
+ * the time, the window, or the depth (its published levels); no time or
1629
+ * depth ever switches to another source.
1618
1630
  */
1619
1631
  private needsSourceSwitch;
1620
1632
  private applyVisible;
@@ -1710,7 +1722,6 @@ export declare class Zartigl {
1710
1722
  * In "auto", a GeoVideo that fails while it renders (media, mask) yields
1711
1723
  * to another source, paused, keeping the date and depth.
1712
1724
  */
1713
- private fallBackFromGeoVideo;
1714
1725
  private applyMutableSettings;
1715
1726
  private getQuerySource;
1716
1727
  private getFieldSource;
@@ -1730,8 +1741,6 @@ export declare class Zartigl {
1730
1741
  private isFailedGeoVideo;
1731
1742
  /** The entry without GeoVideo artifacts that failed to load. */
1732
1743
  private withoutFailedGeoVideo;
1733
- /** Whether `depth` resolves to the surface level that GeoVideo renders. */
1734
- private geoVideoServesDepth;
1735
1744
  private isArchiveChunk;
1736
1745
  /**
1737
1746
  * The archive chunk that follows the current one inside the active time
@@ -1752,8 +1761,6 @@ export declare class Zartigl {
1752
1761
  private continueArchivePlayback;
1753
1762
  /** The entry's initialised field Zarr, or null when it has none. */
1754
1763
  private entryFieldZarr;
1755
- /** Zarr vertical axis; unavailable metadata leaves GeoVideo without one. */
1756
- private zarrVertical;
1757
1764
  /**
1758
1765
  * Every sample of an archive's chunks, sorted, from its index. Chunks
1759
1766
  * indexed before the index listed them read their manifest once, a few at
@@ -1769,10 +1776,19 @@ export declare class Zartigl {
1769
1776
  private archiveSample;
1770
1777
  /**
1771
1778
  * Entry whose archive sources are replaced by one fixed-period source per
1772
- * published chunk. An unreachable index drops the archive, so selection
1779
+ * published chunk at `level` (null: the surface). An unreachable index, or
1780
+ * a level the archive does not publish, drops the archive, so selection
1773
1781
  * falls back to the entry's other sources.
1774
1782
  */
1775
1783
  private resolveArchives;
1784
+ /** The published levels of an archive, read from its surface index. */
1785
+ private archiveLevels;
1786
+ /**
1787
+ * Chunks of one index of an archive: its surface index (`level` null),
1788
+ * which also lists the levels below, or a depth's, which must record that
1789
+ * level. Revalidated like any archive index.
1790
+ */
1791
+ private archiveChunksAt;
1776
1792
  private resolveSource;
1777
1793
  private querySource;
1778
1794
  private isMapReady;
@@ -1839,6 +1855,11 @@ declare type ZartiglEventMap = {
1839
1855
  }) => void;
1840
1856
  /** The render layer was added to the map, e.g. for the host to order it. */
1841
1857
  layerAttach: (id: string) => void;
1858
+ /**
1859
+ * The time or vertical axis changed without a source change, e.g. on
1860
+ * another depth of a GeoVideo archive: read getTimeMeta and getDepthMeta.
1861
+ */
1862
+ axesChange: () => void;
1842
1863
  };
1843
1864
 
1844
1865
  export declare class ZartiglFrameUnavailableError extends Error {