when navigating between fronend & backend,

you return to the last url you worked on
This commit is contained in:
Michael Shanks 2020-06-29 21:26:16 +01:00
parent 281fbec596
commit c5c21d6929
1 changed files with 13 additions and 2 deletions

View File

@ -5,7 +5,7 @@
import { get } from "builderStore/api"
import { fade } from "svelte/transition"
import { isActive, goto, layout } from "@sveltech/routify"
import { isActive, goto, layout, url } from "@sveltech/routify"
import { SettingsIcon, PreviewIcon } from "components/common/Icons/"
import IconButton from "components/common/IconButton.svelte"
@ -27,6 +27,17 @@
throw new Error(pkg)
}
}
const topItemNavigate = path => () => {
const activeTopNav = $layout.children.find(c => $isActive(c.path))
if (!activeTopNav) return
store.update(state => {
if (!state.previousTopNavPath) state.previousTopNavPath = {}
state.previousTopNavPath[activeTopNav.path] = window.location.pathname.replace("/_builder", "")
$goto(state.previousTopNavPath[path] || path)
return state
})
}
</script>
<Modal>
@ -46,7 +57,7 @@
<span
class:active={$isActive(path)}
class="topnavitem"
on:click={() => $goto(path)}>
on:click={topItemNavigate(path)}>
{title}
</span>
{/each}