diff --git a/definitions/npm/redux-oidc_v3.x.x/flow_v0.55.x-/redux-oidc_v3.x.x.js b/definitions/npm/redux-oidc_v3.x.x/flow_v0.55.x-/redux-oidc_v3.x.x.js index 1a2b74a52c..c721f1e7a0 100644 --- a/definitions/npm/redux-oidc_v3.x.x/flow_v0.55.x-/redux-oidc_v3.x.x.js +++ b/definitions/npm/redux-oidc_v3.x.x/flow_v0.55.x-/redux-oidc_v3.x.x.js @@ -2,7 +2,11 @@ import type { Reducer, Store } from "redux"; declare module "redux-oidc" { declare type UserManager = { - signinRedirect: () => Promise<*>, + signinRedirect: (data?: { + data: { + redirectUrl: string + } + }) => Promise<*>, signoutRedirect: () => Promise<*> }; declare type User

= { @@ -14,7 +18,10 @@ declare module "redux-oidc" { +expires_in: ?boolean, +expired: ?boolean, +scopes: Array, - profile: P + profile: P, + state: { + redirectUrl: string + } }; declare type UserManagerSettings = {| client_id: string, @@ -41,7 +48,7 @@ declare module "redux-oidc" { declare class CallbackComponent extends React$Component<{ userManager: UserManager, - successCallback: () => mixed, + successCallback: (user?: User<*>) => mixed, errorCallback?: () => mixed }> {} diff --git a/definitions/npm/redux-oidc_v3.x.x/flow_v0.55.x-/test_redux-oidc.js b/definitions/npm/redux-oidc_v3.x.x/flow_v0.55.x-/test_redux-oidc.js index d6f3707433..a22d30868e 100644 --- a/definitions/npm/redux-oidc_v3.x.x/flow_v0.55.x-/test_redux-oidc.js +++ b/definitions/npm/redux-oidc_v3.x.x/flow_v0.55.x-/test_redux-oidc.js @@ -1,7 +1,7 @@ // @flow "use strict"; -import type { OidcReducerState } from "redux-oidc"; +import type { OidcReducerState, User } from "redux-oidc"; import React from "react"; import reduxOidc from "redux-oidc"; // $ExpectError: flow-typed doesn't support pulling in _other_ modules yet? @@ -32,6 +32,10 @@ const userManager = reduxOidc.createUserManager(userManagerConfig); userManager.signinRedirect(); userManager.signoutRedirect(); +userManager.signinRedirect({ + data: { redirectUrl: "https://www.duckduckgo.com" } +}); + // The reducer state can have a nullable user const state: OidcReducerState = { user: null @@ -50,6 +54,7 @@ type Action = { type State = { foo: string }; + // redux-oidc provides some components. const reducer = (state: State, action: Action) => action; const store = redux.createStore(redux.combineReducers([reducer])); @@ -67,5 +72,22 @@ const StatelessComponent = () => { ); }; +type Props = { + redirectToLink: (user?: User<*>) => void +}; + +const ExampleComponent = ({ redirectToLink }: Props) => { + return ( +

+ console.log("error!")} + /> + +
+ ); +}; + // There's a utility function for silent renews. reduxOidc.processSilentRenew();