enhance: localeも監視し、必要であればlocaleをリビルドするように
This commit is contained in:
parent
a00aea582c
commit
4395f4059b
|
@ -9,10 +9,12 @@ import cssnano from 'cssnano';
|
|||
import postcss from 'postcss';
|
||||
import * as terser from 'terser';
|
||||
|
||||
import locales from '../locales/index.js';
|
||||
import { build as buildLocales } from '../locales/index.js';
|
||||
import generateDTS from '../locales/generateDTS.js';
|
||||
import meta from '../package.json' assert { type: "json" };
|
||||
|
||||
let locales = buildLocales();
|
||||
|
||||
async function copyFrontendFonts() {
|
||||
await fs.cp('./packages/frontend/node_modules/three/examples/fonts', './built/_frontend_dist_/fonts', { dereference: true, recursive: true });
|
||||
}
|
||||
|
@ -89,10 +91,23 @@ async function build() {
|
|||
await build();
|
||||
|
||||
if (process.argv.includes("--watch")) {
|
||||
const watcher = fs.watch('./packages', { recursive: true });
|
||||
for await (const event of watcher) {
|
||||
if (/^[a-z]+\/src/.test(event.filename)) {
|
||||
await build();
|
||||
}
|
||||
}
|
||||
const watchers = [
|
||||
fs.watch('./packages', { recursive: true }),
|
||||
fs.watch('./locales'),
|
||||
];
|
||||
|
||||
while (true) {
|
||||
const event = (await Promise.race(watchers.map(watcher => watcher.next())))?.value;
|
||||
if (!event) continue;
|
||||
const filename = event.filename?.replaceAll('\\', '/');
|
||||
|
||||
if (/^[a-z]+\/src/.test(filename)) {
|
||||
await build();
|
||||
}
|
||||
|
||||
if (/[a-z]+-[A-Z]+\.yml/.test(filename)) {
|
||||
locales = buildLocales();
|
||||
await copyFrontendLocales()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue