@comicrelief/component-library 7.24.0 → 7.24.2
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/.github/workflows/main.yml +22 -24
- package/dist/components/Atoms/Button/Button.js +21 -15
- package/dist/components/Atoms/Button/Button.test.js +3 -3
- package/dist/components/Atoms/ButtonWithStates/ButtonWithStates.js +19 -22
- package/dist/components/Atoms/Checkbox/Checkbox.js +42 -26
- package/dist/components/Atoms/Checkbox/Checkbox.test.js +3 -3
- package/dist/components/Atoms/Confetti/Confetti.js +20 -23
- package/dist/components/Atoms/Confetti/_TriggerConfetti.js +4 -11
- package/dist/components/Atoms/ErrorText/ErrorText.js +15 -11
- package/dist/components/Atoms/ErrorText/ErrorText.test.js +3 -3
- package/dist/components/Atoms/Icons/Arrow.js +16 -15
- package/dist/components/Atoms/Icons/AtSign.js +9 -9
- package/dist/components/Atoms/Icons/Chevron.js +16 -15
- package/dist/components/Atoms/Icons/Curve.js +16 -18
- package/dist/components/Atoms/Icons/Download.js +8 -8
- package/dist/components/Atoms/Icons/External.js +8 -8
- package/dist/components/Atoms/Icons/Favourite.js +8 -8
- package/dist/components/Atoms/Icons/Internal.js +8 -8
- package/dist/components/Atoms/Icons/index.js +8 -8
- package/dist/components/Atoms/Input/Input.js +38 -33
- package/dist/components/Atoms/Input/input.test.js +3 -3
- package/dist/components/Atoms/Label/Label.js +28 -23
- package/dist/components/Atoms/Link/Link.js +24 -29
- package/dist/components/Atoms/Link/Link.style.js +51 -40
- package/dist/components/Atoms/Link/Link.test.js +9 -9
- package/dist/components/Atoms/Logo/Logo.js +16 -18
- package/dist/components/Atoms/Logo/Logo.test.js +3 -3
- package/dist/components/Atoms/Pagination/Item/Item.js +7 -7
- package/dist/components/Atoms/Pagination/Item/Item.style.js +35 -28
- package/dist/components/Atoms/Pagination/List/List.js +21 -19
- package/dist/components/Atoms/Pagination/Pagination.js +41 -49
- package/dist/components/Atoms/Pagination/Pagination.test.js +54 -108
- package/dist/components/Atoms/Pagination/Utils/PaginationCalculator.js +15 -15
- package/dist/components/Atoms/Picture/Picture.js +34 -44
- package/dist/components/Atoms/Picture/Picture.test.js +5 -5
- package/dist/components/Atoms/RadioButton/RadioButton.js +35 -23
- package/dist/components/Atoms/RadioButton/RadioButton.test.js +3 -3
- package/dist/components/Atoms/RichText/RichText.js +9 -11
- package/dist/components/Atoms/RichText/RichText.test.js +4 -4
- package/dist/components/Atoms/Select/Select.js +56 -49
- package/dist/components/Atoms/Select/Select.test.js +3 -3
- package/dist/components/Atoms/SocialIcons/Icon/Icon.js +13 -13
- package/dist/components/Atoms/SocialIcons/SocialIcons.js +25 -23
- package/dist/components/Atoms/SocialIcons/SocialIcons.test.js +7 -7
- package/dist/components/Atoms/SocialIcons/Utils/Icons.js +3 -3
- package/dist/components/Atoms/SocialIcons/Utils/Links.js +19 -20
- package/dist/components/Atoms/SocialIcons/assets/X-white-Subtract.svg +3 -0
- package/dist/components/Atoms/Text/Text.js +62 -41
- package/dist/components/Atoms/Text/Text.test.js +11 -11
- package/dist/components/Atoms/TextArea/TextArea.js +18 -17
- package/dist/components/Atoms/TextArea/TextArea.test.js +3 -3
- package/dist/components/Atoms/TextInputWithDropdown/TextInputWithDropdown.js +69 -86
- package/dist/components/Atoms/TextInputWithDropdown/TextInputWithDropdown.style.js +23 -15
- package/dist/components/Atoms/TextInputWithDropdown/TextInputWithDropdown.test.js +15 -19
- package/dist/components/Molecules/Accordion/Accordion.js +35 -32
- package/dist/components/Molecules/Accordion/Accordion.test.js +3 -3
- package/dist/components/Molecules/ArticleTeaser/ArticleTeaser.js +81 -52
- package/dist/components/Molecules/ArticleTeaser/ArticleTeaser.test.js +5 -5
- package/dist/components/Molecules/Banner/Banner.js +21 -13
- package/dist/components/Molecules/Banner/Banner.test.js +3 -3
- package/dist/components/Molecules/Box/Box.js +33 -27
- package/dist/components/Molecules/Box/Box.test.js +5 -5
- package/dist/components/Molecules/Card/Card.js +22 -22
- package/dist/components/Molecules/Card/Card.test.js +5 -5
- package/dist/components/Molecules/CardDs/CardDs.js +80 -55
- package/dist/components/Molecules/CardDs/CardDs.test.js +3 -3
- package/dist/components/Molecules/Chip/Chip.js +8 -6
- package/dist/components/Molecules/Chip/Chip.style.js +48 -28
- package/dist/components/Molecules/Chip/Chip.test.js +4 -6
- package/dist/components/Molecules/Countdown/Countdown.js +28 -36
- package/dist/components/Molecules/Countdown/Countdown.style.js +3 -3
- package/dist/components/Molecules/Descriptor/Descriptor.js +32 -26
- package/dist/components/Molecules/Descriptor/Descriptor.test.js +5 -5
- package/dist/components/Molecules/DoubleCopy/DoubleCopy.js +6 -4
- package/dist/components/Molecules/DoubleCopy/DoubleCopy.style.js +7 -5
- package/dist/components/Molecules/DoubleCopy/DoubleCopy.test.js +4 -4
- package/dist/components/Molecules/HeroBanner/HeroBanner.js +13 -17
- package/dist/components/Molecules/InfoBanner/InfoBanner.js +22 -18
- package/dist/components/Molecules/InfoBanner/InfoBanner.test.js +10 -10
- package/dist/components/Molecules/Logos/Logos.js +26 -14
- package/dist/components/Molecules/Logos/Logos.md +5 -0
- package/dist/components/Molecules/Lookup/Lookup.js +49 -84
- package/dist/components/Molecules/PartnerLink/PartnerLink.js +10 -11
- package/dist/components/Molecules/PartnerLink/PartnerLink.style.js +15 -9
- package/dist/components/Molecules/PartnerLink/PartnerLink.test.js +3 -3
- package/dist/components/Molecules/Promo/Promo.js +30 -36
- package/dist/components/Molecules/Promo/Promo.style.js +44 -31
- package/dist/components/Molecules/Promo/Promo.test.js +6 -6
- package/dist/components/Molecules/Promo/_ProgressRing.js +13 -19
- package/dist/components/Molecules/Promo/_PromoVideo.js +25 -34
- package/dist/components/Molecules/Promo/_PromoVideoButton.js +7 -7
- package/dist/components/Molecules/Promo/_PromoVideoButton.style.js +68 -41
- package/dist/components/Molecules/SchoolLookup/SchoolLookup.js +29 -52
- package/dist/components/Molecules/SchoolLookup/SchoolLookup.test.js +4 -4
- package/dist/components/Molecules/SearchInput/SearchInput.js +8 -8
- package/dist/components/Molecules/SearchInput/SearchInput.style.js +22 -14
- package/dist/components/Molecules/SearchInput/SearchInput.test.js +4 -4
- package/dist/components/Molecules/SearchResult/SearchResult.js +43 -29
- package/dist/components/Molecules/SearchResult/SearchResult.test.js +9 -9
- package/dist/components/Molecules/ShareButton/ShareButton.js +22 -26
- package/dist/components/Molecules/ShareButton/ShareButton.style.js +5 -5
- package/dist/components/Molecules/ShareButton/ShareButton.test.js +3 -3
- package/dist/components/Molecules/ShareButton/assets/ShareIcons.js +2 -2
- package/dist/components/Molecules/SimpleSchoolLookup/SimpleSchoolLookup.js +28 -55
- package/dist/components/Molecules/SingleMessage/SingleMessage.js +99 -123
- package/dist/components/Molecules/SingleMessage/SingleMessage.style.js +132 -81
- package/dist/components/Molecules/SingleMessage/SingleMessage.test.js +13 -13
- package/dist/components/Molecules/SingleMessageDS/SingleMessageDs.js +31 -40
- package/dist/components/Molecules/SingleMessageDS/SingleMessageDs.style.js +85 -49
- package/dist/components/Molecules/SingleMessageDS/SingleMessageDs.test.js +3 -3
- package/dist/components/Molecules/Typeahead/Typeahead.js +47 -84
- package/dist/components/Molecules/Typeahead/Typeahead.test.js +12 -35
- package/dist/components/Molecules/VideoBanner/VideoBanner.js +20 -25
- package/dist/components/Molecules/VideoBanner/VideoBanner.test.js +4 -4
- package/dist/components/Organisms/CookieBanner/CookieBanner.js +7 -5
- package/dist/components/Organisms/CookieBanner/CookieBanner.style.js +21 -13
- package/dist/components/Organisms/CookieBanner/CookieBanner.test.js +5 -5
- package/dist/components/Organisms/Donate/Donate.js +34 -37
- package/dist/components/Organisms/Donate/Donate.style.js +85 -53
- package/dist/components/Organisms/Donate/Donate.test.js +10 -10
- package/dist/components/Organisms/Donate/Form/Form.js +53 -78
- package/dist/components/Organisms/Donate/Form/PopUpComponent.js +25 -30
- package/dist/components/Organisms/Donate/GivingSelector/GivingSelector.js +11 -13
- package/dist/components/Organisms/Donate/GivingSelector/GivingSelector.style.js +38 -22
- package/dist/components/Organisms/Donate/MoneyBuy/MoneyBuy.js +47 -30
- package/dist/components/Organisms/EmailSignUp/EmailSignUp.style.js +63 -37
- package/dist/components/Organisms/EmailSignUp/EmailSignUp.test.js +12 -12
- package/dist/components/Organisms/EmailSignUp/EmailSignUpForm.js +23 -43
- package/dist/components/Organisms/EmailSignUp/_EmailSignUp.js +25 -21
- package/dist/components/Organisms/EmailSignUp/_EmailSignUpConfig.js +10 -9
- package/dist/components/Organisms/EmailSignUp/_TextInput.js +20 -18
- package/dist/components/Organisms/Footer/Footer.js +10 -10
- package/dist/components/Organisms/Footer/Footer.style.js +27 -21
- package/dist/components/Organisms/Footer/Footer.test.js +3 -3
- package/dist/components/Organisms/Footer/Nav/Nav.js +59 -70
- package/dist/components/Organisms/Footer/Nav/Nav.style.js +77 -43
- package/dist/components/Organisms/Header/Burger/BurgerMenu.js +6 -4
- package/dist/components/Organisms/Header/Burger/BurgerMenu.style.js +37 -21
- package/dist/components/Organisms/Header/Header.js +8 -8
- package/dist/components/Organisms/Header/Header.style.js +27 -19
- package/dist/components/Organisms/Header/Nav/Nav.js +39 -50
- package/dist/components/Organisms/Header/Nav/Nav.style.js +103 -57
- package/dist/components/Organisms/Header/header.test.js +1 -1
- package/dist/components/Organisms/ImpactSlider/ImpactMoneybuys.style.js +32 -29
- package/dist/components/Organisms/ImpactSlider/ImpactSlider.js +19 -22
- package/dist/components/Organisms/ImpactSlider/ImpactSlider.style.js +38 -24
- package/dist/components/Organisms/ImpactSlider/Slider.style.js +8 -14
- package/dist/components/Organisms/ImpactSlider/_ImpactMoneybuys.js +11 -11
- package/dist/components/Organisms/ImpactSlider/_Slider.js +9 -7
- package/dist/components/Organisms/ImpactSlider/_utils.js +11 -11
- package/dist/components/Organisms/MarketingPreferencesDS/MarketingPreferencesDS.style.js +61 -38
- package/dist/components/Organisms/MarketingPreferencesDS/MarketingPreferencesDSForm.js +24 -16
- package/dist/components/Organisms/MarketingPreferencesDS/_AssociatedFields.js +1 -1
- package/dist/components/Organisms/MarketingPreferencesDS/_CheckAnswer.js +20 -16
- package/dist/components/Organisms/MarketingPreferencesDS/_DefaultCopy.js +3 -3
- package/dist/components/Organisms/MarketingPreferencesDS/_MarketingPreferencesDS.js +46 -36
- package/dist/components/Organisms/MarketingPreferencesDS/_MarketingPrefsConfig.js +21 -34
- package/dist/components/Organisms/MarketingPreferencesDS/_TextInput.js +20 -18
- package/dist/components/Organisms/Membership/Form/Form.js +48 -81
- package/dist/components/Organisms/Membership/Membership.js +17 -15
- package/dist/components/Organisms/Membership/Membership.style.js +81 -51
- package/dist/components/Organisms/Membership/Membership.test.js +4 -4
- package/dist/components/Organisms/Membership/MoneyBox/MoneyBox.js +37 -26
- package/dist/hoc/shallowWithTheme.js +1 -1
- package/dist/index.js +67 -67
- package/dist/styleguide/CRLogo.js +2 -2
- package/dist/styleguide/StyleGuideRenderer.js +9 -7
- package/dist/styleguide/ThemeWrapper.js +5 -3
- package/dist/styleguide/data/data.js +3 -3
- package/dist/theme/crTheme/buttonColors.js +6 -5
- package/dist/theme/crTheme/colors.js +4 -3
- package/dist/theme/crTheme/fontSizes.js +4 -3
- package/dist/theme/crTheme/linkStyles.js +6 -5
- package/dist/theme/crTheme/theme.js +1 -1
- package/dist/theme/shared/breakpoint.js +4 -3
- package/dist/theme/shared/fontFamilies.js +5 -4
- package/dist/theme/shared/hideVisually.js +1 -1
- package/dist/theme/shared/size.js +4 -3
- package/dist/theme/shared/spacing.js +2 -2
- package/dist/theme/shared/zIndex.js +3 -3
- package/dist/theme/srTheme/buttonColors.js +6 -5
- package/dist/theme/srTheme/colors.js +4 -3
- package/dist/theme/srTheme/fontSizes.js +4 -3
- package/dist/theme/srTheme/linkStyles.js +6 -5
- package/dist/theme/srTheme/theme.js +1 -1
- package/dist/utils/Membership.js +30 -27
- package/dist/utils/ShareButton/sharePopUpHelper.js +8 -8
- package/dist/utils/ShareButton/shareTracking.js +1 -1
- package/dist/utils/ShareButton/shareUrlHelper.js +3 -3
- package/dist/utils/allowListed.js +3 -5
- package/dist/utils/allowListed.test.js +3 -3
- package/dist/utils/internalLinkHelper.js +8 -10
- package/dist/utils/navHelper.js +2 -2
- package/package.json +12 -9
- package/playwright/components/atoms/checkbox.spec.js +64 -0
- package/playwright/components/atoms/input.spec.js +158 -0
- package/playwright/components/atoms/label.spec.js +29 -0
- package/playwright/components/atoms/link.spec.js +48 -0
- package/playwright/components/atoms/radioButton.spec.js +30 -0
- package/playwright/components/atoms/select.spec.js +36 -0
- package/playwright/components/atoms/textArea.spec.js +39 -0
- package/playwright/components/atoms/textInputWithDropdown.spec.js +23 -0
- package/playwright/components/molecules/accordian.spec.js +20 -0
- package/playwright/components/molecules/schoolLookup.spec.js +26 -0
- package/playwright/components/molecules/searchInput.spec.js +24 -0
- package/playwright/components/molecules/shareButton.spec.js +32 -0
- package/playwright/components/molecules/simpleSchoolLookUp.spec.js +35 -0
- package/playwright/components/molecules/typeahead.spec.js +27 -0
- package/playwright/components/organisms/donate.spec.js +293 -0
- package/playwright/components/organisms/emailSignUpForm.spec.js +109 -0
- package/playwright/components/organisms/footer.spec.js +67 -0
- package/playwright/components/organisms/header.spec.js +82 -0
- package/playwright/components/organisms/impactSlider.spec.js +292 -0
- package/playwright/components/organisms/marketingPreferences.spec.js +220 -0
- package/playwright/components/organisms/membership.spec.js +47 -0
- package/playwright.config.js +49 -0
- package/src/components/Atoms/SocialIcons/Utils/Icons.js +1 -1
- package/src/components/Atoms/SocialIcons/assets/X-white-Subtract.svg +3 -0
- package/src/components/Molecules/Logos/Logos.js +18 -6
- package/src/components/Molecules/Logos/Logos.md +5 -0
- package/src/components/Organisms/ImpactSlider/_ImpactMoneybuys.js +3 -4
- package/src/components/Organisms/Membership/Membership.test.js +1 -1
- package/cypress/e2e/components/atoms/button.cy.js +0 -102
- package/cypress/e2e/components/atoms/buttonWithStates.cy.js +0 -47
- package/cypress/e2e/components/atoms/checkbox.cy.js +0 -70
- package/cypress/e2e/components/atoms/confetti.cy.js +0 -46
- package/cypress/e2e/components/atoms/errorText.cy.js +0 -45
- package/cypress/e2e/components/atoms/input.cy.js +0 -157
- package/cypress/e2e/components/atoms/label.cy.js +0 -93
- package/cypress/e2e/components/atoms/link.cy.js +0 -190
- package/cypress/e2e/components/atoms/logo.cy.js +0 -132
- package/cypress/e2e/components/atoms/pagination.cy.js +0 -191
- package/cypress/e2e/components/atoms/picture.cy.js +0 -130
- package/cypress/e2e/components/atoms/radioButton.cy.js +0 -76
- package/cypress/e2e/components/atoms/richText.cy.js +0 -70
- package/cypress/e2e/components/atoms/select.cy.js +0 -84
- package/cypress/e2e/components/atoms/socialIcons.cy.js +0 -162
- package/cypress/e2e/components/atoms/text.cy.js +0 -169
- package/cypress/e2e/components/atoms/textArea.cy.js +0 -89
- package/cypress/e2e/components/atoms/textInputWithDrop.cy.js +0 -76
- package/cypress/e2e/components/molecules/accordion.cy.js +0 -67
- package/cypress/e2e/components/molecules/articleTeaser.cy.js +0 -105
- package/cypress/e2e/components/molecules/banner.cy.js +0 -67
- package/cypress/e2e/components/molecules/box.cy.js +0 -104
- package/cypress/e2e/components/molecules/card.cy.js +0 -105
- package/cypress/e2e/components/molecules/cardDs.cy.js +0 -198
- package/cypress/e2e/components/molecules/chip.cy.js +0 -68
- package/cypress/e2e/components/molecules/countdown.cy.js +0 -71
- package/cypress/e2e/components/molecules/descriptor.cy.js +0 -142
- package/cypress/e2e/components/molecules/doubleCopy.cy.js +0 -79
- package/cypress/e2e/components/molecules/heroBanner.cy.js +0 -69
- package/cypress/e2e/components/molecules/infoBanner.cy.js +0 -69
- package/cypress/e2e/components/molecules/partnerLink.cy.js +0 -68
- package/cypress/e2e/components/molecules/promo.cy.js +0 -74
- package/cypress/e2e/components/molecules/schoolLookup.cy.js +0 -83
- package/cypress/e2e/components/molecules/searchInput.cy.js +0 -72
- package/cypress/e2e/components/molecules/searchResult.cy.js +0 -191
- package/cypress/e2e/components/molecules/shareButton.cy.js +0 -76
- package/cypress/e2e/components/molecules/simpleSchoolLookup.cy.js +0 -83
- package/cypress/e2e/components/molecules/singleMessage.cy.js +0 -502
- package/cypress/e2e/components/molecules/singleMessageDs.cy.js +0 -234
- package/cypress/e2e/components/molecules/typeahead.cy.js +0 -97
- package/cypress/e2e/components/molecules/videoBanner.cy.js +0 -132
- package/cypress/e2e/components/organisms/cookieBanner.cy.js +0 -80
- package/cypress/e2e/components/organisms/donate.cy.js +0 -284
- package/cypress/e2e/components/organisms/emailSignUp.cy.js +0 -54
- package/cypress/e2e/components/organisms/footer.cy.js +0 -168
- package/cypress/e2e/components/organisms/header.cy.js +0 -138
- package/cypress/e2e/components/organisms/impactSlider.cy.js +0 -72
- package/cypress/e2e/components/organisms/marketingPreferencesDSForm.cy.js +0 -589
- package/cypress/e2e/components/organisms/membership.cy.js +0 -122
- package/cypress/fixtures/example.json +0 -5
- package/cypress/plugins/index.js +0 -21
- package/cypress/support/commands.js +0 -25
- package/cypress/support/e2e.js +0 -36
- package/cypress.config.js +0 -15
- package/dist/components/Atoms/SocialIcons/assets/x-logo.svg +0 -3
- package/src/components/Atoms/SocialIcons/assets/x-logo.svg +0 -3
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
@@ -8,55 +9,65 @@ exports.default = exports.IconWrapper = exports.HelperText = void 0;
|
|
|
8
9
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
9
10
|
var _spacing = _interopRequireDefault(require("../../../theme/shared/spacing"));
|
|
10
11
|
var _hideVisually = _interopRequireDefault(require("../../../theme/shared/hideVisually"));
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
12
|
+
const buttonStyle = () => (0, _styledComponents.css)(["display:inline-flex;position:relative;padding:0.5rem 1.25rem;text-decoration:none;font-weight:700;font-size:", ";border-radius:2rem;transition:all 0.3s;height:3.125rem;width:100%;justify-content:center;align-items:center;cursor:pointer;", ";@media ", "{width:auto;}"], _ref => {
|
|
13
|
+
let {
|
|
14
|
+
theme
|
|
15
|
+
} = _ref;
|
|
16
|
+
return theme.fontSize('s');
|
|
17
|
+
}, _ref2 => {
|
|
18
|
+
let {
|
|
19
|
+
color,
|
|
20
|
+
theme
|
|
21
|
+
} = _ref2;
|
|
22
|
+
return color ? theme.buttonColors(color) : theme.buttonColors('red');
|
|
23
|
+
}, _ref3 => {
|
|
24
|
+
let {
|
|
25
|
+
theme
|
|
26
|
+
} = _ref3;
|
|
27
|
+
return theme.breakpoint('small');
|
|
28
|
+
});
|
|
29
|
+
const linkStyle = () => (0, _styledComponents.css)(["position:relative;text-decoration:none;display:inline;line-height:", ";", ";"], _ref4 => {
|
|
30
|
+
let {
|
|
31
|
+
theme
|
|
32
|
+
} = _ref4;
|
|
33
|
+
return theme.fontSize('l');
|
|
34
|
+
}, _ref5 => {
|
|
35
|
+
let {
|
|
36
|
+
type,
|
|
37
|
+
theme,
|
|
38
|
+
underline
|
|
39
|
+
} = _ref5;
|
|
40
|
+
return type ? theme.linkStyles(type, underline) : theme.linkStyles('standard', underline);
|
|
41
|
+
});
|
|
42
|
+
const IconWrapper = exports.IconWrapper = _styledComponents.default.span.withConfig({
|
|
38
43
|
displayName: "Linkstyle__IconWrapper",
|
|
39
44
|
componentId: "sc-t360tr-0"
|
|
40
|
-
})(["display:inline-flex;margin-left:", ";align-self:center;right:", ";", ";@media ", "{width:auto;right:auto;position:relative;", ";}"], (0, _spacing.default)('md'), (0, _spacing.default)('m'),
|
|
41
|
-
|
|
45
|
+
})(["display:inline-flex;margin-left:", ";align-self:center;right:", ";", ";@media ", "{width:auto;right:auto;position:relative;", ";}"], (0, _spacing.default)('md'), (0, _spacing.default)('m'), _ref6 => {
|
|
46
|
+
let {
|
|
47
|
+
type
|
|
48
|
+
} = _ref6;
|
|
42
49
|
return type === 'standard' && (0, _styledComponents.css)(["position:absolute;right:-2rem;top:0;bottom:0;"]);
|
|
43
|
-
},
|
|
44
|
-
|
|
50
|
+
}, _ref7 => {
|
|
51
|
+
let {
|
|
52
|
+
theme
|
|
53
|
+
} = _ref7;
|
|
45
54
|
return theme.breakpoint('small');
|
|
46
|
-
},
|
|
47
|
-
|
|
55
|
+
}, _ref8 => {
|
|
56
|
+
let {
|
|
57
|
+
type
|
|
58
|
+
} = _ref8;
|
|
48
59
|
return type === 'standard' && (0, _styledComponents.css)(["position:absolute;right:-2rem;top:0;bottom:0;"]);
|
|
49
60
|
});
|
|
50
|
-
|
|
61
|
+
const StyledLink = _styledComponents.default.a.withConfig({
|
|
51
62
|
displayName: "Linkstyle__StyledLink",
|
|
52
63
|
componentId: "sc-t360tr-1"
|
|
53
|
-
})(["", " ", ";"],
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
64
|
+
})(["", " ", ";"], props => props.type === 'button' ? buttonStyle : linkStyle, _ref9 => {
|
|
65
|
+
let {
|
|
66
|
+
iconFirst
|
|
67
|
+
} = _ref9;
|
|
57
68
|
return iconFirst && (0, _styledComponents.css)(["flex-direction:row-reverse;span[type=\"button\"]{margin-left:0;margin-right:1rem;}"]);
|
|
58
69
|
});
|
|
59
|
-
|
|
70
|
+
const HelperText = exports.HelperText = _styledComponents.default.span.withConfig({
|
|
60
71
|
displayName: "Linkstyle__HelperText",
|
|
61
72
|
componentId: "sc-t360tr-2"
|
|
62
73
|
})(["", ";"], _hideVisually.default);
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
var _react = _interopRequireDefault(require("react"));
|
|
5
5
|
require("jest-styled-components");
|
|
6
6
|
var _shallowWithTheme = _interopRequireDefault(require("../../../hoc/shallowWithTheme"));
|
|
7
7
|
var _Link = _interopRequireDefault(require("./Link"));
|
|
8
8
|
var _index = require("../Icons/index");
|
|
9
|
-
it('renders a standard styled link correctly',
|
|
10
|
-
|
|
9
|
+
it('renders a standard styled link correctly', () => {
|
|
10
|
+
const tree = (0, _shallowWithTheme.default)( /*#__PURE__*/_react.default.createElement(_Link.default, {
|
|
11
11
|
href: "/test",
|
|
12
12
|
type: "standard"
|
|
13
13
|
}, "A standard link")).toJSON();
|
|
14
14
|
expect(tree).toMatchInlineSnapshot("\n .c0 {\n position: relative;\n -webkit-text-decoration: none;\n text-decoration: none;\n display: inline;\n line-height: 1.5rem;\n color: #000000;\n border-bottom: 2px solid #000000;\n font-weight: normal;\n }\n\n .c0:hover {\n color: #000000;\n border-bottom: 2px solid #000000;\n }\n\n <a\n className=\"c0\"\n color=\"red\"\n href=\"/test\"\n target=\"_self\"\n type=\"standard\"\n >\n A standard link\n </a>\n ");
|
|
15
15
|
});
|
|
16
|
-
it('renders a button with an icon',
|
|
17
|
-
|
|
16
|
+
it('renders a button with an icon', () => {
|
|
17
|
+
const tree = (0, _shallowWithTheme.default)( /*#__PURE__*/_react.default.createElement(_Link.default, {
|
|
18
18
|
href: "/test",
|
|
19
19
|
type: "standard",
|
|
20
20
|
color: "red",
|
|
@@ -24,16 +24,16 @@ it('renders a button with an icon', function () {
|
|
|
24
24
|
}, "Internal link")).toJSON();
|
|
25
25
|
expect(tree).toMatchInlineSnapshot("\n .c1 {\n display: -webkit-inline-box;\n display: -webkit-inline-flex;\n display: -ms-inline-flexbox;\n display: inline-flex;\n margin-left: 1rem;\n -webkit-align-self: center;\n -ms-flex-item-align: center;\n align-self: center;\n right: 1.5rem;\n position: absolute;\n right: -2rem;\n top: 0;\n bottom: 0;\n }\n\n .c0 {\n position: relative;\n -webkit-text-decoration: none;\n text-decoration: none;\n display: inline;\n line-height: 1.5rem;\n color: #000000;\n border-bottom: 2px solid #000000;\n font-weight: normal;\n }\n\n .c0:hover {\n color: #000000;\n border-bottom: 2px solid #000000;\n }\n\n @media (min-width:740px) {\n .c1 {\n width: auto;\n right: auto;\n position: relative;\n position: absolute;\n right: -2rem;\n top: 0;\n bottom: 0;\n }\n }\n\n <a\n className=\"c0\"\n color=\"red\"\n href=\"/test\"\n target=\"_self\"\n type=\"standard\"\n >\n Internal link\n <span\n className=\"c1\"\n type=\"standard\"\n >\n <svg\n fill=\"#FFFFFF\"\n height={24}\n viewBox=\"0 0 96 96\"\n width={24}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M90.871 50.776c-.016.016-.026.036-.043.052l-32 32C58.047 83.609 57.024 84 56 84s-2.047-.391-2.829-1.171a4 4 0 010-5.657L78.343 52H8a4 4 0 010-8h70.343L53.171 18.829a4 4 0 015.657-5.657l32 32c.016.016.027.036.043.052.167.172.321.357.455.557.069.104.118.216.176.325.065.121.138.236.191.364.057.137.09.279.13.42.032.109.074.214.097.327a4.017 4.017 0 010 1.568c-.023.113-.065.217-.097.327-.041.141-.074.283-.13.42-.053.128-.126.243-.191.364-.059.109-.107.221-.176.325a4.035 4.035 0 01-.455.555z\"\n />\n </svg>\n </span>\n </a>\n ");
|
|
26
26
|
});
|
|
27
|
-
it('renders a standard styled link correctly with target blank and assistive text',
|
|
28
|
-
|
|
27
|
+
it('renders a standard styled link correctly with target blank and assistive text', () => {
|
|
28
|
+
const tree = (0, _shallowWithTheme.default)( /*#__PURE__*/_react.default.createElement(_Link.default, {
|
|
29
29
|
href: "/test",
|
|
30
30
|
type: "standard",
|
|
31
31
|
target: "blank"
|
|
32
32
|
}, "A standard link")).toJSON();
|
|
33
33
|
expect(tree).toMatchInlineSnapshot("\n .c0 {\n position: relative;\n -webkit-text-decoration: none;\n text-decoration: none;\n display: inline;\n line-height: 1.5rem;\n color: #000000;\n border-bottom: 2px solid #000000;\n font-weight: normal;\n }\n\n .c0:hover {\n color: #000000;\n border-bottom: 2px solid #000000;\n }\n\n .c1 {\n border: 0;\n -webkit-clip: rect(0 0 0 0);\n clip: rect(0 0 0 0);\n -webkit-clip-path: inset(50%);\n clip-path: inset(50%);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n }\n\n <a\n className=\"c0\"\n color=\"red\"\n href=\"/test\"\n target=\"_blank\"\n type=\"standard\"\n >\n A standard link\n <span\n className=\"c1\"\n >\n (opens in new window)\n </span>\n </a>\n ");
|
|
34
34
|
});
|
|
35
|
-
it('renders link styled as button correctly',
|
|
36
|
-
|
|
35
|
+
it('renders link styled as button correctly', () => {
|
|
36
|
+
const tree = (0, _shallowWithTheme.default)( /*#__PURE__*/_react.default.createElement(_Link.default, {
|
|
37
37
|
href: "/test",
|
|
38
38
|
type: "button",
|
|
39
39
|
color: "yellow"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
@@ -13,7 +13,7 @@ var _crLogo = _interopRequireDefault(require("./assets/cr-logo.svg"));
|
|
|
13
13
|
var _srLogo = _interopRequireDefault(require("./assets/sr-logo.svg"));
|
|
14
14
|
var _srGameonLogo = _interopRequireDefault(require("./assets/sr-gameon-logo.svg"));
|
|
15
15
|
var _CR_LOGO_PRIDE_KEY_RGB = _interopRequireDefault(require("./assets/CR_LOGO_PRIDE_KEY_RGB.svg"));
|
|
16
|
-
|
|
16
|
+
const Image = _styledComponents.default.img.withConfig({
|
|
17
17
|
displayName: "Logo__Image",
|
|
18
18
|
componentId: "sc-18yiye8-0"
|
|
19
19
|
})(["object-fit:cover;width:100%;display:block;height:auto;margin-right:", ";"], (0, _spacing.default)('md'));
|
|
@@ -22,20 +22,16 @@ var Image = _styledComponents.default.img.withConfig({
|
|
|
22
22
|
* Logo wrapper
|
|
23
23
|
*/
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
const LogoWrapper = _styledComponents.default.div.withConfig({
|
|
26
26
|
displayName: "Logo__LogoWrapper",
|
|
27
27
|
componentId: "sc-18yiye8-1"
|
|
28
|
-
})(["display:inline-block;", " width:", ";transform:", ";vertical-align:bottom;@media ", "{width:", ";}"], (0, _zIndex.default)('high'),
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
}, function (_ref) {
|
|
33
|
-
var theme = _ref.theme;
|
|
28
|
+
})(["display:inline-block;", " width:", ";transform:", ";vertical-align:bottom;@media ", "{width:", ";}"], (0, _zIndex.default)('high'), props => props.sizeSm, props => props.rotate ? 'rotate(-14deg)' : 'inherit', _ref => {
|
|
29
|
+
let {
|
|
30
|
+
theme
|
|
31
|
+
} = _ref;
|
|
34
32
|
return theme.breakpoint('nav');
|
|
35
|
-
},
|
|
36
|
-
|
|
37
|
-
});
|
|
38
|
-
var themeSwitcher = function themeSwitcher(theme) {
|
|
33
|
+
}, props => props.sizeMd);
|
|
34
|
+
const themeSwitcher = theme => {
|
|
39
35
|
switch (theme) {
|
|
40
36
|
case 'Sport Relief':
|
|
41
37
|
return _srLogo.default;
|
|
@@ -47,11 +43,13 @@ var themeSwitcher = function themeSwitcher(theme) {
|
|
|
47
43
|
return _crLogo.default;
|
|
48
44
|
}
|
|
49
45
|
};
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
46
|
+
const Logo = _ref2 => {
|
|
47
|
+
let {
|
|
48
|
+
rotate,
|
|
49
|
+
sizeSm,
|
|
50
|
+
sizeMd,
|
|
51
|
+
campaign
|
|
52
|
+
} = _ref2;
|
|
55
53
|
return /*#__PURE__*/_react.default.createElement(LogoWrapper, {
|
|
56
54
|
rotate: rotate ? 1 : 0,
|
|
57
55
|
sizeSm: sizeSm,
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
var _react = _interopRequireDefault(require("react"));
|
|
5
5
|
require("jest-styled-components");
|
|
6
6
|
var _shallowWithTheme = _interopRequireDefault(require("../../../hoc/shallowWithTheme"));
|
|
7
7
|
var _Logo = _interopRequireDefault(require("./Logo"));
|
|
8
|
-
it("renders correctly",
|
|
9
|
-
|
|
8
|
+
it("renders correctly", () => {
|
|
9
|
+
const tree = (0, _shallowWithTheme.default)( /*#__PURE__*/_react.default.createElement(_Logo.default, {
|
|
10
10
|
rotate: true
|
|
11
11
|
})).toJSON();
|
|
12
12
|
expect(tree).toMatchInlineSnapshot("\n .c1 {\n object-fit: cover;\n width: 100%;\n display: block;\n height: auto;\n margin-right: 1rem;\n }\n\n .c0 {\n display: inline-block;\n z-index: 3;\n width: 51px;\n -webkit-transform: rotate(-14deg);\n -ms-transform: rotate(-14deg);\n transform: rotate(-14deg);\n vertical-align: bottom;\n }\n\n @media (min-width:1150px) {\n .c0 {\n width: 70px;\n }\n }\n\n <div\n className=\"c0\"\n rotate={1}\n >\n <img\n alt=\"Comic Relief logo\"\n className=\"c1\"\n src=\"mock.asset\"\n />\n </div>\n ");
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectWithoutProperties"));
|
|
9
8
|
var _react = _interopRequireDefault(require("react"));
|
|
10
9
|
var _Item = _interopRequireDefault(require("./Item.style"));
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
target
|
|
15
|
-
restProps
|
|
10
|
+
const Item = _ref => {
|
|
11
|
+
let {
|
|
12
|
+
children,
|
|
13
|
+
target,
|
|
14
|
+
...restProps
|
|
15
|
+
} = _ref;
|
|
16
16
|
return /*#__PURE__*/_react.default.createElement(_Item.default, Object.assign({
|
|
17
17
|
target: "_".concat(target)
|
|
18
18
|
}, restProps), children);
|
|
@@ -1,53 +1,60 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
6
7
|
exports.default = void 0;
|
|
7
8
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
8
|
-
|
|
9
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) { if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } } return n.default = e, t && t.set(e, n), n; }
|
|
10
|
-
var StyledItem = _styledComponents.default.a.withConfig({
|
|
9
|
+
const StyledItem = _styledComponents.default.a.withConfig({
|
|
11
10
|
displayName: "Itemstyle__StyledItem",
|
|
12
11
|
componentId: "sc-19pu4qu-0"
|
|
13
|
-
})(["padding:9px 14px 9px 14px;border-radius:30px;text-align:center;text-decoration:none;font-weight:700;cursor:", ";background:", ";color:", ";", ";"],
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
})(["padding:9px 14px 9px 14px;border-radius:30px;text-align:center;text-decoration:none;font-weight:700;cursor:", ";background:", ";color:", ";", ";"], _ref => {
|
|
13
|
+
let {
|
|
14
|
+
selected,
|
|
15
|
+
disabled
|
|
16
|
+
} = _ref;
|
|
16
17
|
return selected || disabled ? 'default' : 'pointer';
|
|
17
|
-
},
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
18
|
+
}, _ref2 => {
|
|
19
|
+
let {
|
|
20
|
+
theme,
|
|
21
|
+
selected,
|
|
22
|
+
disabled,
|
|
23
|
+
backgroundColor,
|
|
24
|
+
selectedBackgroundColor,
|
|
25
|
+
disabledBackgroundColor
|
|
26
|
+
} = _ref2;
|
|
27
|
+
let processedBackgroundColor = backgroundColor;
|
|
25
28
|
if (disabled) {
|
|
26
29
|
processedBackgroundColor = disabledBackgroundColor;
|
|
27
30
|
} else if (selected) {
|
|
28
31
|
processedBackgroundColor = selectedBackgroundColor;
|
|
29
32
|
}
|
|
30
33
|
return theme.color(processedBackgroundColor);
|
|
31
|
-
},
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
34
|
+
}, _ref3 => {
|
|
35
|
+
let {
|
|
36
|
+
theme,
|
|
37
|
+
selected,
|
|
38
|
+
disabled,
|
|
39
|
+
color,
|
|
40
|
+
selectedColor,
|
|
41
|
+
disabledColor
|
|
42
|
+
} = _ref3;
|
|
43
|
+
let processedColor = color;
|
|
39
44
|
if (disabled) {
|
|
40
45
|
processedColor = disabledColor;
|
|
41
46
|
} else if (selected) {
|
|
42
47
|
processedColor = selectedColor;
|
|
43
48
|
}
|
|
44
49
|
return theme.color(processedColor);
|
|
45
|
-
},
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
50
|
+
}, _ref4 => {
|
|
51
|
+
let {
|
|
52
|
+
theme,
|
|
53
|
+
selected,
|
|
54
|
+
disabled,
|
|
55
|
+
backgroundColorOnHover,
|
|
56
|
+
colorOnHover
|
|
57
|
+
} = _ref4;
|
|
51
58
|
if (!(selected || disabled)) {
|
|
52
59
|
return (0, _styledComponents.css)([":hover{background:", ";color:", ";}"], theme.color(backgroundColorOnHover), theme.color(colorOnHover));
|
|
53
60
|
}
|
|
@@ -1,35 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectWithoutProperties"));
|
|
9
8
|
var _react = _interopRequireDefault(require("react"));
|
|
10
9
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
11
|
-
|
|
12
|
-
var StyledList = _styledComponents.default.ul.withConfig({
|
|
10
|
+
const StyledList = _styledComponents.default.ul.withConfig({
|
|
13
11
|
displayName: "List__StyledList",
|
|
14
12
|
componentId: "sc-vcfyaz-0"
|
|
15
13
|
})(["display:flex;padding-left:0;justify-content:center;flex-wrap:wrap;list-style-type:none;"]);
|
|
16
|
-
|
|
14
|
+
const StyledItem = _styledComponents.default.li.withConfig({
|
|
17
15
|
displayName: "List__StyledItem",
|
|
18
16
|
componentId: "sc-vcfyaz-1"
|
|
19
17
|
})(["padding:10px;"]);
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
18
|
+
const List = _ref => {
|
|
19
|
+
let {
|
|
20
|
+
PageComponent,
|
|
21
|
+
pages,
|
|
22
|
+
createURL,
|
|
23
|
+
onSelect,
|
|
24
|
+
pageComponentProps,
|
|
25
|
+
...restProps
|
|
26
|
+
} = _ref;
|
|
27
|
+
return /*#__PURE__*/_react.default.createElement(StyledList, null, pages.map(_ref2 => {
|
|
28
|
+
let {
|
|
29
|
+
selected,
|
|
30
|
+
disabled,
|
|
31
|
+
label,
|
|
32
|
+
ariaLabel,
|
|
33
|
+
value
|
|
34
|
+
} = _ref2;
|
|
33
35
|
return /*#__PURE__*/_react.default.createElement(StyledItem, {
|
|
34
36
|
key: "".concat(ariaLabel, " ").concat(value)
|
|
35
37
|
}, /*#__PURE__*/_react.default.createElement(PageComponent, Object.assign({
|
|
@@ -37,7 +39,7 @@ var List = function List(_ref) {
|
|
|
37
39
|
disabled: disabled,
|
|
38
40
|
"aria-label": ariaLabel,
|
|
39
41
|
href: selected || disabled ? null : createURL(value),
|
|
40
|
-
onClick:
|
|
42
|
+
onClick: event => {
|
|
41
43
|
if (selected || disabled) {
|
|
42
44
|
return event.preventDefault();
|
|
43
45
|
}
|
|
@@ -1,69 +1,65 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectWithoutProperties"));
|
|
9
8
|
var _react = _interopRequireDefault(require("react"));
|
|
10
9
|
var _List = _interopRequireDefault(require("./List/List"));
|
|
11
10
|
var _Item = _interopRequireDefault(require("./Item/Item"));
|
|
12
11
|
var _PaginationCalculator = require("./Utils/PaginationCalculator");
|
|
13
|
-
var _excluded = ["PageComponent", "totalPages", "maxPages", "currentPage", "showFirst", "firstLabel", "firstAriaLabel", "showPrevious", "previousLabel", "previousAriaLabel", "showMore", "moreLabel", "moreAriaLabel", "showNext", "nextLabel", "nextAriaLabel", "showLast", "lastLabel", "lastAriaLabel", "getPageLabel", "getPageAriaLabel", "onSelect", "createURL", "pageComponentProps"];
|
|
14
12
|
/** Customizable Pagination component */
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
13
|
+
const Pagination = _ref => {
|
|
14
|
+
let {
|
|
15
|
+
PageComponent,
|
|
16
|
+
totalPages,
|
|
17
|
+
maxPages,
|
|
18
|
+
currentPage,
|
|
19
|
+
showFirst,
|
|
20
|
+
firstLabel,
|
|
21
|
+
firstAriaLabel,
|
|
22
|
+
showPrevious,
|
|
23
|
+
previousLabel,
|
|
24
|
+
previousAriaLabel,
|
|
25
|
+
showMore,
|
|
26
|
+
moreLabel,
|
|
27
|
+
moreAriaLabel,
|
|
28
|
+
showNext,
|
|
29
|
+
nextLabel,
|
|
30
|
+
nextAriaLabel,
|
|
31
|
+
showLast,
|
|
32
|
+
lastLabel,
|
|
33
|
+
lastAriaLabel,
|
|
34
|
+
getPageLabel,
|
|
35
|
+
getPageAriaLabel,
|
|
36
|
+
onSelect,
|
|
37
|
+
createURL,
|
|
38
|
+
pageComponentProps,
|
|
39
|
+
...restProps
|
|
40
|
+
} = _ref;
|
|
41
41
|
if (!totalPages) {
|
|
42
42
|
return null;
|
|
43
43
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
};
|
|
53
|
-
var items = [];
|
|
44
|
+
const getItem = (label, ariaLabel, value, disabled) => ({
|
|
45
|
+
disabled,
|
|
46
|
+
selected: currentPage === value,
|
|
47
|
+
label,
|
|
48
|
+
value,
|
|
49
|
+
ariaLabel
|
|
50
|
+
});
|
|
51
|
+
let items = [];
|
|
54
52
|
if (showFirst) {
|
|
55
53
|
items.push(getItem(firstLabel, firstAriaLabel, 1, currentPage === 1));
|
|
56
54
|
}
|
|
57
55
|
if (showPrevious) {
|
|
58
56
|
items.push(getItem(previousLabel, previousAriaLabel, currentPage - 1, currentPage === 1));
|
|
59
57
|
}
|
|
60
|
-
|
|
58
|
+
const pages = (0, _PaginationCalculator.getPages)(currentPage, maxPages, totalPages);
|
|
61
59
|
if (showMore && pages[0] > 1) {
|
|
62
60
|
items.push(getItem(moreLabel, moreAriaLabel, -1, true));
|
|
63
61
|
}
|
|
64
|
-
items = items.concat(pages.map(
|
|
65
|
-
return getItem(getPageLabel(value), getPageAriaLabel(value), value, false);
|
|
66
|
-
}));
|
|
62
|
+
items = items.concat(pages.map(value => getItem(getPageLabel(value), getPageAriaLabel(value), value, false)));
|
|
67
63
|
if (showMore && pages[pages.length - 1] < totalPages) {
|
|
68
64
|
items.push(getItem(moreLabel, moreAriaLabel, -2, true));
|
|
69
65
|
}
|
|
@@ -95,17 +91,13 @@ Pagination.defaultProps = {
|
|
|
95
91
|
firstLabel: '«',
|
|
96
92
|
lastLabel: '»',
|
|
97
93
|
moreLabel: '...',
|
|
98
|
-
getPageLabel:
|
|
99
|
-
return currentPage.toString();
|
|
100
|
-
},
|
|
94
|
+
getPageLabel: currentPage => currentPage.toString(),
|
|
101
95
|
previousAriaLabel: 'Previous page',
|
|
102
96
|
nextAriaLabel: 'Next page',
|
|
103
97
|
firstAriaLabel: 'First page',
|
|
104
98
|
lastAriaLabel: 'Last page',
|
|
105
99
|
moreAriaLabel: 'More pages',
|
|
106
|
-
getPageAriaLabel:
|
|
107
|
-
return "Page ".concat(currentPage);
|
|
108
|
-
},
|
|
100
|
+
getPageAriaLabel: currentPage => "Page ".concat(currentPage),
|
|
109
101
|
target: 'self',
|
|
110
102
|
color: 'black',
|
|
111
103
|
backgroundColor: 'white',
|