@carbon/ibm-products 2.21.0 → 2.23.0
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +8 -4
- package/css/index-full-carbon.css +559 -357
- package/css/index-full-carbon.css.map +1 -1
- package/css/index-full-carbon.min.css +1 -1
- package/css/index-full-carbon.min.css.map +1 -1
- package/css/index-without-carbon-released-only.css +227 -267
- 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 +271 -295
- package/css/index-without-carbon.css.map +1 -1
- package/css/index-without-carbon.min.css +1 -1
- package/css/index-without-carbon.min.css.map +1 -1
- package/css/index.css +251 -298
- package/css/index.css.map +1 -1
- package/css/index.min.css +1 -1
- package/css/index.min.css.map +1 -1
- package/es/components/Datagrid/Datagrid/DatagridContent.js +8 -3
- package/es/components/Datagrid/Datagrid/DatagridHeaderRow.js +14 -4
- package/es/components/Datagrid/Datagrid/DatagridRow.js +6 -1
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +6 -3
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +2 -2
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +30 -72
- package/es/components/Datagrid/Datagrid/addons/Slug/ColumnHeaderSlug.js +26 -0
- package/es/components/Datagrid/useDefaultStringRenderer.js +3 -3
- package/es/components/Datagrid/useRowIsMouseOver.js +3 -1
- package/es/components/Datagrid/useSortableColumns.js +15 -5
- package/es/components/DelimitedList/DelimitedList.docs-page.js +15 -0
- package/es/components/DelimitedList/DelimitedList.js +73 -0
- package/es/components/DelimitedList/index.js +8 -0
- package/es/components/FilterSummary/FilterSummary.js +100 -19
- package/es/components/SidePanel/SidePanel.js +145 -189
- package/es/components/TagSet/TagSet.js +31 -7
- package/es/components/TagSet/TagSetOverflow.js +13 -8
- package/es/components/index.js +2 -1
- package/es/global/js/hooks/useResizeObserver.js +5 -2
- package/es/global/js/package-settings.js +1 -0
- package/lib/components/Datagrid/Datagrid/DatagridContent.js +8 -3
- package/lib/components/Datagrid/Datagrid/DatagridHeaderRow.js +14 -4
- package/lib/components/Datagrid/Datagrid/DatagridRow.js +6 -1
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +6 -3
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +2 -2
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +30 -72
- package/lib/components/Datagrid/Datagrid/addons/Slug/ColumnHeaderSlug.js +36 -0
- package/lib/components/Datagrid/useDefaultStringRenderer.js +3 -3
- package/lib/components/Datagrid/useRowIsMouseOver.js +3 -1
- package/lib/components/Datagrid/useSortableColumns.js +15 -5
- package/lib/components/DelimitedList/DelimitedList.docs-page.js +25 -0
- package/lib/components/DelimitedList/DelimitedList.js +78 -0
- package/lib/components/DelimitedList/index.js +12 -0
- package/lib/components/FilterSummary/FilterSummary.js +103 -23
- package/lib/components/SidePanel/SidePanel.js +145 -189
- package/lib/components/TagSet/TagSet.js +31 -7
- package/lib/components/TagSet/TagSetOverflow.js +12 -7
- package/lib/components/index.js +8 -1
- package/lib/global/js/hooks/useResizeObserver.js +5 -2
- package/lib/global/js/package-settings.js +1 -0
- package/package.json +9 -8
- package/scss/components/CreateSidePanel/_create-side-panel.scss +1 -38
- package/scss/components/Datagrid/_datagrid.scss +4 -0
- package/scss/components/Datagrid/styles/_datagrid.scss +24 -1
- package/scss/components/Datagrid/styles/_useStickyColumn.scss +2 -0
- package/scss/components/DelimitedList/_carbon-imports.scss +9 -0
- package/scss/components/DelimitedList/_delimited-list.scss +27 -0
- package/scss/components/DelimitedList/_index-with-carbon.scss +9 -0
- package/scss/components/DelimitedList/_index.scss +8 -0
- package/scss/components/EditSidePanel/_edit-side-panel.scss +0 -18
- package/scss/components/FilterSummary/_filter-summary.scss +22 -1
- package/scss/components/SidePanel/_side-panel-variables.scss +5 -1
- package/scss/components/SidePanel/_side-panel.scss +155 -187
- package/scss/components/_index-with-carbon.scss +1 -0
- package/scss/components/_index.scss +1 -0
- package/telemetry.yml +790 -0
@@ -7,20 +7,26 @@ Object.defineProperty(exports, "__esModule", {
|
|
7
7
|
});
|
8
8
|
exports.default = void 0;
|
9
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
10
11
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
11
12
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
12
|
-
var _react = require("
|
13
|
-
var _react2 =
|
13
|
+
var _react = _interopRequireWildcard(require("react"));
|
14
|
+
var _react2 = require("@carbon/react");
|
15
|
+
var _framerMotion = require("framer-motion");
|
16
|
+
var _icons = require("@carbon/react/icons");
|
14
17
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
15
18
|
var _classnames = _interopRequireDefault(require("classnames"));
|
16
19
|
var _TagSet = require("../TagSet");
|
17
20
|
var _settings = require("../../settings");
|
18
21
|
var _uuidv = _interopRequireDefault(require("../../global/js/utils/uuidv4"));
|
22
|
+
var _motionConstants = require("../../global/js/utils/motionConstants");
|
23
|
+
var _hooks = require("../../global/js/hooks");
|
24
|
+
var _debounce = _interopRequireDefault(require("lodash/debounce"));
|
19
25
|
var _devtools = require("../../global/js/utils/devtools");
|
20
26
|
var _excluded = ["className", "clearFiltersText", "clearFilters", "filters", "renderLabel", "overflowType", "clearButtonInline"],
|
21
27
|
_excluded2 = ["key", "value"];
|
22
28
|
/**
|
23
|
-
* Copyright IBM Corp. 2022,
|
29
|
+
* Copyright IBM Corp. 2022, 2024
|
24
30
|
*
|
25
31
|
* This source code is licensed under the Apache-2.0 license found in the
|
26
32
|
* LICENSE file in the root directory of this source tree.
|
@@ -30,8 +36,8 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
|
|
30
36
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
31
37
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
32
38
|
var blockClass = "".concat(_settings.pkg.prefix, "--filter-summary");
|
33
|
-
var FilterSummary = /*#__PURE__*/
|
34
|
-
var _filterSummaryClearBu;
|
39
|
+
var FilterSummary = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
40
|
+
var _viewAllButtonRef$cur, _filterSummaryClearBu;
|
35
41
|
var _ref$className = _ref.className,
|
36
42
|
className = _ref$className === void 0 ? '' : _ref$className,
|
37
43
|
_ref$clearFiltersText = _ref.clearFiltersText,
|
@@ -56,30 +62,104 @@ var FilterSummary = /*#__PURE__*/_react2.default.forwardRef(function (_ref, ref)
|
|
56
62
|
label: (_renderLabel = renderLabel === null || renderLabel === void 0 ? void 0 : renderLabel(key, value)) !== null && _renderLabel !== void 0 ? _renderLabel : "".concat(key, ": ").concat(value)
|
57
63
|
});
|
58
64
|
});
|
59
|
-
var filterSummaryClearButton = (0,
|
60
|
-
var
|
61
|
-
var
|
62
|
-
|
65
|
+
var filterSummaryClearButton = (0, _react.useRef)();
|
66
|
+
var viewAllButtonRef = (0, _react.useRef)();
|
67
|
+
var filterSummaryRef = (0, _react.useRef)();
|
68
|
+
var localRef = filterSummaryRef || ref;
|
69
|
+
var _useState = (0, _react.useState)(0),
|
70
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
71
|
+
overflowCount = _useState2[0],
|
72
|
+
setOverflowCount = _useState2[1];
|
73
|
+
var _useState3 = (0, _react.useState)(false),
|
74
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
75
|
+
multiline = _useState4[0],
|
76
|
+
setMultiline = _useState4[1];
|
77
|
+
var previousState = (0, _hooks.usePreviousValue)({
|
78
|
+
multiline: multiline
|
79
|
+
});
|
80
|
+
var handleViewAll = function handleViewAll() {
|
81
|
+
if (overflowCount === 0) {
|
82
|
+
setMultiline(false);
|
83
|
+
return;
|
84
|
+
}
|
85
|
+
setMultiline(function (prev) {
|
86
|
+
return !prev;
|
87
|
+
});
|
88
|
+
};
|
89
|
+
var viewAllWidth = typeof (viewAllButtonRef === null || viewAllButtonRef === void 0 || (_viewAllButtonRef$cur = viewAllButtonRef.current) === null || _viewAllButtonRef$cur === void 0 ? void 0 : _viewAllButtonRef$cur.offsetWidth) === 'undefined' ? 0 : overflowCount > 0 ? 48 : 0;
|
90
|
+
var measurementOffset = (filterSummaryClearButton === null || filterSummaryClearButton === void 0 || (_filterSummaryClearBu = filterSummaryClearButton.current) === null || _filterSummaryClearBu === void 0 ? void 0 : _filterSummaryClearBu.offsetWidth) + viewAllWidth;
|
91
|
+
var renderTagSet = function renderTagSet(type) {
|
92
|
+
return /*#__PURE__*/_react.default.createElement(_framerMotion.motion.div, {
|
93
|
+
key: type,
|
94
|
+
initial: {
|
95
|
+
opacity: 0,
|
96
|
+
y: -16
|
97
|
+
},
|
98
|
+
animate: {
|
99
|
+
opacity: 1,
|
100
|
+
y: 0
|
101
|
+
},
|
102
|
+
exit: {
|
103
|
+
opacity: 0,
|
104
|
+
y: -16
|
105
|
+
},
|
106
|
+
transition: {
|
107
|
+
duration: _motionConstants.DURATIONS.moderate01,
|
108
|
+
ease: _motionConstants.EASINGS.productive.entrance
|
109
|
+
}
|
110
|
+
}, /*#__PURE__*/_react.default.createElement(_TagSet.TagSet, {
|
111
|
+
allTagsModalSearchLabel: "Search all tags",
|
112
|
+
allTagsModalSearchPlaceholderText: "Search all tags",
|
113
|
+
allTagsModalTitle: "All tags",
|
114
|
+
showAllTagsLabel: "View all tags",
|
115
|
+
tags: tagFilters,
|
116
|
+
overflowType: overflowType,
|
117
|
+
className: (0, _classnames.default)((0, _defineProperty2.default)({}, "".concat(blockClass, "__clear-button-inline"), clearButtonInline)),
|
118
|
+
containingElementRef: localRef,
|
119
|
+
measurementOffset: measurementOffset,
|
120
|
+
onOverflowTagChange: function onOverflowTagChange(overflowTags) {
|
121
|
+
return setOverflowCount(overflowTags.length);
|
122
|
+
},
|
123
|
+
multiline: multiline
|
124
|
+
}));
|
125
|
+
};
|
126
|
+
(0, _hooks.useWindowResize)(function () {
|
127
|
+
var handleFilterSummaryResize = function handleFilterSummaryResize() {
|
128
|
+
var _localRef$current;
|
129
|
+
if (multiline && (localRef === null || localRef === void 0 || (_localRef$current = localRef.current) === null || _localRef$current === void 0 ? void 0 : _localRef$current.offsetHeight) <= 50) {
|
130
|
+
setMultiline(false);
|
131
|
+
}
|
132
|
+
};
|
133
|
+
var filterResize = (0, _debounce.default)(handleFilterSummaryResize, 500);
|
134
|
+
filterResize();
|
135
|
+
}, [previousState === null || previousState === void 0 ? void 0 : previousState.multiline, multiline]);
|
136
|
+
return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, (0, _devtools.getDevtoolsProps)(componentName), {
|
63
137
|
id: filterSummaryId
|
64
138
|
}, rest, {
|
65
139
|
ref: localRef,
|
66
|
-
className: (0, _classnames.default)([blockClass, className])
|
67
|
-
}), /*#__PURE__*/
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
showAllTagsLabel: "View all tags",
|
72
|
-
tags: tagFilters,
|
73
|
-
overflowType: overflowType,
|
74
|
-
className: (0, _classnames.default)((0, _defineProperty2.default)({}, "".concat(blockClass, "__clear-button-inline"), clearButtonInline)),
|
75
|
-
containingElementRef: localRef,
|
76
|
-
measurementOffset: filterSummaryClearButton === null || filterSummaryClearButton === void 0 || (_filterSummaryClearBu = filterSummaryClearButton.current) === null || _filterSummaryClearBu === void 0 ? void 0 : _filterSummaryClearBu.offsetWidth
|
77
|
-
}), /*#__PURE__*/_react2.default.createElement(_react.Button, {
|
140
|
+
className: (0, _classnames.default)([blockClass, className], (0, _defineProperty2.default)({}, "".concat(blockClass, "__expanded"), multiline))
|
141
|
+
}), /*#__PURE__*/_react.default.createElement(_framerMotion.AnimatePresence, {
|
142
|
+
mode: "wait",
|
143
|
+
exitBeforeEnter: true
|
144
|
+
}, !multiline && renderTagSet('single'), multiline && renderTagSet('multiline')), /*#__PURE__*/_react.default.createElement(_react2.Button, {
|
78
145
|
kind: "ghost",
|
79
146
|
size: "sm",
|
80
147
|
onClick: clearFilters,
|
81
|
-
ref: filterSummaryClearButton
|
82
|
-
|
148
|
+
ref: filterSummaryClearButton,
|
149
|
+
className: "".concat(blockClass, "__clear-all-button")
|
150
|
+
}, clearFiltersText), (overflowCount > 0 || multiline) && /*#__PURE__*/_react.default.createElement("div", {
|
151
|
+
className: "".concat(blockClass, "__view-all--wrapper")
|
152
|
+
}, /*#__PURE__*/_react.default.createElement(_react2.IconButton, {
|
153
|
+
ref: viewAllButtonRef,
|
154
|
+
kind: "ghost",
|
155
|
+
label: 'View all',
|
156
|
+
className: "".concat(blockClass, "__view-all--trigger"),
|
157
|
+
align: "left",
|
158
|
+
onClick: handleViewAll,
|
159
|
+
size: "sm"
|
160
|
+
}, /*#__PURE__*/_react.default.createElement(_icons.ChevronDown, {
|
161
|
+
className: (0, _classnames.default)("".concat(blockClass, "__view-all--chevron"), (0, _defineProperty2.default)({}, "".concat(blockClass, "__view-all--chevron-multiline"), multiline))
|
162
|
+
}))));
|
83
163
|
});
|
84
164
|
var componentName = 'FilterSummary';
|
85
165
|
FilterSummary.displayName = componentName;
|