const os = require('os'); const fs = require('fs'); const path = require('path'); const { chromium } = require('playwright'); const sharp = require('sharp'); const DIR = process.env.CARDS_PATH || '../cards'; async function genCards({ id, type }) { if (!process.env.DOMAIN) throw new Error("❌ DOMAIN не заданий у .env"); if (!process.env.ADMIN_TOKEN) throw new Error("❌ ADMIN_TOKEN не заданий у .env"); if (!process.env.CARDS_PATH) throw new Error("❌ CARDS_PATH не заданий у .env"); const name = type == 'homestead' ? `H${id}` : `T${id}` const URL = `https://${process.env.DOMAIN}/api/${type}/${id}`; // Замени на свой URL const AUTH_TOKEN = process.env.ADMIN_TOKEN; const DIR = process.env.CARDS_PATH || '../cards'; const SCREENSHOT_FILE = path.resolve(`${DIR}/cache/${type}/${name}.png`); const OUTPUT_FILE = path.resolve(`${DIR}/${type}/${name}.webp`); // --- Отримуємо дані --- const res = await fetch(URL, { headers: { 'Authorization': AUTH_TOKEN, 'Accept': 'application/json' } }); if (!res.ok) throw new Error(`Помилка запиту: ${res.status}`); const data = await res.json(); // --- Генеруємо HTML --- const html = `