diff --git a/packages/client/src/components/Layout/index.js b/packages/client/src/components/Layout/index.js index 6d9ce2bce0..9185adccc5 100644 --- a/packages/client/src/components/Layout/index.js +++ b/packages/client/src/components/Layout/index.js @@ -35,14 +35,17 @@ const StyledContainer = styled.div` `; const Layout = (props) => { - const { children, isTabletView, setIsTabletView, setNavigate, setLocation } = - props; + const { children, isTabletView, setIsTabletView } = props; const [contentHeight, setContentHeight] = useState(); const [isPortrait, setIsPortrait] = useState(); - setNavigate(useNavigate()); - setLocation(useLocation()); + if (window.DocSpace) { + window.DocSpace.navigate = useNavigate(); + window.DocSpace.location = useLocation(); + } else { + window.DocSpace = { navigate: useNavigate(), location: useLocation() }; + } const intervalTime = 100; const endTimeout = 300; @@ -193,7 +196,5 @@ export default inject(({ auth, bannerStore }) => { return { isTabletView: auth.settingsStore.isTabletView, setIsTabletView: auth.settingsStore.setIsTabletView, - setNavigate: auth.settingsStore.setNavigate, - setLocation: auth.settingsStore.setLocation, }; })(observer(Layout)); diff --git a/packages/client/src/store/AccountsContextOptionsStore.js b/packages/client/src/store/AccountsContextOptionsStore.js index fe49ed7e99..7e57fc8c26 100644 --- a/packages/client/src/store/AccountsContextOptionsStore.js +++ b/packages/client/src/store/AccountsContextOptionsStore.js @@ -305,7 +305,7 @@ class AccountsContextOptionsStore { }; onProfileClick = () => { - this.authStore.settingsStore.navigate(PROFILE_SELF_URL); + window.DocSpace.navigate(PROFILE_SELF_URL); }; toggleChangeNameDialog = () => { diff --git a/packages/client/src/store/FilesActionsStore.js b/packages/client/src/store/FilesActionsStore.js index 4cd655af37..84becbb709 100644 --- a/packages/client/src/store/FilesActionsStore.js +++ b/packages/client/src/store/FilesActionsStore.js @@ -1970,7 +1970,7 @@ class FilesActionStore { setMediaViewerData({ visible: true, id }); const url = "/products/files/#preview/" + id; - this.authStore.settingsStore.navigate(url); + window.DocSpace.navigate(url); return; } diff --git a/packages/client/src/store/FilesStore.js b/packages/client/src/store/FilesStore.js index b5eea691c9..0ef28e29ae 100644 --- a/packages/client/src/store/FilesStore.js +++ b/packages/client/src/store/FilesStore.js @@ -1094,7 +1094,7 @@ class FilesStore { if (newUrl === currentUrl) return; - this.authStore.settingsStore.navigate(newUrl); + window.DocSpace.navigate(newUrl); }; isEmptyLastPageAfterOperation = (newSelection) => { diff --git a/packages/client/src/store/MediaViewerDataStore.js b/packages/client/src/store/MediaViewerDataStore.js index a8928a3c6d..4528c172f6 100644 --- a/packages/client/src/store/MediaViewerDataStore.js +++ b/packages/client/src/store/MediaViewerDataStore.js @@ -55,7 +55,7 @@ class MediaViewerDataStore { changeUrl = (id) => { const url = "/products/files/#preview/" + id; - this.authStore.settingsStore.navigate(url); + window.DocSpace.navigate(url); }; nextMedia = () => { diff --git a/packages/client/src/store/ProfileActionsStore.js b/packages/client/src/store/ProfileActionsStore.js index b52f57c007..8ebced27d1 100644 --- a/packages/client/src/store/ProfileActionsStore.js +++ b/packages/client/src/store/ProfileActionsStore.js @@ -101,15 +101,15 @@ class ProfileActionsStore { this.treeFoldersStore.setSelectedNode(["accounts"]); } - this.authStore.settingsStore.navigate(PROFILE_SELF_URL); + window.DocSpace.navigate(PROFILE_SELF_URL); }; onSettingsClick = (settingsUrl) => { - this.authStore.settingsStore.navigate(settingsUrl); + window.DocSpace.navigate(settingsUrl); }; onPaymentsClick = () => { - this.authStore.settingsStore.navigate(PAYMENTS_URL); + window.DocSpace.navigate(PAYMENTS_URL); }; onHelpCenterClick = () => { @@ -154,7 +154,7 @@ class ProfileActionsStore { if (isDesktop || isTablet) { this.setIsAboutDialogVisible(true); } else { - this.authStore.settingsStore.navigate(ABOUT_URL); + window.DocSpace.navigate(ABOUT_URL); } }; diff --git a/packages/common/package.json b/packages/common/package.json index 0e4562b5a0..da78177fac 100644 --- a/packages/common/package.json +++ b/packages/common/package.json @@ -11,6 +11,7 @@ }, "dependencies": { "@babel/runtime": "^7.21.0", + "@loadable/component": "^5.15.3", "axios": "^0.22.0", "cross-fetch": "3.1.5", "fast-deep-equal": "^3.1.3", @@ -40,8 +41,7 @@ "sjcl": "^1.0.8", "socket.io-client": "^4.6.1", "styled-components": "^5.3.9", - "workbox-window": "^6.5.4", - "@loadable/component": "^5.15.3" + "workbox-window": "^6.5.4" }, "devDependencies": { "@welldone-software/why-did-you-render": "^6.2.3" diff --git a/packages/common/store/SettingsStore.js b/packages/common/store/SettingsStore.js index e466dd8ef0..229cd75084 100644 --- a/packages/common/store/SettingsStore.js +++ b/packages/common/store/SettingsStore.js @@ -148,21 +148,10 @@ class SettingsStore { baseDomain = "onlyoffice.io"; documentationEmail = null; - navigate = null; - location = null; - constructor() { makeAutoObservable(this); } - setNavigate = (navigate) => { - this.navigate = navigate; - }; - - setLocation = (location) => { - this.location = location; - }; - setTenantStatus = (tenantStatus) => { this.tenantStatus = tenantStatus; }; diff --git a/yarn.lock b/yarn.lock index a9644a8f6a..046dc0b87e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2814,6 +2814,7 @@ __metadata: resolution: "@docspace/common@workspace:packages/common" dependencies: "@babel/runtime": ^7.21.0 + "@loadable/component": ^5.15.3 "@welldone-software/why-did-you-render": ^6.2.3 axios: ^0.22.0 cross-fetch: 3.1.5 @@ -11501,7 +11502,6 @@ __metadata: version: 0.0.0-use.local resolution: "docspace@workspace:." dependencies: - "@loadable/component": ^5.15.3 auto-changelog: "file:./packages/auto-changelog-2.3.1.tgz" he: ^1.2.0 shx: ^0.3.4 @@ -13458,7 +13458,7 @@ __metadata: "fsevents@patch:fsevents@^1.2.7#~builtin": version: 1.2.13 - resolution: "fsevents@patch:fsevents@npm%3A1.2.13#~builtin::version=1.2.13&hash=18f3a7" + resolution: "fsevents@patch:fsevents@npm%3A1.2.13#~builtin::version=1.2.13&hash=d11327" dependencies: bindings: ^1.5.0 nan: ^2.12.1 @@ -13468,7 +13468,7 @@ __metadata: "fsevents@patch:fsevents@^2.1.2#~builtin, fsevents@patch:fsevents@~2.3.2#~builtin": version: 2.3.2 - resolution: "fsevents@patch:fsevents@npm%3A2.3.2#~builtin::version=2.3.2&hash=18f3a7" + resolution: "fsevents@patch:fsevents@npm%3A2.3.2#~builtin::version=2.3.2&hash=df0bf1" dependencies: node-gyp: latest conditions: os=darwin @@ -21916,14 +21916,14 @@ __metadata: "resolve@patch:resolve@1.1.7#~builtin": version: 1.1.7 - resolution: "resolve@patch:resolve@npm%3A1.1.7#~builtin::version=1.1.7&hash=07638b" + resolution: "resolve@patch:resolve@npm%3A1.1.7#~builtin::version=1.1.7&hash=3bafbf" checksum: e9dbca78600ae56835c43a09f1276876c883e4b4bbd43e2683fa140671519d2bdebeb1c1576ca87c8c508ae2987b3ec481645ac5d3054b0f23254cfc1ce49942 languageName: node linkType: hard "resolve@patch:resolve@^1.1.6#~builtin, resolve@patch:resolve@^1.10.0#~builtin, resolve@patch:resolve@^1.12.0#~builtin, resolve@patch:resolve@^1.14.2#~builtin, resolve@patch:resolve@^1.19.0#~builtin, resolve@patch:resolve@^1.3.2#~builtin, resolve@patch:resolve@^1.8.1#~builtin, resolve@patch:resolve@^1.9.0#~builtin": version: 1.22.3 - resolution: "resolve@patch:resolve@npm%3A1.22.3#~builtin::version=1.22.3&hash=07638b" + resolution: "resolve@patch:resolve@npm%3A1.22.3#~builtin::version=1.22.3&hash=c3c19d" dependencies: is-core-module: ^2.12.0 path-parse: ^1.0.7 @@ -21936,7 +21936,7 @@ __metadata: "resolve@patch:resolve@^2.0.0-next.4#~builtin": version: 2.0.0-next.4 - resolution: "resolve@patch:resolve@npm%3A2.0.0-next.4#~builtin::version=2.0.0-next.4&hash=07638b" + resolution: "resolve@patch:resolve@npm%3A2.0.0-next.4#~builtin::version=2.0.0-next.4&hash=c3c19d" dependencies: is-core-module: ^2.9.0 path-parse: ^1.0.7 @@ -24368,11 +24368,11 @@ __metadata: "typescript@patch:typescript@^4.9.5#~builtin": version: 4.9.5 - resolution: "typescript@patch:typescript@npm%3A4.9.5#~builtin::version=4.9.5&hash=701156" + resolution: "typescript@patch:typescript@npm%3A4.9.5#~builtin::version=4.9.5&hash=ad5954" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 2eee5c37cad4390385db5db5a8e81470e42e8f1401b0358d7390095d6f681b410f2c4a0c496c6ff9ebd775423c7785cdace7bcdad76c7bee283df3d9718c0f20 + checksum: 8f6260acc86b56bfdda6004bc53f32ea548f543e8baef7071c8e34d29d292f3e375c8416556c8de10b24deef6933cd1c16a8233dc84a3dd43a13a13265d0faab languageName: node linkType: hard