@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,35 +1,36 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.default = void 0;
|
|
8
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectWithoutProperties"));
|
|
9
9
|
var _react = _interopRequireDefault(require("react"));
|
|
10
10
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
11
|
-
|
|
12
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
13
|
-
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; }
|
|
14
|
-
var angle = {
|
|
11
|
+
const angle = {
|
|
15
12
|
right: '90deg',
|
|
16
13
|
left: '-90deg',
|
|
17
14
|
down: '180deg',
|
|
18
15
|
up: '0deg'
|
|
19
16
|
};
|
|
20
|
-
|
|
17
|
+
const Icon = _styledComponents.default.svg.withConfig({
|
|
21
18
|
displayName: "Chevron__Icon",
|
|
22
19
|
componentId: "sc-1p4fsgl-0"
|
|
23
|
-
})(["transform:", ";"],
|
|
24
|
-
|
|
20
|
+
})(["transform:", ";"], _ref => {
|
|
21
|
+
let {
|
|
22
|
+
direction
|
|
23
|
+
} = _ref;
|
|
25
24
|
return "rotate(".concat(angle[direction], ")");
|
|
26
25
|
});
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
26
|
+
const Chevron = _ref2 => {
|
|
27
|
+
let {
|
|
28
|
+
colour,
|
|
29
|
+
theme,
|
|
30
|
+
size,
|
|
31
|
+
direction,
|
|
32
|
+
...rest
|
|
33
|
+
} = _ref2;
|
|
33
34
|
return /*#__PURE__*/_react.default.createElement(Icon, Object.assign({
|
|
34
35
|
direction: direction,
|
|
35
36
|
width: size,
|
|
@@ -1,26 +1,24 @@
|
|
|
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
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
})));
|
|
25
|
-
};
|
|
9
|
+
const Curve = () => /*#__PURE__*/_react.default.createElement("svg", {
|
|
10
|
+
width: "100%",
|
|
11
|
+
height: "160",
|
|
12
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
13
|
+
}, /*#__PURE__*/_react.default.createElement("g", {
|
|
14
|
+
id: "Layer_1"
|
|
15
|
+
}, /*#__PURE__*/_react.default.createElement("path", {
|
|
16
|
+
width: "100%",
|
|
17
|
+
height: "100%",
|
|
18
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
19
|
+
id: "svg_1",
|
|
20
|
+
d: "m-0.66672,75.33334c0,0 17.33334,64.00001 81.33334,64.00001c64.00001,0 1360.00015,-138.66668 1359.33348,-139.33335c0.66667,0.66666 0.66667,158.02261 0,157.33334c0,0.70183 -1439.33595,0.66667 -1440.0001,-1.33333c0.66523,1.33333 -0.66672,-80.66667 -0.66672,-80.66667z",
|
|
21
|
+
stroke: "#000",
|
|
22
|
+
fill: "#000"
|
|
23
|
+
})));
|
|
26
24
|
var _default = exports.default = Curve;
|
|
@@ -1,19 +1,19 @@
|
|
|
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 = require("styled-components");
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
theme
|
|
15
|
-
size
|
|
16
|
-
rest
|
|
10
|
+
const Download = _ref => {
|
|
11
|
+
let {
|
|
12
|
+
colour,
|
|
13
|
+
theme,
|
|
14
|
+
size,
|
|
15
|
+
...rest
|
|
16
|
+
} = _ref;
|
|
17
17
|
return /*#__PURE__*/_react.default.createElement("svg", Object.assign({}, rest, {
|
|
18
18
|
width: size,
|
|
19
19
|
height: size,
|
|
@@ -1,19 +1,19 @@
|
|
|
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 = require("styled-components");
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
theme
|
|
15
|
-
size
|
|
16
|
-
rest
|
|
10
|
+
const External = _ref => {
|
|
11
|
+
let {
|
|
12
|
+
colour,
|
|
13
|
+
theme,
|
|
14
|
+
size,
|
|
15
|
+
...rest
|
|
16
|
+
} = _ref;
|
|
17
17
|
return /*#__PURE__*/_react.default.createElement("svg", Object.assign({}, rest, {
|
|
18
18
|
width: size,
|
|
19
19
|
height: size,
|
|
@@ -1,19 +1,19 @@
|
|
|
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 = require("styled-components");
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
theme
|
|
15
|
-
size
|
|
16
|
-
rest
|
|
10
|
+
const Favourite = _ref => {
|
|
11
|
+
let {
|
|
12
|
+
colour,
|
|
13
|
+
theme,
|
|
14
|
+
size,
|
|
15
|
+
...rest
|
|
16
|
+
} = _ref;
|
|
17
17
|
return /*#__PURE__*/_react.default.createElement("svg", Object.assign({}, rest, {
|
|
18
18
|
width: size,
|
|
19
19
|
height: size,
|
|
@@ -1,19 +1,19 @@
|
|
|
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 = require("styled-components");
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
theme
|
|
15
|
-
size
|
|
16
|
-
rest
|
|
10
|
+
const Internal = _ref => {
|
|
11
|
+
let {
|
|
12
|
+
colour,
|
|
13
|
+
theme,
|
|
14
|
+
size,
|
|
15
|
+
...rest
|
|
16
|
+
} = _ref;
|
|
17
17
|
return /*#__PURE__*/_react.default.createElement("svg", Object.assign({}, rest, {
|
|
18
18
|
width: size,
|
|
19
19
|
height: size,
|
|
@@ -1,48 +1,48 @@
|
|
|
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
|
Object.defineProperty(exports, "Arrow", {
|
|
8
8
|
enumerable: true,
|
|
9
|
-
get: function
|
|
9
|
+
get: function () {
|
|
10
10
|
return _Arrow.default;
|
|
11
11
|
}
|
|
12
12
|
});
|
|
13
13
|
Object.defineProperty(exports, "AtSign", {
|
|
14
14
|
enumerable: true,
|
|
15
|
-
get: function
|
|
15
|
+
get: function () {
|
|
16
16
|
return _AtSign.default;
|
|
17
17
|
}
|
|
18
18
|
});
|
|
19
19
|
Object.defineProperty(exports, "Chevron", {
|
|
20
20
|
enumerable: true,
|
|
21
|
-
get: function
|
|
21
|
+
get: function () {
|
|
22
22
|
return _Chevron.default;
|
|
23
23
|
}
|
|
24
24
|
});
|
|
25
25
|
Object.defineProperty(exports, "Download", {
|
|
26
26
|
enumerable: true,
|
|
27
|
-
get: function
|
|
27
|
+
get: function () {
|
|
28
28
|
return _Download.default;
|
|
29
29
|
}
|
|
30
30
|
});
|
|
31
31
|
Object.defineProperty(exports, "External", {
|
|
32
32
|
enumerable: true,
|
|
33
|
-
get: function
|
|
33
|
+
get: function () {
|
|
34
34
|
return _External.default;
|
|
35
35
|
}
|
|
36
36
|
});
|
|
37
37
|
Object.defineProperty(exports, "Favourite", {
|
|
38
38
|
enumerable: true,
|
|
39
|
-
get: function
|
|
39
|
+
get: function () {
|
|
40
40
|
return _Favourite.default;
|
|
41
41
|
}
|
|
42
42
|
});
|
|
43
43
|
Object.defineProperty(exports, "Internal", {
|
|
44
44
|
enumerable: true,
|
|
45
|
-
get: function
|
|
45
|
+
get: function () {
|
|
46
46
|
return _Internal.default;
|
|
47
47
|
}
|
|
48
48
|
});
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.default = void 0;
|
|
8
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectWithoutProperties"));
|
|
9
9
|
var _react = _interopRequireDefault(require("react"));
|
|
10
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
11
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
@@ -13,52 +13,57 @@ var _Label = _interopRequireDefault(require("../Label/Label"));
|
|
|
13
13
|
var _ErrorText = _interopRequireDefault(require("../ErrorText/ErrorText"));
|
|
14
14
|
var _spacing = _interopRequireDefault(require("../../../theme/shared/spacing"));
|
|
15
15
|
var _zIndex = _interopRequireDefault(require("../../../theme/shared/zIndex"));
|
|
16
|
-
var _excluded = ["errorMsg", "id", "label", "showLabel", "type", "hasAria", "className", "labelProps", "prefix", "optional"];
|
|
17
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
18
|
-
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; }
|
|
19
16
|
// This seems to get a decent approximation of the necessary width (without resorting to measuring
|
|
20
17
|
// the element with JS)
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
};
|
|
24
|
-
var InputField = _styledComponents.default.input.withConfig({
|
|
18
|
+
const getPrefixWidth = prefixLength => "calc(".concat((0, _spacing.default)('m'), " + (").concat(prefixLength, " * ").concat((0, _spacing.default)('sm'), "))");
|
|
19
|
+
const InputField = _styledComponents.default.input.withConfig({
|
|
25
20
|
displayName: "Input__InputField",
|
|
26
21
|
componentId: "sc-bcqy1o-0"
|
|
27
|
-
})(["", ""],
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
22
|
+
})(["", ""], _ref => {
|
|
23
|
+
let {
|
|
24
|
+
theme,
|
|
25
|
+
error,
|
|
26
|
+
prefixLength
|
|
27
|
+
} = _ref;
|
|
31
28
|
return (0, _styledComponents.css)(["position:relative;box-sizing:border-box;width:100%;height:48px;padding:", " ", ";", " background-color:", ";border:1px solid;border-color:", ";box-shadow:none;appearance:none;color:", ";border-radius:", ";font-size:inherit;z-index:2;font-family:", ";:focus{border:1px solid ", ";}@media ", "{max-width:290px;}"], (0, _spacing.default)('md'), (0, _spacing.default)('m'), prefixLength > 0 ? "padding-left: ".concat(getPrefixWidth(prefixLength), ";") : '', theme.color('grey_light'), error ? theme.color('red') : theme.color('grey_medium'), theme.color('black'), (0, _spacing.default)('sm'), theme.fontFamilies(theme.font.regular), theme.color('grey_for_forms'), theme.breakpoint('small'));
|
|
32
29
|
});
|
|
33
|
-
|
|
30
|
+
const InputWrapper = _styledComponents.default.div.withConfig({
|
|
34
31
|
displayName: "Input__InputWrapper",
|
|
35
32
|
componentId: "sc-bcqy1o-1"
|
|
36
|
-
})(["position:relative;font-size:", ";"],
|
|
37
|
-
|
|
33
|
+
})(["position:relative;font-size:", ";"], _ref2 => {
|
|
34
|
+
let {
|
|
35
|
+
theme
|
|
36
|
+
} = _ref2;
|
|
38
37
|
return theme.fontSize('m');
|
|
39
38
|
});
|
|
40
|
-
|
|
39
|
+
const Prefix = _styledComponents.default.div.withConfig({
|
|
41
40
|
displayName: "Input__Prefix",
|
|
42
41
|
componentId: "sc-bcqy1o-2"
|
|
43
|
-
})(["position:absolute;left:0;top:0;", " display:flex;height:100%;width:", ";justify-content:center;align-items:center;color:", ";font-weight:700;font-size:inherit;margin-left:2px;"], (0, _zIndex.default)('high'),
|
|
44
|
-
|
|
42
|
+
})(["position:absolute;left:0;top:0;", " display:flex;height:100%;width:", ";justify-content:center;align-items:center;color:", ";font-weight:700;font-size:inherit;margin-left:2px;"], (0, _zIndex.default)('high'), _ref3 => {
|
|
43
|
+
let {
|
|
44
|
+
length
|
|
45
|
+
} = _ref3;
|
|
45
46
|
return getPrefixWidth(length);
|
|
46
|
-
},
|
|
47
|
-
|
|
47
|
+
}, _ref4 => {
|
|
48
|
+
let {
|
|
49
|
+
theme
|
|
50
|
+
} = _ref4;
|
|
48
51
|
return theme.color('grey_dark');
|
|
49
52
|
});
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
53
|
+
const Input = /*#__PURE__*/_react.default.forwardRef((_ref5, ref) => {
|
|
54
|
+
let {
|
|
55
|
+
errorMsg,
|
|
56
|
+
id,
|
|
57
|
+
label,
|
|
58
|
+
showLabel,
|
|
59
|
+
type,
|
|
60
|
+
hasAria,
|
|
61
|
+
className,
|
|
62
|
+
labelProps,
|
|
63
|
+
prefix,
|
|
64
|
+
optional,
|
|
65
|
+
...rest
|
|
66
|
+
} = _ref5;
|
|
62
67
|
return /*#__PURE__*/_react.default.createElement(_Label.default, Object.assign({
|
|
63
68
|
className: className,
|
|
64
69
|
htmlFor: id,
|
|
@@ -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 _Input = _interopRequireDefault(require("./Input"));
|
|
8
|
-
it('renders correctly',
|
|
9
|
-
|
|
8
|
+
it('renders correctly', () => {
|
|
9
|
+
const tree = (0, _shallowWithTheme.default)( /*#__PURE__*/_react.default.createElement(_Input.default, {
|
|
10
10
|
name: "fullname",
|
|
11
11
|
placeholder: "This is the hint text",
|
|
12
12
|
type: "text",
|
|
@@ -1,46 +1,49 @@
|
|
|
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
10
|
var _Text = _interopRequireDefault(require("../Text/Text"));
|
|
12
11
|
var _spacing = _interopRequireDefault(require("../../../theme/shared/spacing"));
|
|
13
12
|
var _hideVisually = _interopRequireDefault(require("../../../theme/shared/hideVisually"));
|
|
14
|
-
|
|
15
|
-
_excluded2 = ["children", "label", "hideLabel", "optional"];
|
|
16
|
-
var LabelElement = _styledComponents.default.label.withConfig({
|
|
13
|
+
const LabelElement = _styledComponents.default.label.withConfig({
|
|
17
14
|
displayName: "Label__LabelElement",
|
|
18
15
|
componentId: "sc-2nrw50-0"
|
|
19
|
-
})(["position:relative;display:flex;flex-direction:column;color:", ";width:100%;", ""],
|
|
20
|
-
|
|
16
|
+
})(["position:relative;display:flex;flex-direction:column;color:", ";width:100%;", ""], _ref => {
|
|
17
|
+
let {
|
|
18
|
+
theme
|
|
19
|
+
} = _ref;
|
|
21
20
|
return theme.color('grey_label');
|
|
22
|
-
},
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
}, _ref2 => {
|
|
22
|
+
let {
|
|
23
|
+
optional,
|
|
24
|
+
theme
|
|
25
|
+
} = _ref2;
|
|
25
26
|
return optional === true && "\n :after {\n position: absolute;\n top: 0;\n right: 0;\n content: 'Optional';\n font-family: ".concat(theme.fontFamilies(theme.font.regular), ";\n font-size: ").concat(theme.fontSize('s'), ";\n }");
|
|
26
27
|
});
|
|
27
|
-
|
|
28
|
+
const VisibleText = (0, _styledComponents.default)(_Text.default).attrs({
|
|
28
29
|
weight: 'bold'
|
|
29
30
|
}).withConfig({
|
|
30
31
|
displayName: "Label__VisibleText",
|
|
31
32
|
componentId: "sc-2nrw50-1"
|
|
32
33
|
})(["margin-bottom:", ";"], (0, _spacing.default)('sm'));
|
|
33
|
-
|
|
34
|
+
const HiddenText = (0, _styledComponents.default)(_Text.default).withConfig({
|
|
34
35
|
displayName: "Label__HiddenText",
|
|
35
36
|
componentId: "sc-2nrw50-2"
|
|
36
37
|
})(["", ""], _hideVisually.default);
|
|
37
38
|
|
|
38
39
|
// eslint-disable-next-line react/prop-types
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
40
|
+
const LabelText = _ref3 => {
|
|
41
|
+
let {
|
|
42
|
+
label,
|
|
43
|
+
hideLabel,
|
|
44
|
+
...rest
|
|
45
|
+
} = _ref3;
|
|
46
|
+
const Component = hideLabel ? HiddenText : VisibleText;
|
|
44
47
|
return /*#__PURE__*/_react.default.isValidElement(label) ? /*#__PURE__*/_react.default.createElement(Component, rest, label) : /*#__PURE__*/_react.default.createElement(Component, Object.assign({}, rest, {
|
|
45
48
|
dangerouslySetInnerHTML: {
|
|
46
49
|
__html: label
|
|
@@ -56,12 +59,14 @@ var LabelText = function LabelText(_ref3) {
|
|
|
56
59
|
* @returns {JSX.Element}
|
|
57
60
|
* @constructor
|
|
58
61
|
*/
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
62
|
+
const Label = _ref4 => {
|
|
63
|
+
let {
|
|
64
|
+
children,
|
|
65
|
+
label,
|
|
66
|
+
hideLabel,
|
|
67
|
+
optional,
|
|
68
|
+
...rest
|
|
69
|
+
} = _ref4;
|
|
65
70
|
return /*#__PURE__*/_react.default.createElement(LabelElement, Object.assign({}, rest, {
|
|
66
71
|
optional: optional
|
|
67
72
|
}), /*#__PURE__*/_react.default.createElement(LabelText, {
|
|
@@ -1,60 +1,55 @@
|
|
|
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
|
});
|
|
7
8
|
exports.default = void 0;
|
|
8
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
9
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectWithoutProperties"));
|
|
10
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
10
|
var _Link = _interopRequireWildcard(require("./Link.style"));
|
|
12
11
|
var _allowListed = _interopRequireDefault(require("../../../utils/allowListed"));
|
|
13
12
|
var _internalLinkHelper = require("../../../utils/internalLinkHelper");
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
var _useState = (0, _react.useState)(''),
|
|
30
|
-
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
31
|
-
documentHost = _useState2[0],
|
|
32
|
-
setDocumentHost = _useState2[1];
|
|
13
|
+
let window = '';
|
|
14
|
+
const Link = _ref => {
|
|
15
|
+
let {
|
|
16
|
+
children,
|
|
17
|
+
color,
|
|
18
|
+
href,
|
|
19
|
+
target,
|
|
20
|
+
type,
|
|
21
|
+
home,
|
|
22
|
+
underline,
|
|
23
|
+
icon,
|
|
24
|
+
iconFirst,
|
|
25
|
+
...rest
|
|
26
|
+
} = _ref;
|
|
27
|
+
const [documentHost, setDocumentHost] = (0, _react.useState)('');
|
|
33
28
|
/**
|
|
34
29
|
* If we haven't specifically set the target via props, check if
|
|
35
30
|
* this is an internal link OR on our allowList before making it a '_self' link
|
|
36
31
|
*/
|
|
37
32
|
if (target === null) {
|
|
38
33
|
// Use our helper function to determine the raw domains to compare
|
|
39
|
-
|
|
40
|
-
|
|
34
|
+
const currentDomain = (0, _internalLinkHelper.getDomain)(documentHost);
|
|
35
|
+
const linkDomain = (0, _internalLinkHelper.getDomain)(href);
|
|
41
36
|
|
|
42
37
|
// Additional check for applications that need more control
|
|
43
|
-
|
|
38
|
+
const isallowListOverridden = rest.overrideallowList === true;
|
|
44
39
|
|
|
45
40
|
/**
|
|
46
41
|
* If the link has no domain supplied (likely '/' or '#')
|
|
47
42
|
* OR has the same domain as the current page, don't open
|
|
48
43
|
* in a new tab
|
|
49
44
|
*/
|
|
50
|
-
|
|
51
|
-
|
|
45
|
+
const isExternalLink = linkDomain !== '' && currentDomain !== linkDomain;
|
|
46
|
+
const isallowListed = (0, _allowListed.default)(href);
|
|
52
47
|
window = isExternalLink && (isallowListOverridden || !isallowListed) ? '_blank' : '_self';
|
|
53
48
|
} else {
|
|
54
49
|
window = target === 'blank' ? '_blank' : '_self';
|
|
55
50
|
}
|
|
56
|
-
|
|
57
|
-
(0, _react.useEffect)(
|
|
51
|
+
const hasIcon = icon !== null;
|
|
52
|
+
(0, _react.useEffect)(() => {
|
|
58
53
|
setDocumentHost(document.location.host);
|
|
59
54
|
}, []);
|
|
60
55
|
return /*#__PURE__*/_react.default.createElement(_Link.default, Object.assign({}, rest, {
|