forked from github/plane
30cc923fdb
* fix: issue archive without automation * fix: unarchive issue endpoint change * chore: archiving logic implemented in the quick-actions dropdowns * chore: peek overview archive button * chore: issue archive completed at state * chore: updated archiving icon and added archive option everywhere * chore: all issues quick actions dropdown * chore: archive and unarchive response * fix: archival mutation * fix: restore issue from peek overview * chore: update notification content for archive/restore * refactor: activity user name * fix: all issues mutation * fix: restore issue auth * chore: close peek overview on archival --------- Co-authored-by: NarayanBavisetti <narayan3119@gmail.com> Co-authored-by: gurusainath <gurusainath007@gmail.com>
37 lines
868 B
TypeScript
37 lines
868 B
TypeScript
import { FC } from "react";
|
|
import Link from "next/link";
|
|
// hooks
|
|
import { useIssueDetail } from "hooks/store";
|
|
|
|
type TIssueUser = {
|
|
activityId: string;
|
|
customUserName?: string;
|
|
};
|
|
|
|
export const IssueUser: FC<TIssueUser> = (props) => {
|
|
const { activityId, customUserName } = props;
|
|
// hooks
|
|
const {
|
|
activity: { getActivityById },
|
|
} = useIssueDetail();
|
|
|
|
const activity = getActivityById(activityId);
|
|
|
|
if (!activity) return <></>;
|
|
|
|
return (
|
|
<>
|
|
{customUserName ? (
|
|
<span className="text-custom-text-100 font-medium">{customUserName}</span>
|
|
) : (
|
|
<Link
|
|
href={`/${activity?.workspace_detail?.slug}/profile/${activity?.actor_detail?.id}`}
|
|
className="hover:underline text-custom-text-100 font-medium"
|
|
>
|
|
{activity.actor_detail?.display_name}
|
|
</Link>
|
|
)}
|
|
</>
|
|
);
|
|
};
|