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 }) =>
+
+
+
+