@carbon/ibm-products 2.19.2 → 2.21.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (110) hide show
  1. package/css/index-full-carbon.css +147 -111
  2. package/css/index-full-carbon.css.map +1 -1
  3. package/css/index-full-carbon.min.css +1 -1
  4. package/css/index-full-carbon.min.css.map +1 -1
  5. package/css/index-without-carbon-released-only.css +28 -20
  6. package/css/index-without-carbon-released-only.css.map +1 -1
  7. package/css/index-without-carbon-released-only.min.css +1 -1
  8. package/css/index-without-carbon-released-only.min.css.map +1 -1
  9. package/css/index-without-carbon.css +28 -20
  10. package/css/index-without-carbon.css.map +1 -1
  11. package/css/index-without-carbon.min.css +1 -1
  12. package/css/index-without-carbon.min.css.map +1 -1
  13. package/css/index.css +51 -22
  14. package/css/index.css.map +1 -1
  15. package/css/index.min.css +1 -1
  16. package/css/index.min.css.map +1 -1
  17. package/es/components/ActionSet/ActionSet.js +3 -4
  18. package/es/components/AddSelect/AddSelectBody.js +2 -2
  19. package/es/components/AddSelect/AddSelectRow.js +2 -2
  20. package/es/components/Card/Card.js +1 -2
  21. package/es/components/Card/CardHeader.js +1 -2
  22. package/es/components/CreateFullPage/CreateFullPageStep.js +1 -2
  23. package/es/components/CreateTearsheet/CreateTearsheetStep.js +1 -2
  24. package/es/components/DataSpreadsheet/DataSpreadsheet.js +1 -2
  25. package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +1 -2
  26. package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +1 -2
  27. package/es/components/Datagrid/Datagrid/DatagridContent.js +2 -7
  28. package/es/components/Datagrid/Datagrid/DatagridHeaderRow.js +6 -11
  29. package/es/components/Datagrid/Datagrid/DatagridRow.js +9 -10
  30. package/es/components/Datagrid/Datagrid/DraggableElement.js +1 -2
  31. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +61 -11
  32. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +28 -14
  33. package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +1 -2
  34. package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useShouldDisableButtons.js +2 -3
  35. package/es/components/Datagrid/Datagrid/addons/Filtering/motion/variants.js +63 -41
  36. package/es/components/Datagrid/Datagrid/addons/Filtering/utils.js +1 -5
  37. package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +2 -3
  38. package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +2 -2
  39. package/es/components/Datagrid/useActionsColumn.js +1 -2
  40. package/es/components/Datagrid/useDefaultStringRenderer.js +1 -2
  41. package/es/components/Datagrid/useFiltering.js +1 -0
  42. package/es/components/Datagrid/useNestedRowExpander.js +1 -2
  43. package/es/components/Datagrid/useNestedRows.js +49 -33
  44. package/es/components/Datagrid/useOnRowClick.js +1 -1
  45. package/es/components/Datagrid/useSelectRows.js +1 -2
  46. package/es/components/Datagrid/useSortableColumns.js +1 -2
  47. package/es/components/Datagrid/useStickyColumn.js +3 -4
  48. package/es/components/Datagrid/utils/filterPropsForTesting.js +149 -0
  49. package/es/components/EditInPlace/EditInPlace.js +1 -2
  50. package/es/components/EditTearsheet/EditTearsheetForm.js +1 -2
  51. package/es/components/FilterSummary/FilterSummary.js +15 -12
  52. package/es/components/NotificationsPanel/NotificationsPanel.js +2 -3
  53. package/es/components/PageHeader/PageHeader.js +9 -11
  54. package/es/components/Saving/Saving.js +6 -6
  55. package/es/components/SidePanel/SidePanel.js +12 -7
  56. package/es/components/TagSet/TagSetOverflow.js +1 -2
  57. package/es/components/Tearsheet/Tearsheet.js +5 -0
  58. package/es/components/Tearsheet/TearsheetNarrow.js +5 -0
  59. package/es/components/Tearsheet/TearsheetShell.js +10 -10
  60. package/es/components/WebTerminal/WebTerminal.js +1 -2
  61. package/lib/components/ActionSet/ActionSet.js +3 -4
  62. package/lib/components/AddSelect/AddSelectBody.js +2 -2
  63. package/lib/components/AddSelect/AddSelectRow.js +2 -2
  64. package/lib/components/Card/Card.js +1 -2
  65. package/lib/components/Card/CardHeader.js +1 -2
  66. package/lib/components/CreateFullPage/CreateFullPageStep.js +1 -2
  67. package/lib/components/CreateTearsheet/CreateTearsheetStep.js +1 -2
  68. package/lib/components/DataSpreadsheet/DataSpreadsheet.js +1 -2
  69. package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +1 -2
  70. package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +1 -2
  71. package/lib/components/Datagrid/Datagrid/DatagridContent.js +2 -7
  72. package/lib/components/Datagrid/Datagrid/DatagridHeaderRow.js +6 -11
  73. package/lib/components/Datagrid/Datagrid/DatagridRow.js +9 -10
  74. package/lib/components/Datagrid/Datagrid/DraggableElement.js +1 -2
  75. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +60 -10
  76. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +27 -13
  77. package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +1 -2
  78. package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useShouldDisableButtons.js +2 -3
  79. package/lib/components/Datagrid/Datagrid/addons/Filtering/motion/variants.js +63 -41
  80. package/lib/components/Datagrid/Datagrid/addons/Filtering/utils.js +1 -5
  81. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +2 -3
  82. package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +2 -2
  83. package/lib/components/Datagrid/useActionsColumn.js +1 -2
  84. package/lib/components/Datagrid/useDefaultStringRenderer.js +1 -2
  85. package/lib/components/Datagrid/useFiltering.js +1 -0
  86. package/lib/components/Datagrid/useNestedRowExpander.js +1 -2
  87. package/lib/components/Datagrid/useNestedRows.js +49 -33
  88. package/lib/components/Datagrid/useOnRowClick.js +1 -1
  89. package/lib/components/Datagrid/useSelectRows.js +1 -2
  90. package/lib/components/Datagrid/useSortableColumns.js +1 -2
  91. package/lib/components/Datagrid/useStickyColumn.js +3 -4
  92. package/lib/components/Datagrid/utils/filterPropsForTesting.js +156 -0
  93. package/lib/components/EditInPlace/EditInPlace.js +1 -2
  94. package/lib/components/EditTearsheet/EditTearsheetForm.js +1 -2
  95. package/lib/components/FilterSummary/FilterSummary.js +15 -12
  96. package/lib/components/NotificationsPanel/NotificationsPanel.js +2 -3
  97. package/lib/components/PageHeader/PageHeader.js +9 -11
  98. package/lib/components/Saving/Saving.js +6 -6
  99. package/lib/components/SidePanel/SidePanel.js +12 -7
  100. package/lib/components/TagSet/TagSetOverflow.js +1 -2
  101. package/lib/components/Tearsheet/Tearsheet.js +5 -0
  102. package/lib/components/Tearsheet/TearsheetNarrow.js +5 -0
  103. package/lib/components/Tearsheet/TearsheetShell.js +10 -10
  104. package/lib/components/WebTerminal/WebTerminal.js +1 -2
  105. package/package.json +4 -4
  106. package/scss/components/Datagrid/styles/_datagrid.scss +8 -0
  107. package/scss/components/Datagrid/styles/addons/_FilterFlyout.scss +11 -8
  108. package/scss/components/Saving/_saving.scss +6 -0
  109. package/scss/components/SidePanel/_side-panel.scss +9 -3
  110. package/scss/components/TagSet/_tag-set.scss +4 -1
