@redsift/design-system 11.6.0-muiv5-alpha.5 → 11.6.0-muiv5-alpha.6

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 (269) hide show
  1. package/_internal/Alert.d2.ts +54 -0
  2. package/_internal/Alert2.js +182 -39
  3. package/_internal/AppBar.d.ts +37 -0
  4. package/_internal/AppBar.js +240 -29
  5. package/_internal/AppContainer.d.ts +96 -0
  6. package/_internal/AppContainer.js +132 -86
  7. package/_internal/AppContent.d.ts +25 -0
  8. package/_internal/AppContent.js +84 -17
  9. package/_internal/Badge.d2.ts +9 -0
  10. package/_internal/Badge2.js +137 -4
  11. package/_internal/BreadcrumbItem.d.ts +9 -0
  12. package/_internal/BreadcrumbItem.js +85 -3
  13. package/_internal/Breadcrumbs.d2.ts +29 -0
  14. package/_internal/Breadcrumbs2.js +86 -21
  15. package/_internal/Button.d2.ts +30 -0
  16. package/_internal/Button2.js +81 -20
  17. package/_internal/ButtonGroup.d.ts +41 -0
  18. package/_internal/ButtonGroup.js +165 -25
  19. package/_internal/ButtonLink.d.ts +28 -0
  20. package/_internal/ButtonLink.js +74 -18
  21. package/_internal/Card.d2.ts +35 -0
  22. package/_internal/Card2.js +151 -29
  23. package/_internal/CardActions.d.ts +9 -0
  24. package/_internal/CardActions.js +38 -3
  25. package/_internal/CardBody.d.ts +9 -0
  26. package/_internal/CardBody.js +36 -3
  27. package/_internal/CardHeader.d.ts +9 -0
  28. package/_internal/CardHeader.js +77 -3
  29. package/_internal/Checkbox.d2.ts +68 -0
  30. package/_internal/Checkbox2.js +234 -58
  31. package/_internal/CheckboxGroup.d.ts +10 -0
  32. package/_internal/CheckboxGroup.js +182 -4
  33. package/_internal/ConditionalWrapper.d.ts +14 -0
  34. package/_internal/ConditionalWrapper.js +11 -12
  35. package/_internal/DetailedCard.d.ts +52 -0
  36. package/_internal/DetailedCard.js +6912 -48
  37. package/_internal/DetailedCardCollapsibleSectionItems.d.ts +9 -0
  38. package/_internal/DetailedCardCollapsibleSectionItems.js +58 -3
  39. package/_internal/DetailedCardHeader.d.ts +9 -0
  40. package/_internal/DetailedCardHeader.js +61 -3
  41. package/_internal/DetailedCardSection.d.ts +9 -0
  42. package/_internal/DetailedCardSection.js +166 -3
  43. package/_internal/DetailedCardSectionItem.d.ts +9 -0
  44. package/_internal/DetailedCardSectionItem.js +88 -3
  45. package/_internal/Flexbox.d2.ts +30 -0
  46. package/_internal/Flexbox2.js +85 -22
  47. package/_internal/Grid.d2.ts +32 -0
  48. package/_internal/Grid2.js +87 -24
  49. package/_internal/GridItem.d.ts +9 -0
  50. package/_internal/GridItem.js +34 -3
  51. package/_internal/Heading.d2.ts +9 -0
  52. package/_internal/Heading2.js +107 -3
  53. package/_internal/Icon.d2.ts +10 -0
  54. package/_internal/Icon2.js +206 -5
  55. package/_internal/IconButton.d.ts +12 -0
  56. package/_internal/IconButton.js +71 -3
  57. package/_internal/IconButtonLink.d.ts +28 -0
  58. package/_internal/IconButtonLink.js +65 -18
  59. package/_internal/Item.d2.ts +82 -0
  60. package/_internal/Item2.js +390 -73
  61. package/_internal/Link.d2.ts +26 -0
  62. package/_internal/Link2.js +56 -15
  63. package/_internal/LinkButton.d.ts +23 -0
  64. package/_internal/LinkButton.js +56 -13
  65. package/_internal/Number.d2.ts +69 -0
  66. package/_internal/Number2.js +103 -61
  67. package/_internal/NumberField.d.ts +80 -0
  68. package/_internal/NumberField.js +3959 -65
  69. package/_internal/Pill.d2.ts +9 -0
  70. package/_internal/Pill2.js +400 -4
  71. package/_internal/ProgressBar.d.ts +26 -0
  72. package/_internal/ProgressBar.js +61 -18
  73. package/_internal/Radio.d2.ts +66 -0
  74. package/_internal/Radio2.js +227 -56
  75. package/_internal/RadioGroup.d.ts +10 -0
  76. package/_internal/RadioGroup.js +170 -4
  77. package/_internal/Shield.d2.ts +9 -0
  78. package/_internal/Shield2.js +220 -4
  79. package/_internal/SideNavigationMenu.d.ts +9 -0
  80. package/_internal/SideNavigationMenu.js +586 -4
  81. package/_internal/{SideNavigationMenuBar.js → SideNavigationMenuBar.d.ts} +1 -1
  82. package/_internal/SideNavigationMenuItem.d.ts +9 -0
  83. package/_internal/SideNavigationMenuItem.js +299 -4
  84. package/_internal/Skeleton.d2.ts +15 -0
  85. package/_internal/Skeleton2.js +36 -9
  86. package/_internal/SkeletonCircle.d.ts +9 -0
  87. package/_internal/SkeletonCircle.js +52 -3
  88. package/_internal/SkeletonText.d.ts +9 -0
  89. package/_internal/SkeletonText.js +71 -3
  90. package/_internal/Spinner.d2.ts +43 -0
  91. package/_internal/Spinner2.js +319 -29
  92. package/_internal/Switch.d2.ts +66 -0
  93. package/_internal/Switch2.js +310 -56
  94. package/_internal/SwitchGroup.d.ts +10 -0
  95. package/_internal/SwitchGroup.js +182 -4
  96. package/_internal/Text.d2.ts +9 -0
  97. package/_internal/Text2.js +45 -3
  98. package/_internal/TextArea.d.ts +34 -0
  99. package/_internal/TextArea.js +430 -20
  100. package/_internal/TextField.d.ts +29 -0
  101. package/_internal/TextField.js +463 -19
  102. package/_internal/alert.d.ts +5 -0
  103. package/_internal/alert.js +2 -5
  104. package/_internal/app-bar.d.ts +8 -0
  105. package/_internal/app-bar.js +2 -8
  106. package/_internal/app-container.d.ts +9 -0
  107. package/_internal/app-container.js +3 -9
  108. package/_internal/app-content.d.ts +5 -0
  109. package/_internal/app-content.js +2 -5
  110. package/_internal/app-side-panel.d.ts +11 -0
  111. package/_internal/app-side-panel.js +3 -11
  112. package/_internal/badge.d.ts +6 -0
  113. package/_internal/badge.js +2 -6
  114. package/_internal/breadcrumb-item.d.ts +5 -0
  115. package/_internal/breadcrumb-item.js +1 -4
  116. package/_internal/breadcrumbs.d.ts +6 -0
  117. package/_internal/breadcrumbs.js +2 -6
  118. package/_internal/button-group.d.ts +5 -0
  119. package/_internal/button-group.js +2 -5
  120. package/_internal/button-link.d.ts +8 -0
  121. package/_internal/button-link.js +2 -8
  122. package/_internal/button.d.ts +8 -0
  123. package/_internal/button.js +3 -8
  124. package/_internal/card-actions.d.ts +5 -0
  125. package/_internal/card-actions.js +1 -4
  126. package/_internal/card-body.d.ts +5 -0
  127. package/_internal/card-body.js +1 -4
  128. package/_internal/card-header.d.ts +9 -0
  129. package/_internal/card-header.js +1 -8
  130. package/_internal/card.d.ts +11 -0
  131. package/_internal/card.js +2 -11
  132. package/_internal/checkbox-group.d.ts +6 -0
  133. package/_internal/checkbox-group.js +2 -6
  134. package/_internal/checkbox.d.ts +6 -0
  135. package/_internal/checkbox.js +2 -6
  136. package/_internal/colors.d.ts +102 -0
  137. package/_internal/colors.js +87 -91
  138. package/_internal/conditional-wrapper.d.ts +2 -0
  139. package/_internal/conditional-wrapper.js +2 -2
  140. package/_internal/detailed-card-collapsible-section-items.d.ts +4 -0
  141. package/_internal/detailed-card-collapsible-section-items.js +1 -3
  142. package/_internal/detailed-card-header.d.ts +8 -0
  143. package/_internal/detailed-card-header.js +1 -7
  144. package/_internal/detailed-card-section-item.d.ts +11 -0
  145. package/_internal/detailed-card-section-item.js +1 -10
  146. package/_internal/detailed-card-section.d.ts +7 -0
  147. package/_internal/detailed-card-section.js +1 -6
  148. package/_internal/detailed-card.d.ts +16 -0
  149. package/_internal/detailed-card.js +2 -16
  150. package/_internal/flexbox.d.ts +5 -0
  151. package/_internal/flexbox.js +2 -5
  152. package/_internal/focus-within-group.d.ts +3 -0
  153. package/_internal/focus-within-group.js +3 -3
  154. package/_internal/fonts.d.ts +12 -0
  155. package/_internal/fonts.js +4 -6
  156. package/_internal/gradient-border.d.ts +19 -0
  157. package/_internal/gradient-border.js +35 -16
  158. package/_internal/grid-item.d.ts +5 -0
  159. package/_internal/grid-item.js +1 -4
  160. package/_internal/grid.d.ts +6 -0
  161. package/_internal/grid.js +2 -6
  162. package/_internal/heading.d.ts +7 -0
  163. package/_internal/heading.js +2 -6
  164. package/_internal/icon-button-link.d.ts +8 -0
  165. package/_internal/icon-button-link.js +2 -8
  166. package/_internal/icon-button.d.ts +7 -0
  167. package/_internal/icon-button.js +2 -6
  168. package/_internal/icon.d.ts +6 -0
  169. package/_internal/icon.js +2 -6
  170. package/_internal/item.d.ts +8 -0
  171. package/_internal/item.js +2 -8
  172. package/_internal/link-button.d.ts +8 -0
  173. package/_internal/link-button.js +2 -8
  174. package/_internal/link.d.ts +8 -0
  175. package/_internal/link.js +3 -8
  176. package/_internal/listbox.d.ts +6 -0
  177. package/_internal/listbox.js +3 -6
  178. package/_internal/number-field.d.ts +9 -0
  179. package/_internal/number-field.js +2 -9
  180. package/_internal/number.d.ts +7 -0
  181. package/_internal/number.js +2 -7
  182. package/_internal/pill.d.ts +6 -0
  183. package/_internal/pill.js +2 -6
  184. package/_internal/progress-bar.d.ts +5 -0
  185. package/_internal/progress-bar.js +2 -5
  186. package/_internal/radio-group.d.ts +6 -0
  187. package/_internal/radio-group.js +2 -6
  188. package/_internal/radio.d.ts +6 -0
  189. package/_internal/radio.js +2 -6
  190. package/_internal/shared.d.ts +5 -0
  191. package/_internal/shared.js +2 -5
  192. package/_internal/shield.d.ts +6 -0
  193. package/_internal/shield.js +2 -6
  194. package/_internal/side-navigation-menu-bar.d.ts +9 -0
  195. package/_internal/side-navigation-menu-bar.js +3 -9
  196. package/_internal/side-navigation-menu-item.d.ts +8 -0
  197. package/_internal/side-navigation-menu-item.js +2 -8
  198. package/_internal/side-navigation-menu.d.ts +8 -0
  199. package/_internal/side-navigation-menu.js +2 -8
  200. package/_internal/skeleton-circle.d.ts +7 -0
  201. package/_internal/skeleton-circle.js +1 -6
  202. package/_internal/skeleton-text.d.ts +7 -0
  203. package/_internal/skeleton-text.js +2 -6
  204. package/_internal/skeleton.d.ts +8 -0
  205. package/_internal/skeleton.js +1 -7
  206. package/_internal/spinner.d.ts +5 -0
  207. package/_internal/spinner.js +2 -5
  208. package/_internal/styles.d.ts +17 -0
  209. package/_internal/styles.d2.ts +283 -0
  210. package/_internal/styles.js +235 -17
  211. package/_internal/styles2.js +44 -280
  212. package/_internal/switch-group.d.ts +6 -0
  213. package/_internal/switch-group.js +2 -6
  214. package/_internal/switch.d.ts +6 -0
  215. package/_internal/switch.js +2 -6
  216. package/_internal/text-area.d.ts +9 -0
  217. package/_internal/text-area.js +2 -9
  218. package/_internal/text-field.d.ts +10 -0
  219. package/_internal/text-field.js +2 -10
  220. package/_internal/text.d.ts +7 -0
  221. package/_internal/text.js +2 -6
  222. package/_internal/theme.d.ts +4 -0
  223. package/_internal/theme.js +1 -3
  224. package/_internal/types.d.ts +39 -0
  225. package/_internal/{types10.js → types.d10.ts} +1 -1
  226. package/_internal/{types11.js → types.d11.ts} +1 -1
  227. package/_internal/{types12.js → types.d12.ts} +4 -4
  228. package/_internal/{types14.js → types.d14.ts} +1 -1
  229. package/_internal/{types15.js → types.d15.ts} +1 -1
  230. package/_internal/{types16.js → types.d16.ts} +2 -2
  231. package/_internal/{types17.js → types.d17.ts} +1 -1
  232. package/_internal/{types18.js → types.d18.ts} +2 -2
  233. package/_internal/{types19.js → types.d19.ts} +2 -2
  234. package/_internal/types.d2.ts +37 -0
  235. package/_internal/{types20.js → types.d20.ts} +1 -1
  236. package/_internal/{types21.js → types.d21.ts} +1 -1
  237. package/_internal/{types22.js → types.d22.ts} +1 -1
  238. package/_internal/{types23.js → types.d23.ts} +2 -2
  239. package/_internal/{types24.js → types.d24.ts} +1 -1
  240. package/_internal/{types25.js → types.d25.ts} +1 -1
  241. package/_internal/{types26.js → types.d26.ts} +1 -1
  242. package/_internal/{types27.js → types.d27.ts} +1 -1
  243. package/_internal/{types28.js → types.d28.ts} +1 -1
  244. package/_internal/{types29.js → types.d29.ts} +4 -4
  245. package/_internal/types.d3.ts +23 -0
  246. package/_internal/{types4.js → types.d4.ts} +2 -2
  247. package/_internal/{types5.js → types.d5.ts} +1 -1
  248. package/_internal/{types6.js → types.d6.ts} +1 -1
  249. package/_internal/{types7.js → types.d7.ts} +3 -3
  250. package/_internal/{types8.js → types.d8.ts} +1 -1
  251. package/_internal/types.js +7 -31
  252. package/_internal/types2.js +18 -29
  253. package/_internal/types3.js +15 -18
  254. package/_internal/useAppSidePanel.d.ts +12 -0
  255. package/_internal/useAppSidePanel.js +331 -6
  256. package/_internal/useFocusOnList.d.ts +83 -0
  257. package/_internal/useFocusOnList.js +502 -44
  258. package/_internal/useListboxItem.d.ts +32 -0
  259. package/_internal/useListboxItem.js +120 -23
  260. package/_internal/useSideNavigationMenuBar.d.ts +9 -0
  261. package/_internal/useSideNavigationMenuBar.js +371 -7
  262. package/_internal/useTheme.d.ts +13 -0
  263. package/_internal/useTheme.js +10 -8
  264. package/index.d.ts +1738 -0
  265. package/index.js +523 -1674
  266. package/package.json +2 -2
  267. /package/_internal/{helpers.js → helpers.d.ts} +0 -0
  268. /package/_internal/{types13.js → types.d13.ts} +0 -0
  269. /package/_internal/{types9.js → types.d9.ts} +0 -0
