mirror of
https://github.com/misskey-dev/misskey.git
synced 2026-05-14 08:45:44 +02:00
* deps: Update vite to v8 * fix * migrate some plugins to rolldown-based * fix broken lockfile * wip * update rolldown * override rolldown version * perf * spdx * fix * update vite to 8.0.1 * chore: rewrite rollup-plugin-unwind-css-module-class-name with MagicString * format * swap type definitions * replace using MagicString * provided magicString * fix code style * fix * fix * fix * fix * fix --------- Co-authored-by: kakkokari-gtyih <67428053+kakkokari-gtyih@users.noreply.github.com> * fix: lint fixes * swap sass with sass-embedded * fix lint * fix: インライン化されたVue SFC出力に対してCSS Module定義削除が効かないのを修正 * fix * fix: バックエンドのCSS読み込みの方法が悪いのを修正 * fix: 使用されないpreloadを削除 * fix lint [ci skip] * Apply suggestion from @syuilo * Add comment in pnpm-workspace.yaml [ci skip] * update vite/rolldown * remove magic-string --------- Co-authored-by: cm-ayf <cm.ayf2734@gmail.com> Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
37 lines
932 B
TypeScript
37 lines
932 B
TypeScript
/*
|
|
* SPDX-FileCopyrightText: syuilo and misskey-project
|
|
* SPDX-License-Identifier: AGPL-3.0-only
|
|
*/
|
|
|
|
import path from 'node:path';
|
|
import locales from 'i18n';
|
|
import type { Plugin } from 'vite';
|
|
|
|
const localesDir = path.resolve(__dirname, '../../../locales')
|
|
|
|
/**
|
|
* 外部ファイルを監視し、必要に応じてwebSocketでメッセージを送るViteプラグイン
|
|
*/
|
|
export default function pluginWatchLocales(): Plugin {
|
|
return {
|
|
name: 'watch-locales',
|
|
|
|
configureServer(server) {
|
|
const localeYmlPaths = Object.keys(locales).map(locale => path.join(localesDir, `${locale}.yml`));
|
|
|
|
// watcherにパスを追加
|
|
server.watcher.add(localeYmlPaths);
|
|
|
|
server.watcher.on('change', (filePath) => {
|
|
if (localeYmlPaths.includes(filePath)) {
|
|
server.ws.send({
|
|
type: 'custom',
|
|
event: 'locale-update',
|
|
data: filePath.match(/([^\/]+)\.yml$/)?.[1] || null,
|
|
})
|
|
}
|
|
});
|
|
},
|
|
};
|
|
}
|