@@ -26,6 +26,7 @@ var _react2 = require("@carbon/react");
26
26
  var _icons = require("@carbon/react/icons");
27
27
  var _ActionSet = require("../ActionSet");
28
28
  var _variants = require("./motion/variants");
29
+ var _pconsole = _interopRequireDefault(require("../../global/js/utils/pconsole"));
29
30
  var _excluded = ["actionToolbarButtons", "actions", "animateTitle", "children", "className", "closeIconDescription", "condensedActions", "currentStep", "id", "includeOverlay", "labelText", "navigationBackIconDescription", "onNavigationBack", "onRequestClose", "onUnmount", "open", "placement", "preventCloseOnClickOutside", "selectorPageContent", "selectorPrimaryFocus", "size", "slideIn", "slug", "subtitle", "title"],
30
31
  _excluded2 = ["label", "kind", "icon", "tooltipPosition", "tooltipAlignment", "leading", "disabled", "className", "onClick"];
31
32
  /**
@@ -60,7 +61,7 @@ var defaults = {
60
61
  * Side panels keep users in-context of a page while performing tasks like navigating, editing, viewing details, or configuring something new.
61
62
  */
62
63
  var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
63
- var _window, _ref5, _cx4;
64
+ var _window;
64
65
  var actionToolbarButtons = _ref.actionToolbarButtons,
