@carbon/ibm-products 2.0.0-rc.10 → 2.0.0-rc.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (105) hide show
  1. package/css/index-full-carbon.css +131 -75
  2. package/css/index-full-carbon.css.map +1 -1
  3. package/css/index-full-carbon.min.css +2 -2
  4. package/css/index-full-carbon.min.css.map +1 -1
  5. package/css/index-without-carbon-released-only.css +1 -0
  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 +131 -75
  10. package/css/index-without-carbon.css.map +1 -1
  11. package/css/index-without-carbon.min.css +2 -2
  12. package/css/index-without-carbon.min.css.map +1 -1
  13. package/css/index.css +121 -75
  14. package/css/index.css.map +1 -1
  15. package/css/index.min.css +2 -2
  16. package/css/index.min.css.map +1 -1
  17. package/es/components/AddSelect/AddSelectBody.js +1 -1
  18. package/es/components/AddSelect/hooks/usePath.js +8 -1
  19. package/es/components/CreateFullPage/CreateFullPage.js +9 -2
  20. package/es/components/CreateTearsheet/CreateTearsheet.js +9 -2
  21. package/es/components/CreateTearsheet/preview-components/MultiStepTearsheet.js +3 -1
  22. package/es/components/DataSpreadsheet/DataSpreadsheet.js +1 -4
  23. package/es/components/DataSpreadsheet/utils/handleCellDeletion.js +6 -4
  24. package/es/components/Datagrid/Datagrid/Datagrid.js +7 -3
  25. package/es/components/Datagrid/Datagrid/DatagridContent.js +18 -6
  26. package/es/components/Datagrid/Datagrid/DatagridEmptyBody.js +17 -4
  27. package/es/components/Datagrid/Datagrid/DatagridRow.js +2 -10
  28. package/es/components/Datagrid/Datagrid/DatagridToolbar.js +22 -4
  29. package/es/components/Datagrid/Datagrid/DatagridVirtualBody.js +29 -8
  30. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/Actions.js +7 -10
  31. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/ButtonWrapper.js +11 -13
  32. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/Columns.js +28 -27
  33. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/{CustomizeColumnsModal.js → CustomizeColumnsTearsheet.js} +31 -31
  34. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/TearsheetWrapper.js +56 -0
  35. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/index.js +1 -1
  36. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +424 -0
  37. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +83 -0
  38. package/es/components/Datagrid/Datagrid/addons/Filtering/constants.js +20 -0
  39. package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useInitialStateFromFilters.js +22 -0
  40. package/es/components/Datagrid/Datagrid/addons/Filtering/index.js +7 -0
  41. package/es/components/Datagrid/Datagrid/addons/Filtering/utils.js +38 -0
  42. package/es/components/Datagrid/index.js +2 -1
  43. package/es/components/Datagrid/useCustomizeColumns.js +8 -8
  44. package/es/components/Datagrid/useFiltering.js +90 -0
  45. package/es/components/Datagrid/useParentDimensions.js +3 -1
  46. package/es/components/Datagrid/utils/DatagridActions.js +13 -26
  47. package/es/components/Datagrid/utils/getArgTypes.js +5 -0
  48. package/es/components/Datagrid/utils/getInlineEditColumns.js +6 -1
  49. package/es/components/Datagrid/utils/makeData.js +24 -16
  50. package/es/components/FilterSummary/FilterSummary.js +54 -0
  51. package/es/components/FilterSummary/index.js +7 -0
  52. package/es/components/index.js +1 -1
  53. package/es/global/js/hooks/useCreateComponentFocus.js +38 -10
  54. package/lib/components/AddSelect/AddSelectBody.js +1 -1
  55. package/lib/components/AddSelect/hooks/usePath.js +7 -0
  56. package/lib/components/CreateFullPage/CreateFullPage.js +9 -2
  57. package/lib/components/CreateTearsheet/CreateTearsheet.js +9 -2
  58. package/lib/components/CreateTearsheet/preview-components/MultiStepTearsheet.js +3 -1
  59. package/lib/components/DataSpreadsheet/DataSpreadsheet.js +1 -4
  60. package/lib/components/DataSpreadsheet/utils/handleCellDeletion.js +6 -4
  61. package/lib/components/Datagrid/Datagrid/Datagrid.js +8 -3
  62. package/lib/components/Datagrid/Datagrid/DatagridContent.js +17 -6
  63. package/lib/components/Datagrid/Datagrid/DatagridEmptyBody.js +17 -4
  64. package/lib/components/Datagrid/Datagrid/DatagridRow.js +2 -19
  65. package/lib/components/Datagrid/Datagrid/DatagridToolbar.js +24 -3
  66. package/lib/components/Datagrid/Datagrid/DatagridVirtualBody.js +31 -8
  67. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/Actions.js +7 -10
  68. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/ButtonWrapper.js +6 -6
  69. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/Columns.js +30 -28
  70. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/{CustomizeColumnsModal.js → CustomizeColumnsTearsheet.js} +27 -25
  71. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/{ModalWrapper.js → TearsheetWrapper.js} +31 -36
  72. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/index.js +3 -3
  73. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +443 -0
  74. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +104 -0
  75. package/lib/components/Datagrid/Datagrid/addons/Filtering/constants.js +35 -0
  76. package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useInitialStateFromFilters.js +33 -0
  77. package/lib/components/Datagrid/Datagrid/addons/Filtering/index.js +15 -0
  78. package/lib/components/Datagrid/Datagrid/addons/Filtering/utils.js +47 -0
  79. package/lib/components/Datagrid/index.js +9 -1
  80. package/lib/components/Datagrid/useCustomizeColumns.js +7 -7
  81. package/lib/components/Datagrid/useFiltering.js +94 -0
  82. package/lib/components/Datagrid/useParentDimensions.js +3 -1
  83. package/lib/components/Datagrid/utils/DatagridActions.js +13 -25
  84. package/lib/components/Datagrid/utils/getArgTypes.js +5 -0
  85. package/lib/components/Datagrid/utils/getInlineEditColumns.js +6 -1
  86. package/lib/components/Datagrid/utils/makeData.js +26 -18
  87. package/lib/components/FilterSummary/FilterSummary.js +72 -0
  88. package/lib/components/FilterSummary/index.js +15 -0
  89. package/lib/components/index.js +6 -0
  90. package/lib/global/js/hooks/useCreateComponentFocus.js +42 -11
  91. package/package.json +2 -2
  92. package/scss/components/Datagrid/_datagrid.scss +0 -1
  93. package/scss/components/Datagrid/_storybook-styles.scss +12 -0
  94. package/scss/components/Datagrid/styles/_datagrid.scss +23 -0
  95. package/scss/components/Datagrid/styles/_draggableElement.scss +9 -8
  96. package/scss/components/Datagrid/styles/_index.scss +8 -8
  97. package/scss/components/Datagrid/styles/addons/_CustomizeColumnsTearsheet.scss +65 -0
  98. package/scss/components/Datagrid/styles/addons/_FilterFlyout.scss +87 -0
  99. package/scss/components/FilterSummary/_filter-summary.scss +20 -0
  100. package/scss/components/FilterSummary/_index.scss +10 -0
  101. package/scss/components/FilterSummary/_storybook-styles.scss +14 -0
  102. package/scss/components/Tearsheet/_tearsheet.scss +2 -0
  103. package/scss/components/_index.scss +1 -0
  104. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/ModalWrapper.js +0 -63
  105. package/scss/components/Datagrid/styles/addons/_CustomizeColumnsModal.scss +0 -93
