@carbon/ibm-products 1.14.0 → 1.15.0
Sign up to get free protection for your applications and to get access to all the features.
- package/css/index-full-carbon.css +23 -5
- package/css/index-full-carbon.css.map +1 -1
- package/css/index-full-carbon.min.css +3 -3
- package/css/index-full-carbon.min.css.map +1 -1
- package/css/index-without-carbon-released-only.css +4 -4
- package/css/index-without-carbon-released-only.css.map +1 -1
- package/css/index-without-carbon-released-only.min.css +2 -2
- package/css/index-without-carbon-released-only.min.css.map +1 -1
- package/css/index-without-carbon.css +23 -5
- package/css/index-without-carbon.css.map +1 -1
- package/css/index-without-carbon.min.css +3 -3
- package/css/index-without-carbon.min.css.map +1 -1
- package/css/index.css +23 -5
- package/css/index.css.map +1 -1
- package/css/index.min.css +3 -3
- package/css/index.min.css.map +1 -1
- package/es/components/AddSelect/AddSelect.js +25 -19
- package/es/components/AddSelect/AddSelectFilter.js +5 -5
- package/es/components/DataSpreadsheet/DataSpreadsheet.js +174 -127
- package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +24 -8
- package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +31 -6
- package/es/components/DataSpreadsheet/hooks/index.js +2 -1
- package/es/components/DataSpreadsheet/hooks/useMultipleKeyTracking.js +36 -8
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetEdit.js +68 -0
- package/es/components/DataSpreadsheet/utils/createCellSelectionArea.js +20 -8
- package/es/components/DataSpreadsheet/utils/getSelectionAreaPoints.js +18 -0
- package/es/components/DataSpreadsheet/utils/handleActiveCellInSelectionEnter.js +121 -0
- package/es/components/DataSpreadsheet/utils/handleActiveCellInSelectionTab.js +108 -0
- package/es/components/DataSpreadsheet/utils/handleEditSubmit.js +87 -0
- package/es/components/DataSpreadsheet/utils/handleHeaderCellSelection.js +42 -8
- package/es/components/DataSpreadsheet/utils/handleMultipleKeys.js +153 -15
- package/es/components/DataSpreadsheet/utils/selectAllCells.js +53 -0
- package/es/components/MultiAddSelect/MultiAddSelect.js +150 -3
- package/es/components/PageHeader/PageHeader.js +3 -1
- package/es/components/SingleAddSelect/SingleAddSelect.js +90 -4
- package/es/components/TagSet/TagSet.js +13 -6
- package/es/components/Tearsheet/TearsheetShell.js +34 -10
- package/es/global/js/package-settings.js +2 -1
- package/lib/components/AddSelect/AddSelect.js +25 -19
- package/lib/components/AddSelect/AddSelectFilter.js +5 -5
- package/lib/components/DataSpreadsheet/DataSpreadsheet.js +178 -126
- package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +24 -8
- package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +32 -6
- package/lib/components/DataSpreadsheet/hooks/index.js +9 -1
- package/lib/components/DataSpreadsheet/hooks/useMultipleKeyTracking.js +36 -8
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetEdit.js +79 -0
- package/lib/components/DataSpreadsheet/utils/createCellSelectionArea.js +21 -8
- package/lib/components/DataSpreadsheet/utils/getSelectionAreaPoints.js +27 -0
- package/lib/components/DataSpreadsheet/utils/handleActiveCellInSelectionEnter.js +127 -0
- package/lib/components/DataSpreadsheet/utils/handleActiveCellInSelectionTab.js +118 -0
- package/lib/components/DataSpreadsheet/utils/handleEditSubmit.js +94 -0
- package/lib/components/DataSpreadsheet/utils/handleHeaderCellSelection.js +44 -8
- package/lib/components/DataSpreadsheet/utils/handleMultipleKeys.js +161 -22
- package/lib/components/DataSpreadsheet/utils/selectAllCells.js +60 -0
- package/lib/components/MultiAddSelect/MultiAddSelect.js +150 -2
- package/lib/components/PageHeader/PageHeader.js +3 -1
- package/lib/components/SingleAddSelect/SingleAddSelect.js +91 -3
- package/lib/components/TagSet/TagSet.js +13 -6
- package/lib/components/Tearsheet/TearsheetShell.js +36 -10
- package/lib/global/js/package-settings.js +2 -1
- package/package.json +11 -11
- package/scss/components/AboutModal/_about-modal.scss +4 -0
- package/scss/components/DataSpreadsheet/_data-spreadsheet.scss +22 -1
- package/scss/components/ExportModal/_export-modal.scss +0 -4
@@ -530,7 +530,8 @@ var TYPES = {
|
|
530
530
|
gray: 'Gray',
|
531
531
|
'cool-gray': 'Cool-Gray',
|
532
532
|
'warm-gray': 'Warm-Gray',
|
533
|
-
'high-contrast': 'High-Contrast'
|
533
|
+
'high-contrast': 'High-Contrast',
|
534
|
+
outline: 'Outline'
|
534
535
|
};
|
535
536
|
var tagTypes = Object.keys(TYPES);
|
536
537
|
var deprecatedProps = {
|
@@ -545,6 +546,7 @@ var deprecatedProps = {
|
|
545
546
|
hasBackgroundAlways: (0, _propsHelper.deprecateProp)(_propTypes.default.bool, 'Property replaced by `withoutBackground`')
|
546
547
|
};
|
547
548
|
exports.deprecatedProps = deprecatedProps;
|
549
|
+
PageHeader.tagTypes = tagTypes;
|
548
550
|
PageHeader.propTypes = _objectSpread({
|
549
551
|
/**
|
550
552
|
* Specifies the action bar items which are the final items in the row top of the PageHeader.
|
@@ -13,24 +13,112 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
13
13
|
|
14
14
|
var _react = _interopRequireWildcard(require("react"));
|
15
15
|
|
16
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
17
|
+
|
16
18
|
var _AddSelect = require("../AddSelect");
|
17
19
|
|
18
20
|
var _devtools = require("../../global/js/utils/devtools");
|
19
21
|
|
20
22
|
var _settings = require("../../settings");
|
21
23
|
|
24
|
+
var _propsHelper = require("../../global/js/utils/props-helper");
|
25
|
+
|
22
26
|
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); }
|
23
27
|
|
24
28
|
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; }
|
25
29
|
|
26
|
-
// import PropTypes from 'prop-types';
|
27
30
|
var componentName = 'SingleAddSelect';
|
28
31
|
var SingleAddSelect = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
29
|
-
|
32
|
+
// remove multi add select specific props
|
33
|
+
var validProps = (0, _propsHelper.prepareProps)(props, ['columnInputPlaceholder', 'globalFilters', 'globalFiltersIconDescription', 'globalFiltersPlaceholderText', 'globalFiltersPrimaryButtonText', 'globalFiltersSecondaryButtonText', 'influencerTitle', 'multi', 'noSelectionDescription', 'noSelectionTitle', 'removeIconDescription']);
|
34
|
+
return /*#__PURE__*/_react.default.createElement(_AddSelect.AddSelect, (0, _extends2.default)({}, validProps, {
|
30
35
|
ref: ref
|
31
36
|
}, (0, _devtools.getDevtoolsProps)(componentName)));
|
32
37
|
});
|
33
38
|
exports.SingleAddSelect = SingleAddSelect;
|
34
39
|
exports.SingleAddSelect = SingleAddSelect = _settings.pkg.checkComponentEnabled(SingleAddSelect, componentName);
|
35
|
-
SingleAddSelect.propTypes = {
|
40
|
+
SingleAddSelect.propTypes = {
|
41
|
+
/**
|
42
|
+
* optional class name
|
43
|
+
*/
|
44
|
+
className: _propTypes.default.string,
|
45
|
+
|
46
|
+
/**
|
47
|
+
* text description that appears under the title
|
48
|
+
*/
|
49
|
+
description: _propTypes.default.string,
|
50
|
+
|
51
|
+
/**
|
52
|
+
* label for global search input
|
53
|
+
*/
|
54
|
+
globalSearchLabel: _propTypes.default.string,
|
55
|
+
|
56
|
+
/**
|
57
|
+
* placeholder for global search input
|
58
|
+
*/
|
59
|
+
globalSearchPlaceholder: _propTypes.default.string,
|
60
|
+
|
61
|
+
/**
|
62
|
+
* object that contains the item data. for more information reference the
|
63
|
+
* "Structuring items" section in the docs tab
|
64
|
+
*/
|
65
|
+
items: _propTypes.default.shape({
|
66
|
+
entries: _propTypes.default.arrayOf(_propTypes.default.shape({
|
67
|
+
children: _propTypes.default.object,
|
68
|
+
id: _propTypes.default.string.isRequired,
|
69
|
+
title: _propTypes.default.string.isRequired,
|
70
|
+
value: _propTypes.default.string.isRequired
|
71
|
+
}))
|
72
|
+
}),
|
73
|
+
|
74
|
+
/**
|
75
|
+
* label that display above the list of items
|
76
|
+
*/
|
77
|
+
itemsLabel: _propTypes.default.string,
|
78
|
+
|
79
|
+
/**
|
80
|
+
* text to display when no results are found from the global search
|
81
|
+
*/
|
82
|
+
noResultsDescription: _propTypes.default.string,
|
83
|
+
|
84
|
+
/**
|
85
|
+
* title to display when no results are found from the global search
|
86
|
+
*/
|
87
|
+
noResultsTitle: _propTypes.default.string,
|
88
|
+
|
89
|
+
/**
|
90
|
+
* function to call when the close button clicked
|
91
|
+
*/
|
92
|
+
onClose: _propTypes.default.func,
|
93
|
+
|
94
|
+
/**
|
95
|
+
* text for close button
|
96
|
+
*/
|
97
|
+
onCloseButtonText: _propTypes.default.string,
|
98
|
+
|
99
|
+
/**
|
100
|
+
* function to call when the submit button is clicked. returns a selection
|
101
|
+
*/
|
102
|
+
onSubmit: _propTypes.default.func,
|
103
|
+
|
104
|
+
/**
|
105
|
+
* text for the submit button
|
106
|
+
*/
|
107
|
+
onSubmitButtonText: _propTypes.default.string,
|
108
|
+
|
109
|
+
/**
|
110
|
+
* specifies if the component is open or not
|
111
|
+
*/
|
112
|
+
open: _propTypes.default.bool,
|
113
|
+
|
114
|
+
/**
|
115
|
+
* text that displays when displaying filtered items
|
116
|
+
*/
|
117
|
+
searchResultsLabel: _propTypes.default.string,
|
118
|
+
|
119
|
+
/**
|
120
|
+
* header text
|
121
|
+
*/
|
122
|
+
title: _propTypes.default.string
|
123
|
+
};
|
36
124
|
SingleAddSelect.displayName = componentName;
|
@@ -122,9 +122,13 @@ var TagSet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
122
122
|
};
|
123
123
|
|
124
124
|
(0, _react.useEffect)(function () {
|
125
|
-
|
126
|
-
|
127
|
-
|
125
|
+
if (allTagsModalTargetIn) {
|
126
|
+
setAllTagsModalTarget(allTagsModalTargetIn);
|
127
|
+
} else {
|
128
|
+
if (_settings.pkg.isFeatureEnabled('default-portal-target-body')) {
|
129
|
+
setAllTagsModalTarget(document.body);
|
130
|
+
}
|
131
|
+
}
|
128
132
|
}, [allTagsModalTargetIn]);
|
129
133
|
(0, _react.useEffect)(function () {
|
130
134
|
var newSizingTags = []; // create sizing tags
|
@@ -260,14 +264,16 @@ var TagSet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
260
264
|
}, hiddenSizingTags), /*#__PURE__*/_react.default.createElement("div", {
|
261
265
|
className: "".concat(blockClass, "__tag-container"),
|
262
266
|
ref: displayedArea
|
263
|
-
}, displayedTags)), allTagsModalTarget
|
267
|
+
}, displayedTags)), (allTagsModalTarget ? _reactDom.createPortal : function (children) {
|
268
|
+
return children;
|
269
|
+
})( /*#__PURE__*/_react.default.createElement(_TagSetModal.TagSetModal, {
|
264
270
|
allTags: tags,
|
265
271
|
open: showAllModalOpen,
|
266
272
|
title: allTagsModalTitle,
|
267
273
|
onClose: handleModalClose,
|
268
274
|
searchLabel: allTagsModalSearchLabel,
|
269
275
|
searchPlaceholder: allTagsModalSearchPlaceholderText
|
270
|
-
}), allTagsModalTarget)
|
276
|
+
}), allTagsModalTarget));
|
271
277
|
}); // Return a placeholder if not released and not enabled by feature flag
|
272
278
|
|
273
279
|
|
@@ -295,7 +301,8 @@ var TYPES = {
|
|
295
301
|
gray: 'Gray',
|
296
302
|
'cool-gray': 'Cool-Gray',
|
297
303
|
'warm-gray': 'Warm-Gray',
|
298
|
-
'high-contrast': 'High-Contrast'
|
304
|
+
'high-contrast': 'High-Contrast',
|
305
|
+
outline: 'Outline'
|
299
306
|
};
|
300
307
|
var tagTypes = Object.keys(TYPES);
|
301
308
|
TagSet.types = tagTypes;
|
@@ -19,6 +19,8 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
|
|
19
19
|
|
20
20
|
var _react = _interopRequireWildcard(require("react"));
|
21
21
|
|
22
|
+
var _reactDom = require("react-dom");
|
23
|
+
|
22
24
|
var _reactResizeDetector = require("react-resize-detector");
|
23
25
|
|
24
26
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
@@ -35,7 +37,7 @@ var _ActionSet = require("../ActionSet");
|
|
35
37
|
|
36
38
|
var _Wrap = require("../../global/js/utils/Wrap");
|
37
39
|
|
38
|
-
var _excluded = ["actions", "children", "className", "closeIconDescription", "description", "hasCloseIcon", "headerActions", "influencer", "influencerPosition", "influencerWidth", "label", "navigation", "onClose", "open", "selectorPrimaryFocus", "size", "title", "verticalPosition"];
|
40
|
+
var _excluded = ["actions", "children", "className", "closeIconDescription", "description", "hasCloseIcon", "headerActions", "influencer", "influencerPosition", "influencerWidth", "label", "navigation", "onClose", "open", "selectorPrimaryFocus", "size", "portalTarget", "title", "verticalPosition"];
|
39
41
|
|
40
42
|
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); }
|
41
43
|
|
@@ -95,9 +97,26 @@ var TearsheetShell = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref)
|
|
95
97
|
open = _ref.open,
|
96
98
|
selectorPrimaryFocus = _ref.selectorPrimaryFocus,
|
97
99
|
size = _ref.size,
|
100
|
+
portalTargetIn = _ref.portalTarget,
|
98
101
|
title = _ref.title,
|
99
102
|
verticalPosition = _ref.verticalPosition,
|
100
103
|
rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
104
|
+
|
105
|
+
// node the modal tearsheet is hosted in
|
106
|
+
var _useState = (0, _react.useState)(null),
|
107
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
108
|
+
portalTarget = _useState2[0],
|
109
|
+
setPortalTarget = _useState2[1];
|
110
|
+
|
111
|
+
(0, _react.useEffect)(function () {
|
112
|
+
if (portalTargetIn) {
|
113
|
+
setPortalTarget(portalTargetIn);
|
114
|
+
} else {
|
115
|
+
if (_settings.pkg.isFeatureEnabled('default-portal-target-body')) {
|
116
|
+
setPortalTarget(document.body);
|
117
|
+
}
|
118
|
+
}
|
119
|
+
}, [portalTargetIn]);
|
101
120
|
var localRef = (0, _react.useRef)();
|
102
121
|
var modalRef = ref || localRef;
|
103
122
|
|
@@ -108,15 +127,15 @@ var TearsheetShell = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref)
|
|
108
127
|
resizer = _useResizeDetector.ref; // Keep track of the stack depth and our position in it (1-based, 0=closed)
|
109
128
|
|
110
129
|
|
111
|
-
var _useState = (0, _react.useState)(0),
|
112
|
-
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
113
|
-
depth = _useState2[0],
|
114
|
-
setDepth = _useState2[1];
|
115
|
-
|
116
130
|
var _useState3 = (0, _react.useState)(0),
|
117
131
|
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
118
|
-
|
119
|
-
|
132
|
+
depth = _useState4[0],
|
133
|
+
setDepth = _useState4[1];
|
134
|
+
|
135
|
+
var _useState5 = (0, _react.useState)(0),
|
136
|
+
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
137
|
+
position = _useState6[0],
|
138
|
+
setPosition = _useState6[1]; // Keep a record of the previous value of depth.
|
120
139
|
|
121
140
|
|
122
141
|
var prevDepth = (0, _react.useRef)();
|
@@ -202,7 +221,9 @@ var TearsheetShell = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref)
|
|
202
221
|
var includeHeader = label || title || description || headerActions || navigation || effectiveHasCloseIcon; // Include an ActionSet if and only if one or more actions is given.
|
203
222
|
|
204
223
|
var includeActions = actions && (actions === null || actions === void 0 ? void 0 : actions.length) > 0;
|
205
|
-
return
|
224
|
+
return (portalTarget ? _reactDom.createPortal : function (children) {
|
225
|
+
return children;
|
226
|
+
})( /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.ComposedModal, (0, _extends2.default)({}, rest, {
|
206
227
|
"aria-label": title,
|
207
228
|
className: (0, _classnames.default)(bc, className, (_cx = {}, (0, _defineProperty2.default)(_cx, "".concat(bc, "--stacked-").concat(position, "-of-").concat(depth), // Don't apply this on the initial open of a single tearsheet.
|
208
229
|
depth > 1 || depth === 1 && prevDepth.current > 1), (0, _defineProperty2.default)(_cx, "".concat(bc, "--wide"), size === 'wide'), (0, _defineProperty2.default)(_cx, "".concat(bc, "--narrow"), size !== 'wide'), _cx)),
|
@@ -263,7 +284,7 @@ var TearsheetShell = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref)
|
|
263
284
|
})))), /*#__PURE__*/_react.default.createElement("div", {
|
264
285
|
className: "".concat(bc, "__resize-detector"),
|
265
286
|
ref: resizer
|
266
|
-
}));
|
287
|
+
})), portalTarget);
|
267
288
|
} else {
|
268
289
|
_pconsole.default.warn('Tearsheet not rendered: maximum stacking depth exceeded.');
|
269
290
|
|
@@ -407,6 +428,11 @@ TearsheetShell.propTypes = _objectSpread({
|
|
407
428
|
*/
|
408
429
|
open: _propTypes.default.bool,
|
409
430
|
|
431
|
+
/**
|
432
|
+
* portal target for the all tags modal
|
433
|
+
*/
|
434
|
+
portalTarget: _propTypes.default.node,
|
435
|
+
|
410
436
|
/**
|
411
437
|
* Specifies the width of the tearsheet, 'narrow' or 'wide'.
|
412
438
|
*/
|
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.
|
4
|
+
"version": "1.15.0",
|
5
5
|
"license": "Apache-2.0",
|
6
6
|
"main": "lib/index.js",
|
7
7
|
"module": "es/index.js",
|
@@ -47,29 +47,29 @@
|
|
47
47
|
"postinstall": "carbon-telemetry collect --install",
|
48
48
|
"test": "jest --colors",
|
49
49
|
"//upgrade-dependencies": "# don't upgrade carbon (done globally), react/react-dom (explicit range peer dependency), chalk (issue #1596)",
|
50
|
-
"upgrade-dependencies": "npm-check-updates -u --dep dev,peer,prod --color --reject '/(carbon|^react$|^react-dom$|^chalk
|
50
|
+
"upgrade-dependencies": "npm-check-updates -u --dep dev,peer,prod --color --reject '/(carbon|^react$|^react-dom$|^chalk$|^react-dnd|^namor)/'"
|
51
51
|
},
|
52
52
|
"devDependencies": {
|
53
53
|
"@babel/cli": "^7.17.6",
|
54
|
-
"@babel/core": "^7.17.
|
55
|
-
"babel-preset-ibm-cloud-cognitive": "^0.14.
|
54
|
+
"@babel/core": "^7.17.9",
|
55
|
+
"babel-preset-ibm-cloud-cognitive": "^0.14.13",
|
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.0.1",
|
61
|
-
"glob": "^
|
61
|
+
"glob": "^8.0.1",
|
62
62
|
"jest": "^27.5.1",
|
63
|
-
"jest-config-ibm-cloud-cognitive": "^0.23.
|
63
|
+
"jest-config-ibm-cloud-cognitive": "^0.23.15",
|
64
64
|
"namor": "^1.1.2",
|
65
|
-
"npm-check-updates": "^12.5.
|
65
|
+
"npm-check-updates": "^12.5.9",
|
66
66
|
"npm-run-all": "^4.1.5",
|
67
67
|
"rimraf": "^3.0.2",
|
68
|
-
"sass": "^1.
|
69
|
-
"yargs": "^17.4.
|
68
|
+
"sass": "^1.50.0",
|
69
|
+
"yargs": "^17.4.1"
|
70
70
|
},
|
71
71
|
"dependencies": {
|
72
|
-
"@babel/runtime": "^7.17.
|
72
|
+
"@babel/runtime": "^7.17.9",
|
73
73
|
"@carbon/telemetry": "^0.1.0",
|
74
74
|
"immutability-helper": "^3.1.1",
|
75
75
|
"react-dnd": "^15.1.2",
|
@@ -92,5 +92,5 @@
|
|
92
92
|
"react": "^16.8.6 || ^17.0.1",
|
93
93
|
"react-dom": "^16.8.6 || ^17.0.1"
|
94
94
|
},
|
95
|
-
"gitHead": "
|
95
|
+
"gitHead": "202e15e26448cefc31d5ea1796b4d4b8b126a246"
|
96
96
|
}
|
@@ -61,6 +61,10 @@
|
|
61
61
|
bottom: calc(#{$spacing-09} + #{$spacing-08});
|
62
62
|
}
|
63
63
|
|
64
|
+
.#{$block-class} .#{$carbon-prefix}--modal-content--overflow-indicator {
|
65
|
+
background-image: linear-gradient(to bottom, #00000000, $ui-01);
|
66
|
+
}
|
67
|
+
|
64
68
|
.#{$block-class} .#{$block-class}__links-container {
|
65
69
|
margin-top: $spacing-05;
|
66
70
|
}
|
@@ -59,6 +59,10 @@
|
|
59
59
|
color: $text-01;
|
60
60
|
}
|
61
61
|
|
62
|
+
.#{$block-class}__body--td {
|
63
|
+
color: $text-02;
|
64
|
+
}
|
65
|
+
|
62
66
|
[role="'columnheader'"]:last-child,
|
63
67
|
[role="'gridcell'"]:last-child {
|
64
68
|
border-right: 1px solid $text-03;
|
@@ -113,6 +117,7 @@
|
|
113
117
|
padding: 0 calc(#{$spacing-03} + 1px) 0 $spacing-03;
|
114
118
|
margin: 0;
|
115
119
|
background-color: $body-cell-background;
|
120
|
+
color: $text-01;
|
116
121
|
resize: none;
|
117
122
|
&.#{$carbon-prefix}--text-area {
|
118
123
|
min-width: initial;
|
@@ -168,6 +173,19 @@
|
|
168
173
|
outline: 0;
|
169
174
|
}
|
170
175
|
}
|
176
|
+
.#{$block-class}__active-cell--highlight.#{$block-class}__active-cell--with-selection {
|
177
|
+
&::before {
|
178
|
+
position: absolute;
|
179
|
+
top: 0;
|
180
|
+
left: 0;
|
181
|
+
display: block;
|
182
|
+
width: 100%;
|
183
|
+
height: 100%;
|
184
|
+
background-color: $interactive-01;
|
185
|
+
content: '';
|
186
|
+
opacity: 0.25;
|
187
|
+
}
|
188
|
+
}
|
171
189
|
.#{$block-class}__selection-area--element {
|
172
190
|
position: absolute;
|
173
191
|
z-index: 2;
|
@@ -183,13 +201,16 @@
|
|
183
201
|
height: 100%;
|
184
202
|
background-color: $interactive-01;
|
185
203
|
content: '';
|
186
|
-
opacity: 0.
|
204
|
+
opacity: 0.2;
|
187
205
|
}
|
188
206
|
}
|
189
207
|
.#{$block-class}__th--active-header,
|
190
208
|
.#{$block-class}__td-th--active-header.#{$block-class}__td {
|
191
209
|
background-color: $hover-selected-ui;
|
192
210
|
}
|
211
|
+
.#{$block-class}__list--container {
|
212
|
+
overscroll-behavior: none;
|
213
|
+
}
|
193
214
|
}
|
194
215
|
}
|
195
216
|
|