65
66
  actions = _ref.actions,
66
67
  _ref$animateTitle = _ref.animateTitle,
@@ -352,7 +353,11 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
352
353
  (0, _react.useEffect)(function () {
353
354
  if (open && slideIn) {
354
355
  var pageContentElement = document.querySelector(selectorPageContent);
355
- pageContentElement.style.inlineSize = 'auto';
356
+ if (pageContentElement) {
357
+ pageContentElement.style.inlineSize = 'auto';
358
+ } else {
359
+ _pconsole.default.warn('SidePanel prop `selectorPageContent` was not provided a selector that matches any element on your page. If an element is not found, the panel will render as a slide over.');
360
+ }
356
361
  if (placement && placement === 'right' && pageContentElement) {
357
362
  pageContentElement.style.marginInlineEnd = 0;
358
363
  pageContentElement.style.transition = !reducedMotion.matches ? "margin-inline-end ".concat(_motion.moderate02) : null;
@@ -382,9 +387,9 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
382
387
  }
383
388
  };
384
389
  var primaryActionContainerClassNames = (0, _classnames.default)(["".concat(blockClass, "__actions-container"), (0, _defineProperty2.default)({}, "".concat(blockClass, "__actions-container-condensed"), condensedActions)]);
385
- var mainPanelClassNames = (0, _classnames.default)([blockClass, className, "".concat(blockClass, "__container"), "".concat(blockClass, "__container--").concat(size), (_ref5 = {}, (0, _defineProperty2.default)(_ref5, "".concat(blockClass, "__container-right-placement"), placement === 'right'), (0, _defineProperty2.default)(_ref5, "".concat(blockClass, "__container-left-placement"), placement === 'left'), (0, _defineProperty2.default)(_ref5, "".concat(blockClass, "__container-with-action-toolbar"), actionToolbarButtons && actionToolbarButtons.length), (0, _defineProperty2.default)(_ref5, "".concat(blockClass, "__container-without-overlay"), !includeOverlay && !slideIn), (0, _defineProperty2.default)(_ref5, "".concat(blockClass, "__container-is-animating"), !animationComplete || !open), (0, _defineProperty2.default)(_ref5, "".concat(blockClass, "__container--has-slug"), slug), _ref5)]);
390
+ var mainPanelClassNames = (0, _classnames.default)([blockClass, className, "".concat(blockClass, "__container"), "".concat(blockClass, "__container--").concat(size), (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(blockClass, "__container-right-placement"), placement === 'right'), "".concat(blockClass, "__container-left-placement"), placement === 'left'), "".concat(blockClass, "__container-with-action-toolbar"), actionToolbarButtons && actionToolbarButtons.length), "".concat(blockClass, "__container-without-overlay"), !includeOverlay && !slideIn), "".concat(blockClass, "__container-is-animating"), !animationComplete || !open), "".concat(blockClass, "__container--has-slug"), slug)]);
386
391
  var renderHeader = function renderHeader() {
387
- var _slug$type, _cx, _cx2;
392
+ var _slug$type;
388
393
  var slugCloseSize = actions && actions.length && /l/.test(size) ? 'md' : 'sm';
389
394
  var normalizedSlug;
390
395
  if (slug && (slug === null || slug === void 0 || (_slug$type = slug.type) === null || _slug$type === void 0 ? void 0 : _slug$type.displayName) === 'Slug') {
@@ -394,7 +399,7 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
394
399
  });
395
400
  }