@@ -27,6 +27,8 @@ var _InlineEditContext = require("./addons/InlineEdit/InlineEditContext");
27
27
 
28
28
  var _DatagridContent = require("./DatagridContent");
29
29
 
30
+ var _FilterProvider = require("./addons/Filtering/FilterProvider");
31
+
30
32
  var _excluded = ["datagridState"];
31
33
  var blockClass = "".concat(_settings.pkg.prefix, "--datagrid");
32
34
  var componentName = 'Datagrid';
@@ -46,9 +48,12 @@ var Datagrid = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
46
48
  isFetching = datagridState.isFetching,
47
49
  tableId = datagridState.tableId,
48
50
  leftPanel = datagridState.leftPanel,
49
- className = datagridState.className;
51
+ className = datagridState.className,
52
+ filters = datagridState.state.filters;
50
53
  var rows = DatagridPagination && datagridState.page || datagridState.rows;
51
- return /*#__PURE__*/_react.default.createElement(_InlineEditContext.InlineEditProvider, null, /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, rest, {
54
+ return /*#__PURE__*/_react.default.createElement(_FilterProvider.FilterProvider, {
55
+ filters: filters
56
+ }, /*#__PURE__*/_react.default.createElement(_InlineEditContext.InlineEditProvider, null, /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, rest, {
52
57
  id: tableId,
53
58
  ref: ref,
54
59
  className: (0, _classnames.default)(className, blockClass, withVirtualScroll ? "".concat(blockClass, "__datagridWrap") : "".concat(blockClass, "__datagridWrap-simple"), !isFetching && rows.length === 0 ? "".concat(blockClass, "__empty-state") : '')
@@ -58,7 +63,7 @@ var Datagrid = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
58
63
  datagridState: datagridState
59
64
  })), leftPanel === undefined && /*#__PURE__*/_react.default.createElement(_DatagridContent.DatagridContent, {
60
65
  datagridState: datagridState
61
- })));
66
+ }))));
62
67
  }); // Return a placeholder if not released and not enabled by feature flag
63
68
 
64
69
 
@@ -45,6 +45,12 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
45
45
 
46
46
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
47
47
 
48
+ /**
49
+ * Copyright IBM Corp. 2022, 2022
50
+ *
51
+ * This source code is licensed under the Apache-2.0 license found in the
52
+ * LICENSE file in the root directory of this source tree.
53
+ */
48
54
  var TableContainer = _react2.DataTable.TableContainer,
49
55
  Table = _react2.DataTable.Table;
50
56
  var blockClass = "".concat(_settings.pkg.prefix, "--datagrid");
