@carbon/react 1.54.0 → 1.55.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 (62) hide show
  1. package/.playwright/INTERNAL_AVT_REPORT_DO_NOT_USE.json +1065 -1012
  2. package/es/components/CodeSnippet/CodeSnippet.Skeleton.d.ts +37 -0
  3. package/es/components/CodeSnippet/CodeSnippet.d.ts +196 -0
  4. package/es/components/CodeSnippet/CodeSnippet.js +20 -19
  5. package/es/components/CodeSnippet/index.d.ts +10 -0
  6. package/es/components/ComboBox/ComboBox.d.ts +2 -2
  7. package/es/components/ComboBox/ComboBox.js +13 -5
  8. package/es/components/ComboButton/index.d.ts +51 -0
  9. package/es/components/ComboButton/index.js +9 -7
  10. package/es/components/ComposedModal/ComposedModal.d.ts +1 -1
  11. package/es/components/ComposedModal/ComposedModal.js +6 -6
  12. package/es/components/DataTable/TableBatchAction.d.ts +1 -5
  13. package/es/components/Dropdown/Dropdown.js +3 -1
  14. package/es/components/Modal/Modal.js +3 -3
  15. package/es/components/MultiSelect/FilterableMultiSelect.js +31 -0
  16. package/es/components/MultiSelect/MultiSelect.js +37 -7
  17. package/es/components/Slug/index.js +8 -13
  18. package/es/components/Tabs/Tabs.js +44 -13
  19. package/es/components/Tag/DismissibleTag.js +119 -0
  20. package/es/components/Tag/OperationalTag.js +99 -0
  21. package/es/components/Tag/SelectableTag.js +98 -0
  22. package/es/components/Tag/index.d.ts +4 -1
  23. package/es/components/TreeView/TreeNode.js +1 -1
  24. package/es/components/UIShell/HeaderMenu.d.ts +219 -0
  25. package/es/components/UIShell/HeaderMenu.js +22 -10
  26. package/es/components/UIShell/SideNavMenu.js +11 -1
  27. package/es/components/UIShell/SideNavMenuItem.d.ts +4 -0
  28. package/es/components/UIShell/SideNavMenuItem.js +8 -1
  29. package/es/components/UIShell/SwitcherItem.d.ts +4 -0
  30. package/es/components/UIShell/SwitcherItem.js +6 -0
  31. package/es/index.js +5 -2
  32. package/lib/components/CodeSnippet/CodeSnippet.Skeleton.d.ts +37 -0
  33. package/lib/components/CodeSnippet/CodeSnippet.d.ts +196 -0
  34. package/lib/components/CodeSnippet/CodeSnippet.js +20 -19
  35. package/lib/components/CodeSnippet/index.d.ts +10 -0
  36. package/lib/components/ComboBox/ComboBox.d.ts +2 -2
  37. package/lib/components/ComboBox/ComboBox.js +13 -5
  38. package/lib/components/ComboButton/index.d.ts +51 -0
  39. package/lib/components/ComboButton/index.js +9 -7
  40. package/lib/components/ComposedModal/ComposedModal.d.ts +1 -1
  41. package/lib/components/ComposedModal/ComposedModal.js +5 -5
  42. package/lib/components/DataTable/TableBatchAction.d.ts +1 -5
  43. package/lib/components/Dropdown/Dropdown.js +3 -1
  44. package/lib/components/Modal/Modal.js +3 -3
  45. package/lib/components/MultiSelect/FilterableMultiSelect.js +31 -0
  46. package/lib/components/MultiSelect/MultiSelect.js +37 -7
  47. package/lib/components/Slug/index.js +8 -13
  48. package/lib/components/Tabs/Tabs.js +44 -13
  49. package/lib/components/Tag/DismissibleTag.js +129 -0
  50. package/lib/components/Tag/OperationalTag.js +109 -0
  51. package/lib/components/Tag/SelectableTag.js +108 -0
  52. package/lib/components/Tag/index.d.ts +4 -1
  53. package/lib/components/TreeView/TreeNode.js +1 -1
  54. package/lib/components/UIShell/HeaderMenu.d.ts +219 -0
  55. package/lib/components/UIShell/HeaderMenu.js +22 -10
  56. package/lib/components/UIShell/SideNavMenu.js +11 -1
  57. package/lib/components/UIShell/SideNavMenuItem.d.ts +4 -0
  58. package/lib/components/UIShell/SideNavMenuItem.js +8 -1
  59. package/lib/components/UIShell/SwitcherItem.d.ts +4 -0
  60. package/lib/components/UIShell/SwitcherItem.js +6 -0
  61. package/lib/index.js +10 -4
  62. package/package.json +4 -4
