@tileflow/core 0.1.0-alpha.31 → 0.1.0-alpha.33

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.
Files changed (40) hide show
  1. package/README.md +41 -2
  2. package/THIRD_PARTY_NOTICES.md +25 -2
  3. package/dist/browser.d.ts +1008 -16
  4. package/dist/browser.js +6661 -1392
  5. package/dist/build.d.ts +64 -56
  6. package/dist/build.js +702 -253
  7. package/dist/capture-shot-ChPQvPyi.d.ts +291 -0
  8. package/dist/capture.d.ts +1 -1
  9. package/dist/capture.js +230 -0
  10. package/dist/config-reference.json +1710 -1370
  11. package/dist/{icon-composition-BiOTwrvD.d.ts → icon-composition-CSnN2-Xt.d.ts} +169 -33
  12. package/dist/index.d.ts +57 -13
  13. package/dist/index.js +1684 -800
  14. package/dist/{manifest-types-CTT2eLbp.d.ts → manifest-types-E7m23eXL.d.ts} +18 -1
  15. package/dist/manifest.d.ts +2 -2
  16. package/dist/native-profile.d.ts +25 -11
  17. package/dist/native-profile.js +21 -1
  18. package/dist/native.js +1893 -1884
  19. package/dist/runtime.d.ts +1 -1
  20. package/docs/application-tile-reading.md +80 -0
  21. package/docs/authoring-model.md +16 -6
  22. package/docs/buildings-3d.md +168 -0
  23. package/docs/camera-moves-and-tile-cache.md +112 -0
  24. package/docs/capture-scenes.md +5 -1
  25. package/docs/capture-shots.md +173 -0
  26. package/docs/compiled-style-performance.md +4 -1
  27. package/docs/data-is-separate-from-design.md +103 -9
  28. package/docs/depth-markers.md +65 -0
  29. package/docs/dynamic-style-images.md +100 -0
  30. package/docs/native-artifact-profile.md +5 -3
  31. package/docs/public-api-and-browser-subpath.md +3 -3
  32. package/docs/route-drawing.md +191 -0
  33. package/docs/shared-visual-primitives.md +20 -0
  34. package/docs/street-lights.md +80 -0
  35. package/docs/style-states.md +73 -0
  36. package/docs/sun-and-light.md +125 -0
  37. package/docs/theme-transitions-and-blends.md +41 -2
  38. package/docs/themes-and-module-styles.md +7 -0
  39. package/package.json +4 -1
  40. package/dist/capture-scene-D6soWztE.d.ts +0 -161
@@ -125,6 +125,11 @@ type TileflowTextJustify = 'auto' | 'center' | 'left' | 'right';
125
125
  type TileflowIconAnchor = TileflowTextAnchor;
126
126
  type TileflowAlignment = 'auto' | 'map' | 'viewport';
127
127
  type TileflowIconTextFit = 'both' | 'height' | 'none' | 'width';
128
+ /**
129
+ * How a symbol part treats collisions with symbols placed before it. `never` hides it, `always`
130
+ * shows it, and `cooperative` shows it unless the earlier symbol was placed with `never`.
131
+ */
132
+ type TileflowSymbolOverlap = 'always' | 'cooperative' | 'never';
128
133
  /** Visibility and zoom bounds shared by every visual primitive. */