@@ -64,7 +70,7 @@ var DatagridContent = function DatagridContent(_ref) {
64
70
  withVirtualScroll = datagridState.withVirtualScroll,
65
71
  DatagridPagination = datagridState.DatagridPagination,
66
72
  isFetching = datagridState.isFetching,
67
- CustomizeColumnsModal = datagridState.CustomizeColumnsModal,
73
+ CustomizeColumnsTearsheet = datagridState.CustomizeColumnsTearsheet,
68
74
  leftPanel = datagridState.leftPanel,
69
75
  fullHeightDatagrid = datagridState.fullHeightDatagrid,
70
76
  _datagridState$vertic = datagridState.verticalAlign,
@@ -76,7 +82,8 @@ var DatagridContent = function DatagridContent(_ref) {
76
82
  withInlineEdit = datagridState.withInlineEdit,
77
83
  tableId = datagridState.tableId,
78
84
  DatagridActions = datagridState.DatagridActions,
79
- totalColumnsWidth = datagridState.totalColumnsWidth;
85
+ totalColumnsWidth = datagridState.totalColumnsWidth,
86
+ gridRef = datagridState.gridRef;
80
87
  var rows = DatagridPagination && datagridState.page || datagridState.rows;
81
88
  var gridActive = state.gridActive,
82
89
  editId = state.editId;
@@ -120,7 +127,7 @@ var DatagridContent = function DatagridContent(_ref) {
120
127
  onFocus: withInlineEdit ? function () {
121
128
  return (0, _handleGridFocus.handleGridFocus)(state, dispatch);
122
129
  } : null
123
- }), /*#__PURE__*/_react.default.createElement(_DatagridHead.default, datagridState), /*#__PURE__*/_react.default.createElement(_DatagridBody.default, (0, _extends2.default)({}, datagridState, {
130
+ }), !withVirtualScroll ? /*#__PURE__*/_react.default.createElement(_DatagridHead.default, datagridState) : null, /*#__PURE__*/_react.default.createElement(_DatagridBody.default, (0, _extends2.default)({}, datagridState, {
124
131
  rows: rows
125
132
  })));
126
133
  };
@@ -158,7 +165,10 @@ var DatagridContent = function DatagridContent(_ref) {
158
165
  className: "".concat(blockClass, "__datagridLeftPanel")
159
166
  }, leftPanel.panelContent), withInlineEdit ? /*#__PURE__*/_react.default.createElement("div", {
160
167
  ref: multiKeyTrackingRef
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, {
168
+ }, renderTable()) : withVirtualScroll ? /*#__PURE__*/_react.default.createElement("div", {
169
+ className: "".concat(blockClass, "__virtualScrollContainer"),
170
+ ref: gridRef
171
+ }, renderTable()) : renderTable())), (rows === null || rows === void 0 ? void 0 : rows.length) > 0 && !isFetching && DatagridPagination && /*#__PURE__*/_react.default.createElement(DatagridPagination, datagridState), CustomizeColumnsTearsheet && /*#__PURE__*/_react.default.createElement(CustomizeColumnsTearsheet, {
162
172
  instance: datagridState
163
173
  }));
164
174
  };
@@ -170,7 +180,7 @@ DatagridContent.propTypes = {
170
180
  withVirtualScroll: _propTypes.default.bool,
171
181
  DatagridActions: _propTypes.default.oneOfType([_propTypes.default.element, _propTypes.default.func]),
172
182
  DatagridPagination: _propTypes.default.oneOfType([_propTypes.default.element, _propTypes.default.func]),
173
- CustomizeColumnsModal: _propTypes.default.oneOfType([_propTypes.default.element, _propTypes.default.func]),
183
+ CustomizeColumnsTearsheet: _propTypes.default.oneOfType([_propTypes.default.element, _propTypes.default.func]),
174
184
  isFetching: _propTypes.default.bool,
175
185
  leftPanel: _propTypes.default.object,
176
186
  fullHeightDatagrid: _propTypes.default.bool,
@@ -183,6 +193,7 @@ DatagridContent.propTypes = {
183
193
  page: _propTypes.default.arrayOf(_propTypes.default.object),
184
194
  rows: _propTypes.default.arrayOf(_propTypes.default.object),
185
195
  tableId: _propTypes.default.string,
186
- totalColumnsWidth: _propTypes.default.number
196
+ totalColumnsWidth: _propTypes.default.number,
197
+ gridRef: _propTypes.default.object
187
198
  })
188
199
  };
@@ -15,7 +15,7 @@ var _settings = require("../../../settings");
15
15
 
16
16
  var _react2 = require("@carbon/react");
17
17
 
18
- var _NoDataEmptyState = require("../../EmptyStates/NoDataEmptyState");
18
+ var _EmptyStates = require("../../EmptyStates");
19
19
 
20
20
  /*
21
21
  * Licensed Materials - Property of IBM
@@ -35,16 +35,29 @@ var DatagridEmptyBody = function DatagridEmptyBody(datagridState) {
35
35
  emptyStateTitle = datagridState.emptyStateTitle,
36
36
  emptyStateDescription = datagridState.emptyStateDescription,
37
37
  emptyStateSize = datagridState.emptyStateSize,
38
- illustrationTheme = datagridState.illustrationTheme;
38
+ _datagridState$emptyS = datagridState.emptyStateType,
39
+ emptyStateType = _datagridState$emptyS === void 0 ? 'noData' : _datagridState$emptyS,
40
+ illustrationTheme = datagridState.illustrationTheme,
41
+ emptyStateAction = datagridState.emptyStateAction,
42
+ emptyStateLink = datagridState.emptyStateLink;
39
43
  return /*#__PURE__*/_react.default.createElement(TableBody, (0, _extends2.default)({}, getTableBodyProps(), {
40
44
  className: "".concat(blockClass, "__empty-state-body")
41
45
  }), /*#__PURE__*/_react.default.createElement(TableRow, null, /*#__PURE__*/_react.default.createElement(TableCell, {
42
46
  colSpan: headers.length
43
- }, /*#__PURE__*/_react.default.createElement(_NoDataEmptyState.NoDataEmptyState, {
47
+ }, emptyStateType === 'error' && /*#__PURE__*/_react.default.createElement(_EmptyStates.ErrorEmptyState, {
44
48
  illustrationTheme: illustrationTheme,
45
49
  size: emptyStateSize,
46
50
  title: emptyStateTitle,
47
- subtitle: emptyStateDescription
51
+ subtitle: emptyStateDescription,
52
+ action: emptyStateAction,
53
+ link: emptyStateLink
54
+ }), emptyStateType === 'noData' && /*#__PURE__*/_react.default.createElement(_EmptyStates.NoDataEmptyState, {
55
+ illustrationTheme: illustrationTheme,
56
+ size: emptyStateSize,
57
+ title: emptyStateTitle,
58
+ subtitle: emptyStateDescription,
59
+ action: emptyStateAction,
60
+ link: emptyStateLink
48
61
  }))));
49
62
  };
