module Stratosphere.QuickSight.Dashboard.DataPathLabelTypeProperty ( DataPathLabelTypeProperty(..), mkDataPathLabelTypeProperty ) where import qualified Data.Aeson as JSON import qualified Stratosphere.Prelude as Prelude import Stratosphere.Property import Stratosphere.ResourceProperties import Stratosphere.Value data DataPathLabelTypeProperty = -- | See: DataPathLabelTypeProperty {haddock_workaround_ :: (), -- | See: fieldId :: (Prelude.Maybe (Value Prelude.Text)), -- | See: fieldValue :: (Prelude.Maybe (Value Prelude.Text)), -- | See: visibility :: (Prelude.Maybe (Value Prelude.Text))} deriving stock (Prelude.Eq, Prelude.Show) mkDataPathLabelTypeProperty :: DataPathLabelTypeProperty mkDataPathLabelTypeProperty = DataPathLabelTypeProperty {haddock_workaround_ = (), fieldId = Prelude.Nothing, fieldValue = Prelude.Nothing, visibility = Prelude.Nothing} instance ToResourceProperties DataPathLabelTypeProperty where toResourceProperties DataPathLabelTypeProperty {..} = ResourceProperties {awsType = "AWS::QuickSight::Dashboard.DataPathLabelType", supportsTags = Prelude.False, properties = Prelude.fromList (Prelude.catMaybes [(JSON..=) "FieldId" Prelude.<$> fieldId, (JSON..=) "FieldValue" Prelude.<$> fieldValue, (JSON..=) "Visibility" Prelude.<$> visibility])} instance JSON.ToJSON DataPathLabelTypeProperty where toJSON DataPathLabelTypeProperty {..} = JSON.object (Prelude.fromList (Prelude.catMaybes [(JSON..=) "FieldId" Prelude.<$> fieldId, (JSON..=) "FieldValue" Prelude.<$> fieldValue, (JSON..=) "Visibility" Prelude.<$> visibility])) instance Property "FieldId" DataPathLabelTypeProperty where type PropertyType "FieldId" DataPathLabelTypeProperty = Value Prelude.Text set newValue DataPathLabelTypeProperty {..} = DataPathLabelTypeProperty {fieldId = Prelude.pure newValue, ..} instance Property "FieldValue" DataPathLabelTypeProperty where type PropertyType "FieldValue" DataPathLabelTypeProperty = Value Prelude.Text set newValue DataPathLabelTypeProperty {..} = DataPathLabelTypeProperty {fieldValue = Prelude.pure newValue, ..} instance Property "Visibility" DataPathLabelTypeProperty where type PropertyType "Visibility" DataPathLabelTypeProperty = Value Prelude.Text set newValue DataPathLabelTypeProperty {..} = DataPathLabelTypeProperty {visibility = Prelude.pure newValue, ..}