{-# 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.NumericRangeFilter 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.AggregationFunction
import Amazonka.QuickSight.Types.ColumnIdentifier
import Amazonka.QuickSight.Types.FilterNullOption
import Amazonka.QuickSight.Types.NumericFilterSelectAllOptions
import Amazonka.QuickSight.Types.NumericRangeFilterValue
data NumericRangeFilter = NumericRangeFilter'
{
NumericRangeFilter -> Maybe AggregationFunction
aggregationFunction :: Prelude.Maybe AggregationFunction,
NumericRangeFilter -> Maybe Bool
includeMaximum :: Prelude.Maybe Prelude.Bool,
NumericRangeFilter -> Maybe Bool
includeMinimum :: Prelude.Maybe Prelude.Bool,
NumericRangeFilter -> Maybe NumericRangeFilterValue
rangeMaximum :: Prelude.Maybe NumericRangeFilterValue,
NumericRangeFilter -> Maybe NumericRangeFilterValue
rangeMinimum :: Prelude.Maybe NumericRangeFilterValue,
NumericRangeFilter -> Maybe NumericFilterSelectAllOptions
selectAllOptions :: Prelude.Maybe NumericFilterSelectAllOptions,
NumericRangeFilter -> Text
filterId :: Prelude.Text,
NumericRangeFilter -> ColumnIdentifier
column :: ColumnIdentifier,
NumericRangeFilter -> FilterNullOption
nullOption :: FilterNullOption
}
deriving (NumericRangeFilter -> NumericRangeFilter -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NumericRangeFilter -> NumericRangeFilter -> Bool
$c/= :: NumericRangeFilter -> NumericRangeFilter -> Bool
== :: NumericRangeFilter -> NumericRangeFilter -> Bool
$c== :: NumericRangeFilter -> NumericRangeFilter -> Bool
Prelude.Eq, ReadPrec [NumericRangeFilter]
ReadPrec NumericRangeFilter
Int -> ReadS NumericRangeFilter
ReadS [NumericRangeFilter]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NumericRangeFilter]
$creadListPrec :: ReadPrec [NumericRangeFilter]
readPrec :: ReadPrec NumericRangeFilter
$creadPrec :: ReadPrec NumericRangeFilter
readList :: ReadS [NumericRangeFilter]
$creadList :: ReadS [NumericRangeFilter]
readsPrec :: Int -> ReadS NumericRangeFilter
$creadsPrec :: Int -> ReadS NumericRangeFilter
Prelude.Read, Int -> NumericRangeFilter -> ShowS
[NumericRangeFilter] -> ShowS
NumericRangeFilter -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NumericRangeFilter] -> ShowS
$cshowList :: [NumericRangeFilter] -> ShowS
show :: NumericRangeFilter -> String
$cshow :: NumericRangeFilter -> String
showsPrec :: Int -> NumericRangeFilter -> ShowS
$cshowsPrec :: Int -> NumericRangeFilter -> ShowS
Prelude.Show, forall x. Rep NumericRangeFilter x -> NumericRangeFilter
forall x. NumericRangeFilter -> Rep NumericRangeFilter x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep NumericRangeFilter x -> NumericRangeFilter
$cfrom :: forall x. NumericRangeFilter -> Rep NumericRangeFilter x
Prelude.Generic)
newNumericRangeFilter ::
Prelude.Text ->
ColumnIdentifier ->
FilterNullOption ->
NumericRangeFilter
newNumericRangeFilter :: Text -> ColumnIdentifier -> FilterNullOption -> NumericRangeFilter
newNumericRangeFilter
Text
pFilterId_
ColumnIdentifier
pColumn_
FilterNullOption
pNullOption_ =
NumericRangeFilter'
{ $sel:aggregationFunction:NumericRangeFilter' :: Maybe AggregationFunction
aggregationFunction =
forall a. Maybe a
Prelude.Nothing,
$sel:includeMaximum:NumericRangeFilter' :: Maybe Bool
includeMaximum = forall a. Maybe a
Prelude.Nothing,
$sel:includeMinimum:NumericRangeFilter' :: Maybe Bool
includeMinimum = forall a. Maybe a
Prelude.Nothing,
$sel:rangeMaximum:NumericRangeFilter' :: Maybe NumericRangeFilterValue
rangeMaximum = forall a. Maybe a
Prelude.Nothing,
$sel:rangeMinimum:NumericRangeFilter' :: Maybe NumericRangeFilterValue
rangeMinimum = forall a. Maybe a
Prelude.Nothing,
$sel:selectAllOptions:NumericRangeFilter' :: Maybe NumericFilterSelectAllOptions
selectAllOptions = forall a. Maybe a
Prelude.Nothing,
$sel:filterId:NumericRangeFilter' :: Text
filterId = Text
pFilterId_,
$sel:column:NumericRangeFilter' :: ColumnIdentifier
column = ColumnIdentifier
pColumn_,
$sel:nullOption:NumericRangeFilter' :: FilterNullOption
nullOption = FilterNullOption
pNullOption_
}
numericRangeFilter_aggregationFunction :: Lens.Lens' NumericRangeFilter (Prelude.Maybe AggregationFunction)
numericRangeFilter_aggregationFunction :: Lens' NumericRangeFilter (Maybe AggregationFunction)
numericRangeFilter_aggregationFunction = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\NumericRangeFilter' {Maybe AggregationFunction
aggregationFunction :: Maybe AggregationFunction
$sel:aggregationFunction:NumericRangeFilter' :: NumericRangeFilter -> Maybe AggregationFunction
aggregationFunction} -> Maybe AggregationFunction
aggregationFunction) (\s :: NumericRangeFilter
s@NumericRangeFilter' {} Maybe AggregationFunction
a -> NumericRangeFilter
s {$sel:aggregationFunction:NumericRangeFilter' :: Maybe AggregationFunction
aggregationFunction = Maybe AggregationFunction
a} :: NumericRangeFilter)
numericRangeFilter_includeMaximum :: Lens.Lens' NumericRangeFilter (Prelude.Maybe Prelude.Bool)
numericRangeFilter_includeMaximum :: Lens' NumericRangeFilter (Maybe Bool)
numericRangeFilter_includeMaximum = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\NumericRangeFilter' {Maybe Bool
includeMaximum :: Maybe Bool
$sel:includeMaximum:NumericRangeFilter' :: NumericRangeFilter -> Maybe Bool
includeMaximum} -> Maybe Bool
includeMaximum) (\s :: NumericRangeFilter
s@NumericRangeFilter' {} Maybe Bool
a -> NumericRangeFilter
s {$sel:includeMaximum:NumericRangeFilter' :: Maybe Bool
includeMaximum = Maybe Bool
a} :: NumericRangeFilter)
numericRangeFilter_includeMinimum :: Lens.Lens' NumericRangeFilter (Prelude.Maybe Prelude.Bool)
numericRangeFilter_includeMinimum :: Lens' NumericRangeFilter (Maybe Bool)
numericRangeFilter_includeMinimum = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\NumericRangeFilter' {Maybe Bool
includeMinimum :: Maybe Bool
$sel:includeMinimum:NumericRangeFilter' :: NumericRangeFilter -> Maybe Bool
includeMinimum} -> Maybe Bool
includeMinimum) (\s :: NumericRangeFilter
s@NumericRangeFilter' {} Maybe Bool
a -> NumericRangeFilter
s {$sel:includeMinimum:NumericRangeFilter' :: Maybe Bool
includeMinimum = Maybe Bool
a} :: NumericRangeFilter)
numericRangeFilter_rangeMaximum :: Lens.Lens' NumericRangeFilter (Prelude.Maybe NumericRangeFilterValue)
numericRangeFilter_rangeMaximum :: Lens' NumericRangeFilter (Maybe NumericRangeFilterValue)
numericRangeFilter_rangeMaximum = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\NumericRangeFilter' {Maybe NumericRangeFilterValue
rangeMaximum :: Maybe NumericRangeFilterValue
$sel:rangeMaximum:NumericRangeFilter' :: NumericRangeFilter -> Maybe NumericRangeFilterValue
rangeMaximum} -> Maybe NumericRangeFilterValue
rangeMaximum) (\s :: NumericRangeFilter
s@NumericRangeFilter' {} Maybe NumericRangeFilterValue
a -> NumericRangeFilter
s {$sel:rangeMaximum:NumericRangeFilter' :: Maybe NumericRangeFilterValue
rangeMaximum = Maybe NumericRangeFilterValue
a} :: NumericRangeFilter)
numericRangeFilter_rangeMinimum :: Lens.Lens' NumericRangeFilter (Prelude.Maybe NumericRangeFilterValue)
numericRangeFilter_rangeMinimum :: Lens' NumericRangeFilter (Maybe NumericRangeFilterValue)
numericRangeFilter_rangeMinimum = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\NumericRangeFilter' {Maybe NumericRangeFilterValue
rangeMinimum :: Maybe NumericRangeFilterValue
$sel:rangeMinimum:NumericRangeFilter' :: NumericRangeFilter -> Maybe NumericRangeFilterValue
rangeMinimum} -> Maybe NumericRangeFilterValue
rangeMinimum) (\s :: NumericRangeFilter
s@NumericRangeFilter' {} Maybe NumericRangeFilterValue
a -> NumericRangeFilter
s {$sel:rangeMinimum:NumericRangeFilter' :: Maybe NumericRangeFilterValue
rangeMinimum = Maybe NumericRangeFilterValue
a} :: NumericRangeFilter)
numericRangeFilter_selectAllOptions :: Lens.Lens' NumericRangeFilter (Prelude.Maybe NumericFilterSelectAllOptions)
numericRangeFilter_selectAllOptions :: Lens' NumericRangeFilter (Maybe NumericFilterSelectAllOptions)
numericRangeFilter_selectAllOptions = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\NumericRangeFilter' {Maybe NumericFilterSelectAllOptions
selectAllOptions :: Maybe NumericFilterSelectAllOptions
$sel:selectAllOptions:NumericRangeFilter' :: NumericRangeFilter -> Maybe NumericFilterSelectAllOptions
selectAllOptions} -> Maybe NumericFilterSelectAllOptions
selectAllOptions) (\s :: NumericRangeFilter
s@NumericRangeFilter' {} Maybe NumericFilterSelectAllOptions
a -> NumericRangeFilter
s {$sel:selectAllOptions:NumericRangeFilter' :: Maybe NumericFilterSelectAllOptions
selectAllOptions = Maybe NumericFilterSelectAllOptions
a} :: NumericRangeFilter)
numericRangeFilter_filterId :: Lens.Lens' NumericRangeFilter Prelude.Text
numericRangeFilter_filterId :: Lens' NumericRangeFilter Text
numericRangeFilter_filterId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\NumericRangeFilter' {Text
filterId :: Text
$sel:filterId:NumericRangeFilter' :: NumericRangeFilter -> Text
filterId} -> Text
filterId) (\s :: NumericRangeFilter
s@NumericRangeFilter' {} Text
a -> NumericRangeFilter
s {$sel:filterId:NumericRangeFilter' :: Text
filterId = Text
a} :: NumericRangeFilter)
numericRangeFilter_column :: Lens.Lens' NumericRangeFilter ColumnIdentifier
numericRangeFilter_column :: Lens' NumericRangeFilter ColumnIdentifier
numericRangeFilter_column = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\NumericRangeFilter' {ColumnIdentifier
column :: ColumnIdentifier
$sel:column:NumericRangeFilter' :: NumericRangeFilter -> ColumnIdentifier
column} -> ColumnIdentifier
column) (\s :: NumericRangeFilter
s@NumericRangeFilter' {} ColumnIdentifier
a -> NumericRangeFilter
s {$sel:column:NumericRangeFilter' :: ColumnIdentifier
column = ColumnIdentifier
a} :: NumericRangeFilter)
numericRangeFilter_nullOption :: Lens.Lens' NumericRangeFilter FilterNullOption
numericRangeFilter_nullOption :: Lens' NumericRangeFilter FilterNullOption
numericRangeFilter_nullOption = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\NumericRangeFilter' {FilterNullOption
nullOption :: FilterNullOption
$sel:nullOption:NumericRangeFilter' :: NumericRangeFilter -> FilterNullOption
nullOption} -> FilterNullOption
nullOption) (\s :: NumericRangeFilter
s@NumericRangeFilter' {} FilterNullOption
a -> NumericRangeFilter
s {$sel:nullOption:NumericRangeFilter' :: FilterNullOption
nullOption = FilterNullOption
a} :: NumericRangeFilter)
instance Data.FromJSON NumericRangeFilter where
parseJSON :: Value -> Parser NumericRangeFilter
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"NumericRangeFilter"
( \Object
x ->
Maybe AggregationFunction
-> Maybe Bool
-> Maybe Bool
-> Maybe NumericRangeFilterValue
-> Maybe NumericRangeFilterValue
-> Maybe NumericFilterSelectAllOptions
-> Text
-> ColumnIdentifier
-> FilterNullOption
-> NumericRangeFilter
NumericRangeFilter'
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
"AggregationFunction")
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
"IncludeMaximum")
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
"IncludeMinimum")
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
"RangeMaximum")
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
"RangeMinimum")
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
"SelectAllOptions")
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
"FilterId")
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
"Column")
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
"NullOption")
)
instance Prelude.Hashable NumericRangeFilter where
hashWithSalt :: Int -> NumericRangeFilter -> Int
hashWithSalt Int
_salt NumericRangeFilter' {Maybe Bool
Maybe NumericFilterSelectAllOptions
Maybe NumericRangeFilterValue
Maybe AggregationFunction
Text
ColumnIdentifier
FilterNullOption
nullOption :: FilterNullOption
column :: ColumnIdentifier
filterId :: Text
selectAllOptions :: Maybe NumericFilterSelectAllOptions
rangeMinimum :: Maybe NumericRangeFilterValue
rangeMaximum :: Maybe NumericRangeFilterValue
includeMinimum :: Maybe Bool
includeMaximum :: Maybe Bool
aggregationFunction :: Maybe AggregationFunction
$sel:nullOption:NumericRangeFilter' :: NumericRangeFilter -> FilterNullOption
$sel:column:NumericRangeFilter' :: NumericRangeFilter -> ColumnIdentifier
$sel:filterId:NumericRangeFilter' :: NumericRangeFilter -> Text
$sel:selectAllOptions:NumericRangeFilter' :: NumericRangeFilter -> Maybe NumericFilterSelectAllOptions
$sel:rangeMinimum:NumericRangeFilter' :: NumericRangeFilter -> Maybe NumericRangeFilterValue
$sel:rangeMaximum:NumericRangeFilter' :: NumericRangeFilter -> Maybe NumericRangeFilterValue
$sel:includeMinimum:NumericRangeFilter' :: NumericRangeFilter -> Maybe Bool
$sel:includeMaximum:NumericRangeFilter' :: NumericRangeFilter -> Maybe Bool
$sel:aggregationFunction:NumericRangeFilter' :: NumericRangeFilter -> Maybe AggregationFunction
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe AggregationFunction
aggregationFunction
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
includeMaximum
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
includeMinimum
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe NumericRangeFilterValue
rangeMaximum
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe NumericRangeFilterValue
rangeMinimum
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe NumericFilterSelectAllOptions
selectAllOptions
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
filterId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` ColumnIdentifier
column
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` FilterNullOption
nullOption
instance Prelude.NFData NumericRangeFilter where
rnf :: NumericRangeFilter -> ()
rnf NumericRangeFilter' {Maybe Bool
Maybe NumericFilterSelectAllOptions
Maybe NumericRangeFilterValue
Maybe AggregationFunction
Text
ColumnIdentifier
FilterNullOption
nullOption :: FilterNullOption
column :: ColumnIdentifier
filterId :: Text
selectAllOptions :: Maybe NumericFilterSelectAllOptions
rangeMinimum :: Maybe NumericRangeFilterValue
rangeMaximum :: Maybe NumericRangeFilterValue
includeMinimum :: Maybe Bool
includeMaximum :: Maybe Bool
aggregationFunction :: Maybe AggregationFunction
$sel:nullOption:NumericRangeFilter' :: NumericRangeFilter -> FilterNullOption
$sel:column:NumericRangeFilter' :: NumericRangeFilter -> ColumnIdentifier
$sel:filterId:NumericRangeFilter' :: NumericRangeFilter -> Text
$sel:selectAllOptions:NumericRangeFilter' :: NumericRangeFilter -> Maybe NumericFilterSelectAllOptions
$sel:rangeMinimum:NumericRangeFilter' :: NumericRangeFilter -> Maybe NumericRangeFilterValue
$sel:rangeMaximum:NumericRangeFilter' :: NumericRangeFilter -> Maybe NumericRangeFilterValue
$sel:includeMinimum:NumericRangeFilter' :: NumericRangeFilter -> Maybe Bool
$sel:includeMaximum:NumericRangeFilter' :: NumericRangeFilter -> Maybe Bool
$sel:aggregationFunction:NumericRangeFilter' :: NumericRangeFilter -> Maybe AggregationFunction
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe AggregationFunction
aggregationFunction
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
includeMaximum
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
includeMinimum
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe NumericRangeFilterValue
rangeMaximum
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe NumericRangeFilterValue
rangeMinimum
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe NumericFilterSelectAllOptions
selectAllOptions
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
filterId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf ColumnIdentifier
column
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf FilterNullOption
nullOption
instance Data.ToJSON NumericRangeFilter where
toJSON :: NumericRangeFilter -> Value
toJSON NumericRangeFilter' {Maybe Bool
Maybe NumericFilterSelectAllOptions
Maybe NumericRangeFilterValue
Maybe AggregationFunction
Text
ColumnIdentifier
FilterNullOption
nullOption :: FilterNullOption
column :: ColumnIdentifier
filterId :: Text
selectAllOptions :: Maybe NumericFilterSelectAllOptions
rangeMinimum :: Maybe NumericRangeFilterValue
rangeMaximum :: Maybe NumericRangeFilterValue
includeMinimum :: Maybe Bool
includeMaximum :: Maybe Bool
aggregationFunction :: Maybe AggregationFunction
$sel:nullOption:NumericRangeFilter' :: NumericRangeFilter -> FilterNullOption
$sel:column:NumericRangeFilter' :: NumericRangeFilter -> ColumnIdentifier
$sel:filterId:NumericRangeFilter' :: NumericRangeFilter -> Text
$sel:selectAllOptions:NumericRangeFilter' :: NumericRangeFilter -> Maybe NumericFilterSelectAllOptions
$sel:rangeMinimum:NumericRangeFilter' :: NumericRangeFilter -> Maybe NumericRangeFilterValue
$sel:rangeMaximum:NumericRangeFilter' :: NumericRangeFilter -> Maybe NumericRangeFilterValue
$sel:includeMinimum:NumericRangeFilter' :: NumericRangeFilter -> Maybe Bool
$sel:includeMaximum:NumericRangeFilter' :: NumericRangeFilter -> Maybe Bool
$sel:aggregationFunction:NumericRangeFilter' :: NumericRangeFilter -> Maybe AggregationFunction
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"AggregationFunction" 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 AggregationFunction
aggregationFunction,
(Key
"IncludeMaximum" 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 Bool
includeMaximum,
(Key
"IncludeMinimum" 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 Bool
includeMinimum,
(Key
"RangeMaximum" 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 NumericRangeFilterValue
rangeMaximum,
(Key
"RangeMinimum" 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 NumericRangeFilterValue
rangeMinimum,
(Key
"SelectAllOptions" 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 NumericFilterSelectAllOptions
selectAllOptions,
forall a. a -> Maybe a
Prelude.Just (Key
"FilterId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
filterId),
forall a. a -> Maybe a
Prelude.Just (Key
"Column" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= ColumnIdentifier
column),
forall a. a -> Maybe a
Prelude.Just (Key
"NullOption" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= FilterNullOption
nullOption)
]
)