From 362ae34cb4b9a87a8a3e41f5a7c94bcbee7eb346 Mon Sep 17 00:00:00 2001 From: Benjamin Janssens Date: Thu, 4 Jul 2024 13:53:18 +0200 Subject: [PATCH] refactor: extract BaseRepoBranchPickerProps Signed-off-by: Benjamin Janssens --- .../RepoBranchPicker/BitbucketRepoBranchPicker.tsx | 10 +++------- .../RepoBranchPicker/DefaultRepoBranchPicker.tsx | 9 ++------- .../src/components/fields/RepoBranchPicker/types.ts | 7 +++++++ 3 files changed, 12 insertions(+), 14 deletions(-) diff --git a/plugins/scaffolder/src/components/fields/RepoBranchPicker/BitbucketRepoBranchPicker.tsx b/plugins/scaffolder/src/components/fields/RepoBranchPicker/BitbucketRepoBranchPicker.tsx index ed54cddc5e..f6e6634ed8 100644 --- a/plugins/scaffolder/src/components/fields/RepoBranchPicker/BitbucketRepoBranchPicker.tsx +++ b/plugins/scaffolder/src/components/fields/RepoBranchPicker/BitbucketRepoBranchPicker.tsx @@ -21,7 +21,7 @@ import TextField from '@material-ui/core/TextField'; import Autocomplete from '@material-ui/lab/Autocomplete'; import useDebounce from 'react-use/esm/useDebounce'; import { useApi } from '@backstage/core-plugin-api'; -import { RepoBranchPickerState } from './types'; +import { BaseRepoBranchPickerProps } from './types'; import FormHelperText from '@material-ui/core/FormHelperText'; /** @@ -37,13 +37,9 @@ export const BitbucketRepoBranchPicker = ({ rawErrors, accessToken, required, -}: { - onChange: (state: RepoBranchPickerState) => void; - state: RepoBranchPickerState; - rawErrors: string[]; +}: BaseRepoBranchPickerProps<{ accessToken?: string; - required?: boolean; -}) => { +}>) => { const { host, workspace, repository, branch } = state; const [availableBranches, setAvailableBranches] = useState([]); diff --git a/plugins/scaffolder/src/components/fields/RepoBranchPicker/DefaultRepoBranchPicker.tsx b/plugins/scaffolder/src/components/fields/RepoBranchPicker/DefaultRepoBranchPicker.tsx index 52a4a15e23..9350e232f8 100644 --- a/plugins/scaffolder/src/components/fields/RepoBranchPicker/DefaultRepoBranchPicker.tsx +++ b/plugins/scaffolder/src/components/fields/RepoBranchPicker/DefaultRepoBranchPicker.tsx @@ -20,7 +20,7 @@ import FormHelperText from '@material-ui/core/FormHelperText'; import Input from '@material-ui/core/Input'; import InputLabel from '@material-ui/core/InputLabel'; -import { RepoBranchPickerState } from './types'; +import { BaseRepoBranchPickerProps } from './types'; /** * The underlying component that is rendered in the form for the `DefaultRepoBranchPicker` @@ -34,12 +34,7 @@ export const DefaultRepoBranchPicker = ({ state, rawErrors, required, -}: { - onChange: (state: RepoBranchPickerState) => void; - state: RepoBranchPickerState; - rawErrors: string[]; - required?: boolean; -}) => { +}: BaseRepoBranchPickerProps) => { const { branch } = state; return ( diff --git a/plugins/scaffolder/src/components/fields/RepoBranchPicker/types.ts b/plugins/scaffolder/src/components/fields/RepoBranchPicker/types.ts index 1d54ea7e8b..bd218d9e28 100644 --- a/plugins/scaffolder/src/components/fields/RepoBranchPicker/types.ts +++ b/plugins/scaffolder/src/components/fields/RepoBranchPicker/types.ts @@ -20,3 +20,10 @@ export interface RepoBranchPickerState { repository?: string; branch?: string; } + +export type BaseRepoBranchPickerProps = T & { + onChange: (state: RepoBranchPickerState) => void; + state: RepoBranchPickerState; + rawErrors: string[]; + required?: boolean; +};