@dnanpm/styleguide 1.8.0 → 2.0.0

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.
Files changed (161) hide show
  1. package/build/cjs/components/Accordion/Accordion.d.ts +50 -0
  2. package/build/cjs/components/Accordion/Accordion.js +52 -0
  3. package/build/cjs/components/Accordion/AccordionItem.d.ts +30 -0
  4. package/build/cjs/components/Accordion/AccordionItem.js +77 -0
  5. package/build/cjs/components/AmountSelector/AmountSelector.js +11 -7
  6. package/build/cjs/components/Buttons/ButtonBasicStyles.d.ts +37 -30
  7. package/build/cjs/components/Buttons/ButtonBasicStyles.js +10 -14
  8. package/build/cjs/components/Buttons/ButtonDefault.js +6 -2
  9. package/build/cjs/components/Buttons/ButtonIconPrimaryStyles.d.ts +37 -30
  10. package/build/cjs/components/Buttons/ButtonIconStyles.d.ts +37 -30
  11. package/build/cjs/components/Buttons/ButtonPrimary.js +6 -2
  12. package/build/cjs/components/Buttons/ButtonPrimaryStyles.d.ts +37 -30
  13. package/build/cjs/components/Buttons/ButtonSecondary.js +7 -3
  14. package/build/cjs/components/Buttons/ButtonSecondaryStyles.d.ts +37 -30
  15. package/build/cjs/components/Buttons/ButtonTertiary.js +7 -3
  16. package/build/cjs/components/Buttons/ButtonTertiaryStyles.d.ts +37 -30
  17. package/build/cjs/components/Buttons/CloseButton.d.ts +37 -30
  18. package/build/cjs/components/Card/Card.js +4 -2
  19. package/build/cjs/components/Card/CardRow.js +3 -3
  20. package/build/cjs/components/Checkbox/Checkbox.d.ts +38 -12
  21. package/build/cjs/components/Checkbox/Checkbox.js +37 -70
  22. package/build/cjs/components/DnaLogo/DnaLogo.d.ts +37 -40
  23. package/build/cjs/components/Footer/Components/FooterComponents.js +3 -2
  24. package/build/cjs/components/Helper/Helper.js +2 -1
  25. package/build/cjs/components/Icon/Icon.d.ts +39 -30
  26. package/build/cjs/components/Icon/Icons.d.ts +1 -4
  27. package/build/cjs/components/Icon/Icons.js +3 -7
  28. package/build/cjs/components/Input/Input.d.ts +102 -13
  29. package/build/cjs/components/Input/Input.js +59 -60
  30. package/build/cjs/components/Label/Label.js +2 -3
  31. package/build/cjs/components/LabelText/LabelText.d.ts +38 -30
  32. package/build/cjs/components/LabelText/LabelText.js +1 -1
  33. package/build/cjs/components/MainNavigation/ChildComponents/BusinessMenu.js +4 -10
  34. package/build/cjs/components/MainNavigation/ChildComponents/DesktopMenu.js +18 -12
  35. package/build/cjs/components/MainNavigation/ChildComponents/HeaderNavigationElements.d.ts +37 -30
  36. package/build/cjs/components/MainNavigation/ChildComponents/LanguageSelector.js +2 -2
  37. package/build/cjs/components/MainNavigation/ChildComponents/LinkModifier.js +2 -2
  38. package/build/cjs/components/MainNavigation/ChildComponents/MainNavTooltipMenuExportedStyles.d.ts +37 -30
  39. package/build/cjs/components/MainNavigation/ChildComponents/MainNavTooltipMenuExportedStyles.js +1 -4
  40. package/build/cjs/components/MainNavigation/ChildComponents/MobileMenu.js +1 -1
  41. package/build/cjs/components/MainNavigation/ChildComponents/Ribbon.js +1 -1
  42. package/build/cjs/components/MainNavigation/MainNavigation.js +1 -1
  43. package/build/cjs/components/MainNavigation/globalNavStyles.d.ts +148 -120
  44. package/build/cjs/components/Notification/Notification.d.ts +36 -17
  45. package/build/cjs/components/Notification/Notification.js +25 -48
  46. package/build/cjs/components/NotificationBadge/NotificationBadge.d.ts +37 -30
  47. package/build/cjs/components/NotificationBadge/NotificationBadge.js +1 -1
  48. package/build/cjs/components/PixelLoader/PixelLoaderStyles.d.ts +74 -60
  49. package/build/cjs/components/ProgressIndicator/ProgressIndicator.js +3 -3
  50. package/build/cjs/components/RadioButton/RadioButton.d.ts +33 -17
  51. package/build/cjs/components/RadioButton/RadioButton.js +12 -57
  52. package/build/cjs/components/ReadMore/ReadMore.js +2 -7
  53. package/build/cjs/components/Ribbon/Ribbon.d.ts +57 -0
  54. package/build/cjs/components/Ribbon/Ribbon.js +80 -0
  55. package/build/cjs/components/Search/Search.js +2 -1
  56. package/build/cjs/components/SecondaryNavigation/SecondaryNavigation.js +2 -2
  57. package/build/cjs/components/Selectbox/Selectbox.d.ts +106 -14
  58. package/build/cjs/components/Selectbox/Selectbox.js +44 -53
  59. package/build/cjs/components/Tabs/Tab.d.ts +37 -30
  60. package/build/cjs/components/Tabs/Tab.js +3 -2
  61. package/build/cjs/components/Tabs/Tabs.d.ts +40 -30
  62. package/build/cjs/components/Textarea/Textarea.js +4 -3
  63. package/build/cjs/components/Tooltip/Tooltip.d.ts +37 -30
  64. package/build/cjs/components/TooltipMenu/ChildComponents/TooltipMenuExportedStyles.d.ts +74 -60
  65. package/build/cjs/components/index.d.ts +4 -1
  66. package/build/cjs/hooks/useElementDimensions.d.ts +5 -0
  67. package/build/cjs/hooks/useElementDimensions.js +37 -0
  68. package/build/cjs/index.js +6 -0
  69. package/build/cjs/themes/globalStyles.d.ts +174 -60
  70. package/build/cjs/themes/globalStyles.js +132 -142
  71. package/build/cjs/themes/styled.d.ts +259 -210
  72. package/build/cjs/themes/theme.d.ts +37 -30
  73. package/build/cjs/themes/themeComponents/buttons.d.ts +1 -6
  74. package/build/cjs/themes/themeComponents/buttons.js +1 -6
  75. package/build/cjs/themes/themeComponents/fontFamily.d.ts +3 -1
  76. package/build/cjs/themes/themeComponents/fontFamily.js +3 -1
  77. package/build/cjs/themes/themeComponents/fontSize.d.ts +18 -15
  78. package/build/cjs/themes/themeComponents/fontSize.js +20 -14
  79. package/build/cjs/themes/themeComponents/lineHeight.d.ts +19 -12
  80. package/build/cjs/themes/themeComponents/lineHeight.js +21 -11
  81. package/build/es/components/Accordion/Accordion.d.ts +50 -0
  82. package/build/es/components/Accordion/Accordion.js +44 -0
  83. package/build/es/components/Accordion/AccordionItem.d.ts +30 -0
  84. package/build/es/components/Accordion/AccordionItem.js +68 -0
  85. package/build/es/components/AmountSelector/AmountSelector.js +11 -7
  86. package/build/es/components/Buttons/ButtonBasicStyles.d.ts +37 -30
  87. package/build/es/components/Buttons/ButtonBasicStyles.js +10 -14
  88. package/build/es/components/Buttons/ButtonDefault.js +6 -2
  89. package/build/es/components/Buttons/ButtonIconPrimaryStyles.d.ts +37 -30
  90. package/build/es/components/Buttons/ButtonIconStyles.d.ts +37 -30
  91. package/build/es/components/Buttons/ButtonPrimary.js +6 -2
  92. package/build/es/components/Buttons/ButtonPrimaryStyles.d.ts +37 -30
  93. package/build/es/components/Buttons/ButtonSecondary.js +7 -3
  94. package/build/es/components/Buttons/ButtonSecondaryStyles.d.ts +37 -30
  95. package/build/es/components/Buttons/ButtonTertiary.js +7 -3
  96. package/build/es/components/Buttons/ButtonTertiaryStyles.d.ts +37 -30
  97. package/build/es/components/Buttons/CloseButton.d.ts +37 -30
  98. package/build/es/components/Card/Card.js +4 -2
  99. package/build/es/components/Card/CardRow.js +3 -3
  100. package/build/es/components/Checkbox/Checkbox.d.ts +38 -12
  101. package/build/es/components/Checkbox/Checkbox.js +39 -72
  102. package/build/es/components/DnaLogo/DnaLogo.d.ts +37 -40
  103. package/build/es/components/Footer/Components/FooterComponents.js +3 -2
  104. package/build/es/components/Helper/Helper.js +2 -1
  105. package/build/es/components/Icon/Icon.d.ts +39 -30
  106. package/build/es/components/Icon/Icons.d.ts +1 -4
  107. package/build/es/components/Icon/Icons.js +3 -7
  108. package/build/es/components/Input/Input.d.ts +102 -13
  109. package/build/es/components/Input/Input.js +59 -60
  110. package/build/es/components/Label/Label.js +2 -3
  111. package/build/es/components/LabelText/LabelText.d.ts +38 -30
  112. package/build/es/components/LabelText/LabelText.js +1 -1
  113. package/build/es/components/MainNavigation/ChildComponents/BusinessMenu.js +4 -10
  114. package/build/es/components/MainNavigation/ChildComponents/DesktopMenu.js +18 -12
  115. package/build/es/components/MainNavigation/ChildComponents/HeaderNavigationElements.d.ts +37 -30
  116. package/build/es/components/MainNavigation/ChildComponents/LanguageSelector.js +2 -2
  117. package/build/es/components/MainNavigation/ChildComponents/LinkModifier.js +2 -2
  118. package/build/es/components/MainNavigation/ChildComponents/MainNavTooltipMenuExportedStyles.d.ts +37 -30
  119. package/build/es/components/MainNavigation/ChildComponents/MainNavTooltipMenuExportedStyles.js +2 -5
  120. package/build/es/components/MainNavigation/ChildComponents/MobileMenu.js +1 -1
  121. package/build/es/components/MainNavigation/ChildComponents/Ribbon.js +1 -1
  122. package/build/es/components/MainNavigation/MainNavigation.js +1 -1
  123. package/build/es/components/MainNavigation/globalNavStyles.d.ts +148 -120
  124. package/build/es/components/Notification/Notification.d.ts +36 -17
  125. package/build/es/components/Notification/Notification.js +25 -48
  126. package/build/es/components/NotificationBadge/NotificationBadge.d.ts +37 -30
  127. package/build/es/components/NotificationBadge/NotificationBadge.js +1 -1
  128. package/build/es/components/PixelLoader/PixelLoaderStyles.d.ts +74 -60
  129. package/build/es/components/ProgressIndicator/ProgressIndicator.js +3 -3
  130. package/build/es/components/RadioButton/RadioButton.d.ts +33 -17
  131. package/build/es/components/RadioButton/RadioButton.js +12 -57
  132. package/build/es/components/ReadMore/ReadMore.js +2 -7
  133. package/build/es/components/Ribbon/Ribbon.d.ts +57 -0
  134. package/build/es/components/Ribbon/Ribbon.js +71 -0
  135. package/build/es/components/Search/Search.js +2 -1
  136. package/build/es/components/SecondaryNavigation/SecondaryNavigation.js +2 -2
  137. package/build/es/components/Selectbox/Selectbox.d.ts +106 -14
  138. package/build/es/components/Selectbox/Selectbox.js +44 -53
  139. package/build/es/components/Tabs/Tab.d.ts +37 -30
  140. package/build/es/components/Tabs/Tab.js +3 -2
  141. package/build/es/components/Tabs/Tabs.d.ts +40 -30
  142. package/build/es/components/Textarea/Textarea.js +4 -3
  143. package/build/es/components/Tooltip/Tooltip.d.ts +37 -30
  144. package/build/es/components/TooltipMenu/ChildComponents/TooltipMenuExportedStyles.d.ts +74 -60
  145. package/build/es/components/index.d.ts +4 -1
  146. package/build/es/hooks/useElementDimensions.d.ts +5 -0
  147. package/build/es/hooks/useElementDimensions.js +33 -0
  148. package/build/es/index.js +3 -0
  149. package/build/es/themes/globalStyles.d.ts +174 -60
  150. package/build/es/themes/globalStyles.js +134 -145
  151. package/build/es/themes/styled.d.ts +259 -210
  152. package/build/es/themes/theme.d.ts +37 -30
  153. package/build/es/themes/themeComponents/buttons.d.ts +1 -6
  154. package/build/es/themes/themeComponents/buttons.js +1 -6
  155. package/build/es/themes/themeComponents/fontFamily.d.ts +3 -1
  156. package/build/es/themes/themeComponents/fontFamily.js +3 -1
  157. package/build/es/themes/themeComponents/fontSize.d.ts +18 -15
  158. package/build/es/themes/themeComponents/fontSize.js +20 -14
  159. package/build/es/themes/themeComponents/lineHeight.d.ts +19 -12
  160. package/build/es/themes/themeComponents/lineHeight.js +21 -11
  161. package/package.json +2 -2
