@carbon/ibm-products 2.17.1 → 2.17.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. package/css/index-full-carbon.css +521 -184
  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 +66 -7
  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 +72 -7
  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 +119 -7
  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/CreateSidePanel/CreateSidePanel.js +7 -1
  18. package/es/components/Datagrid/Datagrid/DatagridExpandedRow.js +3 -1
  19. package/es/components/Datagrid/Datagrid/DatagridRow.js +13 -3
  20. package/es/components/Datagrid/useExpandedRow.js +3 -6
  21. package/es/components/Datagrid/useFocusRowExpander.js +40 -0
  22. package/es/components/Datagrid/useNestedRowExpander.js +9 -0
  23. package/es/components/Datagrid/useNestedRows.js +1 -5
  24. package/es/components/Datagrid/useRowExpander.js +9 -0
  25. package/es/components/Datagrid/useSelectRows.js +9 -2
  26. package/es/components/EditSidePanel/EditSidePanel.js +8 -2
  27. package/es/components/SidePanel/SidePanel.js +39 -19
  28. package/es/global/js/hooks/useCreateComponentStepChange.js +1 -1
  29. package/es/global/js/package-settings.js +0 -2
  30. package/lib/components/CreateSidePanel/CreateSidePanel.js +7 -1
  31. package/lib/components/Datagrid/Datagrid/DatagridExpandedRow.js +3 -1
  32. package/lib/components/Datagrid/Datagrid/DatagridRow.js +13 -3
  33. package/lib/components/Datagrid/useExpandedRow.js +2 -5
  34. package/lib/components/Datagrid/useFocusRowExpander.js +45 -0
  35. package/lib/components/Datagrid/useNestedRowExpander.js +9 -0
  36. package/lib/components/Datagrid/useNestedRows.js +1 -5
  37. package/lib/components/Datagrid/useRowExpander.js +9 -0
  38. package/lib/components/Datagrid/useSelectRows.js +9 -2
  39. package/lib/components/EditSidePanel/EditSidePanel.js +8 -2
  40. package/lib/components/SidePanel/SidePanel.js +38 -18
  41. package/lib/global/js/hooks/useCreateComponentStepChange.js +1 -1
  42. package/lib/global/js/package-settings.js +0 -2
  43. package/package.json +5 -5
  44. package/scss/components/Datagrid/styles/_useExpandedRow.scss +21 -0
  45. package/scss/components/Datagrid/styles/addons/_RowSizeDropdown.scss +9 -0
  46. package/scss/components/SidePanel/_side-panel.scss +22 -6
@@ -17,7 +17,7 @@ var _react2 = require("@carbon/react");
17
17
  var _SidePanel = require("../SidePanel");
18
18
  require("../../global/js/utils/props-helper");
19
19
  var _uuidv = _interopRequireDefault(require("../../global/js/utils/uuidv4"));
20
- var _excluded = ["children", "className", "disableSubmit", "formTitle", "formDescription", "onRequestClose", "onRequestSubmit", "open", "placement", "primaryButtonText", "secondaryButtonText", "selectorPrimaryFocus", "selectorPageContent", "size", "slideIn", "subtitle", "title"];
20
+ var _excluded = ["children", "className", "disableSubmit", "id", "formTitle", "formDescription", "onRequestClose", "onRequestSubmit", "open", "placement", "primaryButtonText", "secondaryButtonText", "selectorPrimaryFocus", "selectorPageContent", "size", "slideIn", "subtitle", "title"];
21
21
  /**
22
22
  * Copyright IBM Corp. 2021, 2021
23
23
  *
@@ -48,6 +48,7 @@ var EditSidePanel = exports.EditSidePanel = /*#__PURE__*/_react.default.forwardR
48
48
  var children = _ref.children,
49
49
  className = _ref.className,
50
50
  disableSubmit = _ref.disableSubmit,
51
+ id = _ref.id,
51
52
  formTitle = _ref.formTitle,
52
53
  formDescription = _ref.formDescription,
53
54
  onRequestClose = _ref.onRequestClose,
@@ -87,7 +88,8 @@ var EditSidePanel = exports.EditSidePanel = /*#__PURE__*/_react.default.forwardR
87
88
  onRequestClose: onRequestClose,
88
89
  title: title,
89
90
  subtitle: subtitle,