396
401
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
397
- className: (0, _classnames.default)("".concat(blockClass, "__title-container"), (_cx = {}, (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__on-detail-step"), currentStep > 0), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__on-detail-step-without-title"), currentStep > 0 && !title), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__title-container--no-title-animation"), !animateTitle), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__title-container-is-animating"), !animationComplete || !open), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__title-container-without-title"), !title), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__title-container--reduced-motion"), reducedMotion.matches), _cx))
402
+ className: (0, _classnames.default)("".concat(blockClass, "__title-container"), (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(blockClass, "__on-detail-step"), currentStep > 0), "".concat(blockClass, "__on-detail-step-without-title"), currentStep > 0 && !title), "".concat(blockClass, "__title-container--no-title-animation"), !animateTitle), "".concat(blockClass, "__title-container-is-animating"), !animationComplete || !open), "".concat(blockClass, "__title-container-without-title"), !title), "".concat(blockClass, "__title-container--reduced-motion"), reducedMotion.matches))
398
403
  }, currentStep > 0 && /*#__PURE__*/_react.default.createElement(_react2.Button, {
399
404
  "aria-label": navigationBackIconDescription,
400
405
  kind: "ghost",
@@ -426,7 +431,7 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
426
431
  onClick: onRequestClose,
427
432
  ref: sidePanelCloseRef
428
433
  })), subtitle && /*#__PURE__*/_react.default.createElement("p", {
429
- className: (0, _classnames.default)("".concat(blockClass, "__subtitle-text"), (_cx2 = {}, (0, _defineProperty2.default)(_cx2, "".concat(blockClass, "__subtitle-text-no-animation"), !animateTitle), (0, _defineProperty2.default)(_cx2, "".concat(blockClass, "__subtitle-text-no-animation-no-action-toolbar"), !animateTitle && (!actionToolbarButtons || !actionToolbarButtons.length)), (0, _defineProperty2.default)(_cx2, "".concat(blockClass, "__subtitle-text-is-animating"), !animationComplete && animateTitle), (0, _defineProperty2.default)(_cx2, "".concat(blockClass, "__subtitle-without-title"), !title), _cx2))
434
+ className: (0, _classnames.default)("".concat(blockClass, "__subtitle-text"), (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(blockClass, "__subtitle-text-no-animation"), !animateTitle), "".concat(blockClass, "__subtitle-text-no-animation-no-action-toolbar"), !animateTitle && (!actionToolbarButtons || !actionToolbarButtons.length)), "".concat(blockClass, "__subtitle-text-is-animating"), !animationComplete && animateTitle), "".concat(blockClass, "__subtitle-without-title"), !title))
430
435
  }, subtitle), actionToolbarButtons && actionToolbarButtons.length && /*#__PURE__*/_react.default.createElement("div", {
431
436
  className: (0, _classnames.default)("".concat(blockClass, "__action-toolbar"), (0, _defineProperty2.default)({}, "".concat(blockClass, "__action-toolbar-no-animation"), !animateTitle))
432
437
  }, actionToolbarButtons.map(function (_ref6) {
@@ -491,7 +496,7 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
491
496
  className: "".concat(blockClass, "__visually-hidden")
492
497
  }, "Focus sentinel"), !animateTitle && renderHeader(), /*#__PURE__*/_react.default.createElement("div", {
493
498
  ref: sidePanelInnerRef,
494
- className: (0, _classnames.default)("".concat(blockClass, "__inner-content"), (_cx4 = {}, (0, _defineProperty2.default)(_cx4, "".concat(blockClass, "__static-inner-content"), !animateTitle), (0, _defineProperty2.default)(_cx4, "".concat(blockClass, "__static-inner-content-no-actions"), !animateTitle && !(actions !== null && actions !== void 0 && actions.length)), (0, _defineProperty2.default)(_cx4, "".concat(blockClass, "__inner-content-with-actions"), actions && actions.length), _cx4))
499
+ className: (0, _classnames.default)("".concat(blockClass, "__inner-content"), (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(blockClass, "__static-inner-content"), !animateTitle), "".concat(blockClass, "__static-inner-content-no-actions"), !animateTitle && !(actions !== null && actions !== void 0 && actions.length)), "".concat(blockClass, "__inner-content-with-actions"), actions && actions.length))
495
500
  }, animateTitle && renderHeader(), /*#__PURE__*/_react.default.createElement("div", {
496
501
  className: "".concat(blockClass, "__body-content")
497
502
  }, children), /*#__PURE__*/_react.default.createElement(_ActionSet.ActionSet, {
@@ -90,7 +90,6 @@ var TagSetOverflow = exports.TagSetOverflow = /*#__PURE__*/_react.default.forwar
90
90
  }, overflowTags.filter(function (_, index) {
91
91
  return overflowTags.length > allTagsModalSearchThreshold ? index < allTagsModalSearchThreshold : index <= allTagsModalSearchThreshold;
92
92
  }).map(function (tag, index) {
93
- var _cx2;
94
93
  var tagProps = {};
95
94
  if (overflowType === 'tag') {
96
95
  tagProps.type = 'high-contrast';
@@ -99,7 +98,7 @@ var TagSetOverflow = exports.TagSetOverflow = /*#__PURE__*/_react.default.forwar
99
98
  tagProps.filter = false;
100
99
  }
101
100
  return /*#__PURE__*/_react.default.createElement("li", {
102
- className: (0, _classnames.default)("".concat(blockClass, "__tag-item"), (_cx2 = {}, (0, _defineProperty2.default)(_cx2, "".concat(blockClass, "__tag-item--default"), overflowType === 'default'), (0, _defineProperty2.default)(_cx2, "".concat(blockClass, "__tag-item--tag"), overflowType === 'tag'), _cx2)),
101
+ className: (0, _classnames.default)("".concat(blockClass, "__tag-item"), (0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(blockClass, "__tag-item--default"), overflowType === 'default'), "".concat(blockClass, "__tag-item--tag"), overflowType === 'tag')),
103
102
  key: index
104
103
  }, /*#__PURE__*/_react.default.cloneElement(tag, tagProps));
105
104
  })), overflowTags.length > allTagsModalSearchThreshold && /*#__PURE__*/_react.default.createElement(_react2.Link, {
@@ -115,6 +115,11 @@ Tearsheet.propTypes = _objectSpread({
115
115
  // we duplicate this Button prop to improve the DocGen here
116
116
  onClick: _react2.Button.propTypes.onClick
117
117
  })))]),