@@ -0,0 +1,50 @@
1
+ import React from 'react';
2
+ export interface Props {
3
+ /**
4
+ * Content of Accordion
5
+ *
6
+ * @type AccordionItem
7
+ */
8
+ children: React.ReactNode;
9
+ /**
10
+ * Allows only one AccordionItem to be opened when set to true
11
+ *
12
+ * @default false
13
+ */
14
+ autoCollapsible?: boolean;
15
+ /**
16
+ * Allows to remove item title highlight when it is in expanded state
17
+ * Removes also highlight of CSS :hover and :active states
18
+ *
19
+ * @default true
20
+ */
21
+ highlightSelected?: boolean;
22
+ /**
23
+ * Allows to expand or collapse the component
24
+ *
25
+ * @default false
26
+ */
27
+ isExpanded?: boolean;
28
+ /**
29
+ * Display close button in the item content
30
+ *
31
+ * @default false
32
+ */
33
+ hasCloseButton?: boolean;
34
+ /**
35
+ * Label to show for the open icon for accessibility
36
+ */
37
+ openLabel?: string;
38
+ /**
39
+ * Label to show for the close button in the content
40
+ */
41
+ closeLabel?: string;
42
+ /**
43
+ * Allows to pass a custom className
44
+ */
45
+ className?: string;
46
+ }
47
+ /** @visibleName Accordion */
48
+ declare const Accordion: ({ autoCollapsible, highlightSelected, hasCloseButton, ...props }: Props) => JSX.Element;
49
+ /** @component */
50
+ export default Accordion;
@@ -0,0 +1,52 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var AccordionItem = require('./AccordionItem.js');
7
+
8
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
+
10
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
11
+
12
+ /** @visibleName Accordion */
13
+ const Accordion = ({ autoCollapsible = false, highlightSelected = true, hasCloseButton = false, ...props }) => {
14
+ const initialItemList = {};
15
+ const getAccordionItemId = (index, title) => `${title.replace(/\s+/g, '')}-${index}`;
16
+ if (props.isExpanded) {
17
+ React__default['default'].Children.map(props.children, (child, index) => {
18
+ if (React__default['default'].isValidElement(child) && child.type === AccordionItem['default']) {
19
+ initialItemList[getAccordionItemId(index, child.props.title)] = Boolean(props.isExpanded);
20
+ }
21
+ });
22
+ }
23
+ const [itemList, setItemList] = React.useState(initialItemList);
24
+ const toggleExpanded = (currentItemId) => {
25
+ const currentItemState = itemList[currentItemId];
26
+ setItemList({
27
+ ...(autoCollapsible ? {} : itemList),
28
+ [currentItemId]: !currentItemState,
29
+ });
30
+ };
31
+ const handleClick = (e) => {
32
+ toggleExpanded(e.currentTarget.parentElement.id);
33
+ };
34
+ const handleKeyDown = (e) => {
35
+ if (e.key === 'Enter' || e.key === ' ') {
36
+ e.preventDefault();
37
+ toggleExpanded(e.currentTarget.parentElement.id);
38
+ }
39
+ };
40
+ const accordionItems = React__default['default'].Children.map(props.children, (child, index) => {
41
+ if (React__default['default'].isValidElement(child) && child.type === AccordionItem['default']) {
42
+ const id = getAccordionItemId(index, child.props.title);
43
+ return (React__default['default'].createElement(AccordionItem['default'], Object.assign({ id: id, key: id, title: child.props.title, isExpanded: itemList[id], hasCloseButton: hasCloseButton, highlightSelected: highlightSelected, openLabel: props.openLabel, closeLabel: props.closeLabel, onClick: handleClick, onKeyDown: handleKeyDown }, child.props), child.props.children));
44
+ }
45
+ });
46
+ if (!accordionItems) {
47
+ return React__default['default'].createElement(React__default['default'].Fragment, null);
48
+ }
49
+ return React__default['default'].createElement("div", { className: props.className }, accordionItems);
50
+ };
51
+
52
+ exports.default = Accordion;
@@ -0,0 +1,30 @@
1
+ import React from 'react';
2
+ import { Props as AccordionProps } from './Accordion';
3
+ interface Props extends Omit<AccordionProps, 'children' | 'autoCollapsible'> {
4
+ /**
5
+ * Accordion item title
6
+ */
7
+ title: string;
8
+ /**
9
+ * Unique ID for the component
10
+ */
11
+ id?: string;
12
+ /**
13
+ * Content of Accordion Item
14
+ */
15
+ children?: React.ReactNode;
16
+ /**
17
+ * On component title and close button mouse click callback
18
+ * Use `e.currentTarget.parentElement` to get AccordionItem element
19
+ */
20
+ onClick?: (e: React.MouseEvent<HTMLElement>) => void;
21
+ /**
22
+ * On component title and close button keyboard key down callback
23
+ * Use `e.currentTarget.parentElement` to get AccordionItem element
24
+ */
25
+ onKeyDown?: (e: React.KeyboardEvent<HTMLElement>) => void;
26
+ }
27
+ /** @visibleName Accordion Item */
28
+ declare const AccordionItem: ({ hasCloseButton, highlightSelected, ...props }: Props) => JSX.Element;
29
+ /** @component */
30
+ export default AccordionItem;
@@ -0,0 +1,77 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var styled = require('styled-components');
7
+ var useElementDimensions = require('../../hooks/useElementDimensions.js');
8
+ var styledUtils = require('../../utils/styledUtils.js');
9
+ var Icon = require('../Icon/Icon.js');
10
+
11
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
+
13
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
14
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
15
+
16
+ const AccordionItemContainer = styled__default['default'].div `
17
+ margin: ${p => `0 ${styledUtils.getDividedSize(p.theme.base.baseHeight, 2.5)}}`};
18
+ border-bottom: 1px solid
19
+ ${p => (p.isExpanded && p.highlightSelected ? p.theme.color.hotPink : p.theme.color.gray15)};
20
+ `;
21
+ const AccordionItemTitle = styled__default['default'].div `
22
+ font-size: ${p => p.theme.fontSize.default};
23
+ font-weight: ${p => p.theme.fontWeight.bold};
24
+ display: flex;
25
+ justify-content: space-between;
26
+ flex-direction: row;
27
+ cursor: pointer;
28
+ padding: ${p => styledUtils.getMultipliedSize(p.theme.base.baseHeight, 1.6)}
29
+ ${p => styledUtils.getMultipliedSize(p.theme.base.baseHeight, 2)};
30
+ color: ${p => p.isExpanded && p.highlightSelected ? p.theme.color.hotPink : p.theme.color.text};
31
+ transition: color 0.2s;
32
+ ${p => p.highlightSelected &&
33
+ styled.css `
34
+ &:hover,
35
+ &:active {
36
+ color: ${p.theme.color.hotPink};
37
+ text-decoration: none;
38
+ }
39
+ `}
40
+ `;
41
+ const AccordionItemContentWrapper = styled__default['default'].div `
42
+ overflow: hidden;
43
+ color: ${p => p.theme.color.slateGray};
44
+ transition: all 0.2s ease;
45
+ height: ${p => (p.isExpanded ? p.maxHeight / 16 + 1.25 : 0)}rem;
46
+ padding: 0 ${p => styledUtils.getMultipliedSize(p.theme.base.baseHeight, 2)};
47
+ visibility: ${p => (p.isExpanded ? 'visible' : 'hidden')};
48
+ `;
49
+ const AccordionItemContent = styled__default['default'].div `
50
+ padding-bottom: ${p => styledUtils.getMultipliedSize(p.theme.base.baseHeight, 1.6)};
51
+ `;
52
+ const AccordionItemCloseButton = styled__default['default'].div `
53
+ display: flex;
54
+ justify-content: flex-end;
55
+ line-height: ${p => p.theme.lineHeight.default};
56
+ margin-bottom: ${p => styledUtils.getMultipliedSize(p.theme.base.baseHeight, 1.6)};
57
+ padding: 0 ${p => styledUtils.getMultipliedSize(p.theme.base.baseHeight, 2)};
58
+ gap: ${p => styledUtils.getMultipliedSize(p.theme.base.baseHeight, 1)};
59
+ color: ${p => p.theme.color.text};
60
+ cursor: pointer;
61
+ `;
62
+ /** @visibleName Accordion Item */
63
+ const AccordionItem = ({ hasCloseButton = false, highlightSelected = true, ...props }) => {
64
+ // Get height when element dimensions change
65
+ const { height: contentHeight, ref: contentRef } = useElementDimensions['default']();
66
+ return (React__default['default'].createElement(AccordionItemContainer, { id: props.id, "aria-expanded": Boolean(props.isExpanded), className: props.className, isExpanded: Boolean(props.isExpanded), highlightSelected: highlightSelected },
67
+ React__default['default'].createElement(AccordionItemTitle, { tabIndex: 0, onClick: props.onClick, onKeyDown: props.onKeyDown, isExpanded: Boolean(props.isExpanded), highlightSelected: highlightSelected, role: "button" },
68
+ props.title,
69
+ Boolean(props.isExpanded) ? (React__default['default'].createElement(Icon['default'], { name: "hlChevronUp", size: "1.5rem", right: true, "aria-label": props.closeLabel })) : (React__default['default'].createElement(Icon['default'], { name: "hlChevronDown", size: "1.5rem", right: true, "aria-label": props.openLabel }))),
70
+ React__default['default'].createElement(AccordionItemContentWrapper, { maxHeight: contentHeight, isExpanded: props.isExpanded },
71
+ React__default['default'].createElement(AccordionItemContent, { ref: contentRef }, props.children)),
72
+ hasCloseButton && props.isExpanded && (React__default['default'].createElement(AccordionItemCloseButton, { tabIndex: 0, onClick: props.onClick, onKeyDown: props.onKeyDown, "aria-label": props.closeLabel, role: "button" },
73
+ React__default['default'].createElement("span", null, props.closeLabel),
74
+ React__default['default'].createElement(Icon['default'], { name: "hlX", size: "1.5rem" })))));
75
+ };
76
+
77
+ exports.default = AccordionItem;
@@ -6,11 +6,10 @@ var React = require('react');
6
6
  var styled = require('../../themes/styled.js');
