feat: pin + reaction as the first suggestion
This commit is contained in:
parent
ff9066ed1c
commit
b038728013
1 changed files with 22 additions and 6 deletions
|
|
@ -21,18 +21,34 @@ export default function SuggestedEmojis({
|
|||
useEffect(() => {
|
||||
try {
|
||||
const suggested = getSuggested()
|
||||
const suggestEmojis = suggested
|
||||
const emojiSet = new Set<string>()
|
||||
const suggestEmojis = (
|
||||
suggested
|
||||
.sort((a, b) => b.count - a.count)
|
||||
.map((item) => parseEmojiPickerUnified(item.unified))
|
||||
.filter(Boolean) as (string | TEmoji)[]
|
||||
setSuggestedEmojis(() => [...suggestEmojis, ...DEFAULT_SUGGESTED_EMOJIS].slice(0, 8))
|
||||
)
|
||||
.concat(DEFAULT_SUGGESTED_EMOJIS)
|
||||
.filter((emoji) => {
|
||||
if (typeof emoji !== 'string') return true
|
||||
if (emojiSet.has(emoji)) return false
|
||||
emojiSet.add(emoji)
|
||||
return true
|
||||
})
|
||||
setSuggestedEmojis(suggestEmojis.slice(0, 9))
|
||||
} catch {
|
||||
// ignore
|
||||
}
|
||||
}, [])
|
||||
|
||||
return (
|
||||
<div className="flex gap-2 p-1" onClick={(e) => e.stopPropagation()}>
|
||||
<div className="flex gap-1 p-1" onClick={(e) => e.stopPropagation()}>
|
||||
<div
|
||||
className="w-8 h-8 rounded-lg clickable flex justify-center items-center text-xl"
|
||||
onClick={() => onEmojiClick('+')}
|
||||
>
|
||||
<Emoji emoji="+" />
|
||||
</div>
|
||||
{suggestedEmojis.map((emoji, index) =>
|
||||
typeof emoji === 'string' ? (
|
||||
<div
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue