module OryKratos.Types.Settings
  ( SettingsFlow (..),
    SettingsViaApiResponse (..),
    SubmitSelfServiceBrowserSettingsOIDCFlowPayload (..),
    SubmitSelfServiceSettingsFlowWithPasswordMethod (..),
  )
where

import OryKratos.Types.Misc (Identity)
import OryKratos.Types.Ui (UiContainer)
import Pre

-- | This flow is used when an identity wants to update settings (e.g. profile data, passwords, ...) in a selfservice manner.  We recommend reading the [User Settings Documentation](../self-service/flows/user-settings)
data SettingsFlow = SettingsFlow
  { -- | Active, if set, contains the registration method that is being used. It is initially not set.
    SettingsFlow -> Maybe Text
active :: Maybe Text,
    -- | ExpiresAt is the time (UTC) when the flow expires. If the user still wishes to update the setting, a new flow has to be initiated.
    SettingsFlow -> UTCTime
expires_at :: UTCTime,
    -- |
    SettingsFlow -> Text
id :: Text,
    -- |
    SettingsFlow -> Identity
identity :: Identity,
    -- | IssuedAt is the time (UTC) when the flow occurred.
    SettingsFlow -> UTCTime
issued_at :: UTCTime,
    -- | RequestURL is the initial URL that was requested from Ory Kratos. It can be used to forward information contained in the URL's path or query for example.
    SettingsFlow -> Text
request_url :: Text,
    -- |
    SettingsFlow -> Text
state :: Text,
    -- | The flow type can either be `api` or `browser`.
    SettingsFlow -> Maybe Text
_type :: Maybe Text,
    -- |
    SettingsFlow -> UiContainer
ui :: UiContainer
  }
  deriving stock (Int -> SettingsFlow -> ShowS
[SettingsFlow] -> ShowS
SettingsFlow -> String
(Int -> SettingsFlow -> ShowS)
-> (SettingsFlow -> String)
-> ([SettingsFlow] -> ShowS)
-> Show SettingsFlow
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SettingsFlow] -> ShowS
$cshowList :: [SettingsFlow] -> ShowS
show :: SettingsFlow -> String
$cshow :: SettingsFlow -> String
showsPrec :: Int -> SettingsFlow -> ShowS
$cshowsPrec :: Int -> SettingsFlow -> ShowS
Show, SettingsFlow -> SettingsFlow -> Bool
(SettingsFlow -> SettingsFlow -> Bool)
-> (SettingsFlow -> SettingsFlow -> Bool) -> Eq SettingsFlow
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SettingsFlow -> SettingsFlow -> Bool
$c/= :: SettingsFlow -> SettingsFlow -> Bool
== :: SettingsFlow -> SettingsFlow -> Bool
$c== :: SettingsFlow -> SettingsFlow -> Bool
Eq, (forall x. SettingsFlow -> Rep SettingsFlow x)
-> (forall x. Rep SettingsFlow x -> SettingsFlow)
-> Generic SettingsFlow
forall x. Rep SettingsFlow x -> SettingsFlow
forall x. SettingsFlow -> Rep SettingsFlow x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep SettingsFlow x -> SettingsFlow
$cfrom :: forall x. SettingsFlow -> Rep SettingsFlow x
Generic, Typeable SettingsFlow
DataType
Constr
Typeable SettingsFlow
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> SettingsFlow -> c SettingsFlow)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c SettingsFlow)
-> (SettingsFlow -> Constr)
-> (SettingsFlow -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c SettingsFlow))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e))
    -> Maybe (c SettingsFlow))
-> ((forall b. Data b => b -> b) -> SettingsFlow -> SettingsFlow)
-> (forall r r'.
    (r -> r' -> r)
    -> r -> (forall d. Data d => d -> r') -> SettingsFlow -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r -> (forall d. Data d => d -> r') -> SettingsFlow -> r)
-> (forall u. (forall d. Data d => d -> u) -> SettingsFlow -> [u])
-> (forall u.
    Int -> (forall d. Data d => d -> u) -> SettingsFlow -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> SettingsFlow -> m SettingsFlow)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> SettingsFlow -> m SettingsFlow)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> SettingsFlow -> m SettingsFlow)
