summaryrefslogtreecommitdiff
path: root/packages/frontend/src
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 /packages/frontend/src
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 'packages/frontend/src')
-rw-r--r--packages/frontend/src/navbar.ts8
-rw-r--r--packages/frontend/src/pages/settings/index.vue12
-rw-r--r--packages/frontend/src/scripts/clear-cache.ts14
3 files changed, 24 insertions, 10 deletions
diff --git a/packages/frontend/src/navbar.ts b/packages/frontend/src/navbar.ts
index f0ed773f82..78a0945ddb 100644
--- a/packages/frontend/src/navbar.ts
+++ b/packages/frontend/src/navbar.ts
@@ -12,6 +12,7 @@ import * as os from '@/os.js';
import { i18n } from '@/i18n.js';
import { ui } from '@/config.js';
import { unisonReload } from '@/scripts/unison-reload.js';
+import { clearCache } from './scripts/clear-cache.js';
export const navbarItemDef = reactive({
notifications: {
@@ -171,4 +172,11 @@ export const navbarItemDef = reactive({
show: computed(() => $i != null),
to: `/@${$i?.username}`,
},
+ cacheClear: {
+ title: i18n.ts.cacheClear,
+ icon: 'ti ti-trash',
+ action: (ev) => {
+ clearCache();
+ },
+ },
});
diff --git a/packages/frontend/src/pages/settings/index.vue b/packages/frontend/src/pages/settings/index.vue
index 361a6c8c78..5a1a9aedb3 100644
--- a/packages/frontend/src/pages/settings/index.vue
+++ b/packages/frontend/src/pages/settings/index.vue
@@ -33,13 +33,11 @@ import { i18n } from '@/i18n.js';
import MkInfo from '@/components/MkInfo.vue';
import MkSuperMenu from '@/components/MkSuperMenu.vue';
import { signout, $i } from '@/account.js';
-import { unisonReload } from '@/scripts/unison-reload.js';
+import { clearCache } from '@/scripts/clear-cache.js';
import { instance } from '@/instance.js';
import { useRouter } from '@/router.js';
import { definePageMetadata, provideMetadataReceiver } from '@/scripts/page-metadata.js';
import * as os from '@/os.js';
-import { miLocalStorage } from '@/local-storage.js';
-import { fetchCustomEmojis } from '@/custom-emojis.js';
const indexInfo = {
title: i18n.ts.settings,
@@ -182,13 +180,7 @@ const menuDef = computed(() => [{
icon: 'ti ti-trash',
text: i18n.ts.clearCache,
action: async () => {
- os.waiting();
- miLocalStorage.removeItem('locale');
- miLocalStorage.removeItem('theme');
- miLocalStorage.removeItem('emojis');
- miLocalStorage.removeItem('lastEmojisFetchedAt');
- await fetchCustomEmojis(true);
- unisonReload();
+ await clearCache();
},
}, {
type: 'button',
diff --git a/packages/frontend/src/scripts/clear-cache.ts b/packages/frontend/src/scripts/clear-cache.ts
new file mode 100644
index 0000000000..5f27254b8a
--- /dev/null
+++ b/packages/frontend/src/scripts/clear-cache.ts
@@ -0,0 +1,14 @@
+import { unisonReload } from '@/scripts/unison-reload.js';
+import * as os from '@/os.js';
+import { miLocalStorage } from '@/local-storage.js';
+import { fetchCustomEmojis } from '@/custom-emojis.js';
+
+export async function clearCache() {
+ os.waiting();
+ miLocalStorage.removeItem('locale');
+ miLocalStorage.removeItem('theme');
+ miLocalStorage.removeItem('emojis');
+ miLocalStorage.removeItem('lastEmojisFetchedAt');
+ await fetchCustomEmojis(true);
+ unisonReload();
+}