@carbon/ibm-products 2.0.0-rc.4 → 2.0.0-rc.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (30) hide show
  1. package/css/index-full-carbon.css +17 -0
  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.css +17 -0
  6. package/css/index-without-carbon.css.map +1 -1
  7. package/css/index-without-carbon.min.css +1 -1
  8. package/css/index-without-carbon.min.css.map +1 -1
  9. package/css/index.css +17 -0
  10. package/css/index.css.map +1 -1
  11. package/css/index.min.css +1 -1
  12. package/css/index.min.css.map +1 -1
  13. package/es/components/CreateTearsheet/CreateTearsheet.js +8 -1
  14. package/es/components/Datagrid/Datagrid/DatagridContent.js +2 -2
  15. package/es/components/Datagrid/Datagrid/DatagridRow.js +3 -3
  16. package/es/components/Datagrid/Datagrid/DatagridToolbar.js +4 -2
  17. package/es/components/Datagrid/useRowExpander.js +11 -3
  18. package/es/components/PageHeader/PageHeader.js +3 -3
  19. package/es/global/js/hooks/useResetCreateComponent.js +6 -2
  20. package/es/global/js/utils/getNumberOfHiddenSteps.js +19 -0
  21. package/lib/components/CreateTearsheet/CreateTearsheet.js +9 -1
  22. package/lib/components/Datagrid/Datagrid/DatagridContent.js +2 -2
  23. package/lib/components/Datagrid/Datagrid/DatagridRow.js +3 -3
  24. package/lib/components/Datagrid/Datagrid/DatagridToolbar.js +4 -2
  25. package/lib/components/Datagrid/useRowExpander.js +15 -3
  26. package/lib/components/PageHeader/PageHeader.js +3 -3
  27. package/lib/global/js/hooks/useResetCreateComponent.js +7 -2
  28. package/lib/global/js/utils/getNumberOfHiddenSteps.js +28 -0
  29. package/package.json +2 -2
  30. package/scss/components/Datagrid/styles/_useExpandedRow.scss +19 -1
@@ -37,6 +37,8 @@ var _devtools = require("../../global/js/utils/devtools");
37
37
 
38
38
  var _lastIndexInArray = require("../../global/js/utils/lastIndexInArray");
39
39
 
40
+ var _getNumberOfHiddenSteps = require("../../global/js/utils/getNumberOfHiddenSteps");
41
+
40
42
  var _excluded = ["backButtonText", "cancelButtonText", "children", "className", "description", "influencerWidth", "initialStep", "label", "nextButtonText", "onClose", "onRequestSubmit", "open", "submitButtonText", "title", "verticalPosition"];
41
43
 
42
44
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -147,7 +149,12 @@ var CreateTearsheet = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
147
149
  if (lastItem !== lastIncludedStep) {
148
150
  setLastIncludedStep(lastItem);
149
151
  }
150
- }, [stepData, firstIncludedStep, lastIncludedStep]);
152
+
153
+ if (open && initialStep) {
154
+ var numberOfHiddenSteps = (0, _getNumberOfHiddenSteps.getNumberOfHiddenSteps)(stepData, initialStep);
155
+ setCurrentStep(Number(initialStep + numberOfHiddenSteps));
156
+ }
157
+ }, [stepData, firstIncludedStep, lastIncludedStep, initialStep, open]);
151
158
  (0, _hooks.useCreateComponentFocus)({
152
159
  previousState: previousState,
153
160
  currentStep: currentStep,
@@ -160,6 +167,7 @@ var CreateTearsheet = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
160
167
  previousState: previousState,
161
168
  open: open,
162
169
  setCurrentStep: setCurrentStep,
170
+ stepData: stepData,
163
171
  initialStep: initialStep,
164
172
  totalSteps: stepData === null || stepData === void 0 ? void 0 : stepData.length,
165
173
  componentName: componentName
@@ -140,7 +140,7 @@ var DatagridContent = function DatagridContent(_ref) {
140
140
  }
141
141
 
142
142
  var gridElement = document.querySelector("#".concat(tableId));
143
- var tableHeader = document.querySelector(".".concat(_settings.carbon.prefix, "--data-table-header"));
143
+ var tableHeader = gridElement === null || gridElement === void 0 ? void 0 : gridElement.querySelector(".".concat(_settings.carbon.prefix, "--data-table-header"));
144
144
  gridElement.style.setProperty("--".concat(blockClass, "--grid-width"), (0, _layout.px)(totalColumnsWidth + 32));
145
145
 
146
146
  if (gridActive) {
@@ -158,7 +158,7 @@ var DatagridContent = function DatagridContent(_ref) {
158
158
  className: "".concat(blockClass, "__datagridLeftPanel")
159
159
  }, leftPanel.panelContent), withInlineEdit ? /*#__PURE__*/_react.default.createElement("div", {
160
160
  ref: multiKeyTrackingRef
161
- }, renderTable()) : renderTable())), (rows === null || rows === void 0 ? void 0 : rows.length) > 0 && !isFetching && DatagridPagination && DatagridPagination(datagridState), CustomizeColumnsModal && /*#__PURE__*/_react.default.createElement(CustomizeColumnsModal, {
161
+ }, renderTable()) : renderTable())), (rows === null || rows === void 0 ? void 0 : rows.length) > 0 && !isFetching && DatagridPagination && /*#__PURE__*/_react.default.createElement(DatagridPagination, datagridState), CustomizeColumnsModal && /*#__PURE__*/_react.default.createElement(CustomizeColumnsModal, {
162
162
  instance: datagridState
163
163
  }));
