diff --git a/src/App.svelte b/src/App.svelte index 9c051b1..fa572a8 100644 --- a/src/App.svelte +++ b/src/App.svelte @@ -3,8 +3,9 @@ import GeneralView from "./views/GeneralView.svelte"; import VioletView from "./views/VioletView.svelte"; import OrchidView from "./views/OrchidView.svelte"; - import {loginStore} from "./stores/login"; + import {loginStore, parseJwt, type LoginStore} from "./stores/login"; import {openLoginPopup} from "./utils/login-popup"; + import {domainOption} from "./stores/domain-option"; let sidebarOptions: Array<{name: string; view: typeof SvelteComponent<{}>}> = [ {name: "General", view: GeneralView}, @@ -15,13 +16,34 @@ let tokenPerms: string[] = []; $: tokenPerms = []; + + let domainOptions: string[]; + $: domainOptions = getDomainOptions($loginStore); + + function getDomainOptions(login: LoginStore | null) { + let accessToken = login?.tokens?.access; + if (accessToken == null) return []; + let jwt = parseJwt(accessToken); + return jwt.per.filter((x: string) => x.startsWith("domain:owns=")).map((x: string) => x.slice("domain:owns=".length)); + }
-

🍉 - 1f349 Admin Dashboard

+

🍉 Admin Panel

+
+ +
diff --git a/src/components/RedirectCreator.svelte b/src/components/RedirectCreator.svelte index 6467654..ec602a4 100644 --- a/src/components/RedirectCreator.svelte +++ b/src/components/RedirectCreator.svelte @@ -23,3 +23,9 @@ + + diff --git a/src/components/RedirectRow.svelte b/src/components/RedirectRow.svelte index 92be98e..e73807a 100644 --- a/src/components/RedirectRow.svelte +++ b/src/components/RedirectRow.svelte @@ -34,20 +34,35 @@ {/if} diff --git a/src/components/RouteCreator.svelte b/src/components/RouteCreator.svelte index 40276ac..0c09b74 100644 --- a/src/components/RouteCreator.svelte +++ b/src/components/RouteCreator.svelte @@ -23,3 +23,9 @@ + + diff --git a/src/components/RouteRow.svelte b/src/components/RouteRow.svelte index 0195b4a..ea7a05b 100644 --- a/src/components/RouteRow.svelte +++ b/src/components/RouteRow.svelte @@ -35,7 +35,7 @@