@carbon/ibm-products 1.32.0 → 1.32.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/css/index-full-carbon.css +14 -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 +10 -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 +10 -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/DataSpreadsheet/hooks/useMultipleKeyTracking.js +2 -2
  14. package/es/components/Datagrid/Datagrid/DatagridContent.js +29 -25
  15. package/es/components/Datagrid/Datagrid/DatagridRow.js +10 -2
  16. package/es/components/Datagrid/Datagrid/addons/RowSize/RowSizeDropdown.js +1 -1
  17. package/es/components/Datagrid/Datagrid/addons/RowSize/RowSizeRadioGroup.js +1 -1
  18. package/es/components/Datagrid/utils/makeData.js +25 -5
  19. package/es/components/InlineEdit/InlineEdit.js +7 -7
  20. package/es/components/OptionsTile/OptionsTile.js +4 -2
  21. package/lib/components/DataSpreadsheet/hooks/useMultipleKeyTracking.js +2 -2
  22. package/lib/components/Datagrid/Datagrid/DatagridContent.js +29 -25
  23. package/lib/components/Datagrid/Datagrid/DatagridRow.js +19 -2
  24. package/lib/components/Datagrid/Datagrid/addons/RowSize/RowSizeDropdown.js +1 -1
  25. package/lib/components/Datagrid/Datagrid/addons/RowSize/RowSizeRadioGroup.js +1 -1
  26. package/lib/components/Datagrid/utils/makeData.js +26 -5
  27. package/lib/components/InlineEdit/InlineEdit.js +7 -7
  28. package/lib/components/OptionsTile/OptionsTile.js +4 -2
  29. package/package.json +12 -12
  30. package/scss/components/Datagrid/styles/_useInlineEdit.scss +6 -0
  31. package/scss/components/OptionsTile/_options-tile.scss +4 -0
