From 6b419e9d1feb8effffaab10c559b42a47cd25605 Mon Sep 17 00:00:00 2001 From: NoriDev Date: Fri, 29 Sep 2023 13:34:40 +0900 Subject: [PATCH] tweak f18e1e21 --- packages/frontend/src/boot/common.ts | 17 +++++++++++++++-- packages/frontend/src/components/MkUpdated.vue | 13 ++++++++----- packages/frontend/src/local-storage.ts | 1 + 3 files changed, 24 insertions(+), 7 deletions(-) diff --git a/packages/frontend/src/boot/common.ts b/packages/frontend/src/boot/common.ts index 90bb0bb8ad..b801234000 100644 --- a/packages/frontend/src/boot/common.ts +++ b/packages/frontend/src/boot/common.ts @@ -8,7 +8,7 @@ import { compareVersions } from 'compare-versions'; import widgets from '@/widgets/index.js'; import directives from '@/directives/index.js'; import components from '@/components/index.js'; -import { version, ui, lang, updateLocale } from '@/config.js'; +import { version, basedMisskeyVersion, ui, lang, updateLocale } from '@/config.js'; import { applyTheme } from '@/scripts/theme.js'; import { isDeviceDarkmode } from '@/scripts/is-device-darkmode.js'; import { i18n, updateI18n } from '@/i18n.js'; @@ -72,6 +72,7 @@ export async function common(createVue: () => App) { //#region クライアントが更新されたかチェック const lastVersion = miLocalStorage.getItem('lastVersion'); + const lastBasedMisskeyVersion = miLocalStorage.getItem('lastBasedMisskeyVersion'); if (lastVersion !== version) { miLocalStorage.setItem('lastVersion', version); @@ -84,11 +85,23 @@ export async function common(createVue: () => App) { } } catch (err) { /* empty */ } } + if (lastBasedMisskeyVersion !== basedMisskeyVersion) { + miLocalStorage.setItem('lastBasedMisskeyVersion', basedMisskeyVersion); + + // テーマリビルドするため + miLocalStorage.removeItem('theme'); + + try { // 変なバージョン文字列来るとcompareVersionsでエラーになるため + if (lastBasedMisskeyVersion != null && compareVersions(basedMisskeyVersion, lastBasedMisskeyVersion) === 1) { + isClientUpdated = true; + } + } catch (err) { /* empty */ } + } //#endregion //#region Detect language & fetch translations const localeVersion = miLocalStorage.getItem('localeVersion'); - const localeOutdated = (localeVersion == null || localeVersion !== version); + const localeOutdated = (localeVersion == null || localeVersion !== version || lastBasedMisskeyVersion !== basedMisskeyVersion); if (localeOutdated) { const res = await window.fetch(`/assets/locales/${lang}.${version}.json`); if (res.status === 200) { diff --git a/packages/frontend/src/components/MkUpdated.vue b/packages/frontend/src/components/MkUpdated.vue index 527816cc5a..5d30d9a626 100644 --- a/packages/frontend/src/components/MkUpdated.vue +++ b/packages/frontend/src/components/MkUpdated.vue @@ -7,7 +7,10 @@ SPDX-License-Identifier: AGPL-3.0-only
{{ i18n.ts.misskeyUpdated }}
-
✨{{ version }}🚀
+
+
✨{{ version }}🚀
+
{{ basedMisskeyVersion }}
+
{{ i18n.ts.whatIsNew }} {{ i18n.ts.gotIt }}
@@ -15,7 +18,7 @@ SPDX-License-Identifier: AGPL-3.0-only
{{ i18n.ts.whatIsNew }}
- Misskey + Misskey CherryPick {{ i18n.ts.ok }}
@@ -27,7 +30,7 @@ import { onMounted, shallowRef } from 'vue'; import MkModal from '@/components/MkModal.vue'; import MkButton from '@/components/MkButton.vue'; import MkSparkle from '@/components/MkSparkle.vue'; -import { version } from '@/config.js'; +import { version, basedMisskeyVersion } from '@/config.js'; import { i18n } from '@/i18n.js'; import { confetti } from '@/scripts/confetti.js'; import { unisonReload } from '@/scripts/unison-reload.js'; @@ -39,9 +42,9 @@ let showChangelog = $ref(false); const modal = shallowRef>(); -const whatIsNew = () => { +const whatIsNewMisskey = () => { // modal.value.close(); - window.open(`https://misskey-hub.net/docs/releases.html#_${version.replace(/\./g, '-')}`, '_blank'); + window.open(`https://misskey-hub.net/docs/releases.html#_${basedMisskeyVersion.replace(/\./g, '-')}`, '_blank'); }; const whatIsNewCherryPick = () => { diff --git a/packages/frontend/src/local-storage.ts b/packages/frontend/src/local-storage.ts index 7a1de1bb0a..de5282b8f3 100644 --- a/packages/frontend/src/local-storage.ts +++ b/packages/frontend/src/local-storage.ts @@ -7,6 +7,7 @@ type Keys = 'v' | 'basedMisskeyVersion' | 'lastVersion' | + 'lastBasedMisskeyVersion' | 'instance' | 'account' | 'accounts' |