@carbon/ibm-products 2.43.2-canary.1 → 2.43.2-canary.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. package/css/index-full-carbon.css +3 -2
  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.map +1 -1
  6. package/css/index-without-carbon-released-only.min.css.map +1 -1
  7. package/css/index-without-carbon.css +3 -2
  8. package/css/index-without-carbon.css.map +1 -1
  9. package/css/index-without-carbon.min.css +1 -1
  10. package/css/index-without-carbon.min.css.map +1 -1
  11. package/css/index.css +3 -2
  12. package/css/index.css.map +1 -1
  13. package/css/index.min.css +1 -1
  14. package/css/index.min.css.map +1 -1
  15. package/es/components/DataSpreadsheet/DataSpreadsheet.js +22 -12
  16. package/es/components/DataSpreadsheet/DataSpreadsheetBody.d.ts +9 -1
  17. package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +18 -2
  18. package/es/components/DataSpreadsheet/DataSpreadsheetHeader.d.ts +8 -0
  19. package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +17 -6
  20. package/es/components/DataSpreadsheet/hooks/useSpreadsheetMouseMove.js +4 -1
  21. package/es/components/DataSpreadsheet/hooks/useSpreadsheetMouseUp.d.ts +3 -1
  22. package/es/components/DataSpreadsheet/hooks/useSpreadsheetMouseUp.js +15 -3
  23. package/es/components/DataSpreadsheet/types/index.d.ts +1 -1
  24. package/es/components/DataSpreadsheet/utils/moveColumnIndicatorLine.js +34 -2
  25. package/es/components/Datagrid/types/index.d.ts +5 -1
  26. package/es/components/Datagrid/useColumnCenterAlign.d.ts +8 -1
  27. package/es/components/Datagrid/useColumnCenterAlign.js +1 -1
  28. package/es/components/Datagrid/useInlineEdit.d.ts +8 -1
  29. package/es/components/Datagrid/useInlineEdit.js +1 -1
  30. package/es/components/Decorator/Decorator.js +2 -1
  31. package/es/components/DecoratorBase/DecoratorBase.js +3 -5
  32. package/es/components/DecoratorDualButton/DecoratorDualButton.js +2 -1
  33. package/es/components/DecoratorLink/DecoratorLink.js +2 -1
  34. package/es/components/DecoratorSingleButton/DecoratorSingleButton.js +2 -1
  35. package/lib/components/DataSpreadsheet/DataSpreadsheet.js +22 -12
  36. package/lib/components/DataSpreadsheet/DataSpreadsheetBody.d.ts +9 -1
  37. package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +18 -2
  38. package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.d.ts +8 -0
  39. package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +17 -6
  40. package/lib/components/DataSpreadsheet/hooks/useSpreadsheetMouseMove.js +4 -1
  41. package/lib/components/DataSpreadsheet/hooks/useSpreadsheetMouseUp.d.ts +3 -1
  42. package/lib/components/DataSpreadsheet/hooks/useSpreadsheetMouseUp.js +15 -3
  43. package/lib/components/DataSpreadsheet/types/index.d.ts +1 -1
  44. package/lib/components/DataSpreadsheet/utils/moveColumnIndicatorLine.js +34 -2
  45. package/lib/components/Datagrid/types/index.d.ts +5 -1
  46. package/lib/components/Datagrid/useColumnCenterAlign.d.ts +8 -1
  47. package/lib/components/Datagrid/useColumnCenterAlign.js +1 -1
  48. package/lib/components/Datagrid/useInlineEdit.d.ts +8 -1
  49. package/lib/components/Datagrid/useInlineEdit.js +1 -1
  50. package/lib/components/Decorator/Decorator.js +2 -1
  51. package/lib/components/DecoratorBase/DecoratorBase.js +3 -5
  52. package/lib/components/DecoratorDualButton/DecoratorDualButton.js +2 -1
  53. package/lib/components/DecoratorLink/DecoratorLink.js +2 -1
  54. package/lib/components/DecoratorSingleButton/DecoratorSingleButton.js +2 -1
  55. package/package.json +4 -4
  56. package/scss/components/DataSpreadsheet/_data-spreadsheet.scss +1 -0
  57. package/scss/components/StatusIcon/_status-icon.scss +4 -4
  58. package/scss/components/StringFormatter/_string-formatter.scss +2 -2
  59. package/scss/components/UserProfileImage/_user-profile-image.scss +6 -2
