mirror of
https://github.com/makeplane/plane.git
synced 2025-12-25 16:19:43 +01:00
* chore: paginated the issues in space app * chore: storing query using filters * chore: added filters for priority * chore: issue view model save function * chore: votes and reactions added in issues endpoint * chore: added filters in the public endpoint * chore: issue detail endpoint * chore: added labels, modules and assignees * refactor existing project publish in space app * fix clear all filters in space App * chore: removed the extra serialier * remove optional chaining and fallback to an empty array --------- Co-authored-by: NarayanBavisetti <narayan3119@gmail.com>
34 lines
814 B
TypeScript
34 lines
814 B
TypeScript
export const renderEmoji = (
|
|
emoji:
|
|
| string
|
|
| {
|
|
name: string;
|
|
color: string;
|
|
}
|
|
) => {
|
|
if (!emoji) return;
|
|
|
|
if (typeof emoji === "object")
|
|
return (
|
|
<span style={{ color: emoji.color }} className="material-symbols-rounded text-lg">
|
|
{emoji.name}
|
|
</span>
|
|
);
|
|
else return isNaN(parseInt(emoji)) ? emoji : String.fromCodePoint(parseInt(emoji));
|
|
};
|
|
|
|
export const groupReactions = <T extends { reaction: string }>(reactions: T[], key: string) => {
|
|
const groupedReactions = reactions.reduce(
|
|
(acc: { [key: string]: T[] }, reaction: any) => {
|
|
if (!acc[reaction[key]]) {
|
|
acc[reaction[key]] = [];
|
|
}
|
|
acc[reaction[key]].push(reaction);
|
|
return acc;
|
|
},
|
|
{} as { [key: string]: T[] }
|
|
);
|
|
|
|
return groupedReactions;
|
|
};
|