Merge pull request #1950 from automatisch/AUT-1074

fix: fix error for only Create role when publishing flow
This commit is contained in:
Ali BARIN
2024-07-11 11:02:08 +02:00
committed by GitHub

View File

@@ -14,6 +14,7 @@ import { EditorProvider } from 'contexts/Editor';
import EditableTypography from 'components/EditableTypography'; import EditableTypography from 'components/EditableTypography';
import Container from 'components/Container'; import Container from 'components/Container';
import Editor from 'components/Editor'; import Editor from 'components/Editor';
import Can from 'components/Can';
import useFormatMessage from 'hooks/useFormatMessage'; import useFormatMessage from 'hooks/useFormatMessage';
import { UPDATE_FLOW_STATUS } from 'graphql/mutations/update-flow-status'; import { UPDATE_FLOW_STATUS } from 'graphql/mutations/update-flow-status';
import { UPDATE_FLOW } from 'graphql/mutations/update-flow'; import { UPDATE_FLOW } from 'graphql/mutations/update-flow';
@@ -36,6 +37,7 @@ export default function EditorLayout() {
const onFlowNameUpdate = React.useCallback( const onFlowNameUpdate = React.useCallback(
async (name) => { async (name) => {
try {
await updateFlow({ await updateFlow({
variables: { variables: {
input: { input: {
@@ -43,16 +45,10 @@ export default function EditorLayout() {
name, name,
}, },
}, },
optimisticResponse: {
updateFlow: {
__typename: 'Flow',
id: flowId,
name,
},
},
}); });
await queryClient.invalidateQueries({ queryKey: ['flows', flowId] }); await queryClient.invalidateQueries({ queryKey: ['flows', flowId] });
} catch (e) {}
}, },
[flowId, queryClient], [flowId, queryClient],
); );
@@ -67,13 +63,6 @@ export default function EditorLayout() {
active, active,
}, },
}, },
optimisticResponse: {
updateFlowStatus: {
__typename: 'Flow',
id: flowId,
active,
},
},
}); });
await queryClient.invalidateQueries({ queryKey: ['flows', flowId] }); await queryClient.invalidateQueries({ queryKey: ['flows', flowId] });
@@ -123,7 +112,10 @@ export default function EditorLayout() {
</Box> </Box>
<Box pr={1}> <Box pr={1}>
<Can I="publish" a="Flow" passThrough>
{(allowed) => (
<Button <Button
disabled={!allowed || !flow}
variant="contained" variant="contained"
size="small" size="small"
onClick={() => onFlowStatusUpdate(!flow.active)} onClick={() => onFlowStatusUpdate(!flow.active)}
@@ -135,6 +127,8 @@ export default function EditorLayout() {
? formatMessage('flowEditor.unpublish') ? formatMessage('flowEditor.unpublish')
: formatMessage('flowEditor.publish')} : formatMessage('flowEditor.publish')}
</Button> </Button>
)}
</Can>
</Box> </Box>
</TopBar> </TopBar>