2026-03-09 19:35:08 +01:00
|
|
|
const fs = require('node:fs');
|
|
|
|
|
const path = require('node:path');
|
|
|
|
|
const dotenv = require('dotenv');
|
|
|
|
|
|
|
|
|
|
const rootEnvPath = path.resolve(__dirname, '../../.env');
|
|
|
|
|
const outputPath = path.resolve(__dirname, '../public/env.js');
|
|
|
|
|
|
|
|
|
|
dotenv.config({ path: rootEnvPath });
|
|
|
|
|
|
|
|
|
|
const runtimeEnv = {
|
|
|
|
|
PRIVATECHAT_CLIENT_SERVER_URL: process.env.PRIVATECHAT_CLIENT_SERVER_URL ?? 'http://localhost:3000',
|
2026-03-26 19:38:54 +01:00
|
|
|
PRIVATECHAT_CLIENT_WHISPER_MODEL: process.env.PRIVATECHAT_CLIENT_WHISPER_MODEL ?? 'Xenova/whisper-small',
|
|
|
|
|
PRIVATECHAT_CLIENT_WHISPER_LANGUAGE: process.env.PRIVATECHAT_CLIENT_WHISPER_LANGUAGE ?? 'auto',
|
|
|
|
|
PRIVATECHAT_CLIENT_TRANSFORMERS_WASM_PATH:
|
|
|
|
|
process.env.PRIVATECHAT_CLIENT_TRANSFORMERS_WASM_PATH ?? '/transformers-wasm/',
|
2026-03-09 19:35:08 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const fileContents = `window.__PRIVATECHAT_ENV__ = ${JSON.stringify(runtimeEnv, null, 2)};\n`;
|
|
|
|
|
|
|
|
|
|
fs.mkdirSync(path.dirname(outputPath), { recursive: true });
|
|
|
|
|
fs.writeFileSync(outputPath, fileContents, 'utf8');
|