{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.QuickSight.Types.UIColorPalette
-- Copyright   : (c) 2013-2021 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.QuickSight.Types.UIColorPalette where

import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude

-- | The theme colors that apply to UI and to charts, excluding data colors.
-- The colors description is a hexadecimal color code that consists of six
-- alphanumerical characters, prefixed with @#@, for example #37BFF5. For
-- more information, see
-- <https://docs.aws.amazon.com/quicksight/latest/user/themes-in-quicksight.html Using Themes in Amazon QuickSight>
-- in the /Amazon QuickSight User Guide./
--
-- /See:/ 'newUIColorPalette' smart constructor.
data UIColorPalette = UIColorPalette'
  { -- | The background color that applies to the sheet background and sheet
    -- controls.
    UIColorPalette -> Maybe Text
secondaryBackground :: Prelude.Maybe Prelude.Text,
    -- | The foreground color that applies to any text or other elements that
    -- appear over the success color.
    UIColorPalette -> Maybe Text
successForeground :: Prelude.Maybe Prelude.Text,
    -- | The color that applies to the names of fields that are identified as
    -- dimensions.
    UIColorPalette -> Maybe Text
dimension :: Prelude.Maybe Prelude.Text,
    -- | The foreground color that applies to any text or other elements that
    -- appear over the dimension color.
    UIColorPalette -> Maybe Text
dimensionForeground :: Prelude.Maybe Prelude.Text,
    -- | The color that applies to success messages, for example the check mark
    -- for a successful download.
    UIColorPalette -> Maybe Text
success :: Prelude.Maybe Prelude.Text,
    -- | This color is that applies to selected states and buttons.
    UIColorPalette -> Maybe Text
accent :: Prelude.Maybe Prelude.Text,
    -- | The foreground color that applies to any sheet title, sheet control
    -- text, or UI that appears over the secondary background.
    UIColorPalette -> Maybe Text
secondaryForeground :: Prelude.Maybe Prelude.Text,
    -- | The color of text and other foreground elements that appear over the
    -- primary background regions, such as grid lines, borders, table banding,
    -- icons, and so on.
    UIColorPalette -> Maybe Text
primaryForeground :: Prelude.Maybe Prelude.Text,
    -- | This color that applies to warning and informational messages.
    UIColorPalette -> Maybe Text
warning :: Prelude.Maybe Prelude.Text,
    -- | The background color that applies to visuals and other high emphasis UI.
    UIColorPalette -> Maybe Text
primaryBackground :: Prelude.Maybe Prelude.Text,
    -- | The foreground color that applies to any text or other elements that
    -- appear over the accent color.
    UIColorPalette -> Maybe Text
accentForeground :: Prelude.Maybe Prelude.Text,
    -- | The color that applies to the names of fields that are identified as
    -- measures.
    UIColorPalette -> Maybe Text
measure :: Prelude.Maybe Prelude.Text,
    -- | The foreground color that applies to any text or other elements that
    -- appear over the error color.
    UIColorPalette -> Maybe Text
dangerForeground :: Prelude.Maybe Prelude.Text,
    -- | The foreground color that applies to any text or other elements that
    -- appear over the measure color.
    UIColorPalette -> Maybe Text
measureForeground :: Prelude.Maybe Prelude.Text,
    -- | The color that applies to error messages.
    UIColorPalette -> Maybe Text
danger :: Prelude.Maybe Prelude.Text,
    -- | The foreground color that applies to any text or other elements that
    -- appear over the warning color.
    UIColorPalette -> Maybe Text
warningForeground :: Prelude.Maybe Prelude.Text
  }
  deriving (UIColorPalette -> UIColorPalette -> Bool
(UIColorPalette -> UIColorPalette -> Bool)
-> (UIColorPalette -> UIColorPalette -> Bool) -> Eq UIColorPalette
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UIColorPalette -> UIColorPalette -> Bool
$c/= :: UIColorPalette -> UIColorPalette -> Bool
== :: UIColorPalette -> UIColorPalette -> Bool
$c== :: UIColorPalette -> UIColorPalette -> Bool
Prelude.Eq, ReadPrec [UIColorPalette]
ReadPrec UIColorPalette
Int -> ReadS UIColorPalette
ReadS [UIColorPalette]
(Int -> ReadS UIColorPalette)
-> ReadS [UIColorPalette]
-> ReadPrec UIColorPalette
-> ReadPrec [UIColorPalette]
-> Read UIColorPalette
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UIColorPalette]
$creadListPrec :: ReadPrec [UIColorPalette]
readPrec :: ReadPrec UIColorPalette
$creadPrec :: ReadPrec UIColorPalette
readList :: ReadS [UIColorPalette]
$creadList :: ReadS [UIColorPalette]
readsPrec :: Int -> ReadS UIColorPalette
$creadsPrec :: Int -> ReadS UIColorPalette
Prelude.Read, Int -> UIColorPalette -> ShowS
[UIColorPalette] -> ShowS
UIColorPalette -> String
(Int -> UIColorPalette -> ShowS)
-> (UIColorPalette -> String)
-> ([UIColorPalette] -> ShowS)
-> Show UIColorPalette
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UIColorPalette] -> ShowS
$cshowList :: [UIColorPalette] -> ShowS
show :: UIColorPalette -> String
$cshow :: UIColorPalette -> String
showsPrec :: Int -> UIColorPalette -> ShowS
$cshowsPrec :: Int -> UIColorPalette -> ShowS
Prelude.Show, (forall x. UIColorPalette -> Rep UIColorPalette x)
-> (forall x. Rep UIColorPalette x -> UIColorPalette)
-> Generic UIColorPalette
forall x. Rep UIColorPalette x -> UIColorPalette
forall x. UIColorPalette -> Rep UIColorPalette x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep UIColorPalette x -> UIColorPalette
$cfrom :: forall x. UIColorPalette -> Rep UIColorPalette x
Prelude.Generic)

