aboutsummaryrefslogtreecommitdiff
path: root/frontend/src/utils/Jwt.ts
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/src/utils/Jwt.ts')
-rw-r--r--frontend/src/utils/Jwt.ts32
1 files changed, 18 insertions, 14 deletions
diff --git a/frontend/src/utils/Jwt.ts b/frontend/src/utils/Jwt.ts
index ce351fb..dc6ec92 100644
--- a/frontend/src/utils/Jwt.ts
+++ b/frontend/src/utils/Jwt.ts
@@ -1,44 +1,48 @@
1// llm ahh funcs 1// llm ahh funcs
2export function get_user_id_from_token(token: string | undefined): string | undefined { 2export function get_user_id_from_token(
3 token: string | undefined
4): string | undefined {
3 if (!token) { 5 if (!token) {
4 return undefined; 6 return undefined;
5 } 7 }
6 const parts = token.split('.'); 8 const parts = token.split(".");
7 if (parts.length !== 3) { 9 if (parts.length !== 3) {
8 return undefined; 10 return undefined;
9 } 11 }
10 const base64Url = parts[1]; 12 const base64Url = parts[1];
11 const base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/'); 13 const base64 = base64Url.replace(/-/g, "+").replace(/_/g, "/");
12 14
13 const jsonPayload = decodeURIComponent( 15 const jsonPayload = decodeURIComponent(
14 atob(base64) 16 atob(base64)
15 .split('') 17 .split("")
16 .map(function (c) { 18 .map(function (c) {
17 return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2); 19 return "%" + ("00" + c.charCodeAt(0).toString(16)).slice(-2);
18 }) 20 })
19 .join('') 21 .join("")
20 ); 22 );
21 return JSON.parse(jsonPayload).sub; 23 return JSON.parse(jsonPayload).sub;
22}; 24}
23 25
24export function get_user_mod_from_token(token: string | undefined): boolean | undefined { 26export function get_user_mod_from_token(
27 token: string | undefined
28): boolean | undefined {
25 if (!token) { 29 if (!token) {
26 return undefined; 30 return undefined;
27 } 31 }
28 const parts = token.split('.'); 32 const parts = token.split(".");
29 if (parts.length !== 3) { 33 if (parts.length !== 3) {
30 return undefined; 34 return undefined;
31 } 35 }
32 const base64Url = parts[1]; 36 const base64Url = parts[1];
33 const base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/'); 37 const base64 = base64Url.replace(/-/g, "+").replace(/_/g, "/");
34 38
35 const jsonPayload = decodeURIComponent( 39 const jsonPayload = decodeURIComponent(
36 atob(base64) 40 atob(base64)
37 .split('') 41 .split("")
38 .map(function (c) { 42 .map(function (c) {
39 return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2); 43 return "%" + ("00" + c.charCodeAt(0).toString(16)).slice(-2);
40 }) 44 })
41 .join('') 45 .join("")
42 ); 46 );
43 return JSON.parse(jsonPayload).mod; 47 return JSON.parse(jsonPayload).mod;
44}; 48}