50
63
 
@@ -2,8 +2,6 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
@@ -15,7 +13,7 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
15
13
 
16
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
15
 
18
- var _react = _interopRequireWildcard(require("react"));
16
+ var _react = _interopRequireDefault(require("react"));
19
17
 
20
18
  var _react2 = require("@carbon/react");
21
19
 
@@ -27,16 +25,7 @@ var _classnames = _interopRequireDefault(require("classnames"));
27
25
 
28
26
  var _settings = require("../../../settings");
29
27
 
30
- var _InlineEditContext = require("./addons/InlineEdit/InlineEditContext/InlineEditContext");
31
-
32
- var _getCellIdAsObject = require("./addons/InlineEdit/InlineEditContext/getCellIdAsObject");
33
-
34
28
  var _excluded = ["children"];
35
-
36
- 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); }
37
-
38
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
39
-
40
29
  var blockClass = "".concat(_settings.pkg.prefix, "--datagrid");
41
30
  var TableRow = _react2.DataTable.TableRow,
42
31
  TableCell = _react2.DataTable.TableCell;
@@ -55,12 +44,6 @@ var DatagridRow = function DatagridRow(datagridState) {
55
44
  rowSize = datagridState.rowSize,
56
45
  withNestedRows = datagridState.withNestedRows;
57
46
 
58
- var _useContext = (0, _react.useContext)(_InlineEditContext.InlineEditContext),
59
- state = _useContext.state;
60
-
61
- var activeCellId = state.activeCellId;
62
- var activeCellObject = activeCellId && (0, _getCellIdAsObject.getCellIdAsObject)(activeCellId);
63
-
64
47
  var getVisibleNestedRowCount = function getVisibleNestedRowCount(_ref) {
65
48
  var isExpanded = _ref.isExpanded,
66
49
  subRows = _ref.subRows;
@@ -77,7 +60,7 @@ var DatagridRow = function DatagridRow(datagridState) {
77
60
  };
78
61
 
79
62
  return /*#__PURE__*/_react.default.createElement(TableRow, (0, _extends2.default)({
80
- 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))
63
+ 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), _cx))
81
64
  }, row.getRowProps(), {
82
65
  key: row.id,
83
66
  onMouseEnter: function onMouseEnter(event) {
@@ -27,6 +27,12 @@ var _settings = require("../../../settings");
27
27
 
28
28
  var _classnames = _interopRequireDefault(require("classnames"));
29
29
 
30
+ var _FilterSummary = require("../../FilterSummary");
31
+
32
+ var _FilterProvider = require("./addons/Filtering/FilterProvider");
33
+
34
+ var _constants = require("./addons/Filtering/constants");
35
+
30
36
  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); }
31
37
 
32
38
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -164,13 +170,28 @@ var DatagridToolbar = function DatagridToolbar(datagridState) {
164
170
 
165
171
  var DatagridActions = datagridState.DatagridActions,
166
172
  DatagridBatchActions = datagridState.DatagridBatchActions,
167
- batchActions = datagridState.batchActions;
173
+ batchActions = datagridState.batchActions,
174
+ state = datagridState.state;
175
+
176
+ var _useContext = (0, _react.useContext)(_FilterProvider.FilterContext),
177
+ filterTags = _useContext.filterTags,
178
+ EventEmitter = _useContext.EventEmitter;
179
+
180
+ var renderFilterSummary = function renderFilterSummary() {
181
+ return state.filters.length > 0 && /*#__PURE__*/_react.default.createElement(_FilterSummary.FilterSummary, {
182
+ filters: filterTags,
183
+ clearFilters: function clearFilters() {
184
+ return EventEmitter.dispatch(_constants.CLEAR_FILTERS);
185
+ }
186
+ });
187
+ };
188
+
168
189
  return batchActions && DatagridActions ? /*#__PURE__*/_react.default.createElement("div", {
169
190
  ref: ref,
170
191
  className: "".concat(blockClass, "__table-toolbar")
171
- }, /*#__PURE__*/_react.default.createElement(TableToolbar, null, DatagridActions && DatagridActions(datagridState), DatagridBatchActionsToolbar && DatagridBatchActionsToolbar(datagridState, width, ref))) : DatagridActions ? /*#__PURE__*/_react.default.createElement("div", {
192
+ }, /*#__PURE__*/_react.default.createElement(TableToolbar, null, DatagridActions && DatagridActions(datagridState), DatagridBatchActionsToolbar && DatagridBatchActionsToolbar(datagridState, width, ref)), renderFilterSummary()) : DatagridActions ? /*#__PURE__*/_react.default.createElement("div", {
172
193
  className: "".concat(blockClass, "__table-toolbar")
173
- }, /*#__PURE__*/_react.default.createElement(TableToolbar, null, DatagridActions && DatagridActions(datagridState), DatagridBatchActions && DatagridBatchActions(datagridState))) : null;
194
+ }, /*#__PURE__*/_react.default.createElement(TableToolbar, null, DatagridActions && DatagridActions(datagridState), DatagridBatchActions && DatagridBatchActions(datagridState)), renderFilterSummary()) : null;
174
195
  };
