From 5fdcf1fbe9a56951799d89bfc43e286742a2495f Mon Sep 17 00:00:00 2001 From: Jakub Hampl Date: Tue, 19 Jun 2018 09:05:14 +0100 Subject: Initial commit --- .gitignore | 2 + README.md | 3 + docs.json | 1769 ++++++++++ elm-package.json | 20 + examples/Light.elm | 49 + examples/elm-package.json | 15 + generate-elm.js | 359 ++ index.html | 7982 +++++++++++++++++++++++++++++++++++++++++++++ src/Mapbox/Expression.elm | 1390 ++++++++ src/Mapbox/Helpers.elm | 14 + src/Mapbox/Layer.elm | 1399 ++++++++ src/Mapbox/Source.elm | 362 ++ src/Mapbox/Style.elm | 220 ++ 13 files changed, 13584 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 docs.json create mode 100644 elm-package.json create mode 100644 examples/Light.elm create mode 100644 examples/elm-package.json create mode 100644 generate-elm.js create mode 100644 index.html create mode 100644 src/Mapbox/Expression.elm create mode 100644 src/Mapbox/Helpers.elm create mode 100644 src/Mapbox/Layer.elm create mode 100644 src/Mapbox/Source.elm create mode 100644 src/Mapbox/Style.elm diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..02e94ce --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +elm-stuff/ +.DS_Store diff --git a/README.md b/README.md new file mode 100644 index 0000000..968034b --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# elm-markdown + +MapboxGl.js bindings for elm. More to come. diff --git a/docs.json b/docs.json new file mode 100644 index 0000000..8c0265a --- /dev/null +++ b/docs.json @@ -0,0 +1,1769 @@ +[ + { + "name": "Mapbox.Style", + "comment": " A Mapbox style is a document that defines the visual appearance of a map: what data to draw, the order to draw it in, and how to style the data when drawing it. A style document is a JSON object with specific root level and nested properties. This specification defines and describes these properties.\n\n@docs Style, encode\n\n\n### Light\n\n@docs Light, defaultLight\n\n\n### Transition\n\n@docs Transition, defaultTransition\n\n\n### Misc Attributes\n\n@docs MiscAttr, sprite, glyphs, name, defaultCenter, defaultZoomLevel, defaultBearing, defaultPitch, metadata\n\n", + "aliases": [ + { + "name": "Light", + "comment": " The global light source.\n\n\n#### `anchor`\n\nWhether extruded geometries are lit relative to the map or viewport.\n\n\n### `position`\n\nPosition of the light source relative to lit (extruded) geometries, in `[r radial coordinate, a azimuthal angle, p polar angle]` where `r` indicates the distance from the center of the base of an object to its light, `a` indicates the position of the light relative to 0° (0° when the `anchor` is set to `viewport` corresponds to the top of the viewport, or 0° when `anchor` is set to `map` corresponds to due north, and degrees proceed clockwise), and `p` indicates the height of the light (from 0°, directly above, to 180°, directly below).\n\n\n### `color`\n\nColor tint for lighting extruded geometries.\n\n\n### `intensity`\n\nIntensity of lighting (on a scale from 0 to 1). Higher numbers will present as more extreme contrast.\n\n", + "args": [], + "type": "{ anchor : Mapbox.Expression.Anchor , position : Mapbox.Expression.Expression Mapbox.Expression.CameraExpression (Array.Array Float) , color : Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Color , intensity : Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float }" + }, + { + "name": "Style", + "comment": " This is the core representation of a Mapbox style. It has the following keys:\n\n\n### Layers\n\nThese define what is actually rendered on screen. See the Mapbox.Layer module on how to configure these.\n\n\n### Sources\n\nThese define the data sources that feed the Layers. See the Mapbox.Source module for more.\n\n\n### Misc\n\nThese are all optional attributes.\n\nAll the other keys are values defined below.\n\n", + "args": [], + "type": "{ transition : Mapbox.Style.Transition , light : Mapbox.Style.Light , layers : List Mapbox.Layer.Layer , sources : List Mapbox.Source.Source , misc : List Mapbox.Style.MiscAttr }" + }, + { + "name": "Transition", + "comment": " A transition property controls timing for the interpolation between a transitionable style property's previous value and new value.\n\n\n### `duration`\n\nTime (in ms) allotted for transitions to complete.\n\n\n### `delay`\n\nLength of time (in ms) before a transition begins.\n\n", + "args": [], + "type": "{ duration : Int, delay : Int }" + } + ], + "types": [ + { + "name": "MiscAttr", + "comment": " ", + "args": [], + "cases": [] + } + ], + "values": [ + { + "name": "defaultBearing", + "comment": " Default bearing, in degrees. The bearing is the compass direction that is \"up\"; for example, a bearing of 90° orients the map so that east is up. This value will be used only if the map has not been positioned by other means (e.g. map options or user interaction).\n", + "type": "Float -> Mapbox.Style.MiscAttr" + }, + { + "name": "defaultCenter", + "comment": " Default map center in longitude and latitude. The style center will be used only if the map has not been positioned by other means (e.g. map options or user interaction).\n", + "type": "Float -> Float -> Mapbox.Style.MiscAttr" + }, + { + "name": "defaultLight", + "comment": " A decent default light.\n", + "type": "Mapbox.Style.Light" + }, + { + "name": "defaultPitch", + "comment": " Default pitch, in degrees. Zero is perpendicular to the surface, for a look straight down at the map, while a greater value like 60 looks ahead towards the horizon. The style pitch will be used only if the map has not been positioned by other means (e.g. map options or user interaction).\n", + "type": "Float -> Mapbox.Style.MiscAttr" + }, + { + "name": "defaultTransition", + "comment": " The defaults for a transition\n", + "type": "Mapbox.Style.Transition" + }, + { + "name": "defaultZoomLevel", + "comment": " Default zoom level. The style zoom will be used only if the map has not been positioned by other means (e.g. map options or user interaction).\n", + "type": "Float -> Mapbox.Style.MiscAttr" + }, + { + "name": "encode", + "comment": " Encodes the style into JSON.\n", + "type": "Mapbox.Style.Style -> Json.Encode.Value" + }, + { + "name": "glyphs", + "comment": " A URL template for loading signed-distance-field glyph sets in PBF format. The URL must include `{fontstack}` and `{range}` tokens. This property is required if any layer uses the `textField` layout property.\n", + "type": "String -> Mapbox.Style.MiscAttr" + }, + { + "name": "metadata", + "comment": " Arbitrary properties useful to track with the stylesheet, but do not influence rendering. Properties should be prefixed to avoid collisions, like 'mapbox:'.\n", + "type": "List ( String, Json.Encode.Value ) -> Mapbox.Style.MiscAttr" + }, + { + "name": "name", + "comment": " A human-readable name for the style.\n", + "type": "String -> Mapbox.Style.MiscAttr" + }, + { + "name": "sprite", + "comment": " A base URL for retrieving the sprite image and metadata. The extensions .png, .json and scale factor @2x.png will be automatically appended. This property is required if any layer uses the `backgroundPattern`, `fillPattern`, `linePattern`, `fillExtrusionPattern`, or `iconImage` properties.\n", + "type": "String -> Mapbox.Style.MiscAttr" + } + ], + "generated-with-elm-version": "0.18.0" + }, + { + "name": "Mapbox.Layer", + "comment": " Layers specify what is actually rendered on the map and are rendered in order.\n\nExcept for layers of the background type, each layer needs to refer to a source. Layers take the data that they get from a source, optionally filter features, and then define how those features are styled.\n\nThere are two kinds of properties: *Layout* and *Paint* properties.\n\nLayout properties are applied early in the rendering process and define how data for that layer is passed to the GPU. Changes to a layout property require an asynchronous \"layout\" step.\n\nPaint properties are applied later in the rendering process. Changes to a paint property are cheap and happen synchronously.\n\n\n### Working with layers\n\n@docs Layer, SourceId, encode\n\n\n### Layer Types\n\n@docs background, fill, symbol, line, raster, circle, fillExtrusion, heatmap, hillshade\n@docs Background, Fill, Symbol, Line, Raster, Circle, FillExtrusion, Heatmap, Hillshade\n\n\n### General Attributes\n\n@docs LayerAttr\n@docs metadata, sourceLayer, minzoom, maxzoom, filter, visible\n\n\n### Fill Attributes\n\n@docs fillAntialias, fillColor, fillOpacity, fillOutlineColor, fillPattern, fillTranslate, fillTranslateAnchor\n\n\n### Line Attributes\n\n@docs lineBlur, lineCap, lineColor, lineDasharray, lineGapWidth, lineGradient, lineJoin, lineMiterLimit, lineOffset, lineOpacity, linePattern, lineRoundLimit, lineTranslate, lineTranslateAnchor, lineWidth\n\n\n### Circle Attributes\n\n@docs circleBlur, circleColor, circleOpacity, circlePitchAlignment, circlePitchScale, circleRadius, circleStrokeColor, circleStrokeOpacity, circleStrokeWidth, circleTranslate, circleTranslateAnchor\n\n\n### Heatmap Attributes\n\n@docs heatmapColor, heatmapIntensity, heatmapOpacity, heatmapRadius, heatmapWeight\n\n\n### FillExtrusion Attributes\n\n@docs fillExtrusionBase, fillExtrusionColor, fillExtrusionHeight, fillExtrusionOpacity, fillExtrusionPattern, fillExtrusionTranslate, fillExtrusionTranslateAnchor\n\n\n### Symbol Attributes\n\n@docs iconAllowOverlap, iconAnchor, iconColor, iconHaloBlur, iconHaloColor, iconHaloWidth, iconIgnorePlacement, iconImage, iconKeepUpright, iconOffset, iconOpacity, iconOptional, iconPadding, iconPitchAlignment, iconRotate, iconRotationAlignment, iconSize, iconTextFit, iconTextFitPadding, iconTranslate, iconTranslateAnchor, symbolAvoidEdges, symbolPlacement, symbolSpacing, textAllowOverlap, textAnchor, textColor, textField, textFont, textHaloBlur, textHaloColor, textHaloWidth, textIgnorePlacement, textJustify, textKeepUpright, textLetterSpacing, textLineHeight, textMaxAngle, textMaxWidth, textOffset, textOpacity, textOptional, textPadding, textPitchAlignment, textRotate, textRotationAlignment, textSize, textTransform, textTranslate, textTranslateAnchor\n\n\n### Raster Attributes\n\n@docs rasterBrightnessMax, rasterBrightnessMin, rasterContrast, rasterFadeDuration, rasterHueRotate, rasterOpacity, rasterSaturation\n\n\n### Hillshade Attributes\n\n@docs hillshadeAccentColor, hillshadeExaggeration, hillshadeHighlightColor, hillshadeIlluminationAnchor, hillshadeIlluminationDirection, hillshadeShadowColor\n\n\n### Background Attributes\n\n@docs backgroundColor, backgroundOpacity, backgroundPattern\n\n", + "aliases": [ + { + "name": "SourceId", + "comment": " All layers (except background layers) need a source\n", + "args": [], + "type": "String" + } + ], + "types": [ + { + "name": "Background", + "comment": " ", + "args": [], + "cases": [] + }, + { + "name": "Circle", + "comment": " ", + "args": [], + "cases": [] + }, + { + "name": "Fill", + "comment": " ", + "args": [], + "cases": [] + }, + { + "name": "FillExtrusion", + "comment": " ", + "args": [], + "cases": [] + }, + { + "name": "Heatmap", + "comment": " ", + "args": [], + "cases": [] + }, + { + "name": "Hillshade", + "comment": " ", + "args": [], + "cases": [] + }, + { + "name": "Layer", + "comment": " Represents a layer.\n", + "args": [], + "cases": [] + }, + { + "name": "LayerAttr", + "comment": " ", + "args": [ + "tipe" + ], + "cases": [] + }, + { + "name": "Line", + "comment": " ", + "args": [], + "cases": [] + }, + { + "name": "Raster", + "comment": " ", + "args": [], + "cases": [] + }, + { + "name": "Symbol", + "comment": " ", + "args": [], + "cases": [] + } + ], + "values": [ + { + "name": "background", + "comment": " The background color or pattern of the map.\n", + "type": "String -> List (Mapbox.Layer.LayerAttr Mapbox.Layer.Background) -> Mapbox.Layer.Layer" + }, + { + "name": "backgroundColor", + "comment": " The color with which the background will be drawn. Paint property. Defaults to `#000000`. Disabled by `backgroundPattern`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Background" + }, + { + "name": "backgroundOpacity", + "comment": " The opacity at which the background will be drawn. Paint property.\n\nShould be between `0` and `1` inclusive. Defaults to `1`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Background" + }, + { + "name": "backgroundPattern", + "comment": " Name of image in sprite to use for drawing an image background. For seamless patterns, image width and height must be a factor of two (2, 4, 8, ..., 512). Note that zoom-dependent expressions will be evaluated only at integer zoom levels. Paint property.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression String -> Mapbox.Layer.LayerAttr Mapbox.Layer.Background" + }, + { + "name": "circle", + "comment": " A filled circle.\n", + "type": "String -> Mapbox.Layer.SourceId -> List (Mapbox.Layer.LayerAttr Mapbox.Layer.Circle) -> Mapbox.Layer.Layer" + }, + { + "name": "circleBlur", + "comment": " Amount to blur the circle. 1 blurs the circle such that only the centerpoint is full opacity. Paint property. Defaults to `0`.\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Circle" + }, + { + "name": "circleColor", + "comment": " The fill color of the circle. Paint property. Defaults to `#000000`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Circle" + }, + { + "name": "circleOpacity", + "comment": " The opacity at which the circle will be drawn. Paint property.\n\nShould be between `0` and `1` inclusive. Defaults to `1`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Circle" + }, + { + "name": "circlePitchAlignment", + "comment": " Orientation of circle when map is pitched. Paint property. Defaults to `viewport`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Anchor -> Mapbox.Layer.LayerAttr Mapbox.Layer.Circle" + }, + { + "name": "circlePitchScale", + "comment": " Controls the scaling behavior of the circle when the map is pitched. Paint property. Defaults to `map`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Anchor -> Mapbox.Layer.LayerAttr Mapbox.Layer.Circle" + }, + { + "name": "circleRadius", + "comment": " Circle radius. Paint property.\n\nShould be greater than or equal to `0`.\nUnits in pixels. Defaults to `5`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Circle" + }, + { + "name": "circleStrokeColor", + "comment": " The stroke color of the circle. Paint property. Defaults to `#000000`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Circle" + }, + { + "name": "circleStrokeOpacity", + "comment": " The opacity of the circle's stroke. Paint property.\n\nShould be between `0` and `1` inclusive. Defaults to `1`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Circle" + }, + { + "name": "circleStrokeWidth", + "comment": " The width of the circle's stroke. Strokes are placed outside of the `circleRadius`. Paint property.\n\nShould be greater than or equal to `0`.\nUnits in pixels. Defaults to `0`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Circle" + }, + { + "name": "circleTranslate", + "comment": " The geometry's offset. Values are [x, y] where negatives indicate left and up, respectively. Paint property.\nUnits in pixels. Defaults to `0,0`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression (Array.Array Float) -> Mapbox.Layer.LayerAttr Mapbox.Layer.Circle" + }, + { + "name": "circleTranslateAnchor", + "comment": " Controls the frame of reference for `circleTranslate`. Paint property. Defaults to `map`. Requires `circleTranslate`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Anchor -> Mapbox.Layer.LayerAttr Mapbox.Layer.Circle" + }, + { + "name": "encode", + "comment": " Turns a layer into JSON\n", + "type": "Mapbox.Layer.Layer -> Json.Encode.Value" + }, + { + "name": "fill", + "comment": " A filled polygon with an optional stroked border.\n", + "type": "String -> Mapbox.Layer.SourceId -> List (Mapbox.Layer.LayerAttr Mapbox.Layer.Fill) -> Mapbox.Layer.Layer" + }, + { + "name": "fillAntialias", + "comment": " Whether or not the fill should be antialiased. Paint property. Defaults to `true`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Bool -> Mapbox.Layer.LayerAttr Mapbox.Layer.Fill" + }, + { + "name": "fillColor", + "comment": " The color of the filled part of this layer. This color can be specified as `rgba` with an alpha component and the color's opacity will not affect the opacity of the 1px stroke, if it is used. Paint property. Defaults to `#000000`. Disabled by `fillPattern`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Fill" + }, + { + "name": "fillExtrusion", + "comment": " An extruded (3D) polygon.\n", + "type": "String -> Mapbox.Layer.SourceId -> List (Mapbox.Layer.LayerAttr Mapbox.Layer.FillExtrusion) -> Mapbox.Layer.Layer" + }, + { + "name": "fillExtrusionBase", + "comment": " The height with which to extrude the base of this layer. Must be less than or equal to `fillExtrusionHeight`. Paint property.\n\nShould be greater than or equal to `0`.\nUnits in meters. Defaults to `0`. Requires `fillExtrusionHeight`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.FillExtrusion" + }, + { + "name": "fillExtrusionColor", + "comment": " The base color of the extruded fill. The extrusion's surfaces will be shaded differently based on this color in combination with the root `light` settings. If this color is specified as `rgba` with an alpha component, the alpha component will be ignored; use `fillExtrusionOpacity` to set layer opacity. Paint property. Defaults to `#000000`. Disabled by `fillExtrusionPattern`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.FillExtrusion" + }, + { + "name": "fillExtrusionHeight", + "comment": " The height with which to extrude this layer. Paint property.\n\nShould be greater than or equal to `0`.\nUnits in meters. Defaults to `0`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.FillExtrusion" + }, + { + "name": "fillExtrusionOpacity", + "comment": " The opacity of the entire fill extrusion layer. This is rendered on a per-layer, not per-feature, basis, and data-driven styling is not available. Paint property.\n\nShould be between `0` and `1` inclusive. Defaults to `1`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.FillExtrusion" + }, + { + "name": "fillExtrusionPattern", + "comment": " Name of image in sprite to use for drawing images on extruded fills. For seamless patterns, image width and height must be a factor of two (2, 4, 8, ..., 512). Note that zoom-dependent expressions will be evaluated only at integer zoom levels. Paint property.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression String -> Mapbox.Layer.LayerAttr Mapbox.Layer.FillExtrusion" + }, + { + "name": "fillExtrusionTranslate", + "comment": " The geometry's offset. Values are [x, y] where negatives indicate left and up (on the flat plane), respectively. Paint property.\nUnits in pixels. Defaults to `0,0`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression (Array.Array Float) -> Mapbox.Layer.LayerAttr Mapbox.Layer.FillExtrusion" + }, + { + "name": "fillExtrusionTranslateAnchor", + "comment": " Controls the frame of reference for `fillExtrusionTranslate`. Paint property. Defaults to `map`. Requires `fillExtrusionTranslate`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Anchor -> Mapbox.Layer.LayerAttr Mapbox.Layer.FillExtrusion" + }, + { + "name": "fillOpacity", + "comment": " The opacity of the entire fill layer. In contrast to the `fillColor`, this value will also affect the 1px stroke around the fill, if the stroke is used. Paint property.\n\nShould be between `0` and `1` inclusive. Defaults to `1`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Fill" + }, + { + "name": "fillOutlineColor", + "comment": " The outline color of the fill. Matches the value of `fillColor` if unspecified. Paint property. Disabled by `fillPattern`. Requires `fillAntialias` to be `true`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Fill" + }, + { + "name": "fillPattern", + "comment": " Name of image in sprite to use for drawing image fills. For seamless patterns, image width and height must be a factor of two (2, 4, 8, ..., 512). Note that zoom-dependent expressions will be evaluated only at integer zoom levels. Paint property.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression String -> Mapbox.Layer.LayerAttr Mapbox.Layer.Fill" + }, + { + "name": "fillTranslate", + "comment": " The geometry's offset. Values are [x, y] where negatives indicate left and up, respectively. Paint property.\nUnits in pixels. Defaults to `0,0`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression (Array.Array Float) -> Mapbox.Layer.LayerAttr Mapbox.Layer.Fill" + }, + { + "name": "fillTranslateAnchor", + "comment": " Controls the frame of reference for `fillTranslate`. Paint property. Defaults to `map`. Requires `fillTranslate`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Anchor -> Mapbox.Layer.LayerAttr Mapbox.Layer.Fill" + }, + { + "name": "filter", + "comment": " A expression specifying conditions on source features. Only features that match the filter are displayed.\n", + "type": "Mapbox.Expression.Expression any Bool -> Mapbox.Layer.LayerAttr all" + }, + { + "name": "heatmap", + "comment": " A heatmap.\n", + "type": "String -> Mapbox.Layer.SourceId -> List (Mapbox.Layer.LayerAttr Mapbox.Layer.Heatmap) -> Mapbox.Layer.Layer" + }, + { + "name": "heatmapColor", + "comment": " Defines the color of each pixel based on its density value in a heatmap. Should be an expression that uses `[\"heatmap-density\"]` as input. Paint property. Defaults to `interpolate,linear,heatmap-density,0,rgba(0, 0, 255, 0),0.1,royalblue,0.3,cyan,0.5,lime,0.7,yellow,1,red`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Heatmap" + }, + { + "name": "heatmapIntensity", + "comment": " Similar to `heatmapWeight` but controls the intensity of the heatmap globally. Primarily used for adjusting the heatmap based on zoom level. Paint property.\n\nShould be greater than or equal to `0`. Defaults to `1`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Heatmap" + }, + { + "name": "heatmapOpacity", + "comment": " The global opacity at which the heatmap layer will be drawn. Paint property.\n\nShould be between `0` and `1` inclusive. Defaults to `1`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Heatmap" + }, + { + "name": "heatmapRadius", + "comment": " Radius of influence of one heatmap point in pixels. Increasing the value makes the heatmap smoother, but less detailed. Paint property.\n\nShould be greater than or equal to `1`.\nUnits in pixels. Defaults to `30`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Heatmap" + }, + { + "name": "heatmapWeight", + "comment": " A measure of how much an individual point contributes to the heatmap. A value of 10 would be equivalent to having 10 points of weight 1 in the same spot. Especially useful when combined with clustering. Paint property.\n\nShould be greater than or equal to `0`. Defaults to `1`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Heatmap" + }, + { + "name": "hillshade", + "comment": " Client-side hillshading visualization based on DEM data. Currently, the implementation only supports Mapbox Terrain RGB and Mapzen Terrarium tiles.\n", + "type": "String -> Mapbox.Layer.SourceId -> List (Mapbox.Layer.LayerAttr Mapbox.Layer.Hillshade) -> Mapbox.Layer.Layer" + }, + { + "name": "hillshadeAccentColor", + "comment": " The shading color used to accentuate rugged terrain like sharp cliffs and gorges. Paint property. Defaults to `#000000`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Hillshade" + }, + { + "name": "hillshadeExaggeration", + "comment": " Intensity of the hillshade Paint property.\n\nShould be between `0` and `1` inclusive. Defaults to `0.5`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Hillshade" + }, + { + "name": "hillshadeHighlightColor", + "comment": " The shading color of areas that faces towards the light source. Paint property. Defaults to `#FFFFFF`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Hillshade" + }, + { + "name": "hillshadeIlluminationAnchor", + "comment": " Direction of light source when map is rotated. Paint property. Defaults to `viewport`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Anchor -> Mapbox.Layer.LayerAttr Mapbox.Layer.Hillshade" + }, + { + "name": "hillshadeIlluminationDirection", + "comment": " The direction of the light source used to generate the hillshading with 0 as the top of the viewport if `hillshadeIlluminationAnchor` is set to `viewport` and due north if `hillshadeIlluminationAnchor` is set to `map`. Paint property.\n\nShould be between `0` and `359` inclusive. Defaults to `335`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Hillshade" + }, + { + "name": "hillshadeShadowColor", + "comment": " The shading color of areas that face away from the light source. Paint property. Defaults to `#000000`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Hillshade" + }, + { + "name": "iconAllowOverlap", + "comment": " If true, the icon will be visible even if it collides with other previously drawn symbols. Layout property. Defaults to `false`. Requires `iconImage`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Bool -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconAnchor", + "comment": " Part of the icon placed closest to the anchor. Layout property. Defaults to `center`. Requires `iconImage`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.Position -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconColor", + "comment": " The color of the icon. This can only be used with sdf icons. Paint property. Defaults to `#000000`. Requires `iconImage`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconHaloBlur", + "comment": " Fade out the halo towards the outside. Paint property.\n\nShould be greater than or equal to `0`.\nUnits in pixels. Defaults to `0`. Requires `iconImage`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconHaloColor", + "comment": " The color of the icon's halo. Icon halos can only be used with SDF icons. Paint property. Defaults to `rgba(0, 0, 0, 0)`. Requires `iconImage`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconHaloWidth", + "comment": " Distance of halo to the icon outline. Paint property.\n\nShould be greater than or equal to `0`.\nUnits in pixels. Defaults to `0`. Requires `iconImage`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconIgnorePlacement", + "comment": " If true, other symbols can be visible even if they collide with the icon. Layout property. Defaults to `false`. Requires `iconImage`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Bool -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconImage", + "comment": " Name of image in sprite to use for drawing an image background. Layout property.\n", + "type": "Mapbox.Expression.Expression any String -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconKeepUpright", + "comment": " If true, the icon may be flipped to prevent it from being rendered upside-down. Layout property. Defaults to `false`. Requires `iconImage`. Requires `iconRotationAlignment` to be `map`. Requires `symbolPlacement` to be `line`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Bool -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconOffset", + "comment": " Offset distance of icon from its anchor. Positive values indicate right and down, while negative values indicate left and up. Each component is multiplied by the value of `iconSize` to obtain the final offset in pixels. When combined with `iconRotate` the offset will be as if the rotated direction was up. Layout property. Defaults to `0,0`. Requires `iconImage`.\n", + "type": "Mapbox.Expression.Expression any (Array.Array Float) -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconOpacity", + "comment": " The opacity at which the icon will be drawn. Paint property.\n\nShould be between `0` and `1` inclusive. Defaults to `1`. Requires `iconImage`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconOptional", + "comment": " If true, text will display without their corresponding icons when the icon collides with other symbols and the text does not. Layout property. Defaults to `false`. Requires `iconImage`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Bool -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconPadding", + "comment": " Size of the additional area around the icon bounding box used for detecting symbol collisions. Layout property.\n\nShould be greater than or equal to `0`.\nUnits in pixels. Defaults to `2`. Requires `iconImage`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconPitchAlignment", + "comment": " Orientation of icon when map is pitched. Layout property. Defaults to `auto`. Requires `iconImage`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.AnchorAuto -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconRotate", + "comment": " Rotates the icon clockwise. Layout property.\nUnits in degrees. Defaults to `0`. Requires `iconImage`.\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconRotationAlignment", + "comment": " In combination with `symbolPlacement`, determines the rotation behavior of icons. Layout property. Defaults to `auto`. Requires `iconImage`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.AnchorAuto -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconSize", + "comment": " Scales the original size of the icon by the provided factor. The new pixel size of the image will be the original pixel size multiplied by `iconSize`. 1 is the original size; 3 triples the size of the image. Layout property.\n\nShould be greater than or equal to `0`.\nUnits in factor of the original icon size. Defaults to `1`. Requires `iconImage`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconTextFit", + "comment": " Scales the icon to fit around the associated text. Layout property. Defaults to `none`. Requires `iconImage`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.TextFit -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconTextFitPadding", + "comment": " Size of the additional area added to dimensions determined by `iconTextFit`, in clockwise order: top, right, bottom, left. Layout property.\nUnits in pixels. Defaults to `0,0,0,0`. Requires `iconImage`. Requires `textField`. Requires `iconTextFit` to be both,, or ,width,, or ,height.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression (Array.Array Float) -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconTranslate", + "comment": " Distance that the icon's anchor is moved from its original placement. Positive values indicate right and down, while negative values indicate left and up. Paint property.\nUnits in pixels. Defaults to `0,0`. Requires `iconImage`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression (Array.Array Float) -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "iconTranslateAnchor", + "comment": " Controls the frame of reference for `iconTranslate`. Paint property. Defaults to `map`. Requires `iconImage`. Requires `iconTranslate`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Anchor -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "line", + "comment": " A stroked line.\n", + "type": "String -> Mapbox.Layer.SourceId -> List (Mapbox.Layer.LayerAttr Mapbox.Layer.Line) -> Mapbox.Layer.Layer" + }, + { + "name": "lineBlur", + "comment": " Blur applied to the line, in pixels. Paint property.\n\nShould be greater than or equal to `0`.\nUnits in pixels. Defaults to `0`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "lineCap", + "comment": " The display of line endings. Layout property. Defaults to `butt`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.LineCap -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "lineColor", + "comment": " The color with which the line will be drawn. Paint property. Defaults to `#000000`. Disabled by `linePattern`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "lineDasharray", + "comment": " Specifies the lengths of the alternating dashes and gaps that form the dash pattern. The lengths are later scaled by the line width. To convert a dash length to pixels, multiply the length by the current line width. Note that GeoJSON sources with `lineMetrics: true` specified won't render dashed lines to the expected scale. Also note that zoom-dependent expressions will be evaluated only at integer zoom levels. Paint property.\n\nShould be greater than or equal to `0`.\nUnits in line widths. Disabled by `linePattern`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression (Array.Array Float) -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "lineGapWidth", + "comment": " Draws a line casing outside of a line's actual path. Value indicates the width of the inner gap. Paint property.\n\nShould be greater than or equal to `0`.\nUnits in pixels. Defaults to `0`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "lineGradient", + "comment": " Defines a gradient with which to color a line feature. Can only be used with GeoJSON sources that specify `\"lineMetrics\": true`. Paint property. Disabled by `lineDasharray`. Disabled by `linePattern`. Requires `source` to be `geojson`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "lineJoin", + "comment": " The display of lines when joining. Layout property. Defaults to `miter`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.LineJoin -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "lineMiterLimit", + "comment": " Used to automatically convert miter joins to bevel joins for sharp angles. Layout property. Defaults to `2`. Requires `lineJoin` to be `miter`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "lineOffset", + "comment": " The line's offset. For linear features, a positive value offsets the line to the right, relative to the direction of the line, and a negative value to the left. For polygon features, a positive value results in an inset, and a negative value results in an outset. Paint property.\nUnits in pixels. Defaults to `0`.\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "lineOpacity", + "comment": " The opacity at which the line will be drawn. Paint property.\n\nShould be between `0` and `1` inclusive. Defaults to `1`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "linePattern", + "comment": " Name of image in sprite to use for drawing image lines. For seamless patterns, image width must be a factor of two (2, 4, 8, ..., 512). Note that zoom-dependent expressions will be evaluated only at integer zoom levels. Paint property.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression String -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "lineRoundLimit", + "comment": " Used to automatically convert round joins to miter joins for shallow angles. Layout property. Defaults to `1.05`. Requires `lineJoin` to be `round`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "lineTranslate", + "comment": " The geometry's offset. Values are [x, y] where negatives indicate left and up, respectively. Paint property.\nUnits in pixels. Defaults to `0,0`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression (Array.Array Float) -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "lineTranslateAnchor", + "comment": " Controls the frame of reference for `lineTranslate`. Paint property. Defaults to `map`. Requires `lineTranslate`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Anchor -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "lineWidth", + "comment": " Stroke thickness. Paint property.\n\nShould be greater than or equal to `0`.\nUnits in pixels. Defaults to `1`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Line" + }, + { + "name": "maxzoom", + "comment": " The maximum zoom level for the layer. At zoom levels equal to or greater than the maxzoom, the layer will be hidden. A number between 0 and 24 inclusive.\n", + "type": "Float -> Mapbox.Layer.LayerAttr all" + }, + { + "name": "metadata", + "comment": " Arbitrary properties useful to track with the layer, but do not influence rendering. Properties should be prefixed to avoid collisions, like 'mapbox:'.\n", + "type": "Json.Encode.Value -> Mapbox.Layer.LayerAttr all" + }, + { + "name": "minzoom", + "comment": " The minimum zoom level for the layer. At zoom levels less than the minzoom, the layer will be hidden. A number between 0 and 24 inclusive.\n", + "type": "Float -> Mapbox.Layer.LayerAttr all" + }, + { + "name": "raster", + "comment": " Raster map textures such as satellite imagery.\n", + "type": "String -> Mapbox.Layer.SourceId -> List (Mapbox.Layer.LayerAttr Mapbox.Layer.Raster) -> Mapbox.Layer.Layer" + }, + { + "name": "rasterBrightnessMax", + "comment": " Increase or reduce the brightness of the image. The value is the maximum brightness. Paint property.\n\nShould be between `0` and `1` inclusive. Defaults to `1`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Raster" + }, + { + "name": "rasterBrightnessMin", + "comment": " Increase or reduce the brightness of the image. The value is the minimum brightness. Paint property.\n\nShould be between `0` and `1` inclusive. Defaults to `0`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Raster" + }, + { + "name": "rasterContrast", + "comment": " Increase or reduce the contrast of the image. Paint property.\n\nShould be between `-1` and `1` inclusive. Defaults to `0`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Raster" + }, + { + "name": "rasterFadeDuration", + "comment": " Fade duration when a new tile is added. Paint property.\n\nShould be greater than or equal to `0`.\nUnits in milliseconds. Defaults to `300`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Raster" + }, + { + "name": "rasterHueRotate", + "comment": " Rotates hues around the color wheel. Paint property.\nUnits in degrees. Defaults to `0`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Raster" + }, + { + "name": "rasterOpacity", + "comment": " The opacity at which the image will be drawn. Paint property.\n\nShould be between `0` and `1` inclusive. Defaults to `1`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Raster" + }, + { + "name": "rasterSaturation", + "comment": " Increase or reduce the saturation of the image. Paint property.\n\nShould be between `-1` and `1` inclusive. Defaults to `0`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Raster" + }, + { + "name": "sourceLayer", + "comment": " Layer to use from a vector tile source. Required for vector tile sources; prohibited for all other source types, including GeoJSON sources.\n", + "type": "String -> Mapbox.Layer.LayerAttr all" + }, + { + "name": "symbol", + "comment": " An icon or a text label.\n", + "type": "String -> Mapbox.Layer.SourceId -> List (Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol) -> Mapbox.Layer.Layer" + }, + { + "name": "symbolAvoidEdges", + "comment": " If true, the symbols will not cross tile edges to avoid mutual collisions. Recommended in layers that don't have enough padding in the vector tile to prevent collisions, or if it is a point symbol layer placed after a line symbol layer. Layout property. Defaults to `false`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Bool -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "symbolPlacement", + "comment": " Label placement relative to its geometry. Layout property. Defaults to `point`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.SymbolPlacement -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "symbolSpacing", + "comment": " Distance between two symbol anchors. Layout property.\n\nShould be greater than or equal to `1`.\nUnits in pixels. Defaults to `250`. Requires `symbolPlacement` to be `line`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textAllowOverlap", + "comment": " If true, the text will be visible even if it collides with other previously drawn symbols. Layout property. Defaults to `false`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Bool -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textAnchor", + "comment": " Part of the text placed closest to the anchor. Layout property. Defaults to `center`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.Position -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textColor", + "comment": " The color with which the text will be drawn. Paint property. Defaults to `#000000`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textField", + "comment": " Value to use for a text label. Layout property. Defaults to ``.\n", + "type": "Mapbox.Expression.Expression any String -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textFont", + "comment": " Font stack to use for displaying text. Layout property. Defaults to `Open Sans Regular,Arial Unicode MS Regular`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression any (Array.Array String) -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textHaloBlur", + "comment": " The halo's fadeout distance towards the outside. Paint property.\n\nShould be greater than or equal to `0`.\nUnits in pixels. Defaults to `0`. Requires `textField`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textHaloColor", + "comment": " The color of the text's halo, which helps it stand out from backgrounds. Paint property. Defaults to `rgba(0, 0, 0, 0)`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.Color -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textHaloWidth", + "comment": " Distance of halo to the font outline. Max text halo width is 1/4 of the font-size. Paint property.\n\nShould be greater than or equal to `0`.\nUnits in pixels. Defaults to `0`. Requires `textField`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textIgnorePlacement", + "comment": " If true, other symbols can be visible even if they collide with the text. Layout property. Defaults to `false`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Bool -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textJustify", + "comment": " Text justification options. Layout property. Defaults to `center`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.TextJustify -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textKeepUpright", + "comment": " If true, the text may be flipped vertically to prevent it from being rendered upside-down. Layout property. Defaults to `true`. Requires `textField`. Requires `textRotationAlignment` to be `map`. Requires `symbolPlacement` to be `line`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Bool -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textLetterSpacing", + "comment": " Text tracking amount. Layout property.\nUnits in ems. Defaults to `0`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textLineHeight", + "comment": " Text leading value for multi-line text. Layout property.\nUnits in ems. Defaults to `1.2`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textMaxAngle", + "comment": " Maximum angle change between adjacent characters. Layout property.\nUnits in degrees. Defaults to `45`. Requires `textField`. Requires `symbolPlacement` to be `line`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textMaxWidth", + "comment": " The maximum line width for text wrapping. Layout property.\n\nShould be greater than or equal to `0`.\nUnits in ems. Defaults to `10`. Requires `textField`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textOffset", + "comment": " Offset distance of text from its anchor. Positive values indicate right and down, while negative values indicate left and up. Layout property.\nUnits in ems. Defaults to `0,0`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression any (Array.Array Float) -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textOpacity", + "comment": " The opacity at which the text will be drawn. Paint property.\n\nShould be between `0` and `1` inclusive. Defaults to `1`. Requires `textField`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textOptional", + "comment": " If true, icons will display without their corresponding text when the text collides with other symbols and the icon does not. Layout property. Defaults to `false`. Requires `textField`. Requires `iconImage`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Bool -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textPadding", + "comment": " Size of the additional area around the text bounding box used for detecting symbol collisions. Layout property.\n\nShould be greater than or equal to `0`.\nUnits in pixels. Defaults to `2`. Requires `textField`.\n\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textPitchAlignment", + "comment": " Orientation of text when map is pitched. Layout property. Defaults to `auto`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.AnchorAuto -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textRotate", + "comment": " Rotates the text clockwise. Layout property.\nUnits in degrees. Defaults to `0`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textRotationAlignment", + "comment": " In combination with `symbolPlacement`, determines the rotation behavior of the individual glyphs forming the text. Layout property. Defaults to `auto`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.AnchorAuto -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textSize", + "comment": " Font size. Layout property.\n\nShould be greater than or equal to `0`.\nUnits in pixels. Defaults to `16`. Requires `textField`.\n\n", + "type": "Mapbox.Expression.Expression any Float -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textTransform", + "comment": " Specifies how to capitalize text, similar to the CSS `textTransform` property. Layout property. Defaults to `none`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression any Mapbox.Expression.TextTransform -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textTranslate", + "comment": " Distance that the text's anchor is moved from its original placement. Positive values indicate right and down, while negative values indicate left and up. Paint property.\nUnits in pixels. Defaults to `0,0`. Requires `textField`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression (Array.Array Float) -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "textTranslateAnchor", + "comment": " Controls the frame of reference for `textTranslate`. Paint property. Defaults to `map`. Requires `textField`. Requires `textTranslate`.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Mapbox.Expression.Anchor -> Mapbox.Layer.LayerAttr Mapbox.Layer.Symbol" + }, + { + "name": "visible", + "comment": " Whether this layer is displayed.\n", + "type": "Mapbox.Expression.Expression Mapbox.Expression.CameraExpression Bool -> Mapbox.Layer.LayerAttr any" + } + ], + "generated-with-elm-version": "0.18.0" + }, + { + "name": "Mapbox.Expression", + "comment": " Expressions form a little language that can be used to compute values for various layer properties.\n\nIt is recommended to import them in the following fashion:\n\n import Mapbox.Expression as E exposing (str, float, int, true, false)\n\nThis way you can use the language without much syntactic fuss and you have easy access to the literals.\n\n**Note**: If you are familiar with the JS version of the style spec,\nwe have made a few changes. Argument order has been switched for many functions to support using pipeline style more naturally. Some functions use overloading in the original, these have been renamed to\nnot be overloaded. Finally, we have chosen not to represent some parts of the spec that are superflous (especially when used form Elm), namely functions and let-in expressions.\n\n@docs Expression, DataExpression, CameraExpression\n\n@docs encode\n\n\n### Types\n\nAll of the types used as expression results are phantom (i.e. they don't have any runtime values but are used purely for compile-time checking). As such we use a mix of standard elm types for their familiarty:\n\n - `Float`\n - `String`\n - `Array`\n - `Bool`\n\nWe introduce the following types:\n\n@docs Color, Object, Collator\n\n(And also a bunch of Enum types, that will be documented in the Enums section).\n\nYou can use the following functions to transfer Elm values into the Expression language:\n\n@docs true, false, bool, int, float, str, rgba, floats, strings, object, collator, defaultCollator\n\nIn some cases, you will need to force the type system to cooperate.\nThe following assertions will force the type and cause a run-time error\nif the type is wrong:\n\n@docs assertArray, assertArrayOfStrings, assertArrayOfFloats, assertArrayOfBools, assertBool, assertFloat, assertObject, assertString\n\nYou can also use these functions to explicitly cast to a particular type:\n\n@docs toBool, toColor, toFloat, toString\n\n@docs typeof\n\n\n### Lookup\n\n@docs at, get, has, count, length\n\n\n### Feature data\n\n@docs geometryType, id, properties, getProperty, hasProperty\n\n\n### Decision\n\nThe expressions in this section can be used to add conditional logic to your styles.\n\n@docs isEqual, notEqual, lessThan, lessThanOrEqual, greaterThan, greaterThanOrEqual\n\nStrings can be compared with a collator for locale specific comparisons:\n\n@docs isEqualWithCollator, notEqualWithCollator,lessThanWithCollator, lessThanOrEqualWithCollator, greaterThanWithCollator, greaterThanOrEqualWithCollator\n\nLogical operators:\n\n@docs not, all, any\n\nControl flow:\n\n@docs ifElse, conditionally, matchesStr, matchesFloat, coallesce\n\n\n### Ramps, scales, curves\n\n@docs interpolate, Interpolation, step\n\n\n### String\n\n@docs append, downcase, upcase, isSupportedScript, resolvedLocale\n\n\n### Color\n\n@docs makeRGBColor, makeRGBAColor, rgbaChannels\n\n\n### Math\n\n@docs minus, multiply, divideBy, modBy, plus, raiseBy, sqrt, abs, ceil, floor, round, cos, sin, tan, acos, asin, atan, e, pi, ln, ln2, log10, log2\n\n\n### Zoom\n\n@docs zoom\n\n\n### Heatmap\n\n@docs heatmapDensity, lineProgress\n\n\n### Enums\n\nThese are required for various layer properties.\n\n@docs Anchor, anchorMap, anchorViewport, AnchorAuto, anchorAutoMap, anchorAutoViewport, anchorAutoAuto, Position, positionCenter, positionLeft, positionRight, positionTop, positionBottom, positionTopLeft, positionTopRight, positionBottomLeft, positionBottomRight, TextFit, textFitNone, textFitWidth, textFitHeight, textFitBoth, LineCap, lineCapButt, lineCapRound, lineCapSquare, LineJoin, lineJoinBevel, lineJoinRound, lineJoinMiter, SymbolPlacement, symbolPlacementPoint, symbolPlacementLine, TextJustify, textJustifyLeft, textJustifyCenter, textJustifyRight, TextTransform, textTransformNone, textTransformUppercase, textTransformLowercase\n\n", + "aliases": [], + "types": [ + { + "name": "Anchor", + "comment": " ", + "args": [], + "cases": [ + [ + "Map", + [] + ], + [ + "Viewport", + [] + ] + ] + }, + { + "name": "AnchorAuto", + "comment": " ", + "args": [], + "cases": [] + }, + { + "name": "CameraExpression", + "comment": " A camera expression is any expression that uses the zoom operator. Such expressions allow the the appearance of a layer\nto change with the map's zoom level. Camera expressions can be used to create the appearance of depth and to control data density.\n\n zoom\n |> interpolate Linear\n [ ( 5, int 1 )\n , ( 10, int 5 )\n ]\n |> Layer.circleRadius\n\nThis example uses the `interpolate` operator to define a linear relationship between zoom level and circle size using a set of input-output pairs. In this case, the expression indicates that the circle radius should be 1 pixel when the zoom level is 5 or below, and 5 pixels when the zoom is 10 or above. In between, the radius will be linearly interpolated between 1 and 5 pixels\n\nCamera expressions are allowed anywhere an expression may be used. However, when a camera expression used as the value of a layout or paint property, the `zoom` operator must appear only as the input to an outer `interpolate` or `step` expression\n\nThere is an important difference between layout and paint properties in the timing of camera expression evaluation. Paint property camera expressions are re-evaluated whenever the zoom level changes, even fractionally. For example, a paint property camera expression will be re-evaluated continuously as the map moves between zoom levels 4.1 and 4.6. On the other hand, a layout property camera expression is evaluated only at integer zoom levels. It will not be re-evaluated as the zoom changes from 4.1 to 4.6 -- only if it goes above 5 or below 4.\n\n", + "args": [], + "cases": [] + }, + { + "name": "Collator", + "comment": " Used for locale sensitive string comparisons.\n", + "args": [], + "cases": [] + }, + { + "name": "Color", + "comment": " Represents a color value\n", + "args": [], + "cases": [] + }, + { + "name": "DataExpression", + "comment": " A data expression is any expression that access feature data -- that is, any expression that uses one of the data operators: `getProperty`, `hasProperty` , `id`, `geometryType`, or `properties`. Data expressions allow a feature's properties to determine its appearance. They can be used to differentiate features within the same layer and to create data visualizations.\n\n makeRGBColor\n -- red is higher when feature.properties.tem