[{"name":"W.Chart","comment":"\n\n\n# Setup\n\n@docs globalStyles, fromX, fromXY, fromXYZ, ConfigX, ConfigXY, ConfigXYZ, Config, ChartAttribute\n\n\n# Axis\n\n@docs xAxis, axis, axisList\n\n\n# Axis Attributes\n\n@docs axisLabel, defaultValue, format, noAxisLine, noGridLines, safety, stacked, distribution, ticks, AxisAttribute\n\n\n# Styles\n\n\n## Size\n\n@docs width, ratio, background\n\n\n## Padding\n\n@docs padding, paddingX, paddingY, paddingCustom\n\n\n## Colors\n\n\n## Font Sizes\n\n@docs fontSize\n\n\n# Widgets\n\n@docs view, WidgetX, WidgetXY, WidgetXYZ, Widget\n\n\n# Interaction\n\n@docs withActive, withHover, groupByXY, onClick, onMouseEnter, onMouseLeave, PointX, PointXY, PointXYZ\n\n\n# Helpful Types\n\n@docs Context, Coordinates, Point, RenderDatum, AxisDataPoints\n\n\n# Debugging\n\n@docs debug\n\n","unions":[],"aliases":[{"name":"AxisAttribute","comment":" ","args":[],"type":"Attr.Attr W.Chart.Internal.AxisAttributes"},{"name":"AxisDataPoints","comment":" ","args":["x","a"],"type":"W.Chart.Internal.AxisDataPoints x a"},{"name":"ChartAttribute","comment":" ","args":["msg"],"type":"Attr.Attr (W.Chart.Internal.Attributes msg)"},{"name":"Config","comment":" ","args":["msg","x","y","z","point"],"type":"W.Chart.Internal.Config msg x y z point"},{"name":"ConfigX","comment":" ","args":["msg","x"],"type":"W.Chart.Internal.Config msg x () () { x : W.Chart.Point x }"},{"name":"ConfigXY","comment":" ","args":["msg","x","y"],"type":"W.Chart.Internal.Config msg x y () { x : W.Chart.Point x, y : List.List (W.Chart.Point y) }"},{"name":"ConfigXYZ","comment":" ","args":["msg","x","y","z"],"type":"W.Chart.Internal.Config msg x y z { x : W.Chart.Point x, y : List.List (W.Chart.Point y), z : List.List (W.Chart.Point z) }"},{"name":"Context","comment":" ","args":["x","y","z"],"type":"W.Chart.Internal.Context x y z"},{"name":"Coordinates","comment":" ","args":[],"type":"{ x : Basics.Float, y : Maybe.Maybe Basics.Float }"},{"name":"Point","comment":" ","args":["a"],"type":"W.Chart.Internal.DataPoint a"},{"name":"PointX","comment":" ","args":["x"],"type":"{ x : W.Chart.Point x }"},{"name":"PointXY","comment":" ","args":["x","y"],"type":"{ x : W.Chart.Point x, y : List.List (W.Chart.Point y) }"},{"name":"PointXYZ","comment":" ","args":["x","y","z"],"type":"{ x : W.Chart.Point x, y : List.List (W.Chart.Point y), z : List.List (W.Chart.Point z) }"},{"name":"RenderDatum","comment":" ","args":[],"type":"W.Chart.Internal.RenderDatum"},{"name":"Widget","comment":" ","args":["msg","x","y","z","point"],"type":"W.Chart.Internal.Widget msg x y z point"},{"name":"WidgetX","comment":" ","args":["msg","x","y","z","a"],"type":"W.Chart.Widget msg x y z { a | x : W.Chart.Point x }"},{"name":"WidgetXY","comment":" ","args":["msg","x","y","z","a"],"type":"W.Chart.Widget msg x y z { a | x : W.Chart.Point x, y : List.List (W.Chart.Point y) }"},{"name":"WidgetXYZ","comment":" ","args":["msg","x","y","z","a"],"type":"W.Chart.Widget msg x y z { a | x : W.Chart.Point x, y : List.List (W.Chart.Point y), z : List.List (W.Chart.Point z) }"}],"values":[{"name":"axis","comment":" ","type":"List.List W.Chart.AxisAttribute -> { label : String.String, color : String.String, toValue : x -> Maybe.Maybe Basics.Float } -> W.Chart.AxisConfigYZ x String.String"},{"name":"axisLabel","comment":" ","type":"String.String -> W.Chart.AxisAttribute"},{"name":"axisList","comment":" ","type":"List.List W.Chart.AxisAttribute -> { data : List.List a, toLabel : a -> String.String, toColor : a -> String.String, toValue : a -> x -> Maybe.Maybe Basics.Float } -> W.Chart.AxisConfigYZ x a"},{"name":"background","comment":" ","type":"String.String -> W.Chart.ChartAttribute msg"},{"name":"debug","comment":" ","type":"W.Chart.ChartAttribute msg"},{"name":"defaultValue","comment":" ","type":"Basics.Float -> W.Chart.AxisAttribute"},{"name":"distribution","comment":" ","type":"W.Chart.AxisAttribute"},{"name":"fontSize","comment":" ","type":"{ small : Basics.Float, medium : Basics.Float, large : Basics.Float } -> W.Chart.ChartAttribute msg"},{"name":"format","comment":" ","type":"(Basics.Float -> String.String) -> W.Chart.AxisAttribute"},{"name":"fromX","comment":" ","type":"List.List (W.Chart.ChartAttribute msg) -> { x : W.Chart.AxisConfigX x } -> W.Chart.ConfigX msg x"},{"name":"fromXY","comment":" ","type":"List.List (W.Chart.ChartAttribute msg) -> { x : W.Chart.AxisConfigX x, y : W.Chart.AxisConfigYZ x y } -> W.Chart.ConfigXY msg x y"},{"name":"fromXYZ","comment":" ","type":"List.List (W.Chart.ChartAttribute msg) -> { x : W.Chart.AxisConfigX x, y : W.Chart.AxisConfigYZ x y, z : W.Chart.AxisConfigYZ x z } -> W.Chart.ConfigXYZ msg x y z"},{"name":"globalStyles","comment":" ","type":"TypedSvg.Core.Svg msg"},{"name":"groupByXY","comment":" ","type":"W.Chart.HoverAttribute msg point"},{"name":"noAxisLine","comment":" ","type":"W.Chart.AxisAttribute"},{"name":"noGridLines","comment":" ","type":"W.Chart.AxisAttribute"},{"name":"onClick","comment":" ","type":"({ x : Basics.Float, y : Maybe.Maybe Basics.Float } -> point -> msg) -> W.Chart.HoverAttribute msg point"},{"name":"onMouseEnter","comment":" ","type":"({ x : Basics.Float, y : Maybe.Maybe Basics.Float } -> point -> msg) -> W.Chart.HoverAttribute msg point"},{"name":"onMouseLeave","comment":" ","type":"({ x : Basics.Float, y : Maybe.Maybe Basics.Float } -> point -> msg) -> W.Chart.HoverAttribute msg point"},{"name":"padding","comment":" ","type":"Basics.Int -> W.Chart.ChartAttribute msg"},{"name":"paddingCustom","comment":" ","type":"{ top : Basics.Int, left : Basics.Int, right : Basics.Int, bottom : Basics.Int } -> W.Chart.ChartAttribute msg"},{"name":"paddingX","comment":" ","type":"Basics.Int -> W.Chart.ChartAttribute msg"},{"name":"paddingY","comment":" ","type":"Basics.Int -> W.Chart.ChartAttribute msg"},{"name":"ratio","comment":" ","type":"Basics.Float -> W.Chart.ChartAttribute msg"},{"name":"safety","comment":" ","type":"Basics.Float -> W.Chart.AxisAttribute"},{"name":"stacked","comment":" ","type":"W.Chart.AxisAttribute"},{"name":"ticks","comment":" ","type":"Basics.Int -> W.Chart.AxisAttribute"},{"name":"view","comment":" ","type":"List.List (W.Chart.Internal.Widget msg x y z point) -> W.Chart.Config msg x y z point -> Html.Html msg"},{"name":"width","comment":" ","type":"Basics.Int -> W.Chart.ChartAttribute msg"},{"name":"withActive","comment":" ","type":"Maybe.Maybe W.Chart.Coordinates -> W.Chart.Config msg x y z point -> W.Chart.Config msg x y z point"},{"name":"withHover","comment":" ","type":"List.List (W.Chart.HoverAttribute msg point) -> W.Chart.Config msg x y z point -> W.Chart.Config msg x y z point"},{"name":"xAxis","comment":" ","type":"List.List W.Chart.AxisAttribute -> { data : List.List x, toLabel : x -> String.String } -> W.Chart.AxisConfigX x"}],"binops":[]},{"name":"W.Chart.Bar","comment":"\n\n@docs fromY, fromZ, fromYZ\n\n@docs margins, Attribute\n\n","unions":[],"aliases":[{"name":"Attribute","comment":" ","args":[],"type":"Attr.Attr W.Chart.Bar.Attributes"}],"values":[{"name":"fromY","comment":" ","type":"List.List W.Chart.Bar.Attribute -> W.Chart.WidgetXY msg x y z a"},{"name":"fromYZ","comment":" ","type":"List.List W.Chart.Bar.Attribute -> W.Chart.WidgetXYZ msg x y z a"},{"name":"fromZ","comment":" ","type":"List.List W.Chart.Bar.Attribute -> W.Chart.WidgetXYZ msg x y z a"},{"name":"margins","comment":" ","type":"Basics.Float -> Basics.Float -> W.Chart.Bar.Attribute"}],"binops":[]},{"name":"W.Chart.Bubble","comment":"\n\n@docs fromY, fromZ\n\n\n# Color\n\n@docs Attribute\n\n","unions":[],"aliases":[{"name":"Attribute","comment":" ","args":["msg","point"],"type":"Attr.Attr (W.Chart.Bubble.Attributes msg point)"}],"values":[{"name":"fromY","comment":" ","type":"List.List (W.Chart.Bubble.Attribute msg point) -> { toRadius : W.Chart.Point x -> W.Chart.Point y -> Basics.Float, toColor : W.Chart.Point x -> W.Chart.Point y -> String.String } -> W.Chart.WidgetXY msg x y z a"},{"name":"fromZ","comment":" ","type":"List.List (W.Chart.Bubble.Attribute msg point) -> { toRadius : W.Chart.Point x -> W.Chart.Point z -> Basics.Float, toColor : W.Chart.Point x -> W.Chart.Point z -> String.String } -> W.Chart.WidgetXYZ msg x y z a"}],"binops":[]},{"name":"W.Chart.Colors","comment":" Accessible colors based on <https://www.s-ings.com/scratchpad/oklch-smooth/> .\n\n@docs mapWithColors, mapWithColorsSkipping, Palette\n@docs mix, mixB, rainbow, cool, warm\n@docs amber, blue, cyan, emerald, gray, green, indigo, orange, pink, purple, red, rose, teal, violet, yellow\n@docs toColors, toColorWithShades, toColorWithShadesSkipping, colorByIndex, colorByIndexSkipping\n\n","unions":[{"name":"Palette","comment":" ","args":[],"cases":[]}],"aliases":[],"values":[{"name":"amber","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"blue","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"colorByIndex","comment":" Get the color string for each color in a palette.\nUse all shades for a given color before moving to the next color.\nThis is usually recommended since the user will be able to distinguish different shades if the colors are near each other.\n","type":"W.Chart.Colors.Palette -> Basics.Int -> String.String"},{"name":"colorByIndexSkipping","comment":" Get the color string for each color in a palette.\nAlways skip color, move between shades after all colors were used.\nShades are also slightly moved in a circular fashion to achieve more contrast.\n","type":"W.Chart.Colors.Palette -> Basics.Int -> String.String"},{"name":"cool","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"cyan","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"emerald","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"gray","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"green","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"indigo","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"mapWithColors","comment":" ","type":"W.Chart.Colors.Palette -> (String.String -> a -> b) -> List.List a -> List.List b"},{"name":"mapWithColorsSkipping","comment":" ","type":"W.Chart.Colors.Palette -> (String.String -> a -> b) -> List.List a -> List.List b"},{"name":"mix","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"mixB","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"orange","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"pink","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"purple","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"rainbow","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"red","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"rose","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"teal","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"toColorWithShades","comment":" ","type":"W.Chart.Colors.Palette -> List.List String.String"},{"name":"toColorWithShadesSkipping","comment":" ","type":"W.Chart.Colors.Palette -> List.List String.String"},{"name":"toColors","comment":" ","type":"W.Chart.Colors.Palette -> List.List String.String"},{"name":"violet","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"warm","comment":" ","type":"W.Chart.Colors.Palette"},{"name":"yellow","comment":" ","type":"W.Chart.Colors.Palette"}],"binops":[]},{"name":"W.Chart.Line","comment":"\n\n@docs fromY, fromZ\n\n@docs smooth, dashed, areaAlways, lineAlways, Attribute\n\n","unions":[],"aliases":[{"name":"Attribute","comment":" ","args":[],"type":"Attr.Attr W.Chart.Line.Attributes"}],"values":[{"name":"areaAlways","comment":" ","type":"W.Chart.Line.Attribute"},{"name":"dashed","comment":" ","type":"W.Chart.Line.Attribute"},{"name":"fromY","comment":" ","type":"List.List W.Chart.Line.Attribute -> W.Chart.WidgetXY msg x y z a"},{"name":"fromZ","comment":" ","type":"List.List W.Chart.Line.Attribute -> W.Chart.WidgetXYZ msg x y z a"},{"name":"lineAlways","comment":" ","type":"W.Chart.Line.Attribute"},{"name":"smooth","comment":" ","type":"W.Chart.Line.Attribute"}],"binops":[]},{"name":"W.Chart.Tooltip","comment":"\n\n@docs fromY, fromZ, fromYZ\n\n@docs formatByX, headerValue, yAxisLabel, zAxisLabel, axisValue, Attribute\n\n","unions":[],"aliases":[{"name":"Attribute","comment":" ","args":["msg","x","y","z","point"],"type":"Attr.Attr (W.Chart.Tooltip.Attributes msg x y z point)"}],"values":[{"name":"axisValue","comment":" ","type":"(W.Chart.Context x y z -> List.List W.Chart.RenderDatum -> List.List (Html.Html msg)) -> W.Chart.Tooltip.Attribute msg x y z point"},{"name":"formatByX","comment":" ","type":"(W.Chart.Context x y z -> List.List W.Chart.RenderDatum -> W.Chart.RenderDatum -> List.List (Html.Html msg)) -> W.Chart.Tooltip.Attribute msg x y z point"},{"name":"fromY","comment":" ","type":"List.List (W.Chart.Tooltip.Attribute msg x y z point) -> W.Chart.WidgetXY msg x y z a"},{"name":"fromYZ","comment":" ","type":"List.List (W.Chart.Tooltip.Attribute msg x y z point) -> W.Chart.WidgetXYZ msg x y z a"},{"name":"fromZ","comment":" ","type":"List.List (W.Chart.Tooltip.Attribute msg x y z point) -> W.Chart.WidgetXYZ msg x y z a"},{"name":"headerValue","comment":" ","type":"(W.Chart.Context x y z -> List.List W.Chart.RenderDatum -> List.List (Html.Html msg)) -> W.Chart.Tooltip.Attribute msg x y z point"},{"name":"yAxisLabel","comment":" ","type":"List.List (Html.Html msg) -> W.Chart.Tooltip.Attribute msg x y z point"},{"name":"zAxisLabel","comment":" ","type":"List.List (Html.Html msg) -> W.Chart.Tooltip.Attribute msg x y z point"}],"binops":[]},{"name":"W.Chart.Widget","comment":"\n\n@docs empty, fromX, fromY, fromZ, fromYZ\n@docs withBackground, withForeground\n@docs withHover\n\n","unions":[],"aliases":[],"values":[{"name":"empty","comment":" ","type":"W.Chart.Internal.Widget msg x y z point"},{"name":"fromX","comment":" ","type":"(W.Chart.Context x y z -> Svg.Svg msg) -> W.Chart.WidgetX msg x y z a"},{"name":"fromY","comment":" ","type":"(W.Chart.Context x y z -> Svg.Svg msg) -> W.Chart.WidgetXY msg x y z a"},{"name":"fromYZ","comment":" ","type":"(W.Chart.Context x y z -> Svg.Svg msg) -> W.Chart.WidgetXYZ msg x y z a"},{"name":"fromZ","comment":" ","type":"(W.Chart.Context x y z -> Svg.Svg msg) -> W.Chart.WidgetXYZ msg x y z a"},{"name":"withBackground","comment":" ","type":"(W.Chart.Context x y z -> Svg.Svg msg) -> W.Chart.Internal.Widget msg x y z point -> W.Chart.Internal.Widget msg x y z point"},{"name":"withForeground","comment":" ","type":"(W.Chart.Context x y z -> Svg.Svg msg) -> W.Chart.Internal.Widget msg x y z point -> W.Chart.Internal.Widget msg x y z point"},{"name":"withHover","comment":" ","type":"(W.Chart.Context x y z -> W.Chart.Coordinates -> point -> Svg.Svg msg) -> W.Chart.Internal.Widget msg x y z point -> W.Chart.Internal.Widget msg x y z point"}],"binops":[]}]