@tileflow/core 0.1.0-alpha.33 → 0.1.0-alpha.35
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 +14 -9
- package/THIRD_PARTY_NOTICES.md +100 -6
- package/dist/browser.d.ts +687 -162
- package/dist/browser.js +9188 -4321
- package/dist/build.d.ts +16 -4
- package/dist/build.js +1753 -525
- package/dist/capture.js +1 -0
- package/dist/config-reference.json +3144 -928
- package/dist/{icon-composition-CSnN2-Xt.d.ts → icon-composition-DSjIKmrK.d.ts} +279 -6
- package/dist/index.d.ts +302 -12
- package/dist/index.js +3237 -566
- package/dist/{manifest-types-E7m23eXL.d.ts → manifest-types-Bzxon3dx.d.ts} +68 -8
- package/dist/manifest.d.ts +2 -2
- package/dist/manifest.js +80 -2
- package/dist/native-profile.js +1 -0
- package/dist/native.d.ts +13 -3
- package/dist/native.js +714 -318
- package/dist/runtime.d.ts +1 -1
- package/dist/runtime.js +124 -6
- package/docs/application-tile-reading.md +3 -0
- package/docs/authoring-model.md +6 -1
- package/docs/buildings-3d.md +237 -84
- package/docs/compiled-style-performance.md +14 -3
- package/docs/data-is-separate-from-design.md +137 -5
- package/docs/native-artifact-profile.md +5 -0
- package/docs/native-resource-urls.md +5 -3
- package/docs/street-lights.md +32 -5
- package/docs/theme-transitions-and-blends.md +50 -0
- package/docs/trees-3d.md +270 -0
- package/package.json +4 -3
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { bd as TileflowThemeColorValue, r as TileflowSymbolStyle, D as TileflowAreaStyle, a1 as TileflowLineStackStyle, q as TileflowLineStyle, o as TileflowExtrusionStyle, bg as TileflowThemeNumberValue, m as TileflowBackgroundStyle, p as TileflowFillStyle, a6 as TileflowMarkerSymbolStyle, n as TileflowCircleStyle, b1 as TileflowTerrainHillshadeStyle, b0 as TileflowTerrainEncoding, be as TileflowThemeFontValue, bf as TileflowThemeImageValue, c0 as TileflowTypographyStyle, X as TileflowLight, c1 as ResolvedTileflowTypography, f as TileflowTimeOfDayVariants, e as TileflowTimeOfDay, w as TileflowLabelsModuleConfig, y as TileflowPoiModuleConfig, u as TileflowRoadsModuleConfig, ah as TileflowProjection, aX as TileflowTerrain, bk as TileflowViewConfig, M as MapLibreStyle, bo as ValidationResult } from './manifest-types-Bzxon3dx.js';
|
|
2
2
|
import * as zod from 'zod';
|
|
3
3
|
import { z } from 'zod';
|
|
4
4
|
import { T as TileflowCaptureScene, a as TileflowCaptureShot } from './capture-shot-ChPQvPyi.js';
|
|
@@ -48,11 +48,69 @@ type TileflowBoundariesModuleConfig = TileflowBoundariesModuleOptions & {
|
|
|
48
48
|
declare function boundaries(options?: TileflowBoundariesModuleOptions): TileflowBoundariesModuleConfig;
|
|
49
49
|
|
|
50
50
|
type TileflowBuildingMode = '3d' | 'flat';
|
|
51
|
+
/**
|
|
52
|
+
* How Core's 3D buildings renderer draws the map's buildings. Their colour is the map's own 3D
|
|
53
|
+
* building colour (its extrusion), else its roofs'.
|
|
54
|
+
*/
|
|
55
|
+
type TileflowBuildingsThreeDimensionalStyle = {
|
|
56
|
+
/** Use the style's extrusion light (default), or the theme controller's scene sun. */
|
|
57
|
+
lighting?: 'style' | 'sun';
|
|
58
|
+
/** Per-building brightness variation, from 0 to 1; defaults to 0 (authored colour). */
|
|
59
|
+
colorVariation?: TileflowThemeNumberValue;
|
|
60
|
+
/** How strongly roof outlines and outer corners catch the light, from 0 (default) to 1. */
|
|
61
|
+
edges?: TileflowThemeNumberValue;
|
|
62
|
+
/** Their own colour, drawn unlit; without it they take the building's colour, lightened. */
|
|
63
|
+
edgeColor?: TileflowThemeColorValue;
|
|
64
|
+
/** How bright the buildings light the street at night, from 0 (none) to 2; defaults to 0. */
|
|
65
|
+
nightLight?: TileflowThemeNumberValue;
|
|
66
|
+
/** Contact shadow at the foot of the walls and in tight corners; defaults to false. */
|
|
67
|
+
occlusion?: boolean;
|
|
68
|
+
/** Shadows from the sun, on the buildings and the flat map; defaults to false. */
|
|
69
|
+
shadows?: boolean;
|
|
70
|
+
/**
|
|
71
|
+
* Invented night windows, lit by rooms: decoration, not data. With World's `class`, none on sheds,
|
|
72
|
+
* barns, factories and churches, and homes lit apart from offices. Defaults to false.
|
|
73
|
+
*/
|
|
74
|
+
windows?: boolean;
|
|
75
|
+
/**
|
|
76
|
+
* Building models the map places in its city, from the glTF binaries in its `models`
|
|
77
|
+
* directories. Each stands in for the buildings under its footprint.
|
|
78
|
+
*/
|
|
79
|
+
models?: readonly TileflowBuildingModelPlacementConfig[];
|
|
80
|
+
/** The colours of the models' parts; a part without one takes it from the building colour. */
|
|
81
|
+
modelColors?: Partial<Record<TileflowBuildingModelPart, TileflowThemeColorValue>>;
|
|
82
|
+
/**
|
|
83
|
+
* Tileflow's landmarks, such as the Eiffel Tower, drawn as models in place of the buildings
|
|
84
|
+
* under them. On by default with Tileflow World data; `false` switches them off, and `url` names
|
|
85
|
+
* the TileJSON of another landmarks tileset. The map's own `models` come first: a landmark with
|
|
86
|
+
* the same id as one, or whose footprint meets one's, is not drawn.
|
|
87
|
+
*/
|
|
88
|
+
landmarks?: boolean | {
|
|
89
|
+
url: string;
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
/** The parts of a building model, as its materials name them. */
|
|
93
|
+
type TileflowBuildingModelPart = 'surface' | 'secondary' | 'glass' | 'accent' | 'roof';
|
|
94
|
+
/** Where a building model stands. */
|
|
95
|
+
type TileflowBuildingModelPlacementConfig = {
|
|
96
|
+
/** The model's id: the name of its `.glb` file in the map's `models` directories. */
|
|
97
|
+
model: string;
|
|
98
|
+
/**
|
|
99
|
+
* The HTTPS address of the model's prepared file when it is served elsewhere, such as a model
|
|
100
|
+
* Tileflow hosts for its own maps; the map then needs no `.glb` of its own for it.
|
|
101
|
+
*/
|
|
102
|
+
url?: string;
|
|
103
|
+
/** Longitude and latitude of the model's origin, where it stands on the ground. */
|
|
104
|
+
at: readonly [number, number];
|
|
105
|
+
/** Degrees clockwise from north that the model's own north (its +y) is turned to; defaults to 0. */
|
|
106
|
+
heading?: number;
|
|
107
|
+
};
|
|
51
108
|
type TileflowBuildingsModuleOptions = {
|
|
52
109
|
businessCorridor?: TileflowAreaStyle;
|
|
53
110
|
extrusion?: TileflowExtrusionStyle;
|
|
54
111
|
flat?: TileflowAreaStyle;
|
|
55
112
|
mode?: TileflowBuildingMode;
|
|
113
|
+
threeDimensional?: TileflowBuildingsThreeDimensionalStyle;
|
|
56
114
|
};
|
|
57
115
|
type TileflowBuildingsModuleConfig = TileflowBuildingsModuleOptions & {
|
|
58
116
|
type: 'buildings';
|
|
@@ -136,17 +194,181 @@ type TileflowTransitModuleConfig = TileflowTransitModuleOptions & {
|
|
|
136
194
|
};
|
|
137
195
|
declare function transit(options?: TileflowTransitModuleOptions): TileflowTransitModuleConfig;
|
|
138
196
|
|
|
139
|
-
|
|
197
|
+
/** What a map's tree models may hold. */
|
|
198
|
+
declare const tileflowTreeModelLimits: Readonly<{
|
|
199
|
+
/** Triangles of a near model, the one drawn close to the camera. */
|
|
200
|
+
nearTriangles: 1000;
|
|
201
|
+
/** Triangles of a far model, drawn beyond the nearest tiles. */
|
|
202
|
+
farTriangles: 120;
|
|
203
|
+
/** Vertices of one model. */
|
|
204
|
+
vertices: 4096;
|
|
205
|
+
/** Models one map carries. */
|
|
206
|
+
models: 16;
|
|
207
|
+
/** Models one form draws from. */
|
|
208
|
+
perForm: 4;
|
|
209
|
+
}>;
|
|
210
|
+
/** A model as indexed triangles of a unit tree, before it is encoded. */
|
|
211
|
+
type TileflowTreeModelMesh = Readonly<{
|
|
212
|
+
/** The model's crown width over its height, as its author drew it, from 0.1 to 3. */
|
|
213
|
+
proportion: number;
|
|
214
|
+
/** x, y and z of each vertex: x and y from about -0.5 to 0.5, z from 0 to 1. */
|
|
215
|
+
positions: readonly number[];
|
|
216
|
+
/** The vertex normals, x, y and z. */
|
|
217
|
+
normals: readonly number[];
|
|
218
|
+
/** Each vertex's part, a value of `tileflowTreeParts`. */
|
|
219
|
+
parts: readonly number[];
|
|
220
|
+
/** Each vertex's shade among its part's colours, from -1 (darkest) to 1. */
|
|
221
|
+
shades: readonly number[];
|
|
222
|
+
/** Each vertex's light, from 0 (fully occluded) to 1. */
|
|
223
|
+
occlusion: readonly number[];
|
|
224
|
+
/** Three vertex indices per triangle. */
|
|
225
|
+
indices: readonly number[];
|
|
226
|
+
}>;
|
|
227
|
+
/** A prepared model, near and optionally far, as the style's tree description carries it. */
|
|
228
|
+
type TileflowTreeModel = Readonly<{
|
|
229
|
+
near: string;
|
|
230
|
+
far?: string;
|
|
231
|
+
}>;
|
|
232
|
+
/** Encodes a model as base64 text. Throws when it breaks `tileflowTreeModelLimits`. */
|
|
233
|
+
declare function encodeTileflowTreeModel(mesh: TileflowTreeModelMesh, level: 'near' | 'far'): string;
|
|
234
|
+
/**
|
|
235
|
+
* Decodes a model's base64 text, or undefined when it is not a tree model of this version or
|
|
236
|
+
* breaks `tileflowTreeModelLimits`.
|
|
237
|
+
*/
|
|
238
|
+
declare function decodeTileflowTreeModel(text: unknown, level: 'near' | 'far'): TileflowTreeModelMesh | undefined;
|
|
239
|
+
|
|
240
|
+
/** The forms a 3D tree takes. */
|
|
241
|
+
declare const tileflowTreeForms: readonly ["round", "open", "tall", "conifer", "columnar", "palm"];
|
|
242
|
+
type TileflowTreeForm = (typeof tileflowTreeForms)[number];
|
|
243
|
+
/** How a tree's surfaces take the light: facets, a smooth round shape, or bands as drawn. */
|
|
244
|
+
declare const tileflowTreeFinishes: readonly ["faceted", "smooth", "toon"];
|
|
245
|
+
type TileflowTreeFinish = (typeof tileflowTreeFinishes)[number];
|
|
246
|
+
/** A form's own scales, on top of the map's, and the map's own models it draws. */
|
|
247
|
+
type TileflowTreeFormStyle = Readonly<{
|
|
248
|
+
heightScale?: number;
|
|
249
|
+
crownScale?: number;
|
|
250
|
+
/** Ids of the map's own models, one to four; each tree draws one by its stable seed. */
|
|
251
|
+
models?: readonly string[];
|
|
252
|
+
}>;
|
|
253
|
+
/** Relative weights of the forms given to trees whose data gives none. */
|
|
254
|
+
type TileflowTreeFormMix = Readonly<Partial<Record<TileflowTreeForm, number>>>;
|
|
255
|
+
/** A region whose trees without a form in the data take their own mix. */
|
|
256
|
+
type TileflowTreeRegion = Readonly<{
|
|
257
|
+
/** `[west, south, east, north]` in degrees. */
|
|
258
|
+
bounds: readonly [number, number, number, number];
|
|
259
|
+
unknownForms: TileflowTreeFormMix;
|
|
260
|
+
}>;
|
|
261
|
+
/** The fields of the tree and canopy layers, as World names them. */
|
|
262
|
+
type TileflowTreeFields = Readonly<{
|
|
263
|
+
height: string;
|
|
264
|
+
diameterCrown: string;
|
|
265
|
+
circumference: string;
|
|
266
|
+
genus: string;
|
|
267
|
+
species: string;
|
|
268
|
+
leafType: string;
|
|
269
|
+
/** The tree's taxon at any rank, such as `Arecaceae` for palms or a genus or species. */
|
|
270
|
+
taxon: string;
|
|
271
|
+
canopyRank: string;
|
|
272
|
+
canopyClearance: string;
|
|
273
|
+
canopyCover: string;
|
|
274
|
+
/** A canopy point's measured canopy height, in metres. */
|
|
275
|
+
canopyHeight: string;
|
|
276
|
+
}>;
|
|
277
|
+
/** A model's id: its file's name, in lowercase letters, digits and hyphens. */
|
|
278
|
+
declare const tileflowTreeModelIdPattern: RegExp;
|
|
279
|
+
/** The style metadata key under which a compiled map describes its 3D trees. */
|
|
280
|
+
declare const tileflowVegetationMetadataKey = "tileflow:vegetation";
|
|
281
|
+
/** How a compiled map's 3D trees look and where their data is, resolved for one theme. */
|
|
282
|
+
type TileflowVegetation3D = Readonly<{
|
|
283
|
+
/** The vector source and its layers with the trees and the canopy points. */
|
|
284
|
+
source: string;
|
|
285
|
+
layers: Readonly<{
|
|
286
|
+
tree: string;
|
|
287
|
+
canopy?: string;
|
|
288
|
+
}>;
|
|
289
|
+
fields: TileflowTreeFields;
|
|
290
|
+
/** Sunlit colours: bark, and the leaves of each kind of tree from darkest to lightest. */
|
|
291
|
+
colors: Readonly<{
|
|
292
|
+
bark: string;
|
|
293
|
+
broadleaf: readonly string[];
|
|
294
|
+
conifer: readonly string[];
|
|
295
|
+
palm: readonly string[];
|
|
296
|
+
}>;
|
|
297
|
+
heightScale: number;
|
|
298
|
+
crownScale: number;
|
|
299
|
+
/** Each form's own scales and models. */
|
|
300
|
+
forms: Readonly<Partial<Record<TileflowTreeForm, TileflowTreeFormStyle>>>;
|
|
301
|
+
/** The map's own models its forms draw, by id, prepared from its `models` directories. */
|
|
302
|
+
models: Readonly<Record<string, TileflowTreeModel>>;
|
|
303
|
+
finish: TileflowTreeFinish;
|
|
304
|
+
/** How strongly an outline rings each tree, from 0 (none) to 1, and its colour. */
|
|
305
|
+
edges: number;
|
|
306
|
+
edgeColor?: string;
|
|
307
|
+
unknownForms: TileflowTreeFormMix;
|
|
308
|
+
regions: readonly TileflowTreeRegion[];
|
|
309
|
+
/** The style's layers that draw the trees flat, which the 3D trees stand in for while shown. */
|
|
310
|
+
flatLayers: readonly string[];
|
|
311
|
+
}>;
|
|
312
|
+
/**
|
|
313
|
+
* Reads the 3D trees a compiled style describes, or undefined when its metadata has none or holds
|
|
314
|
+
* a version or shape this Core does not know.
|
|
315
|
+
*/
|
|
316
|
+
declare function readTileflowVegetation3D(metadata: unknown): TileflowVegetation3D | undefined;
|
|
317
|
+
|
|
318
|
+
type TileflowVegetationMode = '3d' | 'flat' | 'auto';
|
|
140
319
|
type TileflowVegetationThreeDimensionalStyle = {
|
|
141
320
|
barkColor?: TileflowThemeColorValue;
|
|
321
|
+
/** Sunlit leaf colours of broadleaf trees, from darkest to lightest; up to four are used. */
|
|
142
322
|
broadleafColors?: readonly TileflowThemeColorValue[];
|
|
323
|
+
/** Sunlit needle colours of conifers and columns, from darkest to lightest. */
|
|
143
324
|
coniferColors?: readonly TileflowThemeColorValue[];
|
|
325
|
+
/** Sunlit frond colours of palms, from darkest to lightest; the broadleaf colours by default. */
|
|
326
|
+
palmColors?: readonly TileflowThemeColorValue[];
|
|
144
327
|
crownScale?: TileflowThemeNumberValue;
|
|
145
328
|
heightScale?: TileflowThemeNumberValue;
|
|
329
|
+
/**
|
|
330
|
+
* How trees take the light: `faceted` (the default), low-poly facets softened towards a round
|
|
331
|
+
* crown; `smooth`, round crowns; or `toon`, three bands of light and a crisp shadow, as a drawn
|
|
332
|
+
* tree has them.
|
|
333
|
+
*/
|
|
334
|
+
finish?: TileflowTreeFinish;
|
|
335
|
+
/** How strongly an outline rings each tree, from 0 (none, the default) to 1. */
|
|
336
|
+
edges?: TileflowThemeNumberValue;
|
|
337
|
+
/** The outline's colour; the crown's darkest colour, deepened, by default. */
|
|
338
|
+
edgeColor?: TileflowThemeColorValue;
|
|
339
|
+
/**
|
|
340
|
+
* Each form's own scales, on top of `heightScale` and `crownScale`, such as taller palms, and the
|
|
341
|
+
* map's own models it draws: ids of `.glb` files in the map's `models` directories, one to four,
|
|
342
|
+
* each tree drawing one. A model's materials named `bark`, `leaves`, `fronds` or `stem` take
|
|
343
|
+
* those parts' colours.
|
|
344
|
+
*/
|
|
345
|
+
forms?: Partial<Record<TileflowTreeForm, {
|
|
346
|
+
heightScale?: TileflowThemeNumberValue;
|
|
347
|
+
crownScale?: TileflowThemeNumberValue;
|
|
348
|
+
models?: readonly string[];
|
|
349
|
+
}>>;
|
|
350
|
+
/**
|
|
351
|
+
* The forms of trees whose data gives none, as relative weights: `round`, `open` and `tall`
|
|
352
|
+
* (broadleaf), `conifer`, `columnar` and `palm`. Each tree draws one from a stable hash, so it
|
|
353
|
+
* keeps its form everywhere. Defaults to the three broadleaf forms, evenly. A tree the data calls
|
|
354
|
+
* broadleaved keeps to the broadleaf forms of the mix.
|
|
355
|
+
*/
|
|
356
|
+
unknownForms?: TileflowTreeFormMix;
|
|
357
|
+
/**
|
|
358
|
+
* Regions whose trees without a form in the data take their own mix, such as palms along a
|
|
359
|
+
* subtropical coast. Bounds are `[west, south, east, north]` in degrees; the first region holding
|
|
360
|
+
* a tree applies. At most 16.
|
|
361
|
+
*/
|
|
362
|
+
regions?: readonly TileflowTreeRegion[];
|
|
146
363
|
};
|
|
147
364
|
type TileflowVegetationModuleOptions = {
|
|
148
365
|
flat?: TileflowCircleStyle;
|
|
366
|
+
/** `3d` uses models at every pitch; `auto` follows the runtime's explicit 2D/3D view mode. */
|
|
149
367
|
mode?: TileflowVegetationMode;
|
|
368
|
+
/** Representation when a renderer cannot draw models. Defaults to `flat`. */
|
|
369
|
+
fallback?: 'flat' | 'none';
|
|
370
|
+
/** Initial visibility; a runtime control may override it. Defaults to true. */
|
|
371
|
+
visible?: boolean;
|
|
150
372
|
threeDimensional?: TileflowVegetationThreeDimensionalStyle;
|
|
151
373
|
};
|
|
152
374
|
type TileflowVegetationModuleConfig = TileflowVegetationModuleOptions & {
|
|
@@ -157,10 +379,14 @@ declare function vegetation(options?: TileflowVegetationModuleOptions): Tileflow
|
|
|
157
379
|
type TileflowWaterwayClass = 'canal' | 'other' | 'river' | 'stream';
|
|
158
380
|
type TileflowWaterModuleOptions = {
|
|
159
381
|
bathymetry?: TileflowFillStyle;
|
|
160
|
-
/**
|
|
382
|
+
/** Contour lines when declared by Bathymetry; otherwise approximate polygon band edges. */
|
|
161
383
|
bathymetryContours?: TileflowLineStyle;
|
|
162
|
-
/**
|
|
384
|
+
/** Contour-depth or legacy band-floor labels, not measured survey soundings. */
|
|
163
385
|
bathymetryLabels?: TileflowSymbolStyle;
|
|
386
|
+
/** Names from an explicitly declared seafloor_landform layer. */
|
|
387
|
+
bathymetryLandforms?: TileflowSymbolStyle;
|
|
388
|
+
/** Names from an explicitly declared water_name layer. */
|
|
389
|
+
bathymetryWaterNames?: TileflowSymbolStyle;
|
|
164
390
|
bodies?: TileflowAreaStyle;
|
|
165
391
|
intermittent?: {
|
|
166
392
|
bodies?: TileflowAreaStyle;
|
|
@@ -292,6 +518,11 @@ type OpenMapTilesFieldBindings = {
|
|
|
292
518
|
markings: string;
|
|
293
519
|
minHeight: string;
|
|
294
520
|
minZoom: string;
|
|
521
|
+
/**
|
|
522
|
+
* Transport mode of World transit POIs and lines: `subway`, `train`, `light_rail`, `tram`,
|
|
523
|
+
* `monorail`, `funicular`, `bus`, `ferry` or `aerialway`.
|
|
524
|
+
*/
|
|
525
|
+
mode: string;
|
|
295
526
|
mtbScale: string;
|
|
296
527
|
name: string;
|
|
297
528
|
nameEnglish: string;
|
|
@@ -481,7 +712,13 @@ declare const tileflowBathymetryDemSourceId: "tileflow-bathymetry-dem";
|
|
|
481
712
|
declare const tileflowNauticalSourceId: "tileflow-nautical";
|
|
482
713
|
declare const tileflowBathymetryV1Schema: Readonly<{
|
|
483
714
|
fields: Readonly<{
|
|
715
|
+
class: "class";
|
|
716
|
+
depth: "depth";
|
|
717
|
+
id: "id";
|
|
718
|
+
maxZoom: "max_zoom";
|
|
484
719
|
minDepth: "min_depth";
|
|
720
|
+
minZoom: "min_zoom";
|
|
721
|
+
name: "name";
|
|
485
722
|
sortKey: "sort_key";
|
|
486
723
|
}>;
|
|
487
724
|
layer: "bathymetry";
|
|
@@ -558,6 +795,24 @@ type TileflowMarineSourceConfig = {
|
|
|
558
795
|
url?: string;
|
|
559
796
|
};
|
|
560
797
|
type TileflowBathymetryDisplay = 'bands' | 'relief' | 'hybrid';
|
|
798
|
+
declare const tileflowBathymetryNameLayerLimits: Readonly<{
|
|
799
|
+
maxZoomRanges: 128;
|
|
800
|
+
}>;
|
|
801
|
+
/** One exact, inclusive minimum and exclusive maximum nominal source range. */
|
|
802
|
+
type TileflowBathymetryNameZoomRange = Readonly<{
|
|
803
|
+
minZoom: number;
|
|
804
|
+
maxZoom: number;
|
|
805
|
+
}>;
|
|
806
|
+
/** Exhaustive source range inventory; unmatched pairs are omitted from rendering. */
|
|
807
|
+
type TileflowBathymetryNameLayer = boolean | {
|
|
808
|
+
zoomRanges: readonly TileflowBathymetryNameZoomRange[];
|
|
809
|
+
};
|
|
810
|
+
/** Explicit availability of compatible optional vector layers; compilation never probes TileJSON. */
|
|
811
|
+
type TileflowBathymetryVectorLayers = {
|
|
812
|
+
contours?: boolean;
|
|
813
|
+
landforms?: TileflowBathymetryNameLayer;
|
|
814
|
+
waterNames?: TileflowBathymetryNameLayer;
|
|
815
|
+
};
|
|
561
816
|
/**
|
|
562
817
|
* Styling and physical-source overrides for the optional Bathymetry DEM.
|
|
563
818
|
* Terrarium and 512 px tiles are the hosted defaults; advanced compatible sources may override
|
|
@@ -581,6 +836,7 @@ type TileflowBathymetryConfig = TileflowMarineSourceConfig & {
|
|
|
581
836
|
labels?: false | TileflowSymbolStyle;
|
|
582
837
|
relief?: false | TileflowBathymetryReliefConfig;
|
|
583
838
|
type: 'bathymetry';
|
|
839
|
+
vectorLayers?: TileflowBathymetryVectorLayers;
|
|
584
840
|
};
|
|
585
841
|
type TileflowBathymetryOptions = Omit<TileflowBathymetryConfig, 'type'>;
|
|
586
842
|
/** Configure Bathymetry as one product while loading only the physical sources its display needs. */
|
|
@@ -636,6 +892,7 @@ type ResolvedBathymetry = Readonly<{
|
|
|
636
892
|
labels?: false | TileflowSymbolStyle;
|
|
637
893
|
relief?: ResolvedBathymetryRelief;
|
|
638
894
|
vector?: ResolvedMarineSource;
|
|
895
|
+
vectorLayers?: TileflowBathymetryVectorLayers;
|
|
639
896
|
}>;
|
|
640
897
|
type ResolvedMarine = Readonly<{
|
|
641
898
|
bathymetry?: ResolvedBathymetry;
|
|
@@ -872,7 +1129,8 @@ declare function resolveThemeValues<T>(value: T, theme: TileflowTheme, path?: st
|
|
|
872
1129
|
declare function resolveThemeSelection(map: {
|
|
873
1130
|
defaultTheme: string;
|
|
874
1131
|
themes: Readonly<Record<string, TileflowTheme>>;
|
|
875
|
-
|
|
1132
|
+
timeOfDay?: TileflowTimeOfDayVariants;
|
|
1133
|
+
}, requested?: string, timeOfDay?: TileflowTimeOfDay): TileflowResolvedThemeSelection;
|
|
876
1134
|
/** Find visual literals whose permanence is otherwise invisible to an agent. */
|
|
877
1135
|
declare function auditTileflowThemeValues(value: unknown, path?: string, context?: TileflowThemeAuditContext): TileflowThemeAuditDiagnostic[];
|
|
878
1136
|
/** Audit every appearance-bearing branch of a resolved map. */
|
|
@@ -939,6 +1197,8 @@ type TileflowPackageDirectory = Readonly<{
|
|
|
939
1197
|
type TileflowIconDirectory = TileflowLocalDirectory | TileflowPackageDirectory;
|
|
940
1198
|
/** One font directory in the ordered map font search path. */
|
|
941
1199
|
type TileflowFontDirectory = TileflowLocalDirectory | TileflowPackageDirectory;
|
|
1200
|
+
/** One directory of 3D models in the ordered map model search path. */
|
|
1201
|
+
type TileflowModelDirectory = TileflowLocalDirectory | TileflowPackageDirectory;
|
|
942
1202
|
/**
|
|
943
1203
|
* An explicit MapLibre glyph provider. `fontStacks` lists the exact comma-joined request keys
|
|
944
1204
|
* produced by each compiled `text-font` array. The map owns the URL; World never supplies fonts.
|
|
@@ -1098,6 +1358,11 @@ type TileflowMapDesign = TileflowMapTextAssets & {
|
|
|
1098
1358
|
icons?: readonly TileflowIconSource[];
|
|
1099
1359
|
/** Independent Bathymetry and Nautical products composed by the compiler. */
|
|
1100
1360
|
marine?: TileflowMarine;
|
|
1361
|
+
/**
|
|
1362
|
+
* Directories of the map's own 3D models, glTF binaries (`.glb`) named by id, such as the trees a
|
|
1363
|
+
* vegetation form draws. Omission inherits; declaration replaces; [] means no models.
|
|
1364
|
+
*/
|
|
1365
|
+
models?: readonly TileflowModelDirectory[];
|
|
1101
1366
|
/** Semantic domains, expressed directly or with explicit refine/disable operations. */
|
|
1102
1367
|
modules?: TileflowAuthoringModules;
|
|
1103
1368
|
/** Keyed MapLibre overlay units. Omission inherits; entries replace atomically. */
|
|
@@ -1113,6 +1378,8 @@ type TileflowMapDesign = TileflowMapTextAssets & {
|
|
|
1113
1378
|
terrain?: TileflowTerrain;
|
|
1114
1379
|
/** Complete named appearances. Omission inherits; declaration replaces the collection. */
|
|
1115
1380
|
themes?: Readonly<Record<TileflowThemeName, TileflowTheme>>;
|
|
1381
|
+
/** Optional artistic moments per theme family. Omission inherits; {} disables inheritance. */
|
|
1382
|
+
timeOfDay?: TileflowTimeOfDayVariants;
|
|
1116
1383
|
view?: TileflowViewConfig;
|
|
1117
1384
|
};
|
|
1118
1385
|
/** Complete semantic map at the base of a lineage. The compiler is implicit. */
|
|
@@ -1352,6 +1619,10 @@ type TileflowPreparedMapAssets = {
|
|
|
1352
1619
|
ids: readonly string[];
|
|
1353
1620
|
sprite: string;
|
|
1354
1621
|
};
|
|
1622
|
+
/** The map's own 3D tree models by id, prepared from its `models` directories. */
|
|
1623
|
+
models?: Readonly<Record<string, TileflowTreeModel>>;
|
|
1624
|
+
/** Where each of the map's own building models is served, by id. */
|
|
1625
|
+
buildingModels?: Readonly<Record<string, string>>;
|
|
1355
1626
|
};
|
|
1356
1627
|
type TileflowSemanticCompileOptions = {
|
|
1357
1628
|
apiBaseUrl?: string;
|
|
@@ -1365,6 +1636,8 @@ type TileflowSemanticCompileOptions = {
|
|
|
1365
1636
|
preparedAssets?: TileflowPreparedMapAssets;
|
|
1366
1637
|
/** Concrete named theme. Omission deterministically selects map.defaultTheme. */
|
|
1367
1638
|
theme?: string;
|
|
1639
|
+
/** Optional artistic preset declared by the map. */
|
|
1640
|
+
timeOfDay?: TileflowTimeOfDay;
|
|
1368
1641
|
};
|
|
1369
1642
|
type TileflowSemanticCompilationOptions = TileflowSemanticCompileOptions & {
|
|
1370
1643
|
/** Include opt-in read-only physical diagnostics; emitted IDs are not authoring targets. */
|
|
@@ -1464,4 +1737,4 @@ declare function parseTileflowIconComposition(input: unknown): TileflowIconCompo
|
|
|
1464
1737
|
/** Dependency identity is separate from the generated artifact's content hash. */
|
|
1465
1738
|
declare function hashTileflowIconComposition(input: TileflowIconCompositionV1): Promise<string>;
|
|
1466
1739
|
|
|
1467
|
-
export { type
|
|
1740
|
+
export { type TileflowAerowaysModuleOptions as $, type TileflowBandPlacement as A, type OpenMapTilesLayerBindings as B, tileflowCompilationPhases as C, tileflowCompilationPlannerStages as D, tileflowCompilationReportSchemaVersion as E, type TileflowSemanticModuleName as F, tileflowHostedSourceLimit as G, tileflowOverlayPlacements as H, type ResolvedTileflowTheme as I, type TileflowThemeColorScheme as J, type TileflowIconSource as K, type TileflowVegetationMode as L, type OpenMapTilesSchema as M, type OpenMapTilesSchemaOptions as N, type OpenMapTilesFieldBindings as O, type ParkLayerSemantics as P, type ResolvedBathymetry as Q, type ResolvedTileflowMap as R, type ResolvedBathymetryRelief as S, type TileflowRenderedIconIdentity as T, type ResolvedMarine as U, type ResolvedMarineSource as V, type ResolvedTileflowData as W, type ResolvedTileflowThemeTokens as X, type TileflowAddressesModuleConfig as Y, type TileflowAddressesModuleOptions as Z, type TileflowAerowaysModuleConfig as _, type TileflowIconCompositionV1 as a, type TileflowModelDirectory as a$, type TileflowAtmosphere as a0, type TileflowAtmosphereOptions as a1, type TileflowAuthoringModules as a2, type TileflowBathymetryConfig as a3, type TileflowBathymetryDemSourceIdentity as a4, type TileflowBathymetryDisplay as a5, type TileflowBathymetryNameLayer as a6, type TileflowBathymetryNameZoomRange as a7, type TileflowBathymetryOptions as a8, type TileflowBathymetryReliefConfig as a9, type TileflowHostedTilesetSource as aA, type TileflowHostedTilesetType as aB, type TileflowIconContributorIdentity as aC, type TileflowIconDirectory as aD, TileflowIconSetError as aE, type TileflowIconSetErrorCode as aF, type TileflowIconSetReference as aG, type TileflowIconSetSource as aH, type TileflowLandModuleConfig as aI, type TileflowLandModuleOptions as aJ, type TileflowLandcoverClass as aK, type TileflowLandformClass as aL, type TileflowLandformsModuleConfig as aM, type TileflowLandformsModuleOptions as aN, type TileflowLanduseClass as aO, type TileflowLayerBand as aP, type TileflowLocalDirectory as aQ, type TileflowMapDesign as aR, type TileflowMapIdentity as aS, type TileflowMapLibreOverlay as aT, type TileflowMapLibreOverlayLayer as aU, type TileflowMapTooling as aV, type TileflowMarine as aW, type TileflowMarineConfig as aX, type TileflowMarineMode as aY, type TileflowMarineSourceConfig as aZ, type TileflowMarineSourceIdentity as a_, type TileflowBathymetryVectorLayers as aa, type TileflowBoundariesModuleConfig as ab, type TileflowBoundariesModuleOptions as ac, type TileflowBuildingMode as ad, type TileflowBuildingModelPart as ae, type TileflowBuildingModelPlacementConfig as af, type TileflowBuildingsModuleConfig as ag, type TileflowBuildingsModuleOptions as ah, type TileflowBuildingsThreeDimensionalStyle as ai, type TileflowCompilationDiagnostic as aj, type TileflowCompilationDomainReport as ak, type TileflowCompilationFailure as al, type TileflowCompilationOptions as am, type TileflowCompilationPhase as an, type TileflowCompilationPlannerDecision as ao, type TileflowCompilationPlannerStage as ap, type TileflowCompilationReport as aq, type TileflowCompilationResult as ar, type TileflowCompilationSuccess as as, type TileflowDataConfig as at, type TileflowDataIdentity as au, type TileflowDerivedMap as av, type TileflowDisableOperation as aw, type TileflowFontDirectory as ax, type TileflowGlyphs as ay, type TileflowHostedSourceCollection as az, type TileflowDataRequirementsV1 as b, createStyle as b$, type TileflowModuleOperation as b0, type TileflowModulePatch as b1, type TileflowNauticalAreaLabelStyles as b2, type TileflowNauticalModuleConfig as b3, type TileflowNauticalModuleOptions as b4, type TileflowOverlayCollection as b5, type TileflowOverlayPlacement as b6, type TileflowPackageDirectory as b7, type TileflowPreparedIconCapabilities as b8, type TileflowRasterDemSourceRequirementV1 as b9, type TileflowTreeModel as bA, type TileflowTreeModelMesh as bB, type TileflowTreeRegion as bC, type TileflowVegetation3D as bD, type TileflowVegetationModuleConfig as bE, type TileflowVegetationModuleOptions as bF, type TileflowVegetationThreeDimensionalStyle as bG, type TileflowVisualValueCategory as bH, type TileflowWaterModuleConfig as bI, type TileflowWaterModuleOptions as bJ, type TileflowWaterwayClass as bK, type TileflowWorldData as bL, type TileflowWorldReleaseReference as bM, type TileflowWorldSelection as bN, type TileflowWorldV1Schema as bO, type VectorTilesData as bP, addresses as bQ, aeroways as bR, assertTileflowMapThemeValues as bS, assertTileflowSdfPixels as bT, auditTileflowMapThemeValues as bU, auditTileflowThemeValues as bV, bathymetry as bW, boundaries as bX, buildings as bY, classifyTileflowVisualProperty as bZ, collectTileflowIconSetReferences as b_, type TileflowRefineOperation as ba, type TileflowRemoveOperation as bb, type TileflowReset as bc, type TileflowResolvedThemeSelection as bd, type TileflowSemanticModules as be, type TileflowStandaloneMap as bf, type TileflowSun as bg, type TileflowSunPreset as bh, type TileflowTheme as bi, type TileflowThemeAmbient as bj, type TileflowThemeAuditContext as bk, type TileflowThemeAuditDiagnostic as bl, TileflowThemeAuditError as bm, type TileflowThemeAuditScope as bn, type TileflowThemeDefinition as bo, type TileflowThemeLighting as bp, type TileflowThemeName as bq, type TileflowThemeSun as br, type TileflowThemeTokens as bs, type TileflowThemeTypography as bt, type TileflowThemeTypographyStyle as bu, type TileflowTransitModuleConfig as bv, type TileflowTransitModuleOptions as bw, type TileflowTransitRailStyle as bx, type TileflowTreeForm as by, type TileflowTreeFormMix as bz, type TileflowSourceRequirementsV1 as c, tileflowSunPosition as c$, createStyleResult as c0, decodeTileflowTreeModel as c1, defineTheme as c2, disable as c3, encodeTileflowTreeModel as c4, hashTileflowIconComposition as c5, hostedTileset as c6, iconSet as c7, isCanonicalOpenMapTilesSchema as c8, isSafeLocalPmtilesPath as c9, tileflowBathymetrySourceId as cA, tileflowBathymetryV1Schema as cB, tileflowDefaultSunPreset as cC, tileflowIconAppearanceSchema as cD, tileflowIconAuthorMetadataSchema as cE, tileflowIconCompositionMaximumBytes as cF, tileflowIconCompositionSchema as cG, tileflowIconMetadataFileName as cH, tileflowIconSetIdSchema as cI, tileflowIconSetPackageIdSchema as cJ, tileflowIconSetReferenceSchema as cK, tileflowIconSetSourceSchema as cL, tileflowIconSetTeamIdSchema as cM, tileflowIconSetVersionIdSchema as cN, tileflowIconSourceLimit as cO, tileflowLandformClasses as cP, tileflowLayerBands as cQ, tileflowLocalDirectoryMaximumLength as cR, tileflowLocalDirectoryMessage as cS, tileflowMapIdSchema as cT, tileflowNauticalSourceId as cU, tileflowNauticalV1Schema as cV, tileflowPrimarySourceId as cW, tileflowRenderedIconIdentitySchema as cX, tileflowStyleSunPreset as cY, tileflowSunDirection as cZ, tileflowSunMetadataKey as c_, isTileflowCompilationPhase as ca, isTileflowIconSetSource as cb, isTileflowLocalDirectory as cc, land as cd, landforms as ce, maplibreOverlay as cf, mixTileflowSunPresets as cg, nautical as ch, openMapTiles as ci, openMapTilesContractVersion as cj, parseTileflowIconComposition as ck, parseTileflowMap as cl, readTileflowSunPreset as cm, readTileflowVegetation3D as cn, refine as co, remove as cp, reset as cq, resolveMarine as cr, resolveThemeSelection as cs, resolveThemeValues as ct, resolveTileflowData as cu, resolveTileflowSun as cv, resolveTileflowTheme as cw, tileflowBandPlacements as cx, tileflowBathymetryDemSourceId as cy, tileflowBathymetryNameLayerLimits as cz, type TileflowMap as d, tileflowThemeLimits as d0, tileflowTreeForms as d1, tileflowTreeModelIdPattern as d2, tileflowTreeModelLimits as d3, tileflowVegetationMetadataKey as d4, tileflowWorld as d5, tileflowWorldGeneration as d6, tileflowWorldTileJsonUrl as d7, tileflowWorldV1Schema as d8, transit as d9, validateTileflowCompiledIconCapabilities as da, validateTileflowMap as db, validateTileflowWorldV1Tilejson as dc, vectorTiles as dd, vegetation as de, water as df, type TileflowStyleOptions as e, type TileflowInspectedStyle as f, type TileflowPreparedMapAssets as g, type TileflowDataCompatibilityIssue as h, type TileflowDataFieldRequirement as i, type TileflowDataFieldType as j, type TileflowDataLayerRequirement as k, type TileflowObservedDataContractV1 as l, type TileflowStyleInspection as m, type TileflowStyleInspectionContribution as n, type TileflowStyleInspectionLayer as o, type TileflowStyleInspectionRenderOperation as p, collectMapLineage as q, inferTileflowDataRequirements as r, inferTileflowSourceRequirements as s, tileflowStyleInspectionSchemaVersion as t, type TileflowMapScene as u, validateTileflowDataCompatibility as v, type TileflowMapShot as w, type ResolveMapOptions as x, type TileflowIconAppearance as y, type TileflowLayerDomain as z };
|