7
7
  var theme = require('../../themes/theme.js');
8
8
  var styledUtils = require('../../utils/styledUtils.js');
9
- require('../Buttons/ButtonBasicStyles.js');
10
- require('../PixelLoader/PixelLoaderStyles.js');
11
- require('../Buttons/ButtonPrimaryStyles.js');
9
+ require('../Buttons/ButtonDefault.js');
10
+ require('../Buttons/ButtonPrimary.js');
12
11
  var ButtonSecondary = require('../Buttons/ButtonSecondary.js');
13
- require('../Buttons/ButtonTertiaryStyles.js');
12
+ require('../Buttons/ButtonTertiary.js');
14
13
  require('../Buttons/ButtonRoundStyles.js');
15
14
  require('../Buttons/CloseButton.js');
16
15
  require('../Buttons/ButtonIconStyles.js');
@@ -28,10 +27,14 @@ const Container = styled['default'].div `
28
27
  input {
29
28
  width: ${styledUtils.getMultipliedSize(theme['default'].base.baseWidth, 4)};
30
29
  border: 0 none;
31
- text-align: right;
30
+ text-align: center;
32
31
  outline: none;
33
32
  -webkit-appearance: none;
34
33
  -moz-appearance: textfield;
34
+ &::-webkit-outer-spin-button,
35
+ &::-webkit-inner-spin-button {
36
+ display: none;
37
+ }
35
38
  }
36
39
  `;
37
40
  const StyledButtonSecondary = styled['default'](ButtonSecondary['default']) `
@@ -69,10 +72,11 @@ const AmountSelector = ({ onChange, value = 1, step = 1, min = 1, max, disabled
69
72
  }
70
73
  };
71
74
  return (React__default['default'].createElement(Container, { disabled: disabled, "data-testid": dataTestId, className: props.className },
72
- React__default['default'].createElement(StyledButtonSecondary, { disabled: disabled, onClick: decrease },
75
+ React__default['default'].createElement(StyledButtonSecondary, { disabled: disabled, onClick: decrease, "data-testid": dataTestId &&
76
+ `${dataTestId}${props.removable && isMinReached(value - step) ? '-remove' : '-decrease'}` },
73
77
  React__default['default'].createElement(Icon['default'], { color: theme['default'].color.black, name: props.removable && isMinReached(value - step) ? 'hlTrash' : 'hlMinus' })),
74
78
  React__default['default'].createElement("input", { id: props.id, name: props.name, type: "number", onChange: handleChange, value: value, readOnly: readonly || disabled, disabled: disabled }),
75
- React__default['default'].createElement(StyledButtonSecondary, { disabled: disabled, onClick: increase },
79
+ React__default['default'].createElement(StyledButtonSecondary, { disabled: disabled, onClick: increase, "data-testid": dataTestId ? `${dataTestId}-increase` : undefined },
76
80
  React__default['default'].createElement(Icon['default'], { color: theme['default'].color.black, name: "hlPlus" }))));
77
81
  };
78
82
 
@@ -18,12 +18,7 @@ declare const ButtonBasicStyle: import("styled-components").StyledComponent<"but
18
18
  };
19
19
  breakpoints: import("../../themes/themeComponents/breakpoints").ViewBreakpoints;
20
20
  button: {
21
- buttonBorderWidth: string;
22
- buttonPadding: string;
23
- smallButtonPadding: string;
24
- buttonLineHeight: string;
25
- buttonWidth: string;
26
- buttonSmallWidth: string;
21
+ border: string;
27
22
  };
28
23
  color: {
29
24
  black: string;
@@ -54,22 +49,27 @@ declare const ButtonBasicStyle: import("styled-components").StyledComponent<"but
54
49
  gray5: string;
55
50
  };
56
51
  fontFamily: {
57
- baseFontFamily: string;
52
+ default: string;
53
+ heading: string;
54
+ numerals: string;
58
55
  };
59
56
  fontSize: {
60
- defaultFontSize: string;
61
- smallFontSize: string;
62
- extraSmallFontSize: string;
63
- xsFontSize: string;
64
- xxsFontSize: string;
65
- h1FontSize: string;
66
- h2FontSize: string;
67
- h2MobileFontSize: string;
68
- h3FontSize: string;
69
- h4FontSize: string;
70
- h5FontSize: string;
71
- heroBannerTitleFontSize: string;
72
- heroBannerTitleMobileFontSize: string;
57
+ default: string;
58
+ xl: string;
59
+ l: string;
60
+ s: string;
61
+ xs: string;
62
+ h1XL: string;
63
+ h1L: string;
64
+ h1M: string;
65
+ h1S: string;
66
+ h2M: string;
67
+ h2S: string;
68
+ h3: string;
69
+ h4: string;
70
+ h5: string;
71
+ h1: string;
72
+ h2: string;
73
73
  };
74
74
  fontWeight: {
75
75
  book: number;
@@ -85,16 +85,23 @@ declare const ButtonBasicStyle: import("styled-components").StyledComponent<"but
85
85
  gutter: string;
86
86
  };
87
87
  lineHeight: {
88
- defaultLineHeight: string;
89
- paragraphLineHeight: string;
90
- heroBannerLineHeight: string;
91
- heroBannerMobileLineHeight: string;
92
- h1LineHeight: string;
93
- h2LineHeight: string;
94
- h2MobileLineHeight: string;
95
- h3LineHeight: string;
96
- h4LineHeight: string;
97
- h5LineHeight: string;
88
+ default: string;
89
+ xl: string;
90
+ s: string;
91
+ xs: string;
92
+ xxs: string;
93
+ auto: string;
94
+ h1XL: string;
95
+ h1L: string;
96
+ h1M: string;
97
+ h1S: string;
98
+ h2M: string;
99
+ h2S: string;
100
+ h3: string;
101
+ h4: string;
102
+ h5: string;
103
+ h1: string;
104
+ h2: string;
98
105
  };
99
106
  media: Record<string | number, (l: TemplateStringsArray, ...p: any[]) => string>;
100
107
  }, ButtonProps, never>;
@@ -3,30 +3,28 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var styled = require('../../themes/styled.js');
6
+ var styledUtils = require('../../utils/styledUtils.js');
6
7
 
7
8
  const ButtonBasicStyle = styled['default'].button `
