summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--locales/index.d.ts4
-rw-r--r--locales/ja-JP.yml1
-rw-r--r--packages/frontend/src/components/MkWaitingDialog.vue2
-rw-r--r--packages/frontend/src/os.ts3
-rw-r--r--packages/frontend/src/pages/settings/other.vue1
-rw-r--r--packages/frontend/src/pref-migrate.ts15
6 files changed, 18 insertions, 8 deletions
diff --git a/locales/index.d.ts b/locales/index.d.ts
index afaa2d975d..c157cb2a1f 100644
--- a/locales/index.d.ts
+++ b/locales/index.d.ts
@@ -5382,6 +5382,10 @@ export interface Locale extends ILocale {
* 埋め込み
*/
"embed": string;
+ /**
+ * 設定を移行しています。しばらくお待ちください... (後ほど、設定→その他→旧設定情報を移行 で手動で移行することもできます)
+ */
+ "settingsMigrating": string;
"_chat": {
/**
* まだメッセージはありません
diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml
index 323dc3a38a..b0084dc440 100644
--- a/locales/ja-JP.yml
+++ b/locales/ja-JP.yml
@@ -1341,6 +1341,7 @@ right: "右"
bottom: "下"
top: "上"
embed: "埋め込み"
+settingsMigrating: "設定を移行しています。しばらくお待ちください... (後ほど、設定→その他→旧設定情報を移行 で手動で移行することもできます)"
_chat:
noMessagesYet: "まだメッセージはありません"
diff --git a/packages/frontend/src/components/MkWaitingDialog.vue b/packages/frontend/src/components/MkWaitingDialog.vue
index 282da00ee1..820cf05e1f 100644
--- a/packages/frontend/src/components/MkWaitingDialog.vue
+++ b/packages/frontend/src/components/MkWaitingDialog.vue
@@ -22,7 +22,7 @@ const modal = useTemplateRef('modal');
const props = defineProps<{
success: boolean;
showing: boolean;
- text?: string;
+ text?: string | null;
}>();
const emit = defineEmits<{
diff --git a/packages/frontend/src/os.ts b/packages/frontend/src/os.ts
index 63298d9407..813b49635d 100644
--- a/packages/frontend/src/os.ts
+++ b/packages/frontend/src/os.ts
@@ -547,12 +547,13 @@ export function success(): Promise<void> {
});
}
-export function waiting(): Promise<void> {
+export function waiting(text?: string | null): Promise<void> {
return new Promise(resolve => {
const showing = ref(true);
const { dispose } = popup(MkWaitingDialog, {
success: false,
showing: showing,
+ text,
}, {
done: () => resolve(),
closed: () => dispose(),
diff --git a/packages/frontend/src/pages/settings/other.vue b/packages/frontend/src/pages/settings/other.vue
index 6736572e0b..58fcb0c5e0 100644
--- a/packages/frontend/src/pages/settings/other.vue
+++ b/packages/frontend/src/pages/settings/other.vue
@@ -185,7 +185,6 @@ async function deleteAccount() {
}
function migrate() {
- os.waiting();
migrateOldSettings();
}
diff --git a/packages/frontend/src/pref-migrate.ts b/packages/frontend/src/pref-migrate.ts
index cb5e817f0e..414bb9c5aa 100644
--- a/packages/frontend/src/pref-migrate.ts
+++ b/packages/frontend/src/pref-migrate.ts
@@ -10,14 +10,19 @@ import { prefer } from '@/preferences.js';
import { misskeyApi } from '@/utility/misskey-api.js';
import { deckStore } from '@/ui/deck/deck-store.js';
import { unisonReload } from '@/utility/unison-reload.js';
+import * as os from '@/os.js';
+import { i18n } from '@/i18n.js';
// TODO: そのうち消す
export function migrateOldSettings() {
+ os.waiting(i18n.ts.settingsMigrating);
+
store.loaded.then(async () => {
- const themes = await misskeyApi('i/registry/get', { scope: ['client'], key: 'themes' }).catch(() => []);
- if (themes.length > 0) {
- prefer.commit('themes', themes);
- }
+ misskeyApi('i/registry/get', { scope: ['client'], key: 'themes' }).catch(() => []).then((themes: any) => {
+ if (themes.length > 0) {
+ prefer.commit('themes', themes);
+ }
+ });
const plugins = ColdDeviceStorage.get('plugins');
prefer.commit('plugins', plugins.map(p => ({
@@ -136,6 +141,6 @@ export function migrateOldSettings() {
window.setTimeout(() => {
unisonReload();
- }, 5000);
+ }, 10000);
});
}