@@ -40,6 +40,8 @@ var DataSpreadsheetHeader = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
40
40
  headerGroups = _ref.headerGroups,
41
41
  scrollBarSize = _ref.scrollBarSize,
42
42
  selectionAreas = _ref.selectionAreas,
43
+ selectedHeaderReorderActive = _ref.selectedHeaderReorderActive,
44
+ setSelectedHeaderReorderActive = _ref.setSelectedHeaderReorderActive,
43
45
  setActiveCellCoordinates = _ref.setActiveCellCoordinates,
44
46
  setCurrentMatcher = _ref.setCurrentMatcher,
45
47
  setSelectionAreas = _ref.setSelectionAreas,
@@ -55,10 +57,6 @@ var DataSpreadsheetHeader = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
55
57
  _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
56
58
  scrollBarSizeValue = _useState2[0],
57
59
  setScrollBarSizeValue = _useState2[1];
58
- var _useState3 = React.useState(false),
59
- _useState4 = _rollupPluginBabelHelpers.slicedToArray(_useState3, 2),
60
- selectedHeaderReorderActive = _useState4[0],
61
- setSelectedHeaderReorderActive = _useState4[1];
62
60
  var previousState = usePreviousValue.usePreviousValue({
63
61
  cellSize: cellSize
64
62
  }) || {};
@@ -116,11 +114,16 @@ var DataSpreadsheetHeader = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
116
114
  // Remove columns, need to call handleHeaderCellSelection
117
115
  return;
118
116
  }
119
- setSelectedHeaderReorderActive(true);
120
117
  var selectionAreaToClone = selectionAreas === null || selectionAreas === void 0 ? void 0 : selectionAreas.filter(function (item) {
121
118
  return (item === null || item === void 0 ? void 0 : item.matcher) === currentMatcher;
122
119
  });
123
120
  var selectionAreaElement = ref.current.querySelector("[data-matcher-id=\"".concat(selectionAreaToClone === null || selectionAreaToClone === void 0 || (_selectionAreaToClone = selectionAreaToClone[0]) === null || _selectionAreaToClone === void 0 ? void 0 : _selectionAreaToClone.matcher, "\"]"));
121
+ if (selectionAreaElement) {
122
+ selectionAreaElement.classList.add("".concat(blockClass, "__selection-area--element"));
123
+ }
124
+ if (typeof setSelectedHeaderReorderActive === 'function') {
125
+ setSelectedHeaderReorderActive(true);
126
+ }
124
127
  var clickXPosition = event.clientX;
125
128
  var headerButtonCoords = event.target.getBoundingClientRect();
126
129
  var headerIndex = event.target.getAttribute('data-column-index');
@@ -198,7 +201,7 @@ var DataSpreadsheetHeader = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
198
201
  "data-column-index": index,
199
202
  tabIndex: -1,
200
203
  onMouseDown: selectedHeader ? handleHeaderMouseDown(index) : undefined,
