Files
pangolin/src/hooks/useLocalLabels.ts
2026-05-26 22:26:54 -07:00

22 lines
601 B
TypeScript

import type { SelectedLabel } from "@app/components/labels-selector";
import { useEffect, useState } from "react";
export function useLocalLabels(
serverLabels: SelectedLabel[] | undefined,
entityId: number
) {
const labels = serverLabels ?? [];
const [localLabels, setLocalLabels] = useState(labels);
const serverLabelIds = labels
.map((label) => label.labelId)
.sort((a, b) => a - b)
.join(",");
useEffect(() => {
setLocalLabels(serverLabels ?? []);
}, [entityId, serverLabelIds]);
return [localLabels, setLocalLabels] as const;
}