diff --git a/packages/ui/src/ui-component/dialog/ShareWithWorkspaceDialog.jsx b/packages/ui/src/ui-component/dialog/ShareWithWorkspaceDialog.jsx index f9ba47e73fd..ea8b9d58503 100644 --- a/packages/ui/src/ui-component/dialog/ShareWithWorkspaceDialog.jsx +++ b/packages/ui/src/ui-component/dialog/ShareWithWorkspaceDialog.jsx @@ -47,6 +47,7 @@ const ShareWithWorkspaceDialog = ({ show, dialogProps, onCancel, setError }) => const [outputSchema, setOutputSchema] = useState([]) const [name, setName] = useState('') + const [selectAll, setSelectAll] = useState(false) const onRowUpdate = (newRow) => { setTimeout(() => { @@ -116,6 +117,24 @@ const ShareWithWorkspaceDialog = ({ show, dialogProps, onCancel, setError }) => return () => dispatch({ type: HIDE_CANVAS_DIALOG }) }, [show, dispatch]) + useEffect(() => { + if (outputSchema.length > 0) { + setSelectAll(outputSchema.every((row) => row.shared)) + } else { + setSelectAll(false) + } + }, [outputSchema]) + + const handleSelectAll = () => { + setOutputSchema((prev) => prev.map((row) => ({ ...row, shared: true }))) + setSelectAll(true) + } + + const handleDeselectAll = () => { + setOutputSchema((prev) => prev.map((row) => ({ ...row, shared: false }))) + setSelectAll(false) + } + const shareItemRequest = async () => { try { const obj = { @@ -186,6 +205,14 @@ const ShareWithWorkspaceDialog = ({ show, dialogProps, onCancel, setError }) => + + + +