201
- onMouseUp: selectedHeader ? function () {
204
+ onMouseUp: selectedHeader && typeof setSelectedHeaderReorderActive === 'function' ? function () {
202
205
  return setSelectedHeaderReorderActive(false);
203
206
  } : undefined,
204
207
  onClick: !selectedHeader ? handleColumnHeaderClick(index) : undefined,
@@ -263,6 +266,10 @@ DataSpreadsheetHeader.propTypes = {
263
266
  * The aria label applied to the Select all button
264
267
  */
265
268
  selectAllAriaLabel: index["default"].string.isRequired,
269
+ /**
270
+ * Header reordering is active
271
+ */
272
+ selectedHeaderReorderActive: index["default"].bool,
266
273
  /**
267
274
  * All of the cell selection area items
268
275
  */
@@ -280,6 +287,10 @@ DataSpreadsheetHeader.propTypes = {
280
287
  * Setter fn for header cell hold active value
281
288
  */
282
289
  setHeaderCellHoldActive: index["default"].func,
290
+ /**
291
+ * Set header reordering active or not
292
+ */
293
+ setSelectedHeaderReorderActive: index["default"].func,
283
294
  /**
284
295
  * Setter fn for selectionAreaData state value
285
296
  */
@@ -44,9 +44,12 @@ var useSpreadsheetMouseMove = function useSpreadsheetMouseMove(_ref) {
44
44
  var totalSpreadsheetScrollingWidth = listContainer.scrollWidth;
45
45
  var clonedSelectionWidth = clonedSelectionElement.offsetWidth;
46
46
  var clonePlacement = Math.max(xPositionRelativeToSpreadsheet - offsetXValue, defaultColumn === null || defaultColumn === void 0 ? void 0 : defaultColumn.rowHeaderWidth);
47
+ var leftPosition = totalSpreadsheetScrollingWidth - clonedSelectionWidth >= clonePlacement ? clonePlacement + scrollAmount : totalSpreadsheetScrollingWidth - clonedSelectionWidth;
47
48
  // Moves the position of the cloned selection area to follow mouse, and
48
49
  // add the amount horizontally scrolled
49
- clonedSelectionElement.style.left = layout.px(totalSpreadsheetScrollingWidth - clonedSelectionWidth >= clonePlacement ? clonePlacement + scrollAmount : totalSpreadsheetScrollingWidth - clonedSelectionWidth);
50
+ if (leftPosition < spreadsheetCoords.right - 40) {
51
+ clonedSelectionElement.style.left = layout.px(leftPosition);
52
+ }
50
53
  };
51
54
  if (headerCellHoldActive) {
52
55
  ref.current.addEventListener('mousemove', handleMouseMove);
@@ -1,6 +1,8 @@
1
- export function useSpreadsheetMouseUp({ currentMatcher, setSelectionAreas, setClickAndHoldActive, setValidStartingPoint, validStartingPoint, blockClass, ref, setHeaderCellHoldActive, setColumnOrder, visibleColumns, setActiveCellCoordinates, activeCellCoordinates, rows, defaultColumn, selectionAreas, }: {
1
+ export function useSpreadsheetMouseUp({ currentMatcher, setSelectionAreas, selectedHeaderReorderActive, setSelectedHeaderReorderActive, setClickAndHoldActive, setValidStartingPoint, validStartingPoint, blockClass, ref, setHeaderCellHoldActive, setColumnOrder, visibleColumns, setActiveCellCoordinates, activeCellCoordinates, rows, defaultColumn, selectionAreas, }: {
2
2
  currentMatcher: any;
3
3
  setSelectionAreas: any;
4
+ selectedHeaderReorderActive: any;
5
+ setSelectedHeaderReorderActive: any;
4
6
  setClickAndHoldActive: any;
5
7
  setValidStartingPoint: any;
6
8
  validStartingPoint: any;
@@ -18,6 +18,8 @@ var deepCloneObject = require('../../../global/js/utils/deepCloneObject.js');
18
18
  var useSpreadsheetMouseUp = function useSpreadsheetMouseUp(_ref) {
19
19
  var currentMatcher = _ref.currentMatcher,
20
20
  setSelectionAreas = _ref.setSelectionAreas,
21
+ selectedHeaderReorderActive = _ref.selectedHeaderReorderActive,
22
+ setSelectedHeaderReorderActive = _ref.setSelectedHeaderReorderActive,
21
23
  setClickAndHoldActive = _ref.setClickAndHoldActive,
22
24
  setValidStartingPoint = _ref.setValidStartingPoint,
23
25
  validStartingPoint = _ref.validStartingPoint,
@@ -34,15 +36,22 @@ var useSpreadsheetMouseUp = function useSpreadsheetMouseUp(_ref) {
34
36
  selectionAreas = _ref.selectionAreas;
35
37
  React.useEffect(function () {
36
38
  var handleMouseUp = function handleMouseUp(event) {
39
+ var _selectionAreas$;
40
+ var isHoldingColumn = false;
41
+ if (selectionAreas !== null && selectionAreas !== void 0 && (_selectionAreas$ = selectionAreas[0]) !== null && _selectionAreas$ !== void 0 && _selectionAreas$.header && selectionAreas[0].header.type === 'column') {
42
+ isHoldingColumn = true;
43
+ }
37
44
  // Remove the cloned selection area on mouse up
38
- if (!validStartingPoint) {
45
+ if (!validStartingPoint && isHoldingColumn) {
39
46
  setHeaderCellHoldActive(false);
47
+ var selectionAreaElement = ref.current.querySelector(".".concat(blockClass, "__selection-area--element"));
40
48
  var selectionAreaCloneElement = ref.current.querySelector(".".concat(blockClass, "__selection-area--element-cloned"));
41
49
  if (!selectionAreaCloneElement) {
42
50
  return;
43
51
  }
44
52
  // Mouse up while a cloned selection area exists/a column is being reordered
45
53
  if (selectionAreaCloneElement) {
54
+ var _selectionAreaElement;
46
55
  var closestCell = event.target.closest(".".concat(blockClass, "--interactive-cell-element"));
47
56
  var newColumnIndex = parseInt === null || parseInt === void 0 ? void 0 : parseInt(closestCell === null || closestCell === void 0 ? void 0 : closestCell.getAttribute('data-column-index'));
48
57
  var originalColumnIndex = parseInt === null || parseInt === void 0 ? void 0 : parseInt(selectionAreaCloneElement === null || selectionAreaCloneElement === void 0 ? void 0 : selectionAreaCloneElement.getAttribute('data-column-index-original'));
@@ -85,6 +94,7 @@ var useSpreadsheetMouseUp = function useSpreadsheetMouseUp(_ref) {
85
94
  selectionAreaClone[indexOfItemToUpdate].point1.column = Math.min.apply(Math, _rollupPluginBabelHelpers.toConsumableArray(newIndexArray));
86
95
  selectionAreaClone[indexOfItemToUpdate].point2.column = Math.max.apply(Math, _rollupPluginBabelHelpers.toConsumableArray(newIndexArray));
87
96
  }
97
+ selectionAreaClone[indexOfItemToUpdate].areaCreated = false;
88
98
  return selectionAreaClone;
89
99
  });
90
100
  // Only reorder columns if the new index is _not_ part of the
@@ -129,11 +139,13 @@ var useSpreadsheetMouseUp = function useSpreadsheetMouseUp(_ref) {
129
139
  var indicatorLineElement = ref.current.querySelector(".".concat(blockClass, "__reorder-indicator-line"));
130
140
  indicatorLineElement === null || indicatorLineElement === void 0 || indicatorLineElement.remove();
131
141
  selectionAreaCloneElement === null || selectionAreaCloneElement === void 0 || selectionAreaCloneElement.remove();
142
+ selectionAreaElement === null || selectionAreaElement === void 0 || (_selectionAreaElement = selectionAreaElement.classList) === null || _selectionAreaElement === void 0 || _selectionAreaElement.remove("".concat(blockClass, "__selection-area--element"));
143
+ setSelectedHeaderReorderActive(false);
132
144
  }
133
145
  }
134
146
  // Mouse up was on a spreadsheet body cell which is a valid
135
147
  // start/end point for creating a selection area
136
- if (validStartingPoint) {
148
+ if (validStartingPoint || event.type === 'mouseup') {
137
149
  setClickAndHoldActive(false);
138
150
  setValidStartingPoint(false);
139
151
  var cellButton = event.target.closest(".".concat(blockClass, "__body--td"));
@@ -162,7 +174,7 @@ var useSpreadsheetMouseUp = function useSpreadsheetMouseUp(_ref) {
162
174
  return function () {
163
175
  document.removeEventListener('mouseup', handleMouseUp);
164
176
  };
165
- }, [blockClass, currentMatcher, setSelectionAreas, setClickAndHoldActive, setValidStartingPoint, validStartingPoint, ref, setHeaderCellHoldActive, setColumnOrder, visibleColumns, setActiveCellCoordinates, activeCellCoordinates, rows, defaultColumn, selectionAreas]);
177
+ }, [blockClass, currentMatcher, setSelectionAreas, setClickAndHoldActive, setValidStartingPoint, validStartingPoint, selectedHeaderReorderActive, setSelectedHeaderReorderActive, ref, setHeaderCellHoldActive, setColumnOrder, visibleColumns, setActiveCellCoordinates, activeCellCoordinates, rows, defaultColumn, selectionAreas]);
166
178
  };
167
179
 
168
180
  exports.useSpreadsheetMouseUp = useSpreadsheetMouseUp;
@@ -13,7 +13,7 @@ export interface PrevState {
13
13
  cellEditorValue?: string;
14
14
  activeCellCoordinates?: ActiveCellCoordinates;
15
15
  isEditing?: boolean;
16
- selectionAreaData?: object[];
16
+ selectionAreaData?: any[];
17
17
  clickAndHoldActive?: boolean;
18
18
  rowHeight?: number;
19
19
  cellSize?: Size;
@@ -26,11 +26,43 @@ var moveColumnIndicatorLine = function moveColumnIndicatorLine(_ref) {
26
26
  var indicatorLineElement = ref.current.querySelector(".".concat(blockClass, "__reorder-indicator-line"));
27
27
  var matcherId = clonedSelectionElement === null || clonedSelectionElement === void 0 ? void 0 : clonedSelectionElement.getAttribute('data-matcher-id');
28
28
  var selectionAreaOrigin = ref.current.querySelector("[data-matcher-id=\"".concat(matcherId, "\"]"));
29
+ var listContainer = ref.current.querySelector(".".concat(blockClass, "__list--container"));
30
+ var scrollSpeed = 10; // Scrolling speed
31
+ var leftEdgeThreshold = 120; // Distance from the left edge to start scrolling
32
+ var rightEdgeThreshold = 100; // Distance from the right edge to start scrolling
33
+
34
+ var _event = event,
35
+ clientX = _event.clientX;
36
+ var _listContainer$getBou = listContainer.getBoundingClientRect(),
37
+ left = _listContainer$getBou.left,
38
+ right = _listContainer$getBou.right;
39
+
40
+ // Is near left side of viewport
41
+ if (clientX < leftEdgeThreshold) {
42
+ window.scrollBy(-scrollSpeed, 0);
43
+ }
44
+
45
+ // Is near right side of viewport
46
+ if (clientX > window.innerWidth - rightEdgeThreshold) {
47
+ window.scrollBy(scrollSpeed, 0);
48
+ }
49
+
50
+ // Is near left edge of table
51
+ if (clientX > left && clientX < left + leftEdgeThreshold) {
52
+ listContainer.scrollBy(-scrollSpeed, 0);
53
+ }
54
+
55
+ // Is near right edge of table
56
+ if (clientX < right && clientX > right - rightEdgeThreshold) {
57
+ listContainer.scrollBy(scrollSpeed, 0);
58
+ }
29
59
  if (Number(newColumnIndex) > Number(originalColumnIndex)) {
30
- indicatorLineElement.style.left = layout.px(closestCellCoords.left - spreadsheetCoords.left + closestCell.offsetWidth - 2 + leftScrollAmount);
60
+ var leftPosition = closestCellCoords.left - spreadsheetCoords.left + closestCell.offsetWidth - 2 + leftScrollAmount;
61
+ indicatorLineElement.style.left = layout.px(leftPosition);
31
62
  }
32
63
  if (Number(newColumnIndex) < Number(originalColumnIndex)) {
33
- indicatorLineElement.style.left = layout.px(closestCellCoords.left - spreadsheetCoords.left + leftScrollAmount);
64
+ var _leftPosition = closestCellCoords.left - spreadsheetCoords.left + leftScrollAmount;
65
+ indicatorLineElement.style.left = layout.px(_leftPosition);
34
66
  }
35
67
  if (Number(newColumnIndex) === Number(originalColumnIndex)) {
36
68
  indicatorLineElement.style.left = selectionAreaOrigin.style.left;
@@ -6,7 +6,7 @@ import { RadioButtonGroupProps } from '@carbon/react/lib/components/RadioButtonG
6
6
  import { CheckboxProps } from '@carbon/react/lib/components/Checkbox';
7
7
  import { NumberInputProps } from '@carbon/react/lib/components/NumberInput/NumberInput';
8
8
  import { CSSProperties, JSXElementConstructor, MutableRefObject, ReactNode, TouchEventHandler } from 'react';
9
- import { Cell, ColumnInstance, FilterValue, Filters, HeaderGroup, Row, TableCommonProps, TableDispatch, TableInstance, TableToggleAllRowsSelectedProps, UseExpandedRowProps, UseFiltersInstanceProps, UsePaginationInstanceProps, UseResizeColumnsColumnProps, UseResizeColumnsState, UseRowSelectInstanceProps, UseRowSelectRowProps, UseRowSelectState, UseSortByColumnProps, UseTableHooks } from 'react-table';
9
+ import { Cell, Column, ColumnInstance, FilterValue, Filters, HeaderGroup, Meta, Row, TableCommonProps, TableDispatch, TableInstance, TableToggleAllRowsSelectedProps, UseExpandedRowProps, UseFiltersInstanceProps, UsePaginationInstanceProps, UseResizeColumnsColumnProps, UseResizeColumnsState, UseRowSelectInstanceProps, UseRowSelectRowProps, UseRowSelectState, UseSortByColumnProps, UseTableHooks } from 'react-table';
10
10
  import { CarbonIconType } from '@carbon/react/icons';
11
11
  import { type ButtonProps } from '@carbon/react';
12
12
  import { TableBatchActionsProps } from '@carbon/react/lib/components/DataTable/TableBatchActions';
@@ -88,6 +88,8 @@ export interface DatagridTableHooks<T extends object = any> extends UseTableHook
88
88
  export interface DatagridColumn<T extends object = any> extends ColumnInstance<T> {
89
89
  sticky?: 'left' | 'right';
90
90
  className?: string;
91
+ disableSortBy?: boolean;
92
+ centerAlignedColumn?: boolean;
91
93
  }
92
94
  export interface DataGridCell<T extends object = any> extends Omit<Cell<T>, 'column'> {
93
95
  column: DatagridColumn<any>;
@@ -195,6 +197,7 @@ export interface DataGridState<T extends object = any> extends TableCommonProps,
195
197
  expandedRowIds?: object;
196
198
  onRowClick?: (row: any, event: any) => void;
197
199
  onSort?: boolean;
200
+ column?: DatagridColumn;
198
201
  expandedContentHeight?: number;
199
202
  onRowExpand?: (row: DatagridRow, event: React.MouseEvent<HTMLElement>) => void;
200
203
  ExpandedRowContentComponent?: JSXElementConstructor<any>;
@@ -213,4 +216,5 @@ export interface ResizeHeaderProps {
213
216
  resizerAriaLabel?: string;
214
217
  isFetching?: boolean;
215
218
  }
219
+ export type VisibleColumns<T extends object = {}> = (allColumns: Array<ColumnInstance<T>>, meta: Meta<T>) => Array<Column<T>>;
216
220
  export {};
@@ -1,2 +1,9 @@
1
+ /**
2
+ * Copyright IBM Corp. 2020, 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
+ */
7
+ import { Hooks } from 'react-table';
8
+ declare const useColumnCenterAlign: (hooks: Hooks) => void;
1
9
  export default useColumnCenterAlign;
2
- declare function useColumnCenterAlign(hooks: any): void;
@@ -24,7 +24,7 @@ var useColumnCenterAlign = function useColumnCenterAlign(hooks) {
24
24
  var centerAlignRenderer = function centerAlignRenderer(tableProps, column) {
25
25
  return /*#__PURE__*/React__default["default"].createElement("div", {
26
26
  className: cx__default["default"]("".concat(blockClass, "__center-align-cell-renderer"), {
27
- sortDisabled: !tableProps.isTableSortable || tableProps.column.disableSortBy === true
27
+ sortDisabled: !tableProps.isTableSortable || tableProps.column && tableProps.column.disableSortBy === true
28
28
  })
29
29
  }, column.Cell(tableProps));
30
30
  };
@@ -1,2 +1,9 @@
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
+ */
7
+ import { Hooks } from 'react-table';
8
+ declare const useInlineEdit: (hooks: Hooks) => void;
1
9
  export default useInlineEdit;
2
- declare function useInlineEdit(hooks: any): void;
@@ -34,7 +34,7 @@ var useInlineEdit = function useInlineEdit(hooks) {
34
34
  tabIndex: -1,
35
35
  value: cell.value,
36
36
  cell: cell,
37
- isDisabled: isDisabled,
37
+ disabledCell: isDisabled,
38
38
  instance: instance,
39
39
  type: type
40
40
  });
@@ -95,7 +95,8 @@ exports.Decorator.propTypes = {
95
95
  */
96
96
  small: index["default"].bool,
97
97
  /**
98
- * Determines the theme of the component.
98
+ * Override the default theme of the component.
99
+ * Useful if you want "invert" the component's theme.
99
100
  */
100
101
  theme: index["default"].oneOf(['light', 'dark']),
101
102
  /**
@@ -32,8 +32,7 @@ var defaults = {
32
32
  onContextMenu: function onContextMenu() {},
33
33
  onContextMenuLabel: function onContextMenuLabel() {},
34
34
  onContextMenuValue: function onContextMenuValue() {},
35
- scoreThresholds: [0, 4, 7, 10],
36
- theme: 'light'
35
+ scoreThresholds: [0, 4, 7, 10]
37
36
  };
38
37
 
39
38
  /**
@@ -65,8 +64,7 @@ var DecoratorBase = /*#__PURE__*/React__default["default"].forwardRef(function (
65
64
  _ref$scoreThresholds = _ref.scoreThresholds,
66
65
  scoreThresholds = _ref$scoreThresholds === void 0 ? defaults.scoreThresholds : _ref$scoreThresholds,
67
66
  small = _ref.small,
68
- _ref$theme = _ref.theme,
69
- theme = _ref$theme === void 0 ? defaults.theme : _ref$theme,
67
+ theme = _ref.theme,
70
68
  truncateValue = _ref.truncateValue,
71
69
  value = _ref.value,
72
70
  valueTitle = _ref.valueTitle,
@@ -76,7 +74,7 @@ var DecoratorBase = /*#__PURE__*/React__default["default"].forwardRef(function (
76
74
  var _value = utils.truncate(value, truncateValue);
77
75
 
78
76
  // These class names apply to all types of DecoratorBase.
79
- var classNames = cx__default["default"](blockClass, className, "".concat(blockClass, "--").concat(theme), _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty({}, "".concat(blockClass, "--sm"), small), "".concat(blockClass, "--truncate-end"), truncateValue === 'end'), "".concat(blockClass, "--truncate-start"), truncateValue === 'start'), "".concat(blockClass, "--truncate-midline"), truncateValue === null || truncateValue === void 0 ? void 0 : truncateValue.maxLength));
77
+ var classNames = cx__default["default"](blockClass, className, _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty({}, "".concat(blockClass, "--").concat(theme), theme), "".concat(blockClass, "--sm"), small), "".concat(blockClass, "--truncate-end"), truncateValue === 'end'), "".concat(blockClass, "--truncate-start"), truncateValue === 'start'), "".concat(blockClass, "--truncate-midline"), truncateValue === null || truncateValue === void 0 ? void 0 : truncateValue.maxLength));
80
78
 
81
79
  // These properties apply to all <DecoratorIcons>.
82
80
  var decoratorIconsProps = {
@@ -119,7 +119,8 @@ exports.DecoratorDualButton.propTypes = {
119
119
  */
120
120
  small: index["default"].bool,
121
121
  /**
122
- * Determines the theme of the component.
122
+ * Override the default theme of the component.
123
+ * Useful if you want "invert" the component's theme.
123
124
  */
124
125
  theme: index["default"].oneOf(['light', 'dark']),
125
126
  /**
@@ -109,7 +109,8 @@ exports.DecoratorLink.propTypes = {
109
109
  */
110
110
  small: index["default"].bool,
111
111
  /**
112
- * Determines the theme of the component.
112
+ * Override the default theme of the component.
113
+ * Useful if you want "invert" the component's theme.
113
114
  */
114
115
  theme: index["default"].oneOf(['light', 'dark']),
115
116
  /**
@@ -109,7 +109,8 @@ exports.DecoratorSingleButton.propTypes = {
109
109
  */
110
110
  small: index["default"].bool,
111
111
  /**
112
- * Determines the theme of the component.
112
+ * Override the default theme of the component.
113
+ * Useful if you want "invert" the component's theme.
113
114
  */
114
115
  theme: index["default"].oneOf(['light', 'dark']),
115
116
  /**
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.43.2-canary.1+de3a8306c",
4
+ "version": "2.43.2-canary.11+91f282e56",
5
5
  "license": "Apache-2.0",
6
6
  "main": "lib/index.js",
7
7
  "module": "es/index.js",
@@ -88,14 +88,14 @@
88
88
  "rimraf": "^5.0.5",
89
89
  "rollup": "^2.79.1",
90
90
  "rollup-plugin-strip-banner": "^3.0.0",
91
- "sass": "^1.70.0",
91
+ "sass": "^1.77.2",
92
92
  "typescript-config-carbon": "^0.2.1",
93
93
  "yargs": "^17.7.2"
94
94
  },
95
95
  "dependencies": {
96
96
  "@babel/runtime": "^7.23.9",
97
97
  "@carbon/feature-flags": "^0.20.0",
98
- "@carbon/ibm-products-styles": "^2.39.0",
98
+ "@carbon/ibm-products-styles": "^2.39.1-canary.21+91f282e56",
99
99
  "@carbon/telemetry": "^0.1.0",
100
100
  "@dnd-kit/core": "^6.0.8",
101
101
  "@dnd-kit/modifiers": "^7.0.0",
@@ -119,5 +119,5 @@
119
119
  "react": "^16.8.6 || ^17.0.1 || ^18.2.0",
120
120
  "react-dom": "^16.8.6 || ^17.0.1 || ^18.2.0"
121
121
  },
122
- "gitHead": "de3a8306cc6ad34d09a642e11530a0c038610b63"
122
+ "gitHead": "91f282e56eec038f7efda4dd15c08d708c46cb58"
123
123
  }
@@ -98,6 +98,7 @@ $header-cell-background: $layer-accent-01;
98
98
  position: sticky;
99
99
  z-index: 4;
100
100
  left: 0;
101
+ background-color: $background;
101
102
  }
102
103
  .#{$block-class}__td-th.#{$block-class}__td {
103
104
  @include font-family.font-weight('semibold');
@@ -73,7 +73,7 @@ $themes: ('light', 'dark');
73
73
 
74
74
  $block-class: #{$pkg-prefix}--status-icon;
75
75
 
76
- @function --clr($name, $theme: light) {
76
+ @function carbon-clr($name, $theme: light) {
77
77
  // stylelint-disable-next-line carbon/theme-token-use
78
78
  $color: map-get(map-get($colors, $name), $theme);
79
79
  @return $color;
@@ -125,13 +125,13 @@ $block-class: #{$pkg-prefix}--status-icon;
125
125
  // stylelint-disable-next-line carbon/motion-duration-use, carbon/motion-easing-use
126
126
  animation: rotating 8000ms infinite linear;
127
127
  // stylelint-disable-next-line carbon/theme-token-use
128
- fill: --clr($icon, $theme);
128
+ fill: carbon-clr($icon, $theme);
129
129
  } @else if $icon == running {
130
130
  // stylelint-disable-next-line carbon/theme-token-use
131
- fill: --clr($icon, $theme);
131
+ fill: carbon-clr($icon, $theme);
132
132
  } @else {
133
133
  // stylelint-disable-next-line carbon/theme-token-use
134
- fill: --clr($icon, $theme);
134
+ fill: carbon-clr($icon, $theme);
135
135
  @media (prefers-reduced-motion) {
136
136
  .#{$block-class}--#{$theme}.#{$block-class}--#{$theme-key}-in-progress {
137
137
  animation: none;
@@ -79,7 +79,7 @@ $popover-block-class: #{c4p-settings.$carbon-prefix}--popover;
79
79
  .#{$block-class}
80
80
  .#{$popover-block-class}--top-right
81
81
  .#{$popover-block-class}-caret {
82
- /* stylelint-disable-next-line declaration-no-important */
82
+ /* stylelint-disable-next-line */
83
83
  inset-block-start: -1px !important;
84
84
  }
85
85
 
@@ -92,6 +92,6 @@ $popover-block-class: #{c4p-settings.$carbon-prefix}--popover;
92
92
  .#{$block-class}
93
93
  .#{$popover-block-class}--bottom-right
94
94
  .#{$popover-block-class}-caret {
95
- /* stylelint-disable-next-line declaration-no-important */
95
+ /* stylelint-disable-next-line */
96
96
  inset-block-end: -1px !important;
97
97
  }
@@ -44,7 +44,7 @@ $themes: (
44
44
 
45
45
  $theme-keys: map-keys($themes);
46
46
 
47
- @function --get-background-color($color, $key, $contrast-key) {
47
+ @function carbon-get-background-color($color, $key, $contrast-key) {
48
48
  @return map-get(
49
49
  $carbon-colors,
50
50
  #{$color}#{map-get(map-get($themes, $key), #{$contrast-key}-contrast)}
@@ -59,7 +59,11 @@ $theme-keys: map-keys($themes);
59
59
  @each $contrast-key in $theme-keys {
60
60
  .#{$block-class}--#{$key}.#{$block-class}--#{$contrast-key}-#{$color} {
61
61
  // stylelint-disable-next-line carbon/theme-token-use
62
- background-color: --get-background-color($color, $key, $contrast-key);
62
+ background-color: carbon-get-background-color(
63
+ $color,
64
+ $key,
65
+ $contrast-key
66
+ );
63
67
  }
64
68
  }
65
69
  }