-> Data SettingsFlow
SettingsFlow -> DataType
SettingsFlow -> Constr
(forall b. Data b => b -> b) -> SettingsFlow -> SettingsFlow
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> SettingsFlow -> c SettingsFlow
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c SettingsFlow
forall a.
Typeable a
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
    (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
    (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u. Int -> (forall d. Data d => d -> u) -> SettingsFlow -> u
forall u. (forall d. Data d => d -> u) -> SettingsFlow -> [u]
forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> SettingsFlow -> r
forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> SettingsFlow -> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> SettingsFlow -> m SettingsFlow
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> SettingsFlow -> m SettingsFlow
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c SettingsFlow
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> SettingsFlow -> c SettingsFlow
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c SettingsFlow)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c SettingsFlow)
$cSettingsFlow :: Constr
$tSettingsFlow :: DataType
gmapMo :: (forall d. Data d => d -> m d) -> SettingsFlow -> m SettingsFlow
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> SettingsFlow -> m SettingsFlow
gmapMp :: (forall d. Data d => d -> m d) -> SettingsFlow -> m SettingsFlow
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d) -> SettingsFlow -> m SettingsFlow
gmapM :: (forall d. Data d => d -> m d) -> SettingsFlow -> m SettingsFlow
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d) -> SettingsFlow -> m SettingsFlow
gmapQi :: Int -> (forall d. Data d => d -> u) -> SettingsFlow -> u
$cgmapQi :: forall u. Int -> (forall d. Data d => d -> u) -> SettingsFlow -> u
gmapQ :: (forall d. Data d => d -> u) -> SettingsFlow -> [u]
$cgmapQ :: forall u. (forall d. Data d => d -> u) -> SettingsFlow -> [u]
gmapQr :: (r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> SettingsFlow -> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r -> (forall d. Data d => d -> r') -> SettingsFlow -> r
gmapQl :: (r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> SettingsFlow -> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r -> (forall d. Data d => d -> r') -> SettingsFlow -> r
gmapT :: (forall b. Data b => b -> b) -> SettingsFlow -> SettingsFlow
$cgmapT :: (forall b. Data b => b -> b) -> SettingsFlow -> SettingsFlow
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c SettingsFlow)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c SettingsFlow)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c SettingsFlow)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c SettingsFlow)
dataTypeOf :: SettingsFlow -> DataType
$cdataTypeOf :: SettingsFlow -> DataType
toConstr :: SettingsFlow -> Constr
$ctoConstr :: SettingsFlow -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c SettingsFlow
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c SettingsFlow
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> SettingsFlow -> c SettingsFlow
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g) -> SettingsFlow -> c SettingsFlow
$cp1Data :: Typeable SettingsFlow
Data)

instance FromJSON SettingsFlow where
  parseJSON :: Value -> Parser SettingsFlow
parseJSON =
    Options -> Value -> Parser SettingsFlow
forall a.
(Generic a, GFromJSON Zero (Rep a)) =>
Options -> Value -> Parser a
genericParseJSON
      Options
defaultOptions
        { constructorTagModifier :: ShowS
constructorTagModifier = ShowS
typeFieldRename,
          fieldLabelModifier :: ShowS
fieldLabelModifier = ShowS
typeFieldRename
        }

instance ToJSON SettingsFlow where
  toEncoding :: SettingsFlow -> Encoding
toEncoding =
    Options -> SettingsFlow -> Encoding
