23 lines
744 B
JavaScript
23 lines
744 B
JavaScript
import { readdirSync, readFileSync, writeFileSync, existsSync } from 'node:fs';
|
|
import { join } from 'node:path';
|
|
|
|
// vite lib 模式 build 完后写一份 wc-manifest.json,给后端 /ui-manifest 端点读
|
|
const distDir = 'dist';
|
|
if (!existsSync(distDir)) {
|
|
console.error('dist/ not found; run vite build first');
|
|
process.exit(1);
|
|
}
|
|
|
|
const files = readdirSync(distDir);
|
|
const js = files.find((f) => f.endsWith('.js')) || 'plugin-element.js';
|
|
const css = files.filter((f) => f.endsWith('.css'));
|
|
|
|
const manifest = {
|
|
tag: 'plugin-data-analytics',
|
|
js,
|
|
css,
|
|
};
|
|
|
|
writeFileSync(join(distDir, 'wc-manifest.json'), JSON.stringify(manifest, null, 2) + '\n', 'utf-8');
|
|
console.log(`wrote dist/wc-manifest.json: ${JSON.stringify(manifest)}`);
|