import {base_domain, CookieNames} from "$shared/lib/configuration"; import {get_cookie, set_cookie} from "$shared/lib/helpers"; import {writable} from "svelte/store"; import type {Locales} from "$app/lib/i18n/i18n-types"; export function preffered_or_default(): Locales { if (/^en\b/i.test(navigator.language)) { return "en"; } if (/^nb\b/i.test(navigator.language) || /^nn\b/i.test(navigator.language)) { return "nb"; } return "en"; } export const currentLocale = writable((get_cookie(CookieNames.locale) ?? preffered_or_default()) as Locales); currentLocale.subscribe(locale => { //@ts-ignore if (locale === "preffered") set_cookie(CookieNames.locale, preffered_or_default(), base_domain()); set_cookie(CookieNames.locale, locale, base_domain()); });