import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import { Shield, User } from "lucide-react";
import { cn } from "../../lib/utils";
import { ParheliaAgentIcon } from "../../editor/ui/Icons";
export const taskAssigneeBadgeClassName = "text-muted-foreground badge-pad-sm bg-neutral-grey-5 flex min-w-0 items-center gap-1 rounded-md text-xs";
export const taskAssigneeBadgeLabelClassName = "max-w-[120px] truncate";
export const taskAssigneePickerButtonClassName = "h-auto max-w-full min-w-0 justify-start gap-1 rounded-md border border-transparent bg-white px-1 py-0.5 text-left text-xs font-medium text-muted-foreground shadow-none hover:bg-neutral-grey-5 hover:text-muted-foreground";
export function TaskAssigneeIcon({ assigneeType, className, }) {
    const iconClassName = cn("size-3 shrink-0", className);
    if (assigneeType === "Agent") {
        return (_jsx("span", { className: cn("inline-flex items-center justify-center", iconClassName), "data-testid": "taskboard-assignee-agent-icon", children: _jsx(ParheliaAgentIcon, { className: "size-full", title: "Agent assignee", size: 12 }) }));
    }
    const Icon = assigneeType === "Role" ? Shield : User;
    return _jsx(Icon, { className: iconClassName });
}
export function TaskAssigneeBadge({ assigneeType, label, className, iconClassName, labelClassName, labelTestId, }) {
    if (!label)
        return null;
    return (_jsxs("span", { className: cn(taskAssigneeBadgeClassName, className), title: label, children: [_jsx(TaskAssigneeIcon, { assigneeType: assigneeType, className: iconClassName }), _jsx("span", { className: cn(taskAssigneeBadgeLabelClassName, labelClassName), "data-testid": labelTestId, children: label })] }));
}
//# sourceMappingURL=TaskAssigneeBadge.js.map