@chrtco/sdk 0.10.18 → 0.10.19
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/atlas/browser.cjs +29 -1
- package/dist/atlas/browser.cjs.map +1 -1
- package/dist/atlas/browser.d.cts +2 -2
- package/dist/atlas/browser.d.ts +2 -2
- package/dist/atlas/browser.js +28 -1
- package/dist/atlas/browser.js.map +1 -1
- package/dist/index.cjs +1050 -325
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +283 -6
- package/dist/index.d.ts +283 -6
- package/dist/index.js +1045 -325
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1182,6 +1182,100 @@ interface SearchResponse {
|
|
|
1182
1182
|
attribution: string;
|
|
1183
1183
|
disclaimer: string;
|
|
1184
1184
|
}
|
|
1185
|
+
/**
|
|
1186
|
+
* CHRTpoi — one charted marine facility.
|
|
1187
|
+
*
|
|
1188
|
+
* `id` is the LNAM of the facility's largest-scale charted instance — the
|
|
1189
|
+
* feature you meet following `id` + `cell_id` into `features()`. Stable while
|
|
1190
|
+
* that feature survives in its cell. Never use it to group across cells: the
|
|
1191
|
+
* same facility carries a DIFFERENT LNAM in every cell that charts it, and the
|
|
1192
|
+
* grouping is already done server-side (`members` says how many instances
|
|
1193
|
+
* merged into this row).
|
|
1194
|
+
*/
|
|
1195
|
+
interface Poi {
|
|
1196
|
+
id: string;
|
|
1197
|
+
/**
|
|
1198
|
+
* OBJNAM verbatim from the chart — or null. ~6 % of charted marinas carry
|
|
1199
|
+
* no name; the facility is real, the chart simply does not name it. Null is
|
|
1200
|
+
* honest absence, never invented.
|
|
1201
|
+
*/
|
|
1202
|
+
name: string | null;
|
|
1203
|
+
/** CHRT's category axis. v1: "marina" (S-57 HRBFAC with CATHAF ∋ 5). */
|
|
1204
|
+
category: string;
|
|
1205
|
+
lon: number;
|
|
1206
|
+
lat: number;
|
|
1207
|
+
/** [west, south, east, north] — union of every charted instance's envelope. Degenerate for a point, never null. */
|
|
1208
|
+
bbox: readonly [number, number, number, number];
|
|
1209
|
+
/** Source S-57 layer (HRBFAC in v1). */
|
|
1210
|
+
layer: string;
|
|
1211
|
+
cell_id: string;
|
|
1212
|
+
/** Issuing authority (e.g. "NOAA_ENC", "USACE_IENC") — per POI, because one viewport can span authorities. */
|
|
1213
|
+
chart_source: string;
|
|
1214
|
+
/** Source-cell currency, inline — no per-row cells() call needed. */
|
|
1215
|
+
edition: number | null;
|
|
1216
|
+
update_number: number | null;
|
|
1217
|
+
issue_date: string | null;
|
|
1218
|
+
/** Charted instances merged into this row by server-side de-duplication (>= 1). */
|
|
1219
|
+
members: number;
|
|
1220
|
+
/** Metres from `near`. Present only in near mode — absent, not null, in bbox mode. */
|
|
1221
|
+
distance_m?: number;
|
|
1222
|
+
}
|
|
1223
|
+
/**
|
|
1224
|
+
* ALWAYS present on a POI response, and the field to read FIRST. It names what
|
|
1225
|
+
* an empty `pois` array means for this exact request:
|
|
1226
|
+
*
|
|
1227
|
+
* - `covered` — the whole queried area is charted: empty = no facilities
|
|
1228
|
+
* charted there. A real answer.
|
|
1229
|
+
* - `partial` — part of the area is uncharted: results speak only for the
|
|
1230
|
+
* charted part.
|
|
1231
|
+
* - `none` — CHRT holds no coverage here: empty means NOTHING about the
|
|
1232
|
+
* area, and must never be shown as "no marinas".
|
|
1233
|
+
*
|
|
1234
|
+
* `message` is written to be relayed to the user unedited.
|
|
1235
|
+
*/
|
|
1236
|
+
interface PoiCoverage {
|
|
1237
|
+
state: "covered" | "partial" | "none";
|
|
1238
|
+
message: string;
|
|
1239
|
+
chart_sources: string[] | null;
|
|
1240
|
+
}
|
|
1241
|
+
/** Provenance of the POI dataset — in the payload so clients never hardcode a source. */
|
|
1242
|
+
interface PoiDataset {
|
|
1243
|
+
source: "ENC";
|
|
1244
|
+
derived_from: string;
|
|
1245
|
+
/** Every category the dataset currently serves. */
|
|
1246
|
+
categories: readonly string[];
|
|
1247
|
+
/** When the POI table was last rebuilt against the ENC corpus (daily), ISO 8601. */
|
|
1248
|
+
updated_at: string | null;
|
|
1249
|
+
}
|
|
1250
|
+
interface PoiResponse {
|
|
1251
|
+
pois: Poi[];
|
|
1252
|
+
/** Exact count of all matches — not an estimate, and not the page length. */
|
|
1253
|
+
total_count: number;
|
|
1254
|
+
limit: number;
|
|
1255
|
+
offset: number;
|
|
1256
|
+
coverage: PoiCoverage;
|
|
1257
|
+
dataset: PoiDataset;
|
|
1258
|
+
attribution: string;
|
|
1259
|
+
disclaimer: string;
|
|
1260
|
+
}
|
|
1261
|
+
/**
|
|
1262
|
+
* Exactly ONE of `bbox` or `near` — the endpoint rejects both-or-neither with
|
|
1263
|
+
* a 400, so precedence is never invisible.
|
|
1264
|
+
*/
|
|
1265
|
+
interface PoiOptions {
|
|
1266
|
+
/** `[west, south, east, north]` — viewport mode, the primary. */
|
|
1267
|
+
bbox?: [number, number, number, number];
|
|
1268
|
+
/** `[longitude, latitude]` — radius mode ("marinas near me"). Orders by distance and adds `distance_m`. */
|
|
1269
|
+
near?: [number, number];
|
|
1270
|
+
/** Near-mode radius in metres. Default 10,000, clamped to 100,000. Rejected without `near`. */
|
|
1271
|
+
radiusM?: number;
|
|
1272
|
+
/** v1: "marina". Omit for every category — new categories appear without a contract change. */
|
|
1273
|
+
category?: string;
|
|
1274
|
+
/** Default 100, clamped to 500; the clamp is echoed in the envelope. */
|
|
1275
|
+
limit?: number;
|
|
1276
|
+
offset?: number;
|
|
1277
|
+
signal?: AbortSignal;
|
|
1278
|
+
}
|
|
1185
1279
|
interface SearchOptions {
|
|
1186
1280
|
/**
|
|
1187
1281
|
* Free text. Multi-word in ANY order — `"cutty harbor"` finds
|
|
@@ -1294,6 +1388,22 @@ interface TileTokenResponse {
|
|
|
1294
1388
|
kid: string;
|
|
1295
1389
|
/** Build id/tag pinned into the JWT — the tile-worker cache key. */
|
|
1296
1390
|
buildTag: string;
|
|
1391
|
+
/**
|
|
1392
|
+
* Build id per REGION this token can fetch, `buildTag` included.
|
|
1393
|
+
*
|
|
1394
|
+
* A tile token is scoped to one chart region, but it also carries the
|
|
1395
|
+
* implicit `CHRT_LAND` / `CHRT_RELIEF` basemap grant (ADR 0023 §4), and
|
|
1396
|
+
* those regions are promoted on their own schedule. So `buildTag` answers
|
|
1397
|
+
* "which chart?" and says nothing about the land drawn under it — a consumer
|
|
1398
|
+
* caching tiles per build MUST key on this map instead, or a land-only
|
|
1399
|
+
* cutover is invisible to it and it serves the previous land indefinitely.
|
|
1400
|
+
* That is not hypothetical: it is what the browser tile cache did until
|
|
1401
|
+
* 2026-08-25, and what the tile-worker's edge cache did until 2026-08-24.
|
|
1402
|
+
*
|
|
1403
|
+
* Always non-empty — at minimum `{ [region]: buildTag }`. A region absent
|
|
1404
|
+
* from the map has no servable build and should not be cached at all.
|
|
1405
|
+
*/
|
|
1406
|
+
buildTags: Record<string, string>;
|
|
1297
1407
|
/** Echo of the region the token is scoped to. */
|
|
1298
1408
|
region: string;
|
|
1299
1409
|
}
|
|
@@ -1338,6 +1448,17 @@ declare class TileAuth {
|
|
|
1338
1448
|
getToken(region?: string): Promise<TileTokenResponse>;
|
|
1339
1449
|
/** Synchronous cache peek — null if absent or within the stale grace window. */
|
|
1340
1450
|
peek(region?: string): string | null;
|
|
1451
|
+
/**
|
|
1452
|
+
* Synchronous peek at the cached mint's per-region build ids — `{}` when the
|
|
1453
|
+
* cache is cold.
|
|
1454
|
+
*
|
|
1455
|
+
* `chrt.style()` is synchronous and cannot mint, so this is how a style
|
|
1456
|
+
* generated after the cache is warm picks up the build discriminator without
|
|
1457
|
+
* the caller threading it by hand. A cold cache yields `{}`, which produces
|
|
1458
|
+
* the undiscriminated URL the SDK emitted before this existed — never an
|
|
1459
|
+
* error, and never a wrong build.
|
|
1460
|
+
*/
|
|
1461
|
+
peekBuildTags(region?: string): Readonly<Record<string, string>>;
|
|
1341
1462
|
/**
|
|
1342
1463
|
* Produce a MapLibre / Mapbox GL `transformRequest`. Attaches
|
|
1343
1464
|
* `Authorization: Bearer <jwt>` only to CHRT tile URLs and the CHRT
|
|
@@ -1450,10 +1571,16 @@ declare class TilesEndpoint {
|
|
|
1450
1571
|
*/
|
|
1451
1572
|
fetchStyle(opts?: FetchStyleOptions): Promise<MapLibreStyle>;
|
|
1452
1573
|
/**
|
|
1453
|
-
* Vector tile URL
|
|
1454
|
-
*
|
|
1574
|
+
* Vector tile URL for the configured region, served by the tile-worker at
|
|
1575
|
+
* `tiles.chrt.co`. Tiles are JWT-gated — pair this with
|
|
1455
1576
|
* `chrt.transformRequest()`, which attaches the `Authorization: Bearer`
|
|
1456
1577
|
* header. Prefer `chrt.style()`, which wires the source for you.
|
|
1578
|
+
*
|
|
1579
|
+
* Carries the build discriminator (`?v=`) once the token cache is warm, so
|
|
1580
|
+
* two buildTags never share one cache entry — see `BUILD_PARAM`. A cold cache
|
|
1581
|
+
* yields the bare URL, which is equally valid: the server ignores the
|
|
1582
|
+
* parameter, and warming is a `chrt.warmTiles()` (or one
|
|
1583
|
+
* `chrt.transformRequest()` round-trip) away.
|
|
1457
1584
|
*/
|
|
1458
1585
|
tileUrl(z: number, x: number, y: number): string;
|
|
1459
1586
|
/**
|
|
@@ -3123,7 +3250,84 @@ type AnySourceSpec = VectorSourceSpec | RasterDemSource;
|
|
|
3123
3250
|
declare const LAND_REGION = "CHRT_LAND";
|
|
3124
3251
|
/** CHRTland's terrarium relief. */
|
|
3125
3252
|
declare const RELIEF_REGION = "CHRT_RELIEF";
|
|
3253
|
+
/** The world basemap under everything (completing-the-world-map, 2026-08-27). */
|
|
3254
|
+
declare const BASE_REGION = "CHRT_BASE";
|
|
3255
|
+
/**
|
|
3256
|
+
* CHRT_BASE's zoom range. 11 is the deepest zoom the archive's detail tier
|
|
3257
|
+
* carries honestly — the planet's inland water exists from z9 and is read at
|
|
3258
|
+
* z10 — and the world tier is tiled to the same depth so no layer vanishes
|
|
3259
|
+
* from a tile the detail tier creates. Above 11 the client overzooms, and
|
|
3260
|
+
* overzoomed inland water looks soft DELIBERATELY: it is "roughly where the
|
|
3261
|
+
* lakes are", not a surveyed shoreline. Must equal the builder's MAXZOOM
|
|
3262
|
+
* (tools/chrtbase-build/build.mjs).
|
|
3263
|
+
*/
|
|
3264
|
+
declare const BASE_MINZOOM = 0;
|
|
3265
|
+
declare const BASE_MAXZOOM = 11;
|
|
3126
3266
|
type SourceMode = "mapbox" | "pmtiles";
|
|
3267
|
+
/**
|
|
3268
|
+
* Query parameter carrying the resolved build id on every tile URL.
|
|
3269
|
+
*
|
|
3270
|
+
* ── Why the build has to be IN THE URL ────────────────────────────────────
|
|
3271
|
+
*
|
|
3272
|
+
* The Worker reports the build it served in the `X-Build-Id` RESPONSE HEADER
|
|
3273
|
+
* and sends `Cache-Control: private, max-age=3600`. A header is not part of a
|
|
3274
|
+
* cache key, so every build shares one URL: after a cutover, tiles the client
|
|
3275
|
+
* already fetched keep coming from its own HTTP cache — the old build — while
|
|
3276
|
+
* newly-panned-to tiles come from the new one, for up to the full hour. The
|
|
3277
|
+
* client renders TWO BUILDS AT ONCE.
|
|
3278
|
+
*
|
|
3279
|
+
* On a nautical chart that is not a cosmetic seam. Measured live 2026-08-25,
|
|
3280
|
+
* cutting `CHRT_LAND` from `463b265e` to `dbb69074` (a build that deliberately
|
|
3281
|
+
* changes land extent): adjacent tiles disagreed about whether land was there,
|
|
3282
|
+
* at the seam between them. Putting the build in the key gives each build its
|
|
3283
|
+
* own cache namespace — old entries age out untouched, and the next style
|
|
3284
|
+
* build flips the whole viewport at once instead of tile by tile.
|
|
3285
|
+
*
|
|
3286
|
+
* ── Why a QUERY PARAMETER and not a path segment ──────────────────────────
|
|
3287
|
+
*
|
|
3288
|
+
* A path segment would be the tidier-looking URL and it is the wrong trade
|
|
3289
|
+
* here, for two reasons that are both about other people's code:
|
|
3290
|
+
*
|
|
3291
|
+
* 1. COMPATIBILITY IS PERMANENT, NOT "one release". iOS and desktop are
|
|
3292
|
+
* prod-only clients that ship on their own cadence. The Worker routes on
|
|
3293
|
+
* `url.pathname` (`TILE_ROUTE_PATH`) and reads only `?build=`, so a URL
|
|
3294
|
+
* carrying this parameter routes BYTE-IDENTICALLY to one without it. A
|
|
3295
|
+
* new path segment would instead need a second route regex kept alive
|
|
3296
|
+
* indefinitely.
|
|
3297
|
+
* 2. FIVE SEPARATE PATTERNS ALREADY MATCH THIS URL, and every one of them
|
|
3298
|
+
* ends `(?:\?.*)?$` — `src/lib/map/tile-token-client.ts` TILE_URL_PATH
|
|
3299
|
+
* and `src/site/chart/sail-tile-token.ts` (which decide whether a tile
|
|
3300
|
+
* gets its Bearer), `packages/sdk/src/tile-auth.ts` TILE_URL_PATH,
|
|
3301
|
+
* `public/chrt-tile-sw.js` TILE_URL_RE (which also reads the region out of
|
|
3302
|
+
* the URL to pick its per-region cache), and
|
|
3303
|
+
* `src/site/offline/pack-protocol.ts` TILE_URL (which rewrites a tile to
|
|
3304
|
+
* a downloaded pack). Their optional PATH segment, by contrast, is
|
|
3305
|
+
* `[a-z][a-z0-9-]*` — letter-first so it cannot be confused with the
|
|
3306
|
+
* numeric `{z}` — and build ids are hex (`463b265e`, `4de67273`). A build
|
|
3307
|
+
* in the path would miss every one of them, and a tile those patterns
|
|
3308
|
+
* miss does not merely go uncached: it goes out with NO BEARER and comes
|
|
3309
|
+
* back 401, which MapLibre records as a permanently errored tile. That is
|
|
3310
|
+
* the exact failure the `.png` drift caused on staging-sail (see
|
|
3311
|
+
* `chrt-tile-sw.js`).
|
|
3312
|
+
*
|
|
3313
|
+
* The query string is also what the caches this fix targets actually key on:
|
|
3314
|
+
* the browser HTTP cache, MapLibre's own tile cache, and the Service Worker's
|
|
3315
|
+
* `new Request(req.url)` entry key all include it.
|
|
3316
|
+
*
|
|
3317
|
+
* `v` rather than `build`: `?build=` is a taken name with a strict meaning on
|
|
3318
|
+
* the Worker (`?build=candidate`, employee-only, 400 on any other value).
|
|
3319
|
+
*/
|
|
3320
|
+
declare const BUILD_PARAM = "v";
|
|
3321
|
+
/**
|
|
3322
|
+
* One tile-URL template — the single place a CHRT tile URL is spelled.
|
|
3323
|
+
*
|
|
3324
|
+
* `buildId` is encoded rather than interpolated raw: MapLibre substitutes
|
|
3325
|
+
* `{z}`/`{x}`/`{y}` by brace-matching the template, so an id containing a
|
|
3326
|
+
* brace would corrupt every tile request. Empty / whitespace-only ids emit no
|
|
3327
|
+
* parameter at all instead of a bare `?v=` that would key its own useless
|
|
3328
|
+
* cache namespace.
|
|
3329
|
+
*/
|
|
3330
|
+
declare function tileTemplate(base: string, region: string, extension: "mvt" | "png", buildId?: string): string;
|
|
3127
3331
|
/** Canonical source id used in `generateStyle()` — matches the region name
|
|
3128
3332
|
* of the one consolidated PMTiles served by the tile-worker for this region. */
|
|
3129
3333
|
declare const DEFAULT_REGION = "NOAA_ENC";
|
|
@@ -3133,10 +3337,41 @@ interface BuildSourcesOptions {
|
|
|
3133
3337
|
/** Chart region. Default: "NOAA_ENC". */
|
|
3134
3338
|
region?: string;
|
|
3135
3339
|
/**
|
|
3136
|
-
*
|
|
3137
|
-
*
|
|
3340
|
+
* Build id of the CHART region (`region`) — the `build_tag` a
|
|
3341
|
+
* `mint-tile-token` response hands back.
|
|
3342
|
+
*
|
|
3343
|
+
* Emitted as the {@link BUILD_PARAM} query parameter on that region's tile
|
|
3344
|
+
* template. See {@link tileTemplate} for why a build discriminator has to be
|
|
3345
|
+
* in the URL at all.
|
|
3346
|
+
*
|
|
3347
|
+
* ⚠ THIS COVERS THE CHART REGION ONLY. A token is minted for one chart
|
|
3348
|
+
* region and `CHRT_LAND` / `CHRT_RELIEF` ride it, so the JWT's `build_tag`
|
|
3349
|
+
* says nothing about a land cutover — the same blind spot that made the
|
|
3350
|
+
* Worker's edge-cache key wrong until `TILE_CACHE_VERSION` v3
|
|
3351
|
+
* (cloudflare/tile-worker/src/cache-encoding.ts). Pass {@link buildTags} to
|
|
3352
|
+
* discriminate the basemap sources too.
|
|
3138
3353
|
*/
|
|
3139
3354
|
buildTag?: string;
|
|
3355
|
+
/**
|
|
3356
|
+
* Resolved build id per region — `{ NOAA_ENC: "…", CHRT_LAND: "…" }`.
|
|
3357
|
+
*
|
|
3358
|
+
* The complete form of {@link buildTag}: every source this style declares
|
|
3359
|
+
* gets its own discriminator, so a `CHRT_LAND` promotion turns over the land
|
|
3360
|
+
* URLs without touching the chart's (and vice versa). An entry here wins
|
|
3361
|
+
* over `buildTag` for the same region.
|
|
3362
|
+
*
|
|
3363
|
+
* This is the mint response's `build_tags` map verbatim (claim contract
|
|
3364
|
+
* v1.7) — `TileTokenResponse.buildTags` in both `lib/map/tile-token-client.ts`
|
|
3365
|
+
* and the SDK's `tile-auth.ts`. The same map already keys the tile Service
|
|
3366
|
+
* Worker's per-region caches; passing it here puts the same identity in the
|
|
3367
|
+
* URL, so the layer above the Service Worker stops mixing builds too.
|
|
3368
|
+
*
|
|
3369
|
+
* A region absent from the map simply gets no discriminator — the URL it
|
|
3370
|
+
* has always had. That is a deliberate soft edge: an older mint response, or
|
|
3371
|
+
* a region with no servable build, must degrade to today's behaviour rather
|
|
3372
|
+
* than emit a URL pinned to a build nobody resolved.
|
|
3373
|
+
*/
|
|
3374
|
+
buildTags?: Readonly<Record<string, string>>;
|
|
3140
3375
|
/** Override tile-worker origin (e.g. staging). Default: DEFAULT_TILE_BASE_URL. */
|
|
3141
3376
|
tileBaseUrl?: string;
|
|
3142
3377
|
/**
|
|
@@ -3150,6 +3385,13 @@ interface BuildSourcesOptions {
|
|
|
3150
3385
|
* `land-regions.ts` still withholds.
|
|
3151
3386
|
*/
|
|
3152
3387
|
relief?: boolean;
|
|
3388
|
+
/**
|
|
3389
|
+
* Emit the CHRT_BASE world basemap as a third vector source — the dark
|
|
3390
|
+
* geography under everything, the tan jurisdiction fill, and the rough
|
|
3391
|
+
* inland water inside countries CHRT carries. Its layers sit UNDER the
|
|
3392
|
+
* no-coverage hatch's companions and everything else; see baseLayers().
|
|
3393
|
+
*/
|
|
3394
|
+
base?: boolean;
|
|
3153
3395
|
}
|
|
3154
3396
|
/**
|
|
3155
3397
|
* Build the "sources" block for a CHRT style.
|
|
@@ -3158,6 +3400,10 @@ interface BuildSourcesOptions {
|
|
|
3158
3400
|
* - `mode: "pmtiles"` (default): one vector tile endpoint for the region,
|
|
3159
3401
|
* routed by the Worker to the one consolidated PMTiles:
|
|
3160
3402
|
* `${tileBaseUrl}/v1/tiles/{region}/{z}/{x}/{y}.mvt`
|
|
3403
|
+
*
|
|
3404
|
+
* Pass `buildTag` / `buildTags` to pin each source's URL to the build it is
|
|
3405
|
+
* serving — without that, one URL is shared by every build and a cutover
|
|
3406
|
+
* leaves the client rendering two of them at once. See {@link BUILD_PARAM}.
|
|
3161
3407
|
*/
|
|
3162
3408
|
declare function buildSources(opts?: BuildSourcesOptions): Record<string, AnySourceSpec>;
|
|
3163
3409
|
|
|
@@ -4193,6 +4439,7 @@ declare class Chrt {
|
|
|
4193
4439
|
readonly interact: InteractClient;
|
|
4194
4440
|
private featuresEp;
|
|
4195
4441
|
private searchEp;
|
|
4442
|
+
private poiEp;
|
|
4196
4443
|
private queryEp;
|
|
4197
4444
|
private http;
|
|
4198
4445
|
private tileAuth;
|
|
@@ -4227,6 +4474,24 @@ declare class Chrt {
|
|
|
4227
4474
|
* from "nothing matched", and neither means the water is clear.
|
|
4228
4475
|
*/
|
|
4229
4476
|
search(options: SearchOptions): Promise<SearchResponse>;
|
|
4477
|
+
/**
|
|
4478
|
+
* CHRTpoi — charted marine facilities in a viewport or radius.
|
|
4479
|
+
*
|
|
4480
|
+
* v1 serves marinas, derived from the ENC's own HRBFAC facility class —
|
|
4481
|
+
* the chart's data, with the source cell's currency inline per POI.
|
|
4482
|
+
*
|
|
4483
|
+
* ```ts
|
|
4484
|
+
* const { pois, coverage } = await chrt.pois({ bbox: [-70.7, 41.4, -70.5, 41.6] });
|
|
4485
|
+
* ```
|
|
4486
|
+
*
|
|
4487
|
+
* **Read `coverage.state` before interpreting an empty list.** `covered` +
|
|
4488
|
+
* empty means no marinas are charted there — a real answer. `none` means
|
|
4489
|
+
* CHRT cannot answer for that area at all, and an empty list means nothing.
|
|
4490
|
+
* The two must never be shown the same way, and `coverage.message` is
|
|
4491
|
+
* written to be relayed unedited. Metered on its own allowance
|
|
4492
|
+
* (`poi_called`), separate from features and search; not gated by tier.
|
|
4493
|
+
*/
|
|
4494
|
+
pois(options: PoiOptions): Promise<PoiResponse>;
|
|
4230
4495
|
/** Spatial proximity query around a point */
|
|
4231
4496
|
query(options: QueryOptions): Promise<QueryResponse>;
|
|
4232
4497
|
/**
|
|
@@ -4415,8 +4680,20 @@ declare class Chrt {
|
|
|
4415
4680
|
* Pre-mint the tile token for a region. Optional — `transformRequest()` warms
|
|
4416
4681
|
* the cache automatically — but useful if you want to surface a mint error
|
|
4417
4682
|
* (e.g. `region_not_licensed`, `tile_quota_exceeded`) before the map loads.
|
|
4683
|
+
*
|
|
4684
|
+
* Returns what it minted, so a caller building its own sources can take the
|
|
4685
|
+
* `buildTags` map straight from here:
|
|
4686
|
+
*
|
|
4687
|
+
* ```ts
|
|
4688
|
+
* const { buildTags } = await chrt.warmTiles();
|
|
4689
|
+
* map.addSource("chrt", buildSources({ region: "NOAA_ENC", buildTags })["NOAA_ENC"]);
|
|
4690
|
+
* ```
|
|
4691
|
+
*
|
|
4692
|
+
* That pins each tile URL to the build it serves, so a build cutover gets its
|
|
4693
|
+
* own client cache namespace instead of leaving old and new tiles mixed on
|
|
4694
|
+
* screen. `chrt.style()` reads the same cache and needs no argument.
|
|
4418
4695
|
*/
|
|
4419
|
-
warmTiles(region?: string): Promise<
|
|
4696
|
+
warmTiles(region?: string): Promise<TileTokenResponse>;
|
|
4420
4697
|
}
|
|
4421
4698
|
|
|
4422
|
-
export { ALL_NAV_AID_LAYERS, ALL_WATER_BODY_LAYERS, AREA_QUERY_LAYERS, ATON_EXPRESSION_CLASSES, type AheadCoverageCell, type AheadFeatureProperties, type AheadOptions, type AheadResponse, type AlongRouteFeatureProperties, type AlongRouteOptions, type AlongRouteResponse, type AreaInspectResult, type AtlasStyle, type AttachOptions, BAND_DRAW_ORDER, BAND_PRIORITY_RANGES, type BBox, BRIDGE_QUERY_LAYERS, BUILD_MAXZOOM, BUILD_MINZOOM, type BandCode, type BandPriorityRange, type BridgeInspectResult, type BuildOfflineStyleOptions, type BuildSourcesOptions, CHART_BAND_CODES, CHART_CASCADE_CODES, CHART_SECTIONS, CHRTRASTER_REF_CROPS, CHRTRASTER_SVGS, CHRT_ATON_COLORS, CHRT_GLYPH_NAMES, CHRT_GLYPH_SVGS, CHRT_ICON_EXPRESSIONS, CHRT_ICON_PREFIX, CHRT_SDF_GLYPHS, CHRT_STYLE_MODES, type CandidateQueryOptions, type CandidatesEventContext, type CellDeletedEvent, type CellDetail, type CellEventData, type CellNewEvent, type CellUpdatedData, type CellUpdatedEvent, type CellsOptions, type CellsResponse, type ChartSection, Chrt, type ChrtConfig, ChrtError, type ChrtStyleMode, type ChrtStyleOptions, type ChrtStyleTheme, type ChrtSymbolSet, type ClickAnchor, ColorTableName, type CoverageOptions, type CoverageResponse, type CoverageRouteCell, type CoverageRouteOptions, type CoverageRouteResponse, type CoverageSource, type CustomStyleConfig, DEFAULT_CLICK_TOLERANCE, DEFAULT_CUSTOM_STYLE_CONFIG, DEFAULT_INSPECT_CLASS_RANK, DEFAULT_LABEL_SETTINGS, DEFAULT_NAV_AID_SETTINGS, DEFAULT_REGION, DEFAULT_SAFETY_CONTOUR_M, DEFAULT_SOUNDING_SETTINGS, DEFAULT_TILE_BASE_URL, DEFAULT_TILE_REGION, DEFAULT_WATER_BODY_SETTINGS, type DecodedAreaFeature, type DecodedBridge, type DecodedNavAid, type DecodedProperty, type DisplayCategory, type DisplayMode, type FeatureCollection, type FeaturesOptions, type FetchStyleOptions, FileSystemAdapter, type FlashPattern, type FlashPhase, type GenerateCustomStyleOptions, type GeneratedCustomStyle, type GeoJsonFeature, type GeoJsonGeometry, type GeomType, INSPECT_CLASS_RANK, INSPECT_RANK_DEVIATIONS, type InspectCandidate, type InspectCandidateSet, type InspectEnrichment, type InspectEventContext, type InspectNotice, type InspectOptions, type InspectResult, type InspectTargetClass, type InspectableFeature, InteractClient, type InteractEntitlement, InteractError, type InteractErrorCode, type InteractHandle, type InteractMapLike, type InteractMapMouseEvent, LABELED_LAYERS, LABEL_BEHAVIOR, LABEL_LAYER_GROUPS, LABEL_PRIORITY, LAND_REGION, type LabelBehavior, type LabelConfigOptions, type LabelLayerConfig, type LabelSettings, type LookupEntry, type MapLibreStyle, type MapboxStyle, type MapboxVectorSource, type MarineAlert, type MarineAlertsOptions, type MarineAlertsResponse, type MarineConditionsOptions, type MarineConditionsResponse, type MarineForecastOptions, type MarineForecastPeriod, type MarineForecastResponse, type MarineSeas, type MarineStation, type MarineSwellTrain, type MarineWind, type MarineZoneRef, NAUTICAL_SYMBOLS, NAV_AID_LAYER_GROUPS, NAV_AID_QUERY_LAYERS, NON_SOLAS_DISCLAIMER, NON_SOLAS_DISCLAIMER_SHORT, type NauticalCategory, type NauticalSymbol, type NavAidInspectResult, type NavAidSettings, type NearbyMarineStation, type OfflineBundleResponse, type OfflineDownloadOptions, type OfflineDownloadProgress, type OfflineDownloadResult, OfflineError, type OfflineErrorCode, type OfflineFetchStyleOptions, type OfflineHeartbeatOptions, type OfflineRegionSummary, type OfflineRemoveOptions, OfflineStyleError, type OfflineStylePlatform, type OfflineStyleResponse, PLACENAME_LAND_CLASSES, PLACENAME_SOURCE_LAYER, PLACENAME_WATER_CLASSES, type PmtilesVectorSource, type QueryFeatureProperties, type QueryOptions, type QueryResponse, RASTER_ATON_CLASSES, RASTER_GLYPH_NAMES, RASTER_ICON_PREFIX, RELIEF_REGION, type ResolvedStyle, type ResolvedTheme, type S101ArtworkProvenance, type S101Feature, S101_AREA_FILL_NAMES, S101_CHART_SECTIONS, S101_FEATURES, S101_ICON_PREFIX, S101_LINE_STYLE_NAMES, S101_NEW_SYMBOLS, S101_NO_OFFICIAL_COUNTERPART, S101_SOURCE_COMMIT, S101_SYMBOL_GROUPS, S101_SYMBOL_NAMES, S52_ATON_LOOKUPS, S52_ATON_LOOKUPS_PAPER, S52_DRAW_ORDER, S52_LOOKUP, S52_PATTERN_SPRITE_PREFIX, SOUNDING_LAYERS, SYMBOL_FAMILIES, SYMBOL_FAMILY_META, SYMBOL_GROUPS, SYMBOL_MAP, type ScaleBand, type SearchCoverageNotice, type SearchHit, type SearchOptions, type SearchResponse, type SectorArcFeature, type SectorArcFeatureCollection, type SectorInfo, type SoundingSettings, type SourceMode, type StyleGeneratorOptions, type StyleLayer, type StyleUrlOptions, type SymbolFamily, type SymbolFamilyMeta, type SymbolGroup, TileAuth, type TileGroup, type TileGroupsResponse, TileTokenError, type TileTokenErrorCode, type TileTokenResponse, type TransformRequest, type TransformedRequest, type VectorSourceSpec, type VesselProfile, WATER_BODY_LAYER_GROUPS, type WaterBodySettings, WeatherEndpoint, type WeatherReading, type WebhookEvent, type WebhookEventType, type WebhookPayload, applyChrtSymbolSet, applyColorTheme, applyCustomStyleSettings, applyRasterSymbolSet, applyS101SymbolSet, atonIconExpression, bandFilterExpression, buildAirportTierExpression, buildBuiltUpAreaTierExpression, buildFlashPattern, buildLabelLayer, buildLakeTierExpression, buildLandAreaTierExpression, buildLandRegionTierExpression, buildLayersForClass, buildOfflineStyle, buildPlaceNameLayers, buildRiverTierExpression, buildSeaAreaTierExpression, buildSectorArcGeoJSON, buildSectorArcsFC, buildSectorsFromFeatures, buildSources, candidateRank, chrtAtonTintExpression, chrtLightTintExpression, collectCandidates, collectClickCandidates, combineWithBandFilter, daymarkColor, decimateFeatures, decodeAreaFeatureProps, decodeBridgeProps, decodeCandidate, decodeNavAidProps, depareColor, depareFillExpression, deriveMarinerName, extractNavAidDesignation, featureIdentity, generateCustomStyle, generateSpriteManifest, generateSpriteSheet, generateStyle, generateStyleJSON, getAvailableLineSymbols, getAvailablePatterns, getAvailablePointSymbols, getCollisionSettings, getDrawPriority, getGridSizeForZoom, getIconExpression, getLabelBehavior, getLabelConfig, getLabelPriority, getLookupEntry, getMaxCellsForZoom, getOrderedClasses, getRasterSvg, getS52SvgString, getS52SymbolStats, getStyleStats, getSymbolSvgString, getThemedS101Svg, getThemedS52Svg, getTopmarkMeaning, hazardColor, hazardFillExpression, iconExpressionForFamily, isLabelLayerVisible, isNavAidLayer, isNavAidLayerVisible, isSoundingLayerVisible, isVisibleInMode, isWaterBodyLayerVisible, labelSortKey, lateralColor, lateralFillExpression, lightColor, lightFillExpression, lightsIconExpression, normalizeStyleMode, normalizeTheme, paginate, parseListCodes, parseSymbolFamily, parseWebhook, patternSpriteId, preprocessLights, preprocessNavAids, preprocessSoundings, preprocessWaterBodies, rasterAtonIconExpression, resolveCustomTheme, resolveRasterImage, resolveS101Color, resolveStyle, resolveTargetClass, s101ArtworkProvenance, sanitizeCustomStyleConfig, scaleSizeValue, scaminToMinZoom, styleModeBand, withinBboxFilter, worldMinusBboxPolygon };
|
|
4699
|
+
export { ALL_NAV_AID_LAYERS, ALL_WATER_BODY_LAYERS, AREA_QUERY_LAYERS, ATON_EXPRESSION_CLASSES, type AheadCoverageCell, type AheadFeatureProperties, type AheadOptions, type AheadResponse, type AlongRouteFeatureProperties, type AlongRouteOptions, type AlongRouteResponse, type AreaInspectResult, type AtlasStyle, type AttachOptions, BAND_DRAW_ORDER, BAND_PRIORITY_RANGES, BASE_MAXZOOM, BASE_MINZOOM, BASE_REGION, type BBox, BRIDGE_QUERY_LAYERS, BUILD_MAXZOOM, BUILD_MINZOOM, BUILD_PARAM, type BandCode, type BandPriorityRange, type BridgeInspectResult, type BuildOfflineStyleOptions, type BuildSourcesOptions, CHART_BAND_CODES, CHART_CASCADE_CODES, CHART_SECTIONS, CHRTRASTER_REF_CROPS, CHRTRASTER_SVGS, CHRT_ATON_COLORS, CHRT_GLYPH_NAMES, CHRT_GLYPH_SVGS, CHRT_ICON_EXPRESSIONS, CHRT_ICON_PREFIX, CHRT_SDF_GLYPHS, CHRT_STYLE_MODES, type CandidateQueryOptions, type CandidatesEventContext, type CellDeletedEvent, type CellDetail, type CellEventData, type CellNewEvent, type CellUpdatedData, type CellUpdatedEvent, type CellsOptions, type CellsResponse, type ChartSection, Chrt, type ChrtConfig, ChrtError, type ChrtStyleMode, type ChrtStyleOptions, type ChrtStyleTheme, type ChrtSymbolSet, type ClickAnchor, ColorTableName, type CoverageOptions, type CoverageResponse, type CoverageRouteCell, type CoverageRouteOptions, type CoverageRouteResponse, type CoverageSource, type CustomStyleConfig, DEFAULT_CLICK_TOLERANCE, DEFAULT_CUSTOM_STYLE_CONFIG, DEFAULT_INSPECT_CLASS_RANK, DEFAULT_LABEL_SETTINGS, DEFAULT_NAV_AID_SETTINGS, DEFAULT_REGION, DEFAULT_SAFETY_CONTOUR_M, DEFAULT_SOUNDING_SETTINGS, DEFAULT_TILE_BASE_URL, DEFAULT_TILE_REGION, DEFAULT_WATER_BODY_SETTINGS, type DecodedAreaFeature, type DecodedBridge, type DecodedNavAid, type DecodedProperty, type DisplayCategory, type DisplayMode, type FeatureCollection, type FeaturesOptions, type FetchStyleOptions, FileSystemAdapter, type FlashPattern, type FlashPhase, type GenerateCustomStyleOptions, type GeneratedCustomStyle, type GeoJsonFeature, type GeoJsonGeometry, type GeomType, INSPECT_CLASS_RANK, INSPECT_RANK_DEVIATIONS, type InspectCandidate, type InspectCandidateSet, type InspectEnrichment, type InspectEventContext, type InspectNotice, type InspectOptions, type InspectResult, type InspectTargetClass, type InspectableFeature, InteractClient, type InteractEntitlement, InteractError, type InteractErrorCode, type InteractHandle, type InteractMapLike, type InteractMapMouseEvent, LABELED_LAYERS, LABEL_BEHAVIOR, LABEL_LAYER_GROUPS, LABEL_PRIORITY, LAND_REGION, type LabelBehavior, type LabelConfigOptions, type LabelLayerConfig, type LabelSettings, type LookupEntry, type MapLibreStyle, type MapboxStyle, type MapboxVectorSource, type MarineAlert, type MarineAlertsOptions, type MarineAlertsResponse, type MarineConditionsOptions, type MarineConditionsResponse, type MarineForecastOptions, type MarineForecastPeriod, type MarineForecastResponse, type MarineSeas, type MarineStation, type MarineSwellTrain, type MarineWind, type MarineZoneRef, NAUTICAL_SYMBOLS, NAV_AID_LAYER_GROUPS, NAV_AID_QUERY_LAYERS, NON_SOLAS_DISCLAIMER, NON_SOLAS_DISCLAIMER_SHORT, type NauticalCategory, type NauticalSymbol, type NavAidInspectResult, type NavAidSettings, type NearbyMarineStation, type OfflineBundleResponse, type OfflineDownloadOptions, type OfflineDownloadProgress, type OfflineDownloadResult, OfflineError, type OfflineErrorCode, type OfflineFetchStyleOptions, type OfflineHeartbeatOptions, type OfflineRegionSummary, type OfflineRemoveOptions, OfflineStyleError, type OfflineStylePlatform, type OfflineStyleResponse, PLACENAME_LAND_CLASSES, PLACENAME_SOURCE_LAYER, PLACENAME_WATER_CLASSES, type PmtilesVectorSource, type Poi, type PoiCoverage, type PoiDataset, type PoiOptions, type PoiResponse, type QueryFeatureProperties, type QueryOptions, type QueryResponse, RASTER_ATON_CLASSES, RASTER_GLYPH_NAMES, RASTER_ICON_PREFIX, RELIEF_REGION, type ResolvedStyle, type ResolvedTheme, type S101ArtworkProvenance, type S101Feature, S101_AREA_FILL_NAMES, S101_CHART_SECTIONS, S101_FEATURES, S101_ICON_PREFIX, S101_LINE_STYLE_NAMES, S101_NEW_SYMBOLS, S101_NO_OFFICIAL_COUNTERPART, S101_SOURCE_COMMIT, S101_SYMBOL_GROUPS, S101_SYMBOL_NAMES, S52_ATON_LOOKUPS, S52_ATON_LOOKUPS_PAPER, S52_DRAW_ORDER, S52_LOOKUP, S52_PATTERN_SPRITE_PREFIX, SOUNDING_LAYERS, SYMBOL_FAMILIES, SYMBOL_FAMILY_META, SYMBOL_GROUPS, SYMBOL_MAP, type ScaleBand, type SearchCoverageNotice, type SearchHit, type SearchOptions, type SearchResponse, type SectorArcFeature, type SectorArcFeatureCollection, type SectorInfo, type SoundingSettings, type SourceMode, type StyleGeneratorOptions, type StyleLayer, type StyleUrlOptions, type SymbolFamily, type SymbolFamilyMeta, type SymbolGroup, TileAuth, type TileGroup, type TileGroupsResponse, TileTokenError, type TileTokenErrorCode, type TileTokenResponse, type TransformRequest, type TransformedRequest, type VectorSourceSpec, type VesselProfile, WATER_BODY_LAYER_GROUPS, type WaterBodySettings, WeatherEndpoint, type WeatherReading, type WebhookEvent, type WebhookEventType, type WebhookPayload, applyChrtSymbolSet, applyColorTheme, applyCustomStyleSettings, applyRasterSymbolSet, applyS101SymbolSet, atonIconExpression, bandFilterExpression, buildAirportTierExpression, buildBuiltUpAreaTierExpression, buildFlashPattern, buildLabelLayer, buildLakeTierExpression, buildLandAreaTierExpression, buildLandRegionTierExpression, buildLayersForClass, buildOfflineStyle, buildPlaceNameLayers, buildRiverTierExpression, buildSeaAreaTierExpression, buildSectorArcGeoJSON, buildSectorArcsFC, buildSectorsFromFeatures, buildSources, candidateRank, chrtAtonTintExpression, chrtLightTintExpression, collectCandidates, collectClickCandidates, combineWithBandFilter, daymarkColor, decimateFeatures, decodeAreaFeatureProps, decodeBridgeProps, decodeCandidate, decodeNavAidProps, depareColor, depareFillExpression, deriveMarinerName, extractNavAidDesignation, featureIdentity, generateCustomStyle, generateSpriteManifest, generateSpriteSheet, generateStyle, generateStyleJSON, getAvailableLineSymbols, getAvailablePatterns, getAvailablePointSymbols, getCollisionSettings, getDrawPriority, getGridSizeForZoom, getIconExpression, getLabelBehavior, getLabelConfig, getLabelPriority, getLookupEntry, getMaxCellsForZoom, getOrderedClasses, getRasterSvg, getS52SvgString, getS52SymbolStats, getStyleStats, getSymbolSvgString, getThemedS101Svg, getThemedS52Svg, getTopmarkMeaning, hazardColor, hazardFillExpression, iconExpressionForFamily, isLabelLayerVisible, isNavAidLayer, isNavAidLayerVisible, isSoundingLayerVisible, isVisibleInMode, isWaterBodyLayerVisible, labelSortKey, lateralColor, lateralFillExpression, lightColor, lightFillExpression, lightsIconExpression, normalizeStyleMode, normalizeTheme, paginate, parseListCodes, parseSymbolFamily, parseWebhook, patternSpriteId, preprocessLights, preprocessNavAids, preprocessSoundings, preprocessWaterBodies, rasterAtonIconExpression, resolveCustomTheme, resolveRasterImage, resolveS101Color, resolveStyle, resolveTargetClass, s101ArtworkProvenance, sanitizeCustomStyleConfig, scaleSizeValue, scaminToMinZoom, styleModeBand, tileTemplate, withinBboxFilter, worldMinusBboxPolygon };
|