| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- import { readFileSync, writeFileSync, existsSync } from "fs";
- import { resolve, dirname } from "path";
- import { fileURLToPath } from "url";
- const __dirname = dirname(fileURLToPath(import.meta.url));
- const root = resolve(__dirname, "..");
- function loadEnv() {
- const envPath = resolve(root, ".env");
- if (!existsSync(envPath)) return {};
- const env = {};
- for (const line of readFileSync(envPath, "utf-8").split("\n")) {
- const trimmed = line.trim();
- if (!trimmed || trimmed.startsWith("#")) continue;
- const idx = trimmed.indexOf("=");
- if (idx === -1) continue;
- const key = trimmed.slice(0, idx).trim();
- const val = trimmed.slice(idx + 1).trim();
- env[key] = val;
- }
- return env;
- }
- const env = loadEnv();
- const templatePath = resolve(root, "stripe-app.template.json");
- const outputPath = resolve(root, "stripe-app.json");
- const template = JSON.parse(readFileSync(templatePath, "utf-8"));
- if (env.STRIPE_APP_ID) {
- template.id = env.STRIPE_APP_ID;
- console.log(`Using app ID from .env: ${env.STRIPE_APP_ID}`);
- } else {
- console.log(`No STRIPE_APP_ID in .env, using template default: ${template.id}`);
- }
- if (env.STRIPE_APP_NAME) {
- template.name = env.STRIPE_APP_NAME;
- }
- writeFileSync(outputPath, JSON.stringify(template, null, 4) + "\n");
- console.log("Generated stripe-app.json");
|