Use store

This commit is contained in:
Adria Navarro 2023-12-15 13:37:22 +01:00
parent bfd52b6c50
commit 8515221cdf
2 changed files with 13 additions and 19 deletions

View File

@ -52,7 +52,7 @@ export const API = createAPIClient({
return
}
navigation.actions.goTo(
get(navigation).goto(
`${updatingUrl}?returnUrl=${encodeURIComponent(window.location)}`
)
},

View File

@ -1,33 +1,27 @@
import { writable } from "svelte/store"
export function createNavigationStore() {
const { subscribe } = writable([])
const store = writable({
initialisated: false,
goto: undefined,
})
const { set, subscribe, get } = store
let initialisated = false
let _goTo
const init = goToFunc => {
initialisated = true
if (typeof goToFunc !== "function") {
throw new Error('A valid "goToFunc" must be provided')
const init = gotoFunc => {
if (typeof gotoFunc !== "function") {
throw new Error('A valid "gotoFunc" must be provided')
}
_goTo = goToFunc
}
const goTo = (...params) => {
if (!initialisated) {
throw new Error("You need to call navigation.init first")
}
_goTo(...params)
set({
initialisated: true,
goto: gotoFunc,
})
}
return {
subscribe,
actions: {
init,
goTo,
},
}
}