aboutsummaryrefslogtreecommitdiffstats
path: root/code/app/src
diff options
context:
space:
mode:
authorivarlovlie <git@ivarlovlie.no>2022-11-17 07:52:37 +0100
committerivarlovlie <git@ivarlovlie.no>2022-11-17 07:52:37 +0100
commitcba9c246b20c9b2d33546a48ac5878dc46e87f55 (patch)
treee79b5e98cc0cf370c6ebf1a898be7af464a5df7a /code/app/src
parent9ddd3471b4222f0d2deceb25b46f609407397a20 (diff)
downloadgreatoffice-cba9c246b20c9b2d33546a48ac5878dc46e87f55.tar.xz
greatoffice-cba9c246b20c9b2d33546a48ac5878dc46e87f55.zip
refactor: Use explicit req/res classes instead of common dto
Diffstat (limited to 'code/app/src')
-rw-r--r--code/app/src/lib/api/api-tokens/index.ts23
1 files changed, 23 insertions, 0 deletions
diff --git a/code/app/src/lib/api/api-tokens/index.ts b/code/app/src/lib/api/api-tokens/index.ts
new file mode 100644
index 0000000..77bfd91
--- /dev/null
+++ b/code/app/src/lib/api/api-tokens/index.ts
@@ -0,0 +1,23 @@
+import {http_delete_async, http_get_async, http_post_async} from "src/lib/api/_fetch";
+import {api_base} from "src/lib/configuration";
+import type {Temporal} from "temporal-polyfill";
+
+export const http_api_tokens = {
+ create_token_async(payload: CreateTokenPayload): Promise<Response> {
+ return http_post_async(api_base("v1/api-tokens/create"), payload);
+ },
+ delete_token_async(id: string): Promise<Response> {
+ return http_delete_async(api_base("v1/api-tokens/delete?id=" + id));
+ },
+ get_tokens_async(): Promise<Response> {
+ return http_get_async(api_base("v1/api-tokens"))
+ },
+};
+
+export type CreateTokenPayload = {
+ expiryDate: Temporal.PlainDateTime,
+ allowRead: boolean,
+ allowCreate: boolean,
+ allowUpdate: boolean,
+ allowDelete: boolean
+} \ No newline at end of file