forall a.
(Generic a, GToJSON' Encoding Zero (Rep a)) =>
Options -> a -> Encoding
genericToEncoding
      Options
defaultOptions
        { constructorTagModifier :: ShowS
constructorTagModifier = ShowS
typeFieldRename,
          fieldLabelModifier :: ShowS
fieldLabelModifier = ShowS
typeFieldRename
        }

-- | The Response for Settings Flows via API
data SettingsViaApiResponse = SettingsViaApiResponse
  { -- |
    SettingsViaApiResponse -> SettingsFlow
flow :: SettingsFlow,
    -- |
    SettingsViaApiResponse -> Identity
identity :: Identity
  }
  deriving stock (Int -> SettingsViaApiResponse -> ShowS
[SettingsViaApiResponse] -> ShowS
SettingsViaApiResponse -> String
(Int -> SettingsViaApiResponse -> ShowS)
-> (SettingsViaApiResponse -> String)
-> ([SettingsViaApiResponse] -> ShowS)
-> Show SettingsViaApiResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SettingsViaApiResponse] -> ShowS
$cshowList :: [SettingsViaApiResponse] -> ShowS
show :: SettingsViaApiResponse -> String
$cshow :: SettingsViaApiResponse -> String
showsPrec :: Int -> SettingsViaApiResponse -> ShowS
$cshowsPrec :: Int -> SettingsViaApiResponse -> ShowS
Show, SettingsViaApiResponse -> SettingsViaApiResponse -> Bool
(SettingsViaApiResponse -> SettingsViaApiResponse -> Bool)
-> (SettingsViaApiResponse -> SettingsViaApiResponse -> Bool)
-> Eq SettingsViaApiResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SettingsViaApiResponse -> SettingsViaApiResponse -> Bool
$c/= :: SettingsViaApiResponse -> SettingsViaApiResponse -> Bool
== :: SettingsViaApiResponse -> SettingsViaApiResponse -> Bool
$c== :: SettingsViaApiResponse -> SettingsViaApiResponse -> Bool
Eq, (forall x. SettingsViaApiResponse -> Rep SettingsViaApiResponse x)
-> (forall x.
    Rep SettingsViaApiResponse x -> SettingsViaApiResponse)
-> Generic SettingsViaApiResponse
forall x. Rep SettingsViaApiResponse x -> SettingsViaApiResponse
forall x. SettingsViaApiResponse -> Rep SettingsViaApiResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep SettingsViaApiResponse x -> SettingsViaApiResponse
$cfrom :: forall x. SettingsViaApiResponse -> Rep SettingsViaApiResponse x
Generic, Typeable SettingsViaApiResponse
DataType
Constr
Typeable SettingsViaApiResponse
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g)
    -> SettingsViaApiResponse
    -> c SettingsViaApiResponse)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c SettingsViaApiResponse)
-> (SettingsViaApiResponse -> Constr)
-> (SettingsViaApiResponse -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c SettingsViaApiResponse))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e))
    -> Maybe (c SettingsViaApiResponse))
-> ((forall b. Data b => b -> b)
    -> SettingsViaApiResponse -> SettingsViaApiResponse)
-> (forall r r'.
    (r -> r' -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> SettingsViaApiResponse
    -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> SettingsViaApiResponse
    -> r)
-> (forall u.
    (forall d. Data d => d -> u) -> SettingsViaApiResponse -> [u])
-> (forall u.
    Int -> (forall d. Data d => d -> u) -> SettingsViaApiResponse -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d)
    -> SettingsViaApiResponse -> m SettingsViaApiResponse)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> SettingsViaApiResponse -> m SettingsViaApiResponse)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> SettingsViaApiResponse -> m SettingsViaApiResponse)
-> Data SettingsViaApiResponse
SettingsViaApiResponse -> DataType
SettingsViaApiResponse -> Constr
(forall b. Data b => b -> b)
-> SettingsViaApiResponse -> SettingsViaApiResponse
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> SettingsViaApiResponse
-> c SettingsViaApiResponse
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c SettingsViaApiResponse
forall a.
Typeable a
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
    (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
    (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int -> (forall d. Data d => d -> u) -> SettingsViaApiResponse -> u
forall u.
(forall d. Data d => d -> u) -> SettingsViaApiResponse -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> SettingsViaApiResponse
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> SettingsViaApiResponse
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> SettingsViaApiResponse -> m SettingsViaApiResponse
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> SettingsViaApiResponse -> m SettingsViaApiResponse
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c SettingsViaApiResponse
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> SettingsViaApiResponse
-> c SettingsViaApiResponse
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c SettingsViaApiResponse)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c SettingsViaApiResponse)
$cSettingsViaApiResponse :: Constr
$tSettingsViaApiResponse :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> SettingsViaApiResponse -> m SettingsViaApiResponse
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> SettingsViaApiResponse -> m SettingsViaApiResponse
gmapMp :: (forall d. Data d => d -> m d)
-> SettingsViaApiResponse -> m SettingsViaApiResponse
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> SettingsViaApiResponse -> m SettingsViaApiResponse
gmapM :: (forall d. Data d => d -> m d)
-> SettingsViaApiResponse -> m SettingsViaApiResponse
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> SettingsViaApiResponse -> m SettingsViaApiResponse
gmapQi :: Int -> (forall d. Data d => d -> u) -> SettingsViaApiResponse -> u
$cgmapQi :: forall u.
Int -> (forall d. Data d => d -> u) -> SettingsViaApiResponse -> u
gmapQ :: (forall d. Data d => d -> u) -> SettingsViaApiResponse -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u) -> SettingsViaApiResponse -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> SettingsViaApiResponse
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> SettingsViaApiResponse
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> SettingsViaApiResponse
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> SettingsViaApiResponse
-> r
gmapT :: (forall b. Data b => b -> b)
-> SettingsViaApiResponse -> SettingsViaApiResponse
$cgmapT :: (forall b. Data b => b -> b)
-> SettingsViaApiResponse -> SettingsViaApiResponse
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c SettingsViaApiResponse)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c SettingsViaApiResponse)
dataCast1 :: (forall d. Data d => c (t d)) -> Maybe (c SettingsViaApiResponse)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d)) -> Maybe (c SettingsViaApiResponse)
dataTypeOf :: SettingsViaApiResponse -> DataType
$cdataTypeOf :: SettingsViaApiResponse -> DataType
toConstr :: SettingsViaApiResponse -> Constr
$ctoConstr :: SettingsViaApiResponse -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c SettingsViaApiResponse
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r) -> Constr -> c SettingsViaApiResponse
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> SettingsViaApiResponse
-> c SettingsViaApiResponse
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> SettingsViaApiResponse
-> c SettingsViaApiResponse
$cp1Data :: Typeable SettingsViaApiResponse
Data)