@@ -93,7 +93,7 @@ var getDropdownPosition = function getDropdownPosition(buttonEle) {
93
93
 
94
94
  if (parent instanceof HTMLElement) {
95
95
  var top = buttonEle.offsetTop + buttonEle.offsetHeight;
96
- var right = parent.offsetWidth - parent.offsetLeft - (buttonEle.offsetLeft + buttonEle.offsetWidth);
96
+ var right = parent.offsetWidth - parent.offsetLeft - buttonEle.offsetLeft;
97
97
  return {
98
98
  top: top,
99
99
  right: right
@@ -12,12 +12,20 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
12
12
  */
13
13
  import React from 'react';
14
14
  import namor from 'namor';
15
+ import { StatusIcon } from '../../StatusIcon';
15
16
  import { inlineEditSelectItems } from './getInlineEditColumns';
16
17
 
17
- var getRandomInteger = function getRandomInteger(min, max) {
18
- min = Math.ceil(min);
19
- max = Math.floor(max);
20
- return Math.floor(Math.random() * (max - min + 1)) + min;
18
+ var getRandomInteger = function getRandomInteger(min, max, decimalPlaces) {
19
+ var roundedMin = Math.ceil(min);
20
+ var roundedMax = Math.floor(max);
21
+ var randomNumber = Math.random() * (max - min) + min;
22
+
23
+ if (!decimalPlaces) {
24
+ return Math.floor(Math.random() * (roundedMax - roundedMin + 1)) + roundedMin;
25
+ }
26
+
27
+ var power = Math.pow(10, decimalPlaces);
28
+ return Math.floor(randomNumber * power) / power;
21
29
  };
22
30
 
23
31
  export var makeData = function makeData() {
@@ -47,6 +55,16 @@ export var range = function range(len) {
47
55
  return arr;
48
56
  };
49
57
 
58
+ var renderStatusIcon = function renderStatusIcon(statusChance) {
59
+ var iconProps = {
60
+ size: 'sm',
61
+ theme: 'light',
62
+ kind: statusChance > 0.66 ? 'critical' : statusChance > 0.33 ? 'minor-warning' : 'normal',
63
+ iconDescription: statusChance > 0.66 ? 'Critical' : statusChance > 0.33 ? 'Minor warning' : 'Normal'
64
+ };
65
+ return /*#__PURE__*/React.createElement(StatusIcon, iconProps);
66
+ };
67
+
50
68
  var newPerson = function newPerson() {
51
69
  var statusChance = Math.random();
52
70
  var initialChartTypeIndex = getRandomInteger(0, 2);
@@ -149,7 +167,9 @@ var newPerson = function newPerson() {
149
167
  }),
150
168
  status: statusChance > 0.66 ? 'relationship' : statusChance > 0.33 ? 'complicated' : 'single',
151
169
  chartType: initialChartTypeIndex === 0 ? inlineEditSelectItems[0] : initialChartTypeIndex === 1 ? inlineEditSelectItems[1] : inlineEditSelectItems[2],
152
- activeSince: statusChance > 0.66 ? activeSinceDate : statusChance > 0.33 ? yesterdayDate : twoDaysAgoDate
170
+ activeSince: statusChance > 0.66 ? activeSinceDate : statusChance > 0.33 ? yesterdayDate : twoDaysAgoDate,
171
+ bonus: "$\r".concat(getRandomInteger(100, 500, 2)),
172
+ status_icon: renderStatusIcon(statusChance)
153
173
  };
154
174
  };
155
175
 
@@ -40,7 +40,7 @@ var buttons = ['cancel', 'edit', 'save'];
40
40
  */
41
41
 
42
42
  export var InlineEdit = /*#__PURE__*/React.forwardRef(function (_ref, refIn) {
43
- var _cx, _refInput$current, _refInput$current$inn, _cx3;
43
+ var _cx, _refInput$current, _refInput$current$tex, _cx3;
44
44
 
45
45
  var buttonTooltipAlignment = _ref.buttonTooltipAlignment,
46
46
  buttonTooltipPosition = _ref.buttonTooltipPosition,
@@ -66,7 +66,7 @@ export var InlineEdit = /*#__PURE__*/React.forwardRef(function (_ref, refIn) {
66
66
  rest = _objectWithoutProperties(_ref, _excluded);
67
67
 
68
68
  var refInput = useRef({
69
- innerText: value
69
+ textContent: value
70
70
  });
71
71
  var localRef = useRef(null);
72
72
  var ref = refIn || localRef;
@@ -148,15 +148,15 @@ export var InlineEdit = /*#__PURE__*/React.forwardRef(function (_ref, refIn) {
148
148
  document.getSelection().removeAllRanges();
149
149
 
150
150
  if (onSave) {
151
- onSave(refInput.current.innerText);
151
+ onSave(refInput.current.textContent);
152
152
  }
153
153
  };
154
154
 
155
155
  var handleInput = function handleInput() {
156
- setInternalValue(refInput.current.innerText);
156
+ setInternalValue(refInput.current.textContent);
157
157
 
158
158
  if (onChange) {
159
- onChange(refInput.current.innerText);
159
+ onChange(refInput.current.textContent);
160
160
  }
161
161
  }; // pasting into contentEditable not supported by userEvent
162
162
 
@@ -191,7 +191,7 @@ export var InlineEdit = /*#__PURE__*/React.forwardRef(function (_ref, refIn) {
191
191
  };
192
192
 
193
193
  var handleCancel = function handleCancel() {
194
- refInput.current.innerText = value;
194
+ refInput.current.textContent = value;
195
195
  handleInput(value);
196
196
  doSetEditing(false);
197
197
  document.getSelection().removeAllRanges();
@@ -259,7 +259,7 @@ export var InlineEdit = /*#__PURE__*/React.forwardRef(function (_ref, refIn) {
259
259
  }, /*#__PURE__*/React.createElement("div", _extends({}, rest, getDevtoolsProps(componentName), {
260
260
  id: id,
261
261
  size: size,
262
- className: cx("".concat(blockClass, "__input"), _defineProperty({}, "".concat(blockClass, "__input--empty"), ((_refInput$current = refInput.current) === null || _refInput$current === void 0 ? void 0 : (_refInput$current$inn = _refInput$current.innerText) === null || _refInput$current$inn === void 0 ? void 0 : _refInput$current$inn.length) === 0)),
262
+ className: cx("".concat(blockClass, "__input"), _defineProperty({}, "".concat(blockClass, "__input--empty"), ((_refInput$current = refInput.current) === null || _refInput$current === void 0 ? void 0 : (_refInput$current$tex = _refInput$current.textContent) === null || _refInput$current$tex === void 0 ? void 0 : _refInput$current$tex.length) === 0)),
263
263
  contentEditable: true,
264
264
  "aria-label": labelText,
265
265
  role: "textbox",
@@ -202,12 +202,14 @@ export var OptionsTile = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
202
202
  className: "".concat(blockClass, "__heading")
203
203
  }, /*#__PURE__*/React.createElement("h6", {
204
204
  id: titleId,
205
- className: "".concat(blockClass, "__title")
205
+ className: "".concat(blockClass, "__title"),
206
+ title: title
206
207
  }, title), text && /*#__PURE__*/React.createElement("span", {
207
208
  className: cx(summaryClasses),
208
209
  "aria-hidden": summaryHidden
209
210
  }, Icon && /*#__PURE__*/React.createElement(Icon, null), /*#__PURE__*/React.createElement("span", {
210
- className: "".concat(blockClass, "__summary-text")
211
+ className: "".concat(blockClass, "__summary-text"),
212
+ title: text
211
213
  }, text)));
212
214
  }
213
215
 
@@ -80,7 +80,7 @@ var useMultipleKeyTracking = function useMultipleKeyTracking(_ref) {
80
80
  };
81
81
  }, []);
82
82
  (0, _react.useEffect)(function () {
83
- if (containerHasFocus && !isEditing) {
83
+ if (ref && containerHasFocus && !isEditing) {
84
84
  ref.current.onkeydown = ref.current.onkeyup = function (event) {
85
85
  // If keydown, we will add the new key to the keysPressedList array
86
86
  if (event.type === 'keydown') {
@@ -132,7 +132,7 @@ var useMultipleKeyTracking = function useMultipleKeyTracking(_ref) {
132
132
  // or is currently in edit mode
133
133
 
134
134
 
135
- if (!containerHasFocus || isEditing) {
135
+ if (ref && !containerHasFocus || isEditing) {
136
136
  ref.current.onkeydown = undefined;
137
137
  ref.current.onkeyup = undefined;
138
138
 
@@ -48,8 +48,6 @@ var TableContainer = _carbonComponentsReact.DataTable.TableContainer,
48
48
  var blockClass = "".concat(_settings.pkg.prefix, "--datagrid");
49
49
 
50
50
  var DatagridContent = function DatagridContent(_ref) {
51
- var _getTableProps;
52
-
53
51
  var datagridState = _ref.datagridState;
54
52
 
55
53
  var _useContext = (0, _react.useContext)(_InlineEditContext.InlineEditContext),
@@ -85,7 +83,7 @@ var DatagridContent = function DatagridContent(_ref) {
85
83
  // and swapped out with an input, i.e. text, number, selection, or date picker
86
84
 
87
85
 
88
- if (target.closest(".".concat(blockClass, "__inline-edit-button")) || target.closest(".".concat(blockClass, "__inline-edit--select"))) {
86
+ if (target.closest(".".concat(blockClass, "__inline-edit-button")) || target.closest(".".concat(blockClass, "__inline-edit--select")) || target.closest(".".concat(blockClass, "__row-size-button"))) {
89
87
  return;
90
88
  }
91
89
 
@@ -95,8 +93,33 @@ var DatagridContent = function DatagridContent(_ref) {
95
93
  });
96
94
  });
97
95
 
96
+ var renderTable = function renderTable() {
97
+ var _getTableProps;
98
+
99
+ return /*#__PURE__*/_react.default.createElement(Table, (0, _extends2.default)({}, getTableProps(), {
100
+ className: (0, _classnames.default)(withVirtualScroll ? '' : "".concat(blockClass, "__table-simple"), "".concat(blockClass, "__vertical-align-").concat(verticalAlign), (0, _defineProperty2.default)({}, "".concat(blockClass, "__variable-row-height"), variableRowHeight), (0, _defineProperty2.default)({}, "".concat(blockClass, "__table-with-inline-edit"), withInlineEdit), (0, _defineProperty2.default)({}, "".concat(blockClass, "__table-grid-active"), gridActive), (_getTableProps = getTableProps()) === null || _getTableProps === void 0 ? void 0 : _getTableProps.className),
101
+ role: withInlineEdit && 'grid',
102
+ tabIndex: withInlineEdit && 0,
103
+ onKeyDown: withInlineEdit ? function (event) {
104
+ return (0, _handleGridKeyPress.handleGridKeyPress)({
105
+ event: event,
106
+ dispatch: dispatch,
107
+ state: state,
108
+ instance: datagridState,
109
+ keysPressedList: keysPressedList,
110
+ usingMac: usingMac
111
+ });
112
+ } : null,
113
+ onFocus: withInlineEdit ? function () {
114
+ return (0, _handleGridFocus.handleGridFocus)(state, dispatch);
115
+ } : null
116
+ }), /*#__PURE__*/_react.default.createElement(_DatagridHead.default, datagridState), /*#__PURE__*/_react.default.createElement(_DatagridBody.default, (0, _extends2.default)({}, datagridState, {
117
+ rows: rows
118
+ })));
119
+ };
120
+
98
121
  var _useMultipleKeyTracki = (0, _hooks2.useMultipleKeyTracking)({
99
- ref: multiKeyTrackingRef,
122
+ ref: withInlineEdit ? multiKeyTrackingRef : null,
100
123
  containerHasFocus: gridActive,
101
124
  isEditing: !!editId
102
125
  }),
@@ -112,28 +135,9 @@ var DatagridContent = function DatagridContent(_ref) {
112
135
  ref: gridAreaRef
113
136
  }, leftPanel && leftPanel.isOpen && /*#__PURE__*/_react.default.createElement("div", {
114
137
  className: "".concat(blockClass, "__datagridLeftPanel")
115
- }, leftPanel.panelContent), /*#__PURE__*/_react.default.createElement("div", {
138
+ }, leftPanel.panelContent), withInlineEdit ? /*#__PURE__*/_react.default.createElement("div", {
116
139
  ref: multiKeyTrackingRef
117
- }, /*#__PURE__*/_react.default.createElement(Table, (0, _extends2.default)({}, getTableProps(), {
118
- className: (0, _classnames.default)(withVirtualScroll ? '' : "".concat(blockClass, "__table-simple"), "".concat(blockClass, "__vertical-align-").concat(verticalAlign), (0, _defineProperty2.default)({}, "".concat(blockClass, "__variable-row-height"), variableRowHeight), (0, _defineProperty2.default)({}, "".concat(blockClass, "__table-with-inline-edit"), withInlineEdit), (0, _defineProperty2.default)({}, "".concat(blockClass, "__table-grid-active"), gridActive), (_getTableProps = getTableProps()) === null || _getTableProps === void 0 ? void 0 : _getTableProps.className),
119
- role: withInlineEdit && 'grid',
120
- tabIndex: withInlineEdit && 0,
121
- onKeyDown: withInlineEdit ? function (event) {
122
- return (0, _handleGridKeyPress.handleGridKeyPress)({
123
- event: event,
124
- dispatch: dispatch,
125
- state: state,
126
- instance: datagridState,
127
- keysPressedList: keysPressedList,
128
- usingMac: usingMac
129
- });
130
- } : null,
131
- onFocus: withInlineEdit ? function () {
132
- return (0, _handleGridFocus.handleGridFocus)(state, dispatch);
133
- } : null
134
- }), /*#__PURE__*/_react.default.createElement(_DatagridHead.default, datagridState), /*#__PURE__*/_react.default.createElement(_DatagridBody.default, (0, _extends2.default)({}, datagridState, {
135
- rows: rows
136
- })))))), (rows === null || rows === void 0 ? void 0 : rows.length) > 0 && !isFetching && DatagridPagination && DatagridPagination(datagridState), CustomizeColumnsModal && /*#__PURE__*/_react.default.createElement(CustomizeColumnsModal, {
140
+ }, renderTable()) : renderTable())), (rows === null || rows === void 0 ? void 0 : rows.length) > 0 && !isFetching && DatagridPagination && DatagridPagination(datagridState), CustomizeColumnsModal && /*#__PURE__*/_react.default.createElement(CustomizeColumnsModal, {
137
141
  instance: datagridState
138
142
  }));
139
143
  };
@@ -2,6 +2,8 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
5
7
  Object.defineProperty(exports, "__esModule", {
6
8
  value: true
7
9
  });
@@ -13,7 +15,7 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
13
15
 
14
16
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
17
 
16
- var _react = _interopRequireDefault(require("react"));
18
+ var _react = _interopRequireWildcard(require("react"));
17
19
 
18
20
  var _carbonComponentsReact = require("carbon-components-react");
19
21
 
@@ -23,7 +25,16 @@ var _classnames = _interopRequireDefault(require("classnames"));
23
25
 
24
26
  var _settings = require("../../../settings");
25
27
 
28
+ var _InlineEditContext = require("./addons/InlineEdit/InlineEditContext/InlineEditContext");
29
+
30
+ var _getCellIdAsObject = require("./addons/InlineEdit/InlineEditContext/getCellIdAsObject");
31
+
26
32
  var _excluded = ["children"];
33
+
34
+ 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); }
35
+
36
+ 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; }
37
+
27
38
  var blockClass = "".concat(_settings.pkg.prefix, "--datagrid");
28
39
  var TableRow = _carbonComponentsReact.DataTable.TableRow,
29
40
  TableCell = _carbonComponentsReact.DataTable.TableCell; // eslint-disable-next-line react/prop-types
@@ -32,8 +43,14 @@ var DatagridRow = function DatagridRow(datagridState) {
32
43
  var _cx;
33
44
 
34
45
  var row = datagridState.row;
46
+
47
+ var _useContext = (0, _react.useContext)(_InlineEditContext.InlineEditContext),
48
+ state = _useContext.state;
49
+
50
+ var activeCellId = state.activeCellId;
51
+ var activeCellObject = activeCellId && (0, _getCellIdAsObject.getCellIdAsObject)(activeCellId);
35
52
  return /*#__PURE__*/_react.default.createElement(TableRow, (0, _extends2.default)({
36
- 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), _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(_settings.carbon.prefix, "--data-table--selected"), row.isSelected), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__carbon-row-hover-active"), activeCellObject && row.index === activeCellObject.row), _cx))
37
54
  }, row.getRowProps(), {
38
55
  key: row.id,
39
56
  onMouseEnter: function onMouseEnter(event) {
@@ -60,7 +60,7 @@ var RowSizeDropdown = function RowSizeDropdown(_ref) {
60
60
  return setIsOpen(!isOpen);
61
61
  },
62
62
  iconDescription: legendText,
63
- className: (0, _classnames.default)((0, _defineProperty2.default)({}, "".concat(blockClass, "__row-size-button--open"), isOpen))
63
+ className: (0, _classnames.default)("".concat(blockClass, "__row-size-button"), (0, _defineProperty2.default)({}, "".concat(blockClass, "__row-size-button--open"), isOpen))
64
64
  }), isOpen && /*#__PURE__*/React.createElement(_RowSizeRadioGroup.default, (0, _extends2.default)({}, props, {
65
65
  legendText: legendText,
66
66
  buttonRef: buttonRef,
@@ -113,7 +113,7 @@ var getDropdownPosition = function getDropdownPosition(buttonEle) {
113
113
 
114
114
  if (parent instanceof HTMLElement) {
115
115
  var top = buttonEle.offsetTop + buttonEle.offsetHeight;
116
- var right = parent.offsetWidth - parent.offsetLeft - (buttonEle.offsetLeft + buttonEle.offsetWidth);
116
+ var right = parent.offsetWidth - parent.offsetLeft - buttonEle.offsetLeft;
117
117
  return {
118
118
  top: top,
119
119
  right: right
@@ -13,16 +13,25 @@ var _react = _interopRequireDefault(require("react"));
13
13
 
14
14
  var _namor = _interopRequireDefault(require("namor"));
15
15
 
16
+ var _StatusIcon = require("../../StatusIcon");
17
+
16
18
  var _getInlineEditColumns = require("./getInlineEditColumns");
17
19
 
18
20
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19
21
 
20
22
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
21
23
 
22
- var getRandomInteger = function getRandomInteger(min, max) {
23
- min = Math.ceil(min);
24
- max = Math.floor(max);
25
- return Math.floor(Math.random() * (max - min + 1)) + min;
24
+ var getRandomInteger = function getRandomInteger(min, max, decimalPlaces) {
25
+ var roundedMin = Math.ceil(min);
26
+ var roundedMax = Math.floor(max);
27
+ var randomNumber = Math.random() * (max - min) + min;
28
+
29
+ if (!decimalPlaces) {
30
+ return Math.floor(Math.random() * (roundedMax - roundedMin + 1)) + roundedMin;
31
+ }
32
+
33
+ var power = Math.pow(10, decimalPlaces);
34
+ return Math.floor(randomNumber * power) / power;
26
35
  };
27
36
 
28
37
  var makeData = function makeData() {
@@ -57,6 +66,16 @@ var range = function range(len) {
57
66
 
58
67
  exports.range = range;
59
68
 
69
+ var renderStatusIcon = function renderStatusIcon(statusChance) {
70
+ var iconProps = {
71
+ size: 'sm',
72
+ theme: 'light',
73
+ kind: statusChance > 0.66 ? 'critical' : statusChance > 0.33 ? 'minor-warning' : 'normal',
74
+ iconDescription: statusChance > 0.66 ? 'Critical' : statusChance > 0.33 ? 'Minor warning' : 'Normal'
75
+ };
76
+ return /*#__PURE__*/_react.default.createElement(_StatusIcon.StatusIcon, iconProps);
77
+ };
78
+
60
79
  var newPerson = function newPerson() {
61
80
  var statusChance = Math.random();
62
81
  var initialChartTypeIndex = getRandomInteger(0, 2);
@@ -159,7 +178,9 @@ var newPerson = function newPerson() {
159
178
  }),
160
179
  status: statusChance > 0.66 ? 'relationship' : statusChance > 0.33 ? 'complicated' : 'single',
161
180
  chartType: initialChartTypeIndex === 0 ? _getInlineEditColumns.inlineEditSelectItems[0] : initialChartTypeIndex === 1 ? _getInlineEditColumns.inlineEditSelectItems[1] : _getInlineEditColumns.inlineEditSelectItems[2],
162
- activeSince: statusChance > 0.66 ? activeSinceDate : statusChance > 0.33 ? yesterdayDate : twoDaysAgoDate
181
+ activeSince: statusChance > 0.66 ? activeSinceDate : statusChance > 0.33 ? yesterdayDate : twoDaysAgoDate,
182
+ bonus: "$\r".concat(getRandomInteger(100, 500, 2)),
183
+ status_icon: renderStatusIcon(statusChance)
163
184
  };
164
185
  };
165
186
 
@@ -56,7 +56,7 @@ var buttons = ['cancel', 'edit', 'save'];
56
56
  */
57
57
 
58
58
  var InlineEdit = /*#__PURE__*/_react.default.forwardRef(function (_ref, refIn) {
59
- var _cx, _refInput$current, _refInput$current$inn, _cx3;
59
+ var _cx, _refInput$current, _refInput$current$tex, _cx3;
60
60
 
61
61
  var buttonTooltipAlignment = _ref.buttonTooltipAlignment,
62
62
  buttonTooltipPosition = _ref.buttonTooltipPosition,
@@ -81,7 +81,7 @@ var InlineEdit = /*#__PURE__*/_react.default.forwardRef(function (_ref, refIn) {
81
81
  value = _ref.value,
82
82
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
83
83
  var refInput = (0, _react.useRef)({
84
- innerText: value
84
+ textContent: value
85
85
  });
86
86
  var localRef = (0, _react.useRef)(null);
87
87
  var ref = refIn || localRef;
@@ -163,15 +163,15 @@ var InlineEdit = /*#__PURE__*/_react.default.forwardRef(function (_ref, refIn) {
163
163
  document.getSelection().removeAllRanges();
164
164
 
165
165
  if (onSave) {
166
- onSave(refInput.current.innerText);
166
+ onSave(refInput.current.textContent);
167
167
  }
168
168
  };
169
169
 
170
170
  var handleInput = function handleInput() {
171
- setInternalValue(refInput.current.innerText);
171
+ setInternalValue(refInput.current.textContent);
172
172
 
173
173
  if (onChange) {
174
- onChange(refInput.current.innerText);
174
+ onChange(refInput.current.textContent);
175
175
  }
176
176
  }; // pasting into contentEditable not supported by userEvent
177
177
 
@@ -206,7 +206,7 @@ var InlineEdit = /*#__PURE__*/_react.default.forwardRef(function (_ref, refIn) {
206
206
  };
207
207
 
208
208
  var handleCancel = function handleCancel() {
209
- refInput.current.innerText = value;
209
+ refInput.current.textContent = value;
210
210
  handleInput(value);
211
211
  doSetEditing(false);
212
212
  document.getSelection().removeAllRanges();
@@ -274,7 +274,7 @@ var InlineEdit = /*#__PURE__*/_react.default.forwardRef(function (_ref, refIn) {
274
274
  }, /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, rest, (0, _devtools.getDevtoolsProps)(componentName), {
275
275
  id: id,
276
276
  size: size,
277
- className: (0, _classnames.default)("".concat(blockClass, "__input"), (0, _defineProperty2.default)({}, "".concat(blockClass, "__input--empty"), ((_refInput$current = refInput.current) === null || _refInput$current === void 0 ? void 0 : (_refInput$current$inn = _refInput$current.innerText) === null || _refInput$current$inn === void 0 ? void 0 : _refInput$current$inn.length) === 0)),
277
+ className: (0, _classnames.default)("".concat(blockClass, "__input"), (0, _defineProperty2.default)({}, "".concat(blockClass, "__input--empty"), ((_refInput$current = refInput.current) === null || _refInput$current === void 0 ? void 0 : (_refInput$current$tex = _refInput$current.textContent) === null || _refInput$current$tex === void 0 ? void 0 : _refInput$current$tex.length) === 0)),
278
278
  contentEditable: true,
279
279
  "aria-label": labelText,
280
280
  role: "textbox",
@@ -221,12 +221,14 @@ var OptionsTile = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
221
221
  className: "".concat(blockClass, "__heading")
222
222
  }, /*#__PURE__*/_react.default.createElement("h6", {
223
223
  id: titleId,
224
- className: "".concat(blockClass, "__title")
224
+ className: "".concat(blockClass, "__title"),
225
+ title: title
225
226
  }, title), text && /*#__PURE__*/_react.default.createElement("span", {
226
227
  className: (0, _classnames.default)(summaryClasses),
227
228
  "aria-hidden": summaryHidden
228
229
  }, Icon && /*#__PURE__*/_react.default.createElement(Icon, null), /*#__PURE__*/_react.default.createElement("span", {
229
- className: "".concat(blockClass, "__summary-text")
230
+ className: "".concat(blockClass, "__summary-text"),
231
+ title: text
230
232
  }, text)));
231
233
  }
232
234
 
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": "1.32.0",
4
+ "version": "1.32.1",
5
5
  "license": "Apache-2.0",
6
6
  "main": "lib/index.js",
7
7
  "module": "es/index.js",
@@ -51,26 +51,26 @@
51
51
  },
52
52
  "devDependencies": {
53
53
  "@babel/cli": "^7.18.10",
54
- "@babel/core": "^7.18.13",
55
- "babel-preset-ibm-cloud-cognitive": "^0.14.19",
54
+ "@babel/core": "^7.19.1",
55
+ "babel-preset-ibm-cloud-cognitive": "^0.14.20",
56
56
  "chalk": "^4.1.2",
57
57
  "change-case": "^4.1.2",
58
58
  "copyfiles": "^2.4.1",
59
59
  "cross-env": "^7.0.3",
60
60
  "fs-extra": "^10.1.0",
61
61
  "glob": "^8.0.3",
62
- "jest": "^29.0.1",
63
- "jest-config-ibm-cloud-cognitive": "^0.24.5",
64
- "jest-environment-jsdom": "^29.0.1",
62
+ "jest": "^29.0.3",
63
+ "jest-config-ibm-cloud-cognitive": "^0.24.6",
64
+ "jest-environment-jsdom": "^29.0.3",
65
65
  "namor": "^1.1.2",
66
- "npm-check-updates": "^16.0.6",
66
+ "npm-check-updates": "^16.1.3",
67
67
  "npm-run-all": "^4.1.5",
68
68
  "rimraf": "^3.0.2",
69
- "sass": "^1.54.8",
69
+ "sass": "^1.54.9",
70
70
  "yargs": "^17.5.1"
71
71
  },
72
72
  "dependencies": {
73
- "@babel/runtime": "^7.18.9",
73
+ "@babel/runtime": "^7.19.0",
74
74
  "@carbon/telemetry": "^0.1.0",
75
75
  "immutability-helper": "^3.1.1",
76
76
  "react-dnd": "^15.1.2",
@@ -87,11 +87,11 @@
87
87
  "@carbon/motion": "^10.29.0",
88
88
  "@carbon/themes": "^10.55.0",
89
89
  "@carbon/type": "^10.45.0",
90
- "carbon-components": "^10.58.0",
91
- "carbon-components-react": "^7.59.0",
90
+ "carbon-components": "^10.58.1",
91
+ "carbon-components-react": "^7.59.1",
92
92
  "carbon-icons": "^7.0.7",
93
93
  "react": "^16.8.6 || ^17.0.1",
94
94
  "react-dom": "^16.8.6 || ^17.0.1"
95
95
  },
96
- "gitHead": "07980288bb0aeea68a7b884846fb675e9bba82bd"
96
+ "gitHead": "829c3e97ae9b2412f7fcb1859dc8dd8b019963ee"
97
97
  }
@@ -85,6 +85,7 @@ $row-heights: (
85
85
  cursor: pointer;
86
86
  outline: 0; // handled by active class
87
87
  .#{$block-class}__label-icon {
88
+ height: $spacing-05;
88
89
  padding-right: $spacing-05;
89
90
  }
90
91
  &.#{$block-class}__inline-edit-button--non-edit {
@@ -209,3 +210,8 @@ $row-heights: (
209
210
  text-overflow: ellipsis;
210
211
  white-space: nowrap;
211
212
  }
213
+
214
+ .#{$carbon-prefix}--data-table .#{$block-class}__carbon-row-hover-active td {
215
+ border-top-color: $hover-ui;
216
+ background-color: $hover-ui;
217
+ }
@@ -70,13 +70,17 @@
70
70
  }
71
71
 
72
72
  .#{$block-class}__heading {
73
+ overflow: hidden;
73
74
  grid-column: 2;
74
75
  }
75
76
 
76
77
  .#{$block-class}__title {
77
78
  @include carbon--type-style('productive-heading-01');
78
79
 
80
+ overflow: hidden;
79
81
  color: $text-01;
82
+ text-overflow: ellipsis;
83
+ white-space: nowrap;
80
84
  }
81
85
 
82
86
  .#{$block-class}__summary {