module Stratosphere.QuickSight.Analysis.CustomActionFilterOperationProperty (
        module Exports, CustomActionFilterOperationProperty(..),
        mkCustomActionFilterOperationProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.QuickSight.Analysis.FilterOperationSelectedFieldsConfigurationProperty as Exports
import {-# SOURCE #-} Stratosphere.QuickSight.Analysis.FilterOperationTargetVisualsConfigurationProperty as Exports
import Stratosphere.ResourceProperties
data CustomActionFilterOperationProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-customactionfilteroperation.html>
    CustomActionFilterOperationProperty {CustomActionFilterOperationProperty -> ()
haddock_workaround_ :: (),
                                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-customactionfilteroperation.html#cfn-quicksight-analysis-customactionfilteroperation-selectedfieldsconfiguration>
                                         CustomActionFilterOperationProperty
-> FilterOperationSelectedFieldsConfigurationProperty
selectedFieldsConfiguration :: FilterOperationSelectedFieldsConfigurationProperty,
                                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-customactionfilteroperation.html#cfn-quicksight-analysis-customactionfilteroperation-targetvisualsconfiguration>
                                         CustomActionFilterOperationProperty
-> FilterOperationTargetVisualsConfigurationProperty
targetVisualsConfiguration :: FilterOperationTargetVisualsConfigurationProperty}
  deriving stock (CustomActionFilterOperationProperty
-> CustomActionFilterOperationProperty -> Bool
(CustomActionFilterOperationProperty
 -> CustomActionFilterOperationProperty -> Bool)
-> (CustomActionFilterOperationProperty
    -> CustomActionFilterOperationProperty -> Bool)
-> Eq CustomActionFilterOperationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: CustomActionFilterOperationProperty
-> CustomActionFilterOperationProperty -> Bool
== :: CustomActionFilterOperationProperty
-> CustomActionFilterOperationProperty -> Bool
$c/= :: CustomActionFilterOperationProperty
-> CustomActionFilterOperationProperty -> Bool
/= :: CustomActionFilterOperationProperty
-> CustomActionFilterOperationProperty -> Bool
Prelude.Eq, Int -> CustomActionFilterOperationProperty -> ShowS
[CustomActionFilterOperationProperty] -> ShowS
CustomActionFilterOperationProperty -> String
(Int -> CustomActionFilterOperationProperty -> ShowS)
-> (CustomActionFilterOperationProperty -> String)
-> ([CustomActionFilterOperationProperty] -> ShowS)
-> Show CustomActionFilterOperationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CustomActionFilterOperationProperty -> ShowS
showsPrec :: Int -> CustomActionFilterOperationProperty -> ShowS
$cshow :: CustomActionFilterOperationProperty -> String
show :: CustomActionFilterOperationProperty -> String
$cshowList :: [CustomActionFilterOperationProperty] -> ShowS
showList :: [CustomActionFilterOperationProperty] -> ShowS
Prelude.Show)
mkCustomActionFilterOperationProperty ::
  FilterOperationSelectedFieldsConfigurationProperty
  -> FilterOperationTargetVisualsConfigurationProperty
     -> CustomActionFilterOperationProperty
mkCustomActionFilterOperationProperty :: FilterOperationSelectedFieldsConfigurationProperty
-> FilterOperationTargetVisualsConfigurationProperty
-> CustomActionFilterOperationProperty
mkCustomActionFilterOperationProperty
  FilterOperationSelectedFieldsConfigurationProperty
selectedFieldsConfiguration
  FilterOperationTargetVisualsConfigurationProperty
targetVisualsConfiguration
  = CustomActionFilterOperationProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (),
       selectedFieldsConfiguration :: FilterOperationSelectedFieldsConfigurationProperty
selectedFieldsConfiguration = FilterOperationSelectedFieldsConfigurationProperty
selectedFieldsConfiguration,
       targetVisualsConfiguration :: FilterOperationTargetVisualsConfigurationProperty
targetVisualsConfiguration = FilterOperationTargetVisualsConfigurationProperty
targetVisualsConfiguration}
instance ToResourceProperties CustomActionFilterOperationProperty where
  toResourceProperties :: CustomActionFilterOperationProperty -> ResourceProperties
toResourceProperties CustomActionFilterOperationProperty {()
FilterOperationSelectedFieldsConfigurationProperty
FilterOperationTargetVisualsConfigurationProperty
haddock_workaround_ :: CustomActionFilterOperationProperty -> ()
selectedFieldsConfiguration :: CustomActionFilterOperationProperty
-> FilterOperationSelectedFieldsConfigurationProperty
targetVisualsConfiguration :: CustomActionFilterOperationProperty
-> FilterOperationTargetVisualsConfigurationProperty
haddock_workaround_ :: ()
selectedFieldsConfiguration :: FilterOperationSelectedFieldsConfigurationProperty
targetVisualsConfiguration :: FilterOperationTargetVisualsConfigurationProperty
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::QuickSight::Analysis.CustomActionFilterOperation",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"SelectedFieldsConfiguration"
                         Key
-> FilterOperationSelectedFieldsConfigurationProperty
-> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= FilterOperationSelectedFieldsConfigurationProperty
selectedFieldsConfiguration,
                       Key
"TargetVisualsConfiguration" Key
-> FilterOperationTargetVisualsConfigurationProperty
-> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= FilterOperationTargetVisualsConfigurationProperty
targetVisualsConfiguration]}
instance JSON.ToJSON CustomActionFilterOperationProperty where
  toJSON :: CustomActionFilterOperationProperty -> Value
