From 2aa186450a51769c90828fbf270204a68c63a5b6 Mon Sep 17 00:00:00 2001 From: cupcakearmy Date: Fri, 7 May 2021 14:09:26 +0200 Subject: [PATCH] one less dependency --- client/package-lock.json | 41 ---------------------------------------- client/package.json | 1 - client/src/lib/api.ts | 28 ++++++++++++++++++++------- 3 files changed, 21 insertions(+), 49 deletions(-) diff --git a/client/package-lock.json b/client/package-lock.json index 63afffa..a0cf31c 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -6,7 +6,6 @@ "": { "dependencies": { "@fontsource/fira-mono": "^4.2.2", - "axios": "^0.21.1", "copy-to-clipboard": "^3.3.1" }, "devDependencies": { @@ -126,14 +125,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/axios": { - "version": "0.21.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", - "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", - "dependencies": { - "follow-redirects": "^1.10.0" - } - }, "node_modules/chalk": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", @@ -233,25 +224,6 @@ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", "dev": true }, - "node_modules/follow-redirects": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.0.tgz", - "integrity": "sha512-0vRwd7RKQBTt+mgu87mtYeofLFZpTas2S9zY+jIeuLJMNvudIgF52nr19q40HOwH5RrhWIPuj9puybzSJiRrVg==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, "node_modules/fsevents": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", @@ -690,14 +662,6 @@ "color-convert": "^2.0.1" } }, - "axios": { - "version": "0.21.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", - "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", - "requires": { - "follow-redirects": "^1.10.0" - } - }, "chalk": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", @@ -770,11 +734,6 @@ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", "dev": true }, - "follow-redirects": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.0.tgz", - "integrity": "sha512-0vRwd7RKQBTt+mgu87mtYeofLFZpTas2S9zY+jIeuLJMNvudIgF52nr19q40HOwH5RrhWIPuj9puybzSJiRrVg==" - }, "fsevents": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", diff --git a/client/package.json b/client/package.json index 2645c3d..641d4b6 100644 --- a/client/package.json +++ b/client/package.json @@ -18,7 +18,6 @@ "type": "module", "dependencies": { "@fontsource/fira-mono": "^4.2.2", - "axios": "^0.21.1", "copy-to-clipboard": "^3.3.1" } } diff --git a/client/src/lib/api.ts b/client/src/lib/api.ts index 912383d..e006ffe 100644 --- a/client/src/lib/api.ts +++ b/client/src/lib/api.ts @@ -1,8 +1,5 @@ -import axios from 'axios' import { dev } from '$app/env' -const base = axios.create({ baseURL: dev ? 'http://localhost:5000' : undefined }) - export type Note = { contents: string views?: number @@ -11,17 +8,34 @@ export type Note = { export type NoteInfo = {} export type NotePublic = Pick +type CallOptions = { + url: string + method: string + body?: any +} +const base = dev ? 'http://localhost:5000' : undefined +async function call(options: CallOptions) { + return fetch(base + options.url, { + method: options.method, + body: options.body === undefined ? undefined : JSON.stringify(options.body), + mode: 'cors', + headers: { + 'Content-Type': 'application/json', + }, + }).then((r) => r.json()) +} + export async function create(note: Note) { - const { data } = await base({ + const data = await call({ url: '/api/notes', method: 'post', - data: note, + body: note, }) return data as { id: string } } export async function get(id: string) { - const { data } = await base({ + const data = await call({ url: `/api/notes/${id}`, method: 'delete', }) @@ -29,7 +43,7 @@ export async function get(id: string) { } export async function info(id: string) { - const { data } = await base({ + const data = await call({ url: `/api/notes/${id}`, method: 'get', })