fix: do not paste multiple lines

This commit is contained in:
jialin
2025-11-06 15:37:42 +08:00
parent e1e38f0404
commit 7334bcdf83
13 changed files with 81 additions and 47 deletions
+19 -6
View File
@@ -55,6 +55,20 @@ const LabelSelector: React.FC<LabelSelectorProps> = ({
onChange?.(data);
};
const updateLabels = (list: { key: string; value: string }[]) => {
const newLabels = _.reduce(
list,
(result: any, item: any) => {
if (item.key) {
result[item.key] = item.value;
}
return result;
},
{}
);
onChange?.(newLabels);
};
const handleOnPaste = (
e: React.ClipboardEvent<HTMLTextAreaElement>,
index: number
@@ -72,13 +86,12 @@ const LabelSelector: React.FC<LabelSelectorProps> = ({
const [key, value] = line.split('=').map((part) => part.trim());
return { key, value };
});
console.log('onPaste', lines, parsedData);
setLabelList((prevPairs) => {
const newPairs = [...prevPairs];
newPairs.splice(index, 1, ...parsedData);
return newPairs;
});
const newPairs = [...labelList];
newPairs.splice(index, 1, ...parsedData);
updateLabels(newPairs);
setLabelList(newPairs);
};
return (