module Stratosphere.QuickSight.Template.DimensionFieldProperty (
module Exports, DimensionFieldProperty(..),
mkDimensionFieldProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.QuickSight.Template.CategoricalDimensionFieldProperty as Exports
import {-# SOURCE #-} Stratosphere.QuickSight.Template.DateDimensionFieldProperty as Exports
import {-# SOURCE #-} Stratosphere.QuickSight.Template.NumericalDimensionFieldProperty as Exports
import Stratosphere.ResourceProperties
data DimensionFieldProperty
=
DimensionFieldProperty {DimensionFieldProperty -> ()
haddock_workaround_ :: (),
DimensionFieldProperty -> Maybe CategoricalDimensionFieldProperty
categoricalDimensionField :: (Prelude.Maybe CategoricalDimensionFieldProperty),
DimensionFieldProperty -> Maybe DateDimensionFieldProperty
dateDimensionField :: (Prelude.Maybe DateDimensionFieldProperty),
DimensionFieldProperty -> Maybe NumericalDimensionFieldProperty
numericalDimensionField :: (Prelude.Maybe NumericalDimensionFieldProperty)}
deriving stock (DimensionFieldProperty -> DimensionFieldProperty -> Bool
(DimensionFieldProperty -> DimensionFieldProperty -> Bool)
-> (DimensionFieldProperty -> DimensionFieldProperty -> Bool)
-> Eq DimensionFieldProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DimensionFieldProperty -> DimensionFieldProperty -> Bool
== :: DimensionFieldProperty -> DimensionFieldProperty -> Bool
$c/= :: DimensionFieldProperty -> DimensionFieldProperty -> Bool
/= :: DimensionFieldProperty -> DimensionFieldProperty -> Bool
Prelude.Eq, Int -> DimensionFieldProperty -> ShowS
[DimensionFieldProperty] -> ShowS
DimensionFieldProperty -> String
(Int -> DimensionFieldProperty -> ShowS)
-> (DimensionFieldProperty -> String)
-> ([DimensionFieldProperty] -> ShowS)
-> Show DimensionFieldProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> DimensionFieldProperty -> ShowS
showsPrec :: Int -> DimensionFieldProperty -> ShowS
$cshow :: DimensionFieldProperty -> String
show :: DimensionFieldProperty -> String
$cshowList :: [DimensionFieldProperty] -> ShowS
showList :: [DimensionFieldProperty] -> ShowS
Prelude.Show)
mkDimensionFieldProperty :: DimensionFieldProperty
mkDimensionFieldProperty :: DimensionFieldProperty
mkDimensionFieldProperty
= DimensionFieldProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (),
categoricalDimensionField :: Maybe CategoricalDimensionFieldProperty
categoricalDimensionField = Maybe CategoricalDimensionFieldProperty
forall a. Maybe a
Prelude.Nothing,
dateDimensionField :: Maybe DateDimensionFieldProperty
dateDimensionField = Maybe DateDimensionFieldProperty
forall a. Maybe a
Prelude.Nothing,
numericalDimensionField :: Maybe NumericalDimensionFieldProperty
numericalDimensionField = Maybe NumericalDimensionFieldProperty
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties DimensionFieldProperty where
toResourceProperties :: DimensionFieldProperty -> ResourceProperties
toResourceProperties DimensionFieldProperty {Maybe CategoricalDimensionFieldProperty
Maybe NumericalDimensionFieldProperty
Maybe DateDimensionFieldProperty
()
haddock_workaround_ :: DimensionFieldProperty -> ()
categoricalDimensionField :: DimensionFieldProperty -> Maybe CategoricalDimensionFieldProperty
dateDimensionField :: DimensionFieldProperty -> Maybe DateDimensionFieldProperty
numericalDimensionField :: DimensionFieldProperty -> Maybe NumericalDimensionFieldProperty
haddock_workaround_ :: ()
categoricalDimensionField :: Maybe CategoricalDimensionFieldProperty
dateDimensionField :: Maybe DateDimensionFieldProperty
numericalDimensionField :: Maybe NumericalDimensionFieldProperty
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::QuickSight::Template.DimensionField",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
properties :: Object
properties = [Item Object] -> Object
forall l. IsList l => [Item l] -> l
Prelude.fromList
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> CategoricalDimensionFieldProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"CategoricalDimensionField"
(CategoricalDimensionFieldProperty -> (Key, Value))
-> Maybe CategoricalDimensionFieldProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe CategoricalDimensionFieldProperty
categoricalDimensionField,
Key -> DateDimensionFieldProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"DateDimensionField" (DateDimensionFieldProperty -> (Key, Value))
-> Maybe DateDimensionFieldProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe DateDimensionFieldProperty
dateDimensionField,
Key -> NumericalDimensionFieldProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"NumericalDimensionField"
(NumericalDimensionFieldProperty -> (Key, Value))
-> Maybe NumericalDimensionFieldProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe NumericalDimensionFieldProperty
numericalDimensionField])}
instance JSON.ToJSON DimensionFieldProperty where
toJSON :: DimensionFieldProperty -> Value
toJSON DimensionFieldProperty {Maybe CategoricalDimensionFieldProperty
Maybe NumericalDimensionFieldProperty
Maybe DateDimensionFieldProperty
()
haddock_workaround_ :: DimensionFieldProperty -> ()
categoricalDimensionField :: DimensionFieldProperty -> Maybe CategoricalDimensionFieldProperty
dateDimensionField :: DimensionFieldProperty -> Maybe DateDimensionFieldProperty
numericalDimensionField :: DimensionFieldProperty -> Maybe NumericalDimensionFieldProperty
haddock_workaround_ :: ()
categoricalDimensionField :: Maybe CategoricalDimensionFieldProperty
dateDimensionField :: Maybe DateDimensionFieldProperty
numericalDimensionField :: Maybe NumericalDimensionFieldProperty
..}
= [(Key, Value)] -> Value
JSON.object
([Item [(Key, Value)]] -> [(Key, Value)]
forall l. IsList l => [Item l] -> l
Prelude.fromList
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> CategoricalDimensionFieldProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"CategoricalDimensionField"
(CategoricalDimensionFieldProperty -> (Key, Value))
-> Maybe CategoricalDimensionFieldProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe CategoricalDimensionFieldProperty
categoricalDimensionField,
Key -> DateDimensionFieldProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"DateDimensionField" (DateDimensionFieldProperty -> (Key, Value))
-> Maybe DateDimensionFieldProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe DateDimensionFieldProperty
dateDimensionField,
Key -> NumericalDimensionFieldProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"NumericalDimensionField"
(NumericalDimensionFieldProperty -> (Key, Value))
-> Maybe NumericalDimensionFieldProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe NumericalDimensionFieldProperty
numericalDimensionField]))
instance Property "CategoricalDimensionField" DimensionFieldProperty where
type PropertyType "CategoricalDimensionField" DimensionFieldProperty = CategoricalDimensionFieldProperty
set :: PropertyType "CategoricalDimensionField" DimensionFieldProperty
-> DimensionFieldProperty -> DimensionFieldProperty
set PropertyType "CategoricalDimensionField" DimensionFieldProperty
newValue DimensionFieldProperty {Maybe CategoricalDimensionFieldProperty
Maybe NumericalDimensionFieldProperty
Maybe DateDimensionFieldProperty
()
haddock_workaround_ :: DimensionFieldProperty -> ()
categoricalDimensionField :: DimensionFieldProperty -> Maybe CategoricalDimensionFieldProperty
dateDimensionField :: DimensionFieldProperty -> Maybe DateDimensionFieldProperty
numericalDimensionField :: DimensionFieldProperty -> Maybe NumericalDimensionFieldProperty
haddock_workaround_ :: ()
categoricalDimensionField :: Maybe CategoricalDimensionFieldProperty
dateDimensionField :: Maybe DateDimensionFieldProperty
numericalDimensionField :: Maybe NumericalDimensionFieldProperty
..}
= DimensionFieldProperty
{categoricalDimensionField :: Maybe CategoricalDimensionFieldProperty
categoricalDimensionField = CategoricalDimensionFieldProperty
-> Maybe CategoricalDimensionFieldProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "CategoricalDimensionField" DimensionFieldProperty
CategoricalDimensionFieldProperty
newValue, Maybe NumericalDimensionFieldProperty
Maybe DateDimensionFieldProperty
()
haddock_workaround_ :: ()
dateDimensionField :: Maybe DateDimensionFieldProperty
numericalDimensionField :: Maybe NumericalDimensionFieldProperty
haddock_workaround_ :: ()
dateDimensionField :: Maybe DateDimensionFieldProperty
numericalDimensionField :: Maybe NumericalDimensionFieldProperty
..}
instance Property "DateDimensionField" DimensionFieldProperty where
type PropertyType "DateDimensionField" DimensionFieldProperty = DateDimensionFieldProperty
set :: PropertyType "DateDimensionField" DimensionFieldProperty
-> DimensionFieldProperty -> DimensionFieldProperty
set PropertyType "DateDimensionField" DimensionFieldProperty
newValue DimensionFieldProperty {Maybe CategoricalDimensionFieldProperty
Maybe NumericalDimensionFieldProperty
Maybe DateDimensionFieldProperty
()
haddock_workaround_ :: DimensionFieldProperty -> ()
categoricalDimensionField :: DimensionFieldProperty -> Maybe CategoricalDimensionFieldProperty
dateDimensionField :: DimensionFieldProperty -> Maybe DateDimensionFieldProperty
numericalDimensionField :: DimensionFieldProperty -> Maybe NumericalDimensionFieldProperty
haddock_workaround_ :: ()
categoricalDimensionField :: Maybe CategoricalDimensionFieldProperty
dateDimensionField :: Maybe DateDimensionFieldProperty
numericalDimensionField :: Maybe NumericalDimensionFieldProperty
..}
= DimensionFieldProperty
{dateDimensionField :: Maybe DateDimensionFieldProperty
dateDimensionField = DateDimensionFieldProperty -> Maybe DateDimensionFieldProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "DateDimensionField" DimensionFieldProperty
DateDimensionFieldProperty
newValue, Maybe CategoricalDimensionFieldProperty
Maybe NumericalDimensionFieldProperty
()
haddock_workaround_ :: ()
categoricalDimensionField :: Maybe CategoricalDimensionFieldProperty
numericalDimensionField :: Maybe NumericalDimensionFieldProperty
haddock_workaround_ :: ()
categoricalDimensionField :: Maybe CategoricalDimensionFieldProperty
numericalDimensionField :: Maybe NumericalDimensionFieldProperty
..}
instance Property "NumericalDimensionField" DimensionFieldProperty where
type PropertyType "NumericalDimensionField" DimensionFieldProperty = NumericalDimensionFieldProperty
set :: PropertyType "NumericalDimensionField" DimensionFieldProperty
-> DimensionFieldProperty -> DimensionFieldProperty
set PropertyType "NumericalDimensionField" DimensionFieldProperty
newValue DimensionFieldProperty {Maybe CategoricalDimensionFieldProperty
Maybe NumericalDimensionFieldProperty
Maybe DateDimensionFieldProperty
()
haddock_workaround_ :: DimensionFieldProperty -> ()
categoricalDimensionField :: DimensionFieldProperty -> Maybe CategoricalDimensionFieldProperty
dateDimensionField :: DimensionFieldProperty -> Maybe DateDimensionFieldProperty
numericalDimensionField :: DimensionFieldProperty -> Maybe NumericalDimensionFieldProperty
haddock_workaround_ :: ()
categoricalDimensionField :: Maybe CategoricalDimensionFieldProperty
dateDimensionField :: Maybe DateDimensionFieldProperty
numericalDimensionField :: Maybe NumericalDimensionFieldProperty
..}
= DimensionFieldProperty
{numericalDimensionField :: Maybe NumericalDimensionFieldProperty
numericalDimensionField = NumericalDimensionFieldProperty
-> Maybe NumericalDimensionFieldProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "NumericalDimensionField" DimensionFieldProperty
NumericalDimensionFieldProperty
newValue, Maybe CategoricalDimensionFieldProperty
Maybe DateDimensionFieldProperty
()
haddock_workaround_ :: ()
categoricalDimensionField :: Maybe CategoricalDimensionFieldProperty
dateDimensionField :: Maybe DateDimensionFieldProperty
haddock_workaround_ :: ()
categoricalDimensionField :: Maybe CategoricalDimensionFieldProperty
dateDimensionField :: Maybe DateDimensionFieldProperty
..}