Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 7x 1x 1x | import { memo } from 'react';
import {
SimpleSelect,
type SelectOptionGroup,
type SimpleSelectOption,
type SimpleSelectProps,
} from '@allshares/studio-design-system';
import { useFormikFieldAdapter, type FormikFieldProps } from '@amalia/ext/formik';
export type FormikSimpleSelectProps<
TOption extends SimpleSelectOption = SimpleSelectOption,
TUseOptionAsValue extends boolean | undefined = undefined,
TGroup extends SelectOptionGroup<TOption> = SelectOptionGroup<TOption>,
> = FormikFieldProps<SimpleSelectProps<TOption, TUseOptionAsValue, TGroup>>;
export const FormikSimpleSelectBase = function FormikSimpleSelect<
TOption extends SimpleSelectOption = SimpleSelectOption,
TUseOptionAsValue extends boolean | undefined = undefined,
TGroup extends SelectOptionGroup<TOption> = SelectOptionGroup<TOption>,
>({
validate, // Omit validate and any props not passed to Select.
...props
}: FormikSimpleSelectProps<TOption, TUseOptionAsValue, TGroup>) {
const formikFieldProps = useFormikFieldAdapter<SimpleSelectProps<TOption, TUseOptionAsValue, TGroup>['value']>({
...props,
validate,
});
return (
<SimpleSelect<TOption, TUseOptionAsValue, TGroup>
{...props}
{...formikFieldProps}
/>
);
};
export const FormikSimpleSelect = memo(FormikSimpleSelectBase) as typeof FormikSimpleSelectBase;
|