-- |
-- Create a value of 'UIColorPalette' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'secondaryBackground', 'uIColorPalette_secondaryBackground' - The background color that applies to the sheet background and sheet
-- controls.
--
-- 'successForeground', 'uIColorPalette_successForeground' - The foreground color that applies to any text or other elements that
-- appear over the success color.
--
-- 'dimension', 'uIColorPalette_dimension' - The color that applies to the names of fields that are identified as
-- dimensions.
--
-- 'dimensionForeground', 'uIColorPalette_dimensionForeground' - The foreground color that applies to any text or other elements that
-- appear over the dimension color.
--
-- 'success', 'uIColorPalette_success' - The color that applies to success messages, for example the check mark
-- for a successful download.
--
-- 'accent', 'uIColorPalette_accent' - This color is that applies to selected states and buttons.
--
-- 'secondaryForeground', 'uIColorPalette_secondaryForeground' - The foreground color that applies to any sheet title, sheet control
-- text, or UI that appears over the secondary background.
--
-- 'primaryForeground', 'uIColorPalette_primaryForeground' - The color of text and other foreground elements that appear over the
-- primary background regions, such as grid lines, borders, table banding,
-- icons, and so on.
--
-- 'warning', 'uIColorPalette_warning' - This color that applies to warning and informational messages.
--
-- 'primaryBackground', 'uIColorPalette_primaryBackground' - The background color that applies to visuals and other high emphasis UI.
--
-- 'accentForeground', 'uIColorPalette_accentForeground' - The foreground color that applies to any text or other elements that
-- appear over the accent color.
--
-- 'measure', 'uIColorPalette_measure' - The color that applies to the names of fields that are identified as
-- measures.
--
-- 'dangerForeground', 'uIColorPalette_dangerForeground' - The foreground color that applies to any text or other elements that
-- appear over the error color.
--
-- 'measureForeground', 'uIColorPalette_measureForeground' - The foreground color that applies to any text or other elements that
-- appear over the measure color.
--
-- 'danger', 'uIColorPalette_danger' - The color that applies to error messages.
--
-- 'warningForeground', 'uIColorPalette_warningForeground' - The foreground color that applies to any text or other elements that
-- appear over the warning color.
newUIColorPalette ::
  UIColorPalette
newUIColorPalette :: UIColorPalette
newUIColorPalette =
  UIColorPalette' :: Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> UIColorPalette
