@nika-js/onlymap 0.5.10 → 0.5.12

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/CHANGELOG.md ADDED
@@ -0,0 +1,110 @@
1
+ # Changelog
2
+
3
+ All notable changes to `@nika-js/onlymap`, newest first. The full rationale for
4
+ each entry lives in the architecture doc's dated changelog; this is the concise,
5
+ version-by-version record.
6
+
7
+ Note: npm collapsed a few closely-spaced releases — the GPX/FlatGeobuf (0.5.4)
8
+ and GeoParquet (0.5.5) work shipped to npm together as **0.5.6**, so npm's
9
+ version list jumps 0.5.3 → 0.5.6. Each logical version is listed here regardless.
10
+
11
+ ## 0.5.12 — 2026-08-05
12
+
13
+ ### Added
14
+ - This `CHANGELOG.md` — a version-by-version record, shipped in the package and mirror.
15
+
16
+ ### Fixed
17
+ - **`highlight-color` was silently inert** with the library's own `highlighted-id` / `highlight-feature` selection: the auto-derive compiled it to a function accessor, but deck's `highlightedObjectIndex` path only honors a plain color array — selections rendered in deck's default navy. It now resolves as a constant color (array or hex), which drives both the programmatic-highlight and hover-highlight paths.
18
+
19
+ ## 0.5.11 — 2026-08-05
20
+
21
+ ### Added
22
+ - **`ZarrLayer`** — Zarr / GeoZarr raster layer: chunked N-dimensional array data (climate/weather grids, datacubes) rendered on the GPU (`@developmentseed/deck.gl-zarr` + zarrita, a lazy chunk). `variable` + `select="time=0, …"` pick the slice; a GeoZarr store georeferences itself, a plain Zarr takes manual `bounds`/`crs`/`spatial-dims`; `min`/`max`/`colormap`/`nodata` and the legend reuse the COGLayer pipeline. `src` can point at any public, CORS-enabled remote store — no server setup.
23
+
24
+ ## 0.5.10 — 2026-08-04
25
+
26
+ ### Added
27
+ - **Dashed lines** — `dash="[6, 3]"` (or SVG-style `dash="6 3"`, plus `dash-justified`) on path-stroking layers (PathLayer/GeoJsonLayer/PolygonLayer/TripsLayer), wired through deck's `PathStyleExtension`.
28
+
29
+ ## 0.5.9 — 2026-08-04
30
+
31
+ ### Fixed
32
+ - Layers now render across the antimeridian and when zoomed out past a single world copy (standalone maps set `MapView({ repeat: true })`). Previously, data near ±180° or a wide zoomed-out view went blank.
33
+
34
+ ## 0.5.8 — 2026-08-04
35
+
36
+ ### Fixed
37
+ - **COGLayer** works from a CDN / cross-origin build. Its decode worker is now inlined as a same-origin blob and asset paths are relative (`base: "./"`); previously it rendered nothing on any built page served from a CDN (present since 0.5.2).
38
+
39
+ ## 0.5.7 — 2026-08-04
40
+
41
+ ### Added
42
+ - **`ImageOverlay`** — georeferenced drone-JPEG overlay: reads GPS/EXIF + DJI-XMP, computes a flat-ground WGS84 footprint, bakes yaw/roll. `OmMap.resolveImageOverlay(fileOrUrl)` preprocesses once for persistence; explicit `bounds` reconstructs without re-reading EXIF.
43
+
44
+ ## 0.5.6 — 2026-07-31
45
+
46
+ ### Added
47
+ - **Safe date formatting** — `formatDate($time, 'datetime', 'UTC')` turns epoch-millisecond/ISO fields into readable `get-text` labels without enabling arbitrary JavaScript; the built-in filter widget shares the contract.
48
+
49
+ ## 0.5.5 — 2026-07-31
50
+
51
+ ### Added
52
+ - **GeoParquet** data format (`.parquet` / `.geoparquet`) — cloud-native columnar vector: all-Point files stay columnar, lines/polygons become GeoJSON features; requires the `geo` metadata (WKB) and CRS84/EPSG:4326.
53
+
54
+ ## 0.5.4 — 2026-07-30
55
+
56
+ ### Added
57
+ - **GPX** (`.gpx`, waypoints/tracks/routes, `#fragment` part selection) and **FlatGeobuf** (`.fgb`, cloud-native binary vector) data formats.
58
+
59
+ ## 0.5.3 — 2026-07-30
60
+
61
+ ### Added
62
+ - **`measure` widget** — geodesic distance and area with live per-segment/total labels, a metric/imperial/nautical units toggle, and an `om-measure` readout event.
63
+
64
+ ### Changed
65
+ - Validation flags a data-driven expression (`$field`, `scale()`, …) placed on a scalar attribute — the silent "invisible layer / black squares" trap.
66
+
67
+ ## 0.5.2 — 2026-07-29
68
+
69
+ ### Changed
70
+ - Made `om-map-point` (raw map click/hover capture) discoverable by task in the skill and `llms.txt`, steering agents away from poking deck.gl internals.
71
+
72
+ ## 0.5.1 — 2026-07-29
73
+
74
+ ### Added
75
+ - **Tiled layers** — `{z}/{x}/{y}` `data` templates for `TileLayer`/`MVTLayer` (raster templates get a built-in `BitmapLayer` sublayer; MVT self-renders with `get-*` accessors on decoded features).
76
+
77
+ ## 0.5.0 — 2026-07-28
78
+
79
+ ### Added
80
+ - **CityJSON / CityJSONSeq** ingestion — semantic 3D city models decoded to extruded footprints, or per-face surfaces with `?om-surfaces=1`; national coordinate grids reproject automatically.
81
+ - First-shot layout guardrail: a bare `<om-map>` with no author height still renders (injected `display:block` default + 400px floor + an actionable console warning when it still collapses).
82
+
83
+ ### Changed
84
+ - The free-tier per-layer row cap now truncates to the first rows with a dismissible on-map notice instead of hard-dropping the layer.
85
+
86
+ ## 0.4.x — 2026-07-22…27
87
+
88
+ ### Added
89
+ - Managed, adaptive **widget layout**: eight logical `position` slots, same-slot stacking with shared gaps, compact-button clustering, automatic folding into drawers on narrow maps, and the `check-layout` CLI that audits a manifest's widget layout in headless Chromium.
90
+
91
+ ### Fixed
92
+ - Post-publication review hardening across the layout and widget features.
93
+
94
+ ## 0.3.x — 2026-07-16…
95
+
96
+ ### Added
97
+ - Native **GeoTIFF / Cloud-Optimized GeoTIFF raster** layer (`COGLayer`) with `min`/`max` rescale and bundled colormaps.
98
+ - A full 3D scene from attributes: `terrain`, scene `lighting`, and canvas `snapshot()`.
99
+ - CDN-delivery posture: a single-file standalone bundle plus raw-file-CDN guidance.
100
+
101
+ ## 0.2.x
102
+
103
+ ### Added
104
+ - The v0.2 format registry: CSV/TSV (typed columns), Shapefile (+`.dbf`), KML, and Apache Arrow / GeoArrow (a columnar fast path).
105
+ - First public npm release of `@nika-js/onlymap`.
106
+
107
+ ## 0.1.x
108
+
109
+ ### Added
110
+ - The initial declarative core: `<om-map>` / `<om-layer>` / `<om-widget>` / `<om-overlay>` / `<om-behavior>`, the manifest reconcile loop, the `get-*` accessor expression compiler, and MapLibre basemaps — no build step, no imperative deck.gl code.
package/README.md CHANGED
@@ -46,7 +46,7 @@ deck.gl is the best WebGL data-visualization engine there is — and OnlyMapJS i
46
46
  |---|---|---|