164
164
  };
@@ -50,7 +50,7 @@ var DatagridRow = function DatagridRow(datagridState) {
50
50
  var activeCellId = state.activeCellId;
51
51
  var activeCellObject = activeCellId && (0, _getCellIdAsObject.getCellIdAsObject)(activeCellId);
52
52
  return /*#__PURE__*/_react.default.createElement(TableRow, (0, _extends2.default)({
53
- className: (0, _classnames.default)("".concat(blockClass, "__carbon-row"), (_cx = {}, (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__carbon-row-expanded"), row.isExpanded), (0, _defineProperty2.default)(_cx, "".concat(_settings.carbon.prefix, "--data-table--selected"), row.isSelected), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__carbon-row-hover-active"), activeCellObject && row.index === activeCellObject.row), _cx))
53
+ className: (0, _classnames.default)("".concat(blockClass, "__carbon-row"), (_cx = {}, (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__carbon-row-expanded"), row.isExpanded), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__carbon-row-expandable"), row.canExpand), (0, _defineProperty2.default)(_cx, "".concat(_settings.carbon.prefix, "--data-table--selected"), row.isSelected), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__carbon-row-hover-active"), activeCellObject && row.index === activeCellObject.row), _cx))
54
54
  }, row.getRowProps(), {
55
55
  key: row.id,
56
56
  onMouseEnter: function onMouseEnter(event) {
@@ -61,7 +61,7 @@ var DatagridRow = function DatagridRow(datagridState) {
61
61
  var hoverRow = event.target.closest(".".concat(blockClass, "__carbon-row-expanded"));
62
62
  hoverRow === null || hoverRow === void 0 ? void 0 : hoverRow.classList.remove("".concat(blockClass, "__carbon-row-expanded-hover-active"));
63
63
  }
64
- }), row.cells.map(function (cell) {
64
+ }), row.cells.map(function (cell, index) {
65
65
  var cellProps = cell.getCellProps();
66
66
  var children = cellProps.children,
67
67
  restProps = (0, _objectWithoutProperties2.default)(cellProps, _excluded);
@@ -76,7 +76,7 @@ var DatagridRow = function DatagridRow(datagridState) {
76
76
  }
77
77
 
78
78
  return /*#__PURE__*/_react.default.createElement(TableCell, (0, _extends2.default)({
79
- className: "".concat(blockClass, "__cell")
79
+ className: (0, _classnames.default)("".concat(blockClass, "__cell"), (0, _defineProperty2.default)({}, "".concat(blockClass, "__expandable-row-cell"), row.canExpand && index === 0))
80
80
  }, restProps, {
81
81
  key: cell.column.id
82
82
  }), content);
@@ -58,7 +58,8 @@ var DatagridBatchActionsToolbar = function DatagridBatchActionsToolbar(datagridS
58
58
 
59
59
  var selectedFlatRows = datagridState.selectedFlatRows,
60
60
  toggleAllRowsSelected = datagridState.toggleAllRowsSelected,
61
- toolbarBatchActions = datagridState.toolbarBatchActions;
61
+ toolbarBatchActions = datagridState.toolbarBatchActions,
62
+ setGlobalFilter = datagridState.setGlobalFilter;
62
63
  var totalSelected = selectedFlatRows && selectedFlatRows.length; // Get initial width of batch actions container,
63
64
  // used to measure when all items are put inside
64
65
  // the ButtonMenu
@@ -135,7 +136,8 @@ var DatagridBatchActionsToolbar = function DatagridBatchActionsToolbar(datagridS
135
136
  shouldShowBatchActions: totalSelected > 0,
136
137
  totalSelected: totalSelected,
137
138
  onCancel: function onCancel() {
138
- return toggleAllRowsSelected(false);
139
+ toggleAllRowsSelected(false);
140
+ setGlobalFilter(null);
139
141
  }
140
142
  }, !displayAllInMenu && toolbarBatchActions && (toolbarBatchActions === null || toolbarBatchActions === void 0 ? void 0 : toolbarBatchActions.map(function (batchAction, index) {
141
143
  if (index < 2 && toolbarBatchActions.length > 3 || index < 3 && toolbarBatchActions.length === 3) {
@@ -9,10 +9,16 @@ exports.default = void 0;
9
9
 
10
10
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
11
 
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
+
12
14
  var _react = _interopRequireDefault(require("react"));
13
15
 
14
16
  var _icons = require("@carbon/react/icons");
15
17
 
18
+ var _settings = require("../../settings");
19
+
20
+ var _classnames = _interopRequireDefault(require("classnames"));
21
+
16
22
  /* eslint-disable react/prop-types */
17
23
 
18
24
  /*
@@ -22,16 +28,22 @@ var _icons = require("@carbon/react/icons");
22
28
  * US Government Users Restricted Rights - Use, duplication or disclosure
23
29
  * restricted by GSA ADP Schedule Contract with IBM Corp.
24
30
  */
31
+ var blockClass = "".concat(_settings.pkg.prefix, "--datagrid");
32
+
25
33
  var useRowExpander = function useRowExpander(hooks) {
26
34
  var visibleColumns = function visibleColumns(columns) {
27
35
  var expanderColumn = {
28
36
  id: 'expander',
29
37
  Cell: function Cell(_ref) {
30
38
  var row = _ref.row;
31
- return row.canExpand && /*#__PURE__*/_react.default.createElement("span", row.getToggleRowExpandedProps(), row.isExpanded ? /*#__PURE__*/_react.default.createElement(_icons.ChevronUp, {
32
- size: 16
39
+ return row.canExpand && /*#__PURE__*/_react.default.createElement("button", (0, _extends2.default)({
40
+ type: "button",
41
+ "aria-label": "Expand current row",
42
+ className: (0, _classnames.default)("".concat(blockClass, "__row-expander"), "".concat(_settings.carbon.prefix, "--btn"), "".concat(_settings.carbon.prefix, "--btn--ghost"))
43
+ }, row.getToggleRowExpandedProps()), row.isExpanded ? /*#__PURE__*/_react.default.createElement(_icons.ChevronUp, {
44
+ className: "".concat(blockClass, "__row-expander--icon")
33
45
  }) : /*#__PURE__*/_react.default.createElement(_icons.ChevronDown, {
34
- size: 16
46
+ className: "".concat(blockClass, "__row-expander--icon")
35
47
  }));
36
48
  },
37
49
  width: 48,
@@ -330,7 +330,7 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
330
330
  var current = _ref5.current;
331
331
  // on window resize and other updates some values may have changed
332
332
  checkUpdateVerticalSpace();
333
- setWidthIsNarrow(current.innerWidth < _layout.breakpoints.md.width); // small (below medium) media query
333
+ setWidthIsNarrow(current.innerWidth / 16 < parseInt(_layout.breakpoints.md.width)); // small (below medium) media query
334
334
  }, [actionBarItems, children, breadcrumbs, enableBreadcrumbScroll, navigation, pageActions, subtitle, tags, title]);
335
335
  (0, _react.useEffect)(function () {
336
336
  checkUpdateVerticalSpace(); // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -373,7 +373,7 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
373
373
  };
374
374
 
375
375
  (0, _react.useEffect)(function () {
376
- if (typeof collapseHeader === 'boolean') {
376
+ if (collapseHeader === true) {
377
377
  (0, _PageHeaderUtils.utilSetCollapsed)(collapseHeader, metrics.headerOffset, metrics.headerTopValue);
378
378
  }
379
379
  }, [collapseHeader, metrics.headerOffset, metrics.headerTopValue]);
@@ -513,7 +513,7 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
513
513
  onWidthChange: handleWidthChange,
514
514
  buttons: pageActions,
515
515
  buttonSetOverflowLabel: pageActionsOverflowLabel,
516
- rightAlign: true
516
+ rightAlign: !widthIsNarrow
517
517
  })));
518
518
  }
519
519
  }
@@ -7,6 +7,8 @@ exports.useResetCreateComponent = void 0;
7
7
 
8
8
  var _react = require("react");
9
9
 
10
+ var _getNumberOfHiddenSteps = require("../utils/getNumberOfHiddenSteps");
11
+
10
12
  /**
11
13
  * Copyright IBM Corp. 2021, 2022
12
14
  *
@@ -21,6 +23,7 @@ var _react = require("react");
21
23
  * @param {object} useResetCreateComponent.previousState
22
24
  * @param {boolean} useResetCreateComponent.open
23
25
  * @param {Function} useResetCreateComponent.setCurrentStep
26
+ * @param {object} useResetCreateComponent.stepData
24
27
  * @param {number} useResetCreateComponent.initialStep
25
28
  * @param {number} useResetCreateComponent.totalSteps
26
29
  * @param {string} useResetCreateComponent.componentName
@@ -30,13 +33,15 @@ var useResetCreateComponent = function useResetCreateComponent(_ref) {
30
33
  previousState = _ref.previousState,
31
34
  open = _ref.open,
32
35
  setCurrentStep = _ref.setCurrentStep,
36
+ stepData = _ref.stepData,
33
37
  initialStep = _ref.initialStep,
34
38
  totalSteps = _ref.totalSteps,
35
39
  componentName = _ref.componentName;
36
40
  (0, _react.useEffect)(function () {
37
41
  if (!(previousState !== null && previousState !== void 0 && previousState.open) && open) {
38
42
  if (initialStep && totalSteps && Number(initialStep) <= Number(totalSteps) && Number(initialStep) > 0) {
39
- setCurrentStep(Number(initialStep));
43
+ var numberOfHiddenSteps = (0, _getNumberOfHiddenSteps.getNumberOfHiddenSteps)(stepData, initialStep);
44
+ setCurrentStep(Number(initialStep + numberOfHiddenSteps));
40
45
  } else {
41
46
  // default should be fist includedStep instead of just 1
42
47
  setCurrentStep(firstIncludedStep);
@@ -47,7 +52,7 @@ var useResetCreateComponent = function useResetCreateComponent(_ref) {
47
52
  console.warn("".concat(componentName, ": An invalid `initialStep` prop was supplied. The `initialStep` prop should be a number that is greater than 0 or less than or equal to the number of steps your ").concat(componentName, " has."));
48
53
  }
49
54
  }
50
- }, [firstIncludedStep, open, previousState, setCurrentStep, initialStep, totalSteps, componentName]);
55
+ }, [firstIncludedStep, open, previousState, setCurrentStep, stepData, initialStep, totalSteps, componentName]);
51
56
  };
52
57
 
53
58
  exports.useResetCreateComponent = useResetCreateComponent;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getNumberOfHiddenSteps = void 0;
7
+
8
+ /**
9
+ * Copyright IBM Corp. 2022, 2022
10
+ *
11
+ * This source code is licensed under the Apache-2.0 license found in the
12
+ * LICENSE file in the root directory of this source tree.
13
+ */
14
+ var getNumberOfHiddenSteps = function getNumberOfHiddenSteps(stepData, initialStep) {
15
+ var numberOfHiddenSteps = 0;
16
+ stepData.forEach(function (step, stepIndex) {
17
+ if (stepIndex + 1 > initialStep) {
18
+ return;
19
+ }
20
+
21
+ if (step.shouldIncludeStep === false) {
22
+ numberOfHiddenSteps += 1;
23
+ }
24
+ });
25
+ return numberOfHiddenSteps;
26
+ };
27
+
28
+ exports.getNumberOfHiddenSteps = getNumberOfHiddenSteps;
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.0.0-rc.4",
4
+ "version": "2.0.0-rc.6",
5
5
  "license": "Apache-2.0",
6
6
  "main": "lib/index.js",
7
7
  "module": "es/index.js",
@@ -94,5 +94,5 @@
94
94
  "react": "^16.8.6 || ^17.0.1",
95
95
  "react-dom": "^16.8.6 || ^17.0.1"
96
96
  },
97
- "gitHead": "77ce950cb5a0d555417788ed808509aa4e3c52c8"
97
+ "gitHead": "86f2f494ebd950387c6dbbe4b84a5bce0f9fc6ba"
98
98
  }
@@ -6,7 +6,7 @@
6
6
  * restricted by GSA ADP Schedule Contract with IBM Corp.
7
7
  */
8
8
 
9
- @use '../../../global/styles/project-settings';
9
+ @use '../../../global/styles/project-settings' as c4p-settings;
10
10
  @use '@carbon/styles/scss/theme' as *;
11
11
  @use '@carbon/styles/scss/spacing' as *;
12
12
  @use './variables';
@@ -40,3 +40,21 @@
40
40
  width: 100%;
41
41
  @include shared-pseudo-styles();
42
42
  }
43
+
44
+ .#{variables.$block-class}__carbon-row.#{variables.$block-class}__carbon-row-expandable
45
+ .#{variables.$block-class}__cell.#{variables.$block-class}__expandable-row-cell {
46
+ padding: $spacing-03;
47
+ padding-right: 0;
48
+ }
49
+
50
+ .#{variables.$block-class}__row-expander.#{c4p-settings.$carbon-prefix}--btn {
51
+ display: flex;
52
+ width: $spacing-07;
53
+ height: $spacing-07;
54
+ min-height: $spacing-07;
55
+ justify-content: center;
56
+ padding: 0;
57
+ .#{variables.$block-class}__row-expander--icon {
58
+ fill: $layer-selected-inverse;
59
+ }
60
+ }