From 309c70f42e95edc5b97fa9b0219bde88da506ed3 Mon Sep 17 00:00:00 2001 From: Martin Dimitrov Date: Fri, 3 May 2024 14:21:58 -0700 Subject: [PATCH] setup ts for building --- bun.lockb | Bin 313784 -> 91894 bytes package.json | 1 + packages/server/package.json | 3 +- .../server/src/clients/db/AbstractDbClient.ts | 17 +---- .../server/src/clients/db/RedisDbClient.ts | 23 +------ .../server/src/clients/db/RedisDbProvider.ts | 3 +- .../server/src/middlewares/DoorAuthModes.ts | 8 +-- .../src/middlewares/TimeLockMiddleware.ts | 2 +- packages/server/src/routers/DoorRouter.ts | 4 +- packages/server/src/routers/LnurlRouter.ts | 62 ------------------ packages/server/src/types/Environment.ts | 11 ---- packages/server/src/util/EnvConfigUtil.ts | 8 ++- packages/server/src/util/ExpireChallenges.ts | 6 -- packages/server/tsconfig.json | 28 ++++++++ packages/serverless/.gitignore | 1 + packages/serverless/package.json | 11 +++- 16 files changed, 60 insertions(+), 128 deletions(-) delete mode 100644 packages/server/src/routers/LnurlRouter.ts delete mode 100644 packages/server/src/types/Environment.ts delete mode 100644 packages/server/src/util/ExpireChallenges.ts create mode 100644 packages/server/tsconfig.json diff --git a/bun.lockb b/bun.lockb index b1e5e8dde22528215cb98e34a27f141f6e27cd3f..f99ad27c608171be20b0312a1eb87c333decffca 100755 GIT binary patch delta 18654 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 Rrq+H~ChiqkO&Gu8e*mb^=;;6e literal 313784 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 UJsDm3nC%$^IdW{||IvT{8;OFI!~g&Q diff --git a/package.json b/package.json index f16e265..4563846 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ }, "scripts": { "prepare-client-serverless": "bun --filter 'doorman-client' build && cp -fr packages/client/dist/* packages/serverless/assets/ && cp -f packages/serverless/assets/index.html packages/serverless/assets/assets/index.html", + "prepare-server-serverless": "bun --filter 'doorman-server' build && cp -fr packages/server/build/* packages/serverless/functions/ && mv packages/serverless/functions/server.js packages/serverless/functions/api.js", "deploy-serverless": "bun run prepare-client-serverless && bun --filter 'serverless' deploy" }, "peerDependencies": { diff --git a/packages/server/package.json b/packages/server/package.json index 289a56e..ddeefff 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -4,7 +4,8 @@ "main": "index.js", "license": "MIT", "scripts": { - "start": "bun --hot run src/server.ts" + "start": "bun --hot run src/server.ts", + "build": "bun tsc" }, "dependencies": { "express": "^4.18.2", diff --git a/packages/server/src/clients/db/AbstractDbClient.ts b/packages/server/src/clients/db/AbstractDbClient.ts index 7b5311e..1d7237f 100644 --- a/packages/server/src/clients/db/AbstractDbClient.ts +++ b/packages/server/src/clients/db/AbstractDbClient.ts @@ -1,14 +1,6 @@ -import { IAccessControl } from "../../types/IAccessControl"; +import type { IAccessControl } from "../../types/IAccessControl"; export abstract class AbstractDbClient { - // set operations for challenges - /** - * Add a challenge in progress. It will expire from the DB after a configured amount of time - * @param challenge - 32 random bytes in hex - * @returns true if the operation completed successfully - */ - public abstract putChallenge(challenge: string): Promise; - /** * Checks if the given challenge already exists in the db * @param challenge - challenge to check against db @@ -16,13 +8,6 @@ export abstract class AbstractDbClient { */ public abstract doesChallengeExist(challenge: string): Promise; - /** - * Remove the challenge from the DB manually - * @param challenge - * @returns true if removed successfully, false if not in DB. - */ - public abstract removeChallenge(challenge: string): Promise; - // access control methods /** * Set an entry in the DB to mark that a particular challenge was completed by a certain key. diff --git a/packages/server/src/clients/db/RedisDbClient.ts b/packages/server/src/clients/db/RedisDbClient.ts index d82fc5a..9a738a2 100644 --- a/packages/server/src/clients/db/RedisDbClient.ts +++ b/packages/server/src/clients/db/RedisDbClient.ts @@ -1,5 +1,6 @@ -import { RedisClientOptions, RedisClientType, RedisFunctions, RedisModules, RedisScripts, createClient } from "redis"; -import { IAccessControl } from "../../types/IAccessControl"; +import type { RedisClientOptions, RedisClientType, RedisFunctions, RedisModules, RedisScripts } from "redis"; +import { createClient } from "redis"; +import type { IAccessControl } from "../../types/IAccessControl"; import { AbstractDbClient } from "./AbstractDbClient"; import { RedisKeys } from "../../types/RedisKeys"; @@ -18,24 +19,6 @@ export class RedisDbClient { - console.log("expiring challenge", challenge); - await this.removeChallenge(challenge); - }, Bun.env.CHALLENGE_EXPIRE_MS); - } - - public async putChallenge(challenge: string): Promise { - let res: number = await this.client.sAdd(RedisKeys.CHALLENGES, challenge); - - // if the sAdd succeeded - if (res > 0) { - this.scheduleRemoval(challenge); - } - - return res > 0; - } - public doesChallengeExist(challenge: string): Promise { return this.client.sIsMember(RedisKeys.CHALLENGES, challenge); } diff --git a/packages/server/src/clients/db/RedisDbProvider.ts b/packages/server/src/clients/db/RedisDbProvider.ts index a13db90..7306b1b 100644 --- a/packages/server/src/clients/db/RedisDbProvider.ts +++ b/packages/server/src/clients/db/RedisDbProvider.ts @@ -1,3 +1,4 @@ +import { getEnv } from "../../util/EnvConfigUtil"; import { RedisDbClient } from "./RedisDbClient"; @@ -6,7 +7,7 @@ let client: RedisDbClient; export async function getRedisClient(): Promise> { if (!client) { - client = new RedisDbClient((err) => console.error(err), { url: Bun.env.REDIS_CONNECT_URL }); + client = new RedisDbClient((err) => console.error(err), { url: getEnv("REDIS_CONNECT_URL") }); await client.connect() } diff --git a/packages/server/src/middlewares/DoorAuthModes.ts b/packages/server/src/middlewares/DoorAuthModes.ts index 8fa4d2f..235598a 100644 --- a/packages/server/src/middlewares/DoorAuthModes.ts +++ b/packages/server/src/middlewares/DoorAuthModes.ts @@ -1,6 +1,6 @@ -import { Request, RequestHandler } from "express"; +import type { Request, RequestHandler } from "express"; import { getRedisClient } from "../clients/db/RedisDbProvider"; -import { getAllDoorNames, getAuthModes, getDoorSettingString } from "../util/EnvConfigUtil"; +import { getAllDoorNames, getAuthModes, getDoorSettingString, getEnv } from "../util/EnvConfigUtil"; import { IAuthMode } from "../types/IAuthMode"; import { IDoorConfig } from "../types/IDoorConfig"; import { doorRotatingKey } from "../types/RedisKeys"; @@ -60,7 +60,7 @@ export const replaceDoorRandomKey = async (door: string) => { await client.put(doorRotatingKey(door), newKey); - const message = `New key for door ${door}! Unlock link: ${Bun.env.BASE_DOMAIN}/door/${door}?rotatingKey=${newKey}`; + const message = `New key for door ${door}! Unlock link: ${getEnv("BASE_DOMAIN")}/door/${door}?rotatingKey=${newKey}`; console.log(message); - await fetch(Bun.env.ROTATING_KEY_NTFY, { method: "POST", body: message }); + await fetch(getEnv("ROTATING_KEY_NTFY"), { method: "POST", body: message }); } \ No newline at end of file diff --git a/packages/server/src/middlewares/TimeLockMiddleware.ts b/packages/server/src/middlewares/TimeLockMiddleware.ts index b2b0471..78b8da8 100644 --- a/packages/server/src/middlewares/TimeLockMiddleware.ts +++ b/packages/server/src/middlewares/TimeLockMiddleware.ts @@ -1,4 +1,4 @@ -import { RequestHandler } from "express"; +import type { RequestHandler } from "express"; import { getDoorSettingTimeLock } from "../util/EnvConfigUtil"; import { IDoorStatus } from "../types/IDoorStatus"; diff --git a/packages/server/src/routers/DoorRouter.ts b/packages/server/src/routers/DoorRouter.ts index 0732097..f23229a 100644 --- a/packages/server/src/routers/DoorRouter.ts +++ b/packages/server/src/routers/DoorRouter.ts @@ -2,7 +2,7 @@ import express from "express"; import { getRedisClient } from "../clients/db/RedisDbProvider"; import { doorStatusKey } from "../types/RedisKeys"; import { HandleAuthMode } from "../middlewares/DoorAuthModes"; -import { getAllDoorNames, getAuthModes, getDoorSettingNumber, getDoorSettingString } from "../util/EnvConfigUtil"; +import { getAllDoorNames, getAuthModes, getDoorSettingNumber, getDoorSettingString, getEnv } from "../util/EnvConfigUtil"; import { IDoorConfig } from "../types/IDoorConfig"; import { TimeLockVerify } from "../middlewares/TimeLockMiddleware"; import { IDoorStatus } from "../types/IDoorStatus"; @@ -11,7 +11,7 @@ const router = express.Router(); const client = await getRedisClient(); router.get('/', async (req, res) => { - res.redirect(`/api/door/${Bun.env.DEFAULT_DOOR || getAllDoorNames()[0]}`); + res.redirect(`/api/door/${getEnv("DEFAULT_DOOR") || getAllDoorNames()[0]}`); }); router.get('/:id', async(req, res) => { diff --git a/packages/server/src/routers/LnurlRouter.ts b/packages/server/src/routers/LnurlRouter.ts deleted file mode 100644 index c768b23..0000000 --- a/packages/server/src/routers/LnurlRouter.ts +++ /dev/null @@ -1,62 +0,0 @@ -import express from "express"; -import { getRedisClient } from "../clients/db/RedisDbProvider"; -import crypto from "crypto"; - -// @ts-ignore -import lnurl, { verifyAuthorizationSignature } from "lnurl"; - -const router = express.Router(); -const client = await getRedisClient(); - -router.get("/login", async (req, res) => { - let challenge: string = ""; - - // challenge must be unique - do { - challenge = crypto.randomBytes(32).toString('hex'); - } while (await client.doesChallengeExist(challenge)); - - const { subdomain } = req.query; - - if (!subdomain) { - res.status(400).json({ message: "Missing subdomain" }); - return; - } - - // MUST BE https for clearnet - const url = `https://${subdomain}.${Bun.env.BASE_DOMAIN}/api/lnurl/validate?action=auth&tag=login&k1=${challenge}`; - const encoded = lnurl.encode(url); - - // add the challenge to db - await client.putChallenge(challenge); - - res.json({ challenge, lnurl: encoded }); -}); - -router.get('/validate', async (req, res) => { - // @ts-ignore - const { k1, key, sig } = req.query as IAuthCallbackQuery; - - if (!(await client.doesChallengeExist(k1))) { - console.log("challenge doesn't exist"); - res.status(404).json({ status: "ERROR", reason: "challenge not found" }); - return; - } - - const signatureValid: boolean = verifyAuthorizationSignature(sig, k1, key); - - if (signatureValid) { - console.log("signature is valid"); - - await client.removeChallenge(k1); - await client.markChallengeSuccess(k1, key); - - res.status(200).json({ status: "ok" }); - return; - } - - console.log("Signature mismatch"); - res.status(401).json({ status: "ERROR", reason: "Signature mismatch" }); -}); - -export default router; \ No newline at end of file diff --git a/packages/server/src/types/Environment.ts b/packages/server/src/types/Environment.ts deleted file mode 100644 index 4037de3..0000000 --- a/packages/server/src/types/Environment.ts +++ /dev/null @@ -1,11 +0,0 @@ -declare module "bun" { - interface Env { - CHALLENGE_EXPIRE_MS: number; - BASE_DOMAIN: string; - REDIS_CONNECT_URL: string; // `redis[s]://[[username][:password]@][host][:port][/db-number]` - DOOR_OPEN_TIMEOUT: number; - DOOR_FIXED_PIN: string; - ROTATING_KEY_NTFY: string; - DEFAULT_DOOR: string; - } -} \ No newline at end of file diff --git a/packages/server/src/util/EnvConfigUtil.ts b/packages/server/src/util/EnvConfigUtil.ts index fc36460..45cd1cc 100644 --- a/packages/server/src/util/EnvConfigUtil.ts +++ b/packages/server/src/util/EnvConfigUtil.ts @@ -1,6 +1,10 @@ import { IAuthMode } from "../types/IAuthMode"; import { IDoorConfig } from "../types/IDoorConfig"; +export const getEnv = (key: string): string => { + return process.env[key] || ""; +} + const doorToEnv = (door: string): string => { return door.toUpperCase().replaceAll(' ', '_').replaceAll('-', '_'); }; @@ -16,7 +20,7 @@ export const getAuthModes = (door: string): IAuthMode[] => { }; export const getDoorSettingString = (door: string, setting: IDoorConfig): string | undefined => { - return Bun.env[`${setting}_${doorToEnv(door)}`]; + return getEnv(`${setting}_${doorToEnv(door)}`); }; export const getDoorSettingNumber = (door: string, setting: IDoorConfig): number => { @@ -41,7 +45,7 @@ export const getDoorSettingTimeLock = (door: string): number[] => { export const getAllDoorNames = (): string[] => { const names: string[] = []; - Object.keys(Bun.env).forEach(key => { + Object.keys(process.env).forEach(key => { if (key.startsWith(IDoorConfig.AUTH_MODES)) { names.push(key.replace(IDoorConfig.AUTH_MODES + "_", "").toLowerCase()); } diff --git a/packages/server/src/util/ExpireChallenges.ts b/packages/server/src/util/ExpireChallenges.ts deleted file mode 100644 index 8cf289e..0000000 --- a/packages/server/src/util/ExpireChallenges.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { RedisClientType } from "redis"; -import { RedisKeys } from "../types/RedisKeys"; - -export function expireChallenges(client: RedisClientType): Promise { - return client.zRemRangeByScore(RedisKeys.CHALLENGES, '-inf', Date.now()); -} \ No newline at end of file diff --git a/packages/server/tsconfig.json b/packages/server/tsconfig.json new file mode 100644 index 0000000..8899e03 --- /dev/null +++ b/packages/server/tsconfig.json @@ -0,0 +1,28 @@ +{ + "compilerOptions": { + // Enable latest features + "lib": ["ESNext"], + "target": "ESNext", + "module": "ESNext", + "moduleDetection": "force", + "jsx": "react-jsx", + "allowJs": true, + "outDir": "build", + + // Bundler mode + "moduleResolution": "bundler", + // "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "noEmit": false, + + // Best practices + "strict": false, + "skipLibCheck": true, + "noFallthroughCasesInSwitch": true, + + // // Some stricter flags + // "noUnusedLocals": true, + // "noUnusedParameters": true, + // "noPropertyAccessFromIndexSignature": true + } +} \ No newline at end of file diff --git a/packages/serverless/.gitignore b/packages/serverless/.gitignore index 655b8ab..a798209 100644 --- a/packages/serverless/.gitignore +++ b/packages/serverless/.gitignore @@ -11,6 +11,7 @@ lerna-debug.log* .pnpm-debug.log* assets +functions # Diagnostic reports (https://nodejs.org/api/report.html) report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json diff --git a/packages/serverless/package.json b/packages/serverless/package.json index 7897b4e..08789df 100644 --- a/packages/serverless/package.json +++ b/packages/serverless/package.json @@ -5,11 +5,18 @@ "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "start": "twilio-run", - "deploy": "twilio-run deploy --service-name react-twilio-serverless" + "deploy": "twilio-run deploy --service-name react-twilio-serverless", + "clean": "rm -rf assets/* functions/*" }, "dependencies": { "twilio": "^3.56", - "@twilio/runtime-handler": "1.3.0" + "@twilio/runtime-handler": "1.3.0", + "@codegenie/serverless-express": "^4.14.1", + "express": "^4.18.2", + "express-fileupload": "^1.4.0", + "express-rate-limit": "^6.10.0", + "qrcode": "^1.5.3", + "redis": "^4.6.8" }, "devDependencies": { "twilio-run": "^3.5.4"