175
196
 
176
197
  var _default = DatagridToolbar;
@@ -21,6 +21,10 @@ var _react2 = require("@carbon/react");
21
21
 
22
22
  var _settings = require("../../../settings");
23
23
 
24
+ var _DatagridHead = _interopRequireDefault(require("./DatagridHead"));
25
+
26
+ var _layout = require("@carbon/layout");
27
+
24
28
  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); }
25
29
 
26
30
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -46,6 +50,8 @@ var rowSizeMap = {
46
50
  var defaultRowHeight = rowSizeMap.lg;
47
51
 
48
52
  var DatagridVirtualBody = function DatagridVirtualBody(datagridState) {
53
+ var _gridRef$current, _gridRef$current2;
54
+
49
55
  var getTableBodyProps = datagridState.getTableBodyProps,
50
56
  rows = datagridState.rows,
51
57
  prepareRow = datagridState.prepareRow,
@@ -59,7 +65,15 @@ var DatagridVirtualBody = function DatagridVirtualBody(datagridState) {
59
65
  DatagridPagination = datagridState.DatagridPagination,
60
66
  page = datagridState.page,
61
67
  handleResize = datagridState.handleResize,
62
- withOverflowRow = datagridState.withOverflowRow;
68
+ gridRef = datagridState.gridRef;
69
+
70
+ var syncScroll = function syncScroll(e) {
71
+ var virtualBody = e.target;
72
+ document.querySelector(".".concat(blockClass, "__head-warp")).scrollLeft = virtualBody.scrollLeft;
73
+ var spacerColumn = document.querySelector(".".concat(blockClass, "__head-warp thead th:last-child"));
74
+ spacerColumn.style.width = (0, _layout.px)(32 + (virtualBody.offsetWidth - virtualBody.clientWidth)); // scrollbar width to header column to fix header alignment
75
+ };
76
+
63
77
  (0, _react.useEffect)(function () {
64
78
  handleResize();
65
79
  }, [handleResize]);
@@ -70,8 +84,16 @@ var DatagridVirtualBody = function DatagridVirtualBody(datagridState) {
70
84
  }
71
85
 
72
86
  var visibleRows = DatagridPagination && page || rows;
73
- return /*#__PURE__*/_react.default.createElement(TableBody, (0, _extends2.default)({}, getTableBodyProps(), {
74
- onScroll: onScroll
87
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
88
+ className: "".concat(blockClass, "__head-warp"),
89
+ style: {
90
+ width: (_gridRef$current = gridRef.current) === null || _gridRef$current === void 0 ? void 0 : _gridRef$current.clientWidth,
91
+ overflow: 'hidden'
92
+ }
93
+ }, /*#__PURE__*/_react.default.createElement(_DatagridHead.default, datagridState)), /*#__PURE__*/_react.default.createElement(TableBody, (0, _extends2.default)({}, getTableBodyProps(), {
94
+ onScroll: function onScroll(e) {
95
+ return syncScroll(e);
96
+ }
75
97
  }), /*#__PURE__*/_react.default.createElement(_reactWindow.VariableSizeList, {
76
98
  height: virtualHeight || tableHeight,
77
99
  itemCount: visibleRows.length,
@@ -82,20 +104,21 @@ var DatagridVirtualBody = function DatagridVirtualBody(datagridState) {
82
104
  onScroll: onScroll,
83
105
  innerRef: innerListRef,
84
106
  ref: listRef,
85
- className: "".concat(blockClass, "__virtual-scrollbar")
107
+ className: "".concat(blockClass, "__virtual-scrollbar"),
108
+ style: {
109
+ width: (_gridRef$current2 = gridRef.current) === null || _gridRef$current2 === void 0 ? void 0 : _gridRef$current2.clientWidth
110
+ }
86
111
  }, function (_ref) {
87
112
  var index = _ref.index,
88
113
  style = _ref.style;
89
114
  var row = visibleRows[index];
90
115
  prepareRow(row);
91
116
  return /*#__PURE__*/_react.default.createElement("div", {
92
- style: _objectSpread(_objectSpread({}, style), {}, {
93
- overflow: withOverflowRow ? 'visible' : 'hidden'
94
- })
117
+ style: _objectSpread({}, style)
95
118
  }, row.RowRenderer(_objectSpread(_objectSpread({}, datagridState), {}, {
96
119
  row: row
97
120
  })));
98
- }));
121
+ })));
99
122
  };
100
123
 
101
124
  var _default = DatagridVirtualBody;
@@ -21,14 +21,11 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
21
21
 
22
22
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
23
 
