diff options
| author | Armand Philippot <git@armandphilippot.com> | 2023-09-20 16:38:54 +0200 |
|---|---|---|
| committer | Armand Philippot <git@armandphilippot.com> | 2023-09-20 16:38:54 +0200 |
| commit | f861e6a269ba9f62700776d3cd13b644a9e836d4 (patch) | |
| tree | a5a107e7a6e4ff8b4261fe04349357bc00b783ee /src/components/molecules/forms/labelled-boolean-field.tsx | |
| parent | 03331c44276ec56e9f235e4d5ee75030455a753f (diff) | |
refactor: use named export for everything except pages
Next expect a default export for pages so only those components should
use default exports. Everything else should use named exports to
reduce the number of import statements.
Diffstat (limited to 'src/components/molecules/forms/labelled-boolean-field.tsx')
| -rw-r--r-- | src/components/molecules/forms/labelled-boolean-field.tsx | 29 |
1 files changed, 11 insertions, 18 deletions
diff --git a/src/components/molecules/forms/labelled-boolean-field.tsx b/src/components/molecules/forms/labelled-boolean-field.tsx index 661e549..d110d45 100644 --- a/src/components/molecules/forms/labelled-boolean-field.tsx +++ b/src/components/molecules/forms/labelled-boolean-field.tsx @@ -1,8 +1,10 @@ import { FC } from 'react'; -import BooleanField, { +import { + BooleanField, type BooleanFieldProps, -} from '../../atoms/forms/boolean-field'; -import Label, { type LabelProps } from '../../atoms/forms/label'; + Label, + type LabelProps, +} from '../../atoms'; import styles from './labelled-boolean-field.module.scss'; export type LabelledBooleanFieldProps = Omit< @@ -40,7 +42,7 @@ export type LabelledBooleanFieldProps = Omit< * * Render a checkbox or radio button with a label. */ -const LabelledBooleanField: FC<LabelledBooleanFieldProps> = ({ +export const LabelledBooleanField: FC<LabelledBooleanFieldProps> = ({ className = '', fieldClassName, hidden, @@ -53,40 +55,31 @@ const LabelledBooleanField: FC<LabelledBooleanFieldProps> = ({ }) => { const labelHiddenModifier = hidden ? 'label--hidden' : 'label--visible'; const labelPositionModifier = `label--${labelPosition}`; + const labelClass = `${styles[labelPositionModifier]} ${styles[labelHiddenModifier]} ${labelClassName}`; return labelPosition === 'left' ? ( <span className={`${styles.wrapper} ${className}`}> - <Label - className={`${styles[labelPositionModifier]} ${styles[labelHiddenModifier]} ${labelClassName}`} - htmlFor={id} - size={labelSize} - > + <Label className={labelClass} htmlFor={id} size={labelSize}> {label} </Label> <BooleanField + {...props} className={fieldClassName} hidden={hidden} id={id} - {...props} /> </span> ) : ( <span className={`${styles.wrapper} ${className}`}> <BooleanField + {...props} className={fieldClassName} hidden={hidden} id={id} - {...props} /> - <Label - className={`${styles[labelPositionModifier]} ${styles[labelHiddenModifier]} ${labelClassName}`} - htmlFor={id} - size={labelSize} - > + <Label className={labelClass} htmlFor={id} size={labelSize}> {label} </Label> </span> ); }; - -export default LabelledBooleanField; |
