feat: optimisic card updates

This commit is contained in:
Henry
2025-02-02 10:33:32 +00:00
parent 14b4d73fb6
commit eba5d9335c
6 changed files with 122 additions and 19 deletions

View File

@@ -14,12 +14,14 @@ interface LabelSelectorProps {
selected: boolean;
leftIcon: React.ReactNode;
}[];
handleSelectLabel: (labelPublicId: string) => void;
isLoading: boolean;
}
export default function LabelSelector({
cardPublicId,
labels,
handleSelectLabel,
isLoading,
}: LabelSelectorProps) {
const { openModal } = useModal();
@@ -44,9 +46,10 @@ export default function LabelSelector({
) : (
<CheckboxDropdown
items={labels}
handleSelect={(_, label) =>
addOrRemoveLabel.mutate({ cardPublicId, labelPublicId: label.key })
}
handleSelect={(_, label) => {
handleSelectLabel(label.key);
addOrRemoveLabel.mutate({ cardPublicId, labelPublicId: label.key });
}}
handleEdit={(labelPublicId) => openModal("EDIT_LABEL", labelPublicId)}
handleCreate={() => openModal("NEW_LABEL")}
createNewItemLabel="Create new label"