@@ -38,9 +38,12 @@ const SideNavMenu = /*#__PURE__*/React__default["default"].forwardRef(function S
38
38
  tabIndex,
39
39
  title
40
40
  } = _ref;
41
- const isRail = React.useContext(SideNav.SideNavContext);
41
+ const {
42
+ isRail
43
+ } = React.useContext(SideNav.SideNavContext);
42
44
  const prefix = usePrefix.usePrefix();
43
45
  const [isExpanded, setIsExpanded] = React.useState(defaultExpanded);
46
+ const [prevExpanded, setPrevExpanded] = React.useState(defaultExpanded);
44
47
  const className = cx__default["default"]({
45
48
  [`${prefix}--side-nav__item`]: true,
46
49
  [`${prefix}--side-nav__item--active`]: isActive || hasActiveDescendant(children) && !isExpanded,
@@ -48,6 +51,13 @@ const SideNavMenu = /*#__PURE__*/React__default["default"].forwardRef(function S
48
51
  [`${prefix}--side-nav__item--large`]: large,
49
52
  [customClassName]: !!customClassName
50
53
  });
54
+ if (!isSideNavExpanded && isExpanded && isRail) {
55
+ setIsExpanded(false);
56
+ setPrevExpanded(true);
57
+ } else if (isSideNavExpanded && prevExpanded && isRail) {
58
+ setIsExpanded(true);
59
+ setPrevExpanded(false);
60
+ }
51
61
  return (
52
62
  /*#__PURE__*/
53
63
  // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions
@@ -20,6 +20,10 @@ interface SideNavMenuItemProps extends HTMLAttributes<HTMLElement> {
20
20
  * `aria-current="page"`, as well.
21
21
  */
22
22
  isActive?: boolean;
23
+ /**
24
+ * Optionally provide an href for the underlying li`
25
+ */
26
+ href?: string;
23
27
  }
24
28
  declare const SideNavMenuItem: React.ForwardRefExoticComponent<SideNavMenuItemProps & React.RefAttributes<HTMLElement>>;
25
29
  export default SideNavMenuItem;
@@ -29,6 +29,7 @@ const SideNavMenuItem = /*#__PURE__*/React__default["default"].forwardRef(functi
29
29
  children,
30
30
  className: customClassName,
31
31
  isActive,
32
+ href,
32
33
  ...rest
33
34
  } = props;
34
35
  const className = cx__default["default"](`${prefix}--side-nav__menu-item`, customClassName);
@@ -38,7 +39,9 @@ const SideNavMenuItem = /*#__PURE__*/React__default["default"].forwardRef(functi
38
39
  });
39
40
  return /*#__PURE__*/React__default["default"].createElement("li", {
40
41
  className: className
41
- }, /*#__PURE__*/React__default["default"].createElement(Link["default"], _rollupPluginBabelHelpers["extends"]({}, rest, {
42
+ }, /*#__PURE__*/React__default["default"].createElement(Link["default"], _rollupPluginBabelHelpers["extends"]({
43
+ href: href
44
+ }, rest, {
42
45
  className: linkClassName,
43
46
  ref: ref
44
47
  }), /*#__PURE__*/React__default["default"].createElement(SideNavLinkText["default"], null, children)));
@@ -53,6 +56,10 @@ SideNavMenuItem.propTypes = {
53
56
  * Provide an optional class to be applied to the containing node
54
57
  */
55
58
  className: PropTypes__default["default"].string,
59
+ /**
60
+ * Optionally provide an href for the underlying li`
61
+ */
62
+ href: PropTypes__default["default"].string,
56
63
  /**
57
64
  * Optionally specify whether the link is "active". An active link is one that
58
65
  * has an href that is the same as the current page. Can also pass in
@@ -39,6 +39,10 @@ interface BaseSwitcherItemProps {
39
39
  * Specify whether the panel is selected
40
40
  */
41
41
  isSelected?: boolean;
42
+ /**
43
+ * Optionally provide an href for the underlying li`
44
+ */
45
+ href?: string;
42
46
  }
43
47
  interface SwitcherItemWithAriaLabel extends BaseSwitcherItemProps {
44
48
  'aria-label': string;
@@ -37,6 +37,7 @@ const SwitcherItem = /*#__PURE__*/React.forwardRef(function SwitcherItem(props,
37
37
  index,
38
38
  handleSwitcherItemFocus,
39
39
  onKeyDown = () => {},
40
+ href,
40
41
  ...rest
41
42
  } = props;
42
43
  const prefix = usePrefix.usePrefix();
@@ -73,6 +74,7 @@ const SwitcherItem = /*#__PURE__*/React.forwardRef(function SwitcherItem(props,
73
74
  setTabFocus(evt);
74
75
  onKeyDown(evt);
75
76
  },
77
+ href: href,
76
78
  ref: forwardRef
77
79
  }, rest, {
78
80
  className: linkClassName,
@@ -94,6 +96,10 @@ SwitcherItem.propTypes = {
94
96
  * event handlers
95
97
  */
96
98
  handleSwitcherItemFocus: PropTypes__default["default"].func,
99
+ /**
100
+ * Optionally provide an href for the underlying li`
101
+ */
102
+ href: PropTypes__default["default"].string,
97
103
  /**
98
104
  * Specify the index of the SwitcherItem
99
105
  */
package/lib/index.js CHANGED
@@ -23,6 +23,8 @@ var ButtonSet = require('./components/ButtonSet/ButtonSet.js');
23
23
  var Checkbox = require('./components/Checkbox/Checkbox.js');
24
24
  var Checkbox_Skeleton = require('./components/Checkbox/Checkbox.Skeleton.js');
25
25
  var index$4 = require('./components/ClassPrefix/index.js');
26
+ var CodeSnippet = require('./components/CodeSnippet/CodeSnippet.js');
27
+ var CodeSnippet_Skeleton = require('./components/CodeSnippet/CodeSnippet.Skeleton.js');
26
28
  var ComboBox = require('./components/ComboBox/ComboBox.js');
27
29
  var index$5 = require('./components/ComboButton/index.js');
28
30
  var ComposedModal = require('./components/ComposedModal/ComposedModal.js');
@@ -109,6 +111,9 @@ var Tabs = require('./components/Tabs/Tabs.js');
109
111
  var TabContent = require('./components/TabContent/TabContent.js');
110
112
  var Tabs_Skeleton = require('./components/Tabs/Tabs.Skeleton.js');
111
113
  var Tag = require('./components/Tag/Tag.js');
114
+ var DismissibleTag = require('./components/Tag/DismissibleTag.js');
115
+ var OperationalTag = require('./components/Tag/OperationalTag.js');
116
+ var SelectableTag = require('./components/Tag/SelectableTag.js');
112
117
  var Tag_Skeleton = require('./components/Tag/Tag.Skeleton.js');
113
118
  var TextArea = require('./components/TextArea/TextArea.js');
114
119
  var TextArea_Skeleton = require('./components/TextArea/TextArea.Skeleton.js');
@@ -177,8 +182,6 @@ var FluidTextInput_Skeleton = require('./components/FluidTextInput/FluidTextInpu
177
182
  var PageSelector = require('./components/Pagination/experimental/PageSelector.js');
178
183
  var Pagination = require('./components/Pagination/experimental/Pagination.js');
179
184
  var CheckboxGroup = require('./components/CheckboxGroup/CheckboxGroup.js');
180
- var CodeSnippet_Skeleton = require('./components/CodeSnippet/CodeSnippet.Skeleton.js');
181
- var CodeSnippet = require('./components/CodeSnippet/CodeSnippet.js');
182
185
  var ContainedListItem = require('./components/ContainedList/ContainedListItem/ContainedListItem.js');
183
186
  var ContainedList = require('./components/ContainedList/ContainedList.js');
184
187
  var useContextMenu = require('./components/ContextMenu/useContextMenu.js');
@@ -252,6 +255,8 @@ exports.ButtonSet = ButtonSet["default"];
252
255
  exports.Checkbox = Checkbox["default"];
253
256
  exports.CheckboxSkeleton = Checkbox_Skeleton["default"];
254
257
  exports.ClassPrefix = index$4.ClassPrefix;
258
+ exports.CodeSnippet = CodeSnippet["default"];
259
+ exports.CodeSnippetSkeleton = CodeSnippet_Skeleton["default"];
255
260
  exports.ComboBox = ComboBox["default"];
256
261
  exports.ComboButton = index$5.ComboButton;
257
262
  exports.ComposedModal = ComposedModal["default"];
@@ -358,6 +363,9 @@ exports.Tabs = Tabs.Tabs;
358
363
  exports.TabContent = TabContent["default"];
359
364
  exports.TabsSkeleton = Tabs_Skeleton["default"];
360
365
  exports.Tag = Tag["default"];
366
+ exports.DismissibleTag = DismissibleTag["default"];
367
+ exports.OperationalTag = OperationalTag["default"];
368
+ exports.SelectableTag = SelectableTag["default"];
361
369
  exports.TagSkeleton = Tag_Skeleton["default"];
362
370
  exports.TextArea = TextArea["default"];
363
371
  exports.TextAreaSkeleton = TextArea_Skeleton["default"];
@@ -445,8 +453,6 @@ exports.unstable__FluidTextInputSkeleton = FluidTextInput_Skeleton["default"];
445
453
  exports.unstable_PageSelector = PageSelector["default"];
446
454
  exports.unstable_Pagination = Pagination["default"];
447
455
  exports.CheckboxGroup = CheckboxGroup["default"];
448
- exports.CodeSnippetSkeleton = CodeSnippet_Skeleton["default"];
449
- exports.CodeSnippet = CodeSnippet["default"];
450
456
  exports.ContainedListItem = ContainedListItem["default"];
451
457
  exports.ContainedList = ContainedList["default"];
452
458
  exports.useContextMenu = useContextMenu["default"];
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@carbon/react",
3
3
  "description": "React components for the Carbon Design System",
4
- "version": "1.54.0",
4
+ "version": "1.55.0",
5
5
  "license": "Apache-2.0",
6
6
  "main": "lib/index.js",
7
7
  "module": "es/index.js",
@@ -51,8 +51,8 @@
51
51
  "@carbon/feature-flags": "^0.19.0",
52
52
  "@carbon/icons-react": "^11.39.0",
53
53
  "@carbon/layout": "^11.21.0",
54
- "@carbon/styles": "^1.54.0",
55
- "@floating-ui/react": "^0.25.4",
54
+ "@carbon/styles": "^1.55.0",
55
+ "@floating-ui/react": "^0.26.0",
56
56
  "@ibm/telemetry-js": "^1.2.1",
57
57
  "classnames": "2.5.1",
58
58
  "copy-to-clipboard": "^3.3.1",
@@ -141,5 +141,5 @@
141
141
  "**/*.scss",
142
142
  "**/*.css"
143
143
  ],
144
- "gitHead": "4bdd6802dd612af764ef76162141333d35bd84f4"
144
+ "gitHead": "0163f7e7932f667a892bc75f0aa35464f726f4ec"
145
145
  }