90
- selectorPrimaryFocus: selectorPrimaryFocus
91
+ selectorPrimaryFocus: selectorPrimaryFocus,
92
+ id: id
91
93
  }, (0, _devtools.getDevtoolsProps)(componentName)), {
92
94
  placement: placement,
93
95
  slideIn: slideIn,
@@ -139,6 +141,10 @@ EditSidePanel.propTypes = {
139
141
  * Specifies a required field that provides a title for a form
140
142
  */
141
143
  formTitle: _propTypes.default.node.isRequired,
144
+ /**
145
+ * Unique identifier
146
+ */
147
+ id: _propTypes.default.string,
142
148
  /**
143
149
  * Specifies an optional handler which is called when the CreateSidePanel
144
150
  * is closed.
@@ -26,7 +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 _excluded = ["actionToolbarButtons", "actions", "animateTitle", "children", "className", "closeIconDescription", "condensedActions", "currentStep", "includeOverlay", "labelText", "navigationBackIconDescription", "onNavigationBack", "onRequestClose", "onUnmount", "open", "placement", "preventCloseOnClickOutside", "selectorPageContent", "selectorPrimaryFocus", "size", "slideIn", "subtitle", "title"],
29
+ 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
30
  _excluded2 = ["label", "kind", "icon", "tooltipPosition", "tooltipAlignment", "leading", "disabled", "className", "onClick"];
31
31
  /**
32
32
  * Copyright IBM Corp. 2020, 2023
@@ -72,6 +72,8 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
72
72
  condensedActions = _ref.condensedActions,
73
73
  _ref$currentStep = _ref.currentStep,
74
74
  currentStep = _ref$currentStep === void 0 ? defaults.currentStep : _ref$currentStep,
75
+ _ref$id = _ref.id,
76
+ id = _ref$id === void 0 ? blockClass : _ref$id,
75
77
  includeOverlay = _ref.includeOverlay,
76
78
  labelText = _ref.labelText,
77
79
  _ref$navigationBackIc = _ref.navigationBackIconDescription,
@@ -88,6 +90,7 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
88
90
  _ref$size = _ref.size,
89
91
  size = _ref$size === void 0 ? defaults.size : _ref$size,
90
92
  slideIn = _ref.slideIn,
93
+ slug = _ref.slug,
91
94
  subtitle = _ref.subtitle,
92
95
  title = _ref.title,
93
96
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
@@ -112,6 +115,10 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
112
115
  var reducedMotion = typeof window !== 'undefined' && (_window = window) !== null && _window !== void 0 && _window.matchMedia ? window.matchMedia('(prefers-reduced-motion: reduce)') : {
113
116
  matches: true
114
117
  };
118
+ var getActionsContainerElement = (0, _react.useCallback)(function () {
119
+ var sidePanelOuter = document.querySelector("#".concat(id));
120
+ return sidePanelOuter && sidePanelOuter.querySelector(".".concat(blockClass, "__actions-container"));
121
+ }, [id]);
115
122
 
116
123
  // scroll panel to top going between steps
117
124
  (0, _react.useEffect)(function () {
@@ -119,7 +126,7 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
119
126
  if (panelRef && panelRef.current) {
120
127
  var _document$querySelect;
121
128
  var scrollableSection = panelRef.current.querySelector(".".concat(blockClass, "__inner-content"));
122
- var sidePanelOuter = document.querySelector("#".concat(blockClass, "-outer"));
129
+ var sidePanelOuter = document.querySelector("#".concat(id));
123
130
  var initialTitleHeight = (_document$querySelect = document.querySelector(".".concat(blockClass, "__title-container"))) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.offsetHeight;
124
131
  scrollableSection.scrollTop = 0;
125
132
  // The size of the panel has changed while it is still opened
@@ -131,7 +138,7 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
131
138
  sidePanelOuter === null || sidePanelOuter === void 0 || (_sidePanelOuter$style = sidePanelOuter.style) === null || _sidePanelOuter$style === void 0 || _sidePanelOuter$style.setProperty("--".concat(blockClass, "--title-container-height"), "".concat(Number(initialTitleHeight), "px"));
132
139
  }
133
140
  }
134
- }, [currentStep, ref, size, previousState === null || previousState === void 0 ? void 0 : previousState.size]);
141
+ }, [currentStep, ref, size, previousState === null || previousState === void 0 ? void 0 : previousState.size, id]);
135
142
 
136
143
  // set initial focus when side panel opens
137
144
  (0, _react.useEffect)(function () {
@@ -155,13 +162,13 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
155
162
  (0, _react.useEffect)(function () {
156
163
  if (open && actions && actions.length && animationComplete) {
157
164
  var _sidePanelOuter$style2;
158
- var sidePanelOuter = document.querySelector("#".concat(blockClass, "-outer"));
165
+ var sidePanelOuter = document.querySelector("#".concat(id));
159
166
  var actionsContainer = getActionsContainerElement();
160
167
  var actionsHeight = (actionsContainer === null || actionsContainer === void 0 ? void 0 : actionsContainer.offsetHeight) + 16; // add additional 1rem spacing to bottom padding
161
168
  actionsHeight = "".concat(Math.round(actionsHeight / 16), "rem");
162
169
  sidePanelOuter === null || sidePanelOuter === void 0 || (_sidePanelOuter$style2 = sidePanelOuter.style) === null || _sidePanelOuter$style2 === void 0 || _sidePanelOuter$style2.setProperty("--".concat(blockClass, "--content-bottom-padding"), actionsHeight);
163
170
  }
164
- }, [actions, condensedActions, open, animationComplete]);
171
+ }, [actions, condensedActions, open, animationComplete, id, getActionsContainerElement]);
165
172
 
166
173
  // Add console warning if labelText is provided without a title.
167
174
  // This combination is not allowed.
@@ -176,23 +183,19 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
176
183
  var _sidePanelOuter$style3;
177
184
  var height = _ref2.height;
178
185
  setPanelHeight(height);
179
- var sidePanelOuter = document.querySelector("#".concat(blockClass, "-outer"));
186
+ var sidePanelOuter = document.querySelector("#".concat(id));
180
187
  var actionsContainer = getActionsContainerElement();
181
188
  var actionsHeight = (actionsContainer === null || actionsContainer === void 0 ? void 0 : actionsContainer.offsetHeight) + 16; // add additional 1rem spacing to bottom padding
182
189
  actionsHeight = "".concat(Math.round(actionsHeight / 16), "rem");
183
190
  sidePanelOuter === null || sidePanelOuter === void 0 || (_sidePanelOuter$style3 = sidePanelOuter.style) === null || _sidePanelOuter$style3 === void 0 || _sidePanelOuter$style3.setProperty("--".concat(blockClass, "--content-bottom-padding"), actionsHeight);
184
191
  };
185
- var getActionsContainerElement = function getActionsContainerElement() {
186
- var sidePanelOuter = document.querySelector("#".concat(blockClass, "-outer"));
187
- return sidePanelOuter && sidePanelOuter.querySelector(".".concat(blockClass, "__actions-container"));
188
- };
189
192
 
190
193
  // Title and subtitle scroll animation
191
194
  (0, _react.useEffect)(function () {
192
195
  if (open && animateTitle && animationComplete && title && title.length && !reducedMotion.matches) {
193
196
  var _document$querySelect2, _document$querySelect3, _document$querySelect4;
194
- var sidePanelOuter = document.querySelector("#".concat(blockClass, "-outer"));
195
- var sidePanelScrollArea = document.querySelector("#".concat(blockClass, "-outer .").concat(blockClass, "__inner-content"));
197
+ var sidePanelOuter = document.querySelector("#".concat(id));
198
+ var sidePanelScrollArea = document.querySelector("#".concat(id, " .").concat(blockClass, "__inner-content"));
196
199
  var sidePanelTitleElement = document.querySelector(".".concat(blockClass, "__title-text"));
197
200
  var sidePanelCollapsedTitleElement = document.querySelector(".".concat(blockClass, "__collapsed-title-text"));
198
201
  var sidePanelSubtitleElement = document.querySelector(".".concat("".concat(blockClass, "__subtitle-text")));
@@ -267,7 +270,7 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
267
270
  });
268
271
  }
269
272
  if (open && !animateTitle) {
270
- var _sidePanelOuter = document.querySelector("#".concat(blockClass, "-outer"));
273
+ var _sidePanelOuter = document.querySelector("#".concat(id));
271
274
  var _sidePanelTitleElement = document.querySelector(".".concat(blockClass, "__title-container .").concat(blockClass, "__title-text"));
272
275
  var _sidePanelSubtitleElement = document.querySelector(".".concat(blockClass, "__subtitle-text"));
273
276
  var actionToolbarElement = document.querySelector(".".concat(blockClass, "__action-toolbar"));
@@ -281,7 +284,7 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
281
284
  _sidePanelOuter === null || _sidePanelOuter === void 0 || _sidePanelOuter.style.setProperty("--".concat(blockClass, "--action-bar-container-height"), "".concat(sidePanelActionBarElementHeight, "px"));
282
285
  _sidePanelOuter === null || _sidePanelOuter === void 0 || _sidePanelOuter.style.setProperty("--".concat(blockClass, "--label-text-height"), "".concat(labelHeight, "px"));
283
286
  }
284
- }, [open, animateTitle, animationComplete, panelHeight, title, size, reducedMotion.matches]);
287
+ }, [open, animateTitle, animationComplete, panelHeight, title, size, reducedMotion.matches, id]);
285
288
 
286
289
  // click outside functionality if `includeOverlay` prop is set
287
290
  (0, _react.useEffect)(function () {
@@ -378,9 +381,16 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
378
381
  }
379
382
  };
380
383
  var primaryActionContainerClassNames = (0, _classnames.default)(["".concat(blockClass, "__actions-container"), (0, _defineProperty2.default)({}, "".concat(blockClass, "__actions-container-condensed"), condensedActions)]);
381
- 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), _ref5)]);
384
+ 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)]);
382
385
  var renderHeader = function renderHeader() {
383
386
  var _cx, _cx2;
387
+ var normalizedSlug;
388
+ if (slug) {
389
+ normalizedSlug = /*#__PURE__*/_react.default.cloneElement(slug, {
390
+ // slug size is sm unless actions and size > md
391
+ size: actions.length && /l/.test(size) ? 'md' : 'sm'
392
+ });
393
+ }
384
394
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
385
395
  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))
