web_lib

Common web application libraries
git clone https://radroots.dev/git/web_lib.git
Log | Files | Refs | LICENSE

commit c0d7dc4d1d8891c5b3595f710b99fb5b20dae6af
parent 5ab812730a971c44b59df61d341e4604669765e1
Author: triesap <triesap@radroots.dev>
Date:   Thu, 20 Nov 2025 16:59:07 +0000

client: add environment config, set default web client base url to configured endpoint

Diffstat:
Aclient/.env.example | 2++
Aclient/src/_env.ts | 12++++++++++++
Mclient/src/radroots/web.ts | 6++++--
3 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/client/.env.example b/client/.env.example @@ -0,0 +1 @@ +VITE_PUBLIC_RADROOTS_API= +\ No newline at end of file diff --git a/client/src/_env.ts b/client/src/_env.ts @@ -0,0 +1,12 @@ +import dotenv from "dotenv"; +dotenv.config(); + +const RADROOTS_API = process.env.VITE_PUBLIC_RADROOTS_API; +if (!RADROOTS_API || typeof RADROOTS_API !== 'string') throw new Error('Missing env var: VITE_PUBLIC_RADROOTS_API'); + +const PROD = process.env.NODE_ENV === 'production'; + +export const _envLib = { + PROD, + RADROOTS_API, +} as const; diff --git a/client/src/radroots/web.ts b/client/src/radroots/web.ts @@ -1,5 +1,6 @@ import { err_msg, type IHttpResponse, is_err_response, is_error_response } from '@radroots/utils'; import { lib_nostr_event_sign_attest } from '@radroots/utils-nostr'; +import { _envLib } from '../_env.js'; import { WebHttp } from '../http/web.js'; import type { IClientRadroots, IClientRadrootsAccountsActivate, IClientRadrootsAccountsActivateResolve, IClientRadrootsAccountsCreate, IClientRadrootsAccountsCreateResolve, IClientRadrootsAccountsRequest, IClientRadrootsAccountsRequestResolve, IClientRadrootsMediaImageUpload, IClientRadrootsMediaImageUploadResolve } from "./types.js"; @@ -7,8 +8,9 @@ export class WebClientRadroots implements IClientRadroots { private _base_url: string private _http_client: WebHttp - constructor(base_url: string) { - this._base_url = base_url.replaceAll(`/`, ``); + constructor(base_url?: string) { + const url = base_url || _envLib.RADROOTS_API; + this._base_url = url.replaceAll(`/`, ``); this._http_client = new WebHttp(); }