From 2d0465731b95ded4896f3efe0f495c3897570a37 Mon Sep 17 00:00:00 2001 From: Alex Kern Date: Mon, 9 Sep 2024 20:25:39 -0700 Subject: [PATCH] checkpoint --- next-env.d.ts | 1 - pnpm-lock.yaml | 57 --------------------------------- src/app/not-found.tsx | 2 +- src/components/Downloader.tsx | 2 +- src/hooks/useUploaderChannel.ts | 4 +++ src/pages/api/create.ts | 10 ------ src/pages/api/destroy.ts | 10 ------ src/pages/api/renew.ts | 11 ------- 8 files changed, 6 insertions(+), 91 deletions(-) delete mode 100644 src/pages/api/create.ts delete mode 100644 src/pages/api/destroy.ts delete mode 100644 src/pages/api/renew.ts diff --git a/next-env.d.ts b/next-env.d.ts index 725dd6f..40c3d68 100644 --- a/next-env.d.ts +++ b/next-env.d.ts @@ -1,6 +1,5 @@ /// /// -/// // NOTE: This file should not be edited // see https://nextjs.org/docs/app/building-your-application/configuring/typescript for more information. diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 28ce087..c5782a2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -44,9 +44,6 @@ dependencies: react-dom: specifier: ^18.2.0 version: 18.3.1(react@18.3.1) - react-qr: - specifier: 0.0.2 - version: 0.0.2(react@18.3.1) react-qr-code: specifier: ^1.1.1 version: 1.1.1(react-native@0.75.2)(react@18.3.1) @@ -59,9 +56,6 @@ dependencies: twilio: specifier: ^2.11.1 version: 2.11.1 - use-http: - specifier: ^1.0.28 - version: 1.0.28(react-dom@18.3.1)(react@18.3.1) web-streams-polyfill: specifier: ^3.3.3 version: 3.3.3 @@ -7436,10 +7430,6 @@ packages: engines: {node: '>=0.6.0', teleport: '>=0.2.0'} dev: false - /qr-image@3.2.0: - resolution: {integrity: sha512-rXKDS5Sx3YipVsqmlMJsJsk6jXylEpiHRC2+nJy66fxA5ExYyGa4PqwteW69SaVmAb2OQ18HbYriT7cGQMbduw==} - dev: false - /qr.js@0.0.0: resolution: {integrity: sha512-c4iYnWb+k2E+vYpRimHqSu575b1/wKl4XFeJGpFmrJQz5I88v9aY2czh7s0w36srfCM1sXgC/xpoJz5dJfq+OQ==} dev: false @@ -7612,15 +7602,6 @@ packages: - react-native dev: false - /react-qr@0.0.2(react@18.3.1): - resolution: {integrity: sha512-7FNhidqSLN/MRVU+vA+Rx7lNxtrq/wR1ZhxVSd62ioxet4GeS6QFtU46qEq/rditziaDUiHVVRjzriA4VftsYA==} - peerDependencies: - react: '*' - dependencies: - qr-image: 3.2.0 - react: 18.3.1 - dev: false - /react-refresh@0.14.2: resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==} engines: {node: '>=0.10.0'} @@ -9032,39 +9013,6 @@ packages: prepend-http: 1.0.4 dev: false - /urs@0.0.8(react-dom@18.3.1)(react@18.3.1): - resolution: {integrity: sha512-LaSSPpr91XrVA3vW2zPupw4K6DSQEDKdL4yQZX1mO2fpljIMpB5zctrjRvxLurelWSgKsHsCmfHNCImscryirQ==} - peerDependencies: - react: ^16.13.1 || ^17.0.0 - react-dom: ^16.13.1 || ^17.0.0 - dependencies: - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - dev: false - - /use-http@1.0.28(react-dom@18.3.1)(react@18.3.1): - resolution: {integrity: sha512-MWux13mGDBj+bzuTZJczDIjFu5r7D9eYrrKyKaCo+KFvoGRE9mpNHLK21pAJb2Sbdh/J85y5E4b2xR+IH2WOkg==} - peerDependencies: - react: ^16.13.1 || ^17.0.0 || ^18.0.0 - react-dom: ^16.13.1 || ^17.0.0 || ^18.0.0 - dependencies: - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - urs: 0.0.8(react-dom@18.3.1)(react@18.3.1) - use-ssr: 1.0.25(react-dom@18.3.1)(react@18.3.1) - utility-types: 3.11.0 - dev: false - - /use-ssr@1.0.25(react-dom@18.3.1)(react@18.3.1): - resolution: {integrity: sha512-VYF8kJKI+X7+U4XgGoUER2BUl0vIr+8OhlIhyldgSGE0KHMoDRXPvWeHUUeUktq7ACEOVLzXGq1+QRxcvtwvyQ==} - peerDependencies: - react: ^16.13.1 || ^17.0.0 || ^18.0.0 - react-dom: ^16.13.1 || ^17.0.0 || ^18.0.0 - dependencies: - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - dev: false - /use@3.1.1: resolution: {integrity: sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==} engines: {node: '>=0.10.0'} @@ -9074,11 +9022,6 @@ packages: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} dev: false - /utility-types@3.11.0: - resolution: {integrity: sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==} - engines: {node: '>= 4'} - dev: false - /utils-merge@1.0.1: resolution: {integrity: sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=} engines: {node: '>= 0.4.0'} diff --git a/src/app/not-found.tsx b/src/app/not-found.tsx index adade3e..79d35e9 100644 --- a/src/app/not-found.tsx +++ b/src/app/not-found.tsx @@ -7,7 +7,7 @@ export const metadata = { description: 'Oops! This slice of FilePizza seems to be missing.', } -export default function NotFound(): JSX.Element { +export default async function NotFound(): Promise { return (
diff --git a/src/components/Downloader.tsx b/src/components/Downloader.tsx index b121972..43f0e80 100644 --- a/src/components/Downloader.tsx +++ b/src/components/Downloader.tsx @@ -149,7 +149,7 @@ export default function Downloader({ const handleData = (data: unknown) => { try { - const message = Message.parse(data) // Use Zod's parse method + const message = decodeMessage(data) switch (message.type) { case MessageType.Info: setFilesInfo(message.files) diff --git a/src/hooks/useUploaderChannel.ts b/src/hooks/useUploaderChannel.ts index 031036c..ca7d38f 100644 --- a/src/hooks/useUploaderChannel.ts +++ b/src/hooks/useUploaderChannel.ts @@ -32,6 +32,10 @@ export function useUploaderChannel(uploaderPeerID: string): { } return response.json() }, + refetchOnWindowFocus: false, + refetchOnMount: false, + refetchOnReconnect: false, + staleTime: Infinity, }) const longURL = data?.longSlug ? generateURL(data.longSlug) : undefined diff --git a/src/pages/api/create.ts b/src/pages/api/create.ts deleted file mode 100644 index be03de1..0000000 --- a/src/pages/api/create.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { NextApiRequest, NextApiResponse } from 'next' -import { Channel, channelRepo } from '../../channel' -import { routeHandler, getBodyKey } from '../../routes' - -export default routeHandler( - (req: NextApiRequest, _res: NextApiResponse): Promise => { - const uploaderPeerID = getBodyKey(req, 'uploaderPeerID') - return channelRepo.create(uploaderPeerID) - }, -) diff --git a/src/pages/api/destroy.ts b/src/pages/api/destroy.ts deleted file mode 100644 index e6eb946..0000000 --- a/src/pages/api/destroy.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { NextApiRequest, NextApiResponse } from 'next' -import { channelRepo } from '../../channel' -import { routeHandler, getBodyKey } from '../../routes' - -export default routeHandler( - (req: NextApiRequest, _res: NextApiResponse): Promise => { - const slug = getBodyKey(req, 'slug') - return channelRepo.destroy(slug) - }, -) diff --git a/src/pages/api/renew.ts b/src/pages/api/renew.ts deleted file mode 100644 index 63ec358..0000000 --- a/src/pages/api/renew.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { NextApiRequest, NextApiResponse } from 'next' -import { channelRepo } from '../../channel' -import { routeHandler, getBodyKey } from '../../routes' - -export default routeHandler( - async (req: NextApiRequest, _res: NextApiResponse): Promise => { - const slug = getBodyKey(req, 'slug') - await channelRepo.renew(slug) - return true - }, -)