diff options
| author | Leonardo Bishop <me@leonardobishop.com> | 2025-08-15 19:20:48 +0100 |
|---|---|---|
| committer | Leonardo Bishop <me@leonardobishop.com> | 2025-08-15 19:20:48 +0100 |
| commit | 8f7dec8ba6b2f9bde01afd0a110596ebbd43e0ed (patch) | |
| tree | 7b4f203d92f4b99b1e98fac314415e293984196b /web/composables/fetch-login.ts | |
| parent | 4697556cac819c47d068819b9fc9c3b4ea84e279 (diff) | |
Implement OIDC
Diffstat (limited to 'web/composables/fetch-login.ts')
| -rw-r--r-- | web/composables/fetch-login.ts | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/web/composables/fetch-login.ts b/web/composables/fetch-login.ts new file mode 100644 index 0000000..707a04f --- /dev/null +++ b/web/composables/fetch-login.ts @@ -0,0 +1,25 @@ +import { useLoginOptionsStore } from "~/stores/login-options"; + +export default function() { + const loginOptionsStore = useLoginOptionsStore(); + const errorStore = useErrorStore(); + const config = useRuntimeConfig(); + + loginOptionsStore.setStatus('pending') + + $fetch(config.public.baseURL + '/login', { + method: 'GET', + server: false, + lazy: true, + onResponse: ({ response }) => { + if (!response.ok) { + errorStore.setError(response._data.message || 'An unknown error occurred'); + } + + if (response._data) { + loginOptionsStore.setLoginOptions((response._data as any).data.options); + loginOptionsStore.setStatus('idle') + } + }, + }); +}
\ No newline at end of file |