47
47
  | Setup | `new Deck({...})`, canvas + basemap sync wiring | one `<om-map>` element (or `<OmMap>` in React) |
48
48
  | State | your reducers/stores drive `setProps` | the manifest **is** the state — edit an attribute, the map reconciles; undo/redo built in |
49
- | Data loading | fetch + parse + reload yourself | `data="…"` — GeoJSON, CSV, Arrow/GeoArrow, Shapefile, KML, GPX, FlatGeobuf, GeoParquet, CityJSON, WebSocket streams, polled REST, tiled XYZ/vector (`TileLayer`/`MVTLayer`); GeoTIFF/COG rasters via `COGLayer`; geotagged drone JPEGs via `ImageOverlay` |
49
+ | Data loading | fetch + parse + reload yourself | `data="…"` — GeoJSON, CSV, Arrow/GeoArrow, Shapefile, KML, GPX, FlatGeobuf, GeoParquet, CityJSON, WebSocket streams, polled REST, tiled XYZ/vector (`TileLayer`/`MVTLayer`); GeoTIFF/COG rasters via `COGLayer`, chunked Zarr/GeoZarr via `ZarrLayer`; geotagged drone JPEGs via `ImageOverlay` |
50
50
  | Accessors | JS functions + `updateTriggers` bookkeeping | `get-*` expressions; update triggers derived automatically |