instance FromJSON SettingsViaApiResponse

instance ToJSON SettingsViaApiResponse where
  toEncoding :: SettingsViaApiResponse -> Encoding
toEncoding = Options -> SettingsViaApiResponse -> Encoding
forall a.
(Generic a, GToJSON' Encoding Zero (Rep a)) =>
Options -> a -> Encoding
genericToEncoding Options
defaultOptions

-- |
data SubmitSelfServiceBrowserSettingsOIDCFlowPayload = SubmitSelfServiceBrowserSettingsOIDCFlowPayload
  { -- | Flow ID is the flow's ID.  in: query
    SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Maybe Text
flow :: Maybe Text,
    -- | Link this provider  Either this or `unlink` must be set.  type: string in: body
    SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Maybe Text
link :: Maybe Text,
    -- | Unlink this provider  Either this or `link` must be set.  type: string in: body
    SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Maybe Text
unlink :: Maybe Text
  }
  deriving stock (Int -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> ShowS
[SubmitSelfServiceBrowserSettingsOIDCFlowPayload] -> ShowS
SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> String
(Int -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> ShowS)
-> (SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> String)
-> ([SubmitSelfServiceBrowserSettingsOIDCFlowPayload] -> ShowS)
-> Show SubmitSelfServiceBrowserSettingsOIDCFlowPayload
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SubmitSelfServiceBrowserSettingsOIDCFlowPayload] -> ShowS
$cshowList :: [SubmitSelfServiceBrowserSettingsOIDCFlowPayload] -> ShowS
show :: SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> String
$cshow :: SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> String
showsPrec :: Int -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> ShowS
$cshowsPrec :: Int -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> ShowS
Show, SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Bool
(SubmitSelfServiceBrowserSettingsOIDCFlowPayload
 -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Bool)
-> (SubmitSelfServiceBrowserSettingsOIDCFlowPayload
    -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Bool)
-> Eq SubmitSelfServiceBrowserSettingsOIDCFlowPayload
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Bool
$c/= :: SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Bool
== :: SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Bool
$c== :: SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Bool
Eq, (forall x.
 SubmitSelfServiceBrowserSettingsOIDCFlowPayload
 -> Rep SubmitSelfServiceBrowserSettingsOIDCFlowPayload x)
-> (forall x.
    Rep SubmitSelfServiceBrowserSettingsOIDCFlowPayload x
    -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload)
-> Generic SubmitSelfServiceBrowserSettingsOIDCFlowPayload
forall x.
Rep SubmitSelfServiceBrowserSettingsOIDCFlowPayload x
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
forall x.
SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> Rep SubmitSelfServiceBrowserSettingsOIDCFlowPayload x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep SubmitSelfServiceBrowserSettingsOIDCFlowPayload x
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
$cfrom :: forall x.
SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> Rep SubmitSelfServiceBrowserSettingsOIDCFlowPayload x
Generic, Typeable SubmitSelfServiceBrowserSettingsOIDCFlowPayload
DataType
Constr
Typeable SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g)
    -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
    -> c SubmitSelfServiceBrowserSettingsOIDCFlowPayload)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r)
    -> Constr
    -> c SubmitSelfServiceBrowserSettingsOIDCFlowPayload)
