cq

Distributed social media platform
git clone git://git.finwo.net/app/cq
Log | Files | Refs

commit 3a3963dfc44dda8be98ad3fdb64e8618c1daa9db
parent 7edb442fd0fb49dd1045c9e9b11390f22373ee1f
Author: finwo <finwo@pm.me>
Date:   Sun, 14 Sep 2025 01:25:15 +0200

Made baseurl configurable

Diffstat:
Mpackage-lock.json | 14++++++++++++++
Apackages/app/.env.example | 1+
Mpackages/app/.gitignore | 1+
Mpackages/app/esbuild.js | 7+++++++
Mpackages/app/package.json | 1+
Mpackages/app/src/component/screen-device-add.tsx | 3+--
6 files changed, 25 insertions(+), 2 deletions(-)

diff --git a/package-lock.json b/package-lock.json @@ -721,6 +721,19 @@ "integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==", "license": "MIT" }, + "node_modules/dotenv": { + "version": "17.2.2", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.2.tgz", + "integrity": "sha512-Sf2LSQP+bOlhKWWyhFsn0UsfdK/kCWRv1iuA2gXAwt3dyNabr6QSj00I2V10pidqz69soatm9ZwZvpQMTIOd5Q==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -1502,6 +1515,7 @@ "@types/mithril": "^2.2.7", "@types/qrcode": "^1.5.5", "cpy": "^12.0.1", + "dotenv": "^17.2.2", "esbuild": "^0.25.9", "esbuild-plugins-node-modules-polyfill": "^1.7.1" } diff --git a/packages/app/.env.example b/packages/app/.env.example @@ -0,0 +1 @@ +BASEURL_APP='"http://localhost:4000/#!"' diff --git a/packages/app/.gitignore b/packages/app/.gitignore @@ -1 +1,2 @@ /dist/ +/.env diff --git a/packages/app/esbuild.js b/packages/app/esbuild.js @@ -1,5 +1,6 @@ #!/usr/bin/env node +require('dotenv').config(); const cpy = require('cpy'); const fs = require('node:fs'); const { dirname } = require('node:path'); @@ -13,6 +14,10 @@ const entryPoints = { 'main': __dirname + '/src/main.ts', }; +const define = { + 'process.env.BASEURL_APP': process.env.BASEURL_APP || '"http://localhost:4000/#!"', +}; + const config = { format: 'esm', platform: 'browser', @@ -22,6 +27,7 @@ const config = { outdir: __dirname + '/dist', entryPoints: Object.values(entryPoints), minify: false, + define, jsxFactory : 'm', jsxFragment : '"["', @@ -44,6 +50,7 @@ const config = { } }) ], + }; const buildList = []; diff --git a/packages/app/package.json b/packages/app/package.json @@ -17,6 +17,7 @@ "@types/mithril": "^2.2.7", "@types/qrcode": "^1.5.5", "cpy": "^12.0.1", + "dotenv": "^17.2.2", "esbuild": "^0.25.9", "esbuild-plugins-node-modules-polyfill": "^1.7.1" }, diff --git a/packages/app/src/component/screen-device-add.tsx b/packages/app/src/component/screen-device-add.tsx @@ -15,8 +15,7 @@ export const DeviceAddScreen = { async oninit(vnode: _Vnode) { if (!await requireAccount(true)) return; - // vnode.state.addDeviceURL = `https://cq.finwo.net/account/add?id=${localStorage.selectedAccount}`; - vnode.state.addDeviceURL = `http://localhost:4000/#!${AccountAddScreen.routePath}?id=${localStorage.selectedAccount}`; + vnode.state.addDeviceURL = `${process.env.BASEURL_APP}${AccountAddScreen.routePath}?id=${localStorage.selectedAccount}`; vnode.state.addDeviceQR = await QRCode.toDataURL([ { data: vnode.state.addDeviceURL },