fix: tailwindcss v4 build

This commit is contained in:
Yumin Gui
2025-07-18 00:23:55 -07:00
parent 3d81da84ae
commit c6fc6c8a48
15 changed files with 239 additions and 241 deletions

View File

@@ -1,22 +1,22 @@
#!/usr/bin/env node
/* eslint-disable no-console,@typescript-eslint/no-var-requires */
const http = require('http');
const path = require('path');
const http = require("http");
const path = require("path");
// 调用 generate-manifest.js 生成 manifest.json
function generateManifest() {
console.log('Generating manifest.json for Docker deployment...');
console.log("Generating manifest.json for Docker deployment...");
try {
const generateManifestScript = path.join(
__dirname,
'scripts',
'generate-manifest.js'
"scripts",
"generate-manifest.js"
);
require(generateManifestScript);
} catch (error) {
console.error('❌ Error calling generate-manifest.js:', error);
console.error("❌ Error calling generate-manifest.js:", error);
throw error;
}
}
@@ -24,10 +24,10 @@ function generateManifest() {
generateManifest();
// 直接在当前进程中启动 standalone Server`server.js`
require('./server.js');
require("./server.js");
// 每 1 秒轮询一次,直到请求成功
const TARGET_URL = `http://${process.env.HOSTNAME || 'localhost'}:${
const TARGET_URL = `http://${process.env.HOSTNAME || "localhost"}:${
process.env.PORT || 3000
}/login`;
@@ -37,7 +37,7 @@ const intervalId = setInterval(() => {
const req = http.get(TARGET_URL, (res) => {
// 当返回 2xx 状态码时认为成功,然后停止轮询
if (res.statusCode && res.statusCode >= 200 && res.statusCode < 300) {
console.log('Server is up, stop polling.');
console.log("Server is up, stop polling.");
clearInterval(intervalId);
// 服务器启动后,立即执行一次 cron 任务
@@ -57,34 +57,34 @@ const intervalId = setInterval(() => {
// 执行 cron 任务的函数
function executeCronJob() {
const cronUrl = `http://${process.env.HOSTNAME || 'localhost'}:${
const cronUrl = `http://${process.env.HOSTNAME || "localhost"}:${
process.env.PORT || 3000
}/api/cron`;
console.log(`Executing cron job: ${cronUrl}`);
const req = http.get(cronUrl, (res) => {
let data = '';
let data = "";
res.on('data', (chunk) => {
res.on("data", (chunk) => {
data += chunk;
});
res.on('end', () => {
res.on("end", () => {
if (res.statusCode && res.statusCode >= 200 && res.statusCode < 300) {
console.log('Cron job executed successfully:', data);
console.log("Cron job executed successfully:", data);
} else {
console.error('Cron job failed:', res.statusCode, data);
console.error("Cron job failed:", res.statusCode, data);
}
});
});
req.on('error', (err) => {
console.error('Error executing cron job:', err);
req.on("error", (err) => {
console.error("Error executing cron job:", err);
});
req.setTimeout(30000, () => {
console.error('Cron job timeout');
console.error("Cron job timeout");
req.destroy();
});
}