24
- // @flow
25
-
26
- /*
27
- * Licensed Materials - Property of IBM
28
- * 5724-Q36
29
- * (c) Copyright IBM Corp. 2021
30
- * US Government Users Restricted Rights - Use, duplication or disclosure
31
- * restricted by GSA ADP Schedule Contract with IBM Corp.
24
+ /**
25
+ * Copyright IBM Corp. 2022, 2022
26
+ *
27
+ * This source code is licensed under the Apache-2.0 license found in the
28
+ * LICENSE file in the root directory of this source tree.
32
29
  */
33
30
  var blockClass = "".concat(_settings.pkg.prefix, "--datagrid");
34
31
 
@@ -37,11 +34,11 @@ var Actions = function Actions(_ref) {
37
34
  setSearchText = _ref.setSearchText,
38
35
  findColumnPlaceholderLabel = _ref.findColumnPlaceholderLabel;
39
36
  return /*#__PURE__*/React.createElement("div", {
40
- className: "".concat(blockClass, "__customize-columns-modal--actions")
37
+ className: "".concat(blockClass, "__customize-columns-tearsheet--actions")
41
38
  }, /*#__PURE__*/React.createElement(_react.Search, {
42
39
  placeholder: findColumnPlaceholderLabel,
43
40
  value: searchText,
44
- size: "sm",
41
+ size: "lg",
45
42
  labelText: findColumnPlaceholderLabel,
46
43
  onChange: function onChange(e) {
47
44
  // TODO: is it performant?
@@ -23,7 +23,7 @@ var _react2 = require("@carbon/react");
23
23
 
24
24
  var _settings = require("../../../../../settings");
25
25
 
26
- var _excluded = ["onClick", "setIsModalOpen", "isModalOpen", "iconTooltipLabel"];
26
+ var _excluded = ["onClick", "setIsTearsheetOpen", "isTearsheetOpen", "iconTooltipLabel"];
27
27
 
28
28
  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); }
29
29
 
@@ -33,8 +33,8 @@ var blockClass = "".concat(_settings.pkg.prefix, "--datagrid");
33
33
 
34
34
  var ButtonWrapper = function ButtonWrapper(_ref) {
35
35
  var _onClick = _ref.onClick,
36
- setIsModalOpen = _ref.setIsModalOpen,
37
- isModalOpen = _ref.isModalOpen,
36
+ setIsTearsheetOpen = _ref.setIsTearsheetOpen,
37
+ isTearsheetOpen = _ref.isTearsheetOpen,
38
38
  _ref$iconTooltipLabel = _ref.iconTooltipLabel,
39
39
  iconTooltipLabel = _ref$iconTooltipLabel === void 0 ? 'Customize columns' : _ref$iconTooltipLabel,
40
40
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
@@ -50,7 +50,7 @@ var ButtonWrapper = function ButtonWrapper(_ref) {
50
50
  hasIconOnly: true,
51
51
  "test-id": "".concat(blockClass, "__customize-columns-trigger"),
52
52
  onClick: function onClick() {
53
- setIsModalOpen(!isModalOpen);
53
+ setIsTearsheetOpen(!isTearsheetOpen);
54
54
 
55
55
  if (typeof _onClick === 'function') {
56
56
  _onClick();
@@ -64,9 +64,9 @@ ButtonWrapper.defaultProps = {
64
64
  };
65
65
  ButtonWrapper.propTypes = {
66
66
  iconTooltipLabel: _propTypes.default.string,
67
- isModalOpen: _propTypes.default.bool.isRequired,
67
+ isTearsheetOpen: _propTypes.default.bool.isRequired,
68
68
  onClick: _propTypes.default.func.isRequired,
69
- setIsModalOpen: _propTypes.default.func.isRequired
69
+ setIsTearsheetOpen: _propTypes.default.func.isRequired
70
70
  };
71
71
  var _default = ButtonWrapper;
72
72
  exports.default = _default;
@@ -31,14 +31,11 @@ var _common = require("./common");
31
31
 
32
32
  var _classnames = _interopRequireDefault(require("classnames"));
33
33
 
34
- // @flow
35
-
36
- /*
37
- * Licensed Materials - Property of IBM
38
- * 5724-Q36
39
- * (c) Copyright IBM Corp. 2021
40
- * US Government Users Restricted Rights - Use, duplication or disclosure
41
- * restricted by GSA ADP Schedule Contract with IBM Corp.
34
+ /**
35
+ * Copyright IBM Corp. 2022, 2022
36
+ *
37
+ * This source code is licensed under the Apache-2.0 license found in the
38
+ * LICENSE file in the root directory of this source tree.
42
39
  */
43
40
  var blockClass = "".concat(_settings.pkg.prefix, "--datagrid");
44
41
 
@@ -57,8 +54,6 @@ var getNextIndex = function getNextIndex(array, currentIndex, key) {
57
54
  };
58
55
 
59
56
  var Columns = function Columns(_ref) {
60
- var _cx;
61
-
62
57
  var getVisibleColumnsCount = _ref.getVisibleColumnsCount,
63
58
  filterString = _ref.filterString,
64
59
  columns = _ref.columns,
@@ -102,12 +97,7 @@ var Columns = function Columns(_ref) {
102
97
  e.stopPropagation();
103
98
  }
104
99
  },
105
- tabIndex: 0,
106
- onFocus: function onFocus(e) {
107
- if (e.target === e.currentTarget) {
108
- setFocusIndex(0);
109
- }
110
- }
100
+ tabIndex: 0
111
101
  }, /*#__PURE__*/_react.default.createElement("span", {
112
102
  "aria-live": "assertive",
113
103
  className: "".concat(blockClass, "__shared-ui--assistive-text")
@@ -116,7 +106,7 @@ var Columns = function Columns(_ref) {
116
106
  className: "".concat(blockClass, "__shared-ui--assistive-text")
117
107
  }, filterString.length === 0 ? assistiveTextInstructionsLabel : assistiveTextDisabledInstructionsLabel), /*#__PURE__*/_react.default.createElement("div", {
118
108
  id: "".concat(blockClass, "__customize-columns-select-all"),
119
- className: (0, _classnames.default)((_cx = {}, (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__customize-columns-select-all"), getVisibleColumnsCount() === 0), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__customize-columns-select-all-selected"), getVisibleColumnsCount() > 0), _cx)),
109
+ className: (0, _classnames.default)("".concat(blockClass, "__customize-columns-select-all"), (0, _defineProperty2.default)({}, "".concat(blockClass, "__customize-columns-select-all--selected"), getVisibleColumnsCount() > 0)),
120
110
  selected: getVisibleColumnsCount() > 0
121
111
  }, /*#__PURE__*/_react.default.createElement(_react2.Checkbox, {
122
112
  className: "".concat(blockClass, "__customize-columns-checkbox-wrapper"),
@@ -130,6 +120,28 @@ var Columns = function Columns(_ref) {
130
120
  })), columns.filter(function (colDef) {
131
121
  return filterString.length === 0 || colDef.Header.props.title.toLowerCase().includes(filterString);
132
122
  }).map(function (colDef, i) {
123
+ var searchString = new RegExp('(' + filterString + ')');
124
+ var res = filterString.length ? colDef.Header.props.title.toLowerCase().split(searchString) : null;
125
+ var firstWord = res !== null ? res[0] === '' ? res[1].charAt(0).toUpperCase() + res[1].substring(1) : res[0].charAt(0).toUpperCase() + res[0].substring(1) : null;
126
+ var highlightedText = res !== null ? res[0] === '' ? "<strong>".concat(firstWord, "</strong>") + res[2] : firstWord + "<strong>".concat(res[1], "</strong>") + res[2] : colDef.Header.props.title;
127
+
128
+ var listContents = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_react2.Checkbox, {
129
+ className: (0, _classnames.default)("".concat(blockClass, "__customize-columns-checkbox-wrapper"), "".concat(blockClass, "__customize-columns-checkbox")),
130
+ checked: (0, _common.isColumnVisible)(colDef),
131
+ onChange: function onChange(_, _ref2) {
132
+ var checked = _ref2.checked;
133
+ return onSelectColumn(colDef, checked);
134
+ },
135
+ id: "".concat(blockClass, "__customization-column-").concat(colDef.id),
136
+ labelText: colDef.Header.props.title,
137
+ title: colDef.Header.props.title,
138
+ hideLabel: true
139
+ }), /*#__PURE__*/_react.default.createElement("div", {
140
+ dangerouslySetInnerHTML: {
141
+ __html: highlightedText
142
+ }
143
+ }));
144
+
133
145
  return /*#__PURE__*/_react.default.createElement(_DraggableElement.default, {
134
146
  key: colDef.id,
135
147
  index: i,
@@ -158,17 +170,7 @@ var Columns = function Columns(_ref) {
158
170
  }
159
171
  },
160
172
  selected: (0, _common.isColumnVisible)(colDef)
161
- }, /*#__PURE__*/_react.default.createElement(_react2.Checkbox, {
162
- className: (0, _classnames.default)("".concat(blockClass, "__customize-columns-checkbox-wrapper"), "".concat(blockClass, "__customize-columns-checkbox")),
163
- checked: (0, _common.isColumnVisible)(colDef),
164
- onChange: function onChange(_, _ref2) {
165
- var checked = _ref2.checked;
166
- return onSelectColumn(colDef, checked);
167
- },
168
- id: "".concat(blockClass, "__customization-column-").concat(colDef.id),
169
- labelText: colDef.Header.props.title,
170
- title: colDef.Header.props.title
171
- }));
173
+ }, listContents);
172
174
  }))));
