@carbon/ibm-products 1.9.0 → 1.10.0
Sign up to get free protection for your applications and to get access to all the features.
- package/css/index-full-carbon.css +123 -5628
- package/css/index-full-carbon.css.map +1 -1
- package/css/index-full-carbon.min.css +4 -4
- package/css/index-full-carbon.min.css.map +1 -1
- package/css/index-without-carbon-released-only.css +45 -3424
- package/css/index-without-carbon-released-only.css.map +1 -1
- package/css/index-without-carbon-released-only.min.css +3 -3
- package/css/index-without-carbon-released-only.min.css.map +1 -1
- package/css/index-without-carbon.css +91 -3894
- package/css/index-without-carbon.css.map +1 -1
- package/css/index-without-carbon.min.css +4 -4
- package/css/index-without-carbon.min.css.map +1 -1
- package/css/index.css +91 -3895
- package/css/index.css.map +1 -1
- package/css/index.min.css +4 -4
- package/css/index.min.css.map +1 -1
- package/es/components/AddSelect/AddSelect.js +11 -6
- package/es/components/AddSelect/AddSelectColumn.js +44 -7
- package/es/components/ButtonMenu/ButtonMenu.js +1 -1
- package/es/components/DataSpreadsheet/DataSpreadsheet.js +316 -133
- package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +113 -69
- package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +22 -5
- package/es/components/DataSpreadsheet/checkActiveHeaderCell.js +34 -0
- package/es/components/DataSpreadsheet/createActiveCellFn.js +3 -1
- package/es/components/InlineEdit/InlineEdit.js +11 -21
- package/es/components/OptionsTile/OptionsTile.js +11 -1
- package/es/components/PageHeader/PageHeader.js +48 -40
- package/es/components/PageHeader/PageHeaderUtils.js +3 -7
- package/es/components/TagSet/TagSet.js +12 -3
- package/es/components/UserProfileImage/UserProfileImage.js +2 -1
- package/lib/components/AddSelect/AddSelect.js +11 -6
- package/lib/components/AddSelect/AddSelectColumn.js +55 -13
- package/lib/components/ButtonMenu/ButtonMenu.js +1 -1
- package/lib/components/DataSpreadsheet/DataSpreadsheet.js +317 -134
- package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +112 -70
- package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +24 -5
- package/lib/components/DataSpreadsheet/checkActiveHeaderCell.js +45 -0
- package/lib/components/DataSpreadsheet/createActiveCellFn.js +3 -1
- package/lib/components/InlineEdit/InlineEdit.js +10 -20
- package/lib/components/OptionsTile/OptionsTile.js +11 -1
- package/lib/components/PageHeader/PageHeader.js +47 -40
- package/lib/components/PageHeader/PageHeaderUtils.js +3 -7
- package/lib/components/TagSet/TagSet.js +13 -3
- package/lib/components/UserProfileImage/UserProfileImage.js +2 -1
- package/package.json +14 -14
- package/scss/components/AddSelect/_add-select.scss +27 -14
- package/scss/components/CreateInfluencer/_create-influencer.scss +2 -0
- package/scss/components/CreateModal/_create-modal.scss +1 -0
- package/scss/components/CreateTearsheet/_create-tearsheet.scss +1 -0
- package/scss/components/CreateTearsheetNarrow/_create-tearsheet-narrow.scss +1 -0
- package/scss/components/DataSpreadsheet/_data-spreadsheet.scss +12 -7
- package/scss/components/InlineEdit/_inline-edit.scss +20 -11
- package/scss/components/InlineEdit/_storybook-styles.scss +1 -0
- package/scss/components/LoadingBar/_loading-bar.scss +13 -0
- package/scss/components/NotificationsPanel/_notifications-panel.scss +3 -0
- package/scss/components/PageHeader/_page-header.scss +2 -0
- package/scss/components/SidePanel/_side-panel.scss +11 -4
- package/scss/components/StatusIcon/_status-icon.scss +1 -0
- package/scss/components/UserProfileImage/_user-profile-image.scss +9 -0
- package/scss/components/WebTerminal/_web-terminal.scss +2 -0
@@ -51,7 +51,7 @@ var _PageHeaderUtils = require("./PageHeaderUtils");
|
|
51
51
|
|
52
52
|
var _PageHeaderTitle = require("./PageHeaderTitle");
|
53
53
|
|
54
|
-
var _excluded = ["actionBarItems", "actionBarMenuOptionsClass", "actionBarOverflowAriaLabel", "allTagsModalSearchLabel", "allTagsModalSearchPlaceholderText", "allTagsModalTitle", "hasBackgroundAlways", "breadcrumbOverflowAriaLabel", "breadcrumbs", "children", "className", "collapseHeader", "collapseHeaderIconDescription", "collapseTitle", "disableBreadcrumbScroll", "expandHeaderIconDescription", "fullWidthGrid", "hasCollapseHeaderToggle", "narrowGrid", "navigation", "pageActions", "pageActionsOverflowLabel", "pageActionsMenuOptionsClass", "showAllTagsLabel", "subtitle", "tags", "title", "withoutBackground"];
|
54
|
+
var _excluded = ["actionBarItems", "actionBarMenuOptionsClass", "actionBarOverflowAriaLabel", "allTagsModalSearchLabel", "allTagsModalSearchPlaceholderText", "allTagsModalTitle", "hasBackgroundAlways", "breadcrumbOverflowAriaLabel", "breadcrumbs", "children", "className", "collapseHeader", "collapseHeaderIconDescription", "collapseTitle", "disableBreadcrumbScroll", "enableBreadcrumbScroll", "expandHeaderIconDescription", "fullWidthGrid", "hasCollapseHeaderToggle", "narrowGrid", "navigation", "pageActions", "pageActionsOverflowLabel", "pageActionsMenuOptionsClass", "showAllTagsLabel", "subtitle", "tags", "title", "withoutBackground"];
|
55
55
|
|
56
56
|
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); }
|
57
57
|
|
@@ -69,7 +69,7 @@ var defaults = {
|
|
69
69
|
};
|
70
70
|
|
71
71
|
var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
72
|
-
var _withoutBackground,
|
72
|
+
var _withoutBackground, _ref2, _ref7, _cx2, _ref8, _cx4, _cx7;
|
73
73
|
|
74
74
|
var actionBarItems = _ref.actionBarItems,
|
75
75
|
actionBarMenuOptionsClass = _ref.actionBarMenuOptionsClass,
|
@@ -85,7 +85,8 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
85
85
|
collapseHeader = _ref.collapseHeader,
|
86
86
|
collapseHeaderIconDescription = _ref.collapseHeaderIconDescription,
|
87
87
|
collapseTitle = _ref.collapseTitle,
|
88
|
-
|
88
|
+
deprecated_disableBreadcrumbScroll = _ref.disableBreadcrumbScroll,
|
89
|
+
in_enableBreadcrumbScroll = _ref.enableBreadcrumbScroll,
|
89
90
|
expandHeaderIconDescription = _ref.expandHeaderIconDescription,
|
90
91
|
_ref$fullWidthGrid = _ref.fullWidthGrid,
|
91
92
|
fullWidthGrid = _ref$fullWidthGrid === void 0 ? defaults.fullWidthGrid : _ref$fullWidthGrid,
|
@@ -123,10 +124,11 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
123
124
|
var offsetTopMeasuringRef = (0, _react.useRef)(null); // state based on props only
|
124
125
|
|
125
126
|
var hasActionBar = actionBarItems && actionBarItems.length > 0;
|
126
|
-
var hasBreadcrumbRow = !!breadcrumbs || !!actionBarItems;
|
127
|
+
var hasBreadcrumbRow = !!breadcrumbs || !!actionBarItems;
|
128
|
+
var enableBreadcrumbScroll = (_ref2 = in_enableBreadcrumbScroll !== null && in_enableBreadcrumbScroll !== void 0 ? in_enableBreadcrumbScroll : !deprecated_disableBreadcrumbScroll) !== null && _ref2 !== void 0 ? _ref2 : false; // utility functions
|
127
129
|
|
128
130
|
var checkUpdateVerticalSpace = function checkUpdateVerticalSpace() {
|
129
|
-
return (0, _PageHeaderUtils.utilCheckUpdateVerticalSpace)(headerRef, offsetTopMeasuringRef, navigation,
|
131
|
+
return (0, _PageHeaderUtils.utilCheckUpdateVerticalSpace)(headerRef, offsetTopMeasuringRef, navigation, enableBreadcrumbScroll, hasActionBar, widthIsNarrow, setMetrics);
|
130
132
|
}; // NOTE: The buffer is used to add space between the bottom of the header and the last content
|
131
133
|
// Not pre-collapsed and (subtitle or children)
|
132
134
|
|
@@ -189,9 +191,9 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
189
191
|
setWidthIsNarrow = _useState26[1]; // handlers
|
190
192
|
|
191
193
|
|
192
|
-
var handleActionBarWidthChange = function handleActionBarWidthChange(
|
193
|
-
var minWidth =
|
194
|
-
maxWidth =
|
194
|
+
var handleActionBarWidthChange = function handleActionBarWidthChange(_ref3) {
|
195
|
+
var minWidth = _ref3.minWidth,
|
196
|
+
maxWidth = _ref3.maxWidth;
|
195
197
|
|
196
198
|
/* don't know how to test resize */
|
197
199
|
|
@@ -204,9 +206,9 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
204
206
|
setActionBarMinWidth(minWidth);
|
205
207
|
};
|
206
208
|
|
207
|
-
var handlePageActionWidthChange = function handlePageActionWidthChange(
|
208
|
-
var minWidth =
|
209
|
-
maxWidth =
|
209
|
+
var handlePageActionWidthChange = function handlePageActionWidthChange(_ref4) {
|
210
|
+
var minWidth = _ref4.minWidth,
|
211
|
+
maxWidth = _ref4.maxWidth;
|
210
212
|
|
211
213
|
/* don't know how to test resize */
|
212
214
|
|
@@ -302,10 +304,10 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
302
304
|
return _objectSpread(_objectSpread({}, prev), {}, (_objectSpread3 = {}, (0, _defineProperty2.default)(_objectSpread3, "--".concat(_PageHeaderUtils.blockClass, "--height-px"), "".concat(metrics.headerHeight, "px")), (0, _defineProperty2.default)(_objectSpread3, "--".concat(_PageHeaderUtils.blockClass, "--width-px"), "".concat(metrics.headerWidth, "px")), (0, _defineProperty2.default)(_objectSpread3, "--".concat(_PageHeaderUtils.blockClass, "--header-top"), "".concat(metrics.headerTopValue + metrics.headerOffset, "px")), (0, _defineProperty2.default)(_objectSpread3, "--".concat(_PageHeaderUtils.blockClass, "--breadcrumb-title-visibility"), scrollYValue > 0 ? 'visible' : 'hidden'), (0, _defineProperty2.default)(_objectSpread3, "--".concat(_PageHeaderUtils.blockClass, "--scroll"), "".concat(scrollYValue)), (0, _defineProperty2.default)(_objectSpread3, "--".concat(_PageHeaderUtils.blockClass, "--breadcrumb-title-top"), "".concat(Math.max(0, metrics.breadcrumbTitleHeight + metrics.titleRowSpaceAbove - scrollYValue), "px")), (0, _defineProperty2.default)(_objectSpread3, "--".concat(_PageHeaderUtils.blockClass, "--breadcrumb-title-opacity"), "".concat(Math.min(1, Math.max(0, (scrollYValue - (metrics.titleRowSpaceAbove || 0)) / (metrics.breadcrumbTitleHeight || 1) // don't want to divide by zero
|
303
305
|
)))), (0, _defineProperty2.default)(_objectSpread3, "--".concat(_PageHeaderUtils.blockClass, "--breadcrumb-row-width-px"), "".concat(metrics.breadcrumbRowWidth, "px")), _objectSpread3));
|
304
306
|
});
|
305
|
-
}, [headerRef,
|
307
|
+
}, [headerRef, enableBreadcrumbScroll, metrics, metrics.breadcrumbRowHeight, metrics.breadcrumbRowSpaceBelow, metrics.breadcrumbTitleHeight, metrics.breadcrumbRowWidth, metrics.headerHeight, metrics.headerWidth, metrics.headerOffset, metrics.headerTopValue, metrics.navigationRowHeight, navigation, scrollYValue, tags]);
|
306
308
|
(0, _hooks.useNearestScroll)(headerRef, // on scroll or various layout changes check updates if needed
|
307
|
-
function (
|
308
|
-
var current =
|
309
|
+
function (_ref5) {
|
310
|
+
var current = _ref5.current;
|
309
311
|
setPageHeaderStyles(function (prev) {
|
310
312
|
return _objectSpread(_objectSpread({}, prev), {}, (0, _defineProperty2.default)({}, "--".concat(_PageHeaderUtils.blockClass, "--breadcrumb-top"), "".concat(metrics.headerOffset, "px")));
|
311
313
|
});
|
@@ -320,13 +322,13 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
320
322
|
document.documentElement.style.setProperty("--".concat(_PageHeaderUtils.blockClass, "--tagset-tooltip-position"), fullyCollapsed ? 'fixed' : 'absolute');
|
321
323
|
document.documentElement.style.setProperty("--".concat(_PageHeaderUtils.blockClass, "--tagset-tooltip-offset"), "".concat(tagsetTooltipOffset, "px"));
|
322
324
|
setScrollYValue(current.scrollY);
|
323
|
-
}, [metrics.headerHeight, metrics.headerTopValue, metrics.headerOffset,
|
324
|
-
(0, _hooks.useWindowResize)(function (
|
325
|
-
var current =
|
325
|
+
}, [metrics.headerHeight, metrics.headerTopValue, metrics.headerOffset, enableBreadcrumbScroll]);
|
326
|
+
(0, _hooks.useWindowResize)(function (_ref6) {
|
327
|
+
var current = _ref6.current;
|
326
328
|
// on window resize and other updates some values may have changed
|
327
329
|
checkUpdateVerticalSpace();
|
328
|
-
setWidthIsNarrow(current.innerWidth <
|
329
|
-
}, [actionBarItems, children, breadcrumbs,
|
330
|
+
setWidthIsNarrow(current.innerWidth < _layout.breakpoints.md.width); // small (below medium) media query
|
331
|
+
}, [actionBarItems, children, breadcrumbs, enableBreadcrumbScroll, navigation, pageActions, subtitle, tags, title]);
|
330
332
|
(0, _react.useEffect)(function () {
|
331
333
|
checkUpdateVerticalSpace(); // eslint-disable-next-line react-hooks/exhaustive-deps
|
332
334
|
}, [fullWidthGrid, narrowGrid]);
|
@@ -364,7 +366,7 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
364
366
|
|
365
367
|
var nextToTabsCheck = function nextToTabsCheck() {
|
366
368
|
/* istanbul ignore next */
|
367
|
-
return
|
369
|
+
return enableBreadcrumbScroll && !actionBarItems && scrollYValue + metrics.headerTopValue >= 0;
|
368
370
|
};
|
369
371
|
|
370
372
|
(0, _react.useEffect)(function () {
|
@@ -388,7 +390,7 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
388
390
|
className: "".concat(_PageHeaderUtils.blockClass, "--offset-top-measuring-element"),
|
389
391
|
ref: offsetTopMeasuringRef
|
390
392
|
}), /*#__PURE__*/_react.default.createElement("section", (0, _extends2.default)({}, rest, {
|
391
|
-
className: (0, _classnames.default)([_PageHeaderUtils.blockClass, "".concat(_PageHeaderUtils.blockClass, "--no-margins-below-row"), className, (
|
393
|
+
className: (0, _classnames.default)([_PageHeaderUtils.blockClass, "".concat(_PageHeaderUtils.blockClass, "--no-margins-below-row"), className, (_ref7 = {}, (0, _defineProperty2.default)(_ref7, "".concat(_PageHeaderUtils.blockClass, "--has-navigation"), navigation || tags), (0, _defineProperty2.default)(_ref7, "".concat(_PageHeaderUtils.blockClass, "--has-navigation-tags-only"), !navigation && tags), _ref7)]),
|
392
394
|
style: pageHeaderStyles,
|
393
395
|
ref: headerRef
|
394
396
|
}, (0, _devtools.getDevtoolsProps)(componentName)), /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Grid, {
|
@@ -410,7 +412,7 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
410
412
|
breadcrumbs: breadcrumbs && breadcrumbItemForTitle ? breadcrumbs.concat(breadcrumbItemForTitle) : breadcrumbItemForTitle ? [breadcrumbItemForTitle] : breadcrumbs // breadcrumbs may be null or undefined
|
411
413
|
|
412
414
|
}) : null), /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Column, {
|
413
|
-
className: (0, _classnames.default)(["".concat(_PageHeaderUtils.blockClass, "__action-bar-column ").concat(_PageHeaderUtils.blockClass, "__action-bar-column--background"), (
|
415
|
+
className: (0, _classnames.default)(["".concat(_PageHeaderUtils.blockClass, "__action-bar-column ").concat(_PageHeaderUtils.blockClass, "__action-bar-column--background"), (_ref8 = {}, (0, _defineProperty2.default)(_ref8, "".concat(_PageHeaderUtils.blockClass, "__action-bar-column--has-page-actions"), pageActions), (0, _defineProperty2.default)(_ref8, "".concat(_PageHeaderUtils.blockClass, "__action-bar-column--influenced-by-collapse-button"), spaceForCollapseButton), _ref8)])
|
414
416
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
415
417
|
className: "".concat(_PageHeaderUtils.blockClass, "__action-bar-column-content"),
|
416
418
|
ref: sizingContainerRef
|
@@ -455,7 +457,7 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
455
457
|
showAllTagsLabel: showAllTagsLabel,
|
456
458
|
tags: tags,
|
457
459
|
overflowClassName: "".concat(_PageHeaderUtils.blockClass, "__navigation-tags-overflow")
|
458
|
-
}))) : null), // this navigation pushes the breadcrumb off or settles underneath it depending on
|
460
|
+
}))) : null), // this navigation pushes the breadcrumb off or settles underneath it depending on enableBreadcrumbScroll
|
459
461
|
navigation ? /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Row, {
|
460
462
|
className: (0, _classnames.default)("".concat(_PageHeaderUtils.blockClass, "__navigation-row"), (_cx7 = {}, (0, _defineProperty2.default)(_cx7, "".concat(_PageHeaderUtils.blockClass, "__navigation-row--spacing-above-06"), !!navigation), (0, _defineProperty2.default)(_cx7, "".concat(_PageHeaderUtils.blockClass, "__navigation-row--has-tags"), tags), _cx7))
|
461
463
|
}, /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Column, {
|
@@ -529,6 +531,11 @@ var TYPES = {
|
|
529
531
|
};
|
530
532
|
var tagTypes = Object.keys(TYPES);
|
531
533
|
var deprecatedProps = {
|
534
|
+
/**
|
535
|
+
* **Deprecated** see property `enableBreadcrumbScroll`
|
536
|
+
*/
|
537
|
+
disableBreadcrumbScroll: (0, _propsHelper.deprecateProp)(_propTypes.default.bool, 'Property replaced by `enableBreadcrumbScroll`'),
|
538
|
+
|
532
539
|
/**
|
533
540
|
* **Deprecated** see property `withoutBackground`
|
534
541
|
*/
|
@@ -558,8 +565,8 @@ PageHeader.propTypes = _objectSpread({
|
|
558
565
|
*
|
559
566
|
* NOTE: This prop is required if actionBarItems are supplied
|
560
567
|
*/
|
561
|
-
actionBarOverflowAriaLabel: _propTypes.default.string.isRequired.if(function (
|
562
|
-
var actionBarItems =
|
568
|
+
actionBarOverflowAriaLabel: _propTypes.default.string.isRequired.if(function (_ref10) {
|
569
|
+
var actionBarItems = _ref10.actionBarItems;
|
563
570
|
return actionBarItems && actionBarItems.length > 0;
|
564
571
|
}),
|
565
572
|
|
@@ -594,8 +601,8 @@ PageHeader.propTypes = _objectSpread({
|
|
594
601
|
* If the user supplies breadcrumbs then this property is required.
|
595
602
|
* It is used in an overflow menu when there is insufficient space to display all breadcrumbs inline.
|
596
603
|
*/
|
597
|
-
breadcrumbOverflowAriaLabel: _propTypes.default.string.isRequired.if(function (
|
598
|
-
var breadcrumbs =
|
604
|
+
breadcrumbOverflowAriaLabel: _propTypes.default.string.isRequired.if(function (_ref11) {
|
605
|
+
var breadcrumbs = _ref11.breadcrumbs;
|
599
606
|
return breadcrumbs && breadcrumbs.length > 0;
|
600
607
|
}),
|
601
608
|
|
@@ -634,8 +641,8 @@ PageHeader.propTypes = _objectSpread({
|
|
634
641
|
/**
|
635
642
|
* A text version of the `label` for display, required if `label` is not a string.
|
636
643
|
*/
|
637
|
-
title: _propTypes.default.string.isRequired.if(function (
|
638
|
-
var label =
|
644
|
+
title: _propTypes.default.string.isRequired.if(function (_ref12) {
|
645
|
+
var label = _ref12.label;
|
639
646
|
return typeof label !== 'string';
|
640
647
|
})
|
641
648
|
})),
|
@@ -665,9 +672,9 @@ PageHeader.propTypes = _objectSpread({
|
|
665
672
|
* If `hasCollapseHeaderToggle` is set and `withoutBackground` is unset/falsy then assistive text is
|
666
673
|
* required for both the expend and collapse states of the button component used.
|
667
674
|
*/
|
668
|
-
collapseHeaderIconDescription: _propTypes.default.string.isRequired.if(function (
|
669
|
-
var withoutBackground =
|
670
|
-
hasCollapseHeaderToggle =
|
675
|
+
collapseHeaderIconDescription: _propTypes.default.string.isRequired.if(function (_ref13) {
|
676
|
+
var withoutBackground = _ref13.withoutBackground,
|
677
|
+
hasCollapseHeaderToggle = _ref13.hasCollapseHeaderToggle;
|
671
678
|
return !withoutBackground && hasCollapseHeaderToggle;
|
672
679
|
}),
|
673
680
|
|
@@ -678,18 +685,18 @@ PageHeader.propTypes = _objectSpread({
|
|
678
685
|
collapseTitle: _propTypes.default.bool,
|
679
686
|
|
680
687
|
/**
|
681
|
-
* Standard
|
682
|
-
*
|
688
|
+
* Standard keeps the breadcrumb on the page. This option allows the breadcrumb
|
689
|
+
* to scroll off
|
683
690
|
*/
|
684
|
-
|
691
|
+
enableBreadcrumbScroll: _propTypes.default.bool,
|
685
692
|
|
686
693
|
/**
|
687
694
|
* If `hasCollapseHeaderToggle` is set and `withoutBackground` is unset/falsy then assistive text is
|
688
695
|
* required for both the expend and collapse states of the button component used.
|
689
696
|
*/
|
690
|
-
expandHeaderIconDescription: _propTypes.default.string.isRequired.if(function (
|
691
|
-
var withoutBackground =
|
692
|
-
hasCollapseHeaderToggle =
|
697
|
+
expandHeaderIconDescription: _propTypes.default.string.isRequired.if(function (_ref14) {
|
698
|
+
var withoutBackground = _ref14.withoutBackground,
|
699
|
+
hasCollapseHeaderToggle = _ref14.hasCollapseHeaderToggle;
|
693
700
|
return !withoutBackground && hasCollapseHeaderToggle;
|
694
701
|
}),
|
695
702
|
|
@@ -760,8 +767,8 @@ PageHeader.propTypes = _objectSpread({
|
|
760
767
|
*
|
761
768
|
* NOTE: This prop is required if pageActions are supplied
|
762
769
|
*/
|
763
|
-
pageActionsOverflowLabel: _propTypes.default.node.isRequired.if(function (
|
764
|
-
var pageActions =
|
770
|
+
pageActionsOverflowLabel: _propTypes.default.node.isRequired.if(function (_ref15) {
|
771
|
+
var pageActions = _ref15.pageActions;
|
765
772
|
return pageActions && pageActions.length > 0 && !pageActions.content;
|
766
773
|
}),
|
767
774
|
|
@@ -29,7 +29,7 @@ var blockClass = "".concat(_settings.pkg.prefix, "--page-header");
|
|
29
29
|
* @param {{}} headerRef
|
30
30
|
* @param {{}} offsetTopMeasuringRef
|
31
31
|
* @param {{}} navigation
|
32
|
-
* @param {boolean}
|
32
|
+
* @param {boolean} enableBreadcrumbScroll
|
33
33
|
* @param {boolean} hasActionBar
|
34
34
|
* @param {boolean} widthIsNarrow
|
35
35
|
* @param {()} setMetrics
|
@@ -37,7 +37,7 @@ var blockClass = "".concat(_settings.pkg.prefix, "--page-header");
|
|
37
37
|
|
38
38
|
exports.blockClass = blockClass;
|
39
39
|
|
40
|
-
var utilCheckUpdateVerticalSpace = function utilCheckUpdateVerticalSpace(headerRef, offsetTopMeasuringRef, navigation,
|
40
|
+
var utilCheckUpdateVerticalSpace = function utilCheckUpdateVerticalSpace(headerRef, offsetTopMeasuringRef, navigation, enableBreadcrumbScroll, hasActionBar, widthIsNarrow, setMetrics) {
|
41
41
|
var dynamicRefs = {};
|
42
42
|
|
43
43
|
var getDynamicRef = function getDynamicRef(selector) {
|
@@ -122,13 +122,9 @@ var utilCheckUpdateVerticalSpace = function utilCheckUpdateVerticalSpace(headerR
|
|
122
122
|
update.headerTopValue += 8;
|
123
123
|
}
|
124
124
|
|
125
|
-
if (
|
125
|
+
if (!enableBreadcrumbScroll || !navigation) {
|
126
126
|
// adjust sticky top if no navigation or breadcrumb is to stay on screen
|
127
127
|
update.headerTopValue += update.breadcrumbRowHeight;
|
128
|
-
} else {
|
129
|
-
if (navigation && !widthIsNarrow) {
|
130
|
-
update.headerTopValue -= 8;
|
131
|
-
}
|
132
128
|
}
|
133
129
|
|
134
130
|
if (window) {
|
@@ -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 _propTypes = _interopRequireDefault(require("prop-types"));
|
23
25
|
|
24
26
|
var _classnames = _interopRequireDefault(require("classnames"));
|
@@ -37,7 +39,7 @@ var _propsHelper = require("../../global/js/utils/props-helper");
|
|
37
39
|
|
38
40
|
var _settings = require("../../settings");
|
39
41
|
|
40
|
-
var _excluded = ["align", "className", "maxVisible", "overflowAlign", "overflowClassName", "overflowDirection", "allTagsModalTitle", "allTagsModalSearchLabel", "allTagsModalSearchPlaceholderText", "showAllTagsLabel", "tags"],
|
42
|
+
var _excluded = ["align", "allTagsModalTarget", "className", "maxVisible", "overflowAlign", "overflowClassName", "overflowDirection", "allTagsModalTitle", "allTagsModalSearchLabel", "allTagsModalSearchPlaceholderText", "showAllTagsLabel", "tags"],
|
41
43
|
_excluded2 = ["label", "id"],
|
42
44
|
_excluded3 = ["label"];
|
43
45
|
|
@@ -55,6 +57,7 @@ var allTagsModalSearchThreshold = 10; // Default values for props
|
|
55
57
|
|
56
58
|
var defaults = {
|
57
59
|
align: 'start',
|
60
|
+
allTagsModalTarget: document.body,
|
58
61
|
overflowAlign: 'center',
|
59
62
|
overflowDirection: 'bottom'
|
60
63
|
};
|
@@ -62,6 +65,8 @@ var defaults = {
|
|
62
65
|
var TagSet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
63
66
|
var _ref$align = _ref.align,
|
64
67
|
align = _ref$align === void 0 ? defaults.align : _ref$align,
|
68
|
+
_ref$allTagsModalTarg = _ref.allTagsModalTarget,
|
69
|
+
allTagsModalTarget = _ref$allTagsModalTarg === void 0 ? defaults.allTagsModalTarget : _ref$allTagsModalTarg,
|
65
70
|
className = _ref.className,
|
66
71
|
maxVisible = _ref.maxVisible,
|
67
72
|
_ref$overflowAlign = _ref.overflowAlign,
|
@@ -246,14 +251,14 @@ var TagSet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
246
251
|
}, hiddenSizingTags), /*#__PURE__*/_react.default.createElement("div", {
|
247
252
|
className: "".concat(blockClass, "__tag-container"),
|
248
253
|
ref: displayedArea
|
249
|
-
}, displayedTags)), tags && displayCount < tags.length ? /*#__PURE__*/_react.default.createElement(_TagSetModal.TagSetModal, {
|
254
|
+
}, displayedTags)), allTagsModalTarget && tags && displayCount < tags.length ? /*#__PURE__*/(0, _reactDom.createPortal)( /*#__PURE__*/_react.default.createElement(_TagSetModal.TagSetModal, {
|
250
255
|
allTags: tags,
|
251
256
|
open: showAllModalOpen,
|
252
257
|
title: allTagsModalTitle,
|
253
258
|
onClose: handleModalClose,
|
254
259
|
searchLabel: allTagsModalSearchLabel,
|
255
260
|
searchPlaceholder: allTagsModalSearchPlaceholderText
|
256
|
-
}) : null);
|
261
|
+
}), allTagsModalTarget) : null);
|
257
262
|
}); // Return a placeholder if not released and not enabled by feature flag
|
258
263
|
|
259
264
|
|
@@ -301,6 +306,11 @@ TagSet.propTypes = {
|
|
301
306
|
*/
|
302
307
|
allTagsModalSearchPlaceholderText: string_required_if_more_than_10_tags,
|
303
308
|
|
309
|
+
/**
|
310
|
+
* portal target for the all tags modal
|
311
|
+
*/
|
312
|
+
allTagsModalTarget: _propTypes.default.node,
|
313
|
+
|
304
314
|
/**
|
305
315
|
* title for the show all modal. **Note: Required if more than 10 tags**
|
306
316
|
*/
|
@@ -86,7 +86,8 @@ var UserProfileImage = /*#__PURE__*/_react.default.forwardRef(function (_ref, re
|
|
86
86
|
};
|
87
87
|
|
88
88
|
return FillItem && (tooltipText ? /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.TooltipIcon, {
|
89
|
-
tooltipText: tooltipText
|
89
|
+
tooltipText: tooltipText,
|
90
|
+
className: "".concat(blockClass, "__tooltip")
|
90
91
|
}, renderUserProfileImage()) : renderUserProfileImage());
|
91
92
|
}); // Return a placeholder if not released and not enabled by feature flag
|
92
93
|
|
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.10.0",
|
5
5
|
"license": "Apache-2.0",
|
6
6
|
"main": "lib/index.js",
|
7
7
|
"module": "es/index.js",
|
@@ -52,7 +52,7 @@
|
|
52
52
|
"devDependencies": {
|
53
53
|
"@babel/cli": "^7.17.6",
|
54
54
|
"@babel/core": "^7.17.5",
|
55
|
-
"babel-preset-ibm-cloud-cognitive": "^0.14.
|
55
|
+
"babel-preset-ibm-cloud-cognitive": "^0.14.10",
|
56
56
|
"chalk": "^4.1.2",
|
57
57
|
"change-case": "^4.1.2",
|
58
58
|
"copyfiles": "^2.4.1",
|
@@ -60,8 +60,8 @@
|
|
60
60
|
"fs-extra": "^10.0.1",
|
61
61
|
"glob": "^7.2.0",
|
62
62
|
"jest": "^27.5.1",
|
63
|
-
"jest-config-ibm-cloud-cognitive": "^0.23.
|
64
|
-
"npm-check-updates": "^12.
|
63
|
+
"jest-config-ibm-cloud-cognitive": "^0.23.11",
|
64
|
+
"npm-check-updates": "^12.5.2",
|
65
65
|
"npm-run-all": "^4.1.5",
|
66
66
|
"rimraf": "^3.0.2",
|
67
67
|
"sass": "^1.49.9",
|
@@ -75,18 +75,18 @@
|
|
75
75
|
"react-window": "^1.8.6"
|
76
76
|
},
|
77
77
|
"peerDependencies": {
|
78
|
-
"@carbon/colors": "^10.
|
79
|
-
"@carbon/icons-react": "^10.
|
80
|
-
"@carbon/import-once": "^10.
|
81
|
-
"@carbon/layout": "^10.
|
82
|
-
"@carbon/motion": "^10.
|
83
|
-
"@carbon/themes": "^10.
|
84
|
-
"@carbon/type": "^10.
|
85
|
-
"carbon-components": "^10.
|
86
|
-
"carbon-components-react": "^7.
|
78
|
+
"@carbon/colors": "^10.37.0",
|
79
|
+
"@carbon/icons-react": "^10.47.0",
|
80
|
+
"@carbon/import-once": "^10.7.0",
|
81
|
+
"@carbon/layout": "^10.37.0",
|
82
|
+
"@carbon/motion": "^10.29.0",
|
83
|
+
"@carbon/themes": "^10.52.0",
|
84
|
+
"@carbon/type": "^10.42.0",
|
85
|
+
"carbon-components": "^10.54.0",
|
86
|
+
"carbon-components-react": "^7.54.2",
|
87
87
|
"carbon-icons": "^7.0.7",
|
88
88
|
"react": "^16.8.6 || ^17.0.1",
|
89
89
|
"react-dom": "^16.8.6 || ^17.0.1"
|
90
90
|
},
|
91
|
-
"gitHead": "
|
91
|
+
"gitHead": "9c24da12c6e7a113e4d6f20bfb5d61a212460c89"
|
92
92
|
}
|
@@ -24,19 +24,11 @@
|
|
24
24
|
padding: $spacing-05;
|
25
25
|
}
|
26
26
|
|
27
|
-
.#{$block-class}__items-label {
|
28
|
-
margin-right: $spacing-03;
|
29
|
-
|
30
|
-
&-container {
|
31
|
-
display: flex;
|
32
|
-
align-items: center;
|
33
|
-
margin-top: $spacing-05;
|
34
|
-
margin-bottom: $spacing-03;
|
35
|
-
}
|
36
|
-
}
|
37
|
-
|
38
27
|
.#{$block-class}__selections {
|
39
|
-
|
28
|
+
&.#{$carbon-prefix}--structured-list {
|
29
|
+
border-top: 1px solid $ui-03;
|
30
|
+
margin-bottom: 0;
|
31
|
+
}
|
40
32
|
|
41
33
|
&-wrapper {
|
42
34
|
display: block;
|
@@ -121,16 +113,32 @@
|
|
121
113
|
.#{$block-class}__columns {
|
122
114
|
display: flex;
|
123
115
|
flex-direction: row;
|
116
|
+
overflow-x: auto;
|
124
117
|
}
|
125
118
|
|
126
119
|
.#{$block-class}__columns .#{$block-class}__selections-cell {
|
127
120
|
// stylelint-disable-next-line
|
128
|
-
padding: 0
|
121
|
+
padding: 0 !important;
|
129
122
|
}
|
130
123
|
|
131
124
|
.#{$block-class}__column {
|
125
|
+
overflow: auto;
|
126
|
+
max-width: 15rem;
|
127
|
+
flex: 1 0 15rem;
|
132
128
|
padding: $spacing-05;
|
133
|
-
border-
|
129
|
+
border-top: 1px solid $ui-03;
|
130
|
+
border-right: 1px solid $ui-03;
|
131
|
+
}
|
132
|
+
|
133
|
+
.#{$block-class}__tag-container {
|
134
|
+
display: flex;
|
135
|
+
align-items: center;
|
136
|
+
margin-top: $spacing-05;
|
137
|
+
margin-bottom: $spacing-03;
|
138
|
+
|
139
|
+
&-label {
|
140
|
+
margin-right: $spacing-03;
|
141
|
+
}
|
134
142
|
}
|
135
143
|
|
136
144
|
// overrides
|
@@ -145,6 +153,11 @@
|
|
145
153
|
color: $text-02;
|
146
154
|
}
|
147
155
|
|
156
|
+
.#{$block-class} .#{$tearsheet-class} .#{$tearsheet-class}__content {
|
157
|
+
display: flex;
|
158
|
+
flex-direction: column;
|
159
|
+
}
|
160
|
+
|
148
161
|
.#{$block-class} .#{$block-class}__items-label {
|
149
162
|
@include carbon--type-style('productive-heading-01');
|
150
163
|
}
|
@@ -19,6 +19,7 @@
|
|
19
19
|
// stylelint-disable-next-line carbon/layout-token-use
|
20
20
|
transform: translateX($influencerAnimationStart);
|
21
21
|
}
|
22
|
+
|
22
23
|
100% {
|
23
24
|
opacity: 1;
|
24
25
|
transform: translateX(0);
|
@@ -29,6 +30,7 @@
|
|
29
30
|
opacity: 1;
|
30
31
|
transform: translateX(0);
|
31
32
|
}
|
33
|
+
|
32
34
|
100% {
|
33
35
|
opacity: 0;
|
34
36
|
// stylelint-disable-next-line carbon/layout-token-use
|
@@ -35,10 +35,6 @@
|
|
35
35
|
position: relative;
|
36
36
|
}
|
37
37
|
|
38
|
-
button.#{$block-class}__td {
|
39
|
-
margin: 0;
|
40
|
-
background-color: transparent;
|
41
|
-
}
|
42
38
|
.#{$block-class}__tr {
|
43
39
|
:last-child {
|
44
40
|
.#{$block-class}__td {
|
@@ -60,22 +56,25 @@
|
|
60
56
|
border-right: 1px solid $text-03;
|
61
57
|
}
|
62
58
|
.#{$block-class}__th,
|
63
|
-
|
59
|
+
.#{$block-class}__td-th.#{$block-class}__td {
|
64
60
|
@include set-header-borders();
|
65
61
|
|
66
62
|
background-color: $ui-01;
|
67
63
|
cursor: pointer;
|
68
64
|
}
|
69
|
-
.#{$block-class}__td-th {
|
65
|
+
.#{$block-class}__td-th.#{$block-class}__td {
|
70
66
|
@include carbon--font-weight('semibold');
|
71
67
|
|
72
68
|
display: flex;
|
73
69
|
align-items: center;
|
74
70
|
justify-content: flex-end;
|
75
71
|
}
|
72
|
+
|
76
73
|
.#{$block-class}__td {
|
77
74
|
@include set-body-borders();
|
78
75
|
|
76
|
+
margin: 0;
|
77
|
+
background-color: transparent;
|
79
78
|
cursor: cell;
|
80
79
|
text-align: left;
|
81
80
|
}
|
@@ -87,9 +86,10 @@
|
|
87
86
|
}
|
88
87
|
.#{$block-class}__active-cell--highlight {
|
89
88
|
position: absolute;
|
90
|
-
z-index:
|
89
|
+
z-index: 3;
|
91
90
|
border: $spacing-01 solid $interactive-01;
|
92
91
|
background-color: transparent;
|
92
|
+
|
93
93
|
&:focus {
|
94
94
|
border: $spacing-01 solid $interactive-01;
|
95
95
|
outline: 0;
|
@@ -100,6 +100,7 @@
|
|
100
100
|
z-index: 2;
|
101
101
|
border: 1px solid $interactive-01;
|
102
102
|
pointer-events: none;
|
103
|
+
|
103
104
|
&::before {
|
104
105
|
position: absolute;
|
105
106
|
top: 0;
|
@@ -112,6 +113,10 @@
|
|
112
113
|
opacity: 0.25;
|
113
114
|
}
|
114
115
|
}
|
116
|
+
.#{$block-class}__th--active-header,
|
117
|
+
.#{$block-class}__td-th--active-header.#{$block-class}__td {
|
118
|
+
background-color: $ui-03;
|
119
|
+
}
|
115
120
|
}
|
116
121
|
}
|
117
122
|
|
@@ -81,7 +81,9 @@
|
|
81
81
|
|
82
82
|
position: relative;
|
83
83
|
display: inline-block;
|
84
|
-
//
|
84
|
+
// A standard input box is based on size (often around 150px)
|
85
|
+
// In our case there are potentially 2 * size buttons which we double
|
86
|
+
min-width: calc(4 * var(--#{$block-class}--size));
|
85
87
|
max-width: 100%;
|
86
88
|
height: var(--#{$block-class}--size);
|
87
89
|
background-color: var(--#{$block-class}--background-color);
|
@@ -119,11 +121,11 @@
|
|
119
121
|
overflow: hidden;
|
120
122
|
// positions text and placeholder including when showing placeholder
|
121
123
|
// NOTE: Using flex does strange things to a caret in content editable
|
122
|
-
|
123
|
-
max-width: calc(100% -
|
124
|
+
width: calc(100% - 2 * var(--#{$block-class}--size) - $spacing-05);
|
125
|
+
max-width: calc(100% - 2 * var(--#{$block-class}--size) - $spacing-05);
|
124
126
|
min-height: var(--#{$block-class}--size);
|
125
127
|
// stylelint-disable-next-line carbon/layout-token-use
|
126
|
-
margin-right: calc(
|
128
|
+
margin-right: calc(2 * var(--#{$block-class}--size));
|
127
129
|
// room for toolbar
|
128
130
|
margin-left: $spacing-05;
|
129
131
|
// stylelint-disable-next-line carbon/type-token-use
|
@@ -134,6 +136,14 @@
|
|
134
136
|
}
|
135
137
|
}
|
136
138
|
|
139
|
+
&.#{$block-class}--invalid .#{$block-class}__input {
|
140
|
+
// add space for validation
|
141
|
+
width: calc(100% - 3 * var(--#{$block-class}--size) - $spacing-05);
|
142
|
+
max-width: calc(100% - 3 * var(--#{$block-class}--size) - $spacing-05);
|
143
|
+
// stylelint-disable-next-line carbon/layout-token-use
|
144
|
+
margin-right: calc(3 * var(--#{$block-class}--size));
|
145
|
+
}
|
146
|
+
|
137
147
|
.#{$block-class}__input::after {
|
138
148
|
position: absolute;
|
139
149
|
top: 0;
|
@@ -198,12 +208,17 @@
|
|
198
208
|
right: 0;
|
199
209
|
display: flex;
|
200
210
|
// width: room for validation, and two buttons
|
201
|
-
width: calc(
|
211
|
+
width: calc(2 * var(--#{$block-class}--size));
|
202
212
|
height: 100%;
|
203
213
|
justify-content: space-between;
|
204
214
|
cursor: text;
|
205
215
|
}
|
206
216
|
|
217
|
+
&.#{$block-class}--invalid .#{$block-class}__after-input-elements {
|
218
|
+
// width: room for validation, and two buttons
|
219
|
+
width: calc(3 * var(--#{$block-class}--size));
|
220
|
+
}
|
221
|
+
|
207
222
|
.#{$block-class}__toolbar--animation {
|
208
223
|
// makes room for the top clip text but hides the side overflow
|
209
224
|
clip-path: --tooltip-top-bottom-safe-clip();
|
@@ -276,9 +291,7 @@
|
|
276
291
|
|
277
292
|
&.#{$block-class}.#{$block-class} .#{$block-class}__edit {
|
278
293
|
@include input-button-defaults($block-class);
|
279
|
-
|
280
294
|
// pointer-events: none;
|
281
|
-
|
282
295
|
&:hover,
|
283
296
|
&:active,
|
284
297
|
&:focus {
|
@@ -309,10 +322,6 @@
|
|
309
322
|
@include input-button-defaults($block-class);
|
310
323
|
}
|
311
324
|
|
312
|
-
&.#{$block-class}--warn .#{$block-class}__validation-icon {
|
313
|
-
color: $support-warning;
|
314
|
-
}
|
315
|
-
|
316
325
|
&.#{$block-class}--invalid .#{$block-class}__validation-icon {
|
317
326
|
color: $support-error;
|
318
327
|
}
|