summaryrefslogtreecommitdiff
path: root/packages/frontend/src/components/MkEmojiPicker.vue
diff options
context:
space:
mode:
author1Step621 <86859447+1STEP621@users.noreply.github.com>2024-02-06 16:45:21 +0900
committerGitHub <noreply@github.com>2024-02-06 16:45:21 +0900
commit74245df3829622a3cc0c880ea710b5c1c4f5c584 (patch)
tree3f6f4f1c598f4bd75be6bbfcd1d5deee8daa5adc /packages/frontend/src/components/MkEmojiPicker.vue
parentenhance(frontend): KeepAliveのページキャッシュを削除できるよ... (diff)
downloadmisskey-74245df3829622a3cc0c880ea710b5c1c4f5c584.tar.gz
misskey-74245df3829622a3cc0c880ea710b5c1c4f5c584.tar.bz2
misskey-74245df3829622a3cc0c880ea710b5c1c4f5c584.zip
Enhance(frontend): フロント側でもリアクション権限のチェックをするように (#13134)
* フロント側でもリアクション権限のチェックをするように * update CHANGELOG.md * lint fixes * remove unrelated diffs * deny -> reject denyは「(信用しないことを理由に)拒否する」という意味らしい * allow -> accept * EmojiSimpleにlocalOnlyを含めるように * リアクション権限のない絵文字は打てないように(ダイアログを出すのではなく) * regenerate type definitions * lint fix * remove unused locales * remove unnecessary async
Diffstat (limited to 'packages/frontend/src/components/MkEmojiPicker.vue')
-rw-r--r--packages/frontend/src/components/MkEmojiPicker.vue4
1 files changed, 3 insertions, 1 deletions
diff --git a/packages/frontend/src/components/MkEmojiPicker.vue b/packages/frontend/src/components/MkEmojiPicker.vue
index 58160cdf5b..f5ab7a2e29 100644
--- a/packages/frontend/src/components/MkEmojiPicker.vue
+++ b/packages/frontend/src/components/MkEmojiPicker.vue
@@ -118,6 +118,7 @@ import { i18n } from '@/i18n.js';
import { defaultStore } from '@/store.js';
import { customEmojiCategories, customEmojis, customEmojisMap } from '@/custom-emojis.js';
import { $i } from '@/account.js';
+import { checkReactionPermissions } from '@/scripts/check-reaction-permissions.js';
const props = withDefaults(defineProps<{
showPinned?: boolean;
@@ -126,6 +127,7 @@ const props = withDefaults(defineProps<{
asDrawer?: boolean;
asWindow?: boolean;
asReactionPicker?: boolean; // 今は使われてないが将来的に使いそう
+ targetNote?: Misskey.entities.Note;
}>(), {
showPinned: true,
});
@@ -340,7 +342,7 @@ watch(q, () => {
});
function filterAvailable(emoji: Misskey.entities.EmojiSimple): boolean {
- return ((emoji.roleIdsThatCanBeUsedThisEmojiAsReaction == null || emoji.roleIdsThatCanBeUsedThisEmojiAsReaction.length === 0) || ($i && $i.roles.some(r => emoji.roleIdsThatCanBeUsedThisEmojiAsReaction?.includes(r.id)))) ?? false;
+ return !props.targetNote || checkReactionPermissions($i!, props.targetNote, emoji);
}
function focus() {