173
175
  };
174
176
 
@@ -17,10 +17,10 @@ var _react = _interopRequireWildcard(require("react"));
17
17
 
18
18
  var _propTypes = _interopRequireDefault(require("prop-types"));
19
19
 
20
- var _react2 = require("@carbon/react");
21
-
22
20
  var _common = require("./common");
23
21
 
22
+ var _Tearsheet = require("../../../../Tearsheet");
23
+
24
24
  var _Columns = _interopRequireDefault(require("./Columns"));
25
25
 
26
26
  var _Actions = _interopRequireDefault(require("./Actions"));
@@ -37,14 +37,14 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
37
37
 
38
38
  var blockClass = "".concat(_settings.pkg.prefix, "--datagrid");
39
39
 
40
- var CustomizeColumnsModal = function CustomizeColumnsModal(_ref) {
40
+ var CustomizeColumnsTearsheet = function CustomizeColumnsTearsheet(_ref) {
41
41
  var isOpen = _ref.isOpen,
42
- setIsModalOpen = _ref.setIsModalOpen,
42
+ setIsTearsheetOpen = _ref.setIsTearsheetOpen,
43
43
  onSaveColumnPrefs = _ref.onSaveColumnPrefs,
44
44
  columnDefinitions = _ref.columnDefinitions,
45
45
  originalColumnDefinitions = _ref.originalColumnDefinitions,
46
- _ref$customizeModalHe = _ref.customizeModalHeadingLabel,
47
- customizeModalHeadingLabel = _ref$customizeModalHe === void 0 ? 'Customize Columns' : _ref$customizeModalHe,
46
+ _ref$customizeTearshe = _ref.customizeTearsheetHeadingLabel,
47
+ customizeTearsheetHeadingLabel = _ref$customizeTearshe === void 0 ? 'Customize columns' : _ref$customizeTearshe,
48
48
  _ref$primaryButtonTex = _ref.primaryButtonTextLabel,
49
49
  primaryButtonTextLabel = _ref$primaryButtonTex === void 0 ? 'Save' : _ref$primaryButtonTex,
50
50
  _ref$secondaryButtonT = _ref.secondaryButtonTextLabel,
@@ -105,11 +105,11 @@ var CustomizeColumnsModal = function CustomizeColumnsModal(_ref) {
105
105
  setIsDirty = _useState10[1];
106
106
 
107
107
  var onRequestClose = function onRequestClose() {
108
- setIsModalOpen(false);
108
+ setIsTearsheetOpen(false);
109
109
  };
110
110
 
111
111
  var onRequestSubmit = function onRequestSubmit() {
112
- setIsModalOpen(false);
112
+ setIsTearsheetOpen(false);
113
113
  var updatedColumns = columnObjects.map(function (colDef) {
114
114
  return {
115
115
  id: colDef.id,
@@ -149,20 +149,22 @@ var CustomizeColumnsModal = function CustomizeColumnsModal(_ref) {
149
149
  setVisibleColumnsCount(getVisibleColumnsCount());
150
150
  setTotalColumns(columnObjects.length);
151
151
  }, [getVisibleColumnsCount, columnObjects.length]);
152
- return /*#__PURE__*/_react.default.createElement(_react2.Modal, {
153
- className: "".concat(blockClass, "__customize-columns-modal"),
152
+ return /*#__PURE__*/_react.default.createElement(_Tearsheet.TearsheetNarrow, {
153
+ className: "".concat(blockClass, "__customize-columns-tearsheet"),
154
154
  open: isOpen,
155
- modalHeading: "".concat(customizeModalHeadingLabel, " (").concat(visibleColumnsCount, "/").concat(totalColumns, ")"),
156
- primaryButtonText: primaryButtonTextLabel,
157
- secondaryButtonText: secondaryButtonTextLabel,
158
- selectorPrimaryFocus: ".".concat(blockClass, "__customize-columns-column-list--focus"),
159
- primaryButtonDisabled: !isDirty,
160
- onRequestClose: onRequestClose,
161
- onRequestSubmit: onRequestSubmit,
162
- size: "sm"
163
- }, /*#__PURE__*/_react.default.createElement("div", {
164
- className: "".concat(blockClass, "__customize-columns-instructions")
165
- }, instructionsLabel), /*#__PURE__*/_react.default.createElement(_Actions.default, {
155
+ title: "".concat(customizeTearsheetHeadingLabel, " (").concat(visibleColumnsCount, "/").concat(totalColumns, ")"),
156
+ description: instructionsLabel,
157
+ actions: [{
158
+ kind: 'secondary',
159
+ label: secondaryButtonTextLabel,
160
+ onClick: onRequestClose
161
+ }, {
162
+ kind: 'primary',
163
+ label: primaryButtonTextLabel,
164
+ onClick: onRequestSubmit,
165
+ disabled: !isDirty
166
+ }]
167
+ }, /*#__PURE__*/_react.default.createElement(_Actions.default, {
166
168
  columns: columnObjects,
167
169
  originalColumnDefinitions: originalColumnDefinitions,
168
170
  searchText: searchText,
@@ -188,11 +190,11 @@ var CustomizeColumnsModal = function CustomizeColumnsModal(_ref) {
188
190
  }));
189
191
  };
190
192
 
191
- CustomizeColumnsModal.propTypes = {
193
+ CustomizeColumnsTearsheet.propTypes = {
192
194
  assistiveTextDisabledInstructionsLabel: _propTypes.default.string,
193
195
  assistiveTextInstructionsLabel: _propTypes.default.string,
194
196
  columnDefinitions: _propTypes.default.array.isRequired,
195
- customizeModalHeadingLabel: _propTypes.default.string,
197
+ customizeTearsheetHeadingLabel: _propTypes.default.string,
196
198
  findColumnPlaceholderLabel: _propTypes.default.string,
197
199
  instructionsLabel: _propTypes.default.string,
198
200
  isOpen: _propTypes.default.bool.isRequired,
@@ -202,7 +204,7 @@ CustomizeColumnsModal.propTypes = {
202
204
  resetToDefaultLabel: _propTypes.default.string,
203
205
  secondaryButtonTextLabel: _propTypes.default.string,
204
206
  selectAllLabel: _propTypes.default.string,
205
- setIsModalOpen: _propTypes.default.func.isRequired
207
+ setIsTearsheetOpen: _propTypes.default.func.isRequired
206
208
  };
207
- var _default = CustomizeColumnsModal;
209
+ var _default = CustomizeColumnsTearsheet;
208
210
  exports.default = _default;