UIColorPalette'
    { $sel:secondaryBackground:UIColorPalette' :: Maybe Text
secondaryBackground =
        Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:successForeground:UIColorPalette' :: Maybe Text
successForeground = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:dimension:UIColorPalette' :: Maybe Text
dimension = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:dimensionForeground:UIColorPalette' :: Maybe Text
dimensionForeground = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:success:UIColorPalette' :: Maybe Text
success = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:accent:UIColorPalette' :: Maybe Text
accent = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:secondaryForeground:UIColorPalette' :: Maybe Text
secondaryForeground = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:primaryForeground:UIColorPalette' :: Maybe Text
primaryForeground = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:warning:UIColorPalette' :: Maybe Text
warning = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:primaryBackground:UIColorPalette' :: Maybe Text
primaryBackground = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:accentForeground:UIColorPalette' :: Maybe Text
accentForeground = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:measure:UIColorPalette' :: Maybe Text
measure = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:dangerForeground:UIColorPalette' :: Maybe Text
dangerForeground = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:measureForeground:UIColorPalette' :: Maybe Text
measureForeground = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:danger:UIColorPalette' :: Maybe Text
danger = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:warningForeground:UIColorPalette' :: Maybe Text
warningForeground = Maybe Text
forall a. Maybe a
Prelude.Nothing
    }

-- | The background color that applies to the sheet background and sheet
-- controls.
uIColorPalette_secondaryBackground :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_secondaryBackground :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_secondaryBackground = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
secondaryBackground :: Maybe Text
$sel:secondaryBackground:UIColorPalette' :: UIColorPalette -> Maybe Text
secondaryBackground} -> Maybe Text
secondaryBackground) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:secondaryBackground:UIColorPalette' :: Maybe Text
secondaryBackground = Maybe Text
a} :: UIColorPalette)

-- | The foreground color that applies to any text or other elements that
-- appear over the success color.
uIColorPalette_successForeground :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_successForeground :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_successForeground = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
successForeground :: Maybe Text
$sel:successForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
successForeground} -> Maybe Text
successForeground) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:successForeground:UIColorPalette' :: Maybe Text
successForeground = Maybe Text
a} :: UIColorPalette)

-- | The color that applies to the names of fields that are identified as
-- dimensions.
uIColorPalette_dimension :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_dimension :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_dimension = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
dimension :: Maybe Text
$sel:dimension:UIColorPalette' :: UIColorPalette -> Maybe Text
dimension} -> Maybe Text
dimension) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:dimension:UIColorPalette' :: Maybe Text
dimension = Maybe Text
a} :: UIColorPalette)

-- | The foreground color that applies to any text or other elements that
-- appear over the dimension color.
uIColorPalette_dimensionForeground :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_dimensionForeground :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_dimensionForeground = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
dimensionForeground :: Maybe Text
$sel:dimensionForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
dimensionForeground} -> Maybe Text
dimensionForeground) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:dimensionForeground:UIColorPalette' :: Maybe Text
dimensionForeground = Maybe Text
a} :: UIColorPalette)

-- | The color that applies to success messages, for example the check mark
-- for a successful download.
uIColorPalette_success :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_success :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_success = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
success :: Maybe Text
$sel:success:UIColorPalette' :: UIColorPalette -> Maybe Text
success} -> Maybe Text
success) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:success:UIColorPalette' :: Maybe Text
success = Maybe Text
a} :: UIColorPalette)

-- | This color is that applies to selected states and buttons.
uIColorPalette_accent :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_accent :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_accent = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
accent :: Maybe Text
$sel:accent:UIColorPalette' :: UIColorPalette -> Maybe Text
accent} -> Maybe Text
accent) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:accent:UIColorPalette' :: Maybe Text
accent = Maybe Text
a} :: UIColorPalette)

-- | The foreground color that applies to any sheet title, sheet control
-- text, or UI that appears over the secondary background.
uIColorPalette_secondaryForeground :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_secondaryForeground :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_secondaryForeground = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
secondaryForeground :: Maybe Text
$sel:secondaryForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
secondaryForeground} -> Maybe Text
secondaryForeground) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:secondaryForeground:UIColorPalette' :: Maybe Text
secondaryForeground = Maybe Text
a} :: UIColorPalette)