-> (SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Constr)
-> (SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d))
    -> Maybe (c SubmitSelfServiceBrowserSettingsOIDCFlowPayload))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e))
    -> Maybe (c SubmitSelfServiceBrowserSettingsOIDCFlowPayload))
-> ((forall b. Data b => b -> b)
    -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
    -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload)
-> (forall r r'.
    (r -> r' -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
    -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
    -> r)
-> (forall u.
    (forall d. Data d => d -> u)
    -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> [u])
-> (forall u.
    Int
    -> (forall d. Data d => d -> u)
    -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
    -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d)
    -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
    -> m SubmitSelfServiceBrowserSettingsOIDCFlowPayload)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
    -> m SubmitSelfServiceBrowserSettingsOIDCFlowPayload)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
    -> m SubmitSelfServiceBrowserSettingsOIDCFlowPayload)
-> Data SubmitSelfServiceBrowserSettingsOIDCFlowPayload
SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> DataType
SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Constr
(forall b. Data b => b -> b)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> c SubmitSelfServiceBrowserSettingsOIDCFlowPayload
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c SubmitSelfServiceBrowserSettingsOIDCFlowPayload
forall a.
Typeable a
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
    (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
    (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> u
forall u.
(forall d. Data d => d -> u)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> m SubmitSelfServiceBrowserSettingsOIDCFlowPayload
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> m SubmitSelfServiceBrowserSettingsOIDCFlowPayload
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c SubmitSelfServiceBrowserSettingsOIDCFlowPayload
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> c SubmitSelfServiceBrowserSettingsOIDCFlowPayload
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c SubmitSelfServiceBrowserSettingsOIDCFlowPayload)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c SubmitSelfServiceBrowserSettingsOIDCFlowPayload)
$cSubmitSelfServiceBrowserSettingsOIDCFlowPayload :: Constr
$tSubmitSelfServiceBrowserSettingsOIDCFlowPayload :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> m SubmitSelfServiceBrowserSettingsOIDCFlowPayload
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> m SubmitSelfServiceBrowserSettingsOIDCFlowPayload
gmapMp :: (forall d. Data d => d -> m d)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> m SubmitSelfServiceBrowserSettingsOIDCFlowPayload
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> m SubmitSelfServiceBrowserSettingsOIDCFlowPayload
gmapM :: (forall d. Data d => d -> m d)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> m SubmitSelfServiceBrowserSettingsOIDCFlowPayload
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> m SubmitSelfServiceBrowserSettingsOIDCFlowPayload
gmapQi :: Int
-> (forall d. Data d => d -> u)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> u
$cgmapQi :: forall u.
Int
-> (forall d. Data d => d -> u)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> u
gmapQ :: (forall d. Data d => d -> u)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> r
gmapT :: (forall b. Data b => b -> b)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
$cgmapT :: (forall b. Data b => b -> b)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c SubmitSelfServiceBrowserSettingsOIDCFlowPayload)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c SubmitSelfServiceBrowserSettingsOIDCFlowPayload)
dataCast1 :: (forall d. Data d => c (t d))
-> Maybe (c SubmitSelfServiceBrowserSettingsOIDCFlowPayload)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c SubmitSelfServiceBrowserSettingsOIDCFlowPayload)
dataTypeOf :: SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> DataType
$cdataTypeOf :: SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> DataType
toConstr :: SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Constr
$ctoConstr :: SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c SubmitSelfServiceBrowserSettingsOIDCFlowPayload
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c SubmitSelfServiceBrowserSettingsOIDCFlowPayload
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> c SubmitSelfServiceBrowserSettingsOIDCFlowPayload
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload
-> c SubmitSelfServiceBrowserSettingsOIDCFlowPayload
$cp1Data :: Typeable SubmitSelfServiceBrowserSettingsOIDCFlowPayload
Data)

instance FromJSON SubmitSelfServiceBrowserSettingsOIDCFlowPayload

instance ToJSON SubmitSelfServiceBrowserSettingsOIDCFlowPayload where
  toEncoding :: SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Encoding
