diff options
| author | Fuwn <[email protected]> | 2024-02-17 01:32:59 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2024-02-17 01:32:59 -0800 |
| commit | ae14e8263a9d42c539b748c9781d3c249f94af59 (patch) | |
| tree | e04754cc3815203aa5bdaef804d697e0b103a917 /src/routes/api/configuration | |
| parent | fix(hololive): wait for pinned streams (diff) | |
| download | due.moe-ae14e8263a9d42c539b748c9781d3c249f94af59.tar.xz due.moe-ae14e8263a9d42c539b748c9781d3c249f94af59.zip | |
feat(settings): delete remote configuration
Diffstat (limited to 'src/routes/api/configuration')
| -rw-r--r-- | src/routes/api/configuration/+server.ts | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/src/routes/api/configuration/+server.ts b/src/routes/api/configuration/+server.ts index 418742a8..8b37628f 100644 --- a/src/routes/api/configuration/+server.ts +++ b/src/routes/api/configuration/+server.ts @@ -1,5 +1,9 @@ import { userIdentity } from '$lib/Data/AniList/identity'; -import { getUserConfiguration, setUserConfiguration } from '$lib/Database/userConfiguration.js'; +import { + deleteUserConfiguration, + getUserConfiguration, + setUserConfiguration +} from '$lib/Database/userConfiguration.js'; const unauthorised = new Response('Unauthorised', { status: 401 }); @@ -38,3 +42,29 @@ export const PUT = async ({ cookies, request }) => { } ); }; + +export const DELETE = async ({ cookies }) => { + const userCookie = cookies.get('user'); + + if (!userCookie) return unauthorised; + + const user = JSON.parse(userCookie); + + return Response.json( + await deleteUserConfiguration( + ( + await userIdentity({ + tokenType: user['token_type'], + expiresIn: user['expires_in'], + accessToken: user['access_token'], + refreshToken: user['refresh_token'] + }) + ).id + ), + { + headers: { + 'Access-Control-Allow-Origin': 'https://due.moe' + } + } + ); +}; |