118
+ /**
119
+ * The aria-label for the tearsheet, which is optional.
120
+ * if it is not passed, the title will be used as the aria-label.
121
+ */
122
+ ariaLabel: _propTypes.default.string,
118
123
  /**
119
124
  * An optional class or classes to be added to the outermost element.
120
125
  */
@@ -103,6 +103,11 @@ TearsheetNarrow.propTypes = _objectSpread({
103
103
  // we duplicate this Button prop to improve the DocGen here
104
104
  onClick: _react2.Button.propTypes.onClick
105
105
  })))]),
106
+ /**
107
+ * The aria-label for the tearsheet, which is optional.
108
+ * if it is not passed, the title will be used as the aria-label.
109
+ */
110
+ ariaLabel: _propTypes.default.string,
106
111
  /**
107
112
  * An optional class or classes to be added to the outermost element.
108
113
  */
@@ -21,7 +21,7 @@ var _react2 = require("@carbon/react");
21
21
  var _ActionSet = require("../ActionSet");
22
22
  var _Wrap = require("../../global/js/utils/Wrap");
23
23
  var _usePortalTarget = require("../../global/js/hooks/usePortalTarget");
24
- var _excluded = ["actions", "children", "className", "closeIconDescription", "description", "hasCloseIcon", "headerActions", "influencer", "influencerPosition", "influencerWidth", "label", "navigation", "onClose", "open", "selectorPrimaryFocus", "size", "portalTarget", "title", "verticalPosition"];
24
+ var _excluded = ["actions", "ariaLabel", "children", "className", "closeIconDescription", "description", "hasCloseIcon", "headerActions", "influencer", "influencerPosition", "influencerWidth", "label", "navigation", "onClose", "open", "selectorPrimaryFocus", "size", "portalTarget", "title", "verticalPosition"];
25
25
  /**
26
26
  * Copyright IBM Corp. 2020, 2023
27
27
  *
@@ -71,6 +71,7 @@ var tearsheetHasCloseIcon = exports.tearsheetHasCloseIcon = function tearsheetHa
71
71
  * */
72
72
  var TearsheetShell = exports.TearsheetShell = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
73
73
  var actions = _ref.actions,
74
+ ariaLabel = _ref.ariaLabel,
74
75
  children = _ref.children,
75
76
  className = _ref.className,
76
77
  closeIconDescription = _ref.closeIconDescription,
@@ -128,7 +129,7 @@ var TearsheetShell = exports.TearsheetShell = /*#__PURE__*/_react.default.forwar
128
129
  }
129
130
  handleStackChange.checkFocus = function () {
130
131
  // if we are now the topmost tearsheet, ensure we have focus
131
- if (position === depth && modalRef.current && !modalRef.current.contains(document.activeElement)) {
132
+ if (open && position === depth && modalRef.current && !modalRef.current.contains(document.activeElement)) {
132
133
  handleStackChange.claimFocus();
133
134
  }
134
135
  };
@@ -185,7 +186,6 @@ var TearsheetShell = exports.TearsheetShell = /*#__PURE__*/_react.default.forwar
185
186
  }
186
187
  }
