@thecb/components 3.3.8-beta.0 → 3.3.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.tool-versions +1 -0
- package/dist/index.cjs.js +15792 -14182
- package/package.json +3 -3
- package/src/components/atoms/add-obligation/AddObligation.js +64 -0
- package/src/components/atoms/add-obligation/AddObligation.stories.js +18 -0
- package/src/components/atoms/add-obligation/AddObligation.theme.js +9 -0
- package/src/components/atoms/add-obligation/index.js +3 -0
- package/src/components/atoms/button-with-link/ButtonWithLink.js +1 -1
- package/src/components/atoms/form-layouts/FormInput.js +1 -0
- package/src/components/atoms/heading/Heading.js +2 -0
- package/src/components/atoms/icons/IconAdd.js +36 -0
- package/src/components/atoms/icons/index.js +3 -1
- package/src/components/atoms/index.js +1 -0
- package/src/components/atoms/layouts/Cover.js +1 -1
- package/src/components/atoms/layouts/Cover.styled.js +0 -1
- package/src/components/atoms/layouts/Imposter.styled.js +0 -1
- package/src/components/atoms/paragraph/Paragraph.js +2 -0
- package/src/components/atoms/placeholder/Placeholder.js +77 -60
- package/src/components/molecules/email-form/EmailForm.js +1 -14
- package/src/components/molecules/email-form/EmailForm.state.js +1 -9
- package/src/components/molecules/nav-menu/NavMenu.theme.js +3 -1
- package/src/components/molecules/nav-menu/NavMenuDesktop.js +1 -1
- package/src/components/molecules/obligation/icons/AccountBillIcon.js +2 -2
- package/src/components/molecules/obligation/icons/AccountConstructionIcon.js +2 -2
- package/src/components/molecules/obligation/icons/AccountDentalIcon.js +2 -2
- package/src/components/molecules/obligation/icons/AccountElectricIcon.js +2 -2
- package/src/components/molecules/obligation/icons/AccountGarbageIcon.js +2 -2
- package/src/components/molecules/obligation/icons/AccountGasIcon.js +2 -2
- package/src/components/molecules/obligation/icons/AccountGenericIcon.js +2 -2
- package/src/components/molecules/obligation/icons/AccountMedicalIcon.js +2 -2
- package/src/components/molecules/obligation/icons/AccountWaterIcon.js +2 -2
- package/src/components/molecules/obligation/icons/PropertyApartmentIcon.js +2 -2
- package/src/components/molecules/obligation/icons/PropertyBusinessIcon.js +2 -2
- package/src/components/molecules/obligation/icons/PropertyCarIcon.js +2 -2
- package/src/components/molecules/obligation/icons/PropertyCommercialVehicleIcon.js +2 -2
- package/src/components/molecules/obligation/icons/PropertyGarageIcon.js +2 -2
- package/src/components/molecules/obligation/icons/PropertyLandIcon.js +2 -2
- package/src/components/molecules/obligation/icons/PropertyMotorcycleIcon.js +2 -2
- package/src/components/molecules/obligation/icons/PropertyPersonalIcon.js +2 -2
- package/src/components/molecules/obligation/icons/PropertyStorefrontIcon.js +2 -2
- package/src/components/molecules/partial-amount-form/PartialAmountForm.state.js +2 -1
- package/src/components/molecules/radio-section/RadioSection.js +2 -1
- package/src/components/templates/center-single/CenterSingle.js +7 -5
- package/src/components/templates/center-stack/CenterStack.js +7 -2
- package/src/components/templates/default-page-template/DefaultPageTemplate.js +7 -2
- package/src/components/templates/sidebar-single-content/SidebarSingleContent.js +7 -2
- package/src/components/templates/sidebar-stack-content/SidebarStackContent.js +2 -5
- package/src/deprecated/icons/IconQuit.js +5 -5
- package/src/deprecated/icons/index.js +0 -2
- package/src/util/index.js +2 -1
- package/src/deprecated/icons/IconAdd.js +0 -44
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@thecb/components",
|
|
3
|
-
"version": "3.3.
|
|
3
|
+
"version": "3.3.10",
|
|
4
4
|
"description": "Common lib for CityBase react components",
|
|
5
5
|
"main": "dist/index.cjs.js",
|
|
6
6
|
"module": "dist/index.esm.js",
|
|
7
7
|
"source": "src/index.js",
|
|
8
8
|
"scripts": {
|
|
9
9
|
"storybook": "start-storybook",
|
|
10
|
-
"build": "rollup -
|
|
10
|
+
"build": "rollup -cm"
|
|
11
11
|
},
|
|
12
12
|
"repository": {
|
|
13
13
|
"type": "git",
|
|
@@ -61,7 +61,6 @@
|
|
|
61
61
|
"styled-theming": "^2.2.0"
|
|
62
62
|
},
|
|
63
63
|
"peerDependencies": {
|
|
64
|
-
"ramda": "^0.27.0",
|
|
65
64
|
"react": "^16.13.1",
|
|
66
65
|
"react-dom": "^16.13.1",
|
|
67
66
|
"react-router-dom": "6.0.0-alpha.3",
|
|
@@ -74,6 +73,7 @@
|
|
|
74
73
|
}
|
|
75
74
|
},
|
|
76
75
|
"dependencies": {
|
|
76
|
+
"ramda": "^0.27.0",
|
|
77
77
|
"formatted-input": "^0.1.3",
|
|
78
78
|
"framer-motion": "^1.11.0",
|
|
79
79
|
"numeral": "^2.0.6",
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import ButtonWithAction from "../button-with-action";
|
|
3
|
+
import { Box, Center, Cluster, Cover } from "../layouts";
|
|
4
|
+
import { IconAdd } from "../icons";
|
|
5
|
+
import { FONT_WEIGHT_SEMIBOLD } from "../../../constants/style_constants";
|
|
6
|
+
import { fallbackValues } from "./AddObligation.theme";
|
|
7
|
+
import { themeComponent } from "../../../util/themeUtils";
|
|
8
|
+
|
|
9
|
+
const AddObligation = ({
|
|
10
|
+
text,
|
|
11
|
+
action,
|
|
12
|
+
themeValues,
|
|
13
|
+
extraStyles,
|
|
14
|
+
textExtraStyles
|
|
15
|
+
}) => {
|
|
16
|
+
const hoverStyles = `
|
|
17
|
+
&:hover {
|
|
18
|
+
.fill { fill: ${themeValues.hoverColor}; }
|
|
19
|
+
.stroke { stroke: ${themeValues.hoverColor}; }
|
|
20
|
+
button { text-decoration: underline; text-decoration-color: ${themeValues.hoverColor}; }
|
|
21
|
+
span { color: ${themeValues.hoverColor}; }
|
|
22
|
+
}`;
|
|
23
|
+
|
|
24
|
+
const activeStyles = `
|
|
25
|
+
&:active {
|
|
26
|
+
.fill { fill: ${themeValues.activeColor}; }
|
|
27
|
+
.stroke { stroke: ${themeValues.activeColor}; }
|
|
28
|
+
button { text-decoration: underline; text-decoration-color: ${themeValues.activeColor}; }
|
|
29
|
+
span { color: ${themeValues.activeColor}; }
|
|
30
|
+
}`;
|
|
31
|
+
|
|
32
|
+
const defaultStyles = `
|
|
33
|
+
min-height: 0;
|
|
34
|
+
.fill { fill: ${themeValues.color}; }
|
|
35
|
+
.stroke { stroke: ${themeValues.color}; }
|
|
36
|
+
`;
|
|
37
|
+
return (
|
|
38
|
+
<Box
|
|
39
|
+
className="button"
|
|
40
|
+
padding="0.5rem 0"
|
|
41
|
+
hoverStyles={hoverStyles}
|
|
42
|
+
activeStyles={activeStyles}
|
|
43
|
+
extraStyles={defaultStyles}
|
|
44
|
+
onClick={action}
|
|
45
|
+
>
|
|
46
|
+
<Cover singleChild minHeight="100%">
|
|
47
|
+
<Cluster justify="center" align="center" minHeight="100%">
|
|
48
|
+
<IconAdd />
|
|
49
|
+
<Center intrinsic>
|
|
50
|
+
<ButtonWithAction
|
|
51
|
+
action={action}
|
|
52
|
+
text={text}
|
|
53
|
+
variant="smallGhost"
|
|
54
|
+
extraStyles={`min-height: 0; ${extraStyles}`}
|
|
55
|
+
textExtraStyles={`padding: 0 0 0 0.75rem; font-size: 0.875rem; font-weight ${FONT_WEIGHT_SEMIBOLD}; ${textExtraStyles}`}
|
|
56
|
+
/>
|
|
57
|
+
</Center>
|
|
58
|
+
</Cluster>
|
|
59
|
+
</Cover>
|
|
60
|
+
</Box>
|
|
61
|
+
);
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
export default themeComponent(AddObligation, "AddObligation", fallbackValues);
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { text } from "@storybook/addon-knobs";
|
|
3
|
+
import AddObligation from "./AddObligation";
|
|
4
|
+
import page from "../../../../.storybook/page";
|
|
5
|
+
|
|
6
|
+
export const addObligation = () => (
|
|
7
|
+
<AddObligation
|
|
8
|
+
text={text("text", "Lorem", "props")}
|
|
9
|
+
extraStyles={text("extraStyles", "", "props")}
|
|
10
|
+
textExtraStyles={text("textExtraStyles", "", "props")}
|
|
11
|
+
/>
|
|
12
|
+
);
|
|
13
|
+
|
|
14
|
+
const story = page({
|
|
15
|
+
title: "Components|Atoms/AddObligation",
|
|
16
|
+
Component: AddObligation
|
|
17
|
+
});
|
|
18
|
+
export default story;
|
|
@@ -44,7 +44,7 @@ const ButtonWithLink = ({
|
|
|
44
44
|
url={url}
|
|
45
45
|
disabled={disabled}
|
|
46
46
|
newTab={newTab}
|
|
47
|
-
extraStyles={`text-decoration: none;
|
|
47
|
+
extraStyles={`text-decoration: none; &:hover {
|
|
48
48
|
text-decoration: none; }`}
|
|
49
49
|
>
|
|
50
50
|
<ButtonWithAction {...otherProps} extraStyles={extraStyles} />
|
|
@@ -135,6 +135,7 @@ const FormInput = ({
|
|
|
135
135
|
color={themeValues.linkColor}
|
|
136
136
|
weight={themeValues.fontWeight}
|
|
137
137
|
hoverStyles={themeValues.hoverFocusStyles}
|
|
138
|
+
focusStyles={themeValues.hoverFocusStyles}
|
|
138
139
|
extraStyles={`cursor: pointer;`}
|
|
139
140
|
onClick={() => setShowPassword(!showPassword)}
|
|
140
141
|
aria-label="Show password"
|
|
@@ -15,6 +15,7 @@ const Heading = ({
|
|
|
15
15
|
extraStyles = ``,
|
|
16
16
|
className,
|
|
17
17
|
variant = "h1",
|
|
18
|
+
dataQa,
|
|
18
19
|
children,
|
|
19
20
|
...rest
|
|
20
21
|
}) => (
|
|
@@ -28,6 +29,7 @@ const Heading = ({
|
|
|
28
29
|
className={className}
|
|
29
30
|
fontFamily={themeValues.fontFamily}
|
|
30
31
|
fontSize={themeValues.fontSize}
|
|
32
|
+
data-qa={dataQa}
|
|
31
33
|
{...rest}
|
|
32
34
|
>
|
|
33
35
|
{safeChildren(children, <span />)}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
|
|
3
|
+
const IconAdd = () => (
|
|
4
|
+
<svg
|
|
5
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
6
|
+
xmlnsXlink="http://www.w3.org/1999/xlink"
|
|
7
|
+
width="18"
|
|
8
|
+
height="18"
|
|
9
|
+
viewBox="0 0 18 18"
|
|
10
|
+
className="icon"
|
|
11
|
+
>
|
|
12
|
+
<defs>
|
|
13
|
+
<path
|
|
14
|
+
id="path-1"
|
|
15
|
+
d="M7.91666623 4.78508747L4.78508747 4.78508747 4.78508747 7.91666623 3.74122788 7.91666623 3.74122788 4.78508747 0.609649123 4.78508747 0.609649123 3.74122788 3.74122788 3.74122788 3.74122788 0.609649123 4.78508747 0.609649123 4.78508747 3.74122788 7.91666623 3.74122788z"
|
|
16
|
+
></path>
|
|
17
|
+
</defs>
|
|
18
|
+
<g fill="none" fillRule="evenodd" stroke="none" strokeWidth="1">
|
|
19
|
+
<g transform="translate(-407 -563)">
|
|
20
|
+
<g transform="translate(408 562)">
|
|
21
|
+
<g transform="translate(0 2)">
|
|
22
|
+
<g transform="translate(3.94 3.858)">
|
|
23
|
+
<mask fill="#fff">
|
|
24
|
+
<use xlinkHref="#path-1"></use>
|
|
25
|
+
</mask>
|
|
26
|
+
<use className="fill" xlinkHref="#path-1"></use>
|
|
27
|
+
</g>
|
|
28
|
+
<circle className="stroke" cx="8.155" cy="8.072" r="8"></circle>
|
|
29
|
+
</g>
|
|
30
|
+
</g>
|
|
31
|
+
</g>
|
|
32
|
+
</g>
|
|
33
|
+
</svg>
|
|
34
|
+
);
|
|
35
|
+
|
|
36
|
+
export default IconAdd;
|
|
@@ -17,6 +17,7 @@ import CheckmarkIcon from "./CheckmarkIcon";
|
|
|
17
17
|
import BankIcon from "./BankIcon";
|
|
18
18
|
import GenericCard from "./GenericCard";
|
|
19
19
|
import PaymentIcon from "./PaymentIcon";
|
|
20
|
+
import IconAdd from "./IconAdd";
|
|
20
21
|
|
|
21
22
|
export {
|
|
22
23
|
AccountsIcon,
|
|
@@ -37,5 +38,6 @@ export {
|
|
|
37
38
|
CheckmarkIcon,
|
|
38
39
|
BankIcon,
|
|
39
40
|
GenericCard,
|
|
40
|
-
PaymentIcon
|
|
41
|
+
PaymentIcon,
|
|
42
|
+
IconAdd
|
|
41
43
|
};
|
|
@@ -6,7 +6,6 @@ export const CoverOuterContainer = styled.div`
|
|
|
6
6
|
flex-direction: column;
|
|
7
7
|
min-height: ${({ minHeight }) => minHeight};
|
|
8
8
|
padding: ${({ padding }) => padding};
|
|
9
|
-
min-width: ${({ fillCenter }) => (fillCenter ? "100%" : "auto")};
|
|
10
9
|
|
|
11
10
|
> * {
|
|
12
11
|
margin-top: ${({ childGap }) => childGap};
|
|
@@ -12,6 +12,7 @@ const Paragraph = ({
|
|
|
12
12
|
color = FIREFLY_GREY,
|
|
13
13
|
margin = 0,
|
|
14
14
|
extraStyles = ``,
|
|
15
|
+
dataQa,
|
|
15
16
|
children,
|
|
16
17
|
...rest
|
|
17
18
|
}) => (
|
|
@@ -22,6 +23,7 @@ const Paragraph = ({
|
|
|
22
23
|
fontFamily={themeValues.fontFamily}
|
|
23
24
|
fontSize={themeValues.fontSize}
|
|
24
25
|
extraStyles={extraStyles}
|
|
26
|
+
data-qa={dataQa}
|
|
25
27
|
{...rest}
|
|
26
28
|
>
|
|
27
29
|
{safeChildren(children, <span />)}
|
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
import React
|
|
2
|
-
import { ThemeContext } from "styled-components";
|
|
1
|
+
import React from "react";
|
|
3
2
|
import { Link } from "react-router-dom";
|
|
4
3
|
import Text from "../text";
|
|
5
|
-
import { Box, Switcher, Center, Cluster } from "../layouts";
|
|
4
|
+
import { Box, Switcher, Center, Cluster, Cover } from "../layouts";
|
|
6
5
|
import { fallbackValues } from "./Placeholder.theme";
|
|
7
6
|
import { themeComponent } from "../../../util/themeUtils";
|
|
8
|
-
import {
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
import {
|
|
8
|
+
STORM_GREY,
|
|
9
|
+
GRECIAN_GREY,
|
|
10
|
+
CHARADE_GREY
|
|
11
|
+
} from "../../../constants/colors";
|
|
12
|
+
import { AccountsAddIcon, PropertiesAddIcon, IconAdd } from "../icons";
|
|
11
13
|
import { FONT_WEIGHT_REGULAR } from "../../../constants/style_constants";
|
|
12
|
-
import withWindowSize from "../../withWindowSize";
|
|
13
14
|
|
|
14
15
|
const PlaceholderContentWrapper = ({
|
|
15
16
|
isLink,
|
|
@@ -40,30 +41,26 @@ const Placeholder = ({
|
|
|
40
41
|
text,
|
|
41
42
|
action,
|
|
42
43
|
visible = true,
|
|
43
|
-
iconID,
|
|
44
44
|
isLink = false,
|
|
45
45
|
destination,
|
|
46
46
|
variant,
|
|
47
47
|
largeIcon,
|
|
48
48
|
themeValues,
|
|
49
49
|
dataQa
|
|
50
|
-
}) =>
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
minHeight={themeValues.height}
|
|
65
|
-
hiddenStyles={!visible}
|
|
66
|
-
extraStyles={`
|
|
50
|
+
}) => (
|
|
51
|
+
<PlaceholderContentWrapper
|
|
52
|
+
isLink={isLink}
|
|
53
|
+
action={action}
|
|
54
|
+
destination={destination}
|
|
55
|
+
dataQa={dataQa}
|
|
56
|
+
>
|
|
57
|
+
<Box
|
|
58
|
+
padding="0"
|
|
59
|
+
borderRadius="4px"
|
|
60
|
+
border="none"
|
|
61
|
+
minHeight={themeValues.height}
|
|
62
|
+
hiddenStyles={!visible}
|
|
63
|
+
extraStyles={`
|
|
67
64
|
background: linear-gradient(
|
|
68
65
|
to right,
|
|
69
66
|
${STORM_GREY} 40%,
|
|
@@ -78,45 +75,65 @@ const Placeholder = ({
|
|
|
78
75
|
display: flex;
|
|
79
76
|
justify-content: center;
|
|
80
77
|
align-items:center;`}
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
78
|
+
hoverStyles={`background-color: ${GRECIAN_GREY};`}
|
|
79
|
+
>
|
|
80
|
+
<Center maxWidth="300px">
|
|
81
|
+
<Box padding="0px 0px 0px 0px">
|
|
82
|
+
<Cluster justify="center" align="center" minHeight="100%">
|
|
83
|
+
<Switcher maxChildren={2} childGap="0">
|
|
84
|
+
{variant === "large" && <div></div>}
|
|
85
|
+
<Box
|
|
86
|
+
padding="0"
|
|
87
|
+
extraStyles={`.fill {
|
|
88
|
+
fill: ${CHARADE_GREY};
|
|
89
|
+
} .stroke {
|
|
90
|
+
stroke: ${CHARADE_GREY};
|
|
91
|
+
}`}
|
|
92
|
+
>
|
|
93
|
+
{variant === "large" ? (
|
|
94
|
+
<Center intrinsic>
|
|
95
|
+
{largeIcon === "accounts" ? (
|
|
91
96
|
<AccountsAddIcon />
|
|
92
97
|
) : (
|
|
93
98
|
<PropertiesAddIcon />
|
|
94
|
-
)
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
99
|
+
)}
|
|
100
|
+
<Text
|
|
101
|
+
variant="pS"
|
|
102
|
+
color={themeValues.color}
|
|
103
|
+
weight={FONT_WEIGHT_REGULAR}
|
|
104
|
+
extraStyles={`text-align: center;`}
|
|
105
|
+
>
|
|
106
|
+
{text}
|
|
107
|
+
</Text>
|
|
108
|
+
</Center>
|
|
109
|
+
) : (
|
|
110
|
+
<Cover singleChild minHeight="100%">
|
|
111
|
+
<Cluster justify="center" align="center">
|
|
112
|
+
<IconAdd />
|
|
113
|
+
<Center intrinsic>
|
|
114
|
+
<Text
|
|
115
|
+
variant="pS"
|
|
116
|
+
color={themeValues.color}
|
|
117
|
+
weight={FONT_WEIGHT_REGULAR}
|
|
118
|
+
extraStyles={`padding: 0 0 0 8px; text-align: center;`}
|
|
119
|
+
>
|
|
120
|
+
{text}
|
|
121
|
+
</Text>
|
|
122
|
+
</Center>
|
|
123
|
+
</Cluster>
|
|
124
|
+
</Cover>
|
|
125
|
+
)}
|
|
126
|
+
</Box>
|
|
127
|
+
</Switcher>
|
|
128
|
+
</Cluster>
|
|
129
|
+
</Box>
|
|
130
|
+
</Center>
|
|
131
|
+
</Box>
|
|
132
|
+
</PlaceholderContentWrapper>
|
|
133
|
+
);
|
|
134
|
+
|
|
118
135
|
export default themeComponent(
|
|
119
|
-
|
|
136
|
+
Placeholder,
|
|
120
137
|
"Placeholder",
|
|
121
138
|
fallbackValues,
|
|
122
139
|
"default"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { useEffect } from "react";
|
|
2
|
-
import { required,
|
|
2
|
+
import { required, isProbablyEmail } from "redux-freeform";
|
|
3
3
|
import {
|
|
4
4
|
FormInput,
|
|
5
5
|
FormContainer,
|
|
@@ -22,10 +22,6 @@ const EmailForm = ({
|
|
|
22
22
|
[required.error]: "Email is required",
|
|
23
23
|
[isProbablyEmail.error]: "Invalid email address"
|
|
24
24
|
};
|
|
25
|
-
const confirmEmailFieldErrorMessages = {
|
|
26
|
-
[matchesField.error]: "Confirm email must match email",
|
|
27
|
-
[required.error]: "Confirm email must match email"
|
|
28
|
-
};
|
|
29
25
|
|
|
30
26
|
return (
|
|
31
27
|
<FormContainer variant={variant} role="form" aria-label="Email">
|
|
@@ -39,15 +35,6 @@ const EmailForm = ({
|
|
|
39
35
|
showErrors={showErrors}
|
|
40
36
|
onKeyDown={e => e.key === "Enter" && handleSubmit(e)}
|
|
41
37
|
/>
|
|
42
|
-
<FormInput
|
|
43
|
-
labelTextWhenNoError="Confirm email"
|
|
44
|
-
errorMessages={confirmEmailFieldErrorMessages}
|
|
45
|
-
type="email"
|
|
46
|
-
field={fields.confirmEmail}
|
|
47
|
-
fieldActions={actions.fields.confirmEmail}
|
|
48
|
-
showErrors={showErrors}
|
|
49
|
-
onKeyDown={e => e.key === "Enter" && handleSubmit(e)}
|
|
50
|
-
/>
|
|
51
38
|
</FormInputColumn>
|
|
52
39
|
</FormContainer>
|
|
53
40
|
);
|
|
@@ -1,16 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
createFormState,
|
|
3
|
-
required,
|
|
4
|
-
matchesField,
|
|
5
|
-
isProbablyEmail
|
|
6
|
-
} from "redux-freeform";
|
|
1
|
+
import { createFormState, required, isProbablyEmail } from "redux-freeform";
|
|
7
2
|
|
|
8
3
|
const formConfig = {
|
|
9
4
|
email: {
|
|
10
5
|
validators: [required(), isProbablyEmail()]
|
|
11
|
-
},
|
|
12
|
-
confirmEmail: {
|
|
13
|
-
validators: [required(), matchesField("email")]
|
|
14
6
|
}
|
|
15
7
|
};
|
|
16
8
|
|
|
@@ -24,7 +24,7 @@ const NavMenuDesktop = ({
|
|
|
24
24
|
extraStyles={`position: relative; ${menuCarat}`}
|
|
25
25
|
background={themeValues.backgroundColor}
|
|
26
26
|
borderRadius="5px"
|
|
27
|
-
boxShadow={`0px 3px 8px 0px ${themeValues.
|
|
27
|
+
boxShadow={`0px 3px 8px 0px ${themeValues.shadowColor}, 0px 2px 14px 0px ${themeValues.shadowColor};`}
|
|
28
28
|
onMouseEnter={onMouseEnter}
|
|
29
29
|
onMouseLeave={onMouseLeave}
|
|
30
30
|
onFocus={onFocus}
|