@chrtco/sdk 0.10.51 → 0.10.53

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 CHANGED
@@ -5,6 +5,12 @@ All notable changes to `@chrtco/sdk` will be documented in this file.
5
5
  ## [Unreleased]
6
6
 
7
7
  ### Added
8
+ - **`generateStyle({ dangerDepthRounding: 'down' })`** — the depth beside a rock, wreck or
9
+ obstruction rounded toward the shallower figure (ADR 0047): whole feet floored in a feet style,
10
+ metres floored to the decimetre. Default `'nearest'`, the served form, byte-identical to the
11
+ style without it. CHRTpaper prints with `'down'`. `DangerDepthRounding`.
12
+ - **CHRTland summit heights follow `depthUnits`.** In a feet style a summit reads `410 ft`
13
+ (nearest foot, as a height), not `125 m`; a metres style is unchanged.
8
14
  - **`generateStyle({ dangerDepthPlacers: true })`** — the danger depths (the depth beside a rock,
9
15
  wreck or obstruction) as a pair: an invisible placer `s52-{UWTROC,OBSTRN,WRECKS}-placer-label`
10
16
  in 0.10.3's collision form (`text-opacity: 0`) beneath each callout, which is then always drawn
@@ -48,6 +54,20 @@ All notable changes to `@chrtco/sdk` will be documented in this file.
48
54
  emits for the relief source. Exported for consumers that describe that
49
55
  source themselves, such as the tile-worker's TileJSON.
50
56
 
57
+ ### Changed
58
+ - **Below z7, an overview or general chart draws only its aids to navigation.** In continuous
59
+ mode a band-1 or band-2 point mark (an icon or a circle) that is not an aid to navigation now
60
+ draws from z7, the coastal band's floor, instead of from its band's z0 or z5: platforms,
61
+ dumping grounds, islets drawn as points and the like. Buoys, beacons, lights, light floats and
62
+ vessels, fog signals, radio and radar aids, topmarks and daymarks keep their band floor
63
+ (`AID_TO_NAVIGATION_CLASSES`, `COARSE_MARK_FLOOR`), and so, for now, do wrecks, rocks and
64
+ obstructions (`COARSE_MARK_HELD_HAZARDS`). Soundings, text, fills, lines, bands 3–6 and chart
65
+ mode are unchanged.
66
+ - **Sector-light rings wait for their own band**, as the light's flare does: a coastal light's
67
+ legs and arc from z7, an approach light's from z9, a harbour or berthing light's from z11,
68
+ instead of z6 for every band (`bandFloorGate`). Continuous mode only; the night lamps are
69
+ unchanged.
70
+
51
71
  ### Fixed
52
72
  - **The image loaders threw on a map removed while they waited.**
53
73
  `loadS52SymbolImagesCached`, `loadSymbolImageSpecs`, `rethemeSymbolImages`,
@@ -90,6 +110,17 @@ All notable changes to `@chrtco/sdk` will be documented in this file.
90
110
  still the tile-worker's to stamp. `RasterDemSource` gains the optional
91
111
  `attribution` field `PmtilesVectorSource` already had.
92
112
 
