Align frontend env with validation limits and axios plugin.

Flatten share/API config keys, nest validation limits only, and move the HTTP client to plugins/axios.
This commit is contained in:
2026-10-07 00:36:16 +02:00
parent c762223200
commit 4b7f8459cb
4 changed files with 17 additions and 28 deletions
+9 -17
View File
@@ -1,29 +1,21 @@
const env = (key: string): string => {
const value = import.meta.env[key];
if (value === undefined || value === null) {
return '';
}
return String(value);
};
const envInt = (key: string, fallback: number): number => {
const raw = env(key);
if (!raw) {
return fallback;
}
const parsed = parseInt(raw, 10);
return Number.isFinite(parsed) ? parsed : fallback;
};
const envInt = (key: string): number => parseInt(env(key), 10);
export const config = {
api: {
baseUrl: env('VITE_API_BASE_URL')
},
share: {
clearnetDomain: env('VITE_CLEARNET_DOMAIN'),
onionHostname: env('VITE_ONION_HOSTNAME')
},
limits: {
maxImagesPerUpload: envInt('VITE_MAX_IMAGES_PER_UPLOAD', 10)
baseUrl: env('VITE_API_BASE_URL'),
clearnetDomain: env('VITE_CLEARNET_DOMAIN'),
onionHostname: env('VITE_ONION_HOSTNAME'),
validation: {
maxImagesPerUpload: envInt('VITE_VALIDATION_UPLOAD_MAX_IMAGES_PER_UPLOAD'),
uploadMaxViewsMax: envInt('VITE_VALIDATION_UPLOAD_MAX_VIEWS_MAX')
}
};