toEncoding = Options
-> SubmitSelfServiceBrowserSettingsOIDCFlowPayload -> Encoding
forall a.
(Generic a, GToJSON' Encoding Zero (Rep a)) =>
Options -> a -> Encoding
genericToEncoding Options
defaultOptions

data SubmitSelfServiceSettingsFlowWithPasswordMethod = SubmitSelfServiceSettingsFlowWithPasswordMethod
  { -- | CSRFToken is the anti-CSRF token  type: string
    SubmitSelfServiceSettingsFlowWithPasswordMethod -> Maybe Text
csrf_token :: Maybe Text,
    -- | Method  Should be set to password when trying to update a password.  type: string
    SubmitSelfServiceSettingsFlowWithPasswordMethod -> Maybe Text
method :: Maybe Text,
    -- | Password is the updated password  type: string
    SubmitSelfServiceSettingsFlowWithPasswordMethod -> Text
password :: Text
  }
  deriving stock (Int -> SubmitSelfServiceSettingsFlowWithPasswordMethod -> ShowS
[SubmitSelfServiceSettingsFlowWithPasswordMethod] -> ShowS
SubmitSelfServiceSettingsFlowWithPasswordMethod -> String
(Int -> SubmitSelfServiceSettingsFlowWithPasswordMethod -> ShowS)
-> (SubmitSelfServiceSettingsFlowWithPasswordMethod -> String)
-> ([SubmitSelfServiceSettingsFlowWithPasswordMethod] -> ShowS)
-> Show SubmitSelfServiceSettingsFlowWithPasswordMethod
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SubmitSelfServiceSettingsFlowWithPasswordMethod] -> ShowS
$cshowList :: [SubmitSelfServiceSettingsFlowWithPasswordMethod] -> ShowS
show :: SubmitSelfServiceSettingsFlowWithPasswordMethod -> String
$cshow :: SubmitSelfServiceSettingsFlowWithPasswordMethod -> String
showsPrec :: Int -> SubmitSelfServiceSettingsFlowWithPasswordMethod -> ShowS
$cshowsPrec :: Int -> SubmitSelfServiceSettingsFlowWithPasswordMethod -> ShowS
Show, SubmitSelfServiceSettingsFlowWithPasswordMethod
-> SubmitSelfServiceSettingsFlowWithPasswordMethod -> Bool
(SubmitSelfServiceSettingsFlowWithPasswordMethod
 -> SubmitSelfServiceSettingsFlowWithPasswordMethod -> Bool)
-> (SubmitSelfServiceSettingsFlowWithPasswordMethod
    -> SubmitSelfServiceSettingsFlowWithPasswordMethod -> Bool)
-> Eq SubmitSelfServiceSettingsFlowWithPasswordMethod
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SubmitSelfServiceSettingsFlowWithPasswordMethod
-> SubmitSelfServiceSettingsFlowWithPasswordMethod -> Bool
$c/= :: SubmitSelfServiceSettingsFlowWithPasswordMethod
-> SubmitSelfServiceSettingsFlowWithPasswordMethod -> Bool
== :: SubmitSelfServiceSettingsFlowWithPasswordMethod
-> SubmitSelfServiceSettingsFlowWithPasswordMethod -> Bool
$c== :: SubmitSelfServiceSettingsFlowWithPasswordMethod
-> SubmitSelfServiceSettingsFlowWithPasswordMethod -> Bool
Eq, (forall x.
 SubmitSelfServiceSettingsFlowWithPasswordMethod
 -> Rep SubmitSelfServiceSettingsFlowWithPasswordMethod x)
-> (forall x.
    Rep SubmitSelfServiceSettingsFlowWithPasswordMethod x
    -> SubmitSelfServiceSettingsFlowWithPasswordMethod)
-> Generic SubmitSelfServiceSettingsFlowWithPasswordMethod
forall x.
Rep SubmitSelfServiceSettingsFlowWithPasswordMethod x
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
forall x.
SubmitSelfServiceSettingsFlowWithPasswordMethod
-> Rep SubmitSelfServiceSettingsFlowWithPasswordMethod x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep SubmitSelfServiceSettingsFlowWithPasswordMethod x
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
$cfrom :: forall x.
SubmitSelfServiceSettingsFlowWithPasswordMethod
-> Rep SubmitSelfServiceSettingsFlowWithPasswordMethod x
Generic, Typeable SubmitSelfServiceSettingsFlowWithPasswordMethod
DataType
Constr
Typeable SubmitSelfServiceSettingsFlowWithPasswordMethod
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g)
    -> SubmitSelfServiceSettingsFlowWithPasswordMethod
    -> c SubmitSelfServiceSettingsFlowWithPasswordMethod)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r)
    -> Constr
    -> c SubmitSelfServiceSettingsFlowWithPasswordMethod)