113
+ ### Changed
114
+ - **A light's name is placed ahead of the soundings.** The tower under a light
115
+ (LNDMRK with FUNCTN 33 "light support" and a name) labels from a new layer,
116
+ `s52-LNDMRK-light-label`, at `LIGHTHOUSE_NAME_LABEL_PRIORITY` (270): after
117
+ fog signals, buoy designations and light characteristics, and before the
118
+ major water and island names and the soundings. Named lights around Boston
119
+ and Penobscot Bay that print their name at z14 go from 16 of 22 to 22.
120
+ `LIGHTHOUSE_NAME_FILTER`. The layer carries 270 in `chrt:labelPriority`, so a
121
+ reader that hides the 400 rung (CHRTweb's Simple level) keeps a light's name.
122
+ One more symbol layer in every mode (continuous 376, 381 with `land`).
123
+
93
124
  ## [0.10.40]
94
125
 
95
126
  The first publish since 0.10.39 (2026-09-11, from `ada7e73e`). The publish
@@ -18438,6 +18438,70 @@ var CONVIS_CODES = {
18438
18438
  1: { code: 1, name: "Visually conspicuous", abbr: "conspic" },
18439
18439
  2: { code: 2, name: "Not visually conspicuous" }
18440
18440
  };
18441
+ var HORDAT_CODES = {
18442
+ 1: { code: 1, name: "WGS 72" },
18443
+ 2: { code: 2, name: "WGS 84" },
18444
+ 3: { code: 3, name: "European 1950" },
18445
+ 4: { code: 4, name: "Potsdam Datum" },
18446
+ 5: { code: 5, name: "Adindan" },
18447
+ 6: { code: 6, name: "Afgooye" },
18448
+ 7: { code: 7, name: "Ain el Abd 1970" },
18449
+ 8: { code: 8, name: "Anna 1 Astro 1965" },
18450
+ 9: { code: 9, name: "Antigua Island Astro 1943" },
18451
+ 10: { code: 10, name: "Arc 1950" },
18452
+ 11: { code: 11, name: "Arc 1960" },
18453
+ 12: { code: 12, name: "Ascension Island 1958" },
18454
+ 13: { code: 13, name: "Astro beacon \\E\\ 1945" },
18455
+ 14: { code: 14, name: "Astro DOS 71/4" },
18456
+ 15: { code: 15, name: "Astro Tern Island (FRIG) 1961" },
18457
+ 16: { code: 16, name: "Astronimical Station 1952" },
18458
+ 17: { code: 17, name: "Australian Geodetic 1966" },
18459
+ 18: { code: 18, name: "Australian Geodetic 1984" },
18460
+ 19: { code: 19, name: "Ayabelle Lighthouse" },
18461
+ 20: { code: 20, name: "Bellevue (IGN)" },
18462
+ 21: { code: 21, name: "Bermuda 1957" },
18463
+ 22: { code: 22, name: "Bissau" },
18464
+ 23: { code: 23, name: "Bogota Observatory" },
18465
+ 24: { code: 24, name: "Bukit Rimpah" },
18466
+ 25: { code: 25, name: "Camp Area Astro" },
18467
+ 26: { code: 26, name: "Campo Inchauspe 1969" },
18468
+ 27: { code: 27, name: "Canton Astro 1966" },
18469
+ 28: { code: 28, name: "Cape" },
18470
+ 29: { code: 29, name: "Cape Canaveral" },
18471
+ 30: { code: 30, name: "Carthage" },
18472
+ 31: { code: 31, name: "Chatam Island Astro 1971" },
18473
+ 32: { code: 32, name: "Chua Astro" },
18474
+ 33: { code: 33, name: "Corrego Alegre" },
18475
+ 34: { code: 34, name: "Dabola" },
18476
+ 35: { code: 35, name: "Djakarta (Batavia)" },
18477
+ 36: { code: 36, name: "DOS 1968" },
18478
+ 37: { code: 37, name: "Easter Island 1967" },
18479
+ 38: { code: 38, name: "European 1979" },
18480
+ 39: { code: 39, name: "Fort Thomas 1955" },
18481
+ 40: { code: 40, name: "Gan 1970" },
18482
+ 41: { code: 41, name: "Geodetic Datum 1949" },
18483
+ 42: { code: 42, name: "Graciosa Base SW 1948" },
18484
+ 43: { code: 43, name: "Guam 1963" },
18485
+ 44: { code: 44, name: "Ganung Segara" },
18486
+ 45: { code: 45, name: "GUX 1 Astro" },
18487
+ 46: { code: 46, name: "Herat North" },
18488
+ 47: { code: 47, name: "Hjorsey 1955" },
18489
+ 48: { code: 48, name: "Hong Kong 1963" },
18490
+ 49: { code: 49, name: "Hu-Tzu-Shan" },
18491
+ 50: { code: 50, name: "Indian" },
18492
+ 51: { code: 51, name: "Indian 1954" },
18493
+ 52: { code: 52, name: "Indian 1975" },
18494
+ 53: { code: 53, name: "Ireland 1965" },
18495
+ 54: { code: 54, name: "ISTS 061 Astro 1968" },
18496
+ 55: { code: 55, name: "ISTS 073 Astro 1969" },
18497
+ 56: { code: 56, name: "Johnston Island 1961" },
18498
+ 57: { code: 57, name: "Kandawala" },
18499
+ 58: { code: 58, name: "Kerguelen Island 1949" },
18500
+ 59: { code: 59, name: "Kertau 1948" },
18501
+ 60: { code: 60, name: "Kusaie Astro 1951" },
18502
+ 99: { code: 99, name: "South Asia" },
18503
+ 100: { code: 100, name: "Tananarive Observatory 1925" }
18504
+ };
18441
18505
  var LITCHR_CODES = {
18442
18506
  1: { code: 1, name: "Fixed", abbr: "F" },
18443
18507
  2: { code: 2, name: "Flashing", abbr: "Fl" },
@@ -18607,6 +18671,37 @@ var TRAFIC_CODES = {
18607
18671
  3: { code: 3, name: "One-way" },
18608
18672
  4: { code: 4, name: "Two-way" }
18609
18673
  };
18674
+ var VERDAT_CODES = {
18675
+ 1: { code: 1, name: "Mean low water springs" },
18676
+ 2: { code: 2, name: "Mean lower low water springs" },
18677
+ 3: { code: 3, name: "Mean sea level" },
18678
+ 4: { code: 4, name: "Lowest low water" },
18679
+ 5: { code: 5, name: "Mean low water" },
18680
+ 6: { code: 6, name: "Lowest low water springs" },
18681
+ 7: { code: 7, name: "Approximate mean low water springs" },
18682
+ 8: { code: 8, name: "Indian spring low water" },
18683
+ 9: { code: 9, name: "Low water springs" },
18684
+ 10: { code: 10, name: "Approximate lowest astronomical tide" },
18685
+ 11: { code: 11, name: "Nearly lowest low water" },
18686
+ 12: { code: 12, name: "Mean lower low water" },
18687
+ 13: { code: 13, name: "Low water" },
18688
+ 14: { code: 14, name: "Approximate mean low water" },
18689
+ 15: { code: 15, name: "Approximate mean lower low water" },
18690
+ 16: { code: 16, name: "Mean high water" },
18691
+ 17: { code: 17, name: "Mean high water springs" },
18692
+ 18: { code: 18, name: "High water" },
18693
+ 19: { code: 19, name: "Approximate mean sea level" },
18694
+ 20: { code: 20, name: "High water springs" },
18695
+ 21: { code: 21, name: "Mean higher high water" },
18696
+ 22: { code: 22, name: "Equinoctial spring low water" },
18697
+ 23: { code: 23, name: "Lowest astronomical tide" },
18698
+ 24: { code: 24, name: "Local datum" },
18699
+ 25: { code: 25, name: "International Great Lakes Datum 1985" },
18700
+ 26: { code: 26, name: "Mean water level" },
18701
+ 27: { code: 27, name: "Lower low water large tide" },
18702
+ 28: { code: 28, name: "Higher high water large tide" },
18703
+ 29: { code: 29, name: "Nearly highest high water" }
18704
+ };
18610
18705
  var WATLEV_CODES = {
18611
18706
  1: { code: 1, name: "Partly submerged at high water" },
18612
18707
  2: { code: 2, name: "Always dry" },
@@ -18642,6 +18737,7 @@ var S57_CODELISTS = /* @__PURE__ */ new Map([
18642
18737
  ["COLPAT", COLPAT_CODES],
18643
18738
  ["CONDTN", CONDTN_CODES],
18644
18739
  ["CONVIS", CONVIS_CODES],
18740
+ ["HORDAT", HORDAT_CODES],
18645
18741
  ["LITCHR", LITCHR_CODES],
18646
18742
  ["MARSYS", MARSYS_CODES],
18647
18743
  ["NATCON", NATCON_CODES],
@@ -18652,6 +18748,7 @@ var S57_CODELISTS = /* @__PURE__ */ new Map([
18652
18748
  ["STATUS", STATUS_CODES],
18653
18749
  ["TOPSHP", TOPSHP_CODES],
18654
18750
  ["TRAFIC", TRAFIC_CODES],
18751
+ ["VERDAT", VERDAT_CODES],
18655
18752
  ["WATLEV", WATLEV_CODES]
18656
18753
  ]);
18657
18754
  var S57_DOMAINS = new Map(
@@ -18679,7 +18776,13 @@ var COLOUR_ABBR = s57AbbrTable("COLOUR");
18679
18776
  var LITCHR_ABBR = s57AbbrTable("LITCHR");
18680
18777
 
18681
18778
  // src/atlas/labels.ts
18779
+ var HAS_OBJNAM = [
18780
+ "all",
18781
+ ["has", "OBJNAM"],
18782
+ ["!=", ["coalesce", ["get", "OBJNAM"], ""], ""]
18783
+ ];
18682
18784
  var NIGHT_KNOCKOUT = resolveColor("UIBCK", "NIGHT");
18785
+ var LIGHTHOUSE_NAME_FILTER = ["all", listAttrHas("FUNCTN", ["33"]), HAS_OBJNAM];
18683
18786
  function labelSortKey(rank, within) {
18684
18787
  if (within === void 0) return rank * 1e3;
18685
18788
  return [