Remove 'history' dep
This commit is contained in:
parent
63201c4acf
commit
8a55f8416b
8 changed files with 17 additions and 9 deletions
|
@ -10,10 +10,10 @@ import {
|
||||||
} from './importer';
|
} from './importer';
|
||||||
|
|
||||||
import type { AxiosError, CancelToken } from 'axios';
|
import type { AxiosError, CancelToken } from 'axios';
|
||||||
import type { History } from 'history';
|
|
||||||
import type { Map as ImmutableMap } from 'immutable';
|
import type { Map as ImmutableMap } from 'immutable';
|
||||||
import type { AppDispatch, RootState } from 'soapbox/store';
|
import type { AppDispatch, RootState } from 'soapbox/store';
|
||||||
import type { APIEntity, Status } from 'soapbox/types/entities';
|
import type { APIEntity, Status } from 'soapbox/types/entities';
|
||||||
|
import type { History } from 'soapbox/types/history';
|
||||||
|
|
||||||
const ACCOUNT_CREATE_REQUEST = 'ACCOUNT_CREATE_REQUEST';
|
const ACCOUNT_CREATE_REQUEST = 'ACCOUNT_CREATE_REQUEST';
|
||||||
const ACCOUNT_CREATE_SUCCESS = 'ACCOUNT_CREATE_SUCCESS';
|
const ACCOUNT_CREATE_SUCCESS = 'ACCOUNT_CREATE_SUCCESS';
|
||||||
|
|
|
@ -6,8 +6,8 @@ import { getFeatures } from 'soapbox/utils/features';
|
||||||
|
|
||||||
import api, { getLinks } from '../api';
|
import api, { getLinks } from '../api';
|
||||||
|
|
||||||
import type { History } from 'history';
|
|
||||||
import type { AppDispatch, RootState } from 'soapbox/store';
|
import type { AppDispatch, RootState } from 'soapbox/store';
|
||||||
|
import type { History } from 'soapbox/types/history';
|
||||||
|
|
||||||
const CHATS_FETCH_REQUEST = 'CHATS_FETCH_REQUEST';
|
const CHATS_FETCH_REQUEST = 'CHATS_FETCH_REQUEST';
|
||||||
const CHATS_FETCH_SUCCESS = 'CHATS_FETCH_SUCCESS';
|
const CHATS_FETCH_SUCCESS = 'CHATS_FETCH_SUCCESS';
|
||||||
|
|
|
@ -19,11 +19,11 @@ import { openModal, closeModal } from './modals';
|
||||||
import { getSettings } from './settings';
|
import { getSettings } from './settings';
|
||||||
import { createStatus } from './statuses';
|
import { createStatus } from './statuses';
|
||||||
|
|
||||||
import type { History } from 'history';
|
|
||||||
import type { Emoji } from 'soapbox/components/autosuggest-emoji';
|
import type { Emoji } from 'soapbox/components/autosuggest-emoji';
|
||||||
import type { AutoSuggestion } from 'soapbox/components/autosuggest-input';
|
import type { AutoSuggestion } from 'soapbox/components/autosuggest-input';
|
||||||
import type { AppDispatch, RootState } from 'soapbox/store';
|
import type { AppDispatch, RootState } from 'soapbox/store';
|
||||||
import type { Account, APIEntity, Status, Tag } from 'soapbox/types/entities';
|
import type { Account, APIEntity, Status, Tag } from 'soapbox/types/entities';
|
||||||
|
import type { History } from 'soapbox/types/history';
|
||||||
|
|
||||||
const { CancelToken, isCancel } = axios;
|
const { CancelToken, isCancel } = axios;
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,6 @@ import { useAppDispatch, usePrevious } from 'soapbox/hooks';
|
||||||
import { queryClient } from 'soapbox/queries/client';
|
import { queryClient } from 'soapbox/queries/client';
|
||||||
import { IPolicy, PolicyKeys } from 'soapbox/queries/policies';
|
import { IPolicy, PolicyKeys } from 'soapbox/queries/policies';
|
||||||
|
|
||||||
import type { UnregisterCallback } from 'history';
|
|
||||||
import type { ModalType } from 'soapbox/features/ui/components/modal-root';
|
import type { ModalType } from 'soapbox/features/ui/components/modal-root';
|
||||||
import type { ReducerCompose } from 'soapbox/reducers/compose';
|
import type { ReducerCompose } from 'soapbox/reducers/compose';
|
||||||
import type { ReducerRecord as ReducerComposeEvent } from 'soapbox/reducers/compose-event';
|
import type { ReducerRecord as ReducerComposeEvent } from 'soapbox/reducers/compose-event';
|
||||||
|
@ -55,7 +54,7 @@ const ModalRoot: React.FC<IModalRoot> = ({ children, onCancel, onClose, type })
|
||||||
const ref = useRef<HTMLDivElement>(null);
|
const ref = useRef<HTMLDivElement>(null);
|
||||||
const activeElement = useRef<HTMLDivElement | null>(revealed ? document.activeElement as HTMLDivElement | null : null);
|
const activeElement = useRef<HTMLDivElement | null>(revealed ? document.activeElement as HTMLDivElement | null : null);
|
||||||
const modalHistoryKey = useRef<number>();
|
const modalHistoryKey = useRef<number>();
|
||||||
const unlistenHistory = useRef<UnregisterCallback>();
|
const unlistenHistory = useRef<ReturnType<typeof history.listen>>();
|
||||||
|
|
||||||
const prevChildren = usePrevious(children);
|
const prevChildren = usePrevious(children);
|
||||||
const prevType = usePrevious(type);
|
const prevType = usePrevious(type);
|
||||||
|
|
9
app/soapbox/types/history.ts
Normal file
9
app/soapbox/types/history.ts
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
import { useHistory, useLocation } from 'react-router-dom';
|
||||||
|
|
||||||
|
type History = ReturnType<typeof useHistory>;
|
||||||
|
type Location = ReturnType<typeof useLocation>;
|
||||||
|
|
||||||
|
export type {
|
||||||
|
History,
|
||||||
|
Location,
|
||||||
|
};
|
|
@ -1,9 +1,10 @@
|
||||||
import { Location } from 'history';
|
|
||||||
import { useEffect } from 'react';
|
import { useEffect } from 'react';
|
||||||
|
|
||||||
|
import type { Location } from 'soapbox/types/history';
|
||||||
|
|
||||||
const LOCAL_STORAGE_REDIRECT_KEY = 'soapbox:redirect-uri';
|
const LOCAL_STORAGE_REDIRECT_KEY = 'soapbox:redirect-uri';
|
||||||
|
|
||||||
const cacheCurrentUrl = (location: Location<unknown>) => {
|
const cacheCurrentUrl = (location: Location) => {
|
||||||
const actualUrl = encodeURIComponent(`${location.pathname}${location.search}`);
|
const actualUrl = encodeURIComponent(`${location.pathname}${location.search}`);
|
||||||
localStorage.setItem(LOCAL_STORAGE_REDIRECT_KEY, actualUrl);
|
localStorage.setItem(LOCAL_STORAGE_REDIRECT_KEY, actualUrl);
|
||||||
return actualUrl;
|
return actualUrl;
|
||||||
|
|
|
@ -124,7 +124,6 @@
|
||||||
"escape-html": "^1.0.3",
|
"escape-html": "^1.0.3",
|
||||||
"exif-js": "^2.3.0",
|
"exif-js": "^2.3.0",
|
||||||
"fork-ts-checker-webpack-plugin": "^7.2.11",
|
"fork-ts-checker-webpack-plugin": "^7.2.11",
|
||||||
"history": "^4.10.1",
|
|
||||||
"html-webpack-harddisk-plugin": "^2.0.0",
|
"html-webpack-harddisk-plugin": "^2.0.0",
|
||||||
"html-webpack-plugin": "^5.5.0",
|
"html-webpack-plugin": "^5.5.0",
|
||||||
"http-link-header": "^1.0.2",
|
"http-link-header": "^1.0.2",
|
||||||
|
|
|
@ -6432,7 +6432,7 @@ he@^1.2.0:
|
||||||
resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
|
resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
|
||||||
integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
|
integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
|
||||||
|
|
||||||
history@^4.10.1, history@^4.9.0:
|
history@^4.9.0:
|
||||||
version "4.10.1"
|
version "4.10.1"
|
||||||
resolved "https://registry.yarnpkg.com/history/-/history-4.10.1.tgz#33371a65e3a83b267434e2b3f3b1b4c58aad4cf3"
|
resolved "https://registry.yarnpkg.com/history/-/history-4.10.1.tgz#33371a65e3a83b267434e2b3f3b1b4c58aad4cf3"
|
||||||
integrity sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==
|
integrity sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==
|
||||||
|
|
Loading…
Reference in a new issue