UNPKG

@anyme/anymejs

Version:
179 lines (175 loc) 5.27 kB
'use strict'; var require$$0 = require('node:path'); var winston = require('winston'); const ENV_KEY_VALUES = [ { key: "server.port", value: "PORT", type: "number", }, { key: "server.route.routePrefix", value: "API_PREFIX", type: "string" }, { key: "logger.level", value: "LOG_LEVEL", type: "string" }, { key: "db.client.host", value: "DB_HOST", type: "string" }, { key: "db.client.port", value: "DB_PORT", type: "number", }, { key: "db.client.username", value: "DB_USER", type: "string" }, { key: "db.client.password", value: "DB_PASSWORD", type: "string" }, { key: "db.client.database", value: "DB_DATABASE", type: "number" }, { key: "redis.client.name", value: "REDIS_MASTER_NAME", type: "string" }, { key: "redis.client.username", value: "REDIS_USERNAME", type: "string" }, { key: "redis.client.host", value: "REDIS_HOST", type: "string" }, { key: "redis.client.port", value: "REDIS_PORT", type: "number", }, { key: "redis.client.password", value: "REDIS_PASSWORD", type: "string" }, { key: "redis.client.db", value: "REDIS_DATABASE", type: "string", }, { key: "session.client.secret", value: "SESSION_SECRET", type: "string" }, { key: "session.prefix", value: "SESSION_PREFIX", type: "string", }, { key: "https.options.port", value: "HTTPS_PORT", type: "number", }, { key: "https.options.key", value: "HTTPS_KEY", type: "resolve", }, { key: "https.options.cert", value: "HTTPS_CERT", type: "resolve", }, ]; const CONFIG = { logger: { level: "info", format: winston.format.combine(winston.format.timestamp({ format: "YYYY-MM-DD HH:mm:ss" }), winston.format.errors({ stack: true }), winston.format.printf(({ timestamp, level, message, stack }) => { level = level.toUpperCase(); const printf = `${timestamp} [${level}] ${message}`; return stack ? `${printf}\n${stack}` : printf; })), transports: { console: { format: winston.format.colorize({ all: true }), }, file: false, }, }, db: { enable: false, client: { type: "mysql", host: "localhost", port: 3306, username: "root", entities: ["src/models/**/*.{ts,js,mjs,cjs}"], migrations: ["src/migrations/**/*.{ts,js,mjs,cjs}"], subscribers: ["src/subscriber/**/*.{ts,js,mjs,cjs}"], entitySchemas: ["src/schema/**/*.json"], poolSize: 5, synchronize: false, logging: process.env.NODE_ENV === "development", }, }, redis: { enable: false, }, session: { enable: false, prefix: "session:", store: "memory", client: { secret: "session", resave: false, saveUninitialized: false, cookie: { secure: process.env.NODE_ENV === "production", httpOnly: true, maxAge: 1000 * 60 * 60, }, }, }, server: { port: 3000, proxy: false, https: { enable: false, port: 443, ssl: { key: "./ssl/server.key", cert: "./ssl/server.crt", }, }, route: { cors: { origin: "*", methods: "GET,POST,PUT,DELETE,OPTIONS", credentials: false, }, development: process.env.NODE_ENV === "development", routePrefix: "", controllers: [require$$0.resolve("src/controllers/**/*.{ts,js,mjs,cjs}")], middlewares: [require$$0.resolve("src/middlewares/**/*.{ts,js,mjs,cjs}")], interceptors: [require$$0.resolve("src/interceptors/**/*.{ts,js,mjs,cjs}")], }, }, limiter: { enable: false, store: "memory", redis: "limiter", rule: { slowDownOptions: { windowMs: 15 * 60 * 1000, delayAfter: 100, delayMs: (hits) => hits * 100, maxDelayMs: 20000, }, rateLimitOptions: { windowMs: 15 * 60 * 1000, limit: 1000, message: { status: 429, message: "Too many requests from this IP, please try again later.", }, standardHeaders: true, legacyHeaders: false, skipSuccessfulRequests: true, }, }, }, cache: { enable: false, }, sse: { enable: false, prefix: "/", options: { cors: { origins: "*", methods: "GET", }, }, }, io: { enable: false, sticky: false, client: "socket", }, }; exports.CONFIG = CONFIG; exports.ENV_KEY_VALUES = ENV_KEY_VALUES; //# sourceMappingURL=default.config.js.map