8
9
  position: relative;
9
- padding: ${props => props && props.small
10
- ? props.theme.button.smallButtonPadding
11
- : props.theme.button.buttonPadding};
10
+ padding: ${props => `${styledUtils.getMultipliedSize(props.theme.base.baseWidth, 0.8)}
11
+ ${styledUtils.getMultipliedSize(props.theme.base.baseWidth, 1)}`};
12
12
  text-decoration: none;
13
13
  display: inline-block;
14
14
  border-style: solid;
15
- border-width: ${props => props.theme.button.buttonBorderWidth};
15
+ border-width: ${props => props.theme.button.border};
16
16
  border-color: ${props => props && props.darkBg ? props.theme.color.white : props.theme.color.black};
17
17
  box-sizing: border-box;
18
18
  background-color: transparent;
19
19
  color: ${props => (props && props.darkBg ? props.theme.color.white : props.theme.color.black)};
20
- font-family: ${props => props.theme.fontFamily.baseFontFamily};
20
+ font-family: ${props => props.theme.fontFamily.default};
21
21
  font-weight: ${props => props.theme.fontWeight.bold};
22
- line-height: ${props => props.theme.button.buttonLineHeight};
23
- font-size: ${props => props.theme.fontSize.defaultFontSize};
22
+ font-size: ${props => props && props.small ? props.theme.fontSize.s : props.theme.fontSize.default};
23
+ line-height: ${props => props && props.small ? props.theme.lineHeight.s : props.theme.lineHeight.default};
24
24
  outline: none;