@@ -1,9 +1,91 @@
1
- import { B as BreadcrumbItemProps } from './types3.js';
2
- import { C as Comp } from './helpers.js';
1
+ import { b as _objectWithoutProperties, c as _extends } from './_rollupPluginBabelHelpers.js';
2
+ import React__default, { forwardRef } from 'react';
3
+ import classNames from 'classnames';
4
+ import { w as warnIfNoAccessibleLabelFound } from './warnIfNoAccessibleLabelFound.js';
5
+ import styled, { css } from 'styled-components';
6
+ import { u as useTheme } from './useTheme.js';
7
+
8
+ /**
9
+ * Component style.
10
+ */
11
+ const StyledBreadcrumbItem = styled.a`
12
+ background: none;
13
+ border: none;
14
+ cursor: unset;
15
+ font-family: var(--redsift-typography-body-font-family);
16
+ font-size: var(--redsift-typography-body-font-size);
17
+ font-weight: var(--redsift-typography-body-font-weight);
18
+ line-height: var(--redsift-typography-body-line-height);
19
+ padding: 4px;
20
+ text-decoration: none;
21
+
22
+ ${_ref => {
23
+ let {
24
+ $isDisabled,
25
+ $isCurrent
26
+ } = _ref;
27
+ return css`
28
+ ${$isDisabled ? `
29
+ color: var(--redsift-color-neutral-mid-grey);
30
+ ` : $isCurrent ? `
31
+ color: var(--redsift-color-primary-n);
32
+ ` : `
33
+ color: var(--redsift-redsift-color-text-primary);
34
+ `}
35
+
36
+ ${!$isDisabled && !$isCurrent && css`
37
+ &:hover,
38
+ &:focus-visible {
39
+ // cursor: pointer;
40
+ text-decoration: underline;
41
+ text-underline-offset: 2px;
42
+ }
43
+ `}
44
+ `;
45
+ }}
46
+
47
+ &:focus-visible {
48
+ outline: 2px solid var(--redsift-redsift-color-text-primary);
49
+ }
50
+ `;
51
+
52
+ const _excluded = ["as", "children", "className", "href", "isCurrent", "isDisabled", "theme"];
53
+ const COMPONENT_NAME = 'BreadcrumbItem';
54
+ const CLASSNAME = 'redsift-breadcrumb-item';
3
55
 