386
396
  }, currentStep > 0 && /*#__PURE__*/_react.default.createElement(_react2.Button, {
@@ -398,7 +408,9 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
398
408
  onClick: onNavigationBack
399
409
  }), title && title.length && labelText && labelText.length && /*#__PURE__*/_react.default.createElement("p", {
400
410
  className: "".concat(blockClass, "__label-text")
401
- }, labelText), title && title.length && renderTitle()), /*#__PURE__*/_react.default.createElement(_react2.Button, {
411
+ }, labelText), title && title.length && renderTitle()), /*#__PURE__*/_react.default.createElement("div", {
412
+ className: "".concat(blockClass, "__slug-and-close")
413
+ }, normalizedSlug, /*#__PURE__*/_react.default.createElement(_react2.Button, {
402
414
  "aria-label": closeIconDescription,
403
415
  kind: "ghost",
404
416
  size: "sm",
@@ -411,7 +423,7 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
411
423
  className: "".concat(blockClass, "__close-button"),
412
424
  onClick: onRequestClose,
413
425
  ref: sidePanelCloseRef
414
- }), subtitle && /*#__PURE__*/_react.default.createElement("p", {
426
+ })), subtitle && /*#__PURE__*/_react.default.createElement("p", {
415
427
  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))
416
428
  }, subtitle), actionToolbarButtons && actionToolbarButtons.length && /*#__PURE__*/_react.default.createElement("div", {
417
429
  className: (0, _classnames.default)("".concat(blockClass, "__action-toolbar"), (0, _defineProperty2.default)({}, "".concat(blockClass, "__action-toolbar-no-animation"), !animateTitle))
@@ -455,7 +467,7 @@ var SidePanel = exports.SidePanel = /*#__PURE__*/_react.default.forwardRef(funct
455
467
  var contentRef = ref || sidePanelRef;
456
468
  (0, _useResizeObserver.useResizeObserver)(contentRef, handleResize);
457
469
  return /*#__PURE__*/_react.default.createElement(_framerMotion.AnimatePresence, null, open && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_framerMotion.motion.div, (0, _extends2.default)({}, (0, _devtools.getDevtoolsProps)(componentName), rest, {
458
- id: "".concat(blockClass, "-outer"),
470
+ id: id,
459
471
  className: mainPanelClassNames,
460
472
  onBlur: handleBlur,
461
473
  ref: contentRef,
@@ -563,6 +575,10 @@ SidePanel.propTypes = {
563
575
  * Sets the current step of the side panel
564
576
  */
565
577
  currentStep: _propTypes.default.number,
578
+ /**
579
+ * Unique identifier
580
+ */
581
+ id: _propTypes.default.string,
566
582
  /**
567
583
  * Determines whether the side panel should render with an overlay
568
584
  */
@@ -622,6 +638,10 @@ SidePanel.propTypes = {
622
638
  * Determines if this panel slides in
623
639
  */
624
640
  slideIn: _propTypes.default.bool,
641
+ /**
642
+ * Provide a `Slug` component to be rendered inside the `SidePanel` component
643
+ */
644
+ slug: _propTypes.default.node,
625
645
  /**
626
646
  * Sets the subtitle text
627
647
  */
@@ -73,7 +73,7 @@ var useCreateComponentStepChange = exports.useCreateComponentStepChange = functi
73
73
  (0, _react.useEffect)(function () {
74
74
  var onUnmount = function onUnmount() {
75
75
  if (componentName !== 'CreateFullPage') {
76
- setCurrentStep(0);
76
+ setCurrentStep(1);
77
77
  }
78
78
  setIsSubmitting(false);
79
79
  onClose();
@@ -85,8 +85,6 @@ var defaults = {
85
85
  'default-portal-target-body': true,
86
86
  'Datagrid.useInlineEdit': false,
87
87
  'Datagrid.useEditableCell': false,
88
- 'Datagrid.useExpandedRow': false,
89
- 'Datagrid.useNestedRows': false,
90
88
  'Datagrid.useFiltering': false,
91
89
  'Datagrid.useCustomizeColumns': false,
92
90
  'ExampleComponent.secondaryIcon': false,
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.17.1",
4
+ "version": "2.17.2",
5
5
  "license": "Apache-2.0",
6
6
  "main": "lib/index.js",
7
7
  "module": "es/index.js",
@@ -74,7 +74,7 @@
74
74
  },
75
75
  "dependencies": {
76
76
  "@babel/runtime": "^7.22.10",
77
- "@carbon/ibm-products-styles": "^2.17.1",
77
+ "@carbon/ibm-products-styles": "^2.17.2",
78
78
  "@carbon/telemetry": "^0.1.0",
79
79
  "@dnd-kit/core": "^6.0.8",
80
80
  "@dnd-kit/sortable": "^7.0.2",
@@ -89,11 +89,11 @@
89
89
  "@carbon/grid": "^11.21.1",
90
90
  "@carbon/layout": "^11.20.1",
91
91
  "@carbon/motion": "^11.16.1",
92
- "@carbon/react": "^1.42.1",
93
- "@carbon/themes": "^11.27.1",
92
+ "@carbon/react": "^1.44.0",
93
+ "@carbon/themes": "^11.28.0",
94
94
  "@carbon/type": "^11.25.1",
95
95
  "react": "^16.8.6 || ^17.0.1 || ^18.2.0",
96
96
  "react-dom": "^16.8.6 || ^17.0.1 || ^18.2.0"
97
97
  },
98
- "gitHead": "370d06eb88989ab2e82640ddaa4df29c19f27bd7"
98
+ "gitHead": "7b7eda56917b98f508478035f87c17ca75c46375"
99
99
  }
@@ -71,3 +71,24 @@
71
71
  td {
72
72
  background: $layer-hover;
73
73
  }
74
+
75
+ .#{variables.$block-class}
76
+ .#{c4p-settings.$carbon-prefix}--data-table
77
+ tbody
78
+ tr:hover
79
+ td.#{variables.$block-class}__expanded-row-cell-wrapper,
80
+ .#{variables.$block-class}
81
+ .#{c4p-settings.$carbon-prefix}--data-table
82
+ td.#{variables.$block-class}__expanded-row-cell-wrapper,
83
+ .#{variables.$block-class}
84
+ .#{c4p-settings.$carbon-prefix}--data-table
85
+ .#{variables.$block-class}__carbon-row-expanded
86
+ td.#{variables.$block-class}__expandable-row-cell {
87
+ border: none;
88
+ }
89
+
90
+ .#{variables.$block-class}
91
+ .#{c4p-settings.$carbon-prefix}--data-table
92
+ td.#{variables.$block-class}__expanded-row-cell-wrapper {
93
+ padding: 0;
94
+ }
@@ -84,3 +84,12 @@
84
84
  .#{variables.$block-class}__row-size__row-settings-trigger--open.#{c4p-settings.$carbon-prefix}--btn--ghost {
85
85
  background-color: $layer-02;
86
86
  }
87
+
88
+ .#{variables.$block-class}
89
+ table.#{c4p-settings.$carbon-prefix}--data-table--xl.#{variables.$block-class}__vertical-align-center
90
+ td.#{variables.$block-class}__expandable-row-cell,
91
+ .#{variables.$block-class}
92
+ table.#{c4p-settings.$carbon-prefix}--data-table--xl.#{variables.$block-class}__vertical-align-top
93
+ td.#{variables.$block-class}__expandable-row-cell {
94
+ padding-top: $spacing-03;
95
+ }
@@ -45,7 +45,8 @@ $action-set-block-class: #{c4p-settings.$pkg-prefix}--action-set;
45
45
  @mixin setCommonTitleStyles() {
46
46
  display: -webkit-box;
47
47
  overflow: hidden;
48
- padding-right: $spacing-09;
48
+ /* stylelint-disable-next-line carbon/layout-token-use -- custom css property set below */
49
+ padding-right: var(--#{$block-class}--title-padding-right);
49
50
  -webkit-box-orient: vertical;
50
51
  -webkit-line-clamp: 2;
51
52
  }
@@ -61,6 +62,7 @@ $action-set-block-class: #{c4p-settings.$pkg-prefix}--action-set;
61
62
  --#{$block-class}--content-bottom-padding: #{$spacing-10};
62
63
  --#{$block-class}--collapsed-title-y-position: 1rem;
63
64
  --#{$block-class}--label-text-height: 0;
65
+ --#{$block-class}--title-padding-right: #{$spacing-09};
64
66
 
65
67
  position: fixed;
66
68
  // Need to disable stylelint until dart sass namespace support is added
@@ -140,6 +142,9 @@ $action-set-block-class: #{c4p-settings.$pkg-prefix}--action-set;
140
142
  background-color: transparent;
141
143
  }
142
144
  }
145
+ &.#{$block-class}__container--has-slug {
146
+ --#{$block-class}--title-padding-right: #{$spacing-12};
147
+ }
143
148
  &.#{$block-class}__container-is-animating {
144
149
  pointer-events: none;
145
150
  }
@@ -174,7 +179,7 @@ $action-set-block-class: #{c4p-settings.$pkg-prefix}--action-set;
174
179
  @include type.type-style('label-01');
175
180
 
176
181
  overflow: hidden;
177
- padding-right: $spacing-05;
182
+ padding-right: var(--#{$block-class}--title-padding-right);
178
183
  opacity: var(--#{$block-class}--subtitle-opacity);
179
184
  text-overflow: ellipsis;
180
185
  transform: translateY(var(--#{$block-class}--title-y-position));
@@ -244,6 +249,10 @@ $action-set-block-class: #{c4p-settings.$pkg-prefix}--action-set;
244
249
  overflow-x: hidden;
245
250
  }
246
251
 
252
+ &.#{$block-class}__container--has-slug .#{$block-class}__inner-content {
253
+ @include utilities.ai-gradient('bottom');
254
+ }
255
+
247
256
  .#{$block-class}__inner-content-with-actions {
248
257
  height: calc(
249
258
  100vh - (var(--#{$block-class}--content-bottom-padding) + 2rem)
@@ -330,19 +339,26 @@ $action-set-block-class: #{c4p-settings.$pkg-prefix}--action-set;
330
339
  }
331
340
 
332
341
  .#{c4p-settings.$carbon-prefix}--btn.#{$block-class}__close-button {
333
- position: absolute;
334
- z-index: 5;
335
- top: $spacing-03;
336
- right: $spacing-05;
337
342
  display: flex;
338
343
  align-items: center;
339
344
  justify-content: center;
345
+ margin: $spacing-03;
346
+ margin-bottom: 0;
340
347
  }
341
348
 
342
349
  .#{c4p-settings.$carbon-prefix}--btn.#{$block-class}__close-button
343
350
  .#{c4p-settings.$carbon-prefix}--btn__icon {
344
351
  margin: 0;
345
352
  }
353
+
354
+ .#{$block-class}__slug-and-close {
355
+ position: fixed;
356
+ z-index: 5;
357
+ top: 0;
358
+ right: 0;
359
+ display: flex;
360
+ }
361
+
346
362
  .#{$block-class}__body-content {
347
363
  padding: $spacing-05;
348
364
  padding-top: 0;