-- | The color of text and other foreground elements that appear over the
-- primary background regions, such as grid lines, borders, table banding,
-- icons, and so on.
uIColorPalette_primaryForeground :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_primaryForeground :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_primaryForeground = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
primaryForeground :: Maybe Text
$sel:primaryForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
primaryForeground} -> Maybe Text
primaryForeground) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:primaryForeground:UIColorPalette' :: Maybe Text
primaryForeground = Maybe Text
a} :: UIColorPalette)

-- | This color that applies to warning and informational messages.
uIColorPalette_warning :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_warning :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_warning = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
warning :: Maybe Text
$sel:warning:UIColorPalette' :: UIColorPalette -> Maybe Text
warning} -> Maybe Text
warning) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:warning:UIColorPalette' :: Maybe Text
warning = Maybe Text
a} :: UIColorPalette)

-- | The background color that applies to visuals and other high emphasis UI.
uIColorPalette_primaryBackground :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_primaryBackground :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_primaryBackground = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
primaryBackground :: Maybe Text
$sel:primaryBackground:UIColorPalette' :: UIColorPalette -> Maybe Text
primaryBackground} -> Maybe Text
primaryBackground) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:primaryBackground:UIColorPalette' :: Maybe Text
primaryBackground = Maybe Text
a} :: UIColorPalette)

-- | The foreground color that applies to any text or other elements that
-- appear over the accent color.
uIColorPalette_accentForeground :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_accentForeground :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_accentForeground = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
accentForeground :: Maybe Text
$sel:accentForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
accentForeground} -> Maybe Text
accentForeground) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:accentForeground:UIColorPalette' :: Maybe Text
accentForeground = Maybe Text
a} :: UIColorPalette)

-- | The color that applies to the names of fields that are identified as
-- measures.
uIColorPalette_measure :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_measure :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_measure = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
measure :: Maybe Text
$sel:measure:UIColorPalette' :: UIColorPalette -> Maybe Text
measure} -> Maybe Text
measure) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:measure:UIColorPalette' :: Maybe Text
measure = Maybe Text
a} :: UIColorPalette)

-- | The foreground color that applies to any text or other elements that
-- appear over the error color.
uIColorPalette_dangerForeground :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_dangerForeground :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_dangerForeground = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
dangerForeground :: Maybe Text
$sel:dangerForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
dangerForeground} -> Maybe Text
dangerForeground) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:dangerForeground:UIColorPalette' :: Maybe Text
dangerForeground = Maybe Text
a} :: UIColorPalette)

-- | The foreground color that applies to any text or other elements that
-- appear over the measure color.
uIColorPalette_measureForeground :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_measureForeground :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_measureForeground = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
measureForeground :: Maybe Text
$sel:measureForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
measureForeground} -> Maybe Text
measureForeground) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:measureForeground:UIColorPalette' :: Maybe Text
measureForeground = Maybe Text
a} :: UIColorPalette)

-- | The color that applies to error messages.
uIColorPalette_danger :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_danger :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_danger = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
danger :: Maybe Text
$sel:danger:UIColorPalette' :: UIColorPalette -> Maybe Text
danger} -> Maybe Text
danger) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:danger:UIColorPalette' :: Maybe Text
danger = Maybe Text
a} :: UIColorPalette)

-- | The foreground color that applies to any text or other elements that
-- appear over the warning color.
uIColorPalette_warningForeground :: Lens.Lens' UIColorPalette (Prelude.Maybe Prelude.Text)
uIColorPalette_warningForeground :: (Maybe Text -> f (Maybe Text))
-> UIColorPalette -> f UIColorPalette
uIColorPalette_warningForeground = (UIColorPalette -> Maybe Text)
-> (UIColorPalette -> Maybe Text -> UIColorPalette)
-> Lens UIColorPalette UIColorPalette (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UIColorPalette' {Maybe Text
warningForeground :: Maybe Text
$sel:warningForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
warningForeground} -> Maybe Text
warningForeground) (\s :: UIColorPalette
s@UIColorPalette' {} Maybe Text
a -> UIColorPalette
s {$sel:warningForeground:UIColorPalette' :: Maybe Text
warningForeground = Maybe Text
a} :: UIColorPalette)

instance Core.FromJSON UIColorPalette where
  parseJSON :: Value -> Parser UIColorPalette
