[{"name":"Theme","comment":"\n\n\n# Creating Themes\n\n@docs new, ThemeData, ThemeFonts, ThemeColorSet, Theme\n\n\n# Built-in Themes\n\n@docs lightTheme, darkTheme\n\n\n# Extending Themes\n\n@docs fromTheme, toTheme, toThemeData\n@docs withFonts, withFontHeading, withFontText, withFontCode\n@docs withBase, withBaseForeground, withBaseBackground, withBaseAux\n@docs withNeutral, withNeutralForeground, withNeutralBackground, withNeutralAux\n@docs withPrimary, withPrimaryForeground, withPrimaryBackground, withPrimaryAux\n@docs withSecondary, withSecondaryForeground, withSecondaryBackground, withSecondaryAux\n@docs withSuccess, withSuccessForeground, withSuccessBackground, withSuccessAux\n@docs withWarning, withWarningForeground, withWarningBackground, withWarningAux\n@docs withDanger, withDangerForeground, withDangerBackground, withDangerAux\n@docs withThemeData, withExtraValues\n\n\n# Theme Providers\n\n@docs globalProvider, provider\n\n\n## Dark Mode\n\n@docs globalProviderWithDarkMode, providerWithDarkMode, classStrategy, systemStrategy, DarkModeStrategy\n\n\n## Optimized Providers\n\n@docs optimizedProvider, optimizedProviderWithDarkMode, ThemeProvider\n\n\n# Theme Sampler\n\n@docs sample\n\n\n# Theme Html Helpers\n\nElm doesn't always play nice with CSS variables. These functions are a workaround for that issue. **Please note that you can only use one of these functions per element (or Html.Attributes.style).**\n\n@docs styles, stylesIf\n\n\n# Theme Values\n\n@docs fontHeading, fontText, fontCode\n@docs baseForeground, baseBackground, baseAux, baseForegroundWithAlpha, baseBackgroundWithAlpha, baseAuxWithAlpha\n@docs neutralForeground, neutralBackground, neutralAux, neutralForegroundWithAlpha, neutralBackgroundWithAlpha, neutralAuxWithAlpha\n@docs primaryForeground, primaryBackground, primaryAux, primaryForegroundWithAlpha, primaryBackgroundWithAlpha, primaryAuxWithAlpha\n@docs secondaryForeground, secondaryBackground, secondaryAux, secondaryForegroundWithAlpha, secondaryBackgroundWithAlpha, secondaryAuxWithAlpha\n@docs successForeground, successBackground, successAux, successForegroundWithAlpha, successBackgroundWithAlpha, successAuxWithAlpha\n@docs warningForeground, warningBackground, warningAux, warningForegroundWithAlpha, warningBackgroundWithAlpha, warningAuxWithAlpha\n@docs dangerForeground, dangerBackground, dangerAux, dangerForegroundWithAlpha, dangerBackgroundWithAlpha, dangerAuxWithAlpha\n\n\n# Theme Value Sets\n\n@docs ThemeColorSetValues, base, neutral, primary, secondary, success, warning, danger\n\n","unions":[{"name":"DarkModeStrategy","comment":" ","args":[],"cases":[]},{"name":"Theme","comment":" ","args":[],"cases":[]}],"aliases":[{"name":"ThemeColorSet","comment":" ","args":[],"type":"{ background : Color.Color, foreground : Color.Color, aux : Color.Color }"},{"name":"ThemeColorSetValues","comment":" ","args":[],"type":"{ foreground : String.String, foregroundWithAlpha : Basics.Float -> String.String, background : String.String, backgroundWithAlpha : Basics.Float -> String.String, aux : String.String, auxWithAlpha : Basics.Float -> String.String }"},{"name":"ThemeData","comment":" ","args":[],"type":"{ fonts : Theme.ThemeFonts, base : Theme.ThemeColorSet, neutral : Theme.ThemeColorSet, primary : Theme.ThemeColorSet, secondary : Theme.ThemeColorSet, success : Theme.ThemeColorSet, warning : Theme.ThemeColorSet, danger : Theme.ThemeColorSet }"},{"name":"ThemeFonts","comment":" ","args":[],"type":"{ heading : String.String, text : String.String, code : String.String }"},{"name":"ThemeProvider","comment":" ","args":["msg"],"type":"{ styles : Html.Html msg, provider : List.List (Html.Attribute msg) -> List.List (Html.Html msg) -> Html.Html msg }"}],"values":[{"name":"base","comment":" ","type":"Theme.ThemeColorSetValues"},{"name":"baseAux","comment":" ","type":"String.String"},{"name":"baseAuxWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"baseBackground","comment":" ","type":"String.String"},{"name":"baseBackgroundWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"baseForeground","comment":" ","type":"String.String"},{"name":"baseForegroundWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"classStrategy","comment":" Uses the presence of a given CSS class in the element scope to decide between light and dark mode.\n","type":"String.String -> Theme.DarkModeStrategy"},{"name":"danger","comment":" ","type":"Theme.ThemeColorSetValues"},{"name":"dangerAux","comment":" ","type":"String.String"},{"name":"dangerAuxWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"dangerBackground","comment":" ","type":"String.String"},{"name":"dangerBackgroundWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"dangerForeground","comment":" ","type":"String.String"},{"name":"dangerForegroundWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"darkTheme","comment":" ","type":"Theme.Theme"},{"name":"fontCode","comment":" ","type":"String.String"},{"name":"fontHeading","comment":" ","type":"String.String"},{"name":"fontText","comment":" ","type":"String.String"},{"name":"fromTheme","comment":" ","type":"Theme.Theme -> Theme.ThemeBuilder"},{"name":"globalProvider","comment":" Used to provide a Theme globally. It will be applied to your `body` element and it will be available for use anywhere in your application.\n\n    main : Html msg\n    main =\n        div []\n            [ Theme.globalProvider lightTheme\n            , p [ style \"color\" Theme.baseForeground ]\n                [ text \"I'm colored using the `base foreground` value!\" ]\n            ]\n\n**Note**: You are still able to overwrite this Theme locally.\n\n","type":"Theme.Theme -> Html.Html msg"},{"name":"globalProviderWithDarkMode","comment":" Used to provide a Theme globally with a dark mode alternative. Themes will automatically switch based on the strategy condition.\n\n    main : Html msg\n    main =\n        div []\n            [ Theme.globalProviderWithDarkMode\n                { light = lightTheme\n                , dark = darkTheme\n                , strategy = Theme.systemStrategy\n                }\n            , p [ style \"color\" Theme.baseForeground ]\n                [ text \"I'm colored using the `base foreground` value!\" ]\n            ]\n\n**Note**: You are still able to overwrite this Theme locally.\n\n","type":"{ light : Theme.Theme, dark : Theme.Theme, strategy : Theme.DarkModeStrategy } -> Html.Html msg"},{"name":"lightTheme","comment":" ","type":"Theme.Theme"},{"name":"neutral","comment":" ","type":"Theme.ThemeColorSetValues"},{"name":"neutralAux","comment":" ","type":"String.String"},{"name":"neutralAuxWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"neutralBackground","comment":" ","type":"String.String"},{"name":"neutralBackgroundWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"neutralForeground","comment":" ","type":"String.String"},{"name":"neutralForegroundWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"new","comment":" ","type":"Theme.ThemeData -> Theme.Theme"},{"name":"optimizedProvider","comment":"\n\n    myTheme =\n        optimizedProvider theme\n\n    body []\n        [ myTheme.styles\n        , myTheme.provider []\n            [ ... ]\n        ]\n\n","type":"Theme.Theme -> Theme.ThemeProvider msg"},{"name":"optimizedProviderWithDarkMode","comment":" ","type":"{ light : Theme.Theme, dark : Theme.Theme, strategy : Theme.DarkModeStrategy } -> Theme.ThemeProvider msg"},{"name":"primary","comment":" ","type":"Theme.ThemeColorSetValues"},{"name":"primaryAux","comment":" ","type":"String.String"},{"name":"primaryAuxWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"primaryBackground","comment":" ","type":"String.String"},{"name":"primaryBackgroundWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"primaryForeground","comment":" ","type":"String.String"},{"name":"primaryForegroundWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"provider","comment":" Used to propagate themes to an specific scope.\n\n    main : Html msg\n    main =\n        div []\n            [ Theme.globalProvider defaultTheme\n\n            -- section using the default theme\n            , section [] [ .. ]\n\n            -- section using the orange theme\n            , Theme.provider orangeTheme [] [ .. ]\n            ]\n\n","type":"Theme.Theme -> List.List (Html.Attribute msg) -> List.List (Html.Html msg) -> Html.Html msg"},{"name":"providerWithDarkMode","comment":" Used to propagate themes to an specific scope with a dark mode alternative. Themes will automatically switch based on the strategy condition.\n\n    main : Html msg\n    main =\n        div []\n            [ Theme.globalProviderWithDarkMode\n                { light = lightTheme\n                , dark = darkTheme\n                , strategy = Theme.systemStrategy\n                }\n\n            -- section using the default light or dark theme\n            , section [] [ .. ]\n\n            -- section using the orange light and dark themes\n            , Theme.providerWithDarkMode\n                { light = lightOrange\n                , dark = darkOrange\n                , strategy = Theme.systemStrategy\n                }\n                [] [ .. ]\n            ]\n\n","type":"{ light : Theme.Theme, dark : Theme.Theme, strategy : Theme.DarkModeStrategy } -> List.List (Html.Attribute msg) -> List.List (Html.Html msg) -> Html.Html msg"},{"name":"sample","comment":" ","type":"Html.Html msg"},{"name":"secondary","comment":" ","type":"Theme.ThemeColorSetValues"},{"name":"secondaryAux","comment":" ","type":"String.String"},{"name":"secondaryAuxWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"secondaryBackground","comment":" ","type":"String.String"},{"name":"secondaryBackgroundWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"secondaryForeground","comment":" ","type":"String.String"},{"name":"secondaryForegroundWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"styles","comment":"\n\n    div\n        [ styles\n            [ ( \"color\", Theme.baseForeground )\n            , ( \"background\", Theme.baseBackground )\n            ]\n        ]\n        []\n\n","type":"List.List ( String.String, String.String ) -> Html.Attribute msg"},{"name":"stylesIf","comment":"\n\n    div\n        [ stylesIf\n            [ ( \"background\", Theme.baseBackground, True )\n            , ( \"color\", Theme.primaryForeground, isPrimary )\n            , ( \"color\", Theme.baseForeground, not isPrimary )\n            ]\n        ]\n        []\n\n","type":"List.List ( String.String, String.String, Basics.Bool ) -> Html.Attribute msg"},{"name":"success","comment":" ","type":"Theme.ThemeColorSetValues"},{"name":"successAux","comment":" ","type":"String.String"},{"name":"successAuxWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"successBackground","comment":" ","type":"String.String"},{"name":"successBackgroundWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"successForeground","comment":" ","type":"String.String"},{"name":"successForegroundWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"systemStrategy","comment":" Uses the user system settings to decide between light and dark mode.\n","type":"Theme.DarkModeStrategy"},{"name":"toTheme","comment":" ","type":"Theme.ThemeBuilder -> Theme.Theme"},{"name":"toThemeData","comment":" ","type":"Theme.Theme -> Theme.ThemeData"},{"name":"warning","comment":" ","type":"Theme.ThemeColorSetValues"},{"name":"warningAux","comment":" ","type":"String.String"},{"name":"warningAuxWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"warningBackground","comment":" ","type":"String.String"},{"name":"warningBackgroundWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"warningForeground","comment":" ","type":"String.String"},{"name":"warningForegroundWithAlpha","comment":" ","type":"Basics.Float -> String.String"},{"name":"withBase","comment":" ","type":"Theme.ThemeColorSet -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withBaseAux","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withBaseBackground","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withBaseForeground","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withDanger","comment":" ","type":"Theme.ThemeColorSet -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withDangerAux","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withDangerBackground","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withDangerForeground","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withExtraValues","comment":" ","type":"List.List ( String.String, String.String ) -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withFontCode","comment":" ","type":"String.String -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withFontHeading","comment":" ","type":"String.String -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withFontText","comment":" ","type":"String.String -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withFonts","comment":" ","type":"Theme.ThemeFonts -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withNeutral","comment":" ","type":"Theme.ThemeColorSet -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withNeutralAux","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withNeutralBackground","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withNeutralForeground","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withPrimary","comment":" ","type":"Theme.ThemeColorSet -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withPrimaryAux","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withPrimaryBackground","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withPrimaryForeground","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withSecondary","comment":" ","type":"Theme.ThemeColorSet -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withSecondaryAux","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withSecondaryBackground","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withSecondaryForeground","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withSuccess","comment":" ","type":"Theme.ThemeColorSet -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withSuccessAux","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withSuccessBackground","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withSuccessForeground","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withThemeData","comment":" ","type":"Theme.ThemeData -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withWarning","comment":" ","type":"Theme.ThemeColorSet -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withWarningAux","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withWarningBackground","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"},{"name":"withWarningForeground","comment":" ","type":"Color.Color -> Theme.ThemeBuilder -> Theme.ThemeBuilder"}],"binops":[]}]