diff --git a/packages/widgets/src/_inputs/widget-multiReleasesRepositories-input.tsx b/packages/widgets/src/_inputs/widget-multiReleasesRepositories-input.tsx index 01581ce57..3cf246845 100644 --- a/packages/widgets/src/_inputs/widget-multiReleasesRepositories-input.tsx +++ b/packages/widgets/src/_inputs/widget-multiReleasesRepositories-input.tsx @@ -83,11 +83,12 @@ export const WidgetMultiReleasesRepositoriesInput = ({ fieldPath: `options.${property}.${index}`, repository: item, onRepositorySave: (saved) => onRepositorySave(saved, index), + onRepositoryCancel: () => onRepositoryRemove(index), versionFilterPrecisionOptions, }); }; - const onReleaseRemove = (index: number) => { + const onRepositoryRemove = (index: number) => { form.setValues((previous) => { const previousValues = previous.options?.[property] as ReleasesRepository[]; return { @@ -99,6 +100,7 @@ export const WidgetMultiReleasesRepositoriesInput = ({ }; }); }; + return (
@@ -145,7 +147,7 @@ export const WidgetMultiReleasesRepositoriesInput = ({ {tRepository("edit.label")} - onReleaseRemove(index)}> + onRepositoryRemove(index)}> @@ -185,6 +187,7 @@ interface ReleaseEditProps { fieldPath: string; repository: ReleasesRepository; onRepositorySave: (repository: ReleasesRepository) => FormValidation; + onRepositoryCancel?: () => void; versionFilterPrecisionOptions: string[]; } @@ -206,6 +209,14 @@ const ReleaseEditModal = createModal(({ innerProps, actions }) setLoading(false); }, [innerProps, tempRepository, actions]); + const handleCancel = useCallback(() => { + if (innerProps.onRepositoryCancel) { + innerProps.onRepositoryCancel(); + } + + actions.closeModal(); + }, [innerProps, actions]); + const handleChange = useCallback((changedValue: Partial) => { setTempRepository((prev) => ({ ...prev, ...changedValue })); }, []); @@ -332,7 +343,7 @@ const ReleaseEditModal = createModal(({ innerProps, actions }) -