@norges-domstoler/dds-components 9.2.0-beta.0 → 9.2.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 (216) hide show
  1. package/README.md +2 -1
  2. package/dist/assets/svg/bullets/jordskifterett_bullet1.svg.js +2 -2
  3. package/dist/cjs/components/Breadcrumbs/Breadcrumb.tokens.d.ts +2 -8
  4. package/dist/cjs/components/Button/Button.stories.d.ts +4 -4
  5. package/dist/cjs/components/Button/Button.styles.d.ts +1 -0
  6. package/dist/cjs/components/Button/Button.tokens.d.ts +294 -165
  7. package/dist/cjs/components/Card/Card.tokens.d.ts +17 -16
  8. package/dist/cjs/components/Card/CardAccordion/CardAccordion.tokens.d.ts +28 -0
  9. package/dist/cjs/components/Checkbox/Checkbox.stories.d.ts +2 -2
  10. package/dist/cjs/components/Checkbox/CheckboxGroup.d.ts +1 -3
  11. package/dist/cjs/components/Chip/Chip.tokens.d.ts +8 -6
  12. package/dist/cjs/components/DescriptionList/DescriptionList.tokens.d.ts +6 -36
  13. package/dist/cjs/components/Divider/Divider.tokens.d.ts +11 -6
  14. package/dist/cjs/components/Drawer/Drawer.tokens.d.ts +3 -11
  15. package/dist/cjs/components/GlobalMessage/GlobalMessage.tokens.d.ts +24 -22
  16. package/dist/cjs/components/Grid/Grid.d.ts +8 -7
  17. package/dist/cjs/components/Grid/Grid.tokens.d.ts +5 -5
  18. package/dist/cjs/components/InternalHeader/InternalHeader.styles.d.ts +3 -2
  19. package/dist/cjs/components/InternalHeader/InternalHeader.tokens.d.ts +4 -9
  20. package/dist/cjs/components/List/List.d.ts +1 -1
  21. package/dist/cjs/components/List/List.tokens.d.ts +21 -9
  22. package/dist/cjs/components/LocalMessage/LocalMessage.tokens.d.ts +49 -53
  23. package/dist/cjs/components/Modal/Modal.tokens.d.ts +5 -6
  24. package/dist/cjs/components/OverflowMenu/OverflowMenu.d.ts +4 -3
  25. package/dist/cjs/components/OverflowMenu/OverflowMenu.stories.d.ts +4 -3
  26. package/dist/cjs/components/OverflowMenu/OverflowMenu.tokens.d.ts +2 -8
  27. package/dist/cjs/components/OverflowMenu/OverflowMenu.types.d.ts +8 -6
  28. package/dist/cjs/components/Pagination/Pagination.tokens.d.ts +7 -8
  29. package/dist/cjs/components/Popover/Popover.tokens.d.ts +0 -1
  30. package/dist/cjs/components/ProgressTracker/ProgressTracker.tokens.d.ts +9 -6
  31. package/dist/cjs/components/RadioButton/RadioButton.stories.d.ts +4 -4
  32. package/dist/cjs/components/RadioButton/RadioButtonGroup.d.ts +2 -4
  33. package/dist/cjs/components/RadioButton/RadioButtonGroup.stories.d.ts +1 -1
  34. package/dist/cjs/components/Search/Search.tokens.d.ts +5 -24
  35. package/dist/cjs/components/Select/Select.tokens.d.ts +14 -127
  36. package/dist/cjs/components/SkipToContent/SkipToContent.d.ts +2 -2
  37. package/dist/cjs/components/SkipToContent/SkipToContent.stories.d.ts +1 -1
  38. package/dist/cjs/components/SkipToContent/SkipToContent.tokens.d.ts +5 -10
  39. package/dist/cjs/components/SplitButton/SplitButton.d.ts +11 -0
  40. package/dist/cjs/components/SplitButton/SplitButton.stories.d.ts +9 -0
  41. package/dist/cjs/components/SplitButton/index.d.ts +1 -0
  42. package/dist/cjs/components/Table/Table.tokens.d.ts +0 -19
  43. package/dist/cjs/components/Tabs/Tabs.tokens.d.ts +21 -22
  44. package/dist/cjs/components/Tag/Tag.d.ts +1 -1
  45. package/dist/cjs/components/Tag/Tag.tokens.d.ts +19 -14
  46. package/dist/cjs/components/TextInput/TextInput.tokens.d.ts +0 -3
  47. package/dist/cjs/components/ToggleBar/ToggleBar.tokens.d.ts +5 -32
  48. package/dist/cjs/components/ToggleButton/ToggleButton.stories.d.ts +2 -2
  49. package/dist/cjs/components/ToggleButton/ToggleButton.tokens.d.ts +23 -13
  50. package/dist/cjs/components/Tooltip/Tooltip.stories.d.ts +2 -2
  51. package/dist/cjs/components/Tooltip/Tooltip.styles.d.ts +4 -1
  52. package/dist/cjs/components/Tooltip/Tooltip.tokens.d.ts +1 -2
  53. package/dist/cjs/components/Typography/Typography.utils.d.ts +195 -1
  54. package/dist/cjs/helpers/Input/Input.tokens.d.ts +2 -68
  55. package/dist/cjs/helpers/Input/Input.types.d.ts +4 -0
  56. package/dist/cjs/helpers/SelectionControl/SelectionControl.styles.d.ts +5 -0
  57. package/dist/cjs/helpers/SelectionControl/SelectionControl.tokens.d.ts +11 -0
  58. package/dist/cjs/helpers/TextOverflowEllipsis/TextOverflowEllipsis.d.ts +2 -0
  59. package/dist/cjs/helpers/TextOverflowEllipsis/index.d.ts +1 -0
  60. package/dist/cjs/index.d.ts +1 -0
  61. package/dist/cjs/index.js +1475 -1823
  62. package/dist/cjs/utils/color.d.ts +1 -1
  63. package/dist/components/Breadcrumbs/Breadcrumb.tokens.d.ts +2 -8
  64. package/dist/components/Breadcrumbs/Breadcrumb.tokens.js +3 -4
  65. package/dist/components/Breadcrumbs/Breadcrumbs.js +3 -2
  66. package/dist/components/Button/Button.js +7 -4
  67. package/dist/components/Button/Button.stories.d.ts +4 -4
  68. package/dist/components/Button/Button.styles.d.ts +1 -0
  69. package/dist/components/Button/Button.styles.js +49 -24
  70. package/dist/components/Button/Button.tokens.d.ts +294 -165
  71. package/dist/components/Button/Button.tokens.js +232 -349
  72. package/dist/components/Card/Card.js +6 -5
  73. package/dist/components/Card/Card.tokens.d.ts +17 -16
  74. package/dist/components/Card/Card.tokens.js +26 -54
  75. package/dist/components/Card/CardAccordion/CardAccordion.tokens.d.ts +28 -0
  76. package/dist/components/Card/CardAccordion/CardAccordion.tokens.js +37 -0
  77. package/dist/components/Card/CardAccordion/CardAccordionBody.js +4 -3
  78. package/dist/components/Card/CardAccordion/CardAccordionHeader.js +9 -6
  79. package/dist/components/Checkbox/Checkbox.stories.d.ts +2 -2
  80. package/dist/components/Checkbox/CheckboxGroup.d.ts +1 -3
  81. package/dist/components/Checkbox/CheckboxGroup.js +3 -16
  82. package/dist/components/Chip/Chip.js +9 -9
  83. package/dist/components/Chip/Chip.tokens.d.ts +8 -6
  84. package/dist/components/Chip/Chip.tokens.js +8 -25
  85. package/dist/components/Chip/ChipGroup.js +1 -1
  86. package/dist/components/DescriptionList/DescriptionList.js +3 -2
  87. package/dist/components/DescriptionList/DescriptionList.tokens.d.ts +6 -36
  88. package/dist/components/DescriptionList/DescriptionList.tokens.js +7 -18
  89. package/dist/components/DescriptionList/DescriptionListDesc.js +3 -2
  90. package/dist/components/Divider/Divider.js +6 -6
  91. package/dist/components/Divider/Divider.tokens.d.ts +11 -6
  92. package/dist/components/Divider/Divider.tokens.js +16 -16
  93. package/dist/components/Drawer/Drawer.js +11 -4
  94. package/dist/components/Drawer/Drawer.tokens.d.ts +3 -11
  95. package/dist/components/Drawer/Drawer.tokens.js +10 -26
  96. package/dist/components/GlobalMessage/GlobalMessage.js +13 -10
  97. package/dist/components/GlobalMessage/GlobalMessage.tokens.d.ts +24 -22
  98. package/dist/components/GlobalMessage/GlobalMessage.tokens.js +45 -64
  99. package/dist/components/Grid/Grid.d.ts +8 -7
  100. package/dist/components/Grid/Grid.js +7 -5
  101. package/dist/components/Grid/Grid.tokens.d.ts +5 -5
  102. package/dist/components/Grid/Grid.tokens.js +5 -5
  103. package/dist/components/InternalHeader/InternalHeader.styles.d.ts +3 -2
  104. package/dist/components/InternalHeader/InternalHeader.tokens.d.ts +4 -9
  105. package/dist/components/InternalHeader/InternalHeader.tokens.js +6 -6
  106. package/dist/components/InternalHeader/NavigationItem.js +3 -2
  107. package/dist/components/List/List.d.ts +1 -1
  108. package/dist/components/List/List.js +8 -7
  109. package/dist/components/List/List.tokens.d.ts +21 -9
  110. package/dist/components/List/List.tokens.js +26 -20
  111. package/dist/components/List/ListItem.js +2 -2
  112. package/dist/components/LocalMessage/LocalMessage.js +19 -15
  113. package/dist/components/LocalMessage/LocalMessage.tokens.d.ts +49 -53
  114. package/dist/components/LocalMessage/LocalMessage.tokens.js +94 -127
  115. package/dist/components/Modal/Modal.js +9 -5
  116. package/dist/components/Modal/Modal.tokens.d.ts +5 -6
  117. package/dist/components/Modal/Modal.tokens.js +11 -31
  118. package/dist/components/Modal/ModalActions.js +1 -1
  119. package/dist/components/OverflowMenu/OverflowMenu.d.ts +4 -3
  120. package/dist/components/OverflowMenu/OverflowMenu.js +12 -3
  121. package/dist/components/OverflowMenu/OverflowMenu.stories.d.ts +4 -3
  122. package/dist/components/OverflowMenu/OverflowMenu.tokens.d.ts +2 -8
  123. package/dist/components/OverflowMenu/OverflowMenu.tokens.js +5 -5
  124. package/dist/components/OverflowMenu/OverflowMenu.types.d.ts +8 -6
  125. package/dist/components/OverflowMenu/OverflowMenuGroup.js +1 -0
  126. package/dist/components/OverflowMenu/OverflowMenuItem.js +3 -2
  127. package/dist/components/Pagination/Pagination.js +13 -8
  128. package/dist/components/Pagination/Pagination.tokens.d.ts +7 -8
  129. package/dist/components/Pagination/Pagination.tokens.js +17 -16
  130. package/dist/components/Popover/Popover.tokens.d.ts +0 -1
  131. package/dist/components/Popover/Popover.tokens.js +0 -1
  132. package/dist/components/ProgressTracker/ProgressTracker.tokens.d.ts +9 -6
  133. package/dist/components/ProgressTracker/ProgressTracker.tokens.js +11 -9
  134. package/dist/components/ProgressTracker/ProgressTrackerItem.js +7 -6
  135. package/dist/components/RadioButton/RadioButton.stories.d.ts +4 -4
  136. package/dist/components/RadioButton/RadioButtonGroup.d.ts +2 -4
  137. package/dist/components/RadioButton/RadioButtonGroup.js +3 -15
  138. package/dist/components/RadioButton/RadioButtonGroup.stories.d.ts +1 -1
  139. package/dist/components/Search/Search.js +3 -2
  140. package/dist/components/Search/Search.tokens.d.ts +5 -24
  141. package/dist/components/Search/Search.tokens.js +6 -5
  142. package/dist/components/Select/Select.js +5 -4
  143. package/dist/components/Select/Select.styles.js +13 -14
  144. package/dist/components/Select/Select.tokens.d.ts +14 -127
  145. package/dist/components/Select/Select.tokens.js +28 -36
  146. package/dist/components/SkipToContent/SkipToContent.d.ts +2 -2
  147. package/dist/components/SkipToContent/SkipToContent.js +7 -4
  148. package/dist/components/SkipToContent/SkipToContent.stories.d.ts +1 -1
  149. package/dist/components/SkipToContent/SkipToContent.tokens.d.ts +5 -10
  150. package/dist/components/SkipToContent/SkipToContent.tokens.js +14 -37
  151. package/dist/components/Spinner/Spinner.js +1 -2
  152. package/dist/components/SplitButton/SplitButton.d.ts +11 -0
  153. package/dist/components/SplitButton/SplitButton.js +62 -0
  154. package/dist/components/SplitButton/SplitButton.stories.d.ts +9 -0
  155. package/dist/components/SplitButton/index.d.ts +1 -0
  156. package/dist/components/Table/Row.js +2 -1
  157. package/dist/components/Table/Table.tokens.d.ts +0 -19
  158. package/dist/components/Table/Table.tokens.js +1 -8
  159. package/dist/components/Tabs/Tab.js +8 -5
  160. package/dist/components/Tabs/TabPanel.js +4 -3
  161. package/dist/components/Tabs/Tabs.tokens.d.ts +21 -22
  162. package/dist/components/Tabs/Tabs.tokens.js +31 -79
  163. package/dist/components/Tag/Tag.d.ts +1 -1
  164. package/dist/components/Tag/Tag.js +8 -21
  165. package/dist/components/Tag/Tag.tokens.d.ts +19 -14
  166. package/dist/components/Tag/Tag.tokens.js +14 -41
  167. package/dist/components/TextArea/TextArea.js +3 -2
  168. package/dist/components/TextInput/TextInput.tokens.d.ts +0 -3
  169. package/dist/components/TextInput/TextInput.tokens.js +0 -3
  170. package/dist/components/ToggleBar/ToggleBar.tokens.d.ts +5 -32
  171. package/dist/components/ToggleBar/ToggleBar.tokens.js +7 -5
  172. package/dist/components/ToggleBar/ToggleRadio.styles.js +3 -2
  173. package/dist/components/ToggleButton/ToggleButton.js +14 -8
  174. package/dist/components/ToggleButton/ToggleButton.stories.d.ts +2 -2
  175. package/dist/components/ToggleButton/ToggleButton.tokens.d.ts +23 -13
  176. package/dist/components/ToggleButton/ToggleButton.tokens.js +26 -49
  177. package/dist/components/ToggleButton/ToggleButtonGroup.js +2 -2
  178. package/dist/components/Tooltip/Tooltip.js +6 -2
  179. package/dist/components/Tooltip/Tooltip.stories.d.ts +2 -2
  180. package/dist/components/Tooltip/Tooltip.styles.d.ts +4 -1
  181. package/dist/components/Tooltip/Tooltip.styles.js +15 -4
  182. package/dist/components/Tooltip/Tooltip.tokens.d.ts +1 -2
  183. package/dist/components/Tooltip/Tooltip.tokens.js +14 -24
  184. package/dist/components/Typography/Typography.utils.d.ts +195 -1
  185. package/dist/components/Typography/Typography.utils.js +7 -1
  186. package/dist/helpers/Input/Input.styles.js +3 -2
  187. package/dist/helpers/Input/Input.tokens.d.ts +2 -68
  188. package/dist/helpers/Input/Input.tokens.js +10 -46
  189. package/dist/helpers/Input/Input.types.d.ts +4 -0
  190. package/dist/helpers/SelectionControl/SelectionControl.styles.d.ts +5 -0
  191. package/dist/helpers/SelectionControl/SelectionControl.styles.js +15 -2
  192. package/dist/helpers/SelectionControl/SelectionControl.tokens.d.ts +11 -0
  193. package/dist/helpers/SelectionControl/SelectionControl.tokens.js +14 -1
  194. package/dist/helpers/TextOverflowEllipsis/TextOverflowEllipsis.d.ts +2 -0
  195. package/dist/helpers/TextOverflowEllipsis/TextOverflowEllipsis.js +12 -0
  196. package/dist/helpers/TextOverflowEllipsis/index.d.ts +1 -0
  197. package/dist/index.d.ts +1 -0
  198. package/dist/index.js +1 -0
  199. package/dist/utils/color.d.ts +1 -1
  200. package/package.json +1 -1
  201. package/dist/cjs/components/Card/CardAccordion/CardAccordionBody.tokens.d.ts +0 -4
  202. package/dist/cjs/components/Card/CardAccordion/CardAccordionHeader.tokens.d.ts +0 -17
  203. package/dist/cjs/components/List/ListItem.tokens.d.ts +0 -5
  204. package/dist/cjs/components/RadioButton/RadioButtonGroup.tokens.d.ts +0 -19
  205. package/dist/cjs/components/Spinner/Spinner.tokens.d.ts +0 -6
  206. package/dist/components/Card/CardAccordion/CardAccordionBody.tokens.d.ts +0 -4
  207. package/dist/components/Card/CardAccordion/CardAccordionBody.tokens.js +0 -12
  208. package/dist/components/Card/CardAccordion/CardAccordionHeader.tokens.d.ts +0 -17
  209. package/dist/components/Card/CardAccordion/CardAccordionHeader.tokens.js +0 -38
  210. package/dist/components/Checkbox/CheckboxGroup.tokens.js +0 -20
  211. package/dist/components/List/ListItem.tokens.d.ts +0 -5
  212. package/dist/components/List/ListItem.tokens.js +0 -12
  213. package/dist/components/RadioButton/RadioButtonGroup.tokens.d.ts +0 -19
  214. package/dist/components/RadioButton/RadioButtonGroup.tokens.js +0 -32
  215. package/dist/components/Spinner/Spinner.tokens.d.ts +0 -6
  216. package/dist/components/Spinner/Spinner.tokens.js +0 -13