4
56
  /**
5
57
  * The BreadcrumbItem components is a list of links to the parent pages of the current page in hierarchical order.
6
58
  */
7
- declare const BreadcrumbItem: Comp<BreadcrumbItemProps, HTMLAnchorElement>;
59
+ const BreadcrumbItem = /*#__PURE__*/forwardRef((props, ref) => {
60
+ const {
61
+ as,
62
+ children,
63
+ className,
64
+ href,
65
+ isCurrent,
66
+ isDisabled,
67
+ theme: propsTheme
68
+ } = props,
69
+ forwardedProps = _objectWithoutProperties(props, _excluded);
70
+ warnIfNoAccessibleLabelFound(props, [children], 'BreadcrumbItem');
71
+ const theme = useTheme(propsTheme);
72
+ return /*#__PURE__*/React__default.createElement(StyledBreadcrumbItem, _extends({
73
+ as: as || 'a',
74
+ role: !isCurrent ? 'link' : undefined,
75
+ tabIndex: !isDisabled && !isCurrent ? 0 : undefined
76
+ }, forwardedProps, {
77
+ $isCurrent: isCurrent,
78
+ $isDisabled: isDisabled,
79
+ $theme: theme,
80
+ "aria-current": isCurrent ? 'page' : undefined,
81
+ "aria-disabled": isDisabled || isCurrent,
82
+ className: classNames(BreadcrumbItem.className, className),
83
+ href: !isDisabled && !isCurrent ? href : undefined,
84
+ ref: ref
85
+ }), children);
86
+ });
87
+ BreadcrumbItem.className = CLASSNAME;
88
+ BreadcrumbItem.displayName = COMPONENT_NAME;
8
89
 
