@fxi/zartigl 0.2.15 → 0.2.16

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 CHANGED
@@ -3,6 +3,7 @@
3
3
  A MapLibre GL JS plugin for exploring cloud-hosted Zarr geoscience data directly in the browser.
4
4
 
5
5
  [![Demo](https://img.shields.io/badge/demo-live-blue)](https://fxi.io/zartigl/)
6
+ [![Story](https://img.shields.io/badge/story-explore-8b5cf6)](https://fxi.io/zartigl/story/)
6
7
 
7
8
  Zartigl renders scalar rasters and vector particle fields from multidimensional Zarr stores without a dedicated tile server. It is aimed at expert analysis workflows where time, depth or pressure level, point inspection, and reproducible map state matter as much as the visual layer.
8
9
 
@@ -63,6 +64,11 @@ The root import does not bundle the catalog presets. Import catalog data from `@
63
64
  The production demo is the default Vite app and is published at
64
65
  [`fxi.io/zartigl`](https://fxi.io/zartigl/).
65
66
 
67
+ The narrative story combines Arctic sea ice, ENSO, and Cyclone Chido in a
68
+ scene-based experience at [`fxi.io/zartigl/story`](https://fxi.io/zartigl/story/).
69
+ It is built from the same repository so that its catalog, runtime, and Zartigl
70
+ version remain synchronized with the technical demo.
71
+
66
72
  ```bash
67
73
  npm install
68
74
  npm run dev
@@ -74,6 +80,13 @@ Build the same app that the public demo publishes:
74
80
  npm run build:prod
75
81
  ```
76
82
 
83
+ Run or build the story locally:
84
+
85
+ ```bash
86
+ npm run dev:story
87
+ npm run build:story
88
+ ```
89
+
77
90
  For the smaller public API demo:
78
91
 
79
92
  ```bash
package/dist/zartigl.js CHANGED
@@ -5470,14 +5470,16 @@ class ME {
5470
5470
  format: "image/svg+xml"
5471
5471
  };
5472
5472
  }
5473
- if (this.activeBackendPreference() === "geovideo" && this.geoVideoManifest)
5473
+ if (this.activeBackendPreference() === "geovideo" && this.geoVideoManifest) {
5474
+ const B = typeof this.settings.palette == "string" ? this.settings.palette : "custom", C = this.settings.colorDomain ?? this.geoVideoManifest.style.colorDomain;
5474
5475
  return {
5475
5476
  type: "gradient",
5476
- palette: this.geoVideoManifest.style.palette,
5477
- min: this.geoVideoManifest.style.colorDomain[0],
5478
- max: this.geoVideoManifest.style.colorDomain[1],
5477
+ palette: B,
5478
+ min: C[0],
5479
+ max: C[1],
5479
5480
  unit: this.geoVideoManifest.style.unit
5480
5481
  };
5482
+ }
5481
5483
  const A = typeof this.settings.palette == "string" ? this.settings.palette : "custom", I = this.catalogLayer.kind === "scalar" ? this.settings.colorDomain : null;
5482
5484
  return {
5483
5485
  type: "gradient",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fxi/zartigl",
3
- "version": "0.2.15",
3
+ "version": "0.2.16",
4
4
  "description": "MapLibre GL JS plugin for animated particle flow from Zarr ocean current data",
5
5
  "repository": {
6
6
  "type": "git",
@@ -26,11 +26,13 @@
26
26
  "scripts": {
27
27
  "dev": "vite",
28
28
  "dev:minimal": "vite --config vite.config.minimal.ts",
29
+ "dev:story": "vite --config vite.config.story.ts",
29
30
  "dev:prod": "npm run dev",
30
31
  "test": "vitest run",
31
32
  "test:unit": "vitest run",
32
33
  "build": "vite build",
33
34
  "build:minimal": "vite build --config vite.config.minimal.ts",
35
+ "build:story": "vite build --config vite.config.story.ts",
34
36
  "build:prod": "npm run build",
35
37
  "build:lib": "vite build --config vite.config.lib.ts",
36
38
  "preview": "vite preview",
@@ -40,6 +42,8 @@
40
42
  "release:major": "npm version major && git push origin main --follow-tags",
41
43
  "catalog": "npm run catalog:validate",
42
44
  "catalog:validate": "uv run scripts/catalog_builder/skills/validate_catalog.py",
45
+ "story:data": "uv run --project scripts python scripts/story_data/build.py",
46
+ "test:story-data": "uv run --project scripts python -m unittest discover -s scripts/story_data -p 'test_*.py'",
43
47
  "geovideo:dry-run": "uv run scripts/geovideo/render.py scripts/geovideo/examples/sst-anomaly.json --dry-run",
44
48
  "geovideo:calibrate": "uv run scripts/geovideo/calibrate.py",
45
49
  "geovideo:calibrate:browser": "uv run scripts/geovideo/browser_calibrate.py",