-> (SubmitSelfServiceSettingsFlowWithPasswordMethod -> Constr)
-> (SubmitSelfServiceSettingsFlowWithPasswordMethod -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d))
    -> Maybe (c SubmitSelfServiceSettingsFlowWithPasswordMethod))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e))
    -> Maybe (c SubmitSelfServiceSettingsFlowWithPasswordMethod))
-> ((forall b. Data b => b -> b)
    -> SubmitSelfServiceSettingsFlowWithPasswordMethod
    -> SubmitSelfServiceSettingsFlowWithPasswordMethod)
-> (forall r r'.
    (r -> r' -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> SubmitSelfServiceSettingsFlowWithPasswordMethod
    -> r)
-> (forall r r'.
    (r' -> r -> r)
    -> r
    -> (forall d. Data d => d -> r')
    -> SubmitSelfServiceSettingsFlowWithPasswordMethod
    -> r)
-> (forall u.
    (forall d. Data d => d -> u)
    -> SubmitSelfServiceSettingsFlowWithPasswordMethod -> [u])
-> (forall u.
    Int
    -> (forall d. Data d => d -> u)
    -> SubmitSelfServiceSettingsFlowWithPasswordMethod
    -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d)
    -> SubmitSelfServiceSettingsFlowWithPasswordMethod
    -> m SubmitSelfServiceSettingsFlowWithPasswordMethod)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> SubmitSelfServiceSettingsFlowWithPasswordMethod
    -> m SubmitSelfServiceSettingsFlowWithPasswordMethod)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d)
    -> SubmitSelfServiceSettingsFlowWithPasswordMethod
    -> m SubmitSelfServiceSettingsFlowWithPasswordMethod)
-> Data SubmitSelfServiceSettingsFlowWithPasswordMethod
SubmitSelfServiceSettingsFlowWithPasswordMethod -> DataType
SubmitSelfServiceSettingsFlowWithPasswordMethod -> Constr
(forall b. Data b => b -> b)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> c SubmitSelfServiceSettingsFlowWithPasswordMethod
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c SubmitSelfServiceSettingsFlowWithPasswordMethod
forall a.
Typeable a
-> (forall (c :: * -> *).
    (forall d b. Data d => c (d -> b) -> d -> c b)
    -> (forall g. g -> c g) -> a -> c a)
-> (forall (c :: * -> *).
    (forall b r. Data b => c (b -> r) -> c r)
    -> (forall r. r -> c r) -> Constr -> c a)
-> (a -> Constr)
-> (a -> DataType)
-> (forall (t :: * -> *) (c :: * -> *).
    Typeable t =>
    (forall d. Data d => c (t d)) -> Maybe (c a))
-> (forall (t :: * -> * -> *) (c :: * -> *).
    Typeable t =>
    (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c a))