9
90
  export { BreadcrumbItem as B };
91
+ //# sourceMappingURL=BreadcrumbItem.js.map
@@ -0,0 +1,29 @@
1
+ import { B as BreadcrumbItemProps } from './types.d3.ts';
2
+ import { ComponentProps } from 'react';
3
+ import { h as StylingProps } from './styles.d2.ts';
4
+ import { T as Theme } from './colors.js';
5
+ import { C as Comp } from './helpers.js';
6
+
7
+ /**
8
+ * Component props.
9
+ */
10
+ interface BreadcrumbsProps extends ComponentProps<'nav'>, StylingProps {
11
+ /** Whether the component is disabled or not. */
12
+ isDisabled?: boolean;
13
+ /** Theme. */
14
+ theme?: Theme;
15
+ }
16
+ type StyledBreadcrumbsProps = Omit<BreadcrumbsProps, 'isDisabled'> & {
17
+ $isDisabled: BreadcrumbsProps['isDisabled'];
18
+ $theme: BreadcrumbsProps['theme'];
19
+ };
20
+
21
+ /**
22
+ * The Breadcrumbs components is a list of links to the parent pages of the current page in hierarchical order.
23
+ */
24
+ declare const BaseBreadcrumbs: Comp<BreadcrumbsProps, HTMLElement>;
25
+ declare const Breadcrumbs: Comp<BreadcrumbsProps, HTMLElement> & {
26
+ Item: Comp<BreadcrumbItemProps, HTMLAnchorElement>;
27
+ };
28
+
29
+ export { BreadcrumbsProps as B, StyledBreadcrumbsProps as S, BaseBreadcrumbs as a, Breadcrumbs as b };
@@ -1,29 +1,94 @@
1
- import { B as BreadcrumbItemProps } from './types3.js';
2
- import { ComponentProps } from 'react';
3
- import { h as StylingProps } from './styles2.js';
4
- import { T as Theme } from './colors.js';
5
- import { C as Comp } from './helpers.js';
1
+ import { b as _objectWithoutProperties, c as _extends } from './_rollupPluginBabelHelpers.js';
2
+ import React__default, { forwardRef } from 'react';
3
+ import classNames from 'classnames';
4
+ import { w as warnIfNoAccessibleLabelFound } from './warnIfNoAccessibleLabelFound.js';
5
+ import styled, { css } from 'styled-components';
6
+ import { i as baseStyling } from './styles4.js';
7
+ import { f as filterComponents } from './filterComponents.js';
8
+ import { B as BreadcrumbItem } from './BreadcrumbItem.js';
9
+ import { u as useTheme, a as ThemeProvider } from './useTheme.js';
6
10
 
7
11
  /**
8
- * Component props.
12
+ * Component style.
9
13
  */