187
188
  if (position <= depth) {
188
- var _cx, _ref2, _cx3, _cx5, _cx6;
189
189
  // Include a modal header if and only if one or more of these is given.
190
190
  // We can't use a Wrap for the ModalHeader because ComposedModal requires
191
191
  // the direct child to be the ModalHeader instance.
@@ -194,11 +194,11 @@ var TearsheetShell = exports.TearsheetShell = /*#__PURE__*/_react.default.forwar
194
194
  // Include an ActionSet if and only if one or more actions is given.
195
195
  var includeActions = actions && (actions === null || actions === void 0 ? void 0 : actions.length) > 0;
196
196
  return renderPortalUse( /*#__PURE__*/_react.default.createElement(_react2.ComposedModal, (0, _extends2.default)({}, rest, {
197
- "aria-label": (0, _getNodeTextContent.getNodeTextContent)(title),
198
- className: (0, _classnames.default)(bc, className, (_cx = {}, (0, _defineProperty2.default)(_cx, "".concat(bc, "--stacked-").concat(position, "-of-").concat(depth),
197
+ "aria-label": ariaLabel || (0, _getNodeTextContent.getNodeTextContent)(title),
198
+ className: (0, _classnames.default)(bc, className, (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(bc, "--stacked-").concat(position, "-of-").concat(depth),
199
199
  // Don't apply this on the initial open of a single tearsheet.
200
- depth > 1 || depth === 1 && prevDepth.current > 1), (0, _defineProperty2.default)(_cx, "".concat(bc, "--wide"), wide), (0, _defineProperty2.default)(_cx, "".concat(bc, "--narrow"), !wide), _cx)),
201
- style: (_ref2 = {}, (0, _defineProperty2.default)(_ref2, "--".concat(bc, "--stacking-scale-factor-single"), (width - 32) / width), (0, _defineProperty2.default)(_ref2, "--".concat(bc, "--stacking-scale-factor-double"), (width - 64) / width), _ref2),
200
+ depth > 1 || depth === 1 && prevDepth.current > 1), "".concat(bc, "--wide"), wide), "".concat(bc, "--narrow"), !wide)),
201
+ style: (0, _defineProperty2.default)((0, _defineProperty2.default)({}, "--".concat(bc, "--stacking-scale-factor-single"), (width - 32) / width), "--".concat(bc, "--stacking-scale-factor-double"), (width - 64) / width),
202
202
  containerClassName: (0, _classnames.default)("".concat(bc, "__container"), (0, _defineProperty2.default)({}, "".concat(bc, "__container--lower"), verticalPosition === 'lower')),
203
203
  onClose: onClose,
204
204
  open: open,
@@ -209,7 +209,7 @@ var TearsheetShell = exports.TearsheetShell = /*#__PURE__*/_react.default.forwar
209
209
  selectorsFloatingMenus: [".".concat(carbonPrefix, "--overflow-menu-options"), ".".concat(carbonPrefix, "--tooltip"), '.flatpickr-calendar', ".".concat(bc, "__container")],
210
210
  size: "sm"
211
211
  }), includeHeader && /*#__PURE__*/_react.default.createElement(_react2.ModalHeader, {
212
- className: (0, _classnames.default)("".concat(bc, "__header"), (_cx3 = {}, (0, _defineProperty2.default)(_cx3, "".concat(bc, "__header--with-close-icon"), effectiveHasCloseIcon), (0, _defineProperty2.default)(_cx3, "".concat(bc, "__header--with-nav"), navigation), _cx3)),
212
+ className: (0, _classnames.default)("".concat(bc, "__header"), (0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(bc, "__header--with-close-icon"), effectiveHasCloseIcon), "".concat(bc, "__header--with-nav"), navigation)),
213
213
  closeClassName: (0, _classnames.default)((0, _defineProperty2.default)({}, "".concat(bc, "__header--no-close-icon"), !effectiveHasCloseIcon)),
214
214
  closeModal: onClose,
215
215
  iconDescription: closeIconDescription
@@ -234,7 +234,7 @@ var TearsheetShell = exports.TearsheetShell = /*#__PURE__*/_react.default.forwar
234
234
  element: _react2.ModalBody,
235
235
  className: "".concat(bc, "__body")
236
236
  }, /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
237
- className: (0, _classnames.default)((_cx5 = {}, (0, _defineProperty2.default)(_cx5, "".concat(bc, "__influencer"), true), (0, _defineProperty2.default)(_cx5, "".concat(bc, "__influencer--wide"), influencerWidth === 'wide'), _cx5)),
237
+ className: (0, _classnames.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(bc, "__influencer"), true), "".concat(bc, "__influencer--wide"), influencerWidth === 'wide')),
238
238
  neverRender: influencerPosition === 'right'
