enhance(frontend): improve migration of old settings

This commit is contained in:
syuilo 2025-04-07 10:21:49 +09:00
parent 1ede45c8fb
commit 6ef5c8bb92
6 changed files with 18 additions and 8 deletions

View file

@ -22,7 +22,7 @@ const modal = useTemplateRef('modal');
const props = defineProps<{
success: boolean;
showing: boolean;
text?: string;
text?: string | null;
}>();
const emit = defineEmits<{

View file

@ -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(),

View file

@ -185,7 +185,6 @@ async function deleteAccount() {
}
function migrate() {
os.waiting();
migrateOldSettings();
}

View file

@ -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);
});
}