import path from "node:path"; import type { RuntimeConfig } from "../types/runtime-config.js"; export function createDefaultRuntimeConfig(projectRoot: string): RuntimeConfig { return { server: { port: 3000, }, data: { root: path.resolve(projectRoot, "data"), }, logging: { level: "info", retentionDays: 30, }, database: { url: "postgres://postgres:postgres@127.0.0.1:5432/order_site", ssl: false, maxConnections: 10, }, orders: { claimBaseUrl: "http://127.0.0.1:5173/#/claim", tokenTtlHours: 24, }, admin: { sessionSecret: "", sessionTtlHours: 12, defaultUsers: [], }, platforms: { ninetyone: { userId: "", secret: "", version: "1.0", shopId: "91kaquan", shopName: "91卡券", timestampToleranceSeconds: 600, cardsEncoding: "aes-256-ecb-base64", }, kuaishouIndustry: { appKey: "", appSecret: "", signSecret: "", messageSecret: "", provider: "kuaishou-industry", platform: "kuaishou", shopId: "kuaishou-industry", shopName: "快手行业电子凭证", version: "1", }, cloudtentacles: { baseUrl: "https://123.207.217.176", timeoutMs: 5000, sendSmsPath: "/public/verif_code", loginPath: "/public/login", userInfoPath: "/user/info", assetPath: "/user/get_asset", permissionPath: "/user/get_permission", categoriesPath: "/categories/get", skuListPath: "/sku/list", skuBuyPath: "/sku/buy", skuUsePath: "/sku/use", knapsackPath: "/user/get_knapsack", vnListPath: "/vn/list", vnAppointPath: "/vn/appoint", vnGenerateLoginCodePath: "/vn/generate_login_code", vnVerifCodePath: "/public/vn_verif_code", vnVerifyLoginCodePath: "/vn/verify_login_code", vnBindUrlPath: "/vn/bind_url", vnBindInfoPath: "/vn/bind_info", vnBackPath: "/vn/back", bindUrlTtlSeconds: 600, bindUrlProbeIntervalSeconds: 30, bindUrlProbeTimeoutMs: 5000, bindUrlProbeUserAgent: "Mozilla/5.0 (Linux; Android 12; M2012K11AC Build/SKQ1.211006.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/98.0.4758.102 MQQBrowser/6.2 TBS/046141 Mobile Safari/537.36 V1_AND_SQ_8.8.85_2674_YYB_D QQ/8.8.85.7685 NetType/WIFI WebP/0.3.0 Pixel/1080 StatusBarHeight/108 SimpleUISwitch/0 QQTheme/1000", bindUrlProbeEndpoint: "https://comm.ams.game.qq.com/ide/", bindUrlProbeChartId: "323794", bindUrlProbeSubChartId: "323794", bindUrlProbeIdeToken: "z90Syo", bindUrlProbeActivityUrl: "http%3A%2F%2Fgp.qq.com%2Fcp%2Fa20240828cmcc%2F", bindUrlProbeReferer: "https://gp.qq.com/", bindUrlProbeExtraCookie: "", clientSource: "ct-client", deviceId: "08bc9d8c-fd15-48ea-bc00-8d754076cafc", deviceType: 1, publicKeyPem: `-----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsSzjk+9st2f8IpYqYaM5 F7K27ZR2IvzxTr2w4zgZAS2+BRdgMvXUOITdFQT+ytYF/r3pIgTkL7MF9UQuylmb S57DiqGBLNBS7FzKyYzWTOc9yYA3+KrarbvpUn/Bm3UK+KKB17viPy+0pnNAHysJ pzqadmAtQhI1ZDujJ2sW+FkV/pC8KIFahiyPIHjncy1ZG/BbRF3BDhvDcr6O7scO GsHstGf9XsZBIITS5LYmlai7OdY4ZIVxUtQbfWzibihO+YDJJzFgt47drX0Ajo85 PfQTPNA++KsXtwRX9M6Re3vkTDRsutIIWKtj8jqhUbbYS3vzS8GJnAWavUFVkR15 0wIDAQAB -----END PUBLIC KEY-----`, }, }, cors: { allowedOrigins: ["*"], }, }; }