module Stratosphere.QuickSight.Dashboard.ColumnHierarchyProperty (
module Exports, ColumnHierarchyProperty(..),
mkColumnHierarchyProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.QuickSight.Dashboard.DateTimeHierarchyProperty as Exports
import {-# SOURCE #-} Stratosphere.QuickSight.Dashboard.ExplicitHierarchyProperty as Exports
import {-# SOURCE #-} Stratosphere.QuickSight.Dashboard.PredefinedHierarchyProperty as Exports
import Stratosphere.ResourceProperties
data ColumnHierarchyProperty
=
ColumnHierarchyProperty {ColumnHierarchyProperty -> ()
haddock_workaround_ :: (),
ColumnHierarchyProperty -> Maybe DateTimeHierarchyProperty
dateTimeHierarchy :: (Prelude.Maybe DateTimeHierarchyProperty),
ColumnHierarchyProperty -> Maybe ExplicitHierarchyProperty
explicitHierarchy :: (Prelude.Maybe ExplicitHierarchyProperty),
ColumnHierarchyProperty -> Maybe PredefinedHierarchyProperty
predefinedHierarchy :: (Prelude.Maybe PredefinedHierarchyProperty)}
deriving stock (ColumnHierarchyProperty -> ColumnHierarchyProperty -> Bool
(ColumnHierarchyProperty -> ColumnHierarchyProperty -> Bool)
-> (ColumnHierarchyProperty -> ColumnHierarchyProperty -> Bool)
-> Eq ColumnHierarchyProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ColumnHierarchyProperty -> ColumnHierarchyProperty -> Bool
== :: ColumnHierarchyProperty -> ColumnHierarchyProperty -> Bool
$c/= :: ColumnHierarchyProperty -> ColumnHierarchyProperty -> Bool
/= :: ColumnHierarchyProperty -> ColumnHierarchyProperty -> Bool
Prelude.Eq, Int -> ColumnHierarchyProperty -> ShowS
[ColumnHierarchyProperty] -> ShowS
ColumnHierarchyProperty -> String
(Int -> ColumnHierarchyProperty -> ShowS)
-> (ColumnHierarchyProperty -> String)
-> ([ColumnHierarchyProperty] -> ShowS)
-> Show ColumnHierarchyProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ColumnHierarchyProperty -> ShowS
showsPrec :: Int -> ColumnHierarchyProperty -> ShowS
$cshow :: ColumnHierarchyProperty -> String
show :: ColumnHierarchyProperty -> String
$cshowList :: [ColumnHierarchyProperty] -> ShowS
showList :: [ColumnHierarchyProperty] -> ShowS
Prelude.Show)
mkColumnHierarchyProperty :: ColumnHierarchyProperty
mkColumnHierarchyProperty :: ColumnHierarchyProperty
mkColumnHierarchyProperty
= ColumnHierarchyProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), dateTimeHierarchy :: Maybe DateTimeHierarchyProperty
dateTimeHierarchy = Maybe DateTimeHierarchyProperty
forall a. Maybe a
Prelude.Nothing,
explicitHierarchy :: Maybe ExplicitHierarchyProperty
explicitHierarchy = Maybe ExplicitHierarchyProperty
forall a. Maybe a
Prelude.Nothing,
predefinedHierarchy :: Maybe PredefinedHierarchyProperty
predefinedHierarchy = Maybe PredefinedHierarchyProperty
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties ColumnHierarchyProperty where
toResourceProperties :: ColumnHierarchyProperty -> ResourceProperties
toResourceProperties ColumnHierarchyProperty {Maybe PredefinedHierarchyProperty
Maybe ExplicitHierarchyProperty
Maybe DateTimeHierarchyProperty
()
haddock_workaround_ :: ColumnHierarchyProperty -> ()
dateTimeHierarchy :: ColumnHierarchyProperty -> Maybe DateTimeHierarchyProperty
explicitHierarchy :: ColumnHierarchyProperty -> Maybe ExplicitHierarchyProperty
predefinedHierarchy :: ColumnHierarchyProperty -> Maybe PredefinedHierarchyProperty
haddock_workaround_ :: ()
dateTimeHierarchy :: Maybe DateTimeHierarchyProperty
explicitHierarchy :: Maybe ExplicitHierarchyProperty
predefinedHierarchy :: Maybe PredefinedHierarchyProperty
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::QuickSight::Dashboard.ColumnHierarchy",
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 -> DateTimeHierarchyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"DateTimeHierarchy" (DateTimeHierarchyProperty -> (Key, Value))
-> Maybe DateTimeHierarchyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe DateTimeHierarchyProperty
dateTimeHierarchy,
Key -> ExplicitHierarchyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ExplicitHierarchy" (ExplicitHierarchyProperty -> (Key, Value))
-> Maybe ExplicitHierarchyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ExplicitHierarchyProperty
explicitHierarchy,
Key -> PredefinedHierarchyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"PredefinedHierarchy" (PredefinedHierarchyProperty -> (Key, Value))
-> Maybe PredefinedHierarchyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe PredefinedHierarchyProperty
predefinedHierarchy])}
instance JSON.ToJSON ColumnHierarchyProperty where
toJSON :: ColumnHierarchyProperty -> Value
toJSON ColumnHierarchyProperty {Maybe PredefinedHierarchyProperty
Maybe ExplicitHierarchyProperty
Maybe DateTimeHierarchyProperty
()
haddock_workaround_ :: ColumnHierarchyProperty -> ()
dateTimeHierarchy :: ColumnHierarchyProperty -> Maybe DateTimeHierarchyProperty
explicitHierarchy :: ColumnHierarchyProperty -> Maybe ExplicitHierarchyProperty
predefinedHierarchy :: ColumnHierarchyProperty -> Maybe PredefinedHierarchyProperty
haddock_workaround_ :: ()
dateTimeHierarchy :: Maybe DateTimeHierarchyProperty
explicitHierarchy :: Maybe ExplicitHierarchyProperty
predefinedHierarchy :: Maybe PredefinedHierarchyProperty
..}
= [(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 -> DateTimeHierarchyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"DateTimeHierarchy" (DateTimeHierarchyProperty -> (Key, Value))
-> Maybe DateTimeHierarchyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe DateTimeHierarchyProperty
dateTimeHierarchy,
Key -> ExplicitHierarchyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"ExplicitHierarchy" (ExplicitHierarchyProperty -> (Key, Value))
-> Maybe ExplicitHierarchyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ExplicitHierarchyProperty
explicitHierarchy,
Key -> PredefinedHierarchyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"PredefinedHierarchy" (PredefinedHierarchyProperty -> (Key, Value))
-> Maybe PredefinedHierarchyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe PredefinedHierarchyProperty
predefinedHierarchy]))
instance Property "DateTimeHierarchy" ColumnHierarchyProperty where
type PropertyType "DateTimeHierarchy" ColumnHierarchyProperty = DateTimeHierarchyProperty
set :: PropertyType "DateTimeHierarchy" ColumnHierarchyProperty
-> ColumnHierarchyProperty -> ColumnHierarchyProperty
set PropertyType "DateTimeHierarchy" ColumnHierarchyProperty
newValue ColumnHierarchyProperty {Maybe PredefinedHierarchyProperty
Maybe ExplicitHierarchyProperty
Maybe DateTimeHierarchyProperty
()
haddock_workaround_ :: ColumnHierarchyProperty -> ()
dateTimeHierarchy :: ColumnHierarchyProperty -> Maybe DateTimeHierarchyProperty
explicitHierarchy :: ColumnHierarchyProperty -> Maybe ExplicitHierarchyProperty
predefinedHierarchy :: ColumnHierarchyProperty -> Maybe PredefinedHierarchyProperty
haddock_workaround_ :: ()
dateTimeHierarchy :: Maybe DateTimeHierarchyProperty
explicitHierarchy :: Maybe ExplicitHierarchyProperty
predefinedHierarchy :: Maybe PredefinedHierarchyProperty
..}
= ColumnHierarchyProperty
{dateTimeHierarchy :: Maybe DateTimeHierarchyProperty
dateTimeHierarchy = DateTimeHierarchyProperty -> Maybe DateTimeHierarchyProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "DateTimeHierarchy" ColumnHierarchyProperty
DateTimeHierarchyProperty
newValue, Maybe PredefinedHierarchyProperty
Maybe ExplicitHierarchyProperty
()
haddock_workaround_ :: ()
explicitHierarchy :: Maybe ExplicitHierarchyProperty
predefinedHierarchy :: Maybe PredefinedHierarchyProperty
haddock_workaround_ :: ()
explicitHierarchy :: Maybe ExplicitHierarchyProperty
predefinedHierarchy :: Maybe PredefinedHierarchyProperty
..}
instance Property "ExplicitHierarchy" ColumnHierarchyProperty where
type PropertyType "ExplicitHierarchy" ColumnHierarchyProperty = ExplicitHierarchyProperty
set :: PropertyType "ExplicitHierarchy" ColumnHierarchyProperty
-> ColumnHierarchyProperty -> ColumnHierarchyProperty
set PropertyType "ExplicitHierarchy" ColumnHierarchyProperty
newValue ColumnHierarchyProperty {Maybe PredefinedHierarchyProperty
Maybe ExplicitHierarchyProperty
Maybe DateTimeHierarchyProperty
()
haddock_workaround_ :: ColumnHierarchyProperty -> ()
dateTimeHierarchy :: ColumnHierarchyProperty -> Maybe DateTimeHierarchyProperty
explicitHierarchy :: ColumnHierarchyProperty -> Maybe ExplicitHierarchyProperty
predefinedHierarchy :: ColumnHierarchyProperty -> Maybe PredefinedHierarchyProperty
haddock_workaround_ :: ()
dateTimeHierarchy :: Maybe DateTimeHierarchyProperty
explicitHierarchy :: Maybe ExplicitHierarchyProperty
predefinedHierarchy :: Maybe PredefinedHierarchyProperty
..}
= ColumnHierarchyProperty
{explicitHierarchy :: Maybe ExplicitHierarchyProperty
explicitHierarchy = ExplicitHierarchyProperty -> Maybe ExplicitHierarchyProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "ExplicitHierarchy" ColumnHierarchyProperty
ExplicitHierarchyProperty
newValue, Maybe PredefinedHierarchyProperty
Maybe DateTimeHierarchyProperty
()
haddock_workaround_ :: ()
dateTimeHierarchy :: Maybe DateTimeHierarchyProperty
predefinedHierarchy :: Maybe PredefinedHierarchyProperty
haddock_workaround_ :: ()
dateTimeHierarchy :: Maybe DateTimeHierarchyProperty
predefinedHierarchy :: Maybe PredefinedHierarchyProperty
..}
instance Property "PredefinedHierarchy" ColumnHierarchyProperty where
type PropertyType "PredefinedHierarchy" ColumnHierarchyProperty = PredefinedHierarchyProperty
set :: PropertyType "PredefinedHierarchy" ColumnHierarchyProperty
-> ColumnHierarchyProperty -> ColumnHierarchyProperty
set PropertyType "PredefinedHierarchy" ColumnHierarchyProperty
newValue ColumnHierarchyProperty {Maybe PredefinedHierarchyProperty
Maybe ExplicitHierarchyProperty
Maybe DateTimeHierarchyProperty
()
haddock_workaround_ :: ColumnHierarchyProperty -> ()
dateTimeHierarchy :: ColumnHierarchyProperty -> Maybe DateTimeHierarchyProperty
explicitHierarchy :: ColumnHierarchyProperty -> Maybe ExplicitHierarchyProperty
predefinedHierarchy :: ColumnHierarchyProperty -> Maybe PredefinedHierarchyProperty
haddock_workaround_ :: ()
dateTimeHierarchy :: Maybe DateTimeHierarchyProperty
explicitHierarchy :: Maybe ExplicitHierarchyProperty
predefinedHierarchy :: Maybe PredefinedHierarchyProperty
..}
= ColumnHierarchyProperty
{predefinedHierarchy :: Maybe PredefinedHierarchyProperty
predefinedHierarchy = PredefinedHierarchyProperty -> Maybe PredefinedHierarchyProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "PredefinedHierarchy" ColumnHierarchyProperty
PredefinedHierarchyProperty
newValue, Maybe ExplicitHierarchyProperty
Maybe DateTimeHierarchyProperty
()
haddock_workaround_ :: ()
dateTimeHierarchy :: Maybe DateTimeHierarchyProperty
explicitHierarchy :: Maybe ExplicitHierarchyProperty
haddock_workaround_ :: ()
dateTimeHierarchy :: Maybe DateTimeHierarchyProperty
explicitHierarchy :: Maybe ExplicitHierarchyProperty
..}