239
239
  }, influencer), /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
240
240
  className: "".concat(bc, "__right")
@@ -245,7 +245,7 @@ var TearsheetShell = exports.TearsheetShell = /*#__PURE__*/_react.default.forwar
245
245
  className: "".concat(bc, "__content"),
246
246
  alwaysRender: influencer && influencerPosition === 'right'
247
247
  }, children), /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
248
- className: (0, _classnames.default)((_cx6 = {}, (0, _defineProperty2.default)(_cx6, "".concat(bc, "__influencer"), true), (0, _defineProperty2.default)(_cx6, "".concat(bc, "__influencer--wide"), influencerWidth === 'wide'), _cx6)),
248
+ className: (0, _classnames.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(bc, "__influencer"), true), "".concat(bc, "__influencer--wide"), influencerWidth === 'wide')),
249
249
  neverRender: influencerPosition !== 'right'
250
250
  }, influencer)), includeActions && /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
251
251
  className: "".concat(bc, "__button-container")
@@ -50,7 +50,6 @@ var defaults = {
50
50
  * The `WebTerminal` is prompted by the user and is persistent until dismissed. The purpose of a web terminal is to provide users with the ability to type commands manually instead of using the GUI.
51
51
  */
52
52
  var WebTerminal = exports.WebTerminal = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
53
- var _ref3;
54
53
  var _ref$actions = _ref.actions,
55
54
  actions = _ref$actions === void 0 ? defaults.actions : _ref$actions,
56
55
  children = _ref.children,
@@ -114,7 +113,7 @@ var WebTerminal = exports.WebTerminal = /*#__PURE__*/_react.default.forwardRef(f
114
113
  };
115
114
  return shouldRender ? /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, _objectSpread(_objectSpread({}, rest), (0, _devtools.getDevtoolsProps)(componentName)), {
116
115
  ref: ref,
117
- className: (0, _classnames.default)([blockClass, className, (_ref3 = {}, (0, _defineProperty2.default)(_ref3, "".concat(blockClass, "--open"), open), (0, _defineProperty2.default)(_ref3, "".concat(blockClass, "--closed"), !open), _ref3)]),
116
+ className: (0, _classnames.default)([blockClass, className, (0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(blockClass, "--open"), open), "".concat(blockClass, "--closed"), !open)]),
118
117
  style: {
119
118
  animation: !prefersReducedMotion && webTerminalAnimationName
120
119
  },
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@carbon/ibm-products",
3
3
  "description": "Carbon for IBM Products",
4
- "version": "2.19.2",
4
+ "version": "2.21.0",
5
5
  "license": "Apache-2.0",
6
6
  "main": "lib/index.js",
7
7
  "module": "es/index.js",
@@ -75,7 +75,7 @@
75
75
  },
76
76
  "dependencies": {
77
77
  "@babel/runtime": "^7.22.10",
78
- "@carbon/ibm-products-styles": "^2.19.1",
78
+ "@carbon/ibm-products-styles": "^2.20.1",
79
79
  "@carbon/telemetry": "^0.1.0",
80
80
  "@dnd-kit/core": "^6.0.8",
81
81
  "@dnd-kit/sortable": "^7.0.2",
@@ -91,11 +91,11 @@
91
91
  "@carbon/grid": "^11.21.1",
92
92
  "@carbon/layout": "^11.20.1",
93
93
  "@carbon/motion": "^11.16.1",
94
- "@carbon/react": "^1.45.0",
94
+ "@carbon/react": "^1.47.0",
95
95
  "@carbon/themes": "^11.28.0",
96
96
  "@carbon/type": "^11.25.1",
97
97
  "react": "^16.8.6 || ^17.0.1 || ^18.2.0",
98
98
  "react-dom": "^16.8.6 || ^17.0.1 || ^18.2.0"
99
99
  },
100
- "gitHead": "6947a5b9d0e07a7a3d8e39abe152329e87200896"
100
+ "gitHead": "752821d664db5561979e60b06ad4d70ab644a250"
101
101
  }
@@ -279,6 +279,13 @@
279
279
  }
280
280
  }
281
281
 
282
+ .#{$block-class}__empty-state
283
+ .#{c4p-settings.$carbon-prefix}--data-table
284
+ tbody
285
+ tr:not([data-child-row]):hover {
286
+ background: inherit;
287
+ }
288
+
282
289
  .#{$block-class}__empty-state .#{$block-class}__table-simple tr:hover {
