[
    {
        "name": "ECharts",
        "comment": " This is a [ECharts](http://echarts.baidu.com/) chart option types\ncollection and a helper to use\n[ECharts WebComponent](https://github.com/kkpoon/echarts-webcomponent).\n\n\n## Why Web Component?\n\nPlease watch [this](https://www.youtube.com/watch?v=ar3TakwE8o0&t=1s)\nvideo about Elm and Web Components by Richard Feldman\n\n\n# Definitions\n\n@docs ChartType\n\n\n# Helpers\n\n@docs toJsonString\n\n",
        "unions": [
            {
                "name": "ChartType",
                "comment": " the chart type\n",
                "args": [],
                "cases": [
                    [
                        "PieChart",
                        [
                            "PieChartOption"
                        ]
                    ],
                    [
                        "BarChart",
                        [
                            "BarChartOption"
                        ]
                    ]
                ]
            }
        ],
        "aliases": [],
        "values": [
            {
                "name": "toJsonString",
                "comment": " convert the chart option to a string of json, which could apply to the\n[echarts-webcomponent](https://github.com/kkpoon/echarts-webcomponent) `option`\nattribute\n",
                "type": "ChartType -> String"
            }
        ],
        "binops": []
    },
    {
        "name": "ECharts.PieChart",
        "comment": " Pie Chart Options\n\nThis module helps to create Pie Chart Option.\n\nECharts official [examples](https://ecomfe.github.io/echarts-examples/public/index.html#chart-type-pie)\n\n# Definitions\n\n@docs PieChartOption\n\n@docs defaultPieChartOption\n\n@docs PieSeriesOption\n\n@docs defaultPieSeriesOption\n\n# Encoders\n\n@docs encodePieChartOption\n\n",
        "unions": [],
        "aliases": [
            {
                "name": "PieChartOption",
                "comment": " describe the chart option of pie chart\n",
                "args": [],
                "type": "{ title : Maybe TitleOption, tooltip : Maybe TooltipOption, legend : Maybe LegendOption, series : Maybe (List PieSeriesOption) }"
            },
            {
                "name": "PieSeriesOption",
                "comment": " describe the [data series](https://ecomfe.github.io/echarts-doc/public/en/option.html#series-pie) of pie chart\n",
                "args": [],
                "type": "{ name : Maybe String, legendHoverLink : Maybe Bool, hoverAnimation : Maybe Bool, selectedMode : Maybe SelectedMode, selectedOffset : Maybe Int, clockwise : Maybe Bool, startAngle : Maybe Float, minAngle : Maybe Float, roseType : Maybe Bool, avoidLabelOverlap : Maybe Bool, stillShowZeroSum : Maybe Bool, radius : Maybe ( String, String ), center : Maybe ( String, String ), itemStyle : Maybe { emphasis : Maybe { shadowBlur : Maybe Int, shadowOffsetX : Maybe Int, shadowColor : Maybe String } }, data : Maybe (List { value : Float, name : String }) }"
            }
        ],
        "values": [
            {
                "name": "defaultPieChartOption",
                "comment": " create a pie chart option of for default value\n\nThis function creates an All-Nothing TitleOption.\n[ECharts](https://ecomfe.github.io/echarts-doc/public/en/option.html)\napplies the default value when the option attribute is not specified.\n",
                "type": "PieChartOption"
            },
            {
                "name": "defaultPieSeriesOption",
                "comment": " create a pie chart series option of for default value\n\nThis function creates an All-Nothing TitleOption.\n[ECharts](https://ecomfe.github.io/echarts-doc/public/en/option.html)\napplies the default value when the option attribute is not specified.\n",
                "type": "PieSeriesOption"
            },
            {
                "name": "encodePieChartOption",
                "comment": " encode the pie chart option to Json.Encode.Value\n",
                "type": "PieChartOption -> Value"
            }
        ],
        "binops": []
    },
    {
        "name": "ECharts.BarChart",
        "comment": " Bar Chart Options\n\nThis module helps to create Bar Chart Option.\n\nECharts official [examples](https://ecomfe.github.io/echarts-examples/public/index.html#chart-type-Bar)\n\n\n# Definitions\n\n@docs BarChartOption\n\n@docs defaultBarChartOption\n\n@docs BarSeriesOption\n\n@docs defaultBarSeriesOption\n\n\n# Encoders\n\n@docs encodeBarChartOption\n\n",
        "unions": [],
        "aliases": [
            {
                "name": "BarChartOption",
                "comment": " describe the chart option of Bar chart\n",
                "args": [],
                "type": "{ title : Maybe TitleOption, tooltip : Maybe TooltipOption, legend : Maybe LegendOption, xAxis : Maybe XAxisOption, yAxis : Maybe YAxisOption, series : Maybe (List BarSeriesOption) }"
            },
            {
                "name": "BarSeriesOption",
                "comment": " describe the [data series](https://ecomfe.github.io/echarts-doc/public/en/option.html#series-Bar) of Bar chart\n",
                "args": [],
                "type": "{ name : Maybe String, barGap : Maybe Int, data : Maybe (List { value : Float }) }"
            }
        ],
        "values": [
            {
                "name": "defaultBarChartOption",
                "comment": " create a Bar chart option of for default value\n\nThis function creates an All-Nothing TitleOption.\n[ECharts](https://ecomfe.github.io/echarts-doc/public/en/option.html)\napplies the default value when the option attribute is not specified.\n\n",
                "type": "BarChartOption"
            },
            {
                "name": "defaultBarSeriesOption",
                "comment": " create a Bar chart series option of for default value\n\nThis function creates an All-Nothing TitleOption.\n[ECharts](https://ecomfe.github.io/echarts-doc/public/en/option.html)\napplies the default value when the option attribute is not specified.\n\n",
                "type": "BarSeriesOption"
            },
            {
                "name": "encodeBarChartOption",
                "comment": " encode the Bar chart option to Json.Encode.Value\n",
                "type": "BarChartOption -> Value"
            }
        ],
        "binops": []
    },
    {
        "name": "ECharts.Style",
        "comment": " Chart layout and style related options\n\n\n# Chart Title Options\n\n@docs TitleOption\n\n@docs defaultTitleOption\n\n@docs encodeTitleOption\n\n\n# Tooltip Options\n\n@docs TooltipOption\n\n@docs defaultTooltipOption\n\n@docs encodeTooltipOption\n\n@docs TooltipAxisPointerOption\n\n@docs defaultTooltipAxisPointerOption\n\n\n## Tooltip Attribute Values\n\n@docs TooltipTrigger\n\n@docs TooltipTriggerOn\n\n@docs TooltipPosition\n\n@docs TooltipAxisPointerType\n\n\n# Legend Options\n\n@docs LegendOption\n\n@docs defaultLegendOption\n\n@docs encodeLegendOption\n\n\n# XAxis Options\n\n@docs XAxisOption\n\n@docs defaultXAxisOption\n\n@docs encodeXAxisOption\n\n\n# YAxis Options\n\n@docs YAxisOption\n\n@docs defaultYAxisOption\n\n@docs encodeYAxisOption\n\n\n## Legend Attribute Values\n\n@docs LegendAlignment\n\n\n# Style Options\n\n@docs LineStyleOption\n\n@docs defaultLineStyleOption\n\n@docs encodeLineStyleOption\n\n@docs CrossStyleOption\n\n@docs defaultCrossStyleOption\n\n@docs encodeCrossStyleOption\n\n@docs ShadowStyleOption\n\n@docs defaultShadowStyleOption\n\n@docs encodeShadowStyleOption\n\n@docs TextStyleOption\n\n@docs defaultTextStyleOption\n\n@docs encodeTextStyleOption\n\n\n## Style Attribute Values\n\n@docs Orientation\n\n@docs encodeOrientationValue\n\n@docs HorizontalAlignment\n\n@docs encodeHorizontalAlignmentValue\n\n@docs VerticalAlignment\n\n@docs encodeVerticalAlignmentValue\n\n@docs Spacing\n\n@docs encodeSpacingValue\n\n@docs SelectedMode\n\n@docs encodeSelectedModeValue\n\n@docs AnimationEasing\n\n@docs encodeAnimationEasingValue\n\n@docs LineStyleType\n\n@docs encodeLineStyleTypeValue\n\n",
        "unions": [
            {
                "name": "AnimationEasing",
                "comment": " describe the animation easing\n",
                "args": [],
                "cases": [
                    [
                        "CubicOutAnimationEasing",
                        []
                    ]
                ]
            },
            {
                "name": "HorizontalAlignment",
                "comment": " describe horizontal alignment: left, center, right\n",
                "args": [],
                "cases": [
                    [
                        "Left",
                        []
                    ],
                    [
                        "Center",
                        []
                    ],
                    [
                        "Right",
                        []
                    ]
                ]
            },
            {
                "name": "LegendAlignment",
                "comment": " legend alignment\n[value](https://ecomfe.github.io/echarts-doc/public/en/option.html#legend.align)\n",
                "args": [],
                "cases": [
                    [
                        "AutoLegendAlignment",
                        []
                    ],
                    [
                        "LeftLegendAlignment",
                        []
                    ],
                    [
                        "RightLegendAlignment",
                        []
                    ]
                ]
            },
            {
                "name": "LineStyleType",
                "comment": " describe the line style type\n",
                "args": [],
                "cases": [
                    [
                        "SolidLine",
                        []
                    ],
                    [
                        "DashedLine",
                        []
                    ],
                    [
                        "DottedLine",
                        []
                    ]
                ]
            },
            {
                "name": "Orientation",
                "comment": " describe the orientation attribute\n",
                "args": [],
                "cases": [
                    [
                        "Horizontal",
                        []
                    ],
                    [
                        "Vertical",
                        []
                    ]
                ]
            },
            {
                "name": "SelectedMode",
                "comment": " describe the item selected mode\n",
                "args": [],
                "cases": [
                    [
                        "TrueSelectedMode",
                        []
                    ],
                    [
                        "FalseSelectedMode",
                        []
                    ],
                    [
                        "SingleSelectedMode",
                        []
                    ],
                    [
                        "MultipleSelectedMode",
                        []
                    ]
                ]
            },
            {
                "name": "Spacing",
                "comment": " describe spacing setting\n",
                "args": [],
                "cases": [
                    [
                        "Spacing",
                        [
                            "Float"
                        ]
                    ],
                    [
                        "VHSpacing",
                        [
                            "Float",
                            "Float"
                        ]
                    ],
                    [
                        "FineSpacing",
                        [
                            "Float",
                            "Float",
                            "Float",
                            "Float"
                        ]
                    ]
                ]
            },
            {
                "name": "TooltipAxisPointerType",
                "comment": " tooltip axis pointer type\n[value](https://ecomfe.github.io/echarts-doc/public/en/option.html#tooltip.axisPointer.type)\n",
                "args": [],
                "cases": [
                    [
                        "LineTooltipAxisPointer",
                        []
                    ],
                    [
                        "CrossTooltipAxisPointer",
                        []
                    ],
                    [
                        "ShadowTooltipAxisPointer",
                        []
                    ]
                ]
            },
            {
                "name": "TooltipPosition",
                "comment": " tooltip position\n[value](https://ecomfe.github.io/echarts-doc/public/en/option.html#tooltip.position)\n",
                "args": [],
                "cases": [
                    [
                        "AbsoluteTooltipPosiotion",
                        [
                            "Int",
                            "Int"
                        ]
                    ],
                    [
                        "RelativeTooltipPosition",
                        [
                            "String",
                            "String"
                        ]
                    ]
                ]
            },
            {
                "name": "TooltipTrigger",
                "comment": " tooltip trigger\n[value](https://ecomfe.github.io/echarts-doc/public/en/option.html#tooltip.trigger)\n",
                "args": [],
                "cases": [
                    [
                        "TriggerByItem",
                        []
                    ],
                    [
                        "TriggerByAxis",
                        []
                    ]
                ]
            },
            {
                "name": "TooltipTriggerOn",
                "comment": " tooltip triggerOn\n[value](https://ecomfe.github.io/echarts-doc/public/en/option.html#tooltip.triggerOn)\n",
                "args": [],
                "cases": [
                    [
                        "MouseMoveTriggerTooltip",
                        []
                    ],
                    [
                        "ClickTriggerTooltip",
                        []
                    ],
                    [
                        "NoneTriggerTooltip",
                        []
                    ]
                ]
            },
            {
                "name": "VerticalAlignment",
                "comment": " describe vertical alignment: top, middle, bottom\n",
                "args": [],
                "cases": [
                    [
                        "Top",
                        []
                    ],
                    [
                        "Middle",
                        []
                    ],
                    [
                        "Bottom",
                        []
                    ]
                ]
            }
        ],
        "aliases": [
            {
                "name": "CrossStyleOption",
                "comment": " describe the cross style option\n",
                "args": [],
                "type": "{ color : Maybe String, width : Maybe Int, type_ : Maybe LineStyleType, shadowBlur : Maybe Int, shadowColor : Maybe String, shadowOffsetX : Maybe Int, shadowOffsetY : Maybe Int, opacity : Maybe Float, textStyle : Maybe TextStyleOption }"
            },
            {
                "name": "LegendOption",
                "comment": " describe the legend\n[option](https://ecomfe.github.io/echarts-doc/public/en/option.html#legend)\n",
                "args": [],
                "type": "{ show : Maybe Bool, zlevel : Maybe Int, z : Maybe Int, left : Maybe String, top : Maybe String, right : Maybe String, bottom : Maybe String, width : Maybe String, height : Maybe String, orient : Maybe Orientation, align : Maybe LegendAlignment, padding : Maybe Spacing, itemGap : Maybe Int, itemWidth : Maybe Int, itemHeight : Maybe Int, formatter : Maybe String, selectedMode : Maybe SelectedMode, inactiveColor : Maybe String, selected : Maybe (List ( String, Bool )), textStyle : Maybe TextStyleOption, tooltip : Maybe TooltipOption, data : Maybe (List { name : String, icon : String, textStyle : TextStyleOption }), backgroundColor : Maybe String, borderColor : Maybe String, borderWidth : Maybe Int, shadowBlur : Maybe Int, shadowColor : Maybe String, shadowOffsetX : Maybe Int, shadowOffsetY : Maybe Int }"
            },
            {
                "name": "LineStyleOption",
                "comment": " describe the line style option\n",
                "args": [],
                "type": "{ color : Maybe String, width : Maybe Int, type_ : Maybe LineStyleType, shadowBlur : Maybe Int, shadowColor : Maybe String, shadowOffsetX : Maybe Int, shadowOffsetY : Maybe Int, opacity : Maybe Float }"
            },
            {
                "name": "ShadowStyleOption",
                "comment": " describe the shadow style option\n",
                "args": [],
                "type": "{ color : Maybe String, shadowBlur : Maybe Int, shadowColor : Maybe String, shadowOffsetX : Maybe Int, shadowOffsetY : Maybe Int, opacity : Maybe Float }"
            },
            {
                "name": "TextStyleOption",
                "comment": " describe the text style option\n",
                "args": [],
                "type": "{ color : Maybe String, fontStyle : Maybe String, fontWeight : Maybe String, fontFamily : Maybe String, fontSize : Maybe Float, lineHeight : Maybe Float, rich : Maybe RichOption }"
            },
            {
                "name": "TitleOption",
                "comment": " describe the chart title\n[option](https://ecomfe.github.io/echarts-doc/public/en/option.html#title)\n",
                "args": [],
                "type": "{ show : Maybe Bool, text : Maybe String, link : Maybe String, target : Maybe String, textStyle : Maybe TextStyleOption, textAlign : Maybe HorizontalAlignment, textBaseline : Maybe VerticalAlignment, subtext : Maybe String, sublink : Maybe String, subtarget : Maybe String, subtextStyle : Maybe TextStyleOption, padding : Maybe Spacing, itemGap : Maybe Float, zlevel : Maybe Int, z : Maybe Int, left : Maybe String, top : Maybe String, right : Maybe String, bottom : Maybe String, backgroundColor : Maybe String, borderColor : Maybe String, borderWidth : Maybe String, shadowBlur : Maybe Int, shadowColor : Maybe String, shadowOffsetX : Maybe Int, shadowOffsetY : Maybe Int }"
            },
            {
                "name": "TooltipAxisPointerOption",
                "comment": " describe the tooltip axis pointer\n[option](https://ecomfe.github.io/echarts-doc/public/en/option.html#tooltip.axisPointer)\n",
                "args": [],
                "type": "{ type_ : Maybe TooltipAxisPointerType, axis : Maybe String, animation : Maybe Bool, animationThreshold : Maybe Int, animationDuration : Maybe Int, animationEasing : Maybe AnimationEasing, animationDelay : Maybe Int, animationDurationUpdate : Maybe Int, animationEasingUpdate : Maybe AnimationEasing, animationDelayUpdate : Maybe Int, lineStyle : Maybe LineStyleOption, crossStyle : Maybe CrossStyleOption, shadowStyle : Maybe ShadowStyleOption }"
            },
            {
                "name": "TooltipOption",
                "comment": " describe the tooltip\n[option](https://ecomfe.github.io/echarts-doc/public/en/option.html#tooltip)\n",
                "args": [],
                "type": "{ show : Maybe Bool, showContent : Maybe Bool, trigger : Maybe TooltipTrigger, triggerOn : Maybe TooltipTriggerOn, alwaysShowContent : Maybe Bool, showDelay : Maybe Int, hideDelay : Maybe Int, enterable : Maybe Bool, position : Maybe TooltipPosition, confine : Maybe Bool, transitionDuration : Maybe Float, formatter : Maybe String, backgroundColor : Maybe String, borderColor : Maybe String, borderWidth : Maybe String, padding : Maybe Spacing, textStyle : Maybe TextStyleOption, extraCssText : Maybe String, axisPointer : Maybe TooltipAxisPointerOption, data : Maybe (List { date : String, value : Float, name : String }) }"
            },
            {
                "name": "XAxisOption",
                "comment": " describe the xAxis\n[option](https://ecomfe.github.io/echarts-doc/public/en/option.html#xAxis)\n",
                "args": [],
                "type": "{ show : Maybe Bool, type_ : Maybe String, data : Maybe (List { value : String, textStyle : TextStyleOption }) }"
            },
            {
                "name": "YAxisOption",
                "comment": " describe the yAxis\n[option](https://ecomfe.github.io/echarts-doc/public/en/option.html#yAxis)\n",
                "args": [],
                "type": "{ show : Maybe Bool, type_ : Maybe String, data : Maybe (List { value : String, textStyle : TextStyleOption }) }"
            }
        ],
        "values": [
            {
                "name": "defaultCrossStyleOption",
                "comment": " create a cross style option of for default value\n\nThis function creates an All-Nothing TitleOption.\n[ECharts](https://ecomfe.github.io/echarts-doc/public/en/option.html)\napplies the default value when the option attribute is not specified.\n\n",
                "type": "CrossStyleOption"
            },
            {
                "name": "defaultLegendOption",
                "comment": " create a legend option of for default value\n\nThis function creates an All-Nothing TitleOption.\n[ECharts](https://ecomfe.github.io/echarts-doc/public/en/option.html)\napplies the default value when the option attribute is not specified.\n\n",
                "type": "LegendOption"
            },
            {
                "name": "defaultLineStyleOption",
                "comment": " create a line style option of for default value\n\nThis function creates an All-Nothing TitleOption.\n[ECharts](https://ecomfe.github.io/echarts-doc/public/en/option.html)\napplies the default value when the option attribute is not specified.\n\n",
                "type": "LineStyleOption"
            },
            {
                "name": "defaultShadowStyleOption",
                "comment": " create a shadow style option of for default value\n\nThis function creates an All-Nothing TitleOption.\n[ECharts](https://ecomfe.github.io/echarts-doc/public/en/option.html)\napplies the default value when the option attribute is not specified.\n\n",
                "type": "ShadowStyleOption"
            },
            {
                "name": "defaultTextStyleOption",
                "comment": " create a text style option of for default value\n\nThis function creates an All-Nothing TitleOption.\n[ECharts](https://ecomfe.github.io/echarts-doc/public/en/option.html)\napplies the default value when the option attribute is not specified.\n\n",
                "type": "TextStyleOption"
            },
            {
                "name": "defaultTitleOption",
                "comment": " create a title option of for default value\n\nThis function creates an All-Nothing TitleOption.\n[ECharts](https://ecomfe.github.io/echarts-doc/public/en/option.html)\napplies the default value when the option attribute is not specified.\n\n",
                "type": "TitleOption"
            },
            {
                "name": "defaultTooltipAxisPointerOption",
                "comment": " create a tooltip axis pointer option of for default value\n\nThis function creates an All-Nothing TitleOption.\n[ECharts](https://ecomfe.github.io/echarts-doc/public/en/option.html)\napplies the default value when the option attribute is not specified.\n\n",
                "type": "TooltipAxisPointerOption"
            },
            {
                "name": "defaultTooltipOption",
                "comment": " create a tooltip option of for default value\n\nThis function creates an All-Nothing TitleOption.\n[ECharts](https://ecomfe.github.io/echarts-doc/public/en/option.html)\napplies the default value when the option attribute is not specified.\n\n",
                "type": "TooltipOption"
            },
            {
                "name": "defaultXAxisOption",
                "comment": " create a xAxis option of for default value\n\nThis function creates an All-Nothing XAxisOption.\n[ECharts](https://ecomfe.github.io/echarts-doc/public/en/option.html)\napplies the default value when the option attribute is not specified.\n\n",
                "type": "XAxisOption"
            },
            {
                "name": "defaultYAxisOption",
                "comment": " create a yAxis option of for default value\n\nThis function creates an All-Nothing YAxisOption.\n[ECharts](https://ecomfe.github.io/echarts-doc/public/en/option.html)\napplies the default value when the option attribute is not specified.\n\n",
                "type": "YAxisOption"
            },
            {
                "name": "encodeAnimationEasingValue",
                "comment": " encode the animation easing value to Json.Encode.Value\n",
                "type": "AnimationEasing -> Value"
            },
            {
                "name": "encodeCrossStyleOption",
                "comment": " encode the cross style option to Json.Encode.Value\n",
                "type": "CrossStyleOption -> Value"
            },
            {
                "name": "encodeHorizontalAlignmentValue",
                "comment": " encode the horizontal alignment value to Json.Encode.Value\n",
                "type": "HorizontalAlignment -> Value"
            },
            {
                "name": "encodeLegendOption",
                "comment": " encode the legend option to Json.Encode.Value\n",
                "type": "LegendOption -> Value"
            },
            {
                "name": "encodeLineStyleOption",
                "comment": " encode the line style option to Json.Encode.Value\n",
                "type": "LineStyleOption -> Value"
            },
            {
                "name": "encodeLineStyleTypeValue",
                "comment": " encode the line style type value to Json.Encode.Value\n",
                "type": "LineStyleType -> Value"
            },
            {
                "name": "encodeOrientationValue",
                "comment": " encode the orientation value to Json.Encode.Value\n",
                "type": "Orientation -> Value"
            },
            {
                "name": "encodeSelectedModeValue",
                "comment": " encode the selected mode value to Json.Encode.Value\n",
                "type": "SelectedMode -> Value"
            },
            {
                "name": "encodeShadowStyleOption",
                "comment": " encode the shadow option to Json.Encode.Value\n",
                "type": "ShadowStyleOption -> Value"
            },
            {
                "name": "encodeSpacingValue",
                "comment": " encode the spacing value to Json.Encode.Value\n",
                "type": "Spacing -> Value"
            },
            {
                "name": "encodeTextStyleOption",
                "comment": " encode the text style option to Json.Encode.Value\n",
                "type": "TextStyleOption -> Value"
            },
            {
                "name": "encodeTitleOption",
                "comment": " encode the title option to Json.Encode.Value\n",
                "type": "TitleOption -> Value"
            },
            {
                "name": "encodeTooltipOption",
                "comment": " encode the tooltip option to Json.Encode.Value\n",
                "type": "TooltipOption -> Value"
            },
            {
                "name": "encodeVerticalAlignmentValue",
                "comment": " encode the vertical alignment value to Json.Encode.Value\n",
                "type": "VerticalAlignment -> Value"
            },
            {
                "name": "encodeXAxisOption",
                "comment": " encode the xAxis option to Json.Encode.Value\n",
                "type": "XAxisOption -> Value"
            },
            {
                "name": "encodeYAxisOption",
                "comment": " encode the yAxis option to Json.Encode.Value\n",
                "type": "YAxisOption -> Value"
            }
        ],
        "binops": []
    }
]