From 66275fd3445c489d6cb33fea49fdcb34272c4b0f Mon Sep 17 00:00:00 2001 From: Denis Bykhov Date: Mon, 26 Jun 2023 13:31:15 +0600 Subject: [PATCH] UBER-491 (#3456) Signed-off-by: Denis Bykhov --- packages/ui/src/location.ts | 4 ++-- plugins/workbench-resources/src/components/Workbench.svelte | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/ui/src/location.ts b/packages/ui/src/location.ts index dc9232fdb8..e8c3cef6e6 100644 --- a/packages/ui/src/location.ts +++ b/packages/ui/src/location.ts @@ -53,10 +53,10 @@ export function parseLocation (location: Location | URL): PlatformLocation { } } -function parseQuery (query: string): Record { +function parseQuery (query: string): Record | undefined { query = query.trim() if (query.length === 0 || !query.startsWith('?')) { - return {} + return } query = decodeURIComponent(query).substring(1) const vars = query.split('&') diff --git a/plugins/workbench-resources/src/components/Workbench.svelte b/plugins/workbench-resources/src/components/Workbench.svelte index a3c82eea6b..f383677b40 100644 --- a/plugins/workbench-resources/src/components/Workbench.svelte +++ b/plugins/workbench-resources/src/components/Workbench.svelte @@ -82,6 +82,7 @@ let currentAppAlias: string | undefined let currentSpace: Ref | undefined let currentSpecial: string | undefined + let currentQuery: Record | undefined let specialComponent: SpecialNavModel | undefined let asideId: string | undefined let currentFragment: string | undefined = '' @@ -264,6 +265,7 @@ break } } + loc.query = resolved.loc.query ?? loc.query ?? currentQuery ?? resolved.defaultLocation.query loc.fragment = resolved.loc.fragment ?? loc.fragment ?? resolved.defaultLocation.fragment return loc } @@ -363,6 +365,7 @@ if (app !== undefined) { localStorage.setItem(`platform_last_loc_${app}`, originalLoc) } + currentQuery = loc.query if (fragment !== currentFragment) { currentFragment = fragment if (fragment !== undefined && fragment.trim().length > 0) { @@ -533,8 +536,6 @@ : 'account' let popupSpacePosition: PopupPosAlignment $: popupSpacePosition = appsMini ? 'logo-mini' : appsDirection === 'horizontal' ? 'logo-portrait' : 'logo' - let notifyPosition: PopupPosAlignment - $: notifyPosition = appsDirection === 'horizontal' ? 'notify-mobile' : 'notify' onMount(() => subscribeMobile(setTheme))