{-# 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 #-}
module Amazonka.QuickSight.Types.FreeFormLayoutElement where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
import Amazonka.QuickSight.Types.FreeFormLayoutElementBackgroundStyle
import Amazonka.QuickSight.Types.FreeFormLayoutElementBorderStyle
import Amazonka.QuickSight.Types.LayoutElementType
import Amazonka.QuickSight.Types.LoadingAnimation
import Amazonka.QuickSight.Types.SheetElementRenderingRule
import Amazonka.QuickSight.Types.Visibility
data FreeFormLayoutElement = FreeFormLayoutElement'
{
FreeFormLayoutElement -> Maybe FreeFormLayoutElementBackgroundStyle
backgroundStyle :: Prelude.Maybe FreeFormLayoutElementBackgroundStyle,
FreeFormLayoutElement -> Maybe FreeFormLayoutElementBorderStyle
borderStyle :: Prelude.Maybe FreeFormLayoutElementBorderStyle,
FreeFormLayoutElement -> Maybe LoadingAnimation
loadingAnimation :: Prelude.Maybe LoadingAnimation,
FreeFormLayoutElement -> Maybe [SheetElementRenderingRule]
renderingRules :: Prelude.Maybe [SheetElementRenderingRule],
FreeFormLayoutElement -> Maybe FreeFormLayoutElementBorderStyle
selectedBorderStyle :: Prelude.Maybe FreeFormLayoutElementBorderStyle,
FreeFormLayoutElement -> Maybe Visibility
visibility :: Prelude.Maybe Visibility,
FreeFormLayoutElement -> Text
elementId :: Prelude.Text,
FreeFormLayoutElement -> LayoutElementType
elementType :: LayoutElementType,
FreeFormLayoutElement -> Text
xAxisLocation :: Prelude.Text,
FreeFormLayoutElement -> Text
yAxisLocation :: Prelude.Text,
FreeFormLayoutElement -> Text
width :: Prelude.Text,
FreeFormLayoutElement -> Text
height :: Prelude.Text
}
deriving (FreeFormLayoutElement -> FreeFormLayoutElement -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: FreeFormLayoutElement -> FreeFormLayoutElement -> Bool
$c/= :: FreeFormLayoutElement -> FreeFormLayoutElement -> Bool
== :: FreeFormLayoutElement -> FreeFormLayoutElement -> Bool
$c== :: FreeFormLayoutElement -> FreeFormLayoutElement -> Bool
Prelude.Eq, Int -> FreeFormLayoutElement -> ShowS
[FreeFormLayoutElement] -> ShowS
FreeFormLayoutElement -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [FreeFormLayoutElement] -> ShowS
$cshowList :: [FreeFormLayoutElement] -> ShowS
show :: FreeFormLayoutElement -> String
$cshow :: FreeFormLayoutElement -> String
showsPrec :: Int -> FreeFormLayoutElement -> ShowS
$cshowsPrec :: Int -> FreeFormLayoutElement -> ShowS
Prelude.Show, forall x. Rep FreeFormLayoutElement x -> FreeFormLayoutElement
forall x. FreeFormLayoutElement -> Rep FreeFormLayoutElement x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep FreeFormLayoutElement x -> FreeFormLayoutElement
$cfrom :: forall x. FreeFormLayoutElement -> Rep FreeFormLayoutElement x
Prelude.Generic)
newFreeFormLayoutElement ::
Prelude.Text ->
LayoutElementType ->
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
FreeFormLayoutElement
newFreeFormLayoutElement :: Text
-> LayoutElementType
-> Text
-> Text
-> Text
-> Text
-> FreeFormLayoutElement
newFreeFormLayoutElement
Text
pElementId_
LayoutElementType
pElementType_
Text
pXAxisLocation_
Text
pYAxisLocation_
Text
pWidth_
Text
pHeight_ =
FreeFormLayoutElement'
{ $sel:backgroundStyle:FreeFormLayoutElement' :: Maybe FreeFormLayoutElementBackgroundStyle
backgroundStyle =
forall a. Maybe a
Prelude.Nothing,
$sel:borderStyle:FreeFormLayoutElement' :: Maybe FreeFormLayoutElementBorderStyle
borderStyle = forall a. Maybe a
Prelude.Nothing,
$sel:loadingAnimation:FreeFormLayoutElement' :: Maybe LoadingAnimation
loadingAnimation = forall a. Maybe a
Prelude.Nothing,
$sel:renderingRules:FreeFormLayoutElement' :: Maybe [SheetElementRenderingRule]
renderingRules = forall a. Maybe a
Prelude.Nothing,
$sel:selectedBorderStyle:FreeFormLayoutElement' :: Maybe FreeFormLayoutElementBorderStyle
selectedBorderStyle = forall a. Maybe a
Prelude.Nothing,
$sel:visibility:FreeFormLayoutElement' :: Maybe Visibility
visibility = forall a. Maybe a
Prelude.Nothing,
$sel:elementId:FreeFormLayoutElement' :: Text
elementId = Text
pElementId_,
$sel:elementType:FreeFormLayoutElement' :: LayoutElementType
elementType = LayoutElementType
pElementType_,
$sel:xAxisLocation:FreeFormLayoutElement' :: Text
xAxisLocation = Text
pXAxisLocation_,
$sel:yAxisLocation:FreeFormLayoutElement' :: Text
yAxisLocation = Text
pYAxisLocation_,
$sel:width:FreeFormLayoutElement' :: Text
width = Text
pWidth_,
$sel:height:FreeFormLayoutElement' :: Text
height = Text
pHeight_
}
freeFormLayoutElement_backgroundStyle :: Lens.Lens' FreeFormLayoutElement (Prelude.Maybe FreeFormLayoutElementBackgroundStyle)
freeFormLayoutElement_backgroundStyle :: Lens'
FreeFormLayoutElement (Maybe FreeFormLayoutElementBackgroundStyle)
freeFormLayoutElement_backgroundStyle = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FreeFormLayoutElement' {Maybe FreeFormLayoutElementBackgroundStyle
backgroundStyle :: Maybe FreeFormLayoutElementBackgroundStyle
$sel:backgroundStyle:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe FreeFormLayoutElementBackgroundStyle
backgroundStyle} -> Maybe FreeFormLayoutElementBackgroundStyle
backgroundStyle) (\s :: FreeFormLayoutElement
s@FreeFormLayoutElement' {} Maybe FreeFormLayoutElementBackgroundStyle
a -> FreeFormLayoutElement
s {$sel:backgroundStyle:FreeFormLayoutElement' :: Maybe FreeFormLayoutElementBackgroundStyle
backgroundStyle = Maybe FreeFormLayoutElementBackgroundStyle
a} :: FreeFormLayoutElement)
freeFormLayoutElement_borderStyle :: Lens.Lens' FreeFormLayoutElement (Prelude.Maybe FreeFormLayoutElementBorderStyle)
freeFormLayoutElement_borderStyle :: Lens'
FreeFormLayoutElement (Maybe FreeFormLayoutElementBorderStyle)
freeFormLayoutElement_borderStyle = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FreeFormLayoutElement' {Maybe FreeFormLayoutElementBorderStyle
borderStyle :: Maybe FreeFormLayoutElementBorderStyle
$sel:borderStyle:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe FreeFormLayoutElementBorderStyle
borderStyle} -> Maybe FreeFormLayoutElementBorderStyle
borderStyle) (\s :: FreeFormLayoutElement
s@FreeFormLayoutElement' {} Maybe FreeFormLayoutElementBorderStyle
a -> FreeFormLayoutElement
s {$sel:borderStyle:FreeFormLayoutElement' :: Maybe FreeFormLayoutElementBorderStyle
borderStyle = Maybe FreeFormLayoutElementBorderStyle
a} :: FreeFormLayoutElement)
freeFormLayoutElement_loadingAnimation :: Lens.Lens' FreeFormLayoutElement (Prelude.Maybe LoadingAnimation)
freeFormLayoutElement_loadingAnimation :: Lens' FreeFormLayoutElement (Maybe LoadingAnimation)
freeFormLayoutElement_loadingAnimation = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FreeFormLayoutElement' {Maybe LoadingAnimation
loadingAnimation :: Maybe LoadingAnimation
$sel:loadingAnimation:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe LoadingAnimation
loadingAnimation} -> Maybe LoadingAnimation
loadingAnimation) (\s :: FreeFormLayoutElement
s@FreeFormLayoutElement' {} Maybe LoadingAnimation
a -> FreeFormLayoutElement
s {$sel:loadingAnimation:FreeFormLayoutElement' :: Maybe LoadingAnimation
loadingAnimation = Maybe LoadingAnimation
a} :: FreeFormLayoutElement)
freeFormLayoutElement_renderingRules :: Lens.Lens' FreeFormLayoutElement (Prelude.Maybe [SheetElementRenderingRule])
freeFormLayoutElement_renderingRules :: Lens' FreeFormLayoutElement (Maybe [SheetElementRenderingRule])
freeFormLayoutElement_renderingRules = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FreeFormLayoutElement' {Maybe [SheetElementRenderingRule]
renderingRules :: Maybe [SheetElementRenderingRule]
$sel:renderingRules:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe [SheetElementRenderingRule]
renderingRules} -> Maybe [SheetElementRenderingRule]
renderingRules) (\s :: FreeFormLayoutElement
s@FreeFormLayoutElement' {} Maybe [SheetElementRenderingRule]
a -> FreeFormLayoutElement
s {$sel:renderingRules:FreeFormLayoutElement' :: Maybe [SheetElementRenderingRule]
renderingRules = Maybe [SheetElementRenderingRule]
a} :: FreeFormLayoutElement) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
freeFormLayoutElement_selectedBorderStyle :: Lens.Lens' FreeFormLayoutElement (Prelude.Maybe FreeFormLayoutElementBorderStyle)
freeFormLayoutElement_selectedBorderStyle :: Lens'
FreeFormLayoutElement (Maybe FreeFormLayoutElementBorderStyle)
freeFormLayoutElement_selectedBorderStyle = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FreeFormLayoutElement' {Maybe FreeFormLayoutElementBorderStyle
selectedBorderStyle :: Maybe FreeFormLayoutElementBorderStyle
$sel:selectedBorderStyle:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe FreeFormLayoutElementBorderStyle
selectedBorderStyle} -> Maybe FreeFormLayoutElementBorderStyle
selectedBorderStyle) (\s :: FreeFormLayoutElement
s@FreeFormLayoutElement' {} Maybe FreeFormLayoutElementBorderStyle
a -> FreeFormLayoutElement
s {$sel:selectedBorderStyle:FreeFormLayoutElement' :: Maybe FreeFormLayoutElementBorderStyle
selectedBorderStyle = Maybe FreeFormLayoutElementBorderStyle
a} :: FreeFormLayoutElement)
freeFormLayoutElement_visibility :: Lens.Lens' FreeFormLayoutElement (Prelude.Maybe Visibility)
freeFormLayoutElement_visibility :: Lens' FreeFormLayoutElement (Maybe Visibility)
freeFormLayoutElement_visibility = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FreeFormLayoutElement' {Maybe Visibility
visibility :: Maybe Visibility
$sel:visibility:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe Visibility
visibility} -> Maybe Visibility
visibility) (\s :: FreeFormLayoutElement
s@FreeFormLayoutElement' {} Maybe Visibility
a -> FreeFormLayoutElement
s {$sel:visibility:FreeFormLayoutElement' :: Maybe Visibility
visibility = Maybe Visibility
a} :: FreeFormLayoutElement)
freeFormLayoutElement_elementId :: Lens.Lens' FreeFormLayoutElement Prelude.Text
freeFormLayoutElement_elementId :: Lens' FreeFormLayoutElement Text
freeFormLayoutElement_elementId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FreeFormLayoutElement' {Text
elementId :: Text
$sel:elementId:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
elementId} -> Text
elementId) (\s :: FreeFormLayoutElement
s@FreeFormLayoutElement' {} Text
a -> FreeFormLayoutElement
s {$sel:elementId:FreeFormLayoutElement' :: Text
elementId = Text
a} :: FreeFormLayoutElement)
freeFormLayoutElement_elementType :: Lens.Lens' FreeFormLayoutElement LayoutElementType
freeFormLayoutElement_elementType :: Lens' FreeFormLayoutElement LayoutElementType
freeFormLayoutElement_elementType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FreeFormLayoutElement' {LayoutElementType
elementType :: LayoutElementType
$sel:elementType:FreeFormLayoutElement' :: FreeFormLayoutElement -> LayoutElementType
elementType} -> LayoutElementType
elementType) (\s :: FreeFormLayoutElement
s@FreeFormLayoutElement' {} LayoutElementType
a -> FreeFormLayoutElement
s {$sel:elementType:FreeFormLayoutElement' :: LayoutElementType
elementType = LayoutElementType
a} :: FreeFormLayoutElement)
freeFormLayoutElement_xAxisLocation :: Lens.Lens' FreeFormLayoutElement Prelude.Text
freeFormLayoutElement_xAxisLocation :: Lens' FreeFormLayoutElement Text
freeFormLayoutElement_xAxisLocation = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FreeFormLayoutElement' {Text
xAxisLocation :: Text
$sel:xAxisLocation:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
xAxisLocation} -> Text
xAxisLocation) (\s :: FreeFormLayoutElement
s@FreeFormLayoutElement' {} Text
a -> FreeFormLayoutElement
s {$sel:xAxisLocation:FreeFormLayoutElement' :: Text
xAxisLocation = Text
a} :: FreeFormLayoutElement)
freeFormLayoutElement_yAxisLocation :: Lens.Lens' FreeFormLayoutElement Prelude.Text
freeFormLayoutElement_yAxisLocation :: Lens' FreeFormLayoutElement Text
freeFormLayoutElement_yAxisLocation = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FreeFormLayoutElement' {Text
yAxisLocation :: Text
$sel:yAxisLocation:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
yAxisLocation} -> Text
yAxisLocation) (\s :: FreeFormLayoutElement
s@FreeFormLayoutElement' {} Text
a -> FreeFormLayoutElement
s {$sel:yAxisLocation:FreeFormLayoutElement' :: Text
yAxisLocation = Text
a} :: FreeFormLayoutElement)
freeFormLayoutElement_width :: Lens.Lens' FreeFormLayoutElement Prelude.Text
freeFormLayoutElement_width :: Lens' FreeFormLayoutElement Text
freeFormLayoutElement_width = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FreeFormLayoutElement' {Text
width :: Text
$sel:width:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
width} -> Text
width) (\s :: FreeFormLayoutElement
s@FreeFormLayoutElement' {} Text
a -> FreeFormLayoutElement
s {$sel:width:FreeFormLayoutElement' :: Text
width = Text
a} :: FreeFormLayoutElement)
freeFormLayoutElement_height :: Lens.Lens' FreeFormLayoutElement Prelude.Text
freeFormLayoutElement_height :: Lens' FreeFormLayoutElement Text
freeFormLayoutElement_height = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FreeFormLayoutElement' {Text
height :: Text
$sel:height:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
height} -> Text
height) (\s :: FreeFormLayoutElement
s@FreeFormLayoutElement' {} Text
a -> FreeFormLayoutElement
s {$sel:height:FreeFormLayoutElement' :: Text
height = Text
a} :: FreeFormLayoutElement)
instance Data.FromJSON FreeFormLayoutElement where
parseJSON :: Value -> Parser FreeFormLayoutElement
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"FreeFormLayoutElement"
( \Object
x ->
Maybe FreeFormLayoutElementBackgroundStyle
-> Maybe FreeFormLayoutElementBorderStyle
-> Maybe LoadingAnimation
-> Maybe [SheetElementRenderingRule]
-> Maybe FreeFormLayoutElementBorderStyle
-> Maybe Visibility
-> Text
-> LayoutElementType
-> Text
-> Text
-> Text
-> Text
-> FreeFormLayoutElement
FreeFormLayoutElement'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"BackgroundStyle")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"BorderStyle")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"LoadingAnimation")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"RenderingRules" forall a. Parser (Maybe a) -> a -> Parser a
Data..!= forall a. Monoid a => a
Prelude.mempty)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"SelectedBorderStyle")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Visibility")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"ElementId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"ElementType")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"XAxisLocation")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"YAxisLocation")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"Width")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser a
Data..: Key
"Height")
)
instance Prelude.Hashable FreeFormLayoutElement where
hashWithSalt :: Int -> FreeFormLayoutElement -> Int
hashWithSalt Int
_salt FreeFormLayoutElement' {Maybe [SheetElementRenderingRule]
Maybe Visibility
Maybe LoadingAnimation
Maybe FreeFormLayoutElementBorderStyle
Maybe FreeFormLayoutElementBackgroundStyle
Text
LayoutElementType
height :: Text
width :: Text
yAxisLocation :: Text
xAxisLocation :: Text
elementType :: LayoutElementType
elementId :: Text
visibility :: Maybe Visibility
selectedBorderStyle :: Maybe FreeFormLayoutElementBorderStyle
renderingRules :: Maybe [SheetElementRenderingRule]
loadingAnimation :: Maybe LoadingAnimation
borderStyle :: Maybe FreeFormLayoutElementBorderStyle
backgroundStyle :: Maybe FreeFormLayoutElementBackgroundStyle
$sel:height:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:width:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:yAxisLocation:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:xAxisLocation:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:elementType:FreeFormLayoutElement' :: FreeFormLayoutElement -> LayoutElementType
$sel:elementId:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:visibility:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe Visibility
$sel:selectedBorderStyle:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe FreeFormLayoutElementBorderStyle
$sel:renderingRules:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe [SheetElementRenderingRule]
$sel:loadingAnimation:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe LoadingAnimation
$sel:borderStyle:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe FreeFormLayoutElementBorderStyle
$sel:backgroundStyle:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe FreeFormLayoutElementBackgroundStyle
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe FreeFormLayoutElementBackgroundStyle
backgroundStyle
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe FreeFormLayoutElementBorderStyle
borderStyle
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe LoadingAnimation
loadingAnimation
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [SheetElementRenderingRule]
renderingRules
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe FreeFormLayoutElementBorderStyle
selectedBorderStyle
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Visibility
visibility
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
elementId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` LayoutElementType
elementType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
xAxisLocation
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
yAxisLocation
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
width
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
height
instance Prelude.NFData FreeFormLayoutElement where
rnf :: FreeFormLayoutElement -> ()
rnf FreeFormLayoutElement' {Maybe [SheetElementRenderingRule]
Maybe Visibility
Maybe LoadingAnimation
Maybe FreeFormLayoutElementBorderStyle
Maybe FreeFormLayoutElementBackgroundStyle
Text
LayoutElementType
height :: Text
width :: Text
yAxisLocation :: Text
xAxisLocation :: Text
elementType :: LayoutElementType
elementId :: Text
visibility :: Maybe Visibility
selectedBorderStyle :: Maybe FreeFormLayoutElementBorderStyle
renderingRules :: Maybe [SheetElementRenderingRule]
loadingAnimation :: Maybe LoadingAnimation
borderStyle :: Maybe FreeFormLayoutElementBorderStyle
backgroundStyle :: Maybe FreeFormLayoutElementBackgroundStyle
$sel:height:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:width:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:yAxisLocation:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:xAxisLocation:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:elementType:FreeFormLayoutElement' :: FreeFormLayoutElement -> LayoutElementType
$sel:elementId:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:visibility:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe Visibility
$sel:selectedBorderStyle:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe FreeFormLayoutElementBorderStyle
$sel:renderingRules:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe [SheetElementRenderingRule]
$sel:loadingAnimation:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe LoadingAnimation
$sel:borderStyle:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe FreeFormLayoutElementBorderStyle
$sel:backgroundStyle:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe FreeFormLayoutElementBackgroundStyle
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe FreeFormLayoutElementBackgroundStyle
backgroundStyle
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe FreeFormLayoutElementBorderStyle
borderStyle
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe LoadingAnimation
loadingAnimation
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [SheetElementRenderingRule]
renderingRules
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe FreeFormLayoutElementBorderStyle
selectedBorderStyle
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Visibility
visibility
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
elementId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf LayoutElementType
elementType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
xAxisLocation
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
yAxisLocation
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
width
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
height
instance Data.ToJSON FreeFormLayoutElement where
toJSON :: FreeFormLayoutElement -> Value
toJSON FreeFormLayoutElement' {Maybe [SheetElementRenderingRule]
Maybe Visibility
Maybe LoadingAnimation
Maybe FreeFormLayoutElementBorderStyle
Maybe FreeFormLayoutElementBackgroundStyle
Text
LayoutElementType
height :: Text
width :: Text
yAxisLocation :: Text
xAxisLocation :: Text
elementType :: LayoutElementType
elementId :: Text
visibility :: Maybe Visibility
selectedBorderStyle :: Maybe FreeFormLayoutElementBorderStyle
renderingRules :: Maybe [SheetElementRenderingRule]
loadingAnimation :: Maybe LoadingAnimation
borderStyle :: Maybe FreeFormLayoutElementBorderStyle
backgroundStyle :: Maybe FreeFormLayoutElementBackgroundStyle
$sel:height:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:width:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:yAxisLocation:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:xAxisLocation:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:elementType:FreeFormLayoutElement' :: FreeFormLayoutElement -> LayoutElementType
$sel:elementId:FreeFormLayoutElement' :: FreeFormLayoutElement -> Text
$sel:visibility:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe Visibility
$sel:selectedBorderStyle:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe FreeFormLayoutElementBorderStyle
$sel:renderingRules:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe [SheetElementRenderingRule]
$sel:loadingAnimation:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe LoadingAnimation
$sel:borderStyle:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe FreeFormLayoutElementBorderStyle
$sel:backgroundStyle:FreeFormLayoutElement' :: FreeFormLayoutElement -> Maybe FreeFormLayoutElementBackgroundStyle
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"BackgroundStyle" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe FreeFormLayoutElementBackgroundStyle
backgroundStyle,
(Key
"BorderStyle" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe FreeFormLayoutElementBorderStyle
borderStyle,
(Key
"LoadingAnimation" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe LoadingAnimation
loadingAnimation,
(Key
"RenderingRules" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [SheetElementRenderingRule]
renderingRules,
(Key
"SelectedBorderStyle" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe FreeFormLayoutElementBorderStyle
selectedBorderStyle,
(Key
"Visibility" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Visibility
visibility,
forall a. a -> Maybe a
Prelude.Just (Key
"ElementId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
elementId),
forall a. a -> Maybe a
Prelude.Just (Key
"ElementType" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= LayoutElementType
elementType),
forall a. a -> Maybe a
Prelude.Just (Key
"XAxisLocation" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
xAxisLocation),
forall a. a -> Maybe a
Prelude.Just (Key
"YAxisLocation" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
yAxisLocation),
forall a. a -> Maybe a
Prelude.Just (Key
"Width" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
width),
forall a. a -> Maybe a
Prelude.Just (Key
"Height" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
height)
]
)