129
134
  type TileflowLayerRange = {
130
135
  maxZoom?: number;
@@ -221,6 +226,12 @@ type TileflowTextLayout = {
221
226
  maxWidth?: TileflowNumberStyleValue;
222
227
  offset?: TileflowNumberOffsetStyleValue;
223
228
  optional?: boolean;
229
+ /**
230
+ * Overlap mode. Takes precedence over `allowOverlap`, so the compiled layer carries only the mode.
231
+ * Native artifacts, whose renderer has no overlap modes, use `allowOverlap: false` for `never`
232
+ * and `true` otherwise.
233
+ */
234
+ overlap?: TileflowSymbolOverlap;
224
235
  padding?: TileflowNumberStyleValue;
225
236
  pitchAlignment?: TileflowAlignment;
226
237
  radialOffset?: TileflowNumberStyleValue;
@@ -246,6 +257,12 @@ type TileflowIconLayout = {
246
257
  keepUpright?: boolean;
247
258
  offset?: TileflowNumberOffsetStyleValue;
248
259
  optional?: boolean;
260
+ /**
261
+ * Overlap mode. Takes precedence over `allowOverlap`, so the compiled layer carries only the mode.
262
+ * Native artifacts, whose renderer has no overlap modes, use `allowOverlap: false` for `never`
263
+ * and `true` otherwise.
264
+ */
265
+ overlap?: TileflowSymbolOverlap;
249
266
  padding?: TileflowNumberStyleValue;
250
267
  pitchAlignment?: TileflowAlignment;
251
268
  rotate?: TileflowNumberStyleValue;
@@ -787,4 +804,4 @@ type TileflowRuntimeManifest = {
787
804
  version: typeof tileflowRuntimeManifestVersion;
788
805
  };
789
806
 
790
- export { type TileflowManifestFetchOptions as $, type TileflowAreaStyle as A, type TileflowBackgroundPaint as B, type TileflowCirclePaint as C, type TileflowColor as D, type TileflowColorStyleValue as E, type TileflowExtrusionPaint as F, type TileflowFillPaint as G, type TileflowIconAnchor as H, type TileflowIconLayout as I, type TileflowIconPaint as J, type TileflowIconStyle as K, type TileflowIconTextFit as L, type MapLibreStyle as M, type TileflowImageStyleValue as N, type TileflowLabelDetail as O, type TileflowLabelLanguage as P, type TileflowLabelStyles as Q, type TileflowLayerRange as R, type TileflowLight as S, type TileflowRuntimeManifest as T, type TileflowLineCap as U, type ValidationMessage as V, type TileflowLineHatchStyle as W, type TileflowLineJoin as X, type TileflowLineLayout as Y, type TileflowLinePaint as Z, type TileflowLineStackStyle as _, type TileflowRuntimeColorScheme as a, type TileflowTextBackground as a$, type TileflowManifestLoadOptions as a0, type TileflowMapMode as a1, type TileflowMapModeOptions as a2, type TileflowMarkerSymbolStyle as a3, type TileflowMountainBikeScale as a4, type TileflowNumberInsetsStyleValue as a5, type TileflowNumberStyleValue as a6, type TileflowPlaceLabelClass as a7, type TileflowPoiCategory as a8, type TileflowPoiCategoryStyle as a9, type TileflowRoadWeight as aA, type TileflowRuntimeCenterLike as aB, type TileflowRuntimeManifestMap as aC, type TileflowRuntimeSource as aD, type TileflowRuntimeSourceValidation as aE, type TileflowRuntimeStyle as aF, type TileflowRuntimeStyleOptions as aG, type TileflowRuntimeViewOptions as aH, type TileflowSessionController as aI, type TileflowSessionGrantResponse as aJ, type TileflowStringStyleValue as aK, type TileflowStructuralStyleValue as aL, type TileflowStyleFontFace as aM, type TileflowStyleValue as aN, type TileflowSymbolPlacement as aO, type TileflowSymbolPlacementStyle as aP, type TileflowSymbolZOrder as aQ, type TileflowTerrain as aR, type TileflowTerrainConfig as aS, type TileflowTerrainContourLabelStyle as aT, type TileflowTerrainContourLineStyle as aU, type TileflowTerrainContoursConfig as aV, type TileflowTerrainEncoding as aW, type TileflowTerrainHillshadeStyle as aX, type TileflowTerrainLayerRange as aY, type TileflowTerrainMode as aZ, type TileflowTextAnchor as a_, type TileflowPoiColorMode as aa, type TileflowPoiDensity as ab, type TileflowPriorityOrder as ac, type TileflowProjection as ad, type TileflowResolvedRuntimeTheme as ae, type TileflowRoadAreaStyle as af, type TileflowRoadClass as ag, type TileflowRoadClassStyle as ah, type TileflowRoadCrossingStyle as ai, type TileflowRoadDetail as aj, type TileflowRoadExtras as ak, type TileflowRoadHierarchy as al, type TileflowRoadLabelDetail as am, type TileflowRoadLayerStyle as an, type TileflowRoadModifier as ao, type TileflowRoadOutline as ap, type TileflowRoadRestriction as aq, type TileflowRoadRoundaboutStyle as ar, type TileflowRoadServiceType as as, type TileflowRoadShieldDetail as at, type TileflowRoadShieldStyles as au, type TileflowRoadSidewalkStyle as av, type TileflowRoadStructure as aw, type TileflowRoadTreatmentLayerStyle as ax, type TileflowRoadTreatmentLineStyle as ay, type TileflowRoadTreatmentStyle as az, type TileflowRuntimeManifestMapEntry as b, type TileflowTextJustify as b0, type TileflowTextLayout as b1, type TileflowTextPaint as b2, type TileflowTextStyle as b3, type TileflowThemeBlendSelection as b4, type TileflowThemeColorAlpha as b5, type TileflowThemeColorMix as b6, type TileflowThemeColorValue as b7, type TileflowThemeFontValue as b8, type TileflowThemeImageValue as b9, resolveTileflowAnalyticsRequestUrl as bA, resolveTileflowManifestMap as bB, resolveTileflowMapMode as bC, resolveTileflowRuntimeStyle as bD, resolveTileflowRuntimeTheme as bE, resolveTileflowRuntimeThemeBlend as bF, resolveTileflowRuntimeView as bG, resolveTileflowStaticImageUrl as bH, shouldLoadTileflowManifest as bI, startTileflowSession as bJ, tileflowPoiCategories as bK, tileflowStyleFontFaceLimits as bL, tileflowStyleFontFacesMetadataKey as bM, tileflowThemeBlendLimits as bN, tileflowThemeTokenCategories as bO, token as bP, validateTileflowRuntimeSource as bQ, validateTileflowThemeBlendSelection as bR, validateTileflowThemeSelection as bS, zoom as bT, type TileflowTypographyStyle as bU, type ResolvedTileflowTypography as bV, normalizeTileflowSurfaceId as bW, type TileflowThemeNumberValue as ba, type TileflowThemeSelection as bb, type TileflowThemeTokenCategory as bc, type TileflowThemeValue as bd, type TileflowViewConfig as be, type TileflowWaterLabelClass as bf, type TileflowZoomInterpolation as bg, type TileflowZoomValue as bh, type ValidationResult as bi, assertValidTileflowRuntimeSource as bj, clearTileflowManifestCache as bk, color as bl, createTileflowSessionController as bm, createTileflowSessionId as bn, defaultTileflowManifestUrl as bo, defaultTileflowRuntimeView as bp, fixed as bq, getTileflowAnalyticsApiUrl as br, getTileflowStyleFontFaces as bs, inferTileflowAnalyticsFromStyleUrl as bt, loadTileflowManifest as bu, mergeTileflowAnalytics as bv, nearestTileflowBlendTheme as bw, normalizeTileflowRuntimeCenter as bx, normalizeTileflowStaticImageSize as by, normalizeTileflowUrl as bz, type TileflowRuntimeManifestTheme as c, type TileflowRuntimeSystemThemes as d, tileflowRuntimeManifestVersion as e, type TileflowExpression as f, type TileflowFixedValue as g, type TileflowThemeTokenReference as h, type TileflowThemeColorOperation as i, type TileflowBackgroundStyle as j, type TileflowCircleStyle as k, type TileflowExtrusionStyle as l, type TileflowFillStyle as m, type TileflowLineStyle as n, type TileflowSymbolStyle as o, type TileflowRoadsModuleOptions as p, type TileflowRoadsModuleConfig as q, type TileflowLabelsModuleOptions as r, type TileflowLabelsModuleConfig as s, tileflowRuntimeManifestLimits as t, type TileflowPoiModuleOptions as u, type TileflowPoiModuleConfig as v, type MapLibreSprite as w, type TileflowAerodromeCodeDetail as x, type TileflowAlignment as y, type TileflowAnalytics as z };
807
+ export { type TileflowManifestFetchOptions as $, type TileflowAreaStyle as A, type TileflowBackgroundPaint as B, type TileflowCirclePaint as C, type TileflowColor as D, type TileflowColorStyleValue as E, type TileflowExtrusionPaint as F, type TileflowFillPaint as G, type TileflowIconAnchor as H, type TileflowIconLayout as I, type TileflowIconPaint as J, type TileflowIconStyle as K, type TileflowIconTextFit as L, type MapLibreStyle as M, type TileflowImageStyleValue as N, type TileflowLabelDetail as O, type TileflowLabelLanguage as P, type TileflowLabelStyles as Q, type TileflowLayerRange as R, type TileflowLight as S, type TileflowRuntimeManifest as T, type TileflowLineCap as U, type ValidationMessage as V, type TileflowLineHatchStyle as W, type TileflowLineJoin as X, type TileflowLineLayout as Y, type TileflowLinePaint as Z, type TileflowLineStackStyle as _, type TileflowRuntimeColorScheme as a, type TileflowTextAnchor as a$, type TileflowManifestLoadOptions as a0, type TileflowMapMode as a1, type TileflowMapModeOptions as a2, type TileflowMarkerSymbolStyle as a3, type TileflowMountainBikeScale as a4, type TileflowNumberInsetsStyleValue as a5, type TileflowNumberStyleValue as a6, type TileflowPlaceLabelClass as a7, type TileflowPoiCategory as a8, type TileflowPoiCategoryStyle as a9, type TileflowRoadWeight as aA, type TileflowRuntimeCenterLike as aB, type TileflowRuntimeManifestMap as aC, type TileflowRuntimeSource as aD, type TileflowRuntimeSourceValidation as aE, type TileflowRuntimeStyle as aF, type TileflowRuntimeStyleOptions as aG, type TileflowRuntimeViewOptions as aH, type TileflowSessionController as aI, type TileflowSessionGrantResponse as aJ, type TileflowStringStyleValue as aK, type TileflowStructuralStyleValue as aL, type TileflowStyleFontFace as aM, type TileflowStyleValue as aN, type TileflowSymbolOverlap as aO, type TileflowSymbolPlacement as aP, type TileflowSymbolPlacementStyle as aQ, type TileflowSymbolZOrder as aR, type TileflowTerrain as aS, type TileflowTerrainConfig as aT, type TileflowTerrainContourLabelStyle as aU, type TileflowTerrainContourLineStyle as aV, type TileflowTerrainContoursConfig as aW, type TileflowTerrainEncoding as aX, type TileflowTerrainHillshadeStyle as aY, type TileflowTerrainLayerRange as aZ, type TileflowTerrainMode as a_, type TileflowPoiColorMode as aa, type TileflowPoiDensity as ab, type TileflowPriorityOrder as ac, type TileflowProjection as ad, type TileflowResolvedRuntimeTheme as ae, type TileflowRoadAreaStyle as af, type TileflowRoadClass as ag, type TileflowRoadClassStyle as ah, type TileflowRoadCrossingStyle as ai, type TileflowRoadDetail as aj, type TileflowRoadExtras as ak, type TileflowRoadHierarchy as al, type TileflowRoadLabelDetail as am, type TileflowRoadLayerStyle as an, type TileflowRoadModifier as ao, type TileflowRoadOutline as ap, type TileflowRoadRestriction as aq, type TileflowRoadRoundaboutStyle as ar, type TileflowRoadServiceType as as, type TileflowRoadShieldDetail as at, type TileflowRoadShieldStyles as au, type TileflowRoadSidewalkStyle as av, type TileflowRoadStructure as aw, type TileflowRoadTreatmentLayerStyle as ax, type TileflowRoadTreatmentLineStyle as ay, type TileflowRoadTreatmentStyle as az, type TileflowRuntimeManifestMapEntry as b, type TileflowTextBackground as b0, type TileflowTextJustify as b1, type TileflowTextLayout as b2, type TileflowTextPaint as b3, type TileflowTextStyle as b4, type TileflowThemeBlendSelection as b5, type TileflowThemeColorAlpha as b6, type TileflowThemeColorMix as b7, type TileflowThemeColorValue as b8, type TileflowThemeFontValue as b9, normalizeTileflowUrl as bA, resolveTileflowAnalyticsRequestUrl as bB, resolveTileflowManifestMap as bC, resolveTileflowMapMode as bD, resolveTileflowRuntimeStyle as bE, resolveTileflowRuntimeTheme as bF, resolveTileflowRuntimeThemeBlend as bG, resolveTileflowRuntimeView as bH, resolveTileflowStaticImageUrl as bI, shouldLoadTileflowManifest as bJ, startTileflowSession as bK, tileflowPoiCategories as bL, tileflowStyleFontFaceLimits as bM, tileflowStyleFontFacesMetadataKey as bN, tileflowThemeBlendLimits as bO, tileflowThemeTokenCategories as bP, token as bQ, validateTileflowRuntimeSource as bR, validateTileflowThemeBlendSelection as bS, validateTileflowThemeSelection as bT, zoom as bU, type TileflowTypographyStyle as bV, type ResolvedTileflowTypography as bW, normalizeTileflowSurfaceId as bX, type TileflowThemeImageValue as ba, type TileflowThemeNumberValue as bb, type TileflowThemeSelection as bc, type TileflowThemeTokenCategory as bd, type TileflowThemeValue as be, type TileflowViewConfig as bf, type TileflowWaterLabelClass as bg, type TileflowZoomInterpolation as bh, type TileflowZoomValue as bi, type ValidationResult as bj, assertValidTileflowRuntimeSource as bk, clearTileflowManifestCache as bl, color as bm, createTileflowSessionController as bn, createTileflowSessionId as bo, defaultTileflowManifestUrl as bp, defaultTileflowRuntimeView as bq, fixed as br, getTileflowAnalyticsApiUrl as bs, getTileflowStyleFontFaces as bt, inferTileflowAnalyticsFromStyleUrl as bu, loadTileflowManifest as bv, mergeTileflowAnalytics as bw, nearestTileflowBlendTheme as bx, normalizeTileflowRuntimeCenter as by, normalizeTileflowStaticImageSize as bz, type TileflowRuntimeManifestTheme as c, type TileflowRuntimeSystemThemes as d, tileflowRuntimeManifestVersion as e, type TileflowExpression as f, type TileflowFixedValue as g, type TileflowThemeTokenReference as h, type TileflowThemeColorOperation as i, type TileflowBackgroundStyle as j, type TileflowCircleStyle as k, type TileflowExtrusionStyle as l, type TileflowFillStyle as m, type TileflowLineStyle as n, type TileflowSymbolStyle as o, type TileflowRoadsModuleOptions as p, type TileflowRoadsModuleConfig as q, type TileflowLabelsModuleOptions as r, type TileflowLabelsModuleConfig as s, tileflowRuntimeManifestLimits as t, type TileflowPoiModuleOptions as u, type TileflowPoiModuleConfig as v, type MapLibreSprite as w, type TileflowAerodromeCodeDetail as x, type TileflowAlignment as y, type TileflowAnalytics as z };
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { T as TileflowRuntimeManifest } from './manifest-types-CTT2eLbp.js';
3
- export { a as TileflowRuntimeColorScheme, b as TileflowRuntimeManifestMapEntry, c as TileflowRuntimeManifestTheme, d as TileflowRuntimeSystemThemes, t as tileflowRuntimeManifestLimits, e as tileflowRuntimeManifestVersion } from './manifest-types-CTT2eLbp.js';
2
+ import { T as TileflowRuntimeManifest } from './manifest-types-E7m23eXL.js';
3
+ export { a as TileflowRuntimeColorScheme, b as TileflowRuntimeManifestMapEntry, c as TileflowRuntimeManifestTheme, d as TileflowRuntimeSystemThemes, t as tileflowRuntimeManifestLimits, e as tileflowRuntimeManifestVersion } from './manifest-types-E7m23eXL.js';
4
4
 
5
5
  declare const tileflowRuntimeManifestSchema: z.ZodType<TileflowRuntimeManifest>;
6
6
  declare function parseTileflowRuntimeManifest(input: unknown): TileflowRuntimeManifest;
@@ -62,7 +62,6 @@ declare const tileflowNativeProfileLimits: Readonly<{
62
62
  }>;
63
63
  /** Fixed output budget for a prepared native-v1 style, never a raw input allowance. */
64
64
  declare const tileflowNativePreparedStyleLimits: Readonly<{
65
- maximumNodes: 540000;
66
65
  maximumStyleBytes: number;
67
66
  maximumDepth: 64;
68
67
  maximumSources: 128;
@@ -70,6 +69,7 @@ declare const tileflowNativePreparedStyleLimits: Readonly<{
70
69
  maximumIssues: 32;
71
70
  maximumFontFaces: 16;
72
71
  maximumFontBytes: number;
72
+ maximumNodes: 540000;
73
73
  }>;
74
74
 
75
75
  declare const tileflowNativeBuildRecordFileName = "native-build.json";
@@ -81,17 +81,24 @@ declare const tileflowNativeStyleTransformationSchema: z.ZodLazy<z.core.$ZodObje
81
81
  inputLayers: z.ZodNumber;
82
82
  outputLayers: z.ZodNumber;
83
83
  projection: z.ZodEnum<{
84
- none: "none";
85
- "mercator-to-implicit": "mercator-to-implicit";
86
84
  "globe-to-mercator": "globe-to-mercator";
85
+ "mercator-to-implicit": "mercator-to-implicit";
86
+ none: "none";
87
87
  }>;
88
88
  layers: z.ZodArray<z.ZodLazy<z.core.$ZodObject<{
89
89
  inputLayer: z.ZodNumber;
90
90
  outputStart: z.ZodNumber;
91
91
  outputCount: z.ZodNumber;
92
92
  properties: z.ZodArray<z.ZodEnum<{
93
- "line-dasharray": "line-dasharray";
94
93
  "line-cap": "line-cap";
94
+ "line-dasharray": "line-dasharray";
95
+ }>>;
96
+ }, z.core.$strict>>>;
97
+ symbolOverlap: z.ZodArray<z.ZodLazy<z.core.$ZodObject<{
98
+ inputLayer: z.ZodNumber;
99
+ properties: z.ZodArray<z.ZodEnum<{
100
+ "icon-overlap": "icon-overlap";
101
+ "text-overlap": "text-overlap";
95
102
  }>>;
96
103
  }, z.core.$strict>>>;
97
104
  }, z.core.$strict>>;
@@ -116,17 +123,24 @@ declare const tileflowNativeBuildRecordSchema: z.ZodLazy<z.core.$ZodObject<{
116
123
  inputLayers: z.ZodNumber;
117
124
  outputLayers: z.ZodNumber;
118
125
  projection: z.ZodEnum<{
119
- none: "none";
120
- "mercator-to-implicit": "mercator-to-implicit";
121
126
  "globe-to-mercator": "globe-to-mercator";
127
+ "mercator-to-implicit": "mercator-to-implicit";
128
+ none: "none";
122
129
  }>;
123
130
  layers: z.ZodArray<z.ZodLazy<z.core.$ZodObject<{
124
131
  inputLayer: z.ZodNumber;
125
132
  outputStart: z.ZodNumber;
126
133
  outputCount: z.ZodNumber;
127
134
  properties: z.ZodArray<z.ZodEnum<{
128
- "line-dasharray": "line-dasharray";
129
135
  "line-cap": "line-cap";
136
+ "line-dasharray": "line-dasharray";
137
+ }>>;
138
+ }, z.core.$strict>>>;
139
+ symbolOverlap: z.ZodArray<z.ZodLazy<z.core.$ZodObject<{
140
+ inputLayer: z.ZodNumber;
141
+ properties: z.ZodArray<z.ZodEnum<{
142
+ "icon-overlap": "icon-overlap";
143
+ "text-overlap": "text-overlap";
130
144
  }>>;
131
145
  }, z.core.$strict>>>;
132
146
  }, z.core.$strict>>>;
@@ -135,21 +149,21 @@ type TileflowNativeBuildRecord = z.infer<typeof tileflowNativeBuildRecordSchema>
135
149
  declare function createTileflowNativeBuildRecord(buildManifestSha256: string, transformations?: readonly TileflowNativeStyleTransformation[]): TileflowNativeBuildRecord;
136
150
 
137
151
  declare const tileflowNativeDiagnosticCodeSchema: z.ZodEnum<{
138
- NATIVE_UNSUPPORTED_STYLE: "NATIVE_UNSUPPORTED_STYLE";
139
- NATIVE_UNSUPPORTED_SOURCE: "NATIVE_UNSUPPORTED_SOURCE";
140
152
  NATIVE_FONT_UNAVAILABLE: "NATIVE_FONT_UNAVAILABLE";
141
153
  NATIVE_MANIFEST_REQUIRED: "NATIVE_MANIFEST_REQUIRED";
142
154
  NATIVE_RENDERER_UNSUPPORTED: "NATIVE_RENDERER_UNSUPPORTED";
155
+ NATIVE_UNSUPPORTED_SOURCE: "NATIVE_UNSUPPORTED_SOURCE";
156
+ NATIVE_UNSUPPORTED_STYLE: "NATIVE_UNSUPPORTED_STYLE";
143
157
  }>;
144
158
  type TileflowNativeDiagnosticCode = z.infer<typeof tileflowNativeDiagnosticCodeSchema>;
145
159
  /** Uses the command diagnostic fields; renderer/profile are bounded additional context. */
146
160
  declare const tileflowNativeDiagnosticSchema: z.ZodLazy<z.core.$ZodObject<{
147
161
  code: z.ZodEnum<{
148
- NATIVE_UNSUPPORTED_STYLE: "NATIVE_UNSUPPORTED_STYLE";
149
- NATIVE_UNSUPPORTED_SOURCE: "NATIVE_UNSUPPORTED_SOURCE";
150
162
  NATIVE_FONT_UNAVAILABLE: "NATIVE_FONT_UNAVAILABLE";
151
163
  NATIVE_MANIFEST_REQUIRED: "NATIVE_MANIFEST_REQUIRED";
152
164
  NATIVE_RENDERER_UNSUPPORTED: "NATIVE_RENDERER_UNSUPPORTED";
165
+ NATIVE_UNSUPPORTED_SOURCE: "NATIVE_UNSUPPORTED_SOURCE";
166
+ NATIVE_UNSUPPORTED_STYLE: "NATIVE_UNSUPPORTED_STYLE";
153
167
  }>;
154
168
  phase: z.ZodLiteral<"native-compatibility">;
155
169
  severity: z.ZodLiteral<"error">;
@@ -8809,6 +8809,13 @@ var layerTransformationSchema = strictNativeObject({
8809
8809
  "Expected unique, ordered properties"
8810
8810
  )
8811
8811
  });
8812
+ var symbolOverlapTransformationSchema = strictNativeObject({
8813
+ inputLayer: layerCountSchema,
8814
+ properties: z4.array(z4.enum(["icon-overlap", "text-overlap"])).min(1).max(2).refine(
8815
+ (properties2) => properties2.length === 1 || properties2[0] === "icon-overlap" && properties2[1] === "text-overlap",
8816
+ "Expected unique, ordered properties"
8817
+ )
8818
+ });
8812
8819
  var tileflowNativeStyleTransformationSchema = strictNativeObject({
8813
8820
  map: tileflowPortableIdSchema,
8814
8821
  theme: tileflowThemeNameSchema,
@@ -8817,7 +8824,8 @@ var tileflowNativeStyleTransformationSchema = strictNativeObject({
8817
8824
  inputLayers: layerCountSchema,
8818
8825
  outputLayers: layerCountSchema,
8819
8826
  projection: z4.enum(["none", "mercator-to-implicit", "globe-to-mercator"]),
8820
- layers: z4.array(layerTransformationSchema).max(tileflowNativeProfileLimits.maximumLayers)
8827
+ layers: z4.array(layerTransformationSchema).max(tileflowNativeProfileLimits.maximumLayers),
8828
+ symbolOverlap: z4.array(symbolOverlapTransformationSchema).max(tileflowNativeProfileLimits.maximumLayers)
8821
8829
  }).superRefine((style, context) => {
8822
8830
  let previous = -1;
8823
8831
  let added = 0;
@@ -8839,6 +8847,18 @@ var tileflowNativeStyleTransformationSchema = strictNativeObject({
8839
8847
  message: "Layer counts do not match transformation spans"
8840
8848
  });
8841
8849
  }
8850
+ const partitioned = new Set(style.layers.map(({ inputLayer }) => inputLayer));
8851
+ previous = -1;
8852
+ for (const [index, layer] of style.symbolOverlap.entries()) {
8853
+ if (layer.inputLayer <= previous || layer.inputLayer >= style.inputLayers || partitioned.has(layer.inputLayer)) {
8854
+ context.addIssue({
8855
+ code: "custom",
8856
+ path: ["symbolOverlap", index],
8857
+ message: "Invalid symbol overlap layer"
8858
+ });
8859
+ }
8860
+ previous = layer.inputLayer;
8861
+ }
8842
8862
  });
8843
8863
  var tileflowNativeBuildRecordSchema = strictNativeObject({
8844
8864
  schemaVersion: z4.literal(2),