283
290
  background: transparent;
284
291
  }
@@ -375,6 +382,7 @@
375
382
 
376
383
  .#{$block-class}__head-hidden-select-all {
377
384
  padding-right: $spacing-09;
385
+
378
386
  &.#{$block-class}__select-all-sticky-left {
379
387
  position: sticky;
380
388
  z-index: 1;
@@ -1,10 +1,9 @@
1
- /*
2
- * Licensed Materials - Property of IBM
3
- * 5724-Q36
4
- * (c) Copyright IBM Corp. 2022
5
- * US Government Users Restricted Rights - Use, duplication or disclosure
6
- * restricted by GSA ADP Schedule Contract with IBM Corp.
7
- */
1
+ //
2
+ // Copyright IBM Corp. 2022, 2024
3
+ //
4
+ // This source code is licensed under the Apache-2.0 license found in the
5
+ // LICENSE file in the root directory of this source tree.
6
+ //
8
7
 
9
8
  // stylelint-disable carbon/layout-token-use
10
9
 
@@ -82,7 +81,7 @@ $action-set-height: to-rem(64px);
82
81
  display: grid;
83
82
  /* stylelint-disable-next-line -- to-rem carbon replacement for rem */
84
83
  gap: to-rem(16px) rem(32px);
85
- grid-template-columns: 1fr 1fr;
84
+ grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
86
85
  }
87
86
 
88
87
  // Carbon overrides
@@ -104,3 +103,7 @@ $action-set-height: to-rem(64px);
104
103
  .#{c4p-settings.$carbon-prefix}--fieldset {
105
104
  margin-bottom: 0;
106
105
  }
106
+
107
+ .#{variables.$block-class}-filter-flyout__stacked {
108
+ grid-template-columns: 1fr;
109
+ }
@@ -32,3 +32,9 @@ $block-class: #{c4p-settings.$pkg-prefix}--saving;
32
32
  .#{$block-class}__buttons {
33
33
  display: flex;
34
34
  }
35
+
36
+ .#{$block-class}__buttons
37
+ .#{c4p-settings.$carbon-prefix}--btn
38
+ .#{c4p-settings.$carbon-prefix}--inline-loading {
39
+ min-block-size: auto;
40
+ }
@@ -77,12 +77,14 @@ $action-set-block-class: #{c4p-settings.$pkg-prefix}--action-set;
77
77
  @include setPanelSize($size_value);
78
78
  .#{$block-class}__title-container.#{$block-class}__title-container--no-title-animation,
79
79
  .#{$block-class}__subtitle-text.#{$block-class}__subtitle-text-no-animation,
80
- .#{$block-class}__action-toolbar.#{$block-class}__action-toolbar-no-animation,
81
- .#{$block-class}__actions-container.#{$action-set-block-class}--#{$size} {
80
+ .#{$block-class}__action-toolbar.#{$block-class}__action-toolbar-no-animation {
82
81
  @include setPanelSize($size_value);
83
82
  }
84
83
  }
85
84
  }
85
+ .#{$block-class}__actions-container {
86
+ width: 100%;
87
+ }
86
88
  &.#{$block-class}__container-right-placement {
87
89
  right: 0;
88
90
  border-left: 1px solid $border-subtle-02;
@@ -112,9 +114,13 @@ $action-set-block-class: #{c4p-settings.$pkg-prefix}--action-set;
112
114
  position: sticky;
113
115
  z-index: 4;
114
116
  top: 0;
115
- padding: $spacing-05 $spacing-05 $spacing-03 $spacing-05;
117
+ padding: $spacing-05;
116
118
  background-color: $layer-01;
117
119
 
120
+ &:has(~ .#{$block-class}__subtitle-text) {
121
+ padding-bottom: $spacing-03;
122
+ }
123
+
118
124
  &:has(.#{$block-class}__navigation-back-button) {
119
125
  padding-top: $spacing-07;
120
126
  }
@@ -142,7 +142,10 @@ $block-class-modal: #{$_block-class}-modal;
142
142
  .#{$block-class-overflow}__tag-list {
143
143
  display: flex;
144
144
  flex-direction: column;
145
- margin-bottom: $spacing-03;
145
+ }
146
+
147
+ .#{$block-class-overflow}__show-all-tags-link {
148
+ margin-top: $spacing-03;
146
149
  }
147
150
 
148
151
  .#{$block-class-overflow}__tag-item.#{$block-class-overflow}__tag-item--tag