10
- interface BreadcrumbsProps extends ComponentProps<'nav'>, StylingProps {
11
- /** Whether the component is disabled or not. */
12
- isDisabled?: boolean;
13
- /** Theme. */
14
- theme?: Theme;
15
- }
16
- type StyledBreadcrumbsProps = Omit<BreadcrumbsProps, 'isDisabled'> & {
17
- $isDisabled: BreadcrumbsProps['isDisabled'];
18
- $theme: BreadcrumbsProps['theme'];
19
- };
14
+ const StyledBreadcrumbs = styled.nav`
15
+ ${baseStyling}
16
+
17
+ ol {
18
+ display: inline-flex;
19
+ list-style: none;
20
+ padding: unset;
21
+ }
22
+
23
+ .redsift-breadcrumbs__separator {
24
+ font-family: var(--redsift-typography-body-font-family);
25
+ font-size: var(--redsift-typography-body-font-size);
26
+ font-weight: var(--redsift-typography-body-font-weight);
27
+ line-height: var(--redsift-typography-body-line-height);
28
+ margin: 0px 4px;
29
+
30
+ ${_ref => {
31
+ let {
32
+ $isDisabled,
33
+ $theme
34
+ } = _ref;
35
+ return $isDisabled ? css`
36
+ color: var(--redsift-color-neutral-mid-grey);
37
+ ` : css`
38
+ color: var(--redsift-color-${$theme}-components-text-primary);
39
+ `;
40
+ }}
41
+ }
42
+ `;
43
+
44
+ const _excluded = ["children", "className", "isDisabled", "theme"];
45
+ const COMPONENT_NAME = 'Breadcrumbs';
46
+ const CLASSNAME = 'redsift-breadcrumbs';
20
47
 
21
48
  /**
22
49
  * The Breadcrumbs components is a list of links to the parent pages of the current page in hierarchical order.
23
50
  */
24
- declare const BaseBreadcrumbs: Comp<BreadcrumbsProps, HTMLElement>;
25
- declare const Breadcrumbs: Comp<BreadcrumbsProps, HTMLElement> & {
26
- Item: Comp<BreadcrumbItemProps, HTMLAnchorElement>;
27
- };
51
+ const BaseBreadcrumbs = /*#__PURE__*/forwardRef((props, ref) => {
52
+ const {
53
+ children,
54
+ className,
55
+ isDisabled,
56
+ theme: propsTheme
57
+ } = props,
58
+ forwardedProps = _objectWithoutProperties(props, _excluded);
59
+ warnIfNoAccessibleLabelFound(props, undefined, 'Breadcrumbs');
60
+ const theme = useTheme(propsTheme);
61
+ const childArray = filterComponents([Breadcrumbs.Item])(children);
62
+ const breadcrumbItems = childArray.map((child, index) => {
63
+ var _child$key;
64
+ const isCurrent = index === childArray.length - 1;
65
+ return /*#__PURE__*/React__default.createElement("li", {
66
+ key: index
67
+ }, /*#__PURE__*/React__default.createElement(Breadcrumbs.Item, _extends({
68
+ isDisabled: child.props.isDisabled || isDisabled || undefined
69
+ }, child.props, {
70
+ key: (_child$key = child.key) !== null && _child$key !== void 0 ? _child$key : index,
71
+ isCurrent: isCurrent
72
+ })), isCurrent === false ? /*#__PURE__*/React__default.createElement("span", {
73
+ className: `${BaseBreadcrumbs.className}__separator`
74
+ }, '/') : null);
75
+ });
76
+ return /*#__PURE__*/React__default.createElement(ThemeProvider, {
77
+ value: {
78
+ theme
79
+ }
80
+ }, /*#__PURE__*/React__default.createElement(StyledBreadcrumbs, _extends({}, forwardedProps, {
81
+ $isDisabled: isDisabled,
82
+ $theme: theme,
83
+ className: classNames(BaseBreadcrumbs.className, className),
84
+ ref: ref
85
+ }), /*#__PURE__*/React__default.createElement("ol", null, breadcrumbItems)));
86
+ });
87
+ BaseBreadcrumbs.className = CLASSNAME;
88
+ BaseBreadcrumbs.displayName = COMPONENT_NAME;
89
+ const Breadcrumbs = Object.assign(BaseBreadcrumbs, {
90
+ Item: BreadcrumbItem
91
+ });
28
92
 
29
- export { BreadcrumbsProps as B, StyledBreadcrumbsProps as S, BaseBreadcrumbs as a, Breadcrumbs as b };
93
+ export { BaseBreadcrumbs as B, Breadcrumbs as a };
94
+ //# sourceMappingURL=Breadcrumbs2.js.map
@@ -0,0 +1,30 @@
1
+ import * as styled_components from 'styled-components';
2
+ import { b as ButtonProps, B as ButtonVariant } from './types.d4.ts';
3
+ import { T as Theme } from './colors.js';
4
+ import { C as Comp } from './helpers.js';
5
+
6
+ /**
7
+ * Component style.
8
+ */
9
+ declare const StyledButton: styled_components.StyledComponent<"button", any, ButtonProps & {
10
+ $color: string | undefined;
11
+ $fullWidth?: boolean | undefined;
12
+ $isActive: boolean | undefined;
13
+ $isDisabled: boolean | undefined;
14
+ $isGradient: boolean;
15
+ $isHovered: boolean | undefined;
16
+ $isLoading: boolean | undefined;
17
+ $theme: Theme | undefined;
18
+ $variant: ButtonVariant | undefined;
19
+ }, never>;
20
+
21
+ /**
22
+ * The Button is a semantic button that looks like a button.
23
+ *
24
+ * For a semantic link that looks like a button, please use the ButtonLink component.
25
+ * For a semantic link that looks like a link, please use the Link component.
26
+ * For a semantic button that looks like a link, please use the LinkButton component.
27
+ */
28
+ declare const Button: Comp<ButtonProps, HTMLButtonElement>;
29
+
30
+ export { Button as B, StyledButton as S };
@@ -1,22 +1,17 @@
1
- import * as styled_components from 'styled-components';
2
- import { b as ButtonProps, B as ButtonVariant } from './types4.js';
3
- import { T as Theme } from './colors.js';
4
- import { C as Comp } from './helpers.js';
1
+ import { b as _objectWithoutProperties, c as _extends } from './_rollupPluginBabelHelpers.js';
2
+ import React__default, { forwardRef, useRef } from 'react';
3
+ import classNames from 'classnames';
4
+ import { B as ButtonVariant, S as StyledButton } from './styles.js';
5
+ import { StyledGradientBorder } from './gradient-border.js';
6
+ import { B as ButtonsColorPalette } from './colors.js';
7
+ import { C as ConditionalWrapper } from './ConditionalWrapper.js';
8
+ import { a as Icon } from './Icon2.js';
9
+ import { S as Spinner } from './Spinner2.js';
10
+ import { u as useTheme } from './useTheme.js';
5
11
 
