diff --git a/packages/client/src/components/ReturnHere.tsx b/packages/client/src/components/ReturnHere.tsx new file mode 100644 index 0000000..978f2c3 --- /dev/null +++ b/packages/client/src/components/ReturnHere.tsx @@ -0,0 +1,36 @@ +import React, {useEffect} from 'react' +import {Dispatch, bindActionCreators} from 'redux' +import {IWithRouterProps} from './IWithRouterProps' +import {connect} from 'react-redux' +import {setRedirectTo} from '../login/LoginActions' +import {withRouter} from 'react-router' + +export interface IReturnToProps extends IWithRouterProps { + setRedirectTo: typeof setRedirectTo +} + +function FReturnHere(props: IReturnToProps) { + const { + // tslint:disable-next-line + setRedirectTo, + history, + location, + match, + ...otherProps + } = props + + useEffect(() => { + setRedirectTo(match.url) + }) + + return null +} + +export const ReturnHere = withRouter(connect( + () => ({ + // no props + }), + (dispatch: Dispatch) => ({ + setRedirectTo: bindActionCreators(setRedirectTo, dispatch), + }), +)(FReturnHere))