25
25
  text-align: center;
26
26
  vertical-align: middle;
27
- min-width: ${props => props && props.small
28
- ? props.theme.button.buttonSmallWidth
29
- : props.theme.button.buttonWidth};
27
+ min-width: ${props => styledUtils.getMultipliedSize(props.theme.base.baseWidth, props && props.small ? 10.5 : 12.5)};
30
28
  width: ${props => (props && props.fullWidth ? '100%' : 'auto')};
31
29
  cursor: pointer;
32
30
  max-width: 100%;
@@ -36,7 +34,7 @@ const ButtonBasicStyle = styled['default'].button `
36
34
  outline: none;
37
35
  color: ${props => props && props.darkBg ? props.theme.color.white : props.theme.color.black};
38
36
  span {
39
- border-bottom: ${props => `${props.theme.button.buttonBorderWidth} solid`};
37
+ border-bottom: ${props => `${props.theme.button.border} solid`};
40
38
  }
41
39
  }
42
40
  &:hover {
@@ -66,9 +64,7 @@ const ButtonBasicStyle = styled['default'].button `
66
64
 
67
65
  span {
68
66
  border-bottom: 0;
69
- font-size: ${props => props && props.small
70
- ? props.theme.fontSize.smallFontSize
71
- : props.theme.fontSize.defaultFontSize};
67
+ font-size: ${props => props && props.small ? props.theme.fontSize.s : props.theme.fontSize.default};
72
68
  }
