describe('redirect-to', () => {
const { location } = window;
const config: any = {
- keepWebServiceUrl: 'http://localhost'
+ keepWebServiceUrl: 'http://localhost',
+ keepWebServiceInlineUrl: 'http://localhost'
};
const redirectTo = '/test123';
const locationTemplate = {
...locationTemplate,
href: `${location.href}?redirectTo=${redirectTo}`,
} as any;
- Object.defineProperty(window, 'sessionStorage', {
+ Object.defineProperty(window, 'localStorage', {
value: {
setItem: jest.fn(),
},
storeRedirects();
// then
- expect(window.sessionStorage.setItem).toHaveBeenCalledWith('redirectTo', redirectTo);
+ expect(window.localStorage.setItem).toHaveBeenCalledWith('redirectTo', redirectTo);
});
});
...locationTemplate,
href: `${location.href}?redirectTo=${redirectTo}`,
} as any;;
- Object.defineProperty(window, 'sessionStorage', {
+ Object.defineProperty(window, 'localStorage', {
value: {
getItem: () => redirectTo,
removeItem: jest.fn(),
export const storeRedirects = () => {
if (window.location.href.indexOf(REDIRECT_TO_KEY) > -1) {
- const { location: { href }, sessionStorage } = window;
+ const { location: { href }, localStorage } = window;
const redirectUrl = href.split(`${REDIRECT_TO_KEY}=`)[1];
- if (sessionStorage) {
- sessionStorage.setItem(REDIRECT_TO_KEY, redirectUrl);
+ if (localStorage) {
+ localStorage.setItem(REDIRECT_TO_KEY, redirectUrl);
}
}
};
export const handleRedirects = (token: string, config: Config) => {
- const { sessionStorage } = window;
+ const { localStorage } = window;
const { keepWebServiceUrl } = config;
- if (sessionStorage && sessionStorage.getItem(REDIRECT_TO_KEY)) {
- const redirectUrl = sessionStorage.getItem(REDIRECT_TO_KEY);
- sessionStorage.removeItem(REDIRECT_TO_KEY);
+ if (localStorage && localStorage.getItem(REDIRECT_TO_KEY)) {
+ const redirectUrl = localStorage.getItem(REDIRECT_TO_KEY);
+ localStorage.removeItem(REDIRECT_TO_KEY);
if (redirectUrl) {
const sep = redirectUrl.indexOf("?") > -1 ? "&" : "?";
window.location.href = `${keepWebServiceUrl}${redirectUrl}${sep}api_token=${token}`;