51
51
  | UI | build legends/popups/filters from scratch | built-in widgets, overlays, behaviors — declarative |
52
52
  | Testing | mock WebGL or ship untested | `OmMap.validate`, IR snapshots, headless behavioral harness |
@@ -80,7 +80,7 @@ A handful of elements, one rule: **attributes are kebab-case versions of deck.gl
80
80
  | Element | Role |
81
81
  |---|---|
82
82
  | `<om-map>` | The map. `center`, `zoom`, `pitch`, `bearing`; `basemap` takes a free preset (`positron`, `liberty`, `dark-matter`, `osm`, …), a style URL, or `"none"` (standalone canvas) — and switches **live**; `validate` for a live on-page error panel. Give it a height: a custom element is `display:inline` by default, so the library injects a `display:block` default (fills a sized parent, else a 400px floor) to keep a bare map visible, but set an explicit height (`om-map { height: 100vh }`) for real layout — any height you set wins outright, including one below the floor. A map that still collapses warns in the console; `hidden` and `display:none` maps stay hidden and stay quiet. |
83
- | `<om-layer>` | Any of **35 layer types** by name — all of deck.gl's core, geo, aggregation, and mesh layers (Scatterplot, GeoJson, Arc, Path, Heatmap, Hexagon, Trips, Tile, Tile3D, Scenegraph, …) plus `PopupLayer`, the native `COGLayer` for GeoTIFF rasters, and `ImageOverlay` for georeferenced drone JPEGs. `id` required; `label`/`color` feed the legend. |
83
+ | `<om-layer>` | Any of **36 layer types** by name — all of deck.gl's core, geo, aggregation, and mesh layers (Scatterplot, GeoJson, Arc, Path, Heatmap, Hexagon, Trips, Tile, Tile3D, Scenegraph, …) plus `PopupLayer`, the native `COGLayer` for GeoTIFF rasters, `ZarrLayer` for chunked Zarr/GeoZarr rasters, and `ImageOverlay` for georeferenced drone JPEGs. `id` required; `label`/`color` feed the legend. |
84
84
  | `<om-widget>` | UI panels. Built-ins: `legend` (symbology-aware: color scales render as gradient ramps or class ranges, categorical ternaries as discrete palettes), `layer-switcher`, `basemap-switcher`, `lighting`, `zoom-controls`, `undo-redo`, `scale-bar` (metric/imperial/nautical `units`), `attribution`, `filter`, `draw`, `measure` (geodesic distance + area — live labels, `units` toggle, an `om-measure` readout event), `vega-lite` (live charts). Or write your own inline with HTML + a `<script type="om/widget">`. Adjacent compact button widgets (`zoom-controls`, `undo-redo`, `widgets-toggle`) **auto-cluster** into one control group (opt out per widget with `cluster="false"`), and `<om-map widgets-hidden>` / the `set-widgets-visible` action / `<om-widget type="widgets-toggle">` hide all authored chrome without destroying it — provider attribution and the license badge never hide. **Placement is managed**: `position` takes one of 8 logical, RTL-aware slots (`top-start`, `top-center`, `top-end`, `center-start`, `center-end`, `bottom-start`, `bottom-center`, `bottom-end`; legacy corner names alias) — same-slot widgets stack with flush edges and a shared gap, `order` sets in-slot ordering, and `position="manual"` opts out entirely (a plain block you style yourself, even outside the map). At map widths ≤640px, managed widgets automatically move into accessible top/end/bottom/start drawers; `fold="never"` keeps an essential control out, `widgets-fold="off"` disables folding, and `--om-widget-fold-breakpoint` changes the map-width threshold. Provider attribution is an in-flow member of `bottom-end` and the license badge of `bottom-start`, so neither covers a widget. A slot dims automatically while an open popup covers it (`widgets-dim="off"` to disable), except slots containing required chrome. Themeable from plain page CSS via custom properties: `om-map { --om-widget-bg: #111827; --om-widget-fg: #f9fafb; }` (also `-muted`, `-border`, `-hover-bg`, `-accent`), plus layout tokens (`--om-widget-inset-x/-y`, `--om-widget-gap-x/-y`, `--om-widget-opacity`, `--om-widget-radius`) or the no-CSS sugar `<om-map widget-style="gap:10 opacity:0.9">`. |
