diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml index d4fba36746d5f6dc384b5e25d101d7ad9979bbb0..15a33932a5be94c4c2d1ae756f8cef80e207f307 100644 --- a/locales/ja-JP.yml +++ b/locales/ja-JP.yml @@ -932,6 +932,7 @@ assign: "アサイン" unassign: "アサインを解除" color: "色" manageCustomEmojis: "カスタム絵文å—ã®ç®¡ç†" +youCannotCreateAnymore: "ã“れ以上作æˆã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。" _role: new: "ãƒãƒ¼ãƒ«ã®ä½œæˆ" diff --git a/packages/frontend/src/os.ts b/packages/frontend/src/os.ts index 15d725defb04dd9f30bd4588c82a738146fdcc43..891d598d8924d50c79540bd3706f6e0267133197 100644 --- a/packages/frontend/src/os.ts +++ b/packages/frontend/src/os.ts @@ -4,6 +4,7 @@ import { Component, markRaw, Ref, ref, defineAsyncComponent } from 'vue'; import { EventEmitter } from 'eventemitter3'; import insertTextAtCursor from 'insert-text-at-cursor'; import * as Misskey from 'misskey-js'; +import { i18n } from './i18n'; import MkPostFormDialog from '@/components/MkPostFormDialog.vue'; import MkWaitingDialog from '@/components/MkWaitingDialog.vue'; import { MenuItem } from '@/types/menu'; @@ -17,9 +18,16 @@ export const apiWithDialog = (( ) => { const promise = api(endpoint, data, token); promiseDialog(promise, null, (err) => { + let title = null; + let text = err.message + '\n' + (err as any).id; + if (err.code.startsWith('TOO_MANY')) { + title = i18n.ts.youCannotCreateAnymore; + text = `${i18n.ts.error}: ${err.id}`; + } alert({ type: 'error', - text: err.message + '\n' + (err as any).id, + title, + text, }); });