feat(FlowSubstep): show autocomplete option value
This commit is contained in:
@@ -1,7 +1,8 @@
|
||||
import * as React from 'react';
|
||||
import FormHelperText from '@mui/material/FormHelperText';
|
||||
import { Controller, useFormContext } from 'react-hook-form';
|
||||
import FormHelperText from '@mui/material/FormHelperText';
|
||||
import Autocomplete, { AutocompleteProps } from '@mui/material/Autocomplete';
|
||||
import Typography from '@mui/material/Typography';
|
||||
import type { IFieldDropdownOption } from '@automatisch/types';
|
||||
|
||||
interface ControlledAutocompleteProps
|
||||
@@ -9,6 +10,7 @@ interface ControlledAutocompleteProps
|
||||
shouldUnregister?: boolean;
|
||||
name: string;
|
||||
required?: boolean;
|
||||
showOptionValue?: boolean;
|
||||
description?: string;
|
||||
dependsOn?: string[];
|
||||
}
|
||||
@@ -31,6 +33,7 @@ function ControlledAutocomplete(
|
||||
description,
|
||||
options = [],
|
||||
dependsOn = [],
|
||||
showOptionValue,
|
||||
...autocompleteProps
|
||||
} = props;
|
||||
|
||||
@@ -97,8 +100,16 @@ function ControlledAutocomplete(
|
||||
ref={ref}
|
||||
data-test={`${name}-autocomplete`}
|
||||
renderOption={(optionProps, option) => (
|
||||
<li {...optionProps} key={option.value.toString()}>
|
||||
{option.label}
|
||||
<li
|
||||
{...optionProps}
|
||||
key={option.value.toString()}
|
||||
style={{ flexDirection: 'column', alignItems: 'start' }}
|
||||
>
|
||||
<Typography>{option.label}</Typography>
|
||||
|
||||
{showOptionValue && (
|
||||
<Typography variant="caption">{option.value}</Typography>
|
||||
)}
|
||||
</li>
|
||||
)}
|
||||
/>
|
||||
|
@@ -94,6 +94,7 @@ function FlowSubstep(props: FlowSubstepProps): React.ReactElement {
|
||||
namePrefix="parameters"
|
||||
stepId={step.id}
|
||||
disabled={editorContext.readOnly}
|
||||
showOptionValue={true}
|
||||
/>
|
||||
))}
|
||||
</Stack>
|
||||
|
@@ -14,6 +14,7 @@ type InputCreatorProps = {
|
||||
namePrefix?: string;
|
||||
stepId?: string;
|
||||
disabled?: boolean;
|
||||
showOptionValue?: boolean;
|
||||
};
|
||||
|
||||
type RawOption = {
|
||||
@@ -27,7 +28,15 @@ const optionGenerator = (options: RawOption[]): IFieldDropdownOption[] =>
|
||||
export default function InputCreator(
|
||||
props: InputCreatorProps
|
||||
): React.ReactElement {
|
||||
const { onChange, onBlur, schema, namePrefix, stepId, disabled } = props;
|
||||
const {
|
||||
onChange,
|
||||
onBlur,
|
||||
schema,
|
||||
namePrefix,
|
||||
stepId,
|
||||
disabled,
|
||||
showOptionValue,
|
||||
} = props;
|
||||
|
||||
const {
|
||||
key: name,
|
||||
@@ -62,6 +71,7 @@ export default function InputCreator(
|
||||
description={description}
|
||||
loading={loading}
|
||||
disabled={disabled}
|
||||
showOptionValue={showOptionValue}
|
||||
/>
|
||||
);
|
||||
}
|
||||
|
Reference in New Issue
Block a user