1
1
import { useForm } from 'react-hook-form' ;
2
2
import { InputField } from '../Input/InputField.component' ;
3
+ import { getCustomNumberValidation } from '../../functions/functions' ;
3
4
4
- const getCustomNumberValidation = (
5
- value ,
6
- { minLength, maxLength , pattern }
7
- ) => ( {
8
- minLength : { value , message : minLength } ,
9
- maxLength : { value , message : maxLength } ,
10
- pattern : { value : / ^ \d + $ / i , message : pattern } ,
11
- } ) ;
5
+ const customPostNumberValidation = getCustomNumberValidation (
6
+ {
7
+ minLength : 'Postnummer må være minimum 4 tall' ,
8
+ maxLength : 'Postnummer må være maksimalt 4 tall' ,
9
+ pattern : 'Postnummer må bare være tall' ,
10
+ } ,
11
+ 4
12
+ ) ;
12
13
13
14
const inputs = [
14
15
{ label : 'Fornavn' , name : 'firstName' } ,
@@ -17,31 +18,34 @@ const inputs = [
17
18
{
18
19
label : 'Postnummer' ,
19
20
name : 'postcode' ,
20
- customValidation : getCustomNumberValidation ( 4 , {
21
- minLength : 'Postnummer må være minimum 4 tall' ,
22
- maxLength : 'Postnummer må være maksimalt 4 tall' ,
23
- pattern : 'Postnummer må bare være tall' ,
24
- } ) ,
21
+ customValidation : customPostNumberValidation ,
25
22
} ,
26
23
{ label : 'Sted' , name : 'city' } ,
27
24
{
28
25
label : 'Epost' ,
29
26
name : 'email' ,
30
- customValidation : {
31
- pattern : {
32
- value : / [ ^ @ ] + @ [ ^ @ ] + \. [ ^ @ ] + / i,
33
- message : 'Du må oppgi en gyldig epost' ,
34
- } ,
35
- } ,
27
+ customValidation : getCustomNumberValidation (
28
+ { pattern : 'Du må oppgi en gyldig epost' } ,
29
+ undefined ,
30
+ / [ ^ @ ] + @ [ ^ @ ] + \. [ ^ @ ] + / i
31
+ ) ,
36
32
} ,
37
33
{
38
34
label : 'Telefon' ,
39
35
name : 'phone' ,
40
- customValidation : getCustomNumberValidation ( 8 , {
41
- minLength : 'Minimum 8 tall i telefonnummeret' ,
42
- maxLength : 'Maksimalt 8 tall i telefonnummeret' ,
43
- pattern : 'Ikke gyldig telefonnummer' ,
44
- } ) ,
36
+ customValidation : getCustomNumberValidation (
37
+ {
38
+ minLength : 'Minimum 8 tall i telefonnummeret' ,
39
+ maxLength : 'Maksimalt 8 tall i telefonnummeret' ,
40
+ pattern : 'Ikke gyldig telefonnummer' ,
41
+ } ,
42
+ 8
43
+ ) ,
44
+ } ,
45
+ {
46
+ label : 'Postnummer' ,
47
+ name : 'postcode' ,
48
+ customValidation : customPostNumberValidation ,
45
49
} ,
46
50
] ;
47
51
@@ -66,26 +70,6 @@ const Billing = ({ onSubmit }) => {
66
70
register = { register }
67
71
/>
68
72
) ) }
69
- < InputField
70
- label = "Postnummer"
71
- name = "postcode"
72
- errors = { errors }
73
- register = { register }
74
- customValidation = { {
75
- minLength : {
76
- value : 4 ,
77
- message : 'Postnummer må være minimum 4 tall' ,
78
- } ,
79
- maxLength : {
80
- value : 4 ,
81
- message : 'Postnummer må være maksimalt 4 tall' ,
82
- } ,
83
- pattern : {
84
- value : / ^ \d + $ / i,
85
- message : 'Postnummer må bare være tall' ,
86
- } ,
87
- } }
88
- />
89
73
< OrderButton register = { register } />
90
74
</ div >
91
75
</ form >
0 commit comments