@@ -27,4 +27,4 @@ export declare type DDSTextColor = 'interactive' | 'primary' | 'danger' | 'warni
27
27
  export declare const textColorsArray: string[];
28
28
  export declare type TextColor = DDSTextColor | Property.Color;
29
29
  export declare function isTextColor(color: string): color is DDSTextColor;
30
- export declare const getTextColor: (color: TextColor) => string;
30
+ export declare const getTextColor: (color: TextColor) => TextColor;
@@ -1,16 +1,10 @@
1
+ import { StaticTypographyType } from '../Typography';
2
+ export declare const typographyType: StaticTypographyType;
1
3
  export declare const breadcrumbTokens: {
2
4
  list: {
3
5
  gap: string;
4
6
  };
5
7
  listItem: {
6
- font: {
7
- lineHeight: any;
8
- fontSize: string;
9
- letterSpacing: any;
10
- fontFamily: any;
11
- fontWeight: any;
12
- fontStyle: any;
13
- };
14
8
  gap: string;
15
9
  };
16
10
  icon: {
@@ -1,13 +1,12 @@
1
1
  import { ddsBaseTokens } from '@norges-domstoler/dds-design-tokens';
2
2
 
3
3
  var colors = ddsBaseTokens.colors,
4
- spacing = ddsBaseTokens.spacing,
5
- fontPackages = ddsBaseTokens.fontPackages;
4
+ spacing = ddsBaseTokens.spacing;
5
+ var typographyType = 'bodySans02';
6
6
  var icon = {
7
7
  color: colors.DdsColorInteractiveBase
8
8
  };
9
9
  var listItem = {
10
- font: fontPackages.body_sans_02.base,
11
10
  gap: spacing.SizesDdsSpacingLocalX05
12
11
  };
13
12
  var list = {
@@ -19,4 +18,4 @@ var breadcrumbTokens = {
19
18
  icon: icon
20
19
  };
21
20
 
22
- export { breadcrumbTokens };
21
+ export { breadcrumbTokens, typographyType };
@@ -2,13 +2,14 @@ import { __rest } from 'tslib';
2
2
  import { jsxs, jsx } from 'react/jsx-runtime';
3
3
  import { forwardRef, Children } from 'react';
4
4
  import styled from 'styled-components';
5
- import { breadcrumbTokens } from './Breadcrumb.tokens.js';
5
+ import { breadcrumbTokens, typographyType } from './Breadcrumb.tokens.js';
6
6
  import { Icon } from '../Icon/Icon.js';
7
7
  import '../../icons/utils/StyledSvg.js';
8
8
  import { ArrowLeftIcon } from '../../icons/tsx/arrowLeft.js';
9
9
  import { ChevronRightIcon } from '../../icons/tsx/chevronRight.js';
10
10
  import { getBaseHTMLProps } from '../../types/BaseComponentProps.js';
11
11
  import { removeListStyling } from '../../helpers/styling/removeListStyling.js';
12
+ import { getFontStyling } from '../Typography/Typography.utils.js';
12
13
 
13
14
  var icon = breadcrumbTokens.icon,
14
15
  list = breadcrumbTokens.list,
@@ -20,7 +21,7 @@ var List = styled.ol.withConfig({
20
21
  var ListItem = styled.li.withConfig({
21
22
  displayName: "Breadcrumbs__ListItem",
22
23
  componentId: "sc-xdj21o-1"
23
- })(["align-items:center;display:flex;gap:", ";", ""], listItem.gap, listItem.font);
24
+ })(["align-items:center;display:flex;gap:", ";", ""], listItem.gap, getFontStyling(typographyType));
24
25
  var StyledIcon = styled(Icon).withConfig({
25
26
  displayName: "Breadcrumbs__StyledIcon",
26
27
  componentId: "sc-xdj21o-2"
@@ -7,6 +7,9 @@ import { Spinner } from '../Spinner/Spinner.js';
7
7
  import { StyledIconWrapperSpan, ButtonWrapper, Label } from './Button.styles.js';
8
8
  import { getBaseHTMLProps } from '../../types/BaseComponentProps.js';
9
9
 
10
+ var _tokens$button = buttonTokens.button,
11
+ sizes = _tokens$button.sizes,
12
+ appearances = _tokens$button.appearances;
10
13
  var Button = /*#__PURE__*/forwardRef(function (props, ref) {
11
14
  var label = props.label,
12
15
  _props$purpose = props.purpose,
@@ -57,9 +60,9 @@ var Button = /*#__PURE__*/forwardRef(function (props, ref) {
57
60
  var isIconButton = !hasLabel && hasIcon;
58
61
 
59
62
  var iconElement = icon && jsx(StyledIconWrapperSpan, Object.assign({
60
- iconPosition: isIconButton ? undefined : iconPosition,
61
63
  size: size,
62
- isHidden: hasIcon && loading
64
+ isHidden: hasIcon && loading,
65
+ justIcon: isIconButton
63
66
  }, {
64
67
  children: jsx(Icon, {
65
68
  icon: icon,
@@ -80,8 +83,8 @@ var Button = /*#__PURE__*/forwardRef(function (props, ref) {
80
83
  absolutePosition: hasIcon || hasLabel
81
84
  }, {
82
85
  children: jsx(Spinner, {
83
- color: buttonTokens.appearance[appearance][purpose].base.color,
84
- size: buttonTokens.sizes[size].justIcon.base.fontSize
86
+ color: appearances[appearance].purpose[purpose].base.color,
87
+ size: sizes[size].justIcon.icon.fontSize
85
88
  })
86
89
  }))]
87
90
  }));
@@ -1,7 +1,7 @@
1
1
  import { ButtonProps } from '.';
2
2
  declare const _default: {
3
3
  title: string;
4
- component: import("react").ForwardRefExoticComponent<Pick<Omit<import("react").ButtonHTMLAttributes<HTMLButtonElement>, "onFocus" | "onBlur" | "onClick" | "type">, "id" | "className"> & {
4
+ component: import("react").ForwardRefExoticComponent<Pick<Omit<import("react").ButtonHTMLAttributes<HTMLButtonElement>, "type" | "onClick" | "onFocus" | "onBlur">, "id" | "className"> & {
5
5
  size?: import("./Button.types").ButtonSize | undefined;
6
6
  label?: string | undefined;
7
7
  purpose?: import("./Button.types").ButtonPurpose | undefined;
@@ -13,12 +13,12 @@ declare const _default: {
13
13
  href?: string | undefined;
14
14
  target?: string | undefined;
15
15
  } & {
16
+ type?: "button" | "submit" | "reset" | undefined;
17
+ onClick?: import("react").MouseEventHandler<HTMLButtonElement> | undefined;
16
18
  onFocus?: import("react").FocusEventHandler<HTMLButtonElement> | undefined;
17
19
  onBlur?: import("react").FocusEventHandler<HTMLButtonElement> | undefined;
18
- onClick?: import("react").MouseEventHandler<HTMLButtonElement> | undefined;
19
- type?: "button" | "submit" | "reset" | undefined;
20
20
  } & {
21
- htmlProps?: Omit<import("react").ButtonHTMLAttributes<HTMLButtonElement>, "onFocus" | "onBlur" | "onClick" | "type"> | undefined;
21
+ htmlProps?: Omit<import("react").ButtonHTMLAttributes<HTMLButtonElement>, "type" | "onClick" | "onFocus" | "onBlur"> | undefined;
22
22
  } & import("react").RefAttributes<HTMLButtonElement>>;
23
23
  argTypes: {
24
24
  label: {
@@ -15,6 +15,7 @@ declare type StyledIconWrapperSpanProps = {
15
15
  size: ButtonSize;
16
16
  absolutePosition?: boolean;
17
17
  isHidden?: boolean;
18
+ justIcon?: boolean;
18
19
  };
19
20
  export declare const StyledIconWrapperSpan: import("styled-components").StyledComponent<"span", any, StyledIconWrapperSpanProps, never>;
20
21
  declare type LabelProps = {
@@ -1,58 +1,83 @@
1
1
  import styled, { css } from 'styled-components';
2
- import { focusVisibleTransitionValue } from '../../helpers/styling/focusVisible.js';
2
+ import { focusVisibleTransitionValue, focusVisible } from '../../helpers/styling/focusVisible.js';
3
3
  import '../../helpers/styling/hover.js';
4
4
  import '../../helpers/styling/focus.js';
5
5
  import '../../helpers/styling/danger.js';
6
6
  import { selection } from '../../helpers/styling/selection.js';
7
- import { buttonTokens } from './Button.tokens.js';
7
+ import { getFontStyling } from '../Typography/Typography.utils.js';
8
+ import { typographyTypes, buttonTokens } from './Button.tokens.js';
9
+
10
+ var _tokens$button = buttonTokens.button,
11
+ base = _tokens$button.base,
12
+ sizes = _tokens$button.sizes,
13
+ appearances = _tokens$button.appearances;
14
+
15
+ var getAppearanceAndPurposeStyling = function getAppearanceAndPurposeStyling(appearance, purpose) {
16
+ switch (appearance) {
17
+ case 'filled':
18
+ case 'rounded':
19
+ return css(["background-color:", ";border-color:", ";&:hover{background-color:", ";border-color:", ";}&:active{background-color:", ";border-color:", ";}"], appearances[appearance].purpose[purpose].base.backgroundColor, appearances[appearance].purpose[purpose].base.borderColor, appearances[appearance].purpose[purpose].hover.backgroundColor, appearances[appearance].purpose[purpose].hover.borderColor, appearances[appearance].purpose[purpose].active.backgroundColor, appearances[appearance].purpose[purpose].active.borderColor);
20
+
21
+ case 'ghost':
22
+ return css(["background-color:", ";border-color:", ";&:hover{color:", ";border-color:", ";box-shadow:", ";}&:active{color:", ";border-color:", ";box-shadow:", ";}"], appearances.ghost.base.backgroundColor, appearances.ghost.purpose[purpose].base.borderColor, appearances.ghost.purpose[purpose].hover.color, appearances.ghost.purpose[purpose].hover.borderColor, appearances.ghost.purpose[purpose].hover.boxShadow, appearances.ghost.purpose[purpose].active.color, appearances.ghost.purpose[purpose].active.borderColor, appearances.ghost.purpose[purpose].active.boxShadow);
23
+
24
+ case 'borderless':
25
+ return css(["background-color:", ";border-color:", ";text-decoration:", ";text-decoration-color:", ";&:hover{color:", ";text-decoration-color:", ";}&:active{color:", ";text-decoration-color:", ";}"], appearances.borderless.base.backgroundColor, appearances.borderless.base.borderColor, appearances.borderless.base.textDecoration, appearances.borderless.base.textDecorationColor, appearances.borderless.purpose[purpose].hover.color, appearances.borderless.purpose[purpose].hover.textDecorationColor, appearances.borderless.purpose[purpose].active.color, appearances.borderless.purpose[purpose].active.textDecorationColor);
26
+ }
27
+ };
8
28
 
9
29
  var ButtonWrapper = styled.button.withConfig({
10
30
  displayName: "Buttonstyles__ButtonWrapper",
11
31
  componentId: "sc-14dutqk-0"
12
- })(["", " user-select:text;display:inline-flex;align-items:center;justify-content:center;height:fit-content;width:", ";cursor:pointer;box-shadow:none;text-decoration:none;@media (prefers-reduced-motion:no-preference){transition:background-color 0.2s,text-decoration-color 0.2s,box-shadow 0.2s,border-color 0.2s,color 0.2s,", ";}", " ", " ", " ", " &:focus-visible,&.focus-visible{", "}*::selection{", "}"], buttonTokens.base, function (_ref) {
32
+ })(["border:", ";user-select:text;display:inline-flex;align-items:center;justify-content:center;height:fit-content;width:", ";cursor:pointer;box-shadow:none;text-decoration:none;@media (prefers-reduced-motion:no-preference){transition:background-color 0.2s,text-decoration-color 0.2s,box-shadow 0.2s,border-color 0.2s,color 0.2s,", ";}", " ", " ", " ", " ", " &:focus-visible,&.focus-visible{", "}*::selection{", "}"], base.border, function (_ref) {
13
33
  var fullWidth = _ref.fullWidth;
14
34
  return fullWidth ? '100%' : 'fit-content';
15
35
  }, focusVisibleTransitionValue, function (_ref2) {
16
36
  var appearance = _ref2.appearance,
17
37
  purpose = _ref2.purpose;
18
- return css(["", " ", " &:hover{", "}&:active{", "}"], buttonTokens.appearance[appearance].base, buttonTokens.appearance[appearance][purpose].base, buttonTokens.appearance[appearance][purpose].hover.base, buttonTokens.appearance[appearance][purpose].active.base);
38
+ return css(["border-radius:", ";box-shadow:", ";color:", ";", ""], appearances[appearance].base.borderRadius, appearances[appearance].base.boxShadow, appearances[appearance].purpose[purpose].base.color, getAppearanceAndPurposeStyling(appearance, purpose));
19
39
  }, function (_ref3) {
20
40
  var hasIcon = _ref3.hasIcon,
21
41
  hasLabel = _ref3.hasLabel,
22
42
  appearance = _ref3.appearance,
23
43
  purpose = _ref3.purpose;
24
- return hasIcon && !hasLabel && appearance === 'borderless' && css(["&:hover{", "}&:active{", "}"], buttonTokens.appearance[appearance][purpose].justIcon.hover.base, buttonTokens.appearance[appearance][purpose].justIcon.active.base);
44
+ return hasIcon && !hasLabel && appearance === 'borderless' && css(["&:hover{border-color:", ";box-shadow:", ";}&:active{border-color::", ";box-shadow:", ";}"], appearances[appearance].purpose[purpose].icon.hover.borderColor, appearances[appearance].purpose[purpose].icon.hover.boxShadow, appearances[appearance].purpose[purpose].icon.active.borderColor, appearances[appearance].purpose[purpose].icon.active.boxShadow);
25
45
  }, function (_ref4) {
26
- var size = _ref4.size,
27
- hasLabel = _ref4.hasLabel;
28
- return hasLabel ? css(["", ""], buttonTokens.sizes[size].text.base) : css(["", ""], buttonTokens.sizes[size].justIcon.base);
46
+ var hasIcon = _ref4.hasIcon,
47
+ hasLabel = _ref4.hasLabel,
48
+ size = _ref4.size;
49
+ return hasIcon && hasLabel && css(["gap:", ";"], sizes[size].textAndIcon.gap);
29
50
  }, function (_ref5) {
30
- var fullWidth = _ref5.fullWidth,
31
- hasIcon = _ref5.hasIcon,
32
- hasLabel = _ref5.hasLabel,
33
- isLoading = _ref5.isLoading,
34
- iconPosition = _ref5.iconPosition;
51
+ var size = _ref5.size,
52
+ hasLabel = _ref5.hasLabel;
53
+ return hasLabel ? css(["", " padding:", ";"], getFontStyling(typographyTypes[size]), sizes[size].text.padding) : css(["font-size:", ";padding:", ";"], sizes[size].justIcon.icon.fontSize, sizes[size].justIcon.icon.padding);
54
+ }, function (_ref6) {
55
+ var fullWidth = _ref6.fullWidth,
56
+ hasIcon = _ref6.hasIcon,
57
+ hasLabel = _ref6.hasLabel,
58
+ isLoading = _ref6.isLoading,
59
+ iconPosition = _ref6.iconPosition;
35
60
  return fullWidth && (!hasIcon || !hasLabel || isLoading ? css(["justify-content:center;"]) : hasIcon && hasLabel && iconPosition === 'left' ? css(["justify-content:left;"]) : css(["justify-content:space-between;"]));
36
- }, buttonTokens.focus.base, selection);
61
+ }, focusVisible, selection);
37
62
  var StyledIconWrapperSpan = styled.span.withConfig({
38
63
  displayName: "Buttonstyles__StyledIconWrapperSpan",
39
64
  componentId: "sc-14dutqk-1"
40
- })(["display:flex;align-items:center;justify-content:center;", " ", " ", ""], function (_ref6) {
41
- var absolutePosition = _ref6.absolutePosition;
65
+ })(["display:flex;align-items:center;justify-content:center;", " ", " ", ""], function (_ref7) {
66
+ var absolutePosition = _ref7.absolutePosition;
42
67
  return absolutePosition && css(["position:absolute;"]);
43
- }, function (_ref7) {
44
- var isHidden = _ref7.isHidden;
45
- return isHidden && css(["visibility:hidden;"]);
46
68
  }, function (_ref8) {
47
- var size = _ref8.size,
48
- iconPosition = _ref8.iconPosition;
49
- return iconPosition === 'left' ? css(["margin-inline-end:", ";"], buttonTokens.sizes[size].iconWithTextMargin) : iconPosition === 'right' ? css(["margin-inline-start:", ";"], buttonTokens.sizes[size].iconWithTextMargin) : css(["", ""], buttonTokens.sizes[size].justIconWrapper.base);
69
+ var isHidden = _ref8.isHidden;
70
+ return isHidden && css(["visibility:hidden;"]);
71
+ }, function (_ref9) {
72
+ var justIcon = _ref9.justIcon,
73
+ size = _ref9.size;
74
+ return justIcon && css(["height:", ";width:", ";"], sizes[size].justIcon.wrapper.height, sizes[size].justIcon.wrapper.width);
50
75
  });
51
76
  var Label = styled.span.withConfig({
52
77
  displayName: "Buttonstyles__Label",
53
78
  componentId: "sc-14dutqk-2"
54
- })(["", ""], function (_ref9) {
55
- var isHidden = _ref9.isHidden;
79
+ })(["", ""], function (_ref10) {
80
+ var isHidden = _ref10.isHidden;
56
81
  return isHidden && css(["visibility:hidden;"]);
57
82
  });
58
83