@tileflow/core 0.1.0-alpha.4 → 0.1.0-alpha.41
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/LICENSE +201 -0
- package/README.md +318 -26
- package/THIRD_PARTY_NOTICES.md +444 -0
- package/dist/3d-CzLTD0RK.d.ts +1092 -0
- package/dist/3d.d.ts +1 -0
- package/dist/3d.js +12660 -0
- package/dist/browser.d.ts +2278 -0
- package/dist/browser.js +21826 -0
- package/dist/build.d.ts +595 -0
- package/dist/build.js +29737 -0
- package/dist/capture-shot-ChPQvPyi.d.ts +291 -0
- package/dist/capture.d.ts +9 -0
- package/dist/capture.js +510 -0
- package/dist/config-reference.json +40527 -0
- package/dist/icon-composition-HUh_Lj8Z.d.ts +2516 -0
- package/dist/index.d.ts +1805 -162
- package/dist/index.js +26400 -3488
- package/dist/manifest-types-DnhSJjCM.d.ts +902 -0
- package/dist/manifest.d.ts +9 -0
- package/dist/manifest.js +449 -0
- package/dist/native-profile.d.ts +206 -0
- package/dist/native-profile.js +9339 -0
- package/dist/native.d.ts +365 -0
- package/dist/native.js +5970 -0
- package/dist/runtime.d.ts +1 -0
- package/dist/runtime.js +1445 -0
- package/dist/worker/camera-tile-worker.global.js +20 -0
- package/docs/application-tile-reading.md +86 -0
- package/docs/authoring-model.md +269 -0
- package/docs/boundary-areas-and-choropleths.md +217 -0
- package/docs/buildings-3d.md +608 -0
- package/docs/camera-moves-and-tile-cache.md +112 -0
- package/docs/capture-scenes.md +40 -0
- package/docs/capture-shots.md +173 -0
- package/docs/cartographic-defaults.md +210 -0
- package/docs/compiled-style-performance.md +286 -0
- package/docs/data-is-separate-from-design.md +610 -0
- package/docs/depth-markers.md +65 -0
- package/docs/dynamic-style-images.md +100 -0
- package/docs/globe-atmosphere.md +113 -0
- package/docs/hosted-session-authorization.md +106 -0
- package/docs/map-and-terrain-examples.md +156 -0
- package/docs/map-emphasis.md +89 -0
- package/docs/native-artifact-profile.md +152 -0
- package/docs/native-resource-urls.md +369 -0
- package/docs/nautical-marks.md +308 -0
- package/docs/public-api-and-browser-subpath.md +101 -0
- package/docs/route-drawing.md +191 -0
- package/docs/shared-visual-primitives.md +101 -0
- package/docs/street-lights.md +127 -0
- package/docs/street-sky.md +156 -0
- package/docs/style-states.md +73 -0
- package/docs/sun-and-light.md +167 -0
- package/docs/theme-transitions-and-blends.md +317 -0
- package/docs/themes-and-module-styles.md +156 -0
- package/docs/trees-3d.md +295 -0
- package/package.json +67 -8
package/dist/build.d.ts
ADDED
|
@@ -0,0 +1,595 @@
|
|
|
1
|
+
import { T as TileflowCaptureScene, a as TileflowCaptureShot } from './capture-shot-ChPQvPyi.js';
|
|
2
|
+
import { T as TileflowRenderedIconIdentity, a as TileflowIconCompositionV1, R as ResolvedTileflowMap, b as TileflowDataRequirementsV1, c as TileflowSourceRequirementsV1, d as TileflowMap, e as TileflowStyleOptions, f as TileflowInspectedStyle, g as TileflowPreparedMapAssets } from './icon-composition-HUh_Lj8Z.js';
|
|
3
|
+
export { h as TileflowDataCompatibilityIssue, i as TileflowDataFieldRequirement, j as TileflowDataFieldType, k as TileflowDataLayerRequirement, l as TileflowObservedDataContractV1, m as TileflowStyleInspection, n as TileflowStyleInspectionContribution, o as TileflowStyleInspectionLayer, p as TileflowStyleInspectionRenderOperation, q as collectMapLineage, r as inferTileflowDataRequirements, s as inferTileflowSourceRequirements, t as tileflowStyleInspectionSchemaVersion, v as validateTileflowDataCompatibility } from './icon-composition-HUh_Lj8Z.js';
|
|
4
|
+
import { M as MapLibreStyle, f as TileflowTimeOfDayVariants, T as TileflowRuntimeManifest } from './manifest-types-DnhSJjCM.js';
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
|
|
7
|
+
declare const tileflowMapRevisionSchemaVersion: 1;
|
|
8
|
+
declare const tileflowSharedIconMapRevisionSchemaVersion: 2;
|
|
9
|
+
declare const tileflowMapRevisionCanonicalization: "tileflow-canonical-json-v1";
|
|
10
|
+
declare const tileflowMapBuildManifestSchemaVersion: 1;
|
|
11
|
+
declare const tileflowMapBuildManifestFileName: "build-manifest.json";
|
|
12
|
+
/** One effective icon source after ordered directory replacement has completed. */
|
|
13
|
+
type TileflowEffectiveIconSourceIdentity = TileflowRenderedIconIdentity | {
|
|
14
|
+
format: 'jpeg' | 'png' | 'svg' | 'webp';
|
|
15
|
+
id: string;
|
|
16
|
+
kind: 'icon' | 'pattern';
|
|
17
|
+
sha256: string;
|
|
18
|
+
};
|
|
19
|
+
/** One effective local font face actually referenced by the compiled map. */
|
|
20
|
+
type TileflowEffectiveFontSourceIdentity = {
|
|
21
|
+
family: string;
|
|
22
|
+
sha256: string;
|
|
23
|
+
style: 'italic' | 'normal' | 'oblique';
|
|
24
|
+
weight: '100' | '200' | '300' | '400' | '500' | '600' | '700' | '800' | '900';
|
|
25
|
+
};
|
|
26
|
+
/** One effective 3D model file a map declares: a level of detail, near, mid or far. */
|
|
27
|
+
type TileflowEffectiveModelSourceIdentity = {
|
|
28
|
+
id: string;
|
|
29
|
+
level: 'far' | 'mid' | 'near';
|
|
30
|
+
sha256: string;
|
|
31
|
+
};
|
|
32
|
+
type TileflowEffectiveMapSourceAssets = {
|
|
33
|
+
fonts: readonly TileflowEffectiveFontSourceIdentity[];
|
|
34
|
+
icons: readonly TileflowEffectiveIconSourceIdentity[];
|
|
35
|
+
/** The map's own 3D models; absent, as for maps without models, leaves revisions unchanged. */
|
|
36
|
+
models?: readonly TileflowEffectiveModelSourceIdentity[];
|
|
37
|
+
/** Exact ordered shared dependencies, separate from original-source history and output bytes. */
|
|
38
|
+
iconComposition?: TileflowIconCompositionV1;
|
|
39
|
+
};
|
|
40
|
+
type TileflowHashableBuildAsset = {
|
|
41
|
+
contentType: string;
|
|
42
|
+
fileName: string;
|
|
43
|
+
source: string | Uint8Array;
|
|
44
|
+
};
|
|
45
|
+
/** Canonical byte identity used by the immutable asset-set hash. */
|
|
46
|
+
type TileflowBuildAssetIdentity = {
|
|
47
|
+
byteLength: number;
|
|
48
|
+
contentType: string;
|
|
49
|
+
fileName: string;
|
|
50
|
+
sha256: string;
|
|
51
|
+
};
|
|
52
|
+
/** One authoring node in leaf-to-root order, retained only for auditability. */
|
|
53
|
+
type TileflowMapBuildLineageEntry = {
|
|
54
|
+
id: string;
|
|
55
|
+
mapVersion: number;
|
|
56
|
+
};
|
|
57
|
+
type TileflowMapBuildInput = {
|
|
58
|
+
assets: readonly TileflowHashableBuildAsset[];
|
|
59
|
+
lineage: readonly TileflowMapBuildLineageEntry[];
|
|
60
|
+
/** Validated, inheritance-free semantic compiler input. */
|
|
61
|
+
map: ResolvedTileflowMap;
|
|
62
|
+
sourceAssets: TileflowEffectiveMapSourceAssets;
|
|
63
|
+
styles: Readonly<Record<string, MapLibreStyle>>;
|
|
64
|
+
};
|
|
65
|
+
type TileflowThemeBuildManifestEntryV1 = {
|
|
66
|
+
colorScheme: 'dark' | 'light';
|
|
67
|
+
dataRequirements: TileflowDataRequirementsV1;
|
|
68
|
+
sourceRequirements: TileflowSourceRequirementsV1;
|
|
69
|
+
styleSha256: string;
|
|
70
|
+
themeId: string;
|
|
71
|
+
themeVersion: number;
|
|
72
|
+
};
|
|
73
|
+
type TileflowMapBuildManifestEntryV1 = {
|
|
74
|
+
assetSetSha256: string;
|
|
75
|
+
defaultTheme: string;
|
|
76
|
+
lineage: readonly TileflowMapBuildLineageEntry[];
|
|
77
|
+
mapRevisionSha256: string;
|
|
78
|
+
/** Omission means the unchanged legacy v1 source contract. Shared sets use explicit v2. */
|
|
79
|
+
mapRevisionSchemaVersion?: 2;
|
|
80
|
+
mapVersion: number;
|
|
81
|
+
semanticCompiler: {
|
|
82
|
+
name: 'tileflow-semantic';
|
|
83
|
+
version: number;
|
|
84
|
+
};
|
|
85
|
+
sourceAssets: TileflowEffectiveMapSourceAssets;
|
|
86
|
+
systemThemes?: {
|
|
87
|
+
dark: string;
|
|
88
|
+
light: string;
|
|
89
|
+
};
|
|
90
|
+
timeOfDay?: TileflowTimeOfDayVariants;
|
|
91
|
+
themes: Record<string, TileflowThemeBuildManifestEntryV1>;
|
|
92
|
+
};
|
|
93
|
+
/**
|
|
94
|
+
* Collect leaf-to-root editorial identities for manifest auditability.
|
|
95
|
+
*
|
|
96
|
+
* This lineage is deliberately not an additional `mapRevisionSha256` input. The resolved effective
|
|
97
|
+
* map already determines that identity, so a fully shadowed ancestor change stays non-material.
|
|
98
|
+
*/
|
|
99
|
+
declare function collectTileflowMapBuildLineage(input: TileflowMap): TileflowMapBuildLineageEntry[];
|
|
100
|
+
type TileflowMapBuildProvenanceV1 = {
|
|
101
|
+
lockfile?: {
|
|
102
|
+
format: 'bun' | 'npm' | 'pnpm' | 'yarn';
|
|
103
|
+
sha256: string;
|
|
104
|
+
};
|
|
105
|
+
packages: Readonly<Record<string, string>>;
|
|
106
|
+
schemaVersion: 1;
|
|
107
|
+
};
|
|
108
|
+
type TileflowMapBuildManifestV1 = {
|
|
109
|
+
maps: Record<string, TileflowMapBuildManifestEntryV1>;
|
|
110
|
+
provenance?: TileflowMapBuildProvenanceV1;
|
|
111
|
+
schemaVersion: typeof tileflowMapBuildManifestSchemaVersion;
|
|
112
|
+
};
|
|
113
|
+
/**
|
|
114
|
+
* Create the portable map build identity document.
|
|
115
|
+
*
|
|
116
|
+
* `mapRevisionSha256` identifies the effective cartographic definition and effective source
|
|
117
|
+
* icon/font bytes. Editorial identity, default view, capture scenes and shots, package
|
|
118
|
+
* versions, compiler ABI versions, compiled Style JSON, generated sprite/font outputs, filesystem
|
|
119
|
+
* paths, and a concrete resolution of a floating World selector are outside that hash. They have
|
|
120
|
+
* their own identities or remain tooling/delivery state.
|
|
121
|
+
*/
|
|
122
|
+
declare function createTileflowMapBuildManifest(maps: Readonly<Record<string, TileflowMapBuildInput>>, options?: {
|
|
123
|
+
provenance?: TileflowMapBuildProvenanceV1;
|
|
124
|
+
}): Promise<TileflowMapBuildManifestV1>;
|
|
125
|
+
/** Hash a resolved map definition with the versioned, domain-separated revision contract. */
|
|
126
|
+
declare function hashTileflowMapRevision(input: ResolvedTileflowMap, sourceAssets: TileflowEffectiveMapSourceAssets): Promise<string>;
|
|
127
|
+
/** Hash the exact compiled resources bound to one map, independently from its Style JSON. */
|
|
128
|
+
declare function hashTileflowAssetSet(input: readonly TileflowHashableBuildAsset[]): Promise<string>;
|
|
129
|
+
/**
|
|
130
|
+
* Hash already-verified resource identities with the same v1 contract as byte-backed build assets.
|
|
131
|
+
*
|
|
132
|
+
* Hosted uses this after independently confirming immutable object bytes against their manifests;
|
|
133
|
+
* package or bundle hashes are not substitutes for this per-file identity closure.
|
|
134
|
+
*/
|
|
135
|
+
declare function hashTileflowAssetSetIdentities(input: readonly TileflowBuildAssetIdentity[]): Promise<string>;
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* Compile the ordinary MapLibre Style and a separate read-only physical-output sidecar.
|
|
139
|
+
* Its physical IDs are diagnostic observations, never authoring targets. The sidecar never enters
|
|
140
|
+
* the Style object or runtime manifest.
|
|
141
|
+
*/
|
|
142
|
+
declare function createStyleWithInspection(config: TileflowMap, options?: TileflowStyleOptions): TileflowInspectedStyle;
|
|
143
|
+
|
|
144
|
+
/** These are transport/validation bounds, not renderer or commercial quotas. */
|
|
145
|
+
declare const tileflowRendererDeploymentLimits: Readonly<{
|
|
146
|
+
maximumBytes: number;
|
|
147
|
+
maximumNativeFamilyBytes: number;
|
|
148
|
+
maximumThemes: 64;
|
|
149
|
+
}>;
|
|
150
|
+
/** Explicit v2 only. Existing v1 envelopes and decoders are not extended by this schema. */
|
|
151
|
+
declare const tileflowRendererDeploymentArtifactSchema: z.ZodObject<{
|
|
152
|
+
kind: z.ZodLiteral<"tileflow-map-deployment">;
|
|
153
|
+
schemaVersion: z.ZodLiteral<2>;
|
|
154
|
+
mapId: z.ZodString;
|
|
155
|
+
teamSources: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
156
|
+
tileset: z.ZodString;
|
|
157
|
+
type: z.ZodEnum<{
|
|
158
|
+
raster: "raster";
|
|
159
|
+
vector: "vector";
|
|
160
|
+
}>;
|
|
161
|
+
}, z.core.$strict>>;
|
|
162
|
+
view: z.ZodOptional<z.ZodObject<{
|
|
163
|
+
center: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
|
|
164
|
+
zoom: z.ZodOptional<z.ZodNumber>;
|
|
165
|
+
bearing: z.ZodOptional<z.ZodNumber>;
|
|
166
|
+
pitch: z.ZodOptional<z.ZodNumber>;
|
|
167
|
+
}, z.core.$strict>>;
|
|
168
|
+
renderers: z.ZodObject<{
|
|
169
|
+
web: z.ZodObject<{
|
|
170
|
+
buildManifest: z.ZodObject<{
|
|
171
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
172
|
+
maps: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
173
|
+
assetSetSha256: z.ZodString;
|
|
174
|
+
defaultTheme: z.ZodString;
|
|
175
|
+
lineage: z.ZodArray<z.ZodObject<{
|
|
176
|
+
id: z.ZodString;
|
|
177
|
+
mapVersion: z.ZodNumber;
|
|
178
|
+
}, z.core.$strict>>;
|
|
179
|
+
mapRevisionSha256: z.ZodString;
|
|
180
|
+
mapRevisionSchemaVersion: z.ZodOptional<z.ZodLiteral<2>>;
|
|
181
|
+
mapVersion: z.ZodNumber;
|
|
182
|
+
semanticCompiler: z.ZodObject<{
|
|
183
|
+
name: z.ZodLiteral<"tileflow-semantic">;
|
|
184
|
+
version: z.ZodLiteral<1>;
|
|
185
|
+
}, z.core.$strict>;
|
|
186
|
+
sourceAssets: z.ZodObject<{
|
|
187
|
+
fonts: z.ZodArray<z.ZodObject<{
|
|
188
|
+
family: z.ZodString;
|
|
189
|
+
sha256: z.ZodString;
|
|
190
|
+
style: z.ZodEnum<{
|
|
191
|
+
italic: "italic";
|
|
192
|
+
normal: "normal";
|
|
193
|
+
oblique: "oblique";
|
|
194
|
+
}>;
|
|
195
|
+
weight: z.ZodEnum<{
|
|
196
|
+
100: "100";
|
|
197
|
+
200: "200";
|
|
198
|
+
300: "300";
|
|
199
|
+
400: "400";
|
|
200
|
+
500: "500";
|
|
201
|
+
600: "600";
|
|
202
|
+
700: "700";
|
|
203
|
+
800: "800";
|
|
204
|
+
900: "900";
|
|
205
|
+
}>;
|
|
206
|
+
}, z.core.$strict>>;
|
|
207
|
+
icons: z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
|
|
208
|
+
format: z.ZodEnum<{
|
|
209
|
+
jpeg: "jpeg";
|
|
210
|
+
png: "png";
|
|
211
|
+
svg: "svg";
|
|
212
|
+
webp: "webp";
|
|
213
|
+
}>;
|
|
214
|
+
id: z.ZodString;
|
|
215
|
+
kind: z.ZodEnum<{
|
|
216
|
+
icon: "icon";
|
|
217
|
+
pattern: "pattern";
|
|
218
|
+
}>;
|
|
219
|
+
sha256: z.ZodString;
|
|
220
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
221
|
+
kind: z.ZodLiteral<"rendered-icon">;
|
|
222
|
+
id: z.ZodString;
|
|
223
|
+
appearance: z.ZodOptional<z.ZodObject<{
|
|
224
|
+
representation: z.ZodLiteral<"sdf">;
|
|
225
|
+
defaults: z.ZodObject<{
|
|
226
|
+
color: z.ZodString;
|
|
227
|
+
haloColor: z.ZodString;
|
|
228
|
+
haloWidth: z.ZodNumber;
|
|
229
|
+
haloBlur: z.ZodNumber;
|
|
230
|
+
}, z.core.$strict>;
|
|
231
|
+
}, z.core.$strict>>;
|
|
232
|
+
layout: z.ZodOptional<z.ZodObject<{
|
|
233
|
+
stretchX: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
|
|
234
|
+
stretchY: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
|
|
235
|
+
content: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
236
|
+
}, z.core.$strict>>;
|
|
237
|
+
width: z.ZodNumber;
|
|
238
|
+
height: z.ZodNumber;
|
|
239
|
+
pixelSha256: z.ZodObject<{
|
|
240
|
+
oneX: z.ZodString;
|
|
241
|
+
twoX: z.ZodString;
|
|
242
|
+
}, z.core.$strict>;
|
|
243
|
+
}, z.core.$strict>]>>;
|
|
244
|
+
iconComposition: z.ZodOptional<z.ZodObject<{
|
|
245
|
+
format: z.ZodEnum<{
|
|
246
|
+
'tileflow-icon-composition-v1': "tileflow-icon-composition-v1";
|
|
247
|
+
'tileflow-icon-composition-v2': "tileflow-icon-composition-v2";
|
|
248
|
+
}>;
|
|
249
|
+
compositionVersion: z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>]>;
|
|
250
|
+
packageHash: z.ZodString;
|
|
251
|
+
contributors: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
252
|
+
kind: z.ZodLiteral<"local">;
|
|
253
|
+
iconIds: z.ZodArray<z.ZodString>;
|
|
254
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
255
|
+
kind: z.ZodLiteral<"package">;
|
|
256
|
+
package: z.ZodString;
|
|
257
|
+
iconIds: z.ZodArray<z.ZodString>;
|
|
258
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
259
|
+
kind: z.ZodLiteral<"icon-set">;
|
|
260
|
+
reference: z.ZodString;
|
|
261
|
+
teamId: z.ZodString;
|
|
262
|
+
setId: z.ZodString;
|
|
263
|
+
versionId: z.ZodString;
|
|
264
|
+
version: z.ZodNumber;
|
|
265
|
+
packageId: z.ZodString;
|
|
266
|
+
contentHash: z.ZodString;
|
|
267
|
+
iconIds: z.ZodArray<z.ZodString>;
|
|
268
|
+
}, z.core.$strict>], "kind">>;
|
|
269
|
+
winners: z.ZodArray<z.ZodObject<{
|
|
270
|
+
id: z.ZodString;
|
|
271
|
+
appearance: z.ZodOptional<z.ZodObject<{
|
|
272
|
+
representation: z.ZodLiteral<"sdf">;
|
|
273
|
+
defaults: z.ZodObject<{
|
|
274
|
+
color: z.ZodString;
|
|
275
|
+
haloColor: z.ZodString;
|
|
276
|
+
haloWidth: z.ZodNumber;
|
|
277
|
+
haloBlur: z.ZodNumber;
|
|
278
|
+
}, z.core.$strict>;
|
|
279
|
+
}, z.core.$strict>>;
|
|
280
|
+
layout: z.ZodOptional<z.ZodObject<{
|
|
281
|
+
stretchX: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
|
|
282
|
+
stretchY: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
|
|
283
|
+
content: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
284
|
+
}, z.core.$strict>>;
|
|
285
|
+
width: z.ZodNumber;
|
|
286
|
+
height: z.ZodNumber;
|
|
287
|
+
pixelSha256: z.ZodObject<{
|
|
288
|
+
oneX: z.ZodString;
|
|
289
|
+
twoX: z.ZodString;
|
|
290
|
+
}, z.core.$strict>;
|
|
291
|
+
contributor: z.ZodNumber;
|
|
292
|
+
}, z.core.$strict>>;
|
|
293
|
+
}, z.core.$strict>>;
|
|
294
|
+
}, z.core.$strict>;
|
|
295
|
+
systemThemes: z.ZodOptional<z.ZodObject<{
|
|
296
|
+
dark: z.ZodString;
|
|
297
|
+
light: z.ZodString;
|
|
298
|
+
}, z.core.$strict>>;
|
|
299
|
+
themes: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
300
|
+
colorScheme: z.ZodEnum<{
|
|
301
|
+
dark: "dark";
|
|
302
|
+
light: "light";
|
|
303
|
+
}>;
|
|
304
|
+
dataRequirements: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
305
|
+
sourceRequirements: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
306
|
+
styleSha256: z.ZodString;
|
|
307
|
+
themeId: z.ZodString;
|
|
308
|
+
themeVersion: z.ZodNumber;
|
|
309
|
+
}, z.core.$strict>>;
|
|
310
|
+
timeOfDay: z.ZodOptional<z.ZodType<Readonly<Record<string, Readonly<Partial<Record<"dawn" | "day" | "dusk" | "night", string>>>>>, unknown, z.core.$ZodTypeInternals<Readonly<Record<string, Readonly<Partial<Record<"dawn" | "day" | "dusk" | "night", string>>>>>, unknown>>>;
|
|
311
|
+
}, z.core.$strict>>;
|
|
312
|
+
provenance: z.ZodOptional<z.ZodObject<{
|
|
313
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
314
|
+
lockfile: z.ZodOptional<z.ZodObject<{
|
|
315
|
+
format: z.ZodEnum<{
|
|
316
|
+
bun: "bun";
|
|
317
|
+
npm: "npm";
|
|
318
|
+
pnpm: "pnpm";
|
|
319
|
+
yarn: "yarn";
|
|
320
|
+
}>;
|
|
321
|
+
sha256: z.ZodString;
|
|
322
|
+
}, z.core.$strict>>;
|
|
323
|
+
packages: z.ZodRecord<z.ZodString, z.ZodString>;
|
|
324
|
+
}, z.core.$strict>>;
|
|
325
|
+
}, z.core.$strict>;
|
|
326
|
+
styles: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
327
|
+
}, z.core.$strict>;
|
|
328
|
+
native: z.ZodObject<{
|
|
329
|
+
buildManifest: z.ZodObject<{
|
|
330
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
331
|
+
maps: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
332
|
+
assetSetSha256: z.ZodString;
|
|
333
|
+
defaultTheme: z.ZodString;
|
|
334
|
+
lineage: z.ZodArray<z.ZodObject<{
|
|
335
|
+
id: z.ZodString;
|
|
336
|
+
mapVersion: z.ZodNumber;
|
|
337
|
+
}, z.core.$strict>>;
|
|
338
|
+
mapRevisionSha256: z.ZodString;
|
|
339
|
+
mapRevisionSchemaVersion: z.ZodOptional<z.ZodLiteral<2>>;
|
|
340
|
+
mapVersion: z.ZodNumber;
|
|
341
|
+
semanticCompiler: z.ZodObject<{
|
|
342
|
+
name: z.ZodLiteral<"tileflow-semantic">;
|
|
343
|
+
version: z.ZodLiteral<1>;
|
|
344
|
+
}, z.core.$strict>;
|
|
345
|
+
sourceAssets: z.ZodObject<{
|
|
346
|
+
fonts: z.ZodArray<z.ZodObject<{
|
|
347
|
+
family: z.ZodString;
|
|
348
|
+
sha256: z.ZodString;
|
|
349
|
+
style: z.ZodEnum<{
|
|
350
|
+
italic: "italic";
|
|
351
|
+
normal: "normal";
|
|
352
|
+
oblique: "oblique";
|
|
353
|
+
}>;
|
|
354
|
+
weight: z.ZodEnum<{
|
|
355
|
+
100: "100";
|
|
356
|
+
200: "200";
|
|
357
|
+
300: "300";
|
|
358
|
+
400: "400";
|
|
359
|
+
500: "500";
|
|
360
|
+
600: "600";
|
|
361
|
+
700: "700";
|
|
362
|
+
800: "800";
|
|
363
|
+
900: "900";
|
|
364
|
+
}>;
|
|
365
|
+
}, z.core.$strict>>;
|
|
366
|
+
icons: z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
|
|
367
|
+
format: z.ZodEnum<{
|
|
368
|
+
jpeg: "jpeg";
|
|
369
|
+
png: "png";
|
|
370
|
+
svg: "svg";
|
|
371
|
+
webp: "webp";
|
|
372
|
+
}>;
|
|
373
|
+
id: z.ZodString;
|
|
374
|
+
kind: z.ZodEnum<{
|
|
375
|
+
icon: "icon";
|
|
376
|
+
pattern: "pattern";
|
|
377
|
+
}>;
|
|
378
|
+
sha256: z.ZodString;
|
|
379
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
380
|
+
kind: z.ZodLiteral<"rendered-icon">;
|
|
381
|
+
id: z.ZodString;
|
|
382
|
+
appearance: z.ZodOptional<z.ZodObject<{
|
|
383
|
+
representation: z.ZodLiteral<"sdf">;
|
|
384
|
+
defaults: z.ZodObject<{
|
|
385
|
+
color: z.ZodString;
|
|
386
|
+
haloColor: z.ZodString;
|
|
387
|
+
haloWidth: z.ZodNumber;
|
|
388
|
+
haloBlur: z.ZodNumber;
|
|
389
|
+
}, z.core.$strict>;
|
|
390
|
+
}, z.core.$strict>>;
|
|
391
|
+
layout: z.ZodOptional<z.ZodObject<{
|
|
392
|
+
stretchX: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
|
|
393
|
+
stretchY: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
|
|
394
|
+
content: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
395
|
+
}, z.core.$strict>>;
|
|
396
|
+
width: z.ZodNumber;
|
|
397
|
+
height: z.ZodNumber;
|
|
398
|
+
pixelSha256: z.ZodObject<{
|
|
399
|
+
oneX: z.ZodString;
|
|
400
|
+
twoX: z.ZodString;
|
|
401
|
+
}, z.core.$strict>;
|
|
402
|
+
}, z.core.$strict>]>>;
|
|
403
|
+
iconComposition: z.ZodOptional<z.ZodObject<{
|
|
404
|
+
format: z.ZodEnum<{
|
|
405
|
+
'tileflow-icon-composition-v1': "tileflow-icon-composition-v1";
|
|
406
|
+
'tileflow-icon-composition-v2': "tileflow-icon-composition-v2";
|
|
407
|
+
}>;
|
|
408
|
+
compositionVersion: z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>]>;
|
|
409
|
+
packageHash: z.ZodString;
|
|
410
|
+
contributors: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
411
|
+
kind: z.ZodLiteral<"local">;
|
|
412
|
+
iconIds: z.ZodArray<z.ZodString>;
|
|
413
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
414
|
+
kind: z.ZodLiteral<"package">;
|
|
415
|
+
package: z.ZodString;
|
|
416
|
+
iconIds: z.ZodArray<z.ZodString>;
|
|
417
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
418
|
+
kind: z.ZodLiteral<"icon-set">;
|
|
419
|
+
reference: z.ZodString;
|
|
420
|
+
teamId: z.ZodString;
|
|
421
|
+
setId: z.ZodString;
|
|
422
|
+
versionId: z.ZodString;
|
|
423
|
+
version: z.ZodNumber;
|
|
424
|
+
packageId: z.ZodString;
|
|
425
|
+
contentHash: z.ZodString;
|
|
426
|
+
iconIds: z.ZodArray<z.ZodString>;
|
|
427
|
+
}, z.core.$strict>], "kind">>;
|
|
428
|
+
winners: z.ZodArray<z.ZodObject<{
|
|
429
|
+
id: z.ZodString;
|
|
430
|
+
appearance: z.ZodOptional<z.ZodObject<{
|
|
431
|
+
representation: z.ZodLiteral<"sdf">;
|
|
432
|
+
defaults: z.ZodObject<{
|
|
433
|
+
color: z.ZodString;
|
|
434
|
+
haloColor: z.ZodString;
|
|
435
|
+
haloWidth: z.ZodNumber;
|
|
436
|
+
haloBlur: z.ZodNumber;
|
|
437
|
+
}, z.core.$strict>;
|
|
438
|
+
}, z.core.$strict>>;
|
|
439
|
+
layout: z.ZodOptional<z.ZodObject<{
|
|
440
|
+
stretchX: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
|
|
441
|
+
stretchY: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>>;
|
|
442
|
+
content: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
443
|
+
}, z.core.$strict>>;
|
|
444
|
+
width: z.ZodNumber;
|
|
445
|
+
height: z.ZodNumber;
|
|
446
|
+
pixelSha256: z.ZodObject<{
|
|
447
|
+
oneX: z.ZodString;
|
|
448
|
+
twoX: z.ZodString;
|
|
449
|
+
}, z.core.$strict>;
|
|
450
|
+
contributor: z.ZodNumber;
|
|
451
|
+
}, z.core.$strict>>;
|
|
452
|
+
}, z.core.$strict>>;
|
|
453
|
+
}, z.core.$strict>;
|
|
454
|
+
systemThemes: z.ZodOptional<z.ZodObject<{
|
|
455
|
+
dark: z.ZodString;
|
|
456
|
+
light: z.ZodString;
|
|
457
|
+
}, z.core.$strict>>;
|
|
458
|
+
themes: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
459
|
+
colorScheme: z.ZodEnum<{
|
|
460
|
+
dark: "dark";
|
|
461
|
+
light: "light";
|
|
462
|
+
}>;
|
|
463
|
+
dataRequirements: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
464
|
+
sourceRequirements: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
465
|
+
styleSha256: z.ZodString;
|
|
466
|
+
themeId: z.ZodString;
|
|
467
|
+
themeVersion: z.ZodNumber;
|
|
468
|
+
}, z.core.$strict>>;
|
|
469
|
+
timeOfDay: z.ZodOptional<z.ZodType<Readonly<Record<string, Readonly<Partial<Record<"dawn" | "day" | "dusk" | "night", string>>>>>, unknown, z.core.$ZodTypeInternals<Readonly<Record<string, Readonly<Partial<Record<"dawn" | "day" | "dusk" | "night", string>>>>>, unknown>>>;
|
|
470
|
+
}, z.core.$strict>>;
|
|
471
|
+
provenance: z.ZodOptional<z.ZodObject<{
|
|
472
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
473
|
+
lockfile: z.ZodOptional<z.ZodObject<{
|
|
474
|
+
format: z.ZodEnum<{
|
|
475
|
+
bun: "bun";
|
|
476
|
+
npm: "npm";
|
|
477
|
+
pnpm: "pnpm";
|
|
478
|
+
yarn: "yarn";
|
|
479
|
+
}>;
|
|
480
|
+
sha256: z.ZodString;
|
|
481
|
+
}, z.core.$strict>>;
|
|
482
|
+
packages: z.ZodRecord<z.ZodString, z.ZodString>;
|
|
483
|
+
}, z.core.$strict>>;
|
|
484
|
+
}, z.core.$strict>;
|
|
485
|
+
styles: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
486
|
+
buildRecord: z.ZodLazy<z.core.$ZodObject<{
|
|
487
|
+
schemaVersion: z.ZodLiteral<2>;
|
|
488
|
+
renderer: z.ZodLiteral<"native">;
|
|
489
|
+
profile: z.ZodLiteral<"native-v1">;
|
|
490
|
+
validation: z.ZodLiteral<"static-artifacts">;
|
|
491
|
+
preparationVersion: z.ZodLiteral<"native-lowering-v1">;
|
|
492
|
+
engines: z.ZodLazy<z.core.$ZodObject<{
|
|
493
|
+
android: z.ZodLiteral<"13.2.0">;
|
|
494
|
+
ios: z.ZodLiteral<"6.26.0">;
|
|
495
|
+
}, z.core.$strict>>;
|
|
496
|
+
buildManifestSha256: z.ZodString;
|
|
497
|
+
transformations: z.ZodArray<z.ZodLazy<z.core.$ZodObject<{
|
|
498
|
+
map: z.ZodString;
|
|
499
|
+
theme: z.ZodString;
|
|
500
|
+
inputStyleSha256: z.ZodString;
|
|
501
|
+
loweredStyleSha256: z.ZodString;
|
|
502
|
+
inputLayers: z.ZodNumber;
|
|
503
|
+
outputLayers: z.ZodNumber;
|
|
504
|
+
projection: z.ZodEnum<{
|
|
505
|
+
"globe-to-mercator": "globe-to-mercator";
|
|
506
|
+
"mercator-to-implicit": "mercator-to-implicit";
|
|
507
|
+
none: "none";
|
|
508
|
+
}>;
|
|
509
|
+
sky: z.ZodOptional<z.ZodLiteral<"removed">>;
|
|
510
|
+
layers: z.ZodArray<z.ZodLazy<z.core.$ZodObject<{
|
|
511
|
+
inputLayer: z.ZodNumber;
|
|
512
|
+
outputStart: z.ZodNumber;
|
|
513
|
+
outputCount: z.ZodNumber;
|
|
514
|
+
properties: z.ZodArray<z.ZodEnum<{
|
|
515
|
+
"line-cap": "line-cap";
|
|
516
|
+
"line-dasharray": "line-dasharray";
|
|
517
|
+
}>>;
|
|
518
|
+
}, z.core.$strict>>>;
|
|
519
|
+
symbolOverlap: z.ZodArray<z.ZodLazy<z.core.$ZodObject<{
|
|
520
|
+
inputLayer: z.ZodNumber;
|
|
521
|
+
properties: z.ZodArray<z.ZodEnum<{
|
|
522
|
+
"icon-overlap": "icon-overlap";
|
|
523
|
+
"text-overlap": "text-overlap";
|
|
524
|
+
}>>;
|
|
525
|
+
}, z.core.$strict>>>;
|
|
526
|
+
}, z.core.$strict>>>;
|
|
527
|
+
}, z.core.$strict>>;
|
|
528
|
+
}, z.core.$strict>;
|
|
529
|
+
}, z.core.$strict>;
|
|
530
|
+
}, z.core.$strict>;
|
|
531
|
+
type TileflowRendererDeploymentArtifact = z.infer<typeof tileflowRendererDeploymentArtifactSchema>;
|
|
532
|
+
declare class TileflowRendererDeploymentError extends Error {
|
|
533
|
+
readonly code: "RENDERER_DEPLOYMENT_INVALID";
|
|
534
|
+
constructor();
|
|
535
|
+
}
|
|
536
|
+
/** Hash/profile verification is deliberately separate from shape validation and server authority. */
|
|
537
|
+
declare function parseTileflowRendererDeploymentArtifact(input: unknown): Promise<TileflowRendererDeploymentArtifact>;
|
|
538
|
+
declare const tileflowRendererDeploymentResponseSchema: z.ZodObject<{
|
|
539
|
+
kind: z.ZodLiteral<"tileflow-map-deployment-result">;
|
|
540
|
+
schemaVersion: z.ZodLiteral<2>;
|
|
541
|
+
changed: z.ZodBoolean;
|
|
542
|
+
mapId: z.ZodString;
|
|
543
|
+
deploymentId: z.ZodString;
|
|
544
|
+
version: z.ZodNumber;
|
|
545
|
+
worldConversionId: z.ZodOptional<z.ZodString>;
|
|
546
|
+
renderers: z.ZodObject<{
|
|
547
|
+
web: z.ZodObject<{
|
|
548
|
+
themes: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
549
|
+
styleId: z.ZodOptional<z.ZodString>;
|
|
550
|
+
styleUrl: z.ZodString;
|
|
551
|
+
}, z.core.$strict>>;
|
|
552
|
+
}, z.core.$strict>;
|
|
553
|
+
native: z.ZodObject<{
|
|
554
|
+
profile: z.ZodLiteral<"native-v1">;
|
|
555
|
+
manifestUrl: z.ZodString;
|
|
556
|
+
themes: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
557
|
+
styleUrl: z.ZodString;
|
|
558
|
+
revision: z.ZodString;
|
|
559
|
+
}, z.core.$strict>>;
|
|
560
|
+
}, z.core.$strict>;
|
|
561
|
+
}, z.core.$strict>;
|
|
562
|
+
}, z.core.$strict>;
|
|
563
|
+
type TileflowRendererDeploymentResponse = z.infer<typeof tileflowRendererDeploymentResponseSchema>;
|
|
564
|
+
|
|
565
|
+
type TileflowCompiledMapMetadata = Pick<ResolvedTileflowMap, 'id' | 'version'> & {
|
|
566
|
+
lineage: readonly TileflowMapBuildLineageEntry[];
|
|
567
|
+
};
|
|
568
|
+
/** Multi-map intermediate representation owned by Node build tooling. */
|
|
569
|
+
type TileflowBuildCatalog = {
|
|
570
|
+
/** Validated, inheritance-free compiler inputs. Authoring definitions live outside the catalog. */
|
|
571
|
+
maps: Record<string, ResolvedTileflowMap>;
|
|
572
|
+
mapMetadata?: Record<string, TileflowCompiledMapMetadata>;
|
|
573
|
+
scenes?: Record<string, TileflowCaptureScene>;
|
|
574
|
+
shots?: Record<string, TileflowCaptureShot>;
|
|
575
|
+
};
|
|
576
|
+
/** Complete compiled style family, addressed first by logical map and then by theme name. */
|
|
577
|
+
type TileflowBuildStyles = Record<string, Record<string, MapLibreStyle>>;
|
|
578
|
+
/** Style family plus opt-in, read-only, non-addressable physical-output diagnostics. */
|
|
579
|
+
type TileflowBuildInspectedStyles = Record<string, Record<string, TileflowInspectedStyle>>;
|
|
580
|
+
declare function createStyleFromCatalog<const TCatalog extends TileflowBuildCatalog, const TMapName extends keyof TCatalog['maps'] & string>(catalog: TCatalog, mapName: TMapName, options?: TileflowStyleOptions): MapLibreStyle;
|
|
581
|
+
declare function createStyleFromCatalogWithInspection<const TCatalog extends TileflowBuildCatalog, const TMapName extends keyof TCatalog['maps'] & string>(catalog: TCatalog, mapName: TMapName, options?: TileflowStyleOptions): TileflowInspectedStyle;
|
|
582
|
+
/** Compile every declared theme for every logical map in deterministic key order. */
|
|
583
|
+
declare function createStylesFromCatalog(catalog: TileflowBuildCatalog, options?: Omit<TileflowStyleOptions, 'preparedAssets' | 'theme'> & {
|
|
584
|
+
mapAssets?: Readonly<Record<string, TileflowPreparedMapAssets>>;
|
|
585
|
+
}): TileflowBuildStyles;
|
|
586
|
+
/** Compile every declared theme with a separate read-only physical-output diagnostic sidecar. */
|
|
587
|
+
declare function createStylesFromCatalogWithInspection(catalog: TileflowBuildCatalog, options?: Omit<TileflowStyleOptions, 'preparedAssets' | 'theme'> & {
|
|
588
|
+
mapAssets?: Readonly<Record<string, TileflowPreparedMapAssets>>;
|
|
589
|
+
}): TileflowBuildInspectedStyles;
|
|
590
|
+
declare function createManifest(catalog: TileflowBuildCatalog, options?: {
|
|
591
|
+
styleBaseUrl?: string;
|
|
592
|
+
manifestVersion?: 1 | 2;
|
|
593
|
+
}): TileflowRuntimeManifest;
|
|
594
|
+
|
|
595
|
+
export { type TileflowBuildAssetIdentity, type TileflowBuildCatalog, type TileflowBuildInspectedStyles, type TileflowBuildStyles, type TileflowCompiledMapMetadata, TileflowDataRequirementsV1, type TileflowEffectiveFontSourceIdentity, type TileflowEffectiveIconSourceIdentity, type TileflowEffectiveMapSourceAssets, type TileflowEffectiveModelSourceIdentity, type TileflowHashableBuildAsset, TileflowInspectedStyle, type TileflowMapBuildInput, type TileflowMapBuildLineageEntry, type TileflowMapBuildManifestEntryV1, type TileflowMapBuildManifestV1, type TileflowMapBuildProvenanceV1, TileflowPreparedMapAssets, type TileflowRendererDeploymentArtifact, TileflowRendererDeploymentError, type TileflowRendererDeploymentResponse, TileflowSourceRequirementsV1, type TileflowThemeBuildManifestEntryV1, collectTileflowMapBuildLineage, createManifest, createStyleFromCatalog, createStyleFromCatalogWithInspection, createStyleWithInspection, createStylesFromCatalog, createStylesFromCatalogWithInspection, createTileflowMapBuildManifest, hashTileflowAssetSet, hashTileflowAssetSetIdentities, hashTileflowMapRevision, parseTileflowRendererDeploymentArtifact, tileflowMapBuildManifestFileName, tileflowMapBuildManifestSchemaVersion, tileflowMapRevisionCanonicalization, tileflowMapRevisionSchemaVersion, tileflowRendererDeploymentArtifactSchema, tileflowRendererDeploymentLimits, tileflowRendererDeploymentResponseSchema, tileflowSharedIconMapRevisionSchemaVersion };
|