summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authoryukineko <27853966+hideki0403@users.noreply.github.com>2023-11-30 14:48:02 +0900
committerGitHub <noreply@github.com>2023-11-30 14:48:02 +0900
commit22d6fa1fdf1dd4b61673d10cac6ca866dd5f26d8 (patch)
tree37d00b712394e319d807e365b831939664f99152 /scripts
parentfix(docker): cannot build docker image on some environments (#12494) (diff)
downloadsharkey-22d6fa1fdf1dd4b61673d10cac6ca866dd5f26d8.tar.gz
sharkey-22d6fa1fdf1dd4b61673d10cac6ca866dd5f26d8.tar.bz2
sharkey-22d6fa1fdf1dd4b61673d10cac6ca866dd5f26d8.zip
enhance(dev): 開発モード時にlocaleと型定義が自動的に再生成されるように (#12481)
* enhance: localeを任意のタイミングでリビルドできるように * enhance: localeも監視し、必要であればlocaleをリビルドするように * feat: devモードの時のみナビゲーションバーからキャッシュクリアができるように * refactor: キャッシュクリア部分を共通化 * fix: localesのファイル変更イベントが取れないのを修正 * fix: replaceAllでコケるのを修正 * change: 開発モードに関係なくナビゲーションバーからキャッシュクリアできるように * refactor: 必要のないリビルドをしないように * update: CHANGELOG.md --------- Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
Diffstat (limited to 'scripts')
-rw-r--r--scripts/build-assets.mjs18
1 files changed, 11 insertions, 7 deletions
diff --git a/scripts/build-assets.mjs b/scripts/build-assets.mjs
index 1ffcec8aa3..f8f09ec2fb 100644
--- a/scripts/build-assets.mjs
+++ b/scripts/build-assets.mjs
@@ -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,12 @@ 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 watcher = fs.watch('./locales');
+ for await (const event of watcher) {
+ const filename = event.filename?.replaceAll('\\', '/');
+ if (/^[a-z]+-[A-Z]+\.yml/.test(filename)) {
+ locales = buildLocales();
+ await copyFrontendLocales()
+ }
+ }
}