-> ((forall b. Data b => b -> b) -> a -> a)
-> (forall r r'.
    (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall r r'.
    (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> a -> r)
-> (forall u. (forall d. Data d => d -> u) -> a -> [u])
-> (forall u. Int -> (forall d. Data d => d -> u) -> a -> u)
-> (forall (m :: * -> *).
    Monad m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> (forall (m :: * -> *).
    MonadPlus m =>
    (forall d. Data d => d -> m d) -> a -> m a)
-> Data a
forall u.
Int
-> (forall d. Data d => d -> u)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> u
forall u.
(forall d. Data d => d -> u)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod -> [u]
forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> r
forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> r
forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> m SubmitSelfServiceSettingsFlowWithPasswordMethod
forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> m SubmitSelfServiceSettingsFlowWithPasswordMethod
forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c SubmitSelfServiceSettingsFlowWithPasswordMethod
forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> c SubmitSelfServiceSettingsFlowWithPasswordMethod
forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c SubmitSelfServiceSettingsFlowWithPasswordMethod)
forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c SubmitSelfServiceSettingsFlowWithPasswordMethod)
$cSubmitSelfServiceSettingsFlowWithPasswordMethod :: Constr
$tSubmitSelfServiceSettingsFlowWithPasswordMethod :: DataType
gmapMo :: (forall d. Data d => d -> m d)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> m SubmitSelfServiceSettingsFlowWithPasswordMethod
$cgmapMo :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> m SubmitSelfServiceSettingsFlowWithPasswordMethod
gmapMp :: (forall d. Data d => d -> m d)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> m SubmitSelfServiceSettingsFlowWithPasswordMethod
$cgmapMp :: forall (m :: * -> *).
MonadPlus m =>
(forall d. Data d => d -> m d)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> m SubmitSelfServiceSettingsFlowWithPasswordMethod
gmapM :: (forall d. Data d => d -> m d)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> m SubmitSelfServiceSettingsFlowWithPasswordMethod
$cgmapM :: forall (m :: * -> *).
Monad m =>
(forall d. Data d => d -> m d)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> m SubmitSelfServiceSettingsFlowWithPasswordMethod
gmapQi :: Int
-> (forall d. Data d => d -> u)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> u
$cgmapQi :: forall u.
Int
-> (forall d. Data d => d -> u)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> u
gmapQ :: (forall d. Data d => d -> u)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod -> [u]
$cgmapQ :: forall u.
(forall d. Data d => d -> u)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod -> [u]
gmapQr :: (r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> r
$cgmapQr :: forall r r'.
(r' -> r -> r)
-> r
-> (forall d. Data d => d -> r')
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> r
gmapQl :: (r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> r
$cgmapQl :: forall r r'.
(r -> r' -> r)
-> r
-> (forall d. Data d => d -> r')
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> r
gmapT :: (forall b. Data b => b -> b)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
$cgmapT :: (forall b. Data b => b -> b)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
dataCast2 :: (forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c SubmitSelfServiceSettingsFlowWithPasswordMethod)
$cdataCast2 :: forall (t :: * -> * -> *) (c :: * -> *).
Typeable t =>
(forall d e. (Data d, Data e) => c (t d e))
-> Maybe (c SubmitSelfServiceSettingsFlowWithPasswordMethod)
dataCast1 :: (forall d. Data d => c (t d))
-> Maybe (c SubmitSelfServiceSettingsFlowWithPasswordMethod)
$cdataCast1 :: forall (t :: * -> *) (c :: * -> *).
Typeable t =>
(forall d. Data d => c (t d))
-> Maybe (c SubmitSelfServiceSettingsFlowWithPasswordMethod)
dataTypeOf :: SubmitSelfServiceSettingsFlowWithPasswordMethod -> DataType
$cdataTypeOf :: SubmitSelfServiceSettingsFlowWithPasswordMethod -> DataType
toConstr :: SubmitSelfServiceSettingsFlowWithPasswordMethod -> Constr
$ctoConstr :: SubmitSelfServiceSettingsFlowWithPasswordMethod -> Constr
gunfold :: (forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c SubmitSelfServiceSettingsFlowWithPasswordMethod
$cgunfold :: forall (c :: * -> *).
(forall b r. Data b => c (b -> r) -> c r)
-> (forall r. r -> c r)
-> Constr
-> c SubmitSelfServiceSettingsFlowWithPasswordMethod
gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> c SubmitSelfServiceSettingsFlowWithPasswordMethod
$cgfoldl :: forall (c :: * -> *).
(forall d b. Data d => c (d -> b) -> d -> c b)
-> (forall g. g -> c g)
-> SubmitSelfServiceSettingsFlowWithPasswordMethod
-> c SubmitSelfServiceSettingsFlowWithPasswordMethod
$cp1Data :: Typeable SubmitSelfServiceSettingsFlowWithPasswordMethod
Data)

instance FromJSON SubmitSelfServiceSettingsFlowWithPasswordMethod

instance ToJSON SubmitSelfServiceSettingsFlowWithPasswordMethod where
  toEncoding :: SubmitSelfServiceSettingsFlowWithPasswordMethod -> Encoding
toEncoding = Options
-> SubmitSelfServiceSettingsFlowWithPasswordMethod -> Encoding
forall a.
(Generic a, GToJSON' Encoding Zero (Rep a)) =>
Options -> a -> Encoding
genericToEncoding Options
defaultOptions