Array of { when, style } rules from the profile
Default style (flat) applied when no rule matches
Target geometry type ('fill' | 'line' | 'circle' | 'fill-extrusion')
OptionallayerId: stringLayer the paint is built for; used to resolve per-layer style overrides. Omitted, only the profile-level defaults apply.
Paint object with expression values where needed
Converts GeoLeaf
styleRules+defaultStyleto MapLibre data-driven paint expressions.For each paint property that varies across rules, builds a
["case", cond1, val1, cond2, val2, ..., defaultVal]expression.If
defaultStyle.expressionPaintis set, those native MapLibre paint properties are injected last, overriding any GeoLeaf-derived or case-expression values for the same keys.