85
85
  | `<om-overlay>` | Rich HTML anchored to a map location — a static `anchor="[lng, lat]"`, the current selection, or a feature's own geometry via `anchor-layer`/`anchor-feature-id`. `{{field}}` interpolates the picked feature, HTML-escaped by default. |
86
86
  | `<om-behavior>` | Declarative interactions: `on="click|hover|drag|load|data-loaded"` → a named action. |
@@ -125,6 +125,7 @@ Numeric timestamps are always epoch **milliseconds**, never guessed as seconds.
125
125
  | **KML** | `data="./tour.kml"` | placemarks → GeoJSON features; other formats plug in via `OmMap.registerFormat` |
126
126
  | **CityJSON / CityJSONSeq** | `data="./tile.city.json"` + `extruded get-elevation="$roof_height"` | semantic 3D city models (3DBAG, PLATEAU) → extruded footprints with derived `roof_height`/`eaves_height`/`ridge_height`/`roof_area`; national grids reprojected automatically (NL/CH/DE/JP/AT/SG); `.city.jsonl` streams in as it downloads; lazy chunk — see [docs/3d-assets.md](docs/3d-assets.md#semantic-city-models-cityjson) |
127
127
  | **GeoTIFF / COG raster** | `<om-layer type="COGLayer" src="./dem.tif" min="0" max="1900" colormap="viridis">` | Cloud-Optimized GeoTIFFs stream tiles by Range request (lazy chunk); min/max restretch + colormap swaps are GPU uniforms, nodata → transparent, legend ramp derives automatically; plain 8-bit RGB COGs need no attributes at all |
128
+ | **Zarr / GeoZarr raster** | `<om-layer type="ZarrLayer" src="./x.zarr" variable="temp" select="time=0" colormap="viridis" min="…" max="…">` | Chunked N-dimensional arrays (climate/weather grids, datacubes) rendered on the GPU (lazy chunk; built on `@developmentseed/deck.gl-zarr` + zarrita). Pin non-spatial dims with `select`; GeoZarr stores georeference themselves, a plain Zarr takes manual `bounds`/`crs`/`spatial-dims`; `min`/`max`/`colormap` reuse the COG pipeline. `src` can be any absolute URL — an external/remote store needs no server setup, but must be CORS-enabled (fetched directly in the browser) and public (authenticated stores are a follow-up) |
128
129
  | **Drone JPEG image overlay** | `<om-layer type="ImageOverlay" src="./survey.jpg" georeference="exif">` | Reads GPS, relative altitude, camera, focal length, and DJI gimbal XMP; computes a WGS84 footprint, bakes yaw/roll into the pixels, and renders through `BitmapLayer`. Persist the processed image plus returned bounds for reloads — see [docs/image-overlays.md](docs/image-overlays.md) |
129
130
  | **WebSocket stream** | `data="wss://feed" key="id" flush="250ms" source="myFormat"` | upsert-by-key, burst coalescing, auto-reconnect; decode any format via `OmMap.registerSource` |
130
131
  | **Polled REST snapshot** | `data="/api/fleet.json" refresh="5s"` | full-snapshot replace per poll; outages keep the last good data |
@@ -306,5 +307,6 @@ Mapbox GL basemaps, depth-interleaved 3D compositing, globe projection, SSE tran
306
307
  | | |
307
308
  |---|---|
308
309
  | [docs/react.md](docs/react.md) · [docs/basemaps.md](docs/basemaps.md) · [docs/testing.md](docs/testing.md) · [docs/live-data.md](docs/live-data.md) · [docs/image-overlays.md](docs/image-overlays.md) · [docs/3d-assets.md](docs/3d-assets.md) · [docs/stories.md](docs/stories.md) · [docs/telemetry.md](docs/telemetry.md) | Consumer guides |
310
+ | [CHANGELOG.md](CHANGELOG.md) | Version-by-version release notes |
309
311
  | [llms.txt](llms.txt) | The agent-facing quick reference |
310
312
  | `skills/onlymapjs` | Installable LLM skill for OnlyMapJS authoring |
@@ -23,7 +23,9 @@ hand.
23
23
  | @developmentseed/affine | 0.7.0 | MIT |
24
24
  | @developmentseed/deck.gl-geotiff | 0.7.0 | MIT |
25
25
  | @developmentseed/deck.gl-raster | 0.7.0 | MIT |
26
+ | @developmentseed/deck.gl-zarr | 0.7.0 | MIT |
26
27
  | @developmentseed/geotiff | 0.7.0 | MIT |
28
+ | @developmentseed/geozarr | 0.7.0 | MIT |
27
29
  | @developmentseed/lzw-tiff-decoder | 0.2.2 | MIT |
28
30
  | @developmentseed/morecantile | 0.7.0 | MIT |
29
31
  | @developmentseed/proj | 0.7.0 | MIT |
@@ -98,6 +100,7 @@ hand.
98
100
  | @types/pako | 1.0.7 | MIT |
99
101
  | @types/proj4 | 2.5.6 | MIT |
100
102
  | @xmldom/xmldom | 0.7.13 | MIT |
103
+ | @zarrita/storage | 0.2.0 | MIT |
101
104
  | a5-js | 0.7.3 | Apache-2.0 |
102
105
  | ansi-styles | 4.3.0 | MIT |
103
106
  | anynum | 1.0.1 | MIT |
@@ -169,6 +172,7 @@ hand.
169
172
  | minimist | 1.2.8 | MIT |
170
173
  | mjolnir.js | 3.0.0 | MIT |
171
174
  | murmurhash-js | 1.0.0 | MIT |
175
+ | numcodecs | 0.3.2 | MIT |
172
176
  | pako | 1.0.11 | (MIT AND Zlib) |
173
177
  | path-expression-matcher | 1.6.1 | MIT |
174
178
  | pbf | 3.3.0 | BSD-3-Clause |
@@ -178,6 +182,7 @@ hand.
178
182
  | protocol-buffers-schema | 3.6.1 | MIT |
179
183
  | quickselect | 3.0.0 | ISC |
180
184
  | readable-stream | 2.3.8 | MIT |
185
+ | reference-spec-reader | 0.2.0 | MIT |
181
186
  | resolve-protobuf-schema | 2.1.0 | MIT |
182
187
  | rw | 1.3.3 | BSD-3-Clause |
183
188
  | safe-buffer | 5.1.2 | MIT |
@@ -195,11 +200,14 @@ hand.
195
200
  | tslib | 2.8.1 | 0BSD |
196
201
  | typical | 7.3.0 | MIT |
197
202
  | undici-types | 7.18.2 | MIT |
203
+ | unzipit | 2.0.0 | MIT |
198
204
  | util-deprecate | 1.0.2 | MIT |
199
205
  | uuid | 14.0.1 | MIT |
200
206
  | wkt-parser | 1.5.5 | MIT |
201
207
  | wordwrapjs | 5.1.1 | MIT |
202
208
  | xml-naming | 0.1.0 | MIT |
209
+ | zarrita | 0.7.3 | MIT |
210
+ | zod | 4.4.3 | MIT |
203
211
 
204
212
  ---
205
213
 
@@ -579,6 +587,32 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
579
587
  SOFTWARE.
580
588
  ```
581
589
 
590
+ ## @developmentseed/deck.gl-zarr@0.7.0 (MIT)
591
+
592
+ ```
593
+ MIT License
594
+
595
+ Copyright (c) 2025 Development Seed
596
+
597
+ Permission is hereby granted, free of charge, to any person obtaining a copy
598
+ of this software and associated documentation files (the "Software"), to deal
599
+ in the Software without restriction, including without limitation the rights
600
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
601
+ copies of the Software, and to permit persons to whom the Software is
602
+ furnished to do so, subject to the following conditions:
603
+
604
+ The above copyright notice and this permission notice shall be included in all
605
+ copies or substantial portions of the Software.
606
+
607
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
608
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
609
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
610
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
611
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
612
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
613
+ SOFTWARE.
614
+ ```
615
+
582
616
  ## @developmentseed/geotiff@0.7.0 (MIT)
583
617
 
584
618
  ```
@@ -605,6 +639,32 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
605
639
  SOFTWARE.
606
640
  ```
607
641
 
642
+ ## @developmentseed/geozarr@0.7.0 (MIT)
643
+
644
+ ```
645
+ MIT License
646
+
647
+ Copyright (c) 2025 Development Seed
648
+
649
+ Permission is hereby granted, free of charge, to any person obtaining a copy
650
+ of this software and associated documentation files (the "Software"), to deal
651
+ in the Software without restriction, including without limitation the rights
652
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
653
+ copies of the Software, and to permit persons to whom the Software is
654
+ furnished to do so, subject to the following conditions:
655
+
656
+ The above copyright notice and this permission notice shall be included in all
657
+ copies or substantial portions of the Software.
658
+
659
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
660
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
661
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
662
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
663
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
664
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
665
+ SOFTWARE.
666
+ ```
667
+
608
668
  ## @developmentseed/lzw-tiff-decoder@0.2.2 (MIT)
609
669
 
610
670
  ```
@@ -4035,6 +4095,32 @@ The above copyright notice and this permission notice shall be included in all c
4035
4095
  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
4036
4096
  ```
4037
4097
 
4098
+ ## @zarrita/storage@0.2.0 (MIT)
4099
+
4100
+ ```
4101
+ MIT License
4102
+
4103
+ Copyright (c) 2020-2023 Trevor Manz
4104
+
4105
+ Permission is hereby granted, free of charge, to any person obtaining a copy
4106
+ of this software and associated documentation files (the "Software"), to deal
4107
+ in the Software without restriction, including without limitation the rights
4108
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
4109
+ copies of the Software, and to permit persons to whom the Software is
4110
+ furnished to do so, subject to the following conditions:
4111
+
4112
+ The above copyright notice and this permission notice shall be included in all
4113
+ copies or substantial portions of the Software.
4114
+
4115
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
4116
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
4117
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
4118
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
4119
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
4120
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
4121
+ SOFTWARE.
4122
+ ```
4123
+
4038
4124
  ## a5-js@0.7.3 (Apache-2.0)
4039
4125
 
4040
4126
  ```
@@ -7171,6 +7257,32 @@ SOFTWARE.
7171
7257
  License: MIT (no license file shipped in the package)
7172
7258
  ```
7173
7259
 
7260
+ ## numcodecs@0.3.2 (MIT)
7261
+
7262
+ ```
7263
+ MIT License
7264
+
7265
+ Copyright (c) 2020 Trevor Manz
7266
+
7267
+ Permission is hereby granted, free of charge, to any person obtaining a copy
7268
+ of this software and associated documentation files (the "Software"), to deal
7269
+ in the Software without restriction, including without limitation the rights
7270
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7271
+ copies of the Software, and to permit persons to whom the Software is
7272
+ furnished to do so, subject to the following conditions:
7273
+
7274
+ The above copyright notice and this permission notice shall be included in all
7275
+ copies or substantial portions of the Software.
7276
+
7277
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
7278
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
7279
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
7280
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
7281
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
7282
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
7283
+ SOFTWARE.
7284
+ ```
7285
+
7174
7286
  ## pako@1.0.11 ((MIT AND Zlib))
7175
7287
 
7176
7288
  ```
@@ -7431,6 +7543,32 @@ IN THE SOFTWARE.
7431
7543
  """
7432
7544
  ```
7433
7545
 
7546
+ ## reference-spec-reader@0.2.0 (MIT)
7547
+
7548
+ ```
7549
+ MIT License
7550
+
7551
+ Copyright (c) 2021 Trevor Manz
7552
+
7553
+ Permission is hereby granted, free of charge, to any person obtaining a copy
7554
+ of this software and associated documentation files (the "Software"), to deal
7555
+ in the Software without restriction, including without limitation the rights
7556
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7557
+ copies of the Software, and to permit persons to whom the Software is
7558
+ furnished to do so, subject to the following conditions:
7559
+
7560
+ The above copyright notice and this permission notice shall be included in all
7561
+ copies or substantial portions of the Software.
7562
+
7563
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
7564
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
7565
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
7566
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
7567
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
7568
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
7569
+ SOFTWARE.
7570
+ ```
7571
+
7434
7572
  ## resolve-protobuf-schema@2.1.0 (MIT)
7435
7573
 
7436
7574
  ```
@@ -7884,6 +8022,54 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
7884
8022
  SOFTWARE.
7885
8023
  ```
7886
8024
 
8025
+ ## unzipit@2.0.0 (MIT)
8026
+
8027
+ ```
8028
+ The MIT License (MIT)
8029
+
8030
+ Copyright (c) 2014 Josh Wolfe
8031
+
8032
+ Permission is hereby granted, free of charge, to any person obtaining a copy
8033
+ of this software and associated documentation files (the "Software"), to deal
8034
+ in the Software without restriction, including without limitation the rights
8035
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8036
+ copies of the Software, and to permit persons to whom the Software is
8037
+ furnished to do so, subject to the following conditions:
8038
+
8039
+ The above copyright notice and this permission notice shall be included in all
8040
+ copies or substantial portions of the Software.
8041
+
8042
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
8043
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
8044
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
8045
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
8046
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
8047
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
8048
+ SOFTWARE.
8049
+
8050
+ MIT License
8051
+
8052
+ Copyright (c) 2019 Gregg Tavares
8053
+
8054
+ Permission is hereby granted, free of charge, to any person obtaining a copy
8055
+ of this software and associated documentation files (the "Software"), to deal
8056
+ in the Software without restriction, including without limitation the rights
8057
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8058
+ copies of the Software, and to permit persons to whom the Software is
8059
+ furnished to do so, subject to the following conditions:
8060
+
8061
+ The above copyright notice and this permission notice shall be included in all
8062
+ copies or substantial portions of the Software.
8063
+
8064
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
8065
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
8066
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
8067
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
8068
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
8069
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
8070
+ SOFTWARE.
8071
+ ```
8072
+
7887
8073
  ## util-deprecate@1.0.2 (MIT)
7888
8074
 
7889
8075
  ```
@@ -7992,3 +8178,55 @@ SOFTWARE.
7992
8178
  ```
7993
8179
  License: MIT (no license file shipped in the package)
7994
8180
  ```
8181
+
8182
+ ## zarrita@0.7.3 (MIT)
8183
+
8184
+ ```
8185
+ MIT License
8186
+
8187
+ Copyright (c) 2020-2023 Trevor Manz
8188
+
8189
+ Permission is hereby granted, free of charge, to any person obtaining a copy
8190
+ of this software and associated documentation files (the "Software"), to deal
8191
+ in the Software without restriction, including without limitation the rights
8192
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8193
+ copies of the Software, and to permit persons to whom the Software is
8194
+ furnished to do so, subject to the following conditions:
8195
+
8196
+ The above copyright notice and this permission notice shall be included in all
8197
+ copies or substantial portions of the Software.
8198
+
8199
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
8200
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
8201
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
8202
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
8203
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
8204
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
8205
+ SOFTWARE.
8206
+ ```
8207
+
8208
+ ## zod@4.4.3 (MIT)
8209
+
8210
+ ```
8211
+ MIT License
8212
+
8213
+ Copyright (c) 2025 Colin McDonnell
8214
+
8215
+ Permission is hereby granted, free of charge, to any person obtaining a copy
8216
+ of this software and associated documentation files (the "Software"), to deal
8217
+ in the Software without restriction, including without limitation the rights
8218
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8219
+ copies of the Software, and to permit persons to whom the Software is
8220
+ furnished to do so, subject to the following conditions:
8221
+
8222
+ The above copyright notice and this permission notice shall be included in all
8223
+ copies or substantial portions of the Software.
8224
+
8225
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
8226
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
8227
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
8228
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
8229
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
8230
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
8231
+ SOFTWARE.
8232
+ ```
@@ -19,7 +19,7 @@ async function v(N = {}) {
19
19
  if (n) {
20
20
  const { createRequire: I } = await import(
21
21
  /*webpackIgnore:true*/
22
- "./lerc-fOXa6Yt9.js"
22
+ "./lerc-74-SNPeU.js"
23
23
  ).then((g) => g._);
24
24
  var O = I(import.meta.url);
25
25
  }
@@ -1,4 +1,4 @@
1
- import { C as ny, L as sy, M as oy, m as ay, c as ka, z as oc, a as Sd, G as sm, V as ly, W as cy, b as uy, g as hy, d as Vu, f as Ed, e as dy, l as py, u as fy, D as Qf, h as my } from "./index-B1NnawjM.js";
1
+ import { C as ny, L as sy, M as oy, m as ay, c as ka, z as oc, a as Sd, G as sm, V as ly, W as cy, b as uy, g as hy, d as Vu, f as Ed, e as dy, l as py, u as fy, D as Qf, h as my } from "./index-aBiHCzy-.js";
2
2
  const Cd = Math.PI / 180, gy = 180 / Math.PI;
3
3
  function em(Pe, Q = 0) {
4
4
  const me = Math.min(180, Pe) * Cd;