parseJSON =
    String
-> (Object -> Parser UIColorPalette)
-> Value
-> Parser UIColorPalette
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Core.withObject
      String
"UIColorPalette"
      ( \Object
x ->
          Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> UIColorPalette
UIColorPalette'
            (Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> UIColorPalette)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> UIColorPalette)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"SecondaryBackground")
            Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> UIColorPalette)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> UIColorPalette)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"SuccessForeground")
            Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> UIColorPalette)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> UIColorPalette)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"Dimension")
            Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> UIColorPalette)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> UIColorPalette)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"DimensionForeground")
            Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> UIColorPalette)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> UIColorPalette)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"Success")
            Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> UIColorPalette)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> UIColorPalette)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"Accent")
            Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> UIColorPalette)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> UIColorPalette)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"SecondaryForeground")
            Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> UIColorPalette)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> UIColorPalette)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"PrimaryForeground")
            Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> UIColorPalette)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> UIColorPalette)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"Warning")
            Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> UIColorPalette)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> UIColorPalette)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"PrimaryBackground")
            Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> UIColorPalette)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> UIColorPalette)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"AccentForeground")
            Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> UIColorPalette)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text -> Maybe Text -> Maybe Text -> UIColorPalette)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"Measure")
            Parser
  (Maybe Text
   -> Maybe Text -> Maybe Text -> Maybe Text -> UIColorPalette)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text -> Maybe Text -> Maybe Text -> UIColorPalette)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"DangerForeground")
            Parser (Maybe Text -> Maybe Text -> Maybe Text -> UIColorPalette)
-> Parser (Maybe Text)
-> Parser (Maybe Text -> Maybe Text -> UIColorPalette)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"MeasureForeground")
            Parser (Maybe Text -> Maybe Text -> UIColorPalette)
-> Parser (Maybe Text) -> Parser (Maybe Text -> UIColorPalette)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"Danger")
            Parser (Maybe Text -> UIColorPalette)
-> Parser (Maybe Text) -> Parser UIColorPalette
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"WarningForeground")
      )

instance Prelude.Hashable UIColorPalette

instance Prelude.NFData UIColorPalette

instance Core.ToJSON UIColorPalette where
  toJSON :: UIColorPalette -> Value
toJSON UIColorPalette' {Maybe Text
warningForeground :: Maybe Text
danger :: Maybe Text
measureForeground :: Maybe Text
dangerForeground :: Maybe Text
measure :: Maybe Text
accentForeground :: Maybe Text
primaryBackground :: Maybe Text
warning :: Maybe Text
primaryForeground :: Maybe Text
secondaryForeground :: Maybe Text
accent :: Maybe Text
success :: Maybe Text
dimensionForeground :: Maybe Text
dimension :: Maybe Text
successForeground :: Maybe Text
secondaryBackground :: Maybe Text
$sel:warningForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:danger:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:measureForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:dangerForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:measure:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:accentForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:primaryBackground:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:warning:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:primaryForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:secondaryForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:accent:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:success:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:dimensionForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:dimension:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:successForeground:UIColorPalette' :: UIColorPalette -> Maybe Text
$sel:secondaryBackground:UIColorPalette' :: UIColorPalette -> Maybe Text
..} =
    [Pair] -> Value
Core.object
      ( [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [ (Text
"SecondaryBackground" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
              (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
secondaryBackground,
            (Text
"SuccessForeground" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
              (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
successForeground,
            (Text
"Dimension" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
dimension,
            (Text
"DimensionForeground" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
              (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
dimensionForeground,
            (Text
"Success" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
success,
            (Text
"Accent" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
accent,
            (Text
"SecondaryForeground" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
              (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
secondaryForeground,
            (Text
"PrimaryForeground" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
              (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
primaryForeground,
            (Text
"Warning" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
warning,
            (Text
"PrimaryBackground" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
              (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
primaryBackground,
            (Text
"AccentForeground" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
              (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
accentForeground,
            (Text
"Measure" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
measure,
            (Text
"DangerForeground" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
              (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
dangerForeground,
            (Text
"MeasureForeground" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
              (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
measureForeground,
            (Text
"Danger" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
danger,
            (Text
"WarningForeground" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
              (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
warningForeground
          ]
      )