6
- /**
7
- * Component style.
8
- */
9
- declare const StyledButton: styled_components.StyledComponent<"button", any, ButtonProps & {
10
- $color: string | undefined;
11
- $fullWidth?: boolean | undefined;
12
- $isActive: boolean | undefined;
13
- $isDisabled: boolean | undefined;
14
- $isGradient: boolean;
15
- $isHovered: boolean | undefined;
16
- $isLoading: boolean | undefined;
17
- $theme: Theme | undefined;
18
- $variant: ButtonVariant | undefined;
19
- }, never>;
12
+ const _excluded = ["children", "className", "color", "disabled", "fullWidth", "isActive", "isDisabled", "isHovered", "isLoading", "leftIcon", "leftIconProps", "rightIcon", "rightIconProps", "theme", "variant"];
13
+ const COMPONENT_NAME = 'Button';
14
+ const CLASSNAME = 'redsift-button';
20
15
 
21
16
  /**
22
17
  * The Button is a semantic button that looks like a button.
@@ -25,6 +20,72 @@ declare const StyledButton: styled_components.StyledComponent<"button", any, But
25
20
  * For a semantic link that looks like a link, please use the Link component.
26
21
  * For a semantic button that looks like a link, please use the LinkButton component.
27
22
  */
28
- declare const Button: Comp<ButtonProps, HTMLButtonElement>;
23
+ const Button = /*#__PURE__*/forwardRef((props, ref) => {
24
+ const _ref = useRef();
25
+ const buttonRef = ref || _ref;
26
+ const {
27
+ children,
28
+ className,
29
+ color: propsColor,
30
+ disabled,
31
+ fullWidth,
32
+ isActive,
33
+ isDisabled: propsIsDisabled,
34
+ isHovered,
35
+ isLoading,
36
+ leftIcon,
37
+ leftIconProps,
38
+ rightIcon,
39
+ rightIconProps,
40
+ theme: propsTheme,
41
+ variant: propsVariant
42
+ } = props,
43
+ forwardedProps = _objectWithoutProperties(props, _excluded);
44
+ const isDisabled = isLoading || propsIsDisabled || disabled;
45
+ const theme = useTheme(propsTheme);
46
+ const color = Object.values(ButtonsColorPalette).includes(propsColor) ? propsColor : 'primary';
47
+ const variant = Object.values(ButtonVariant).includes(propsVariant) ? propsVariant : 'primary';
48
+ const isGradient = color === ButtonsColorPalette.radar;
49
+ return /*#__PURE__*/React__default.createElement(ConditionalWrapper, {
50
+ condition: isGradient && variant === ButtonVariant.secondary,
51
+ wrapper: children => /*#__PURE__*/React__default.createElement(StyledGradientBorder, {
52
+ $color: color,
53
+ $isActive: isActive,
54
+ $isDisabled: isDisabled,
55
+ $isHovered: isHovered,
56
+ $theme: theme
57
+ }, children)
58
+ }, /*#__PURE__*/React__default.createElement(StyledButton, _extends({
59
+ type: "button"
60
+ }, forwardedProps, {
61
+ $color: color,
62
+ $fullWidth: fullWidth,
63
+ $isActive: isActive,
64
+ $isDisabled: isDisabled,
65
+ $isGradient: isGradient,
66
+ $isHovered: isHovered,
67
+ $isLoading: isLoading,
68
+ $theme: theme,
69
+ $variant: variant,
70
+ "aria-disabled": isDisabled,
71
+ className: classNames(Button.className, className),
72
+ disabled: isDisabled,
73
+ ref: buttonRef
74
+ }), leftIcon ? /*#__PURE__*/React__default.createElement(Icon, _extends({
75
+ icon: leftIcon,
76
+ "aria-hidden": "true",
77
+ className: "left"
78
+ }, leftIconProps)) : null, isLoading ? /*#__PURE__*/React__default.createElement(Spinner, {
79
+ size: "small",
80
+ color: variant === ButtonVariant.primary ? 'grey-l1' : 'grey-l2'
81
+ }) : null, /*#__PURE__*/React__default.createElement("span", null, children), rightIcon ? /*#__PURE__*/React__default.createElement(Icon, _extends({
82
+ icon: rightIcon,
83
+ "aria-hidden": "true",
84
+ className: "right"
85
+ }, rightIconProps)) : null));
86
+ });
87
+ Button.className = CLASSNAME;
88
+ Button.displayName = COMPONENT_NAME;
29
89
 