toJSON CustomActionFilterOperationProperty {()
FilterOperationSelectedFieldsConfigurationProperty
FilterOperationTargetVisualsConfigurationProperty
haddock_workaround_ :: CustomActionFilterOperationProperty -> ()
selectedFieldsConfiguration :: CustomActionFilterOperationProperty
-> FilterOperationSelectedFieldsConfigurationProperty
targetVisualsConfiguration :: CustomActionFilterOperationProperty
-> FilterOperationTargetVisualsConfigurationProperty
haddock_workaround_ :: ()
selectedFieldsConfiguration :: FilterOperationSelectedFieldsConfigurationProperty
targetVisualsConfiguration :: FilterOperationTargetVisualsConfigurationProperty
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"SelectedFieldsConfiguration" Key
-> FilterOperationSelectedFieldsConfigurationProperty
-> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= FilterOperationSelectedFieldsConfigurationProperty
selectedFieldsConfiguration,
         Key
"TargetVisualsConfiguration" Key
-> FilterOperationTargetVisualsConfigurationProperty
-> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= FilterOperationTargetVisualsConfigurationProperty
targetVisualsConfiguration]
instance Property "SelectedFieldsConfiguration" CustomActionFilterOperationProperty where
  type PropertyType "SelectedFieldsConfiguration" CustomActionFilterOperationProperty = FilterOperationSelectedFieldsConfigurationProperty
  set :: PropertyType
  "SelectedFieldsConfiguration" CustomActionFilterOperationProperty
-> CustomActionFilterOperationProperty
-> CustomActionFilterOperationProperty
set PropertyType
  "SelectedFieldsConfiguration" CustomActionFilterOperationProperty
newValue CustomActionFilterOperationProperty {()
FilterOperationSelectedFieldsConfigurationProperty
FilterOperationTargetVisualsConfigurationProperty
haddock_workaround_ :: CustomActionFilterOperationProperty -> ()
selectedFieldsConfiguration :: CustomActionFilterOperationProperty
-> FilterOperationSelectedFieldsConfigurationProperty
targetVisualsConfiguration :: CustomActionFilterOperationProperty
-> FilterOperationTargetVisualsConfigurationProperty
haddock_workaround_ :: ()
selectedFieldsConfiguration :: FilterOperationSelectedFieldsConfigurationProperty
targetVisualsConfiguration :: FilterOperationTargetVisualsConfigurationProperty
..}
    = CustomActionFilterOperationProperty
        {selectedFieldsConfiguration :: FilterOperationSelectedFieldsConfigurationProperty
selectedFieldsConfiguration = PropertyType
  "SelectedFieldsConfiguration" CustomActionFilterOperationProperty
FilterOperationSelectedFieldsConfigurationProperty
newValue, ()
FilterOperationTargetVisualsConfigurationProperty
haddock_workaround_ :: ()
targetVisualsConfiguration :: FilterOperationTargetVisualsConfigurationProperty
haddock_workaround_ :: ()
targetVisualsConfiguration :: FilterOperationTargetVisualsConfigurationProperty
..}
instance Property "TargetVisualsConfiguration" CustomActionFilterOperationProperty where
  type PropertyType "TargetVisualsConfiguration" CustomActionFilterOperationProperty = FilterOperationTargetVisualsConfigurationProperty
  set :: PropertyType
  "TargetVisualsConfiguration" CustomActionFilterOperationProperty
-> CustomActionFilterOperationProperty
-> CustomActionFilterOperationProperty
set PropertyType
  "TargetVisualsConfiguration" CustomActionFilterOperationProperty
newValue CustomActionFilterOperationProperty {()
FilterOperationSelectedFieldsConfigurationProperty
FilterOperationTargetVisualsConfigurationProperty
haddock_workaround_ :: CustomActionFilterOperationProperty -> ()
selectedFieldsConfiguration :: CustomActionFilterOperationProperty
-> FilterOperationSelectedFieldsConfigurationProperty
targetVisualsConfiguration :: CustomActionFilterOperationProperty
-> FilterOperationTargetVisualsConfigurationProperty
haddock_workaround_ :: ()
selectedFieldsConfiguration :: FilterOperationSelectedFieldsConfigurationProperty
targetVisualsConfiguration :: FilterOperationTargetVisualsConfigurationProperty
..}
    = CustomActionFilterOperationProperty
        {targetVisualsConfiguration :: FilterOperationTargetVisualsConfigurationProperty
targetVisualsConfiguration = PropertyType
  "TargetVisualsConfiguration" CustomActionFilterOperationProperty
FilterOperationTargetVisualsConfigurationProperty
newValue, ()
FilterOperationSelectedFieldsConfigurationProperty
haddock_workaround_ :: ()
selectedFieldsConfiguration :: FilterOperationSelectedFieldsConfigurationProperty
haddock_workaround_ :: ()
selectedFieldsConfiguration :: FilterOperationSelectedFieldsConfigurationProperty
..}