@comicrelief/component-library 6.10.0 → 7.0.1
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/cypress/integration/components/Organisms/Donate.spec.js +13 -13
- package/cypress/integration/components/Organisms/EmailSignUp.spec.js +47 -132
- package/dist/components/Organisms/Donate/Donate.md +9 -9
- package/dist/components/Organisms/Donate/Form/Form.js +2 -1
- package/dist/components/Organisms/Donate/GivingSelector/GivingSelector.js +17 -71
- package/dist/components/Organisms/Donate/GivingSelector/GivingSelector.style.js +71 -0
- package/dist/components/Organisms/Donate/__snapshots__/Donate.test.js.snap +11 -25
- package/dist/components/Organisms/EmailSignUp/EmailSignUp.md +8 -123
- package/dist/components/Organisms/EmailSignUp/EmailSignUp.style.js +46 -29
- package/dist/components/Organisms/EmailSignUp/EmailSignUp.test.js +24 -69
- package/dist/components/Organisms/EmailSignUp/EmailSignUpForm.js +92 -0
- package/dist/components/Organisms/EmailSignUp/_Confetti.js +116 -0
- package/dist/components/Organisms/EmailSignUp/_EmailSignUp.js +107 -0
- package/dist/components/Organisms/EmailSignUp/_EmailSignUpConfig.js +51 -0
- package/dist/components/Organisms/EmailSignUp/_TextInput.js +51 -0
- package/dist/components/Organisms/EmailSignUp/__snapshots__/EmailSignUp.test.js.snap +249 -406
- package/dist/components/Organisms/Header/Header.md +1 -13
- package/dist/components/Organisms/Membership/Membership.test.js +1 -1
- package/dist/index.js +14 -10
- package/package.json +2 -1
- package/src/components/Organisms/Donate/Donate.md +9 -9
- package/src/components/Organisms/Donate/Form/Form.js +1 -0
- package/src/components/Organisms/Donate/GivingSelector/GivingSelector.js +15 -85
- package/src/components/Organisms/Donate/GivingSelector/GivingSelector.style.js +78 -0
- package/src/components/Organisms/Donate/__snapshots__/Donate.test.js.snap +11 -25
- package/src/components/Organisms/EmailSignUp/EmailSignUp.md +8 -123
- package/src/components/Organisms/EmailSignUp/EmailSignUp.style.js +33 -13
- package/src/components/Organisms/EmailSignUp/EmailSignUp.test.js +35 -69
- package/src/components/Organisms/EmailSignUp/EmailSignUpForm.js +60 -0
- package/src/components/Organisms/EmailSignUp/_Confetti.js +106 -0
- package/src/components/Organisms/EmailSignUp/_EmailSignUp.js +138 -0
- package/src/components/Organisms/EmailSignUp/_EmailSignUpConfig.js +54 -0
- package/src/components/Organisms/EmailSignUp/_TextInput.js +45 -0
- package/src/components/Organisms/EmailSignUp/__snapshots__/EmailSignUp.test.js.snap +249 -406
- package/src/components/Organisms/Header/Header.md +1 -13
- package/src/components/Organisms/Membership/Membership.test.js +33 -33
- package/src/index.js +10 -4
- package/cypress/integration/components/Molecules/HeaderEsuWithIcon.spec.js +0 -69
- package/dist/components/Molecules/HeaderEsuWithIcon/HeaderEsuWithIcon.js +0 -136
- package/dist/components/Molecules/HeaderEsuWithIcon/HeaderEsuWithIcon.md +0 -47
- package/dist/components/Molecules/HeaderEsuWithIcon/HeaderEsuWithIcon.style.js +0 -52
- package/dist/components/Molecules/HeaderEsuWithIcon/HeaderEsuWithIcon.test.js +0 -99
- package/dist/components/Molecules/HeaderEsuWithIcon/__snapshots__/HeaderEsuWithIcon.test.js.snap +0 -1211
- package/dist/components/Molecules/HeaderEsuWithIcon/assets/HeaderIcons.js +0 -25
- package/dist/components/Molecules/HeaderEsuWithIcon/assets/icon--close.svg +0 -5
- package/dist/components/Molecules/HeaderEsuWithIcon/assets/icon--email.svg +0 -5
- package/dist/components/Organisms/EmailSignUp/EmailSignUp.js +0 -182
- package/src/components/Molecules/HeaderEsuWithIcon/HeaderEsuWithIcon.js +0 -135
- package/src/components/Molecules/HeaderEsuWithIcon/HeaderEsuWithIcon.md +0 -47
- package/src/components/Molecules/HeaderEsuWithIcon/HeaderEsuWithIcon.style.js +0 -60
- package/src/components/Molecules/HeaderEsuWithIcon/HeaderEsuWithIcon.test.js +0 -103
- package/src/components/Molecules/HeaderEsuWithIcon/__snapshots__/HeaderEsuWithIcon.test.js.snap +0 -1211
- package/src/components/Molecules/HeaderEsuWithIcon/assets/HeaderIcons.js +0 -15
- package/src/components/Molecules/HeaderEsuWithIcon/assets/icon--close.svg +0 -5
- package/src/components/Molecules/HeaderEsuWithIcon/assets/icon--email.svg +0 -5
- package/src/components/Organisms/EmailSignUp/EmailSignUp.js +0 -197
|
@@ -36,12 +36,11 @@ import Link from '../../Atoms/Link/Link';
|
|
|
36
36
|
/>;
|
|
37
37
|
```
|
|
38
38
|
|
|
39
|
-
# Comic Relief header with Search
|
|
39
|
+
# Comic Relief header with Search
|
|
40
40
|
|
|
41
41
|
```js
|
|
42
42
|
import data from './data/data';
|
|
43
43
|
import Link from '../../Atoms/Link/Link';
|
|
44
|
-
import HeaderEsuWithIcon from '../../Molecules/HeaderEsuWithIcon/HeaderEsuWithIcon';
|
|
45
44
|
import searchIcon from './assets/icon--search.svg';
|
|
46
45
|
import Icon from '../../Atoms/SocialIcons/Icon/Icon';
|
|
47
46
|
import RichText from '../../Atoms/RichText/RichText';
|
|
@@ -86,17 +85,6 @@ const [success, setSuccess] = React.useState(false);
|
|
|
86
85
|
tabIndex="0"
|
|
87
86
|
/>
|
|
88
87
|
</div>
|
|
89
|
-
|
|
90
|
-
<HeaderEsuWithIcon
|
|
91
|
-
title={title}
|
|
92
|
-
topCopy={topCopy}
|
|
93
|
-
privacyCopy={privacyCopy}
|
|
94
|
-
successCopy={successCopy}
|
|
95
|
-
isSuccess={success}
|
|
96
|
-
privacyCopy={privacyCopy}
|
|
97
|
-
errorMsg=""
|
|
98
|
-
subscribe={() => setSuccess(!success)}
|
|
99
|
-
/>
|
|
100
88
|
</>
|
|
101
89
|
}
|
|
102
90
|
/>;
|
|
@@ -29,5 +29,5 @@ it("renders correctly", function () {
|
|
|
29
29
|
subtitle: "Jordan was close to suicide - which is now the biggest killer of men under 45 in the UK. Join now and help save lives.",
|
|
30
30
|
otherDescription: "Your donation will help us fund amazing projects in the UK and around the world."
|
|
31
31
|
})).toJSON();
|
|
32
|
-
expect(tree).toMatchInlineSnapshot("\n .c6 {\n font-size: 1.5rem;\n line-height: 1.5rem;\n text-transform: inherit;\n font-weight: 800;\n font-family: 'Montserrat',Helvetica,Arial,sans-serif;\n }\n\n .c7 {\n font-size: 1rem;\n line-height: 1rem;\n text-transform: inherit;\n line-height: normal;\n font-family: 'Montserrat',Helvetica,Arial,sans-serif;\n }\n\n .c12 {\n font-size: 1rem;\n line-height: 1rem;\n text-transform: inherit;\n font-family: 'Montserrat',Helvetica,Arial,sans-serif;\n }\n\n .c16 {\n font-size: 1rem;\n line-height: 1rem;\n text-transform: inherit;\n font-weight: bold;\n line-height: normal;\n font-family: 'Montserrat',Helvetica,Arial,sans-serif;\n }\n\n .c22 {\n font-size: 1rem;\n line-height: 1rem;\n text-transform: inherit;\n font-weight: 500;\n line-height: normal;\n font-family: 'Montserrat',Helvetica,Arial,sans-serif;\n }\n\n .c1 {\n display: block;\n width: 100%;\n height: 100%;\n position: relative;\n }\n\n .c3 {\n width: 100%;\n height: 100%;\n display: block;\n object-fit: cover;\n }\n\n .c14 {\n position: relative;\n display: -webkit-box;\n display: -webkit-flex;\n display: -ms-flexbox;\n display: flex;\n -webkit-flex-direction: column;\n -ms-flex-direction: column;\n flex-direction: column;\n color: #5C5C5E;\n width: 100%;\n }\n\n .c17 {\n margin-bottom: 0.5rem;\n }\n\n .c19 {\n position: relative;\n box-sizing: border-box;\n width: 100%;\n height: 48px;\n padding: 1rem 1.5rem;\n background-color: #F4F3F5;\n border: 1px solid;\n border-color: #E1E2E3;\n box-shadow: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n color: #000000;\n border-radius: 0.5rem;\n font-size: inherit;\n z-index: 2;\n font-family: 'Montserrat',Helvetica,Arial,sans-serif;\n }\n\n .c19:focus {\n border: 1px solid #666;\n }\n\n .c18 {\n position: relative;\n font-size: 1.25rem;\n }\n\n .c0 {\n background-color: #FEE3CC;\n position: relative;\n display: -webkit-box;\n display: -webkit-flex;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: center;\n -webkit-justify-content: center;\n -ms-flex-pack: center;\n justify-content: center;\n min-height: 100vh;\n }\n\n .c2 {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n height: auto;\n }\n\n .c2:before {\n color: #FEE3CC;\n content: '';\n position: absolute;\n width: 100%;\n height: 100%;\n box-shadow: inset 0px 4rem 2rem -2rem;\n }\n\n .c4 {\n position: relative;\n max-width: 320px;\n text-align: center;\n margin-bottom: 50%;\n }\n\n .c5 {\n padding: 2rem 1rem 0;\n margin-bottom: 2rem;\n }\n\n .c8 {\n background-color: #FFFFFF;\n box-shadow: 0px 1rem 4rem rgba(0,0,0,0.3);\n height: 450px;\n }\n\n .c9 {\n padding: 1rem;\n }\n\n .c9 h3 {\n margin-top: 1rem;\n }\n\n .c9 input {\n max-width: 100%;\n margin: 0;\n }\n\n .c10 {\n padding: 0;\n margin: 0;\n border: none;\n }\n\n .c10 >:not(:last-child):not(legend) {\n margin-bottom: 2rem;\n }\n\n .c11 {\n margin: 0;\n padding: 0;\n }\n\n .c13 {\n display: -webkit-box;\n display: -webkit-flex;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: justify;\n -webkit-justify-content: space-between;\n -ms-flex-pack: justify;\n justify-content: space-between;\n }\n\n .c13 label {\n -webkit-flex: 0 0 30%;\n -ms-flex: 0 0 30%;\n flex: 0 0 30%;\n }\n\n .c13 label input {\n cursor: pointer;\n padding: 1rem;\n }\n\n .c13 label:hover input {\n border-color: #E52630;\n }\n\n .c21 {\n display: -webkit-box;\n display: -webkit-flex;\n display: -ms-flexbox;\n display: flex;\n -webkit-align-items: center;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n }\n\n .c23 {\n margin-right: auto;\n }\n\n .c24 {\n position: relative;\n -webkit-flex: 0 0 50%;\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n font-weight: 400;\n display: block;\n }\n\n .c24 span {\n position: absolute;\n padding: 0px 15px;\n font-size: 20px;\n top: 50%;\n -webkit-transform: translateY(-50%);\n -ms-transform: translateY(-50%);\n transform: translateY(-50%);\n left: 0px;\n font-weight: 500;\n }\n\n .c24 input {\n border: 2px solid #E1E2E3;\n background: transparent;\n padding: 0.5rem 1rem 0.5rem 2rem;\n }\n\n .c24 input:focus {\n border: 2px solid #E52630;\n }\n\n .c26 {\n line-height: 1.5;\n }\n\n .c25 {\n width: 100%;\n color: #FFFFFF;\n font-size: 1rem;\n font-weight: bold;\n cursor: pointer;\n padding: 1rem 0.5rem;\n background: #E52630;\n border: none;\n border-radius: 100px;\n }\n\n .c25:active,\n .c25:focus,\n .c25:hover {\n background-color: #961D35;\n }\n\n .c15 {\n display: block;\n }\n\n .c15 input {\n border: 2px solid #E1E2E3;\n font-size: 1.5rem;\n font-weight: 800;\n -webkit-letter-spacing: -2px;\n -moz-letter-spacing: -2px;\n -ms-letter-spacing: -2px;\n letter-spacing: -2px;\n height: auto;\n }\n\n .c20 {\n display: block;\n }\n\n .c20 input {\n border: 2px solid #E1E2E3;\n font-size: 1.5rem;\n font-weight: 800;\n -webkit-letter-spacing: -2px;\n -moz-letter-spacing: -2px;\n -ms-letter-spacing: -2px;\n letter-spacing: -2px;\n height: auto;\n border-color: #E52630;\n background-color: #E52630;\n color: #FFFFFF;\n }\n\n @media (min-width:740px) {\n .c19 {\n max-width: 290px;\n }\n }\n\n @media (min-width:1024px) {\n .c0 {\n -webkit-align-items: center;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: inherit;\n -webkit-justify-content: inherit;\n -ms-flex-pack: inherit;\n justify-content: inherit;\n min-height: 750px;\n height: 100vh;\n max-height: 900px;\n -webkit-flex-direction: row;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n }\n\n @media (min-width:1024px) {\n .c2 {\n height: 100%;\n }\n\n .c2:before {\n content: none;\n }\n }\n\n @media (min-width:1024px) {\n .c4 {\n margin: 0 8rem;\n max-width: 420px;\n }\n }\n\n @media (min-width:1024px) {\n .c8 {\n height: 430px;\n }\n }\n\n @media (min-width:1024px) {\n .c24 {\n -webkit-flex: 0 0 60%;\n -ms-flex: 0 0 60%;\n flex: 0 0 60%;\n }\n }\n\n @media (min-width:1024px) {\n .c25 {\n width: auto;\n padding: 1rem 2rem;\n margin: 0 auto 2rem;\n }\n }\n\n <div\n className=\"c0\"\n id=\"mship-1\"\n >\n <div\n className=\"c1 c2\"\n height=\"100%\"\n width=\"100%\"\n >\n <img\n alt=\"Background image\"\n className=\"c3 lazyload\"\n data-src={null}\n height=\"100%\"\n width=\"100%\"\n />\n </div>\n <div\n className=\"c4\"\n >\n <div\n className=\"c5\"\n >\n <h2\n className=\"c6\"\n color=\"inherit\"\n size=\"l\"\n >\n Help someone like Jordan see a better tomorrow\n </h2>\n <p\n className=\"c7\"\n color=\"inherit\"\n size=\"s\"\n >\n Jordan was close to suicide - which is now the biggest killer of men under 45 in the UK. Join now and help save lives.\n </p>\n </div>\n <div\n className=\"c8\"\n >\n <form\n className=\"c9\"\n onSubmit={[Function]}\n >\n <fieldset\n className=\"c10\"\n >\n <legend\n className=\"c11\"\n >\n <h3\n className=\"c12\"\n color=\"inherit\"\n size=\"s\"\n >\n Choose your monthly donation\n </h3>\n </legend>\n <div\n className=\"c13\"\n >\n <label\n className=\"c14 c15\"\n htmlFor=\"mship-1--moneyBuy-box1\"\n >\n <span\n className=\"c16 c17\"\n color=\"inherit\"\n dangerouslySetInnerHTML={\n Object {\n \"__html\": \"\",\n }\n }\n size=\"s\"\n />\n <div\n className=\"c18\"\n >\n \n <input\n aria-describedby=\"mship-1--moneyBuy-box1\"\n aria-label=\"\xA35\"\n className=\"c19\"\n id=\"mship-1--moneyBuy-box1\"\n name=\"mship-1--moneyBuy1\"\n onClick={[Function]}\n placeholder=\"\"\n required={false}\n type=\"button\"\n value=\"\xA3 5\"\n />\n </div>\n \n </label>\n <label\n className=\"c14 c20\"\n htmlFor=\"mship-1--moneyBuy-box2\"\n >\n <span\n className=\"c16 c17\"\n color=\"inherit\"\n dangerouslySetInnerHTML={\n Object {\n \"__html\": \"\",\n }\n }\n size=\"s\"\n />\n <div\n className=\"c18\"\n >\n \n <input\n aria-describedby=\"mship-1--moneyBuy-box2\"\n aria-label=\"\xA310\"\n className=\"c19\"\n id=\"mship-1--moneyBuy-box2\"\n name=\"mship-1--moneyBuy2\"\n onClick={[Function]}\n placeholder=\"\"\n required={false}\n type=\"button\"\n value=\"\xA3 10\"\n />\n </div>\n \n </label>\n <label\n className=\"c14 c15\"\n htmlFor=\"mship-1--moneyBuy-box3\"\n >\n <span\n className=\"c16 c17\"\n color=\"inherit\"\n dangerouslySetInnerHTML={\n Object {\n \"__html\": \"\",\n }\n }\n size=\"s\"\n />\n <div\n className=\"c18\"\n >\n \n <input\n aria-describedby=\"mship-1--moneyBuy-box3\"\n aria-label=\"\xA320\"\n className=\"c19\"\n id=\"mship-1--moneyBuy-box3\"\n name=\"mship-1--moneyBuy3\"\n onClick={[Function]}\n placeholder=\"\"\n required={false}\n type=\"button\"\n value=\"\xA3 20\"\n />\n </div>\n \n </label>\n </div>\n <div\n className=\"c21\"\n >\n <span\n className=\"c22 c23\"\n color=\"inherit\"\n size=\"s\"\n >\n Other amount\n </span>\n <label\n className=\"c14 c24\"\n htmlFor=\"mship-1--MoneyBuy-userInput\"\n >\n <span\n className=\"c16 c17\"\n color=\"inherit\"\n dangerouslySetInnerHTML={\n Object {\n \"__html\": \"\xA3\",\n }\n }\n size=\"s\"\n />\n <div\n className=\"c18\"\n >\n \n <input\n aria-describedby=\"mship-1--MoneyBuy-userInput\"\n aria-label=\"Input a different amount\"\n className=\"c19\"\n id=\"mship-1--MoneyBuy-userInput\"\n max=\"20000\"\n min=\"1\"\n name=\"membership_amount\"\n onChange={[Function]}\n onClick={[Function]}\n onKeyPress={[Function]}\n pattern=\"[^[0-9]+([,.][0-9]+)?$]\"\n placeholder=\"0.00\"\n required={false}\n step=\"0.01\"\n type=\"number\"\n value=\"\"\n />\n </div>\n \n </label>\n </div>\n <input\n className=\"c25\"\n type=\"submit\"\n value=\"Donate\"\n />\n <p\n className=\"c26\"\n />\n </fieldset>\n </form>\n </div>\n </div>\n </div>\n ");
|
|
32
|
+
expect(tree).toMatchInlineSnapshot("\n .c6 {\n font-size: 1.5rem;\n line-height: 1.5rem;\n text-transform: inherit;\n font-weight: 800;\n font-family: 'Montserrat',Helvetica,Arial,sans-serif;\n }\n\n .c7 {\n font-size: 1rem;\n line-height: 1rem;\n text-transform: inherit;\n line-height: normal;\n font-family: 'Montserrat',Helvetica,Arial,sans-serif;\n }\n\n .c12 {\n font-size: 1rem;\n line-height: 1rem;\n text-transform: inherit;\n font-family: 'Montserrat',Helvetica,Arial,sans-serif;\n }\n\n .c16 {\n font-size: 1rem;\n line-height: 1rem;\n text-transform: inherit;\n font-weight: bold;\n line-height: normal;\n font-family: 'Montserrat',Helvetica,Arial,sans-serif;\n }\n\n .c22 {\n font-size: 1rem;\n line-height: 1rem;\n text-transform: inherit;\n font-weight: 500;\n line-height: normal;\n font-family: 'Montserrat',Helvetica,Arial,sans-serif;\n }\n\n .c1 {\n display: block;\n width: 100%;\n height: 100%;\n position: relative;\n }\n\n .c3 {\n width: 100%;\n height: 100%;\n display: block;\n object-fit: cover;\n }\n\n .c14 {\n position: relative;\n display: -webkit-box;\n display: -webkit-flex;\n display: -ms-flexbox;\n display: flex;\n -webkit-flex-direction: column;\n -ms-flex-direction: column;\n flex-direction: column;\n color: #5C5C5E;\n width: 100%;\n }\n\n .c17 {\n margin-bottom: 0.5rem;\n }\n\n .c19 {\n position: relative;\n box-sizing: border-box;\n width: 100%;\n height: 48px;\n padding: 1rem 1.5rem;\n background-color: #F4F3F5;\n border: 1px solid;\n border-color: #E1E2E3;\n box-shadow: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n color: #000000;\n border-radius: 0.5rem;\n font-size: inherit;\n z-index: 2;\n font-family: 'Montserrat',Helvetica,Arial,sans-serif;\n }\n\n .c19:focus {\n border: 1px solid #666;\n }\n\n .c18 {\n position: relative;\n font-size: 1.25rem;\n }\n\n .c15 {\n display: block;\n }\n\n .c15 input {\n border: 2px solid #E1E2E3;\n font-size: 1.5rem;\n font-weight: 800;\n -webkit-letter-spacing: -2px;\n -moz-letter-spacing: -2px;\n -ms-letter-spacing: -2px;\n letter-spacing: -2px;\n height: auto;\n }\n\n .c20 {\n display: block;\n }\n\n .c20 input {\n border: 2px solid #E1E2E3;\n font-size: 1.5rem;\n font-weight: 800;\n -webkit-letter-spacing: -2px;\n -moz-letter-spacing: -2px;\n -ms-letter-spacing: -2px;\n letter-spacing: -2px;\n height: auto;\n border-color: #E52630;\n background-color: #E52630;\n color: #FFFFFF;\n }\n\n .c0 {\n background-color: #FEE3CC;\n position: relative;\n display: -webkit-box;\n display: -webkit-flex;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: center;\n -webkit-justify-content: center;\n -ms-flex-pack: center;\n justify-content: center;\n min-height: 100vh;\n }\n\n .c2 {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n height: auto;\n }\n\n .c2:before {\n color: #FEE3CC;\n content: '';\n position: absolute;\n width: 100%;\n height: 100%;\n box-shadow: inset 0px 4rem 2rem -2rem;\n }\n\n .c4 {\n position: relative;\n max-width: 320px;\n text-align: center;\n margin-bottom: 50%;\n }\n\n .c5 {\n padding: 2rem 1rem 0;\n margin-bottom: 2rem;\n }\n\n .c8 {\n background-color: #FFFFFF;\n box-shadow: 0px 1rem 4rem rgba(0,0,0,0.3);\n height: 450px;\n }\n\n .c9 {\n padding: 1rem;\n }\n\n .c9 h3 {\n margin-top: 1rem;\n }\n\n .c9 input {\n max-width: 100%;\n margin: 0;\n }\n\n .c10 {\n padding: 0;\n margin: 0;\n border: none;\n }\n\n .c10 >:not(:last-child):not(legend) {\n margin-bottom: 2rem;\n }\n\n .c11 {\n margin: 0;\n padding: 0;\n }\n\n .c13 {\n display: -webkit-box;\n display: -webkit-flex;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: justify;\n -webkit-justify-content: space-between;\n -ms-flex-pack: justify;\n justify-content: space-between;\n }\n\n .c13 label {\n -webkit-flex: 0 0 30%;\n -ms-flex: 0 0 30%;\n flex: 0 0 30%;\n }\n\n .c13 label input {\n cursor: pointer;\n padding: 1rem;\n }\n\n .c13 label:hover input {\n border-color: #E52630;\n }\n\n .c21 {\n display: -webkit-box;\n display: -webkit-flex;\n display: -ms-flexbox;\n display: flex;\n -webkit-align-items: center;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n }\n\n .c23 {\n margin-right: auto;\n }\n\n .c24 {\n position: relative;\n -webkit-flex: 0 0 50%;\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n font-weight: 400;\n display: block;\n }\n\n .c24 span {\n position: absolute;\n padding: 0px 15px;\n font-size: 20px;\n top: 50%;\n -webkit-transform: translateY(-50%);\n -ms-transform: translateY(-50%);\n transform: translateY(-50%);\n left: 0px;\n font-weight: 500;\n }\n\n .c24 input {\n border: 2px solid #E1E2E3;\n background: transparent;\n padding: 0.5rem 1rem 0.5rem 2rem;\n }\n\n .c24 input:focus {\n border: 2px solid #E52630;\n }\n\n .c26 {\n line-height: 1.5;\n }\n\n .c25 {\n width: 100%;\n color: #FFFFFF;\n font-size: 1rem;\n font-weight: bold;\n cursor: pointer;\n padding: 1rem 0.5rem;\n background: #E52630;\n border: none;\n border-radius: 100px;\n }\n\n .c25:active,\n .c25:focus,\n .c25:hover {\n background-color: #961D35;\n }\n\n @media (min-width:740px) {\n .c19 {\n max-width: 290px;\n }\n }\n\n @media (min-width:1024px) {\n .c0 {\n -webkit-align-items: center;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: inherit;\n -webkit-justify-content: inherit;\n -ms-flex-pack: inherit;\n justify-content: inherit;\n min-height: 750px;\n height: 100vh;\n max-height: 900px;\n -webkit-flex-direction: row;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n }\n\n @media (min-width:1024px) {\n .c2 {\n height: 100%;\n }\n\n .c2:before {\n content: none;\n }\n }\n\n @media (min-width:1024px) {\n .c4 {\n margin: 0 8rem;\n max-width: 420px;\n }\n }\n\n @media (min-width:1024px) {\n .c8 {\n height: 430px;\n }\n }\n\n @media (min-width:1024px) {\n .c24 {\n -webkit-flex: 0 0 60%;\n -ms-flex: 0 0 60%;\n flex: 0 0 60%;\n }\n }\n\n @media (min-width:1024px) {\n .c25 {\n width: auto;\n padding: 1rem 2rem;\n margin: 0 auto 2rem;\n }\n }\n\n <div\n className=\"c0\"\n id=\"mship-1\"\n >\n <div\n className=\"c1 c2\"\n height=\"100%\"\n width=\"100%\"\n >\n <img\n alt=\"Background image\"\n className=\"c3 lazyload\"\n data-src={null}\n height=\"100%\"\n width=\"100%\"\n />\n </div>\n <div\n className=\"c4\"\n >\n <div\n className=\"c5\"\n >\n <h2\n className=\"c6\"\n color=\"inherit\"\n size=\"l\"\n >\n Help someone like Jordan see a better tomorrow\n </h2>\n <p\n className=\"c7\"\n color=\"inherit\"\n size=\"s\"\n >\n Jordan was close to suicide - which is now the biggest killer of men under 45 in the UK. Join now and help save lives.\n </p>\n </div>\n <div\n className=\"c8\"\n >\n <form\n className=\"c9\"\n onSubmit={[Function]}\n >\n <fieldset\n className=\"c10\"\n >\n <legend\n className=\"c11\"\n >\n <h3\n className=\"c12\"\n color=\"inherit\"\n size=\"s\"\n >\n Choose your monthly donation\n </h3>\n </legend>\n <div\n className=\"c13\"\n >\n <label\n className=\"c14 c15\"\n htmlFor=\"mship-1--moneyBuy-box1\"\n >\n <span\n className=\"c16 c17\"\n color=\"inherit\"\n dangerouslySetInnerHTML={\n Object {\n \"__html\": \"\",\n }\n }\n size=\"s\"\n />\n <div\n className=\"c18\"\n >\n \n <input\n aria-describedby=\"mship-1--moneyBuy-box1\"\n aria-label=\"\xA35\"\n className=\"c19\"\n id=\"mship-1--moneyBuy-box1\"\n name=\"mship-1--moneyBuy1\"\n onClick={[Function]}\n placeholder=\"\"\n required={false}\n type=\"button\"\n value=\"\xA3 5\"\n />\n </div>\n \n </label>\n <label\n className=\"c14 c20\"\n htmlFor=\"mship-1--moneyBuy-box2\"\n >\n <span\n className=\"c16 c17\"\n color=\"inherit\"\n dangerouslySetInnerHTML={\n Object {\n \"__html\": \"\",\n }\n }\n size=\"s\"\n />\n <div\n className=\"c18\"\n >\n \n <input\n aria-describedby=\"mship-1--moneyBuy-box2\"\n aria-label=\"\xA310\"\n className=\"c19\"\n id=\"mship-1--moneyBuy-box2\"\n name=\"mship-1--moneyBuy2\"\n onClick={[Function]}\n placeholder=\"\"\n required={false}\n type=\"button\"\n value=\"\xA3 10\"\n />\n </div>\n \n </label>\n <label\n className=\"c14 c15\"\n htmlFor=\"mship-1--moneyBuy-box3\"\n >\n <span\n className=\"c16 c17\"\n color=\"inherit\"\n dangerouslySetInnerHTML={\n Object {\n \"__html\": \"\",\n }\n }\n size=\"s\"\n />\n <div\n className=\"c18\"\n >\n \n <input\n aria-describedby=\"mship-1--moneyBuy-box3\"\n aria-label=\"\xA320\"\n className=\"c19\"\n id=\"mship-1--moneyBuy-box3\"\n name=\"mship-1--moneyBuy3\"\n onClick={[Function]}\n placeholder=\"\"\n required={false}\n type=\"button\"\n value=\"\xA3 20\"\n />\n </div>\n \n </label>\n </div>\n <div\n className=\"c21\"\n >\n <span\n className=\"c22 c23\"\n color=\"inherit\"\n size=\"s\"\n >\n Other amount\n </span>\n <label\n className=\"c14 c24\"\n htmlFor=\"mship-1--MoneyBuy-userInput\"\n >\n <span\n className=\"c16 c17\"\n color=\"inherit\"\n dangerouslySetInnerHTML={\n Object {\n \"__html\": \"\xA3\",\n }\n }\n size=\"s\"\n />\n <div\n className=\"c18\"\n >\n \n <input\n aria-describedby=\"mship-1--MoneyBuy-userInput\"\n aria-label=\"Input a different amount\"\n className=\"c19\"\n id=\"mship-1--MoneyBuy-userInput\"\n max=\"20000\"\n min=\"1\"\n name=\"membership_amount\"\n onChange={[Function]}\n onClick={[Function]}\n onKeyPress={[Function]}\n pattern=\"[^[0-9]+([,.][0-9]+)?$]\"\n placeholder=\"0.00\"\n required={false}\n step=\"0.01\"\n type=\"number\"\n value=\"\"\n />\n </div>\n \n </label>\n </div>\n <input\n className=\"c25\"\n type=\"submit\"\n value=\"Donate\"\n />\n <p\n className=\"c26\"\n />\n </fieldset>\n </form>\n </div>\n </div>\n </div>\n ");
|
|
33
33
|
});
|
package/dist/index.js
CHANGED
|
@@ -269,12 +269,6 @@ Object.defineProperty(exports, "VideoBanner", {
|
|
|
269
269
|
return _VideoBanner.default;
|
|
270
270
|
}
|
|
271
271
|
});
|
|
272
|
-
Object.defineProperty(exports, "HeaderEsuWithIcon", {
|
|
273
|
-
enumerable: true,
|
|
274
|
-
get: function get() {
|
|
275
|
-
return _HeaderEsuWithIcon.default;
|
|
276
|
-
}
|
|
277
|
-
});
|
|
278
272
|
Object.defineProperty(exports, "Icon", {
|
|
279
273
|
enumerable: true,
|
|
280
274
|
get: function get() {
|
|
@@ -350,7 +344,19 @@ Object.defineProperty(exports, "SimpleSchoolLookup", {
|
|
|
350
344
|
Object.defineProperty(exports, "EmailSignUp", {
|
|
351
345
|
enumerable: true,
|
|
352
346
|
get: function get() {
|
|
353
|
-
return _EmailSignUp.
|
|
347
|
+
return _EmailSignUp.EmailSignUp;
|
|
348
|
+
}
|
|
349
|
+
});
|
|
350
|
+
Object.defineProperty(exports, "buildEsuValidationSchema", {
|
|
351
|
+
enumerable: true,
|
|
352
|
+
get: function get() {
|
|
353
|
+
return _EmailSignUp.buildEsuValidationSchema;
|
|
354
|
+
}
|
|
355
|
+
});
|
|
356
|
+
Object.defineProperty(exports, "ESU_FIELDS", {
|
|
357
|
+
enumerable: true,
|
|
358
|
+
get: function get() {
|
|
359
|
+
return _EmailSignUp.ESU_FIELDS;
|
|
354
360
|
}
|
|
355
361
|
});
|
|
356
362
|
Object.defineProperty(exports, "CookieBanner", {
|
|
@@ -468,8 +474,6 @@ var _ShareButton = _interopRequireDefault(require("./components/Molecules/ShareB
|
|
|
468
474
|
|
|
469
475
|
var _VideoBanner = _interopRequireDefault(require("./components/Molecules/VideoBanner/VideoBanner"));
|
|
470
476
|
|
|
471
|
-
var _HeaderEsuWithIcon = _interopRequireDefault(require("./components/Molecules/HeaderEsuWithIcon/HeaderEsuWithIcon"));
|
|
472
|
-
|
|
473
477
|
var _Icon = _interopRequireDefault(require("./components/Atoms/SocialIcons/Icon/Icon"));
|
|
474
478
|
|
|
475
479
|
var _Typeahead = _interopRequireDefault(require("./components/Molecules/Typeahead/Typeahead"));
|
|
@@ -494,7 +498,7 @@ var _Lookup = _interopRequireDefault(require("./components/Molecules/Lookup/Look
|
|
|
494
498
|
|
|
495
499
|
var _SimpleSchoolLookup = _interopRequireDefault(require("./components/Molecules/SimpleSchoolLookup/SimpleSchoolLookup"));
|
|
496
500
|
|
|
497
|
-
var _EmailSignUp =
|
|
501
|
+
var _EmailSignUp = require("./components/Organisms/EmailSignUp/_EmailSignUp");
|
|
498
502
|
|
|
499
503
|
var _CookieBanner = _interopRequireDefault(require("./components/Organisms/CookieBanner/CookieBanner"));
|
|
500
504
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@comicrelief/component-library",
|
|
3
3
|
"author": "Comic Relief Engineering Team",
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "7.0.1",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"license": "ISC",
|
|
7
7
|
"jest": {
|
|
@@ -30,6 +30,7 @@
|
|
|
30
30
|
"moment": "^2.29.1",
|
|
31
31
|
"prop-types": "^15.7.2",
|
|
32
32
|
"react": "^17.0.2",
|
|
33
|
+
"react-canvas-confetti": "^1.3.0",
|
|
33
34
|
"react-currency-format": "^1.0.0",
|
|
34
35
|
"react-dom": "^17.0.2",
|
|
35
36
|
"react-hook-form": "^6.3.0",
|
|
@@ -41,7 +41,7 @@ const desktopPictures = require('../../../styleguide/data/data').defaultData;
|
|
|
41
41
|
mobileImageLow={mobilePictures.imageLow}
|
|
42
42
|
mobileImages={mobilePictures.images}
|
|
43
43
|
data={data}
|
|
44
|
-
mbshipID="mship-
|
|
44
|
+
mbshipID="mship-2"
|
|
45
45
|
donateLink="https://donation.comicrelief.com/"
|
|
46
46
|
clientID="donate"
|
|
47
47
|
cartID="default-comicrelief"
|
|
@@ -66,7 +66,7 @@ const desktopPictures = require('../../../styleguide/data/data').defaultData;
|
|
|
66
66
|
mobileImageLow={mobilePictures.imageLow}
|
|
67
67
|
mobileImages={mobilePictures.images}
|
|
68
68
|
data={data}
|
|
69
|
-
mbshipID="mship-
|
|
69
|
+
mbshipID="mship-3"
|
|
70
70
|
donateLink="https://donation.comicrelief.com/"
|
|
71
71
|
clientID="donate"
|
|
72
72
|
cartID="default-comicrelief"
|
|
@@ -91,7 +91,7 @@ const desktopPictures = require('../../../styleguide/data/data').defaultData;
|
|
|
91
91
|
mobileImageLow={mobilePictures.imageLow}
|
|
92
92
|
mobileImages={mobilePictures.images}
|
|
93
93
|
data={data}
|
|
94
|
-
mbshipID="mship-
|
|
94
|
+
mbshipID="mship-4"
|
|
95
95
|
donateLink="https://donation.comicrelief.com/"
|
|
96
96
|
clientID="donate"
|
|
97
97
|
cartID="default-comicrelief"
|
|
@@ -118,7 +118,7 @@ const desktopPictures = require('../../../styleguide/data/data').defaultData;
|
|
|
118
118
|
mobileImageLow={mobilePictures.imageLow}
|
|
119
119
|
mobileImages={mobilePictures.images}
|
|
120
120
|
data={data}
|
|
121
|
-
mbshipID="mship-
|
|
121
|
+
mbshipID="mship-5"
|
|
122
122
|
donateLink="https://donation.comicrelief.com/"
|
|
123
123
|
clientID="donate"
|
|
124
124
|
cartID="default-comicrelief"
|
|
@@ -143,7 +143,7 @@ const desktopPictures = require('../../../styleguide/data/data').defaultData;
|
|
|
143
143
|
mobileImageLow={mobilePictures.imageLow}
|
|
144
144
|
mobileImages={mobilePictures.images}
|
|
145
145
|
data={data}
|
|
146
|
-
mbshipID="mship-
|
|
146
|
+
mbshipID="mship-6"
|
|
147
147
|
donateLink="https://donation.comicrelief.com/"
|
|
148
148
|
clientID="donate"
|
|
149
149
|
cartID="default-comicrelief"
|
|
@@ -168,7 +168,7 @@ const desktopPictures = require('../../../styleguide/data/data').defaultData;
|
|
|
168
168
|
mobileImageLow={mobilePictures.imageLow}
|
|
169
169
|
mobileImages={mobilePictures.images}
|
|
170
170
|
data={data}
|
|
171
|
-
mbshipID="mship-
|
|
171
|
+
mbshipID="mship-7"
|
|
172
172
|
donateLink="https://donation.comicrelief.com/"
|
|
173
173
|
clientID="donate"
|
|
174
174
|
cartID="default-comicrelief"
|
|
@@ -193,7 +193,7 @@ const desktopPictures = require('../../../styleguide/data/data').defaultData;
|
|
|
193
193
|
mobileImageLow={mobilePictures.imageLow}
|
|
194
194
|
mobileImages={mobilePictures.images}
|
|
195
195
|
data={data}
|
|
196
|
-
mbshipID="mship-
|
|
196
|
+
mbshipID="mship-8"
|
|
197
197
|
donateLink="https://donation.comicrelief.com/"
|
|
198
198
|
clientID="donate"
|
|
199
199
|
cartID="default-comicrelief"
|
|
@@ -213,7 +213,7 @@ import data from './dev-data/data-single';
|
|
|
213
213
|
backgroundColor="blue_dark"
|
|
214
214
|
formAlignRight={false}
|
|
215
215
|
data={data}
|
|
216
|
-
mbshipID="mship-
|
|
216
|
+
mbshipID="mship-9"
|
|
217
217
|
donateLink="https://donation.comicrelief.com/"
|
|
218
218
|
clientID="donate"
|
|
219
219
|
cartID="default-comicrelief"
|
|
@@ -241,7 +241,7 @@ const desktopPictures = require('../../../styleguide/data/data').defaultData;
|
|
|
241
241
|
mobileImageLow={mobilePictures.imageLow}
|
|
242
242
|
mobileImages={mobilePictures.images}
|
|
243
243
|
data={data}
|
|
244
|
-
mbshipID="mship-
|
|
244
|
+
mbshipID="mship-10"
|
|
245
245
|
donateLink="https://donation.comicrelief.com/"
|
|
246
246
|
clientID="donate"
|
|
247
247
|
cartID="default-comicrelief"
|
|
@@ -1,91 +1,19 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import styled from 'styled-components';
|
|
3
|
-
import PropTypes from 'prop-types';
|
|
4
|
-
|
|
5
|
-
import { media } from '../../../../theme/shared/size';
|
|
6
|
-
import spacing from '../../../../theme/shared/spacing';
|
|
7
|
-
import zIndex from '../../../../theme/shared/zIndex';
|
|
8
|
-
import hideVisually from '../../../../theme/shared/hideVisually';
|
|
9
|
-
|
|
10
|
-
const Switch = styled.span`
|
|
11
|
-
width: 50%;
|
|
12
|
-
height: 48px;
|
|
13
|
-
border-radius: 2rem;
|
|
14
|
-
${zIndex('low')};
|
|
15
|
-
display: block;
|
|
16
|
-
position: absolute;
|
|
17
|
-
transition: left 0.15s ease-out;
|
|
18
|
-
background-color: ${({ theme }) => theme.color('blue')};
|
|
19
|
-
left: 2px;
|
|
20
|
-
box-shadow: 0px 0px 16px rgba(0, 0, 0, 0.3);
|
|
21
|
-
`;
|
|
22
2
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
const MoneyBox = styled.div`
|
|
29
|
-
width: 100%;
|
|
30
|
-
padding: 2px;
|
|
31
|
-
position: relative;
|
|
32
|
-
display: flex;
|
|
33
|
-
flex-direction: row;
|
|
34
|
-
margin: ${spacing('md')} 0;
|
|
35
|
-
border-radius: 2rem;
|
|
36
|
-
background: ${({ theme }) => theme.color('blue_light')};
|
|
37
|
-
${media('small')} {
|
|
38
|
-
width: 450px;
|
|
39
|
-
margin: 0 auto;
|
|
40
|
-
}
|
|
41
|
-
#give-monthly:checked ~ ${Switch} {
|
|
42
|
-
left: calc(50% - 2px);
|
|
43
|
-
}
|
|
44
|
-
input {
|
|
45
|
-
${hideVisually}
|
|
46
|
-
}
|
|
47
|
-
input:focus:not(:checked) + label {
|
|
48
|
-
box-shadow: inset 0 0 0 4px ${({ theme }) => theme.color('blue')};
|
|
49
|
-
}
|
|
50
|
-
`;
|
|
51
|
-
|
|
52
|
-
const Label = styled.label`
|
|
53
|
-
font-size: ${({ theme }) => theme.fontSize('s')};
|
|
54
|
-
font-family: ${({ theme }) => theme.fontFamilies('Montserrat')};
|
|
55
|
-
font-weight: bold;
|
|
56
|
-
min-height: 48px;
|
|
57
|
-
align-items: center;
|
|
58
|
-
justify-content: center;
|
|
59
|
-
display: flex;
|
|
60
|
-
flex-basis: 50%;
|
|
61
|
-
border: none;
|
|
62
|
-
transition: color 0.15s ease-out;
|
|
63
|
-
${zIndex('medium')};
|
|
64
|
-
cursor: ${({ active }) => (active === true ? 'default' : 'pointer')};
|
|
65
|
-
&:active:focus {
|
|
66
|
-
box-shadow: none;
|
|
67
|
-
}
|
|
68
|
-
&:focus {
|
|
69
|
-
border: none;
|
|
70
|
-
outline: none;
|
|
71
|
-
box-shadow: inset 0 0 0 4px ${({ theme }) => theme.color('blue')};
|
|
72
|
-
}
|
|
73
|
-
&[for='give-once'] {
|
|
74
|
-
border-radius: 2rem;
|
|
75
|
-
color: ${({ active, theme }) => (active === true ? theme.color('white') : theme.color('black'))};
|
|
76
|
-
}
|
|
77
|
-
&[for='give-monthly'] {
|
|
78
|
-
border-radius: 2rem;
|
|
79
|
-
color: ${({ active, theme }) => (active === true ? theme.color('white') : theme.color('black'))};
|
|
80
|
-
}
|
|
81
|
-
`;
|
|
3
|
+
import PropTypes from 'prop-types';
|
|
4
|
+
import {
|
|
5
|
+
Switch, Wrapper, MoneyBox, Label
|
|
6
|
+
} from './GivingSelector.style';
|
|
82
7
|
|
|
83
|
-
const GivingSelector = ({
|
|
8
|
+
const GivingSelector = ({
|
|
9
|
+
givingType, changeGivingType, setPopOpen, mbshipID
|
|
10
|
+
}) => (
|
|
84
11
|
<Wrapper>
|
|
85
12
|
<MoneyBox>
|
|
86
13
|
<input
|
|
14
|
+
className="give-once"
|
|
87
15
|
aria-label="Single"
|
|
88
|
-
id=
|
|
16
|
+
id={`give-once--${mbshipID}`}
|
|
89
17
|
value="Single"
|
|
90
18
|
type="radio"
|
|
91
19
|
label=""
|
|
@@ -96,12 +24,13 @@ const GivingSelector = ({ givingType, changeGivingType, setPopOpen }) => (
|
|
|
96
24
|
setPopOpen(true);
|
|
97
25
|
}}
|
|
98
26
|
/>
|
|
99
|
-
<Label active={givingType === 'single'} htmlFor=
|
|
27
|
+
<Label active={givingType === 'single'} htmlFor={`give-once--${mbshipID}`}>
|
|
100
28
|
Single
|
|
101
29
|
</Label>
|
|
102
30
|
<input
|
|
31
|
+
className="give-monthly"
|
|
103
32
|
aria-label="Monthly"
|
|
104
|
-
id=
|
|
33
|
+
id={`give-monthly--${mbshipID}`}
|
|
105
34
|
value="Monthly"
|
|
106
35
|
type="radio"
|
|
107
36
|
label=""
|
|
@@ -112,7 +41,7 @@ const GivingSelector = ({ givingType, changeGivingType, setPopOpen }) => (
|
|
|
112
41
|
setPopOpen(false);
|
|
113
42
|
}}
|
|
114
43
|
/>
|
|
115
|
-
<Label active={givingType === 'monthly'} htmlFor=
|
|
44
|
+
<Label active={givingType === 'monthly'} htmlFor={`give-monthly--${mbshipID}`}>
|
|
116
45
|
Monthly
|
|
117
46
|
</Label>
|
|
118
47
|
<Switch />
|
|
@@ -123,7 +52,8 @@ const GivingSelector = ({ givingType, changeGivingType, setPopOpen }) => (
|
|
|
123
52
|
GivingSelector.propTypes = {
|
|
124
53
|
givingType: PropTypes.string.isRequired,
|
|
125
54
|
changeGivingType: PropTypes.func.isRequired,
|
|
126
|
-
setPopOpen: PropTypes.func.isRequired
|
|
55
|
+
setPopOpen: PropTypes.func.isRequired,
|
|
56
|
+
mbshipID: PropTypes.string.isRequired
|
|
127
57
|
};
|
|
128
58
|
|
|
129
59
|
export default GivingSelector;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import styled from 'styled-components';
|
|
2
|
+
|
|
3
|
+
import { media } from '../../../../theme/shared/size';
|
|
4
|
+
import spacing from '../../../../theme/shared/spacing';
|
|
5
|
+
import zIndex from '../../../../theme/shared/zIndex';
|
|
6
|
+
import hideVisually from '../../../../theme/shared/hideVisually';
|
|
7
|
+
|
|
8
|
+
const Switch = styled.span`
|
|
9
|
+
width: 50%;
|
|
10
|
+
height: 48px;
|
|
11
|
+
border-radius: 2rem;
|
|
12
|
+
${zIndex('low')};
|
|
13
|
+
display: block;
|
|
14
|
+
position: absolute;
|
|
15
|
+
transition: left 0.15s ease-out;
|
|
16
|
+
background-color: ${({ theme }) => theme.color('blue')};
|
|
17
|
+
left: 2px;
|
|
18
|
+
box-shadow: 0px 0px 16px rgba(0, 0, 0, 0.3);
|
|
19
|
+
`;
|
|
20
|
+
|
|
21
|
+
const Wrapper = styled.div`
|
|
22
|
+
display: flex;
|
|
23
|
+
margin: ${spacing('md')} 0;
|
|
24
|
+
`;
|
|
25
|
+
|
|
26
|
+
const MoneyBox = styled.div`
|
|
27
|
+
width: 100%;
|
|
28
|
+
padding: 2px;
|
|
29
|
+
position: relative;
|
|
30
|
+
display: flex;
|
|
31
|
+
flex-direction: row;
|
|
32
|
+
margin: ${spacing('md')} 0;
|
|
33
|
+
border-radius: 2rem;
|
|
34
|
+
background: ${({ theme }) => theme.color('blue_light')};
|
|
35
|
+
${media('small')} {
|
|
36
|
+
width: 450px;
|
|
37
|
+
margin: 0 auto;
|
|
38
|
+
}
|
|
39
|
+
.give-monthly:checked ~ ${Switch} {
|
|
40
|
+
left: calc(50% - 2px);
|
|
41
|
+
}
|
|
42
|
+
input {
|
|
43
|
+
${hideVisually}
|
|
44
|
+
}
|
|
45
|
+
input:focus:not(:checked) + label {
|
|
46
|
+
box-shadow: inset 0 0 0 4px ${({ theme }) => theme.color('blue')};
|
|
47
|
+
}
|
|
48
|
+
`;
|
|
49
|
+
|
|
50
|
+
const Label = styled.label`
|
|
51
|
+
font-size: ${({ theme }) => theme.fontSize('s')};
|
|
52
|
+
font-family: ${({ theme }) => theme.fontFamilies('Montserrat')};
|
|
53
|
+
font-weight: bold;
|
|
54
|
+
min-height: 48px;
|
|
55
|
+
align-items: center;
|
|
56
|
+
justify-content: center;
|
|
57
|
+
display: flex;
|
|
58
|
+
flex-basis: 50%;
|
|
59
|
+
border: none;
|
|
60
|
+
transition: color 0.15s ease-out;
|
|
61
|
+
${zIndex('medium')};
|
|
62
|
+
cursor: ${({ active }) => (active === true ? 'default' : 'pointer')};
|
|
63
|
+
border-radius: 2rem;
|
|
64
|
+
color: ${({ active, theme }) => (active === true ? theme.color('white') : theme.color('black'))};
|
|
65
|
+
|
|
66
|
+
&:active:focus {
|
|
67
|
+
box-shadow: none;
|
|
68
|
+
}
|
|
69
|
+
&:focus {
|
|
70
|
+
border: none;
|
|
71
|
+
outline: none;
|
|
72
|
+
box-shadow: inset 0 0 0 4px ${({ theme }) => theme.color('blue')};
|
|
73
|
+
}
|
|
74
|
+
`;
|
|
75
|
+
|
|
76
|
+
export {
|
|
77
|
+
Switch, Wrapper, MoneyBox, Label
|
|
78
|
+
};
|
|
@@ -367,7 +367,7 @@ exports[`Monthly donation renders correctly 1`] = `
|
|
|
367
367
|
background: #BECCF9;
|
|
368
368
|
}
|
|
369
369
|
|
|
370
|
-
.c8
|
|
370
|
+
.c8 .give-monthly:checked ~ .c11 {
|
|
371
371
|
left: calc(50% - 2px);
|
|
372
372
|
}
|
|
373
373
|
|
|
@@ -415,6 +415,8 @@ exports[`Monthly donation renders correctly 1`] = `
|
|
|
415
415
|
transition: color 0.15s ease-out;
|
|
416
416
|
z-index: 2;
|
|
417
417
|
cursor: default;
|
|
418
|
+
border-radius: 2rem;
|
|
419
|
+
color: #FFFFFF;
|
|
418
420
|
}
|
|
419
421
|
|
|
420
422
|
.c9:active:focus {
|
|
@@ -427,16 +429,6 @@ exports[`Monthly donation renders correctly 1`] = `
|
|
|
427
429
|
box-shadow: inset 0 0 0 4px #0565D1;
|
|
428
430
|
}
|
|
429
431
|
|
|
430
|
-
.c9[for='give-once'] {
|
|
431
|
-
border-radius: 2rem;
|
|
432
|
-
color: #FFFFFF;
|
|
433
|
-
}
|
|
434
|
-
|
|
435
|
-
.c9[for='give-monthly'] {
|
|
436
|
-
border-radius: 2rem;
|
|
437
|
-
color: #FFFFFF;
|
|
438
|
-
}
|
|
439
|
-
|
|
440
432
|
.c10 {
|
|
441
433
|
font-size: 1rem;
|
|
442
434
|
font-family: 'Montserrat',Helvetica,Arial,sans-serif;
|
|
@@ -462,6 +454,8 @@ exports[`Monthly donation renders correctly 1`] = `
|
|
|
462
454
|
transition: color 0.15s ease-out;
|
|
463
455
|
z-index: 2;
|
|
464
456
|
cursor: pointer;
|
|
457
|
+
border-radius: 2rem;
|
|
458
|
+
color: #000000;
|
|
465
459
|
}
|
|
466
460
|
|
|
467
461
|
.c10:active:focus {
|
|
@@ -474,16 +468,6 @@ exports[`Monthly donation renders correctly 1`] = `
|
|
|
474
468
|
box-shadow: inset 0 0 0 4px #0565D1;
|
|
475
469
|
}
|
|
476
470
|
|
|
477
|
-
.c10[for='give-once'] {
|
|
478
|
-
border-radius: 2rem;
|
|
479
|
-
color: #000000;
|
|
480
|
-
}
|
|
481
|
-
|
|
482
|
-
.c10[for='give-monthly'] {
|
|
483
|
-
border-radius: 2rem;
|
|
484
|
-
color: #000000;
|
|
485
|
-
}
|
|
486
|
-
|
|
487
471
|
@media (min-width:740px) {
|
|
488
472
|
.c5 {
|
|
489
473
|
font-size: 1.25rem;
|
|
@@ -644,8 +628,9 @@ exports[`Monthly donation renders correctly 1`] = `
|
|
|
644
628
|
<input
|
|
645
629
|
aria-label="Single"
|
|
646
630
|
checked={true}
|
|
631
|
+
className="give-once"
|
|
647
632
|
errormsg=""
|
|
648
|
-
id="give-once"
|
|
633
|
+
id="give-once--mship-1"
|
|
649
634
|
label=""
|
|
650
635
|
onClick={[Function]}
|
|
651
636
|
type="radio"
|
|
@@ -653,15 +638,16 @@ exports[`Monthly donation renders correctly 1`] = `
|
|
|
653
638
|
/>
|
|
654
639
|
<label
|
|
655
640
|
className="c9"
|
|
656
|
-
htmlFor="give-once"
|
|
641
|
+
htmlFor="give-once--mship-1"
|
|
657
642
|
>
|
|
658
643
|
Single
|
|
659
644
|
</label>
|
|
660
645
|
<input
|
|
661
646
|
aria-label="Monthly"
|
|
662
647
|
checked={false}
|
|
648
|
+
className="give-monthly"
|
|
663
649
|
errormsg=""
|
|
664
|
-
id="give-monthly"
|
|
650
|
+
id="give-monthly--mship-1"
|
|
665
651
|
label=""
|
|
666
652
|
onClick={[Function]}
|
|
667
653
|
type="radio"
|
|
@@ -669,7 +655,7 @@ exports[`Monthly donation renders correctly 1`] = `
|
|
|
669
655
|
/>
|
|
670
656
|
<label
|
|
671
657
|
className="c10"
|
|
672
|
-
htmlFor="give-monthly"
|
|
658
|
+
htmlFor="give-monthly--mship-1"
|
|
673
659
|
>
|
|
674
660
|
Monthly
|
|
675
661
|
</label>
|