UNPKG

manifest

Version:

Self-hosted Manifest LLM router with embedded server, SQLite database, and dashboard

48 lines 2.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.appConfig = void 0; const config_1 = require("@nestjs/config"); const path_1 = require("path"); const os_1 = require("os"); function sanitizeDbPath(raw) { if (!raw) return ''; return (0, path_1.resolve)(raw); } function resolveLocalDbPath() { const explicit = process.env['MANIFEST_DB_PATH']; if (explicit) return sanitizeDbPath(explicit); if (process.env['MANIFEST_MODE'] !== 'local') return ''; return (0, path_1.join)((0, os_1.homedir)(), '.openclaw', 'manifest', 'manifest.db'); } function resolveDatabaseUrl() { const url = process.env['DATABASE_URL']; if (url) return url; if (process.env['MANIFEST_MODE'] === 'local') return ''; if (process.env['NODE_ENV'] === 'test') return 'postgresql://myuser:mypassword@localhost:5432/mydatabase'; throw new Error('DATABASE_URL is required in cloud mode. Set it in your .env file.'); } exports.appConfig = (0, config_1.registerAs)('app', () => ({ port: Number(process.env['PORT'] ?? 3001), nodeEnv: process.env['NODE_ENV'] ?? 'development', databaseUrl: resolveDatabaseUrl(), manifestMode: process.env['MANIFEST_MODE'] ?? 'cloud', dbPath: resolveLocalDbPath(), corsOrigin: process.env['CORS_ORIGIN'] ?? 'http://localhost:3000', betterAuthUrl: process.env['BETTER_AUTH_URL'] ?? '', throttleTtl: Number(process.env['THROTTLE_TTL'] ?? 60000), throttleLimit: Number(process.env['THROTTLE_LIMIT'] ?? 100), apiKey: process.env['API_KEY'] ?? '', bindAddress: process.env['BIND_ADDRESS'] ?? '127.0.0.1', mailgunApiKey: process.env['MAILGUN_API_KEY'] ?? '', mailgunDomain: process.env['MAILGUN_DOMAIN'] ?? '', notificationFromEmail: process.env['NOTIFICATION_FROM_EMAIL'] ?? 'noreply@manifest.build', pluginOtlpEndpoint: process.env['PLUGIN_OTLP_ENDPOINT'] ?? '', dbPoolMax: Number(process.env['DB_POOL_MAX'] ?? 20), })); //# sourceMappingURL=app.config.js.map