@carbon/ibm-products 2.1.0 → 2.1.2
Sign up to get free protection for your applications and to get access to all the features.
- package/css/index-full-carbon.css +215 -57
- 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 +58 -10
- package/css/index-without-carbon-released-only.css.map +1 -1
- package/css/index-without-carbon-released-only.min.css +1 -1
- package/css/index-without-carbon-released-only.min.css.map +1 -1
- package/css/index-without-carbon.css +91 -29
- 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 +113 -27
- 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/AboutModal/AboutModal.js +1 -3
- package/es/components/ActionBar/ActionBar.js +2 -6
- package/es/components/AddSelect/AddSelectFormControl.js +6 -6
- package/es/components/AddSelect/AddSelectRow.js +15 -5
- package/es/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +5 -6
- package/es/components/ButtonMenu/ButtonMenu.js +4 -4
- package/es/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +3 -9
- package/es/components/DataSpreadsheet/DataSpreadsheet.js +3 -3
- package/es/components/Datagrid/Datagrid/DatagridContent.js +1 -1
- package/es/components/Datagrid/Datagrid/DatagridVirtualBody.js +1 -3
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/TearsheetWrapper.js +1 -1
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +5 -11
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +17 -17
- package/es/components/Datagrid/useStickyColumn.js +10 -3
- package/es/components/Datagrid/utils/DatagridActions.js +6 -14
- package/es/components/ImportModal/ImportModal.js +13 -6
- package/es/components/NotificationsPanel/preview-components/UnreadNotificationBell.js +2 -17
- package/es/components/PageHeader/PageHeader.js +2 -6
- package/es/components/PageHeader/PageHeaderUtils.js +2 -2
- package/es/components/SidePanel/SidePanel.js +1 -3
- package/es/components/TagSet/TagSet.js +4 -7
- package/es/components/Tearsheet/TearsheetShell.js +4 -5
- package/es/global/js/hooks/useCreateComponentStepChange.js +16 -15
- package/es/global/js/hooks/useResizeObserver.js +14 -28
- package/es/global/js/utils/story-helper.js +1 -1
- package/lib/components/AboutModal/AboutModal.js +1 -3
- package/lib/components/ActionBar/ActionBar.js +2 -6
- package/lib/components/AddSelect/AddSelectFormControl.js +6 -6
- package/lib/components/AddSelect/AddSelectRow.js +15 -5
- package/lib/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +5 -6
- package/lib/components/ButtonMenu/ButtonMenu.js +4 -4
- package/lib/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +3 -9
- package/lib/components/DataSpreadsheet/DataSpreadsheet.js +3 -3
- package/lib/components/Datagrid/Datagrid/DatagridContent.js +1 -1
- package/lib/components/Datagrid/Datagrid/DatagridVirtualBody.js +1 -3
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/TearsheetWrapper.js +1 -1
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +4 -10
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +17 -17
- package/lib/components/Datagrid/useStickyColumn.js +10 -3
- package/lib/components/Datagrid/utils/DatagridActions.js +5 -13
- package/lib/components/ImportModal/ImportModal.js +13 -6
- package/lib/components/NotificationsPanel/preview-components/UnreadNotificationBell.js +2 -17
- package/lib/components/PageHeader/PageHeader.js +2 -6
- package/lib/components/PageHeader/PageHeaderUtils.js +2 -2
- package/lib/components/SidePanel/SidePanel.js +1 -3
- package/lib/components/TagSet/TagSet.js +4 -7
- package/lib/components/Tearsheet/TearsheetShell.js +4 -5
- package/lib/global/js/hooks/useCreateComponentStepChange.js +16 -15
- package/lib/global/js/hooks/useResizeObserver.js +13 -27
- package/lib/global/js/utils/story-helper.js +1 -1
- package/package.json +17 -17
- package/scss/components/AddSelect/_add-select.scss +4 -0
- package/scss/components/BreadcrumbWithOverflow/_breadcrumb-with-overflow.scss +0 -1
- package/scss/components/ButtonMenu/_button-menu.scss +32 -1
- package/scss/components/DataSpreadsheet/_storybook-styles.scss +6 -0
- package/scss/components/Datagrid/_datagrid.scss +4 -2
- package/scss/components/Datagrid/_storybook-styles.scss +15 -1
- package/scss/components/Datagrid/styles/_datagrid.scss +12 -13
- package/scss/components/Datagrid/styles/addons/_FilterFlyout.scss +7 -0
- package/scss/components/Datagrid/styles/addons/_FilterPanel.scss +4 -0
- package/scss/components/HTTPErrors/_storybook-styles.scss +16 -2
- package/scss/components/NotificationsPanel/_storybook-styles.scss +0 -4
- package/scss/components/PageHeader/_page-header.scss +0 -1
- package/scss/components/PageHeader/_storybook-styles.scss +42 -14
- package/scss/components/SidePanel/_side-panel.scss +0 -2
- package/scss/components/Tearsheet/_tearsheet.scss +7 -6
- package/scss/components/WebTerminal/_storybook-styles.scss +16 -1
- package/scss/global/styles/_display-box.scss +1 -0
@@ -167,6 +167,9 @@ var BreadcrumbWithOverflow = function BreadcrumbWithOverflow(_ref) {
|
|
167
167
|
setDisplayedBreadcrumbItems(newDisplayedBreadcrumbItems);
|
168
168
|
}, [breadcrumbs, displayCount]);
|
169
169
|
var checkFullyVisibleBreadcrumbItems = function checkFullyVisibleBreadcrumbItems() {
|
170
|
+
if (!breadcrumbItemWithOverflow.current) {
|
171
|
+
return;
|
172
|
+
}
|
170
173
|
var displayItemIndex = function displayItemIndex(itemCount, index) {
|
171
174
|
// In this data set the overflow measuring item is [0]
|
172
175
|
// so the first displayItem in the list is [1]
|
@@ -257,13 +260,9 @@ var BreadcrumbWithOverflow = function BreadcrumbWithOverflow(_ref) {
|
|
257
260
|
}
|
258
261
|
|
259
262
|
// container resize
|
260
|
-
(0, _useResizeObserver.useResizeObserver)(sizingContainerRef,
|
261
|
-
callback: handleResize
|
262
|
-
});
|
263
|
+
(0, _useResizeObserver.useResizeObserver)(sizingContainerRef, handleResize);
|
263
264
|
// item resize
|
264
|
-
(0, _useResizeObserver.useResizeObserver)(breadcrumbItemWithOverflow,
|
265
|
-
callback: handleResize
|
266
|
-
});
|
265
|
+
(0, _useResizeObserver.useResizeObserver)(breadcrumbItemWithOverflow, handleResize);
|
267
266
|
return /*#__PURE__*/_react.default.createElement("div", {
|
268
267
|
className: (0, _classnames.default)(blockClass, className, (0, _defineProperty2.default)({}, "".concat(blockClass, "__with-items"), displayedBreadcrumbItems.length > 1)),
|
269
268
|
ref: breadcrumbItemWithOverflow
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
});
|
7
7
|
exports.ButtonMenu = void 0;
|
8
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
9
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
9
10
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
10
11
|
var _react = _interopRequireDefault(require("react"));
|
11
12
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
@@ -58,15 +59,14 @@ var ButtonMenu = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
58
59
|
return /*#__PURE__*/_react.default.createElement(_react2.OverflowMenu, (0, _extends2.default)({}, rest, {
|
59
60
|
className: (0, _classnames.default)(blockClass,
|
60
61
|
// Apply the block class to the main HTML element
|
61
|
-
className // Apply any supplied class names to the main HTML element.
|
62
|
-
),
|
63
|
-
|
62
|
+
className, // Apply any supplied class names to the main HTML element.
|
63
|
+
"".concat(carbonPrefix, "--btn--").concat(size), (0, _defineProperty2.default)({}, "".concat(blockClass, "__wrapper--").concat(kind), kind)),
|
64
64
|
"aria-label": menuAriaLabel,
|
65
65
|
menuOptionsClass: (0, _classnames.default)("".concat(blockClass, "__options"), menuOptionsClass),
|
66
66
|
size: size,
|
67
67
|
renderIcon: function renderIcon() {
|
68
68
|
return /*#__PURE__*/_react.default.createElement("div", {
|
69
|
-
className: (0, _classnames.default)(
|
69
|
+
className: (0, _classnames.default)("".concat(blockClass, "__trigger"))
|
70
70
|
}, label, Icon && /*#__PURE__*/_react.default.createElement(Icon, {
|
71
71
|
"aria-hidden": "true",
|
72
72
|
"aria-label": iconDescription,
|
@@ -145,15 +145,9 @@ var ButtonSetWithOverflow = function ButtonSetWithOverflow(_ref) {
|
|
145
145
|
}, (0, _propsHelper.prepareProps)(other, ['iconDescription', 'renderIcon'])));
|
146
146
|
}).reverse());
|
147
147
|
});
|
148
|
-
(0, _useResizeObserver.useResizeObserver)(sizingContainerRefSet,
|
149
|
-
|
150
|
-
|
151
|
-
(0, _useResizeObserver.useResizeObserver)(sizingContainerRefCombo, {
|
152
|
-
callback: checkFullyVisibleItems
|
153
|
-
});
|
154
|
-
(0, _useResizeObserver.useResizeObserver)(spaceAvailableRef, {
|
155
|
-
callback: checkFullyVisibleItems
|
156
|
-
});
|
148
|
+
(0, _useResizeObserver.useResizeObserver)(sizingContainerRefSet, checkFullyVisibleItems);
|
149
|
+
(0, _useResizeObserver.useResizeObserver)(sizingContainerRefCombo, checkFullyVisibleItems);
|
150
|
+
(0, _useResizeObserver.useResizeObserver)(spaceAvailableRef, checkFullyVisibleItems);
|
157
151
|
return /*#__PURE__*/_react.default.createElement("div", {
|
158
152
|
className: (0, _classnames.default)([blockClass, className, (0, _defineProperty2.default)({}, "".concat(blockClass, "--right"), rightAlign)]),
|
159
153
|
ref: spaceAvailableRef
|
@@ -674,9 +674,6 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
674
674
|
defaultColumn: defaultColumn,
|
675
675
|
cellEditorValue: cellEditorValue
|
676
676
|
});
|
677
|
-
var handleActiveCellMouseEnter = (0, _react.useCallback)(function () {
|
678
|
-
handleActiveCellMouseEnterCallback(selectionAreas, clickAndHoldActive);
|
679
|
-
}, [clickAndHoldActive, selectionAreas, handleActiveCellMouseEnterCallback]);
|
680
677
|
|
681
678
|
// Only update if there are cell selection areas
|
682
679
|
// Find point object that matches currentMatcher and remove the second point
|
@@ -709,6 +706,9 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
709
706
|
});
|
710
707
|
}
|
711
708
|
}, [spreadsheetRef, currentMatcher]);
|
709
|
+
var handleActiveCellMouseEnter = (0, _react.useCallback)(function () {
|
710
|
+
handleActiveCellMouseEnterCallback(selectionAreas, clickAndHoldActive);
|
711
|
+
}, [clickAndHoldActive, selectionAreas, handleActiveCellMouseEnterCallback]);
|
712
712
|
return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, rest, getTableProps(), (0, _devtools.getDevtoolsProps)(componentName), {
|
713
713
|
className: (0, _classnames.default)(blockClass, className, "".concat(blockClass, "--interactive-cell-element"), (_cx = {}, (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__container-has-focus"), containerHasFocus), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__").concat(theme), theme === 'dark'), _cx)),
|
714
714
|
ref: spreadsheetRef,
|
@@ -92,7 +92,7 @@ var DatagridContent = function DatagridContent(_ref) {
|
|
92
92
|
return /*#__PURE__*/_react.default.createElement(_react2.Table, (0, _extends2.default)({}, getTableProps(), {
|
93
93
|
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),
|
94
94
|
role: withInlineEdit && 'grid',
|
95
|
-
tabIndex: withInlineEdit
|
95
|
+
tabIndex: withInlineEdit ? 0 : -1,
|
96
96
|
onKeyDown: withInlineEdit ? function (event) {
|
97
97
|
return (0, _handleGridKeyPress.handleGridKeyPress)({
|
98
98
|
event: event,
|
@@ -59,9 +59,7 @@ var DatagridVirtualBody = function DatagridVirtualBody(datagridState) {
|
|
59
59
|
var gridRefElement = gridRef === null || gridRef === void 0 ? void 0 : gridRef.current;
|
60
60
|
gridRefElement.style.width = gridRefElement === null || gridRefElement === void 0 ? void 0 : gridRefElement.clientWidth;
|
61
61
|
};
|
62
|
-
(0, _useResizeObserver.useResizeObserver)(gridRef,
|
63
|
-
callback: handleVirtualGridResize
|
64
|
-
});
|
62
|
+
(0, _useResizeObserver.useResizeObserver)(gridRef, handleVirtualGridResize);
|
65
63
|
var syncScroll = function syncScroll(e) {
|
66
64
|
var virtualBody = e.target;
|
67
65
|
document.querySelector(".".concat(blockClass, "__head-wrap")).scrollLeft = virtualBody.scrollLeft;
|
@@ -29,7 +29,7 @@ var TearsheetWrapper = function TearsheetWrapper(_ref) {
|
|
29
29
|
rest = (0, _objectWithoutProperties2.default)(_instance$customizeCo, _excluded);
|
30
30
|
return /*#__PURE__*/React.createElement(_CustomizeColumnsTearsheet.default, (0, _extends2.default)({}, rest, labels, {
|
31
31
|
isOpen: isTearsheetOpen,
|
32
|
-
isTableSortable: instance === null || instance === void 0 ? void 0 : instance.isTableSortable,
|
32
|
+
isTableSortable: (instance === null || instance === void 0 ? void 0 : instance.isTableSortable) || false,
|
33
33
|
setIsTearsheetOpen: setIsTearsheetOpen,
|
34
34
|
columnDefinitions: instance.allColumns,
|
35
35
|
originalColumnDefinitions: instance.columns,
|
@@ -163,20 +163,14 @@ var FilterFlyout = function FilterFlyout(_ref) {
|
|
163
163
|
}, [reactTableFiltersState, lastAppliedFilters]);
|
164
164
|
return /*#__PURE__*/_react2.default.createElement("div", {
|
165
165
|
className: "".concat(componentClass, "__container")
|
166
|
-
}, /*#__PURE__*/_react2.default.createElement(_react.
|
166
|
+
}, /*#__PURE__*/_react2.default.createElement(_react.IconButton, {
|
167
|
+
label: flyoutIconDescription,
|
167
168
|
kind: "ghost",
|
168
|
-
|
169
|
-
tooltipPosition: "bottom",
|
170
|
-
renderIcon: function renderIcon() {
|
171
|
-
return /*#__PURE__*/_react2.default.createElement(_icons.Filter, {
|
172
|
-
size: 16
|
173
|
-
});
|
174
|
-
},
|
175
|
-
iconDescription: flyoutIconDescription,
|
169
|
+
align: "bottom",
|
176
170
|
onClick: open ? closeFlyout : openFlyout,
|
177
171
|
className: (0, _classnames.default)("".concat(componentClass, "__trigger"), (0, _defineProperty2.default)({}, "".concat(componentClass, "__trigger--open"), open)),
|
178
172
|
disabled: data.length === 0
|
179
|
-
}), /*#__PURE__*/_react2.default.createElement("div", {
|
173
|
+
}, /*#__PURE__*/_react2.default.createElement(_icons.Filter, null)), /*#__PURE__*/_react2.default.createElement("div", {
|
180
174
|
ref: filterFlyoutRef,
|
181
175
|
className: (0, _classnames.default)(componentClass, (_cx2 = {}, (0, _defineProperty2.default)(_cx2, "".concat(componentClass, "--open"), open), (0, _defineProperty2.default)(_cx2, "".concat(componentClass, "--batch"), showActionSet), (0, _defineProperty2.default)(_cx2, "".concat(componentClass, "--instant"), !showActionSet), _cx2))
|
182
176
|
}, /*#__PURE__*/_react2.default.createElement("div", {
|
@@ -80,6 +80,23 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
80
80
|
var dropdownRef = (0, _react.useRef)();
|
81
81
|
var datePickerRef = (0, _react.useRef)();
|
82
82
|
var outerButtonElement = (0, _react.useRef)();
|
83
|
+
var rowSize = instance.rowSize,
|
84
|
+
onDataUpdate = instance.onDataUpdate;
|
85
|
+
|
86
|
+
// Saves the new cell data, onDataUpdate is a required function to be
|
87
|
+
// passed to useDatagrid when using useInlineEdit
|
88
|
+
var saveCellData = (0, _react.useCallback)(function (newValue) {
|
89
|
+
var columnId = cell.column.id;
|
90
|
+
var rowIndex = cell.row.index;
|
91
|
+
onDataUpdate(function (prev) {
|
92
|
+
return prev.map(function (row, index) {
|
93
|
+
if (index === rowIndex) {
|
94
|
+
return _objectSpread(_objectSpread({}, prev[rowIndex]), {}, (0, _defineProperty2.default)({}, columnId, newValue));
|
95
|
+
}
|
96
|
+
return row;
|
97
|
+
});
|
98
|
+
});
|
99
|
+
}, [cell, onDataUpdate]);
|
83
100
|
(0, _react.useEffect)(function () {
|
84
101
|
setInitialValue(value);
|
85
102
|
var columnId = cell.column.id;
|
@@ -153,8 +170,6 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
153
170
|
}, 1);
|
154
171
|
}
|
155
172
|
};
|
156
|
-
var rowSize = instance.rowSize,
|
157
|
-
onDataUpdate = instance.onDataUpdate;
|
158
173
|
|
159
174
|
// Auto focus text input when entering edit mode
|
160
175
|
(0, _react.useEffect)(function () {
|
@@ -172,21 +187,6 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
172
187
|
(0, _react.useEffect)(function () {
|
173
188
|
setCellValue(value);
|
174
189
|
}, [value]);
|
175
|
-
|
176
|
-
// Saves the new cell data, onDataUpdate is a required function to be
|
177
|
-
// passed to useDatagrid when using useInlineEdit
|
178
|
-
var saveCellData = (0, _react.useCallback)(function (newValue) {
|
179
|
-
var columnId = cell.column.id;
|
180
|
-
var rowIndex = cell.row.index;
|
181
|
-
onDataUpdate(function (prev) {
|
182
|
-
return prev.map(function (row, index) {
|
183
|
-
if (index === rowIndex) {
|
184
|
-
return _objectSpread(_objectSpread({}, prev[rowIndex]), {}, (0, _defineProperty2.default)({}, columnId, newValue));
|
185
|
-
}
|
186
|
-
return row;
|
187
|
-
});
|
188
|
-
});
|
189
|
-
}, [cell, onDataUpdate]);
|
190
190
|
var sendFocusBackToGrid = function sendFocusBackToGrid() {
|
191
191
|
// Allows the onKeyDown listener to go back to the entire grid area
|
192
192
|
var inlineEditArea = document.querySelector("#".concat(instance.tableId, " .").concat(blockClass, "__table-with-inline-edit"));
|
@@ -26,10 +26,13 @@ var OFFSET_SCROLL_CLASS = "".concat(styleClassPrefix, "-offset-scroll");
|
|
26
26
|
var useStickyColumn = function useStickyColumn(hooks) {
|
27
27
|
var tableBodyRef = (0, _react.useRef)();
|
28
28
|
var stickyHeaderCellRef = (0, _react.useRef)();
|
29
|
-
var _useState = (0, _react.useState)(
|
29
|
+
var _useState = (0, _react.useState)(null),
|
30
30
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
31
31
|
windowSize = _useState2[0],
|
32
32
|
setWindowSize = _useState2[1];
|
33
|
+
(0, _react.useEffect)(function () {
|
34
|
+
setWindowSize(window.innerWidth);
|
35
|
+
}, []);
|
33
36
|
(0, _react.useLayoutEffect)(function () {
|
34
37
|
function updateSize() {
|
35
38
|
setWindowSize(window.innerWidth);
|
@@ -58,9 +61,13 @@ var useStickyColumn = function useStickyColumn(hooks) {
|
|
58
61
|
headerCellElement.classList.add(OFFSET_SCROLL_CLASS);
|
59
62
|
}
|
60
63
|
var boundListener = (0, _debounce.default)(onBodyResize.bind(null, tableBodyElement, headerCellElement), 250);
|
61
|
-
window
|
64
|
+
if (typeof window !== 'undefined') {
|
65
|
+
window.addEventListener('resize', boundListener);
|
66
|
+
}
|
62
67
|
return function () {
|
63
|
-
window
|
68
|
+
if (typeof window !== 'undefined') {
|
69
|
+
window.removeEventListener('resize', boundListener);
|
70
|
+
}
|
64
71
|
};
|
65
72
|
}, [instance.rows, instance.isFetching]);
|
66
73
|
(0, _react.useEffect)(function () {
|
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
7
7
|
});
|
8
8
|
exports.DatagridActions = void 0;
|
9
9
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
10
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
11
10
|
var _react = _interopRequireWildcard(require("react"));
|
12
11
|
var _react2 = require("@carbon/react");
|
13
12
|
var _icons = require("@carbon/react/icons");
|
@@ -55,25 +54,18 @@ var DatagridActions = function DatagridActions(datagridState) {
|
|
55
54
|
return (filterProps === null || filterProps === void 0 ? void 0 : filterProps.variation) === 'flyout' && /*#__PURE__*/_react.default.createElement(FilterFlyout, getFilterFlyoutProps());
|
56
55
|
};
|
57
56
|
var renderFilterPanelButton = function renderFilterPanelButton() {
|
58
|
-
return (filterProps === null || filterProps === void 0 ? void 0 : filterProps.variation) === 'panel' && /*#__PURE__*/_react.default.createElement(_react2.
|
57
|
+
return (filterProps === null || filterProps === void 0 ? void 0 : filterProps.variation) === 'panel' && /*#__PURE__*/_react.default.createElement(_react2.IconButton, {
|
59
58
|
kind: "ghost",
|
60
|
-
|
61
|
-
|
62
|
-
renderIcon: function renderIcon(props) {
|
63
|
-
return /*#__PURE__*/_react.default.createElement(_icons.Filter, (0, _extends2.default)({
|
64
|
-
size: 16
|
65
|
-
}, props));
|
66
|
-
},
|
67
|
-
iconDescription: filterProps.panelIconDescription,
|
59
|
+
align: "bottom",
|
60
|
+
label: filterProps.panelIconDescription,
|
68
61
|
className: "".concat(blockClass, "-filter-panel-open-button"),
|
69
62
|
onClick: function onClick() {
|
70
63
|
return setPanelOpen(function (open) {
|
71
64
|
return !open;
|
72
65
|
});
|
73
66
|
},
|
74
|
-
disabled: data.length === 0
|
75
|
-
|
76
|
-
});
|
67
|
+
disabled: data.length === 0
|
68
|
+
}, /*#__PURE__*/_react.default.createElement(_icons.Filter, null));
|
77
69
|
};
|
78
70
|
var _useState = (0, _react.useState)(false),
|
79
71
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
@@ -187,6 +187,13 @@ var ImportModal = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
187
187
|
var inputHandler = function inputHandler(evt) {
|
188
188
|
setImportUrl(evt.target.value);
|
189
189
|
};
|
190
|
+
var onCloseHandler = function onCloseHandler() {
|
191
|
+
setFiles([]);
|
192
|
+
setImportUrl('');
|
193
|
+
if (onClose) {
|
194
|
+
onClose();
|
195
|
+
}
|
196
|
+
};
|
190
197
|
var numberOfFiles = files.length;
|
191
198
|
var numberOfValidFiles = files.filter(function (f) {
|
192
199
|
return !f.invalid;
|
@@ -198,13 +205,13 @@ var ImportModal = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
198
205
|
var blockClass = "".concat(_settings.pkg.prefix, "--import-modal");
|
199
206
|
return /*#__PURE__*/_react.default.createElement(_react2.ComposedModal, (0, _extends2.default)({}, rest, _objectSpread({
|
200
207
|
open: open,
|
201
|
-
ref: ref
|
202
|
-
onClose: onClose
|
208
|
+
ref: ref
|
203
209
|
}, (0, _devtools.getDevtoolsProps)(componentName)), {
|
204
210
|
"aria-label": title,
|
205
211
|
className: (0, _classnames.default)(blockClass, className),
|
206
212
|
size: "sm",
|
207
|
-
preventCloseOnClickOutside: true
|
213
|
+
preventCloseOnClickOutside: true,
|
214
|
+
onClose: onCloseHandler
|
208
215
|
}), /*#__PURE__*/_react.default.createElement(_react2.ModalHeader, {
|
209
216
|
className: "".concat(blockClass, "__header"),
|
210
217
|
title: title
|
@@ -267,7 +274,7 @@ var ImportModal = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
267
274
|
}, /*#__PURE__*/_react.default.createElement(_react2.Button, {
|
268
275
|
type: "button",
|
269
276
|
kind: "secondary",
|
270
|
-
onClick:
|
277
|
+
onClick: onCloseHandler
|
271
278
|
}, secondaryButtonText), /*#__PURE__*/_react.default.createElement(_react2.Button, {
|
272
279
|
type: "submit",
|
273
280
|
kind: "primary",
|
@@ -371,11 +378,11 @@ ImportModal.propTypes = {
|
|
371
378
|
/**
|
372
379
|
* Specify a handler for "submitting" modal. Access the imported file via `file => {}`
|
373
380
|
*/
|
374
|
-
onRequestSubmit: _propTypes.default.func,
|
381
|
+
onRequestSubmit: _propTypes.default.func.isRequired,
|
375
382
|
/**
|
376
383
|
* Specify whether the Modal is currently open
|
377
384
|
*/
|
378
|
-
open: _propTypes.default.bool,
|
385
|
+
open: _propTypes.default.bool.isRequired,
|
379
386
|
/**
|
380
387
|
* Specify the text for the primary button
|
381
388
|
*/
|
@@ -22,34 +22,19 @@ var UnreadNotificationBell = function UnreadNotificationBell() {
|
|
22
22
|
xmlns: "http://www.w3.org/2000/svg",
|
23
23
|
xmlnsXlink: "http://www.w3.org/1999/xlink"
|
24
24
|
}, /*#__PURE__*/_react.default.createElement("title", null, "Unread notification bell"), /*#__PURE__*/_react.default.createElement("g", {
|
25
|
-
id: "Page-1",
|
26
|
-
stroke: "none",
|
27
|
-
strokeWidth: "1",
|
28
|
-
fill: "none",
|
29
|
-
fillRule: "evenodd"
|
30
|
-
}, /*#__PURE__*/_react.default.createElement("g", {
|
31
25
|
id: "Group",
|
32
26
|
transform: "translate(-1.000000, 0.000000)"
|
33
|
-
}, /*#__PURE__*/_react.default.createElement("g", {
|
34
|
-
id: "notification"
|
35
27
|
}, /*#__PURE__*/_react.default.createElement("path", {
|
36
28
|
d: "M17.9419375,12.058125 L16.25,10.3661875 L16.25,8.125 C16.245845,4.91692673 13.816599,2.23147626 10.625,1.90675 L10.625,0.625 L9.375,0.625 L9.375,1.90675 C6.183401,2.23147626 3.754155,4.91692673 3.75,8.125 L3.75,10.3661875 L2.0580625,12.058125 C1.94086706,12.1753182 1.875,12.3342622 1.875,12.5 L1.875,14.375 C1.875,14.720178 2.15482203,15 2.5,15 L6.875,15 L6.875,15.4855 C6.84694527,17.1272367 8.05869477,18.5271305 9.6875,18.7346875 C10.5660567,18.8218694 11.4405518,18.5337871 12.0952737,17.9415019 C12.7499955,17.3492167 13.1239886,16.5078712 13.125,15.625 L13.125,15 L17.5,15 C17.845178,15 18.125,14.720178 18.125,14.375 L18.125,12.5 C18.125,12.3342622 18.0591329,12.1753182 17.9419375,12.058125 Z M11.875,15.625 C11.875,16.6605339 11.0355339,17.5 10,17.5 C8.96446609,17.5 8.125,16.6605339 8.125,15.625 L8.125,15 L11.875,15 L11.875,15.625 Z M16.875,13.75 L3.125,13.75 L3.125,12.7588125 L4.816875,11.066875 C4.93409336,10.949692 4.9999646,10.7907468 5,10.625 L5,8.125 C5,5.36357625 7.23857625,3.125 10,3.125 C12.7614237,3.125 15,5.36357625 15,8.125 L15,10.625 C15.0000354,10.7907468 15.0659066,10.949692 15.183125,11.066875 L16.875,12.7588125 L16.875,13.75 Z",
|
37
29
|
id: "Shape",
|
38
|
-
fill: "#FFFFFF",
|
39
30
|
fillRule: "nonzero"
|
40
|
-
}), /*#__PURE__*/_react.default.createElement("
|
41
|
-
id: "_Transparent_Rectangle_",
|
42
|
-
x: "0",
|
43
|
-
y: "0",
|
44
|
-
width: "20",
|
45
|
-
height: "20"
|
46
|
-
})), /*#__PURE__*/_react.default.createElement("circle", {
|
31
|
+
}), /*#__PURE__*/_react.default.createElement("circle", {
|
47
32
|
id: "Oval",
|
48
33
|
stroke: "#161616",
|
49
34
|
fill: "#DA1E28",
|
50
35
|
cx: "15",
|
51
36
|
cy: "4.375",
|
52
37
|
r: "2.5"
|
53
|
-
})))
|
38
|
+
})));
|
54
39
|
};
|
55
40
|
exports.UnreadNotificationBell = UnreadNotificationBell;
|
@@ -320,12 +320,8 @@ var PageHeader = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
320
320
|
(0, _PageHeaderUtils.utilSetCollapsed)(collapseHeader, metrics.headerOffset, metrics.headerTopValue);
|
321
321
|
}
|
322
322
|
}, [collapseHeader, metrics.headerOffset, metrics.headerTopValue]);
|
323
|
-
(0, _useResizeObserver.useResizeObserver)(sizingContainerRef,
|
324
|
-
|
325
|
-
});
|
326
|
-
(0, _useResizeObserver.useResizeObserver)(headerRef, {
|
327
|
-
callback: handleResize
|
328
|
-
});
|
323
|
+
(0, _useResizeObserver.useResizeObserver)(sizingContainerRef, handleResizeActionBarColumn);
|
324
|
+
(0, _useResizeObserver.useResizeObserver)(headerRef, handleResize);
|
329
325
|
|
330
326
|
// Determine what form of title to display in the breadcrumb
|
331
327
|
var breadcrumbItemForTitle = (0, _PageHeaderUtils.utilGetBreadcrumbItemForTitle)(_PageHeaderUtils.blockClass, collapseTitle, title);
|
@@ -71,11 +71,11 @@ var utilCheckUpdateVerticalSpace = function utilCheckUpdateVerticalSpace(headerR
|
|
71
71
|
var scrollableContainer = (0, _scrollableAncestor.scrollableAncestor)(headerRef.current);
|
72
72
|
|
73
73
|
/* istanbul ignore next */
|
74
|
-
var scrollableContainerTop = scrollableContainer ? scrollableContainer.scrollTop - scrollableContainer.
|
74
|
+
var scrollableContainerTop = scrollableContainer ? scrollableContainer.scrollTop - scrollableContainer.getBoundingClientRect().top : 0;
|
75
75
|
|
76
76
|
// The header offset calculation is either going to work out at 0 if we have no gap between scrolling container
|
77
77
|
// top and the measuring ref top, or the difference between. It does not change on scroll or resize.
|
78
|
-
update.headerOffset =
|
78
|
+
update.headerOffset = (offsetTopMeasuringRef.current ? offsetTopMeasuringRef.current.getBoundingClientRect().top : 0) + scrollableContainerTop;
|
79
79
|
|
80
80
|
/* istanbul ignore next */
|
81
81
|
update.breadcrumbRowHeight = breadcrumbRowEl ? breadcrumbRowEl.clientHeight : 0;
|
@@ -451,9 +451,7 @@ var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
451
451
|
}, title));
|
452
452
|
};
|
453
453
|
var contentRef = ref || sidePanelRef;
|
454
|
-
(0, _useResizeObserver.useResizeObserver)(contentRef,
|
455
|
-
callback: handleResize
|
456
|
-
});
|
454
|
+
(0, _useResizeObserver.useResizeObserver)(contentRef, handleResize);
|
457
455
|
return /*#__PURE__*/_react.default.createElement(_framerMotion.AnimatePresence, null, open && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_framerMotion.motion.div, (0, _extends2.default)({}, (0, _devtools.getDevtoolsProps)(componentName), rest, {
|
458
456
|
id: "".concat(blockClass, "-outer"),
|
459
457
|
className: mainPanelClassNames,
|
@@ -164,7 +164,8 @@ var TagSet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
164
164
|
if (sizingTags.length > 0) {
|
165
165
|
var spaceAvailable = tagSetRef.current.offsetWidth;
|
166
166
|
for (var i in sizingTags) {
|
167
|
-
var
|
167
|
+
var _sizingTags$i;
|
168
|
+
var tagWidth = ((_sizingTags$i = sizingTags[i]) === null || _sizingTags$i === void 0 ? void 0 : _sizingTags$i.offsetWidth) || 0;
|
168
169
|
if (spaceAvailable >= tagWidth) {
|
169
170
|
spaceAvailable -= tagWidth;
|
170
171
|
willFit += 1;
|
@@ -206,12 +207,8 @@ var TagSet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
206
207
|
var handleModalClose = function handleModalClose() {
|
207
208
|
setShowAllModalOpen(false);
|
208
209
|
};
|
209
|
-
(0, _useResizeObserver.useResizeObserver)(sizingContainerRef,
|
210
|
-
|
211
|
-
});
|
212
|
-
(0, _useResizeObserver.useResizeObserver)(tagSetRef, {
|
213
|
-
callback: handleResize
|
214
|
-
});
|
210
|
+
(0, _useResizeObserver.useResizeObserver)(sizingContainerRef, handleSizerTagsResize);
|
211
|
+
(0, _useResizeObserver.useResizeObserver)(tagSetRef, handleResize);
|
215
212
|
return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, rest, {
|
216
213
|
className: (0, _classnames.default)([blockClass, className]),
|
217
214
|
ref: tagSetRef
|
@@ -225,7 +225,8 @@ var TearsheetShell = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref)
|
|
225
225
|
closeModal: onClose,
|
226
226
|
iconDescription: closeIconDescription
|
227
227
|
}, /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
|
228
|
-
className: "".concat(bc, "__header-content")
|
228
|
+
className: "".concat(bc, "__header-content"),
|
229
|
+
element: wide ? _react2.Layer : undefined
|
229
230
|
}, /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
|
230
231
|
className: "".concat(bc, "__header-fields")
|
231
232
|
}, /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
|
@@ -250,12 +251,10 @@ var TearsheetShell = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref)
|
|
250
251
|
className: "".concat(bc, "__right")
|
251
252
|
}, /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
|
252
253
|
className: "".concat(bc, "__main"),
|
253
|
-
alwaysRender: includeActions
|
254
|
-
element: wide ? _react2.Layer : undefined
|
254
|
+
alwaysRender: includeActions
|
255
255
|
}, /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
|
256
256
|
className: "".concat(bc, "__content"),
|
257
|
-
alwaysRender: influencer && influencerPosition === 'right'
|
258
|
-
element: wide ? _react2.Layer : undefined
|
257
|
+
alwaysRender: influencer && influencerPosition === 'right'
|
259
258
|
}, children), /*#__PURE__*/_react.default.createElement(_Wrap.Wrap, {
|
260
259
|
className: (0, _classnames.default)((_cx6 = {}, (0, _defineProperty2.default)(_cx6, "".concat(bc, "__influencer"), true), (0, _defineProperty2.default)(_cx6, "".concat(bc, "__influencer--wide"), influencerWidth === 'wide'), _cx6)),
|
261
260
|
neverRender: influencerPosition !== 'right'
|
@@ -37,6 +37,20 @@ var useCreateComponentStepChange = function useCreateComponentStepChange(_ref) {
|
|
37
37
|
componentBlockClass = _ref.componentBlockClass,
|
38
38
|
setCreateComponentActions = _ref.setCreateComponentActions,
|
39
39
|
setModalIsOpen = _ref.setModalIsOpen;
|
40
|
+
var continueToNextStep = (0, _react.useCallback)(function () {
|
41
|
+
setIsSubmitting(false);
|
42
|
+
setCurrentStep(function (prev) {
|
43
|
+
// Find next included step to render
|
44
|
+
// There will always be a next step otherwise we will
|
45
|
+
// have reach the onSubmit
|
46
|
+
do {
|
47
|
+
var _stepData;
|
48
|
+
prev++;
|
49
|
+
} while (!((_stepData = stepData[prev - 1]) !== null && _stepData !== void 0 && _stepData.shouldIncludeStep));
|
50
|
+
return prev;
|
51
|
+
});
|
52
|
+
}, [setCurrentStep, setIsSubmitting, stepData]);
|
53
|
+
|
40
54
|
// useEffect to handle multi step logic
|
41
55
|
(0, _react.useEffect)(function () {
|
42
56
|
var onUnmount = function onUnmount() {
|
@@ -164,9 +178,9 @@ var useCreateComponentStepChange = function useCreateComponentStepChange(_ref) {
|
|
164
178
|
// There will always be a previous step otherwise we will
|
165
179
|
// have disabled the back button since we have reached the first visible step
|
166
180
|
do {
|
167
|
-
var
|
181
|
+
var _stepData2;
|
168
182
|
prev--;
|
169
|
-
} while (!((
|
183
|
+
} while (!((_stepData2 = stepData[prev - 1]) !== null && _stepData2 !== void 0 && _stepData2.shouldIncludeStep));
|
170
184
|
return prev;
|
171
185
|
});
|
172
186
|
},
|
@@ -194,18 +208,5 @@ var useCreateComponentStepChange = function useCreateComponentStepChange(_ref) {
|
|
194
208
|
setCreateComponentActions(buttons);
|
195
209
|
}
|
196
210
|
}, [firstIncludedStep, lastIncludedStep, stepData, onNext, isSubmitDisabled, backButtonText, cancelButtonText, currentStep, onClose, nextButtonText, submitButtonText, onRequestSubmit, isSubmitting, shouldViewAll, componentBlockClass, componentName, continueToNextStep, setCurrentStep, setCreateComponentActions, setIsSubmitting, setShouldViewAll, setModalIsOpen]);
|
197
|
-
var continueToNextStep = (0, _react.useCallback)(function () {
|
198
|
-
setIsSubmitting(false);
|
199
|
-
setCurrentStep(function (prev) {
|
200
|
-
// Find next included step to render
|
201
|
-
// There will always be a next step otherwise we will
|
202
|
-
// have reach the onSubmit
|
203
|
-
do {
|
204
|
-
var _stepData2;
|
205
|
-
prev++;
|
206
|
-
} while (!((_stepData2 = stepData[prev - 1]) !== null && _stepData2 !== void 0 && _stepData2.shouldIncludeStep));
|
207
|
-
return prev;
|
208
|
-
});
|
209
|
-
}, [setCurrentStep, setIsSubmitting, stepData]);
|
210
211
|
};
|
211
212
|
exports.useCreateComponentStepChange = useCreateComponentStepChange;
|
@@ -14,13 +14,7 @@ var _react = require("react");
|
|
14
14
|
* LICENSE file in the root directory of this source tree.
|
15
15
|
*/
|
16
16
|
|
17
|
-
var useResizeObserver = function useResizeObserver(ref) {
|
18
|
-
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {
|
19
|
-
callback: null,
|
20
|
-
throttleInterval: 0
|
21
|
-
};
|
22
|
-
var callback = options.callback,
|
23
|
-
throttleInterval = options.throttleInterval;
|
17
|
+
var useResizeObserver = function useResizeObserver(ref, callback) {
|
24
18
|
var _useState = (0, _react.useState)(0),
|
25
19
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
26
20
|
width = _useState2[0],
|
@@ -29,8 +23,14 @@ var useResizeObserver = function useResizeObserver(ref) {
|
|
29
23
|
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
30
24
|
height = _useState4[0],
|
31
25
|
setHeight = _useState4[1];
|
32
|
-
var throttleTimeout = (0, _react.useRef)(null);
|
33
26
|
var entriesToHandle = (0, _react.useRef)(null);
|
27
|
+
var cb = (0, _react.useRef)(callback);
|
28
|
+
(0, _react.useEffect)(function () {
|
29
|
+
// ref for callback removes it as dependency fro useLayoutEffect
|
30
|
+
// This significantly reduces repeated calls if a function is redefined on every
|
31
|
+
// render
|
32
|
+
cb.current = callback;
|
33
|
+
}, [callback]);
|
34
34
|
(0, _react.useLayoutEffect)(function () {
|
35
35
|
if (!(ref !== null && ref !== void 0 && ref.current)) {
|
36
36
|
return;
|
@@ -42,29 +42,15 @@ var useResizeObserver = function useResizeObserver(ref) {
|
|
42
42
|
var entry = entriesToHandle.current[0];
|
43
43
|
setWidth(entry.contentRect.width);
|
44
44
|
setHeight(entry.contentRect.height);
|
45
|
-
|
46
|
-
callback && callback(entry.contentRect);
|
45
|
+
cb.current && cb.current(entry.contentRect);
|
47
46
|
};
|
48
47
|
var observer = new ResizeObserver(function (entries) {
|
49
48
|
// always update entriesToHandle
|
50
49
|
entriesToHandle.current = entries;
|
51
|
-
|
52
|
-
//
|
53
|
-
if (throttleTimeout.current === null) {
|
54
|
-
// no live timeout set entries to handle and move on
|
55
|
-
|
56
|
-
// set up throttle
|
57
|
-
throttleTimeout.current = setTimeout(function () {
|
58
|
-
// do callbacks
|
59
|
-
doCallbacks();
|
60
|
-
// reset throttle
|
61
|
-
throttleTimeout.current = null;
|
62
|
-
}, throttleInterval);
|
63
|
-
}
|
64
|
-
} else {
|
65
|
-
// no throttle do callbacks every time
|
50
|
+
window.requestAnimationFrame(function () {
|
51
|
+
// do callbacks
|
66
52
|
doCallbacks();
|
67
|
-
}
|
53
|
+
});
|
68
54
|
});
|
69
55
|
|
70
56
|
// observe all refs passed
|
@@ -74,7 +60,7 @@ var useResizeObserver = function useResizeObserver(ref) {
|
|
74
60
|
observer = null;
|
75
61
|
};
|
76
62
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
77
|
-
}, [ref
|
63
|
+
}, [ref]);
|
78
64
|
return {
|
79
65
|
width: width,
|
80
66
|
height: height
|
@@ -114,7 +114,7 @@ StackblitzLink.propTypes = {
|
|
114
114
|
* @returns "dark" or "light"
|
115
115
|
*/
|
116
116
|
var getSelectedCarbonTheme = function getSelectedCarbonTheme() {
|
117
|
-
var themeId = document.querySelector('
|
117
|
+
var themeId = document.querySelector('[storybook-carbon-theme]').getAttribute('storybook-carbon-theme');
|
118
118
|
return themeId === 'g90' || themeId === 'g100' ? 'dark' : 'light';
|
119
119
|
};
|
120
120
|
exports.getSelectedCarbonTheme = getSelectedCarbonTheme;
|