From c3d75140d8b0ca598010eff871b1bbf7bfa6d243 Mon Sep 17 00:00:00 2001 From: syui Date: Tue, 18 Mar 2025 08:21:07 +0900 Subject: [PATCH] fix pdsls --- README.md | 4 ++++ repos_extra/pdsls/Dockerfile | 2 +- repos_extra/pdsls/compose.yml | 2 +- repos_extra/pdsls/vite.config.ts | 34 +++++++++++++++++++++++++++++++- 4 files changed, 39 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 770b8cd..708d5d4 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,10 @@ https://github.com/bluesky-social/atproto - https://plc.syu.is/did:plc:6qyecktefllvenje24fcxnie - https://plc.directory/did:plc:ytvoptig4ddshmwdsjmhtcym +[@yui.syui.ai](https://bsky.app/profile/did:plc:4hqjfn7m6n5hno3doamuhgef) + +- https://pds.syu.is/at://did:plc:4hqjfn7m6n5hno3doamuhgef + ```sh $ curl -sL syu.is/xrpc/_health {"version":"0.4.65"} diff --git a/repos_extra/pdsls/Dockerfile b/repos_extra/pdsls/Dockerfile index 1dc6678..c4d5ea6 100644 --- a/repos_extra/pdsls/Dockerfile +++ b/repos_extra/pdsls/Dockerfile @@ -1,4 +1,4 @@ -FROM node:20 +FROM node:21 RUN npm install -g pnpm WORKDIR /app diff --git a/repos_extra/pdsls/compose.yml b/repos_extra/pdsls/compose.yml index 06a46f0..9badf6e 100644 --- a/repos_extra/pdsls/compose.yml +++ b/repos_extra/pdsls/compose.yml @@ -3,4 +3,4 @@ services: build: context: . ports: - - 3000:13213 + - 3001:13213 diff --git a/repos_extra/pdsls/vite.config.ts b/repos_extra/pdsls/vite.config.ts index 97b0ef6..27a096c 100644 --- a/repos_extra/pdsls/vite.config.ts +++ b/repos_extra/pdsls/vite.config.ts @@ -1,15 +1,47 @@ import { defineConfig } from "vite"; import solidPlugin from "vite-plugin-solid"; import UnoCSS from "unocss/vite"; +import metadata from "./public/client-metadata.json"; const SERVER_HOST = "0.0.0.0"; const SERVER_PORT = 13213; export default defineConfig({ - plugins: [UnoCSS(), solidPlugin()], + plugins: [ + UnoCSS(), + solidPlugin(), + // Injects OAuth-related variables + { + name: "oauth", + config(_conf, { command }) { + if (command === "build") { + process.env.VITE_OAUTH_CLIENT_ID = metadata.client_id; + process.env.VITE_OAUTH_REDIRECT_URL = metadata.redirect_uris[0]; + } else { + const redirectUri = ((): string => { + const url = new URL(metadata.redirect_uris[0]); + return `http://${SERVER_HOST}:${SERVER_PORT}${url.pathname}`; + })(); + + const clientId = + `http://localhost` + + `?redirect_uri=${encodeURIComponent(redirectUri)}` + + `&scope=${encodeURIComponent(metadata.scope)}`; + + process.env.VITE_DEV_SERVER_PORT = "" + SERVER_PORT; + process.env.VITE_OAUTH_CLIENT_ID = clientId; + process.env.VITE_OAUTH_REDIRECT_URL = redirectUri; + } + + process.env.VITE_CLIENT_URI = metadata.client_uri; + process.env.VITE_OAUTH_SCOPE = metadata.scope; + }, + }, + ], server: { host: SERVER_HOST, port: SERVER_PORT, + allowedHosts: ['pds.syu.is'], }, build: { target: "esnext",