30
- export { Button as B, StyledButton as S };
90
+ export { Button as B };
91
+ //# sourceMappingURL=Button2.js.map
@@ -0,0 +1,41 @@
1
+ import { ComponentProps } from 'react';
2
+ import { h as StylingProps, g as FlexLayoutProps } from './styles.d2.ts';
3
+ import { V as ValueOf, C as Comp } from './helpers.js';
4
+ import { B as ButtonsColorPalette, T as Theme } from './colors.js';
5
+
6
+ /**
7
+ * Component variant.
8
+ */
9
+ declare const ButtonGroupVariant: {
10
+ readonly primary: "primary";
11
+ readonly secondary: "secondary";
12
+ readonly unstyled: "unstyled";
13
+ };
14
+ type ButtonGroupVariant = ValueOf<typeof ButtonGroupVariant>;
15
+ /**
16
+ * Component color.
17
+ */
18
+ type ButtonGroupColor = ButtonsColorPalette;
19
+ /**
20
+ * Component props.
21
+ */
22
+ interface ButtonGroupProps extends ComponentProps<'div'>, StylingProps, FlexLayoutProps {
23
+ /** Button color. */
24
+ color?: ButtonGroupColor;
25
+ /** Button variant. */
26
+ variant?: ButtonGroupVariant;
27
+ /** Theme. */
28
+ theme?: Theme;
29
+ }
30
+ type StyledButtonGroupProps = ButtonGroupProps & {
31
+ $color: ButtonGroupProps['color'];
32
+ $variant: ButtonGroupProps['variant'];
33
+ $theme: ButtonGroupProps['theme'];
34
+ };
35
+
36
+ /**
37
+ * The ButtonGroup component.
38
+ */
39
+ declare const ButtonGroup: Comp<ButtonGroupProps, HTMLDivElement>;
40
+
41
+ export { ButtonGroupVariant as B, StyledButtonGroupProps as S, ButtonGroupColor as a, ButtonGroupProps as b, ButtonGroup as c };
@@ -1,41 +1,181 @@
1
- import { ComponentProps } from 'react';
2
- import { h as StylingProps, g as FlexLayoutProps } from './styles2.js';
3
- import { V as ValueOf, C as Comp } from './helpers.js';
4
- import { B as ButtonsColorPalette, T as Theme } from './colors.js';
1
+ import { b as _objectWithoutProperties, c as _extends } from './_rollupPluginBabelHelpers.js';
2
+ import React__default, { forwardRef } from 'react';
3
+ import classNames from 'classnames';
4
+ import styled, { css } from 'styled-components';
5
+ import { i as baseStyling, g as baseFlexbox } from './styles4.js';
6
+ import { i as isComponent } from './isComponent.js';
7
+ import { u as useTheme } from './useTheme.js';
8
+ import { B as ButtonsColorPalette } from './colors.js';
9
+ import { f as filterComponents } from './filterComponents.js';
5
10
 
6
11
  /**
7
12
  * Component variant.
8
13
  */
