From 1e7ba9606f3d3c34759da741617643b783461221 Mon Sep 17 00:00:00 2001 From: DexterStorey Date: Wed, 20 Mar 2024 05:13:57 -0400 Subject: [PATCH] subdomain arg --- client.ts | 10 +++++++--- server.ts | 3 ++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/client.ts b/client.ts index 3a55ce2..1b7d624 100644 --- a/client.ts +++ b/client.ts @@ -1,7 +1,7 @@ import { parseArgs } from "util"; -async function main({ url, domain }: { url: string; domain?: string }) { - const serverUrl = `ws://${domain || "localhost:1234"}?new`; +async function main({ url, domain, subdomain }: { url: string; domain?: string, subdomain?: string }) { + const serverUrl = `ws://${domain || "localhost:1234"}?new${subdomain ? `&subdomain=${subdomain}` : ""}`; const socket = new WebSocket(serverUrl); socket.addEventListener("message", (event) => { @@ -38,9 +38,13 @@ const { values } = parseArgs({ type: "string", short: "d", }, + subdomain: { + type: "string", + short: "s", + }, }, allowPositionals: true, }); if (!values.port) throw "pass --port 3000"; -main({ url: `localhost:${values.port}`, domain: values.domain }); +main({ url: `localhost:${values.port}`, domain: values.domain, subdomain: values.subdomain }); diff --git a/server.ts b/server.ts index 4b33bb0..95ba200 100644 --- a/server.ts +++ b/server.ts @@ -16,7 +16,8 @@ serve({ const reqUrl = new URL(req.url); if (reqUrl.searchParams.has("new")) { - const upgraded = server.upgrade(req, { data: { id: uid() } }); + const id = reqUrl.searchParams.get("subdomain") || uid(); + const upgraded = server.upgrade(req, { data: { id } }); if (upgraded) return; else return new Response("Upgrade failed :(", { status: 500 }); }