73
69
  `;
74
70
 
@@ -3,14 +3,18 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
- var ButtonBasicStyles = require('./ButtonBasicStyles.js');
6
+ var styled = require('../../themes/styled.js');
7
7
  var PixelLoader = require('../PixelLoader/PixelLoader.js');
8
+ var ButtonBasicStyles = require('./ButtonBasicStyles.js');
8
9
 
9
10
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
11
 
11
12
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
12
13
 
13
14
  const noop = () => { }; // tslint:disable-line
15
+ const StyledPixelLoader = styled['default'](PixelLoader.PixelLoader) `
16
+ display: inline-flex;
17
+ `;
14
18
  /** @visibleName Buttons */
15
19
  const Button = (props) => {
16
20
  const { children, className, fullWidth, small, loading = false, darkBg, onClick, onMouseDown, disabled = false, 'data-testid': dataTestId, 'data-no-close': dataNoClose, 'data-track-value': dataTrackValue, type, } = props;
@@ -20,7 +24,7 @@ const Button = (props) => {
20
24
  // https://github.com/styled-components/styled-components/pull/2093
21
25
  loading: loading ? loading.toString() : undefined, darkBg: darkBg, disabled: disabled, onClick: !disabled || !loading ? onClick : noop, onMouseDown: (!disabled || !loading) && onMouseDown ? onMouseDown : noop, className: className, "data-testid": dataTestId, "data-no-close": dataNoClose, "data-track-value": dataTrackValue, type: type },
22
26
  !loading && (React__default['default'].createElement("span", { "data-testid": dataTestId && `${dataTestId}-text`, "data-no-close": dataNoClose }, children)),
23
- loading && React__default['default'].createElement(PixelLoader.PixelLoader, null)));
27
+ loading && React__default['default'].createElement(StyledPixelLoader, null)));
24
28
  };
25
29
 
26
30
  exports.Button = Button;
@@ -11,12 +11,7 @@ declare const ButtonIconPrimaryStyles: import("styled-components").StyledCompone
11
11
  };
12
12
  breakpoints: import("../../themes/themeComponents/breakpoints").ViewBreakpoints;
13
13
  button: {
14
- buttonBorderWidth: string;
15
- buttonPadding: string;
16
- smallButtonPadding: string;
17
- buttonLineHeight: string;
18
- buttonWidth: string;
19
- buttonSmallWidth: string;
14
+ border: string;
20
15
  };
21
16
  color: {
22
17
  black: string;
@@ -47,22 +42,27 @@ declare const ButtonIconPrimaryStyles: import("styled-components").StyledCompone
47
42
  gray5: string;
48
43
  };
49
44
  fontFamily: {
50
- baseFontFamily: string;
45
+ default: string;
46
+ heading: string;
47
+ numerals: string;
51
48
  };
52
49
  fontSize: {
53
- defaultFontSize: string;
54
- smallFontSize: string;
55
- extraSmallFontSize: string;
56
- xsFontSize: string;
57
- xxsFontSize: string;
58
- h1FontSize: string;
59
- h2FontSize: string;
60
- h2MobileFontSize: string;
61
- h3FontSize: string;
62
- h4FontSize: string;
63
- h5FontSize: string;
64
- heroBannerTitleFontSize: string;
65
- heroBannerTitleMobileFontSize: string;
50
+ default: string;
51
+ xl: string;
52
+ l: string;
53
+ s: string;
54
+ xs: string;
55
+ h1XL: string;
56
+ h1L: string;
57
+ h1M: string;
58
+ h1S: string;
59
+ h2M: string;
60
+ h2S: string;
61
+ h3: string;
62
+ h4: string;
63
+ h5: string;
64
+ h1: string;
65
+ h2: string;
66
66
  };
67
67
  fontWeight: {
68
68
  book: number;
@@ -78,16 +78,23 @@ declare const ButtonIconPrimaryStyles: import("styled-components").StyledCompone
78
78
  gutter: string;
79
79
  };
80
80
  lineHeight: {
81
- defaultLineHeight: string;
82
- paragraphLineHeight: string;
83
- heroBannerLineHeight: string;
84
- heroBannerMobileLineHeight: string;
85
- h1LineHeight: string;
86
- h2LineHeight: string;
87
- h2MobileLineHeight: string;
88
- h3LineHeight: string;
89
- h4LineHeight: string;
90
- h5LineHeight: string;
81
+ default: string;
82
+ xl: string;
83
+ s: string;
84
+ xs: string;
85
+ xxs: string;
86
+ auto: string;
87
+ h1XL: string;
88
+ h1L: string;
89
+ h1M: string;
90
+ h1S: string;
91
+ h2M: string;
92
+ h2S: string;
93
+ h3: string;
94
+ h4: string;
95
+ h5: string;
96
+ h1: string;
97
+ h2: string;
91
98
  };
92
99
  media: Record<string | number, (l: TemplateStringsArray, ...p: any[]) => string>;
93
100
  }, import("./ButtonBasicStyles").ButtonProps & {
@@ -11,12 +11,7 @@ declare const ButtonIconStyles: import("styled-components").StyledComponent<"but
11
11
  };
12
12
  breakpoints: import("../../themes/themeComponents/breakpoints").ViewBreakpoints;
13
13
  button: {
14
- buttonBorderWidth: string;
15
- buttonPadding: string;
16
- smallButtonPadding: string;
17
- buttonLineHeight: string;
18
- buttonWidth: string;
19
- buttonSmallWidth: string;
14
+ border: string;
20
15
  };
21
16
  color: {
22
17
  black: string;
@@ -47,22 +42,27 @@ declare const ButtonIconStyles: import("styled-components").StyledComponent<"but
47
42
  gray5: string;
48
43
  };
49
44
  fontFamily: {
50
- baseFontFamily: string;
45
+ default: string;
46
+ heading: string;
47
+ numerals: string;
51
48
  };
52
49
  fontSize: {
53
- defaultFontSize: string;
54
- smallFontSize: string;
55
- extraSmallFontSize: string;
56
- xsFontSize: string;
57
- xxsFontSize: string;
58
- h1FontSize: string;
59
- h2FontSize: string;
60
- h2MobileFontSize: string;
61
- h3FontSize: string;
62
- h4FontSize: string;
63
- h5FontSize: string;
64
- heroBannerTitleFontSize: string;
65
- heroBannerTitleMobileFontSize: string;
50
+ default: string;
51
+ xl: string;
52
+ l: string;
53
+ s: string;
54
+ xs: string;
55
+ h1XL: string;
56
+ h1L: string;
57
+ h1M: string;
58
+ h1S: string;
59
+ h2M: string;
60
+ h2S: string;
61
+ h3: string;
62
+ h4: string;
63
+ h5: string;
64
+ h1: string;
65
+ h2: string;
66
66
  };
67
67
  fontWeight: {
68
68
  book: number;
@@ -78,16 +78,23 @@ declare const ButtonIconStyles: import("styled-components").StyledComponent<"but
78
78
  gutter: string;
79
79
  };
80
80
  lineHeight: {
81
- defaultLineHeight: string;
82
- paragraphLineHeight: string;
83
- heroBannerLineHeight: string;
84
- heroBannerMobileLineHeight: string;
85
- h1LineHeight: string;
86
- h2LineHeight: string;
87
- h2MobileLineHeight: string;
88
- h3LineHeight: string;
89
- h4LineHeight: string;
90
- h5LineHeight: string;
81
+ default: string;
82
+ xl: string;
83
+ s: string;
84
+ xs: string;
85
+ xxs: string;
86
+ auto: string;
87
+ h1XL: string;
88
+ h1L: string;
89
+ h1M: string;
90
+ h1S: string;
91
+ h2M: string;
92
+ h2S: string;
93
+ h3: string;
94
+ h4: string;
95
+ h5: string;
96
+ h1: string;
97
+ h2: string;
91
98
  };
92
99
  media: Record<string | number, (l: TemplateStringsArray, ...p: any[]) => string>;
93
100
  }, import("./ButtonBasicStyles").ButtonProps & {
@@ -3,14 +3,18 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
- var ButtonPrimaryStyles = require('./ButtonPrimaryStyles.js');
6
+ var styled = require('../../themes/styled.js');
7
7
  var PixelLoader = require('../PixelLoader/PixelLoader.js');
8
+ var ButtonPrimaryStyles = require('./ButtonPrimaryStyles.js');
8
9
 
9
10
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
11
 
11
12
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
12
13
 
13
14
  const noop = () => { }; // tslint:disable-line
15
+ const StyledPixelLoader = styled['default'](PixelLoader.PixelLoader) `
16
+ display: inline-flex;
17
+ `;
14
18
  /** @visibleName Button primary */
15
19
  const ButtonPrimary = (props) => {
16
20
  const { children, fullWidth, small, loading = false, darkBg, onClick, onMouseDown, disabled = false, className, 'data-testid': dataTestId, 'data-no-close': dataNoClose, 'data-track-value': dataTrackValue, type, } = props;
@@ -20,7 +24,7 @@ const ButtonPrimary = (props) => {
20
24
  // https://github.com/styled-components/styled-components/pull/2093
21
25
  loading: loading ? loading.toString() : undefined, darkBg: darkBg, disabled: disabled, onClick: !disabled || !loading ? onClick : noop, onMouseDown: (!disabled || !loading) && onMouseDown ? onMouseDown : noop, className: className, "data-testid": dataTestId, "data-no-close": dataNoClose, "data-track-value": dataTrackValue, type: type },
22
26
  !loading && (React__default['default'].createElement("span", { "data-testid": dataTestId && `${dataTestId}-text`, "data-no-close": dataNoClose }, children)),
23
- loading && React__default['default'].createElement(PixelLoader.PixelLoader, null)));
27
+ loading && React__default['default'].createElement(StyledPixelLoader, null)));
24
28
  };
25
29
 
26
30
  exports.default = ButtonPrimary;