parent
183e5cef8b
commit
e512f8c56d
|
@ -44,6 +44,7 @@
|
||||||
- Fix: 一部の言語でMisskey Webがクラッシュする問題を修正
|
- Fix: 一部の言語でMisskey Webがクラッシュする問題を修正
|
||||||
- Fix: チャンネルの作成・更新時に失敗した場合何も表示されない問題を修正 #11983
|
- Fix: チャンネルの作成・更新時に失敗した場合何も表示されない問題を修正 #11983
|
||||||
- Fix: 個人カードのemojiがバッテリーになっている問題を修正
|
- Fix: 個人カードのemojiがバッテリーになっている問題を修正
|
||||||
|
- Fix: 標準テーマと同じIDを使用してインストールできてしまう問題を修正
|
||||||
|
|
||||||
### Server
|
### Server
|
||||||
- Enhance: RedisへのTLのキャッシュをオフにできるように
|
- Enhance: RedisへのTLのキャッシュをオフにできるように
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
* SPDX-License-Identifier: AGPL-3.0-only
|
* SPDX-License-Identifier: AGPL-3.0-only
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { Theme } from '@/scripts/theme.js';
|
import { Theme, getBuiltinThemes } from '@/scripts/theme.js';
|
||||||
import { miLocalStorage } from '@/local-storage.js';
|
import { miLocalStorage } from '@/local-storage.js';
|
||||||
import { api } from '@/os.js';
|
import { api } from '@/os.js';
|
||||||
import { $i } from '@/account.js';
|
import { $i } from '@/account.js';
|
||||||
|
@ -29,6 +29,10 @@ export async function fetchThemes(): Promise<void> {
|
||||||
|
|
||||||
export async function addTheme(theme: Theme): Promise<void> {
|
export async function addTheme(theme: Theme): Promise<void> {
|
||||||
if ($i == null) return;
|
if ($i == null) return;
|
||||||
|
const builtinThemes = await getBuiltinThemes();
|
||||||
|
if (builtinThemes.some(t => t.id === theme.id)) {
|
||||||
|
throw new Error('builtin theme');
|
||||||
|
}
|
||||||
await fetchThemes();
|
await fetchThemes();
|
||||||
const themes = getThemes().concat(theme);
|
const themes = getThemes().concat(theme);
|
||||||
await api('i/registry/set', { scope: ['client'], key: 'themes', value: themes });
|
await api('i/registry/set', { scope: ['client'], key: 'themes', value: themes });
|
||||||
|
|
Loading…
Reference in a new issue