9
- declare const ButtonGroupVariant: {
10
- readonly primary: "primary";
11
- readonly secondary: "secondary";
12
- readonly unstyled: "unstyled";
14
+ const ButtonGroupVariant = {
15
+ primary: 'primary',
16
+ secondary: 'secondary',
17
+ unstyled: 'unstyled'
13
18
  };
14
- type ButtonGroupVariant = ValueOf<typeof ButtonGroupVariant>;
19
+
15
20
  /**
16
21
  * Component color.
17
22
  */
18
- type ButtonGroupColor = ButtonsColorPalette;
23
+
19
24
  /**
20
25
  * Component props.
21
26
  */
22
- interface ButtonGroupProps extends ComponentProps<'div'>, StylingProps, FlexLayoutProps {
23
- /** Button color. */
24
- color?: ButtonGroupColor;
25
- /** Button variant. */
26
- variant?: ButtonGroupVariant;
27
- /** Theme. */
28
- theme?: Theme;
29
- }
30
- type StyledButtonGroupProps = ButtonGroupProps & {
31
- $color: ButtonGroupProps['color'];
32
- $variant: ButtonGroupProps['variant'];
33
- $theme: ButtonGroupProps['theme'];
34
- };
27
+
28
+ /**
29
+ * Component style.
30
+ */
31
+ const StyledButtonGroup = styled.div`
32
+ display: ${_ref => {
33
+ let {
34
+ inline
35
+ } = _ref;
36
+ return inline ? 'inline-flex' : 'flex';
37
+ }};
38
+
39
+ ${baseStyling}
40
+ ${baseFlexbox}
41
+
42
+ ${_ref2 => {
43
+ let {
44
+ $color,
45
+ $variant,
46
+ $theme
47
+ } = _ref2;
48
+ return css`
49
+ ${$variant === ButtonGroupVariant.secondary ? css`
50
+ .first-button {
51
+ border-top-right-radius: 0;
52
+ border-bottom-right-radius: 0;
53
+ border-right-color: transparent;
54
+ }
55
+
56
+ .middle-button {
57
+ border-top-left-radius: 0;
58
+ border-bottom-left-radius: 0;
59
+ margin-left: -1px;
60
+ border-top-right-radius: 0;
61
+ border-bottom-right-radius: 0;
62
+ border-right-color: transparent;
63
+ }
64
+
65
+ .last-button {
66
+ border-top-left-radius: 0;
67
+ border-bottom-left-radius: 0;
68
+ margin-left: -1px;
69
+ }
70
+ ` : $variant === ButtonGroupVariant.unstyled ? css`
71
+ .first-button {
72
+ border-top-right-radius: 0;
73
+ border-bottom-right-radius: 0;
74
+ border-right: 1px solid rgba(0, 0, 0, 0.23);
75
+ border-color: ${`var(
76
+ --redsift-color-${$theme}-components-buttons-${$variant}-button-${$color}-text-default
77
+ )`};
78
+ }
79
+
80
+ .middle-button {
81
+ border-top-left-radius: 0;
82
+ border-bottom-left-radius: 0;
83
+ border-top-right-radius: 0;
84
+ border-bottom-right-radius: 0;
85
+ border-right: 1px solid rgba(0, 0, 0, 0.23);
86
+ border-color: ${`var(
87
+ --redsift-color-${$theme}-components-buttons-${$variant}-button-${$color}-text-default
88
+ )`};
89
+ }
90
+
91
+ .last-button {
92
+ border-top-left-radius: 0;
93
+ border-bottom-left-radius: 0;
94
+ }
95
+ ` : css`
96
+ .first-button {
97
+ border-top-right-radius: 0;
98
+ border-bottom-right-radius: 0;
99
+ border-right: 1px solid #bdbdbd;
100
+ border-color: ${`var(
101
+ --redsift-color-${$theme}-components-buttons-${$variant}-button-${$color}-background-hover
102
+ )`};
103
+ }
104
+
105
+ .middle-button {
106
+ border-top-left-radius: 0;
107
+ border-bottom-left-radius: 0;
108
+ border-top-right-radius: 0;
109
+ border-bottom-right-radius: 0;
110
+ border-right: 1px solid #bdbdbd;
111
+ border-color: ${`var(
112
+ --redsift-color-${$theme}-components-buttons-${$variant}-button-${$color}-background-hover
113
+ )`};
114
+ }
115
+
116
+ .last-button {
117
+ border-top-left-radius: 0;
118
+ border-bottom-left-radius: 0;
119
+ }
120
+ `}
121
+ `;
122
+ }};
123
+ `;
124
+
125
+ const _excluded = ["children", "className", "color", "theme", "variant"];
126
+ const COMPONENT_NAME = 'ButtonGroup';
127
+ const CLASSNAME = 'redsift-button-group';
35
128
 
36
129
  /**
37
130
  * The ButtonGroup component.
38
131
  */
39
- declare const ButtonGroup: Comp<ButtonGroupProps, HTMLDivElement>;
132
+ const ButtonGroup = /*#__PURE__*/forwardRef((props, ref) => {
133
+ const {
134
+ children,
135
+ className,
136
+ color: propsColor,
137
+ theme: propsTheme,
138
+ variant: propsVariant
139
+ } = props,
140
+ forwardedProps = _objectWithoutProperties(props, _excluded);
141
+ const theme = useTheme(propsTheme);
142
+ const color = Object.values(ButtonsColorPalette).includes(propsColor) ? propsColor : 'primary';
143
+ const variant = Object.values(ButtonGroupVariant).includes(propsVariant) ? propsVariant : 'primary';
144
+
145
+ /**
146
+ * Create an array containing only valid children being either Button, IconButton, ButtonLink, MenuButton or Select.
147
+ */
148
+ const childArray = filterComponents(['Button', 'IconButton', 'ButtonLink', 'MenuButton', 'Select', 'Dialog', 'Popover', 'Tooltip'])(children);
149
+ const buttons = childArray.map((child, index) => {
150
+ var _key;
151
+ if (isComponent('MenuButton')(child) || isComponent('Select')(child) || isComponent('Dialog')(child) || isComponent('Popover')(child) || isComponent('Tooltip')(child)) {
152
+ var _child$key;
153
+ return /*#__PURE__*/React__default.cloneElement(child, {
154
+ color,
155
+ theme,
156
+ variant,
157
+ key: (_child$key = child.key) !== null && _child$key !== void 0 ? _child$key : index,
158
+ triggerClassName: index === 0 ? 'first-button' : index === childArray.length - 1 ? 'last-button' : 'middle-button'
159
+ });
160
+ }
161
+ return /*#__PURE__*/React__default.cloneElement(child, {
162
+ color,
163
+ theme,
164
+ variant,
165
+ key: (_key = child.key) !== null && _key !== void 0 ? _key : index,
166
+ className: index === 0 ? 'first-button' : index === childArray.length - 1 ? 'last-button' : 'middle-button'
167
+ });
168
+ });
169
+ return /*#__PURE__*/React__default.createElement(StyledButtonGroup, _extends({}, forwardedProps, {
170
+ className: classNames(ButtonGroup.className, className),
171
+ ref: ref,
172
+ $color: color,
173
+ $variant: variant,
174
+ $theme: theme
175
+ }), buttons);
176
+ });
177
+ ButtonGroup.className = CLASSNAME;
178
+ ButtonGroup.displayName = COMPONENT_NAME;
40
179
 
41
- export { ButtonGroupVariant as B, StyledButtonGroupProps as S, ButtonGroupColor as a, ButtonGroupProps as b, ButtonGroup as c };
180
+ export { ButtonGroupVariant as B, ButtonGroup as a };
181
+ //# sourceMappingURL=ButtonGroup.js.map
@@ -0,0 +1,28 @@
1
+ import { b as ButtonProps } from './types.d4.ts';
2
+ import { L as LinkProps } from './types.d18.ts';
3
+ import { C as Comp } from './helpers.js';
4
+
5
+ /**
6
+ * Component props.
7
+ */
8
+ interface ButtonLinkProps extends Omit<LinkProps, 'color'>, Pick<ButtonProps, 'color' | 'isActive' | 'isDisabled' | 'isHovered' | 'leftIcon' | 'leftIconProps' | 'rightIconProps' | 'rightIcon' | 'variant' | 'theme'> {
9
+ }
10
+ type StyledButtonLinkProps = ButtonLinkProps & {
11
+ $isActive: ButtonLinkProps['isActive'];
12
+ $isDisabled: ButtonLinkProps['isDisabled'];
13
+ $isHovered: ButtonLinkProps['isHovered'];
14
+ $variant: ButtonLinkProps['variant'];
15
+ $theme: ButtonLinkProps['theme'];
16
+ $color: ButtonLinkProps['color'];
17
+ };
18
+
19
+ /**
20
+ * The ButtonLink is a semantic link that looks like a button.
21
+ *
22
+ * For a semantic button that looks like a button, please use the Button component.
23
+ * For a semantic link that looks like a link, please use the Link component.
24
+ * For a semantic button that looks like a link, please use the LinkButton component.
25
+ */
26
+ declare const ButtonLink: Comp<ButtonLinkProps, HTMLAnchorElement>;
27
+
28
+ export { ButtonLinkProps as B, StyledButtonLinkProps as S, ButtonLink as a };