summaryrefslogtreecommitdiffstats
path: root/src/components/atoms/forms
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/atoms/forms')
-rw-r--r--src/components/atoms/forms/checkbox.tsx4
-rw-r--r--src/components/atoms/forms/field.tsx4
-rw-r--r--src/components/atoms/forms/form.test.tsx6
-rw-r--r--src/components/atoms/forms/form.tsx6
-rw-r--r--src/components/atoms/forms/label.tsx6
-rw-r--r--src/components/atoms/forms/select.tsx4
6 files changed, 21 insertions, 9 deletions
diff --git a/src/components/atoms/forms/checkbox.tsx b/src/components/atoms/forms/checkbox.tsx
index 8babcc8..aec97f0 100644
--- a/src/components/atoms/forms/checkbox.tsx
+++ b/src/components/atoms/forms/checkbox.tsx
@@ -1,4 +1,4 @@
-import { SetStateAction, VFC } from 'react';
+import { FC, SetStateAction } from 'react';
export type CheckboxProps = {
/**
@@ -32,7 +32,7 @@ export type CheckboxProps = {
*
* Render a checkbox type input.
*/
-const Checkbox: VFC<CheckboxProps> = ({ value, setValue, ...props }) => {
+const Checkbox: FC<CheckboxProps> = ({ value, setValue, ...props }) => {
return (
<input
type="checkbox"
diff --git a/src/components/atoms/forms/field.tsx b/src/components/atoms/forms/field.tsx
index 2e75d0f..e45a8a7 100644
--- a/src/components/atoms/forms/field.tsx
+++ b/src/components/atoms/forms/field.tsx
@@ -1,4 +1,4 @@
-import { ChangeEvent, SetStateAction, VFC } from 'react';
+import { ChangeEvent, FC, SetStateAction } from 'react';
import styles from './forms.module.scss';
export type FieldType =
@@ -72,7 +72,7 @@ export type FieldProps = {
*
* Render either an input or a textarea.
*/
-const Field: VFC<FieldProps> = ({
+const Field: FC<FieldProps> = ({
className = '',
setValue,
type,
diff --git a/src/components/atoms/forms/form.test.tsx b/src/components/atoms/forms/form.test.tsx
index 9cd3c58..8b534f1 100644
--- a/src/components/atoms/forms/form.test.tsx
+++ b/src/components/atoms/forms/form.test.tsx
@@ -3,7 +3,11 @@ import Form from './form';
describe('Form', () => {
it('renders a form', () => {
- render(<Form aria-label="Jest form" onSubmit={() => null}></Form>);
+ render(
+ <Form aria-label="Jest form" onSubmit={() => null}>
+ Fields
+ </Form>
+ );
expect(screen.getByRole('form', { name: 'Jest form' })).toBeInTheDocument();
});
});
diff --git a/src/components/atoms/forms/form.tsx b/src/components/atoms/forms/form.tsx
index 8e80930..ef8dce4 100644
--- a/src/components/atoms/forms/form.tsx
+++ b/src/components/atoms/forms/form.tsx
@@ -1,4 +1,4 @@
-import { Children, FC, FormEvent, Fragment } from 'react';
+import { Children, FC, FormEvent, Fragment, ReactNode } from 'react';
import styles from './forms.module.scss';
export type FormProps = {
@@ -11,6 +11,10 @@ export type FormProps = {
*/
'aria-labelledby'?: string;
/**
+ * The form body.
+ */
+ children: ReactNode;
+ /**
* Set additional classnames to the form wrapper.
*/
className?: string;
diff --git a/src/components/atoms/forms/label.tsx b/src/components/atoms/forms/label.tsx
index 8d57ee2..ce4c70f 100644
--- a/src/components/atoms/forms/label.tsx
+++ b/src/components/atoms/forms/label.tsx
@@ -1,8 +1,12 @@
-import { FC } from 'react';
+import { FC, ReactNode } from 'react';
import styles from './label.module.scss';
export type LabelProps = {
/**
+ * The label body.
+ */
+ children: ReactNode;
+ /**
* Add classnames to the label.
*/
className?: string;
diff --git a/src/components/atoms/forms/select.tsx b/src/components/atoms/forms/select.tsx
index 25e86e0..dbe9b37 100644
--- a/src/components/atoms/forms/select.tsx
+++ b/src/components/atoms/forms/select.tsx
@@ -1,4 +1,4 @@
-import { ChangeEvent, SetStateAction, VFC } from 'react';
+import { ChangeEvent, FC, SetStateAction } from 'react';
import styles from './forms.module.scss';
export type SelectOptions = {
@@ -60,7 +60,7 @@ export type SelectProps = {
*
* Render a HTML select element.
*/
-const Select: VFC<SelectProps> = ({
+const Select: FC<SelectProps> = ({
className = '',
options,
setValue,