@redhat-cloud-services/frontend-components 3.4.11 → 3.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ConditionalFilter/ConditionalFilter.js +6 -5
- package/ConditionalFilter/GroupFilter.js +59 -41
- package/ConditionalFilter/conditional-filter.css +1 -3
- package/ConditionalFilter/conditional-filter.scss +1 -1
- package/ConditionalFilter/group-filter.css +19 -0
- package/ConditionalFilter/group-filter.scss +23 -0
- package/ConditionalFilter/groupFilterConstants.js +100 -13
- package/ConditionalFilter/groupType.js +1 -0
- package/Skeleton/Skeleton.js +5 -4
- package/Skeleton/skeleton.css +14 -35
- package/Skeleton/skeleton.scss +14 -30
- package/SkeletonTable/SkeletonTable.css +3 -0
- package/SkeletonTable/SkeletonTable.js +31 -16
- package/SkeletonTable/SkeletonTable.scss +3 -0
- package/esm/ConditionalFilter/ConditionalFilter.js +6 -5
- package/esm/ConditionalFilter/GroupFilter.js +59 -43
- package/esm/ConditionalFilter/groupFilterConstants.js +90 -11
- package/esm/ConditionalFilter/groupType.js +1 -0
- package/esm/Skeleton/Skeleton.js +4 -4
- package/esm/SkeletonTable/SkeletonTable.js +29 -16
- package/index.css +15 -37
- package/package.json +1 -1
|
@@ -148,7 +148,8 @@ var ConditionalFilter = /*#__PURE__*/function (_Component) {
|
|
|
148
148
|
placeholder = _this$props.placeholder,
|
|
149
149
|
hideLabel = _this$props.hideLabel,
|
|
150
150
|
isDisabled = _this$props.isDisabled,
|
|
151
|
-
|
|
151
|
+
useMobileLayout = _this$props.useMobileLayout,
|
|
152
|
+
props = (0, _objectWithoutProperties2["default"])(_this$props, ["items", "value", "onChange", "placeholder", "hideLabel", "isDisabled", "useMobileLayout"]);
|
|
152
153
|
var _this$state = this.state,
|
|
153
154
|
isOpen = _this$state.isOpen,
|
|
154
155
|
stateValue = _this$state.stateValue,
|
|
@@ -164,9 +165,9 @@ var ConditionalFilter = /*#__PURE__*/function (_Component) {
|
|
|
164
165
|
return string[0].toUpperCase() + string.substring(1);
|
|
165
166
|
};
|
|
166
167
|
|
|
167
|
-
var shouldRenderNewLayout =
|
|
168
|
+
var shouldRenderNewLayout = useMobileLayout && isMobile;
|
|
168
169
|
var Wrapper = this.getWrapper();
|
|
169
|
-
return /*#__PURE__*/_react["default"].createElement(Wrapper, null,
|
|
170
|
+
return /*#__PURE__*/_react["default"].createElement(Wrapper, null, useMobileLayout && isMobile && /*#__PURE__*/_react["default"].createElement(_ToolbarGroup.ToolbarGroup, {
|
|
170
171
|
className: "ins-c-conditional-filter mobile"
|
|
171
172
|
}, items.map(function (activeItem, key) {
|
|
172
173
|
var ActiveComponent = activeItem && (_conditionalFilterConstants.typeMapper[activeItem.type] || _conditionalFilterConstants.typeMapper.text);
|
|
@@ -178,7 +179,7 @@ var ConditionalFilter = /*#__PURE__*/function (_Component) {
|
|
|
178
179
|
}, activeItem.filterValues)));
|
|
179
180
|
})), !shouldRenderNewLayout && /*#__PURE__*/_react["default"].createElement(_react.Fragment, null, !items || items && items.length <= 0 ? /*#__PURE__*/_react["default"].createElement("div", {
|
|
180
181
|
className: (0, _classnames["default"])('ins-c-conditional-filter', {
|
|
181
|
-
desktop:
|
|
182
|
+
desktop: useMobileLayout
|
|
182
183
|
})
|
|
183
184
|
}, /*#__PURE__*/_react["default"].createElement(_TextFilter["default"], (0, _extends2["default"])({}, props, {
|
|
184
185
|
value: currentValue,
|
|
@@ -189,7 +190,7 @@ var ConditionalFilter = /*#__PURE__*/function (_Component) {
|
|
|
189
190
|
"widget-type": "InsightsInput"
|
|
190
191
|
}))) : /*#__PURE__*/_react["default"].createElement(_Split.Split, {
|
|
191
192
|
className: (0, _classnames["default"])('ins-c-conditional-filter', {
|
|
192
|
-
desktop:
|
|
193
|
+
desktop: useMobileLayout
|
|
193
194
|
})
|
|
194
195
|
}, items.length > 1 && /*#__PURE__*/_react["default"].createElement(_SplitItem.SplitItem, null, /*#__PURE__*/_react["default"].createElement(_Dropdown.Dropdown, {
|
|
195
196
|
className: "ins-c-conditional-filter__group",
|
|
@@ -43,10 +43,14 @@ var _Popper = require("@patternfly/react-core/dist/js/helpers/Popper/Popper.js")
|
|
|
43
43
|
|
|
44
44
|
var _Radio = require("@patternfly/react-core/dist/js/components/Radio/Radio.js");
|
|
45
45
|
|
|
46
|
+
var _TreeView = require("@patternfly/react-core/dist/js/components/TreeView/TreeView.js");
|
|
47
|
+
|
|
46
48
|
var _groupFilterConstants = require("./groupFilterConstants");
|
|
47
49
|
|
|
48
50
|
var _groupType = _interopRequireDefault(require("./groupType"));
|
|
49
51
|
|
|
52
|
+
require("./group-filter.css");
|
|
53
|
+
|
|
50
54
|
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); }
|
|
51
55
|
|
|
52
56
|
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; }
|
|
@@ -87,7 +91,6 @@ var Group = function Group(_ref) {
|
|
|
87
91
|
(0, _react.useEffect)(function () {
|
|
88
92
|
setStateSelected(selected);
|
|
89
93
|
}, [selected]);
|
|
90
|
-
var calculateSelection = (0, _react.useCallback)(_groupFilterConstants.calculateSelected, [stateSelected]);
|
|
91
94
|
(0, _react.useEffect)(function () {
|
|
92
95
|
setSearchString(filterBy);
|
|
93
96
|
}, [filterBy]);
|
|
@@ -127,50 +130,65 @@ var Group = function Group(_ref) {
|
|
|
127
130
|
setIsOpen(!isOpen);
|
|
128
131
|
};
|
|
129
132
|
|
|
130
|
-
var
|
|
131
|
-
|
|
133
|
+
var menuItems = (0, _groupFilterConstants.getMenuItems)(items === null || items === void 0 ? void 0 : items.map(function (item) {
|
|
134
|
+
return item.type === _groupType["default"].treeView ? (0, _groupFilterConstants.convertTreeItem)(item) : item;
|
|
135
|
+
}), onChange, (0, _groupFilterConstants.calculateSelected)(selected));
|
|
136
|
+
var groupMenuItems = (0, _groupFilterConstants.getGroupMenuItems)(groups, onChange, (0, _groupFilterConstants.calculateSelected)(selected));
|
|
137
|
+
|
|
138
|
+
var renderItem = function renderItem(item, key, type, groupKey) {
|
|
139
|
+
return /*#__PURE__*/_react["default"].createElement(_MenuItem.MenuItem, {
|
|
140
|
+
itemId: key,
|
|
141
|
+
key: "".concat(item.value, "-").concat(key, "-item"),
|
|
142
|
+
className: item === null || item === void 0 ? void 0 : item.className,
|
|
143
|
+
onClick: item.onClick && (type || item.type) === _groupType["default"].checkbox ? function (e) {
|
|
144
|
+
item.onClick();
|
|
145
|
+
e.preventDefault();
|
|
146
|
+
} : undefined
|
|
147
|
+
}, (type || item.type) === _groupType["default"].treeView ? /*#__PURE__*/_react["default"].createElement(_TreeView.TreeView, {
|
|
148
|
+
data: [(0, _groupFilterConstants.mapTree)(item, groupKey, stateSelected, selected)],
|
|
149
|
+
onCheck: function onCheck(e, value) {
|
|
150
|
+
return (0, _groupFilterConstants.onTreeCheck)(e, value, [item]);
|
|
151
|
+
},
|
|
152
|
+
hasChecks: true
|
|
153
|
+
}) : (type || item.type) === _groupType["default"].checkbox ? /*#__PURE__*/_react["default"].createElement(_Checkbox.Checkbox, (0, _extends2["default"])({}, item, {
|
|
154
|
+
label: item === null || item === void 0 ? void 0 : item.label,
|
|
155
|
+
isChecked: (item === null || item === void 0 ? void 0 : item.isChecked) || (0, _groupFilterConstants.isChecked)(groupKey, (item === null || item === void 0 ? void 0 : item.value) || key, item === null || item === void 0 ? void 0 : item.id, item === null || item === void 0 ? void 0 : item.tagValue, stateSelected, selected) || false,
|
|
156
|
+
onChange: function onChange(value, event) {
|
|
157
|
+
var _item$onChange;
|
|
158
|
+
|
|
159
|
+
item === null || item === void 0 ? void 0 : (_item$onChange = item.onChange) === null || _item$onChange === void 0 ? void 0 : _item$onChange.call(item, value, event);
|
|
160
|
+
},
|
|
161
|
+
onClick: item.onClick ? function (e) {
|
|
162
|
+
item.onClick();
|
|
163
|
+
e.stopPropagation();
|
|
164
|
+
} : undefined,
|
|
165
|
+
name: (item === null || item === void 0 ? void 0 : item.name) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key),
|
|
166
|
+
id: (item === null || item === void 0 ? void 0 : item.id) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key)
|
|
167
|
+
})) : (type || item.type) === _groupType["default"].radio ? /*#__PURE__*/_react["default"].createElement(_Radio.Radio, (0, _extends2["default"])({}, item, {
|
|
168
|
+
isChecked: (item === null || item === void 0 ? void 0 : item.isChecked) || (0, _groupFilterConstants.isChecked)((groups === null || groups === void 0 ? void 0 : groups.value) || groupKey, (item === null || item === void 0 ? void 0 : item.value) || key, item === null || item === void 0 ? void 0 : item.id, item === null || item === void 0 ? void 0 : item.tagValue, stateSelected, selected) || false,
|
|
169
|
+
onChange: function onChange(value, event) {
|
|
170
|
+
var _item$onChange2;
|
|
171
|
+
|
|
172
|
+
item === null || item === void 0 ? void 0 : (_item$onChange2 = item.onChange) === null || _item$onChange2 === void 0 ? void 0 : _item$onChange2.call(item, value, event);
|
|
173
|
+
},
|
|
174
|
+
value: (item === null || item === void 0 ? void 0 : item.value) || key,
|
|
175
|
+
name: (item === null || item === void 0 ? void 0 : item.name) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key),
|
|
176
|
+
label: (item === null || item === void 0 ? void 0 : item.label) || '',
|
|
177
|
+
id: (item === null || item === void 0 ? void 0 : item.id) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key)
|
|
178
|
+
})) : (type || item.type) === _groupType["default"].button ? /*#__PURE__*/_react["default"].createElement(_Button.Button, (0, _extends2["default"])({}, item, {
|
|
179
|
+
className: "pf-c-select__option-button ".concat((item === null || item === void 0 ? void 0 : item.className) || ''),
|
|
180
|
+
variant: item === null || item === void 0 ? void 0 : item.variant,
|
|
181
|
+
onClick: item.onClick
|
|
182
|
+
}), item === null || item === void 0 ? void 0 : item.label) : (item === null || item === void 0 ? void 0 : item.label) || '');
|
|
183
|
+
};
|
|
132
184
|
|
|
133
185
|
var renderItems = function renderItems(items, type) {
|
|
134
186
|
var groupKey = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
|
|
135
187
|
return items.map(function (item, key) {
|
|
136
|
-
return /*#__PURE__*/_react["default"].createElement(
|
|
137
|
-
itemId: key,
|
|
188
|
+
return (type || item.type) === _groupType["default"].treeView ? /*#__PURE__*/_react["default"].createElement("div", {
|
|
138
189
|
key: "".concat(item.value, "-").concat(key, "-item"),
|
|
139
|
-
className:
|
|
140
|
-
|
|
141
|
-
item.onClick();
|
|
142
|
-
e.preventDefault();
|
|
143
|
-
} : undefined
|
|
144
|
-
}, (type || item.type) === _groupType["default"].checkbox ? /*#__PURE__*/_react["default"].createElement(_Checkbox.Checkbox, (0, _extends2["default"])({}, item, {
|
|
145
|
-
label: item === null || item === void 0 ? void 0 : item.label,
|
|
146
|
-
isChecked: (item === null || item === void 0 ? void 0 : item.isChecked) || (0, _groupFilterConstants.isChecked)(groupKey, (item === null || item === void 0 ? void 0 : item.value) || key, item === null || item === void 0 ? void 0 : item.id, item === null || item === void 0 ? void 0 : item.tagValue, stateSelected, selected) || false,
|
|
147
|
-
onChange: function onChange(value, event) {
|
|
148
|
-
var _item$onChange;
|
|
149
|
-
|
|
150
|
-
item === null || item === void 0 ? void 0 : (_item$onChange = item.onChange) === null || _item$onChange === void 0 ? void 0 : _item$onChange.call(item, value, event);
|
|
151
|
-
},
|
|
152
|
-
onClick: item.onClick ? function (e) {
|
|
153
|
-
item.onClick();
|
|
154
|
-
e.stopPropagation();
|
|
155
|
-
} : undefined,
|
|
156
|
-
name: (item === null || item === void 0 ? void 0 : item.name) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key),
|
|
157
|
-
id: (item === null || item === void 0 ? void 0 : item.id) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key)
|
|
158
|
-
})) : (type || item.type) === _groupType["default"].radio ? /*#__PURE__*/_react["default"].createElement(_Radio.Radio, (0, _extends2["default"])({}, item, {
|
|
159
|
-
isChecked: (item === null || item === void 0 ? void 0 : item.isChecked) || (0, _groupFilterConstants.isChecked)((groups === null || groups === void 0 ? void 0 : groups.value) || groupKey, (item === null || item === void 0 ? void 0 : item.value) || key, item === null || item === void 0 ? void 0 : item.id, item === null || item === void 0 ? void 0 : item.tagValue, stateSelected, selected) || false,
|
|
160
|
-
onChange: function onChange(value, event) {
|
|
161
|
-
var _item$onChange2;
|
|
162
|
-
|
|
163
|
-
item === null || item === void 0 ? void 0 : (_item$onChange2 = item.onChange) === null || _item$onChange2 === void 0 ? void 0 : _item$onChange2.call(item, value, event);
|
|
164
|
-
},
|
|
165
|
-
value: (item === null || item === void 0 ? void 0 : item.value) || key,
|
|
166
|
-
name: (item === null || item === void 0 ? void 0 : item.name) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key),
|
|
167
|
-
label: (item === null || item === void 0 ? void 0 : item.label) || '',
|
|
168
|
-
id: (item === null || item === void 0 ? void 0 : item.id) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key)
|
|
169
|
-
})) : (type || item.type) === _groupType["default"].button ? /*#__PURE__*/_react["default"].createElement(_Button.Button, (0, _extends2["default"])({}, item, {
|
|
170
|
-
className: "pf-c-select__option-button ".concat((item === null || item === void 0 ? void 0 : item.className) || ''),
|
|
171
|
-
variant: item === null || item === void 0 ? void 0 : item.variant,
|
|
172
|
-
onClick: item.onClick
|
|
173
|
-
}), item === null || item === void 0 ? void 0 : item.label) : (item === null || item === void 0 ? void 0 : item.label) || '');
|
|
190
|
+
className: "ins-c-tree-view"
|
|
191
|
+
}, renderItem(item, key, type, groupKey)) : renderItem(item, key, type, groupKey);
|
|
174
192
|
});
|
|
175
193
|
};
|
|
176
194
|
|
|
@@ -199,7 +217,7 @@ var Group = function Group(_ref) {
|
|
|
199
217
|
className: (0, _classnames["default"])('ins-c-menu__scrollable', className, {
|
|
200
218
|
'pf-m-expanded': isOpen
|
|
201
219
|
})
|
|
202
|
-
}, /*#__PURE__*/_react["default"].createElement(_MenuContent.MenuContent, null, /*#__PURE__*/_react["default"].createElement(_MenuList.MenuList, null, menuItems.length > 0 && /*#__PURE__*/_react["default"].createElement(_MenuGroup.MenuGroup, null, renderItems(
|
|
220
|
+
}, /*#__PURE__*/_react["default"].createElement(_MenuContent.MenuContent, null, /*#__PURE__*/_react["default"].createElement(_MenuList.MenuList, null, menuItems.length > 0 && /*#__PURE__*/_react["default"].createElement(_MenuGroup.MenuGroup, null, renderItems(menuItems)), groupMenuItems.map(function (group, groupKey) {
|
|
203
221
|
return /*#__PURE__*/_react["default"].createElement(_MenuGroup.MenuGroup, {
|
|
204
222
|
label: group.label,
|
|
205
223
|
key: "".concat(group.label, "-").concat(groupKey, "-group")
|
|
@@ -51,9 +51,6 @@
|
|
|
51
51
|
.ins-c-conditional-filter .pf-c-select__toggle-badge {
|
|
52
52
|
display: none;
|
|
53
53
|
}
|
|
54
|
-
.ins-c-conditional-filter .pf-c-menu-toggle {
|
|
55
|
-
padding: 0;
|
|
56
|
-
}
|
|
57
54
|
.ins-c-conditional-filter .pf-c-menu-toggle .pf-c-menu-toggle__text {
|
|
58
55
|
flex: 1;
|
|
59
56
|
}
|
|
@@ -64,6 +61,7 @@
|
|
|
64
61
|
.pf-c-menu.ins-c-menu__scrollable {
|
|
65
62
|
max-height: 416px;
|
|
66
63
|
overflow-y: auto;
|
|
64
|
+
min-width: initial;
|
|
67
65
|
}
|
|
68
66
|
.pf-c-menu .ins-c-menu__show--more {
|
|
69
67
|
background: none;
|
|
@@ -61,7 +61,6 @@
|
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
.pf-c-menu-toggle {
|
|
64
|
-
padding: 0;
|
|
65
64
|
.pf-c-menu-toggle__text {
|
|
66
65
|
flex: 1;
|
|
67
66
|
input { border: none; }
|
|
@@ -73,6 +72,7 @@
|
|
|
73
72
|
&.ins-c-menu__scrollable {
|
|
74
73
|
max-height: 416px;
|
|
75
74
|
overflow-y: auto;
|
|
75
|
+
min-width: initial;
|
|
76
76
|
}
|
|
77
77
|
.ins-c-menu__show--more {
|
|
78
78
|
background: none;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
--ins-color--orange: #ec7a08;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.ins-c-tree-view .pf-c-tree-view {
|
|
6
|
+
padding: 0;
|
|
7
|
+
}
|
|
8
|
+
.ins-c-tree-view .pf-c-menu__list-item {
|
|
9
|
+
background: none;
|
|
10
|
+
}
|
|
11
|
+
.ins-c-tree-view .pf-c-menu__list-item .pf-c-menu__item {
|
|
12
|
+
padding: 0;
|
|
13
|
+
}
|
|
14
|
+
.ins-c-tree-view .pf-c-menu__list-item .pf-c-menu__item .pf-c-tree-view__content {
|
|
15
|
+
background: none;
|
|
16
|
+
}
|
|
17
|
+
.ins-c-tree-view .pf-c-menu__list-item .pf-c-menu__item .pf-c-tree-view__node {
|
|
18
|
+
background: none;
|
|
19
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
@import '~@redhat-cloud-services/frontend-components-utilities/styles/_all.scss';
|
|
2
|
+
|
|
3
|
+
.ins-c-tree-view {
|
|
4
|
+
.pf-c-tree-view {
|
|
5
|
+
padding: 0;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.pf-c-menu__list-item {
|
|
9
|
+
background: none;
|
|
10
|
+
|
|
11
|
+
.pf-c-menu__item {
|
|
12
|
+
padding: 0;
|
|
13
|
+
|
|
14
|
+
.pf-c-tree-view__content {
|
|
15
|
+
background: none;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.pf-c-tree-view__node {
|
|
19
|
+
background: none;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.calculateSelected = exports.getGroupMenuItems = exports.getMenuItems = exports.isChecked = void 0;
|
|
8
|
+
exports.onTreeCheck = exports.mapTree = exports.calculateSelected = exports.getGroupMenuItems = exports.convertTreeItem = exports.getMenuItems = exports.isChecked = void 0;
|
|
9
9
|
|
|
10
10
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
11
11
|
|
|
@@ -56,10 +56,10 @@ var getMenuItems = function getMenuItems(items, onChange, calculateSelected, gro
|
|
|
56
56
|
return _objectSpread(_objectSpread({}, item), {}, {
|
|
57
57
|
key: item.id || item.value || index,
|
|
58
58
|
value: String(item.value || item.id || index),
|
|
59
|
-
onClick: function onClick(event) {
|
|
59
|
+
onClick: function onClick(event, treeViewItem, checked) {
|
|
60
60
|
var _item$onClick;
|
|
61
61
|
|
|
62
|
-
var params = [event, calculateSelected(groupType || item.type, groupValue, item.value), _objectSpread({
|
|
62
|
+
var params = [event, calculateSelected(groupType || item.type, groupValue, (groupType || item.type) === _groupType["default"].treeView ? treeViewItem : item.value, checked), _objectSpread({
|
|
63
63
|
value: groupValue,
|
|
64
64
|
label: groupLabel || item.label,
|
|
65
65
|
id: groupId || item.id,
|
|
@@ -79,6 +79,20 @@ var getMenuItems = function getMenuItems(items, onChange, calculateSelected, gro
|
|
|
79
79
|
|
|
80
80
|
exports.getMenuItems = getMenuItems;
|
|
81
81
|
|
|
82
|
+
var convertTreeItem = function convertTreeItem(item) {
|
|
83
|
+
item.id = item.id || item.value;
|
|
84
|
+
item.name = item.label || item.name;
|
|
85
|
+
item.value = item.id;
|
|
86
|
+
item.label = item.name;
|
|
87
|
+
return item.children ? _objectSpread(_objectSpread({}, item), {}, {
|
|
88
|
+
children: item.children.map(function (child) {
|
|
89
|
+
return convertTreeItem(child);
|
|
90
|
+
})
|
|
91
|
+
}) : item;
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
exports.convertTreeItem = convertTreeItem;
|
|
95
|
+
|
|
82
96
|
var getGroupMenuItems = function getGroupMenuItems(groups, onChange, calculateSelected) {
|
|
83
97
|
var result = groups.map(function (_ref2) {
|
|
84
98
|
var value = _ref2.value,
|
|
@@ -87,11 +101,14 @@ var getGroupMenuItems = function getGroupMenuItems(groups, onChange, calculateSe
|
|
|
87
101
|
type = _ref2.type,
|
|
88
102
|
items = _ref2.items,
|
|
89
103
|
group = (0, _objectWithoutProperties2["default"])(_ref2, ["value", "label", "id", "type", "items"]);
|
|
104
|
+
var converted = type === _groupType["default"].treeView ? items.map(function (item) {
|
|
105
|
+
return convertTreeItem(item);
|
|
106
|
+
}) : items;
|
|
90
107
|
return {
|
|
91
108
|
label: label,
|
|
92
109
|
value: value,
|
|
93
110
|
type: type,
|
|
94
|
-
items: getMenuItems(
|
|
111
|
+
items: getMenuItems(converted, onChange, calculateSelected, type, value, label, id, group)
|
|
95
112
|
};
|
|
96
113
|
});
|
|
97
114
|
return result.filter(function (_ref3) {
|
|
@@ -105,19 +122,89 @@ var getGroupMenuItems = function getGroupMenuItems(groups, onChange, calculateSe
|
|
|
105
122
|
exports.getGroupMenuItems = getGroupMenuItems;
|
|
106
123
|
|
|
107
124
|
var calculateSelected = function calculateSelected(selectedTags) {
|
|
108
|
-
return function (type, groupKey,
|
|
109
|
-
var activeGroup = selectedTags[groupKey];
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
return _objectSpread(_objectSpread({}, selectedTags), {}, (0, _defineProperty2["default"])({}, groupKey, _objectSpread(_objectSpread({}, activeGroup || {}), {}, (0, _defineProperty2["default"])({}, itemKey, false))));
|
|
125
|
+
return function (type, groupKey, value, checked) {
|
|
126
|
+
var activeGroup = selectedTags === null || selectedTags === void 0 ? void 0 : selectedTags[groupKey];
|
|
127
|
+
var children = type === _groupType["default"].treeView && [value].reduce(function iter(r, a) {
|
|
128
|
+
if (Array.isArray(a.children)) {
|
|
129
|
+
return a.children.reduce(iter, r);
|
|
114
130
|
}
|
|
115
131
|
|
|
116
|
-
|
|
132
|
+
r.push(a);
|
|
133
|
+
return r;
|
|
134
|
+
}, []);
|
|
135
|
+
var itemKeys = type === _groupType["default"].treeView ? children.map(function (item) {
|
|
136
|
+
return item.id;
|
|
137
|
+
}) : [value];
|
|
138
|
+
|
|
139
|
+
if (activeGroup) {
|
|
140
|
+
var result = selectedTags;
|
|
141
|
+
itemKeys.map(function (itemKey) {
|
|
142
|
+
var activeGroup = result[groupKey];
|
|
143
|
+
|
|
144
|
+
if (type !== _groupType["default"].radio && (activeGroup[itemKey] instanceof Object ? activeGroup[itemKey].isSelected : Boolean(activeGroup[itemKey]))) {
|
|
145
|
+
result = _objectSpread(_objectSpread({}, result), {}, (0, _defineProperty2["default"])({}, groupKey, _objectSpread(_objectSpread({}, activeGroup || {}), {}, (0, _defineProperty2["default"])({}, itemKey, type === _groupType["default"].treeView && checked))));
|
|
146
|
+
} else {
|
|
147
|
+
result = _objectSpread(_objectSpread({}, result), {}, (0, _defineProperty2["default"])({}, groupKey, _objectSpread(_objectSpread({}, type !== _groupType["default"].radio ? activeGroup || {} : {}), {}, (0, _defineProperty2["default"])({}, itemKey, true))));
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
return result;
|
|
117
151
|
}
|
|
118
152
|
|
|
119
|
-
return
|
|
153
|
+
return itemKeys.reduce(function (acc, curr) {
|
|
154
|
+
return _objectSpread(_objectSpread({}, acc), {}, (0, _defineProperty2["default"])({}, groupKey, _objectSpread(_objectSpread({}, acc === null || acc === void 0 ? void 0 : acc[groupKey]), {}, (0, _defineProperty2["default"])({}, curr, true))));
|
|
155
|
+
}, selectedTags);
|
|
156
|
+
};
|
|
157
|
+
};
|
|
158
|
+
|
|
159
|
+
exports.calculateSelected = calculateSelected;
|
|
160
|
+
|
|
161
|
+
var areAllChildrenChecked = function areAllChildrenChecked(dataItem, groupKey, stateSelected, selected) {
|
|
162
|
+
return dataItem.children ? dataItem.children.every(function (child) {
|
|
163
|
+
return areAllChildrenChecked(child, groupKey, stateSelected, selected);
|
|
164
|
+
}) : isChecked(groupKey, dataItem.id, undefined, undefined, stateSelected, selected);
|
|
165
|
+
};
|
|
166
|
+
|
|
167
|
+
var areSomeChildrenChecked = function areSomeChildrenChecked(dataItem, groupKey, stateSelected, selected) {
|
|
168
|
+
return dataItem.children ? dataItem.children.some(function (child) {
|
|
169
|
+
return areSomeChildrenChecked(child, groupKey, stateSelected, selected);
|
|
170
|
+
}) : isChecked(groupKey, dataItem.id, undefined, undefined, stateSelected, selected);
|
|
171
|
+
};
|
|
172
|
+
|
|
173
|
+
var mapTree = function mapTree(item, groupKey, stateSelected, selected) {
|
|
174
|
+
var hasCheck = areAllChildrenChecked(item, groupKey, stateSelected, selected);
|
|
175
|
+
item.checkProps = {
|
|
176
|
+
checked: false
|
|
120
177
|
};
|
|
178
|
+
|
|
179
|
+
if (hasCheck) {
|
|
180
|
+
item.checkProps.checked = true;
|
|
181
|
+
} else {
|
|
182
|
+
var hasPartialCheck = areSomeChildrenChecked(item, groupKey, stateSelected, selected);
|
|
183
|
+
|
|
184
|
+
if (hasPartialCheck) {
|
|
185
|
+
item.checkProps = {
|
|
186
|
+
checked: null
|
|
187
|
+
};
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
if (item.children) {
|
|
192
|
+
return _objectSpread(_objectSpread({}, item), {}, {
|
|
193
|
+
children: item.children.map(function (child) {
|
|
194
|
+
return mapTree(child, groupKey, stateSelected, selected);
|
|
195
|
+
})
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
return item;
|
|
200
|
+
};
|
|
201
|
+
|
|
202
|
+
exports.mapTree = mapTree;
|
|
203
|
+
|
|
204
|
+
var onTreeCheck = function onTreeCheck(e, treeViewItem, tree) {
|
|
205
|
+
var _e$target;
|
|
206
|
+
|
|
207
|
+
return tree[0].onClick(e, treeViewItem, e === null || e === void 0 ? void 0 : (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.checked);
|
|
121
208
|
};
|
|
122
209
|
|
|
123
|
-
exports.
|
|
210
|
+
exports.onTreeCheck = onTreeCheck;
|
package/Skeleton/Skeleton.js
CHANGED
|
@@ -17,6 +17,8 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
17
17
|
|
|
18
18
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
19
19
|
|
|
20
|
+
var _Skeleton = require("@patternfly/react-core/dist/js/components/Skeleton/Skeleton.js");
|
|
21
|
+
|
|
20
22
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
21
23
|
|
|
22
24
|
require("./skeleton.css");
|
|
@@ -34,10 +36,9 @@ var Skeleton = function Skeleton(_ref) {
|
|
|
34
36
|
isDark = _ref.isDark,
|
|
35
37
|
className = _ref.className,
|
|
36
38
|
props = (0, _objectWithoutProperties2["default"])(_ref, ["size", "isDark", "className"]);
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}, props), "\xA0");
|
|
39
|
+
return /*#__PURE__*/_react["default"].createElement(_Skeleton.Skeleton, (0, _extends2["default"])({
|
|
40
|
+
className: (0, _classnames["default"])('ins-c-skeleton', "ins-c-skeleton__".concat(size), (0, _defineProperty2["default"])({}, "ins-m-dark", isDark), className)
|
|
41
|
+
}, props));
|
|
41
42
|
};
|
|
42
43
|
|
|
43
44
|
var _default = Skeleton;
|
package/Skeleton/skeleton.css
CHANGED
|
@@ -1,45 +1,24 @@
|
|
|
1
|
-
:root {
|
|
2
|
-
--ins-color--orange: #ec7a08;
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
.ins-c-skeleton {
|
|
6
|
-
animation-duration: 1s;
|
|
7
|
-
animation-iteration-count: infinite;
|
|
8
|
-
animation-name: skeletonGradient;
|
|
9
|
-
animation-timing-function: linear;
|
|
10
|
-
background: var(--pf-global--disabled-color--200);
|
|
11
|
-
background: linear-gradient(to right, #f5f5f5 10%, #e8e8e8 18%, #f5f5f5 33%);
|
|
12
|
-
background-size: 1000px 50px;
|
|
13
|
-
background-size: 62.5rem 3.125rem;
|
|
14
|
-
border-radius: 5px;
|
|
15
|
-
border-radius: 0.3125rem;
|
|
16
|
-
}
|
|
17
1
|
.ins-c-skeleton__xs {
|
|
18
|
-
width: 16
|
|
2
|
+
width: 16% !important;
|
|
19
3
|
}
|
|
20
4
|
.ins-c-skeleton__sm {
|
|
21
|
-
width: 33
|
|
5
|
+
width: 33% !important;
|
|
22
6
|
}
|
|
23
7
|
.ins-c-skeleton__md {
|
|
24
|
-
width: 66
|
|
8
|
+
width: 66% !important;
|
|
25
9
|
}
|
|
26
10
|
.ins-c-skeleton__lg {
|
|
27
|
-
width: 100
|
|
11
|
+
width: 100% !important;
|
|
28
12
|
}
|
|
29
13
|
.ins-c-skeleton.ins-m-dark {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
100% {
|
|
42
|
-
background-position: 500px 0px;
|
|
43
|
-
background-position: 31.25rem 0rem;
|
|
44
|
-
}
|
|
14
|
+
--pf-c-skeleton--BackgroundColor: var(--pf-global--palette--black-600);
|
|
15
|
+
--pf-c-skeleton--after--LinearGradientColorStop1: var(
|
|
16
|
+
--pf-global--palette--black-600
|
|
17
|
+
);
|
|
18
|
+
--pf-c-skeleton--after--LinearGradientColorStop2: var(
|
|
19
|
+
--pf-global--palette--black-500
|
|
20
|
+
);
|
|
21
|
+
--pf-c-skeleton--after--LinearGradientColorStop3: var(
|
|
22
|
+
--pf-global--palette--black-600
|
|
23
|
+
);
|
|
45
24
|
}
|
package/Skeleton/skeleton.scss
CHANGED
|
@@ -1,34 +1,18 @@
|
|
|
1
|
-
@import '~@redhat-cloud-services/frontend-components-utilities/styles/_all.scss';
|
|
2
|
-
|
|
3
|
-
$skeleton-base-color: #f5f5f5;
|
|
4
|
-
$skeleton-dark-color: #e8e8e8;
|
|
5
|
-
|
|
6
|
-
$ins-color--dark: #3c3c3c;
|
|
7
|
-
$invert-skeleton-base-color: #3c3c3c;
|
|
8
|
-
$invert-skeleton-dark-color: #484848;
|
|
9
|
-
|
|
10
|
-
|
|
11
1
|
.ins-c-skeleton {
|
|
12
|
-
&__xs { width: 16
|
|
13
|
-
&__sm { width: 33
|
|
14
|
-
&__md { width: 66
|
|
15
|
-
&__lg { width: 100
|
|
16
|
-
animation-duration: 1s;
|
|
17
|
-
animation-iteration-count: infinite;
|
|
18
|
-
animation-name: skeletonGradient;
|
|
19
|
-
animation-timing-function: linear;
|
|
20
|
-
background: $ins-color--gray;
|
|
21
|
-
background: linear-gradient(to right, $skeleton-base-color 10%, $skeleton-dark-color 18%, $skeleton-base-color 33%);
|
|
22
|
-
@include rem('background-size', 1000px 50px);
|
|
23
|
-
@include rem('border-radius', 5px);
|
|
2
|
+
&__xs { width: 16% !important; }
|
|
3
|
+
&__sm { width: 33% !important; }
|
|
4
|
+
&__md { width: 66% !important; }
|
|
5
|
+
&__lg { width: 100% !important; }
|
|
24
6
|
&.ins-m-dark {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
7
|
+
--pf-c-skeleton--BackgroundColor: var(--pf-global--palette--black-600);
|
|
8
|
+
--pf-c-skeleton--after--LinearGradientColorStop1: var(
|
|
9
|
+
--pf-global--palette--black-600
|
|
10
|
+
);
|
|
11
|
+
--pf-c-skeleton--after--LinearGradientColorStop2: var(
|
|
12
|
+
--pf-global--palette--black-500
|
|
13
|
+
);
|
|
14
|
+
--pf-c-skeleton--after--LinearGradientColorStop3: var(
|
|
15
|
+
--pf-global--palette--black-600
|
|
16
|
+
);
|
|
28
17
|
}
|
|
29
18
|
}
|
|
30
|
-
|
|
31
|
-
@keyframes skeletonGradient{
|
|
32
|
-
0% { @include rem('background-position', -500px 0); }
|
|
33
|
-
100%{ @include rem('background-position', 500px 0); }
|
|
34
|
-
}
|
|
@@ -29,8 +29,12 @@ var _reactTable = require("@patternfly/react-table");
|
|
|
29
29
|
|
|
30
30
|
var _Skeleton = require("../Skeleton");
|
|
31
31
|
|
|
32
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
33
|
+
|
|
32
34
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
33
35
|
|
|
36
|
+
require("./SkeletonTable.css");
|
|
37
|
+
|
|
34
38
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
35
39
|
|
|
36
40
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
@@ -51,29 +55,33 @@ var SkeletonTable = /*#__PURE__*/function (_React$Component) {
|
|
|
51
55
|
|
|
52
56
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
53
57
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "createColumns", function () {
|
|
54
|
-
var
|
|
58
|
+
var _this$props = _this.props,
|
|
59
|
+
colSize = _this$props.colSize,
|
|
60
|
+
isDark = _this$props.isDark;
|
|
55
61
|
return (0, _toConsumableArray2["default"])(Array(colSize)).map(function () {
|
|
56
62
|
return {
|
|
57
63
|
title: /*#__PURE__*/_react["default"].createElement(_Skeleton.Skeleton, {
|
|
64
|
+
isDark: isDark,
|
|
58
65
|
size: _Skeleton.SkeletonSize.sm
|
|
59
66
|
})
|
|
60
67
|
};
|
|
61
68
|
});
|
|
62
69
|
});
|
|
63
70
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "getColumns", function () {
|
|
64
|
-
var _this$
|
|
65
|
-
paddingColumnSize = _this$
|
|
66
|
-
columns = _this$
|
|
71
|
+
var _this$props2 = _this.props,
|
|
72
|
+
paddingColumnSize = _this$props2.paddingColumnSize,
|
|
73
|
+
columns = _this$props2.columns;
|
|
67
74
|
return _this.newArray(paddingColumnSize).map(function () {
|
|
68
75
|
return '';
|
|
69
76
|
}).concat(columns || _this.createColumns());
|
|
70
77
|
});
|
|
71
78
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "createRows", function () {
|
|
72
|
-
var _this$
|
|
73
|
-
colSize = _this$
|
|
74
|
-
rowSize = _this$
|
|
75
|
-
columns = _this$
|
|
76
|
-
paddingColumnSize = _this$
|
|
79
|
+
var _this$props3 = _this.props,
|
|
80
|
+
colSize = _this$props3.colSize,
|
|
81
|
+
rowSize = _this$props3.rowSize,
|
|
82
|
+
columns = _this$props3.columns,
|
|
83
|
+
paddingColumnSize = _this$props3.paddingColumnSize,
|
|
84
|
+
isDark = _this$props3.isDark;
|
|
77
85
|
var numberOfCols = columns ? columns.length : colSize;
|
|
78
86
|
return _this.newArray(rowSize).map(function () {
|
|
79
87
|
return {
|
|
@@ -83,6 +91,7 @@ var SkeletonTable = /*#__PURE__*/function (_React$Component) {
|
|
|
83
91
|
}).concat(_this.newArray(numberOfCols).map(function () {
|
|
84
92
|
return {
|
|
85
93
|
title: /*#__PURE__*/_react["default"].createElement(_Skeleton.Skeleton, {
|
|
94
|
+
isDark: isDark,
|
|
86
95
|
size: _Skeleton.SkeletonSize.md
|
|
87
96
|
})
|
|
88
97
|
};
|
|
@@ -103,12 +112,16 @@ var SkeletonTable = /*#__PURE__*/function (_React$Component) {
|
|
|
103
112
|
(0, _createClass2["default"])(SkeletonTable, [{
|
|
104
113
|
key: "render",
|
|
105
114
|
value: function render() {
|
|
106
|
-
var _this$
|
|
107
|
-
canSelectAll = _this$
|
|
108
|
-
isSelectable = _this$
|
|
109
|
-
sortBy = _this$
|
|
110
|
-
variant = _this$
|
|
115
|
+
var _this$props4 = this.props,
|
|
116
|
+
canSelectAll = _this$props4.canSelectAll,
|
|
117
|
+
isSelectable = _this$props4.isSelectable,
|
|
118
|
+
sortBy = _this$props4.sortBy,
|
|
119
|
+
variant = _this$props4.variant,
|
|
120
|
+
isDark = _this$props4.isDark;
|
|
111
121
|
return /*#__PURE__*/_react["default"].createElement(_reactTable.Table, {
|
|
122
|
+
className: (0, _classnames["default"])({
|
|
123
|
+
'ins-c-skeleton-table__dark': isDark
|
|
124
|
+
}),
|
|
112
125
|
cells: this.getColumns(),
|
|
113
126
|
rows: this.createRows(),
|
|
114
127
|
sortBy: sortBy,
|
|
@@ -135,7 +148,8 @@ SkeletonTable.propTypes = {
|
|
|
135
148
|
isSelectable: _propTypes["default"].bool,
|
|
136
149
|
canSelectAll: _propTypes["default"].bool,
|
|
137
150
|
hasRadio: _propTypes["default"].bool,
|
|
138
|
-
variant: _propTypes["default"].string
|
|
151
|
+
variant: _propTypes["default"].string,
|
|
152
|
+
isDark: _propTypes["default"].bool
|
|
139
153
|
};
|
|
140
154
|
SkeletonTable.defaultProps = {
|
|
141
155
|
rowSize: 0,
|
|
@@ -143,7 +157,8 @@ SkeletonTable.defaultProps = {
|
|
|
143
157
|
canSelectAll: false,
|
|
144
158
|
isSelectable: false,
|
|
145
159
|
hasRadio: false,
|
|
146
|
-
variant: null
|
|
160
|
+
variant: null,
|
|
161
|
+
isDark: false
|
|
147
162
|
};
|
|
148
163
|
var _default = SkeletonTable;
|
|
149
164
|
exports["default"] = _default;
|
|
@@ -116,7 +116,8 @@ var ConditionalFilter = /*#__PURE__*/function (_Component) {
|
|
|
116
116
|
placeholder = _this$props.placeholder,
|
|
117
117
|
hideLabel = _this$props.hideLabel,
|
|
118
118
|
isDisabled = _this$props.isDisabled,
|
|
119
|
-
|
|
119
|
+
useMobileLayout = _this$props.useMobileLayout,
|
|
120
|
+
props = _objectWithoutProperties(_this$props, ["items", "value", "onChange", "placeholder", "hideLabel", "isDisabled", "useMobileLayout"]);
|
|
120
121
|
|
|
121
122
|
var _this$state = this.state,
|
|
122
123
|
isOpen = _this$state.isOpen,
|
|
@@ -133,9 +134,9 @@ var ConditionalFilter = /*#__PURE__*/function (_Component) {
|
|
|
133
134
|
return string[0].toUpperCase() + string.substring(1);
|
|
134
135
|
};
|
|
135
136
|
|
|
136
|
-
var shouldRenderNewLayout =
|
|
137
|
+
var shouldRenderNewLayout = useMobileLayout && isMobile;
|
|
137
138
|
var Wrapper = this.getWrapper();
|
|
138
|
-
return /*#__PURE__*/React.createElement(Wrapper, null,
|
|
139
|
+
return /*#__PURE__*/React.createElement(Wrapper, null, useMobileLayout && isMobile && /*#__PURE__*/React.createElement(ToolbarGroup, {
|
|
139
140
|
className: "ins-c-conditional-filter mobile"
|
|
140
141
|
}, items.map(function (activeItem, key) {
|
|
141
142
|
var ActiveComponent = activeItem && (typeMapper[activeItem.type] || typeMapper.text);
|
|
@@ -147,7 +148,7 @@ var ConditionalFilter = /*#__PURE__*/function (_Component) {
|
|
|
147
148
|
}, activeItem.filterValues)));
|
|
148
149
|
})), !shouldRenderNewLayout && /*#__PURE__*/React.createElement(Fragment, null, !items || items && items.length <= 0 ? /*#__PURE__*/React.createElement("div", {
|
|
149
150
|
className: classNames('ins-c-conditional-filter', {
|
|
150
|
-
desktop:
|
|
151
|
+
desktop: useMobileLayout
|
|
151
152
|
})
|
|
152
153
|
}, /*#__PURE__*/React.createElement(Text, _extends({}, props, {
|
|
153
154
|
value: currentValue,
|
|
@@ -158,7 +159,7 @@ var ConditionalFilter = /*#__PURE__*/function (_Component) {
|
|
|
158
159
|
"widget-type": "InsightsInput"
|
|
159
160
|
}))) : /*#__PURE__*/React.createElement(Split, {
|
|
160
161
|
className: classNames('ins-c-conditional-filter', {
|
|
161
|
-
desktop:
|
|
162
|
+
desktop: useMobileLayout
|
|
162
163
|
})
|
|
163
164
|
}, items.length > 1 && /*#__PURE__*/React.createElement(SplitItem, null, /*#__PURE__*/React.createElement(Dropdown, {
|
|
164
165
|
className: "ins-c-conditional-filter__group",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
2
|
import _extends from "@babel/runtime/helpers/extends";
|
|
3
3
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
4
|
-
import React, {
|
|
4
|
+
import React, { useState, useRef, useEffect } from 'react';
|
|
5
5
|
import PropTypes from 'prop-types';
|
|
6
6
|
import classNames from 'classnames';
|
|
7
7
|
import { TextInput } from "@patternfly/react-core/dist/esm/components/TextInput/TextInput.js";
|
|
@@ -15,8 +15,10 @@ import { Menu } from "@patternfly/react-core/dist/esm/components/Menu/Menu.js";
|
|
|
15
15
|
import { MenuContent } from "@patternfly/react-core/dist/esm/components/Menu/MenuContent.js";
|
|
16
16
|
import { Popper } from "@patternfly/react-core/dist/esm/helpers/Popper/Popper.js";
|
|
17
17
|
import { Radio } from "@patternfly/react-core/dist/esm/components/Radio/Radio.js";
|
|
18
|
-
import {
|
|
18
|
+
import { TreeView } from "@patternfly/react-core/dist/esm/components/TreeView/TreeView.js";
|
|
19
|
+
import { isChecked, calculateSelected, getGroupMenuItems, getMenuItems, convertTreeItem, mapTree, onTreeCheck } from './groupFilterConstants';
|
|
19
20
|
import groupType from './groupType';
|
|
21
|
+
import "../../ConditionalFilter/./group-filter.css";
|
|
20
22
|
|
|
21
23
|
var Group = function Group(_ref) {
|
|
22
24
|
var placeholder = _ref.placeholder,
|
|
@@ -54,7 +56,6 @@ var Group = function Group(_ref) {
|
|
|
54
56
|
useEffect(function () {
|
|
55
57
|
setStateSelected(selected);
|
|
56
58
|
}, [selected]);
|
|
57
|
-
var calculateSelection = useCallback(calculateSelected, [stateSelected]);
|
|
58
59
|
useEffect(function () {
|
|
59
60
|
setSearchString(filterBy);
|
|
60
61
|
}, [filterBy]);
|
|
@@ -94,50 +95,65 @@ var Group = function Group(_ref) {
|
|
|
94
95
|
setIsOpen(!isOpen);
|
|
95
96
|
};
|
|
96
97
|
|
|
97
|
-
var
|
|
98
|
-
|
|
98
|
+
var menuItems = getMenuItems(items === null || items === void 0 ? void 0 : items.map(function (item) {
|
|
99
|
+
return item.type === groupType.treeView ? convertTreeItem(item) : item;
|
|
100
|
+
}), onChange, calculateSelected(selected));
|
|
101
|
+
var groupMenuItems = getGroupMenuItems(groups, onChange, calculateSelected(selected));
|
|
102
|
+
|
|
103
|
+
var renderItem = function renderItem(item, key, type, groupKey) {
|
|
104
|
+
return /*#__PURE__*/React.createElement(MenuItem, {
|
|
105
|
+
itemId: key,
|
|
106
|
+
key: "".concat(item.value, "-").concat(key, "-item"),
|
|
107
|
+
className: item === null || item === void 0 ? void 0 : item.className,
|
|
108
|
+
onClick: item.onClick && (type || item.type) === groupType.checkbox ? function (e) {
|
|
109
|
+
item.onClick();
|
|
110
|
+
e.preventDefault();
|
|
111
|
+
} : undefined
|
|
112
|
+
}, (type || item.type) === groupType.treeView ? /*#__PURE__*/React.createElement(TreeView, {
|
|
113
|
+
data: [mapTree(item, groupKey, stateSelected, selected)],
|
|
114
|
+
onCheck: function onCheck(e, value) {
|
|
115
|
+
return onTreeCheck(e, value, [item]);
|
|
116
|
+
},
|
|
117
|
+
hasChecks: true
|
|
118
|
+
}) : (type || item.type) === groupType.checkbox ? /*#__PURE__*/React.createElement(Checkbox, _extends({}, item, {
|
|
119
|
+
label: item === null || item === void 0 ? void 0 : item.label,
|
|
120
|
+
isChecked: (item === null || item === void 0 ? void 0 : item.isChecked) || isChecked(groupKey, (item === null || item === void 0 ? void 0 : item.value) || key, item === null || item === void 0 ? void 0 : item.id, item === null || item === void 0 ? void 0 : item.tagValue, stateSelected, selected) || false,
|
|
121
|
+
onChange: function onChange(value, event) {
|
|
122
|
+
var _item$onChange;
|
|
123
|
+
|
|
124
|
+
item === null || item === void 0 ? void 0 : (_item$onChange = item.onChange) === null || _item$onChange === void 0 ? void 0 : _item$onChange.call(item, value, event);
|
|
125
|
+
},
|
|
126
|
+
onClick: item.onClick ? function (e) {
|
|
127
|
+
item.onClick();
|
|
128
|
+
e.stopPropagation();
|
|
129
|
+
} : undefined,
|
|
130
|
+
name: (item === null || item === void 0 ? void 0 : item.name) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key),
|
|
131
|
+
id: (item === null || item === void 0 ? void 0 : item.id) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key)
|
|
132
|
+
})) : (type || item.type) === groupType.radio ? /*#__PURE__*/React.createElement(Radio, _extends({}, item, {
|
|
133
|
+
isChecked: (item === null || item === void 0 ? void 0 : item.isChecked) || isChecked((groups === null || groups === void 0 ? void 0 : groups.value) || groupKey, (item === null || item === void 0 ? void 0 : item.value) || key, item === null || item === void 0 ? void 0 : item.id, item === null || item === void 0 ? void 0 : item.tagValue, stateSelected, selected) || false,
|
|
134
|
+
onChange: function onChange(value, event) {
|
|
135
|
+
var _item$onChange2;
|
|
136
|
+
|
|
137
|
+
item === null || item === void 0 ? void 0 : (_item$onChange2 = item.onChange) === null || _item$onChange2 === void 0 ? void 0 : _item$onChange2.call(item, value, event);
|
|
138
|
+
},
|
|
139
|
+
value: (item === null || item === void 0 ? void 0 : item.value) || key,
|
|
140
|
+
name: (item === null || item === void 0 ? void 0 : item.name) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key),
|
|
141
|
+
label: (item === null || item === void 0 ? void 0 : item.label) || '',
|
|
142
|
+
id: (item === null || item === void 0 ? void 0 : item.id) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key)
|
|
143
|
+
})) : (type || item.type) === groupType.button ? /*#__PURE__*/React.createElement(Button, _extends({}, item, {
|
|
144
|
+
className: "pf-c-select__option-button ".concat((item === null || item === void 0 ? void 0 : item.className) || ''),
|
|
145
|
+
variant: item === null || item === void 0 ? void 0 : item.variant,
|
|
146
|
+
onClick: item.onClick
|
|
147
|
+
}), item === null || item === void 0 ? void 0 : item.label) : (item === null || item === void 0 ? void 0 : item.label) || '');
|
|
148
|
+
};
|
|
99
149
|
|
|
100
150
|
var renderItems = function renderItems(items, type) {
|
|
101
151
|
var groupKey = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
|
|
102
152
|
return items.map(function (item, key) {
|
|
103
|
-
return /*#__PURE__*/React.createElement(
|
|
104
|
-
itemId: key,
|
|
153
|
+
return (type || item.type) === groupType.treeView ? /*#__PURE__*/React.createElement("div", {
|
|
105
154
|
key: "".concat(item.value, "-").concat(key, "-item"),
|
|
106
|
-
className:
|
|
107
|
-
|
|
108
|
-
item.onClick();
|
|
109
|
-
e.preventDefault();
|
|
110
|
-
} : undefined
|
|
111
|
-
}, (type || item.type) === groupType.checkbox ? /*#__PURE__*/React.createElement(Checkbox, _extends({}, item, {
|
|
112
|
-
label: item === null || item === void 0 ? void 0 : item.label,
|
|
113
|
-
isChecked: (item === null || item === void 0 ? void 0 : item.isChecked) || isChecked(groupKey, (item === null || item === void 0 ? void 0 : item.value) || key, item === null || item === void 0 ? void 0 : item.id, item === null || item === void 0 ? void 0 : item.tagValue, stateSelected, selected) || false,
|
|
114
|
-
onChange: function onChange(value, event) {
|
|
115
|
-
var _item$onChange;
|
|
116
|
-
|
|
117
|
-
item === null || item === void 0 ? void 0 : (_item$onChange = item.onChange) === null || _item$onChange === void 0 ? void 0 : _item$onChange.call(item, value, event);
|
|
118
|
-
},
|
|
119
|
-
onClick: item.onClick ? function (e) {
|
|
120
|
-
item.onClick();
|
|
121
|
-
e.stopPropagation();
|
|
122
|
-
} : undefined,
|
|
123
|
-
name: (item === null || item === void 0 ? void 0 : item.name) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key),
|
|
124
|
-
id: (item === null || item === void 0 ? void 0 : item.id) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key)
|
|
125
|
-
})) : (type || item.type) === groupType.radio ? /*#__PURE__*/React.createElement(Radio, _extends({}, item, {
|
|
126
|
-
isChecked: (item === null || item === void 0 ? void 0 : item.isChecked) || isChecked((groups === null || groups === void 0 ? void 0 : groups.value) || groupKey, (item === null || item === void 0 ? void 0 : item.value) || key, item === null || item === void 0 ? void 0 : item.id, item === null || item === void 0 ? void 0 : item.tagValue, stateSelected, selected) || false,
|
|
127
|
-
onChange: function onChange(value, event) {
|
|
128
|
-
var _item$onChange2;
|
|
129
|
-
|
|
130
|
-
item === null || item === void 0 ? void 0 : (_item$onChange2 = item.onChange) === null || _item$onChange2 === void 0 ? void 0 : _item$onChange2.call(item, value, event);
|
|
131
|
-
},
|
|
132
|
-
value: (item === null || item === void 0 ? void 0 : item.value) || key,
|
|
133
|
-
name: (item === null || item === void 0 ? void 0 : item.name) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key),
|
|
134
|
-
label: (item === null || item === void 0 ? void 0 : item.label) || '',
|
|
135
|
-
id: (item === null || item === void 0 ? void 0 : item.id) || (item === null || item === void 0 ? void 0 : item.value) || "".concat(groupKey, "-").concat(key)
|
|
136
|
-
})) : (type || item.type) === groupType.button ? /*#__PURE__*/React.createElement(Button, _extends({}, item, {
|
|
137
|
-
className: "pf-c-select__option-button ".concat((item === null || item === void 0 ? void 0 : item.className) || ''),
|
|
138
|
-
variant: item === null || item === void 0 ? void 0 : item.variant,
|
|
139
|
-
onClick: item.onClick
|
|
140
|
-
}), item === null || item === void 0 ? void 0 : item.label) : (item === null || item === void 0 ? void 0 : item.label) || '');
|
|
155
|
+
className: "ins-c-tree-view"
|
|
156
|
+
}, renderItem(item, key, type, groupKey)) : renderItem(item, key, type, groupKey);
|
|
141
157
|
});
|
|
142
158
|
};
|
|
143
159
|
|
|
@@ -166,7 +182,7 @@ var Group = function Group(_ref) {
|
|
|
166
182
|
className: classNames('ins-c-menu__scrollable', className, {
|
|
167
183
|
'pf-m-expanded': isOpen
|
|
168
184
|
})
|
|
169
|
-
}, /*#__PURE__*/React.createElement(MenuContent, null, /*#__PURE__*/React.createElement(MenuList, null, menuItems.length > 0 && /*#__PURE__*/React.createElement(MenuGroup, null, renderItems(
|
|
185
|
+
}, /*#__PURE__*/React.createElement(MenuContent, null, /*#__PURE__*/React.createElement(MenuList, null, menuItems.length > 0 && /*#__PURE__*/React.createElement(MenuGroup, null, renderItems(menuItems)), groupMenuItems.map(function (group, groupKey) {
|
|
170
186
|
return /*#__PURE__*/React.createElement(MenuGroup, {
|
|
171
187
|
label: group.label,
|
|
172
188
|
key: "".concat(group.label, "-").concat(groupKey, "-group")
|
|
@@ -5,7 +5,7 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
5
5
|
|
|
6
6
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
7
7
|
|
|
8
|
-
import
|
|
8
|
+
import groupTypes from './groupType';
|
|
9
9
|
export var isChecked = function isChecked(groupValue, itemValue, id, tagValue, stateSelected, propSelected) {
|
|
10
10
|
var selected = _objectSpread(_objectSpread({}, propSelected), stateSelected);
|
|
11
11
|
|
|
@@ -42,10 +42,10 @@ export var getMenuItems = function getMenuItems(items, onChange, calculateSelect
|
|
|
42
42
|
return _objectSpread(_objectSpread({}, item), {}, {
|
|
43
43
|
key: item.id || item.value || index,
|
|
44
44
|
value: String(item.value || item.id || index),
|
|
45
|
-
onClick: function onClick(event) {
|
|
45
|
+
onClick: function onClick(event, treeViewItem, checked) {
|
|
46
46
|
var _item$onClick;
|
|
47
47
|
|
|
48
|
-
var params = [event, calculateSelected(groupType || item.type, groupValue, item.value), _objectSpread({
|
|
48
|
+
var params = [event, calculateSelected(groupType || item.type, groupValue, (groupType || item.type) === groupTypes.treeView ? treeViewItem : item.value, checked), _objectSpread({
|
|
49
49
|
value: groupValue,
|
|
50
50
|
label: groupLabel || item.label,
|
|
51
51
|
id: groupId || item.id,
|
|
@@ -62,6 +62,17 @@ export var getMenuItems = function getMenuItems(items, onChange, calculateSelect
|
|
|
62
62
|
return !noFilter;
|
|
63
63
|
});
|
|
64
64
|
};
|
|
65
|
+
export var convertTreeItem = function convertTreeItem(item) {
|
|
66
|
+
item.id = item.id || item.value;
|
|
67
|
+
item.name = item.label || item.name;
|
|
68
|
+
item.value = item.id;
|
|
69
|
+
item.label = item.name;
|
|
70
|
+
return item.children ? _objectSpread(_objectSpread({}, item), {}, {
|
|
71
|
+
children: item.children.map(function (child) {
|
|
72
|
+
return convertTreeItem(child);
|
|
73
|
+
})
|
|
74
|
+
}) : item;
|
|
75
|
+
};
|
|
65
76
|
export var getGroupMenuItems = function getGroupMenuItems(groups, onChange, calculateSelected) {
|
|
66
77
|
var result = groups.map(function (_ref2) {
|
|
67
78
|
var value = _ref2.value,
|
|
@@ -71,11 +82,14 @@ export var getGroupMenuItems = function getGroupMenuItems(groups, onChange, calc
|
|
|
71
82
|
items = _ref2.items,
|
|
72
83
|
group = _objectWithoutProperties(_ref2, ["value", "label", "id", "type", "items"]);
|
|
73
84
|
|
|
85
|
+
var converted = type === groupTypes.treeView ? items.map(function (item) {
|
|
86
|
+
return convertTreeItem(item);
|
|
87
|
+
}) : items;
|
|
74
88
|
return {
|
|
75
89
|
label: label,
|
|
76
90
|
value: value,
|
|
77
91
|
type: type,
|
|
78
|
-
items: getMenuItems(
|
|
92
|
+
items: getMenuItems(converted, onChange, calculateSelected, type, value, label, id, group)
|
|
79
93
|
};
|
|
80
94
|
});
|
|
81
95
|
return result.filter(function (_ref3) {
|
|
@@ -86,17 +100,82 @@ export var getGroupMenuItems = function getGroupMenuItems(groups, onChange, calc
|
|
|
86
100
|
});
|
|
87
101
|
};
|
|
88
102
|
export var calculateSelected = function calculateSelected(selectedTags) {
|
|
89
|
-
return function (type, groupKey,
|
|
90
|
-
var activeGroup = selectedTags[groupKey];
|
|
103
|
+
return function (type, groupKey, value, checked) {
|
|
104
|
+
var activeGroup = selectedTags === null || selectedTags === void 0 ? void 0 : selectedTags[groupKey];
|
|
105
|
+
var children = type === groupTypes.treeView && [value].reduce(function iter(r, a) {
|
|
106
|
+
if (Array.isArray(a.children)) {
|
|
107
|
+
return a.children.reduce(iter, r);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
r.push(a);
|
|
111
|
+
return r;
|
|
112
|
+
}, []);
|
|
113
|
+
var itemKeys = type === groupTypes.treeView ? children.map(function (item) {
|
|
114
|
+
return item.id;
|
|
115
|
+
}) : [value];
|
|
91
116
|
|
|
92
117
|
if (activeGroup) {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
118
|
+
var result = selectedTags;
|
|
119
|
+
itemKeys.map(function (itemKey) {
|
|
120
|
+
var activeGroup = result[groupKey];
|
|
96
121
|
|
|
97
|
-
|
|
122
|
+
if (type !== groupTypes.radio && (activeGroup[itemKey] instanceof Object ? activeGroup[itemKey].isSelected : Boolean(activeGroup[itemKey]))) {
|
|
123
|
+
result = _objectSpread(_objectSpread({}, result), {}, _defineProperty({}, groupKey, _objectSpread(_objectSpread({}, activeGroup || {}), {}, _defineProperty({}, itemKey, type === groupTypes.treeView && checked))));
|
|
124
|
+
} else {
|
|
125
|
+
result = _objectSpread(_objectSpread({}, result), {}, _defineProperty({}, groupKey, _objectSpread(_objectSpread({}, type !== groupTypes.radio ? activeGroup || {} : {}), {}, _defineProperty({}, itemKey, true))));
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
return result;
|
|
98
129
|
}
|
|
99
130
|
|
|
100
|
-
return
|
|
131
|
+
return itemKeys.reduce(function (acc, curr) {
|
|
132
|
+
return _objectSpread(_objectSpread({}, acc), {}, _defineProperty({}, groupKey, _objectSpread(_objectSpread({}, acc === null || acc === void 0 ? void 0 : acc[groupKey]), {}, _defineProperty({}, curr, true))));
|
|
133
|
+
}, selectedTags);
|
|
134
|
+
};
|
|
135
|
+
};
|
|
136
|
+
|
|
137
|
+
var areAllChildrenChecked = function areAllChildrenChecked(dataItem, groupKey, stateSelected, selected) {
|
|
138
|
+
return dataItem.children ? dataItem.children.every(function (child) {
|
|
139
|
+
return areAllChildrenChecked(child, groupKey, stateSelected, selected);
|
|
140
|
+
}) : isChecked(groupKey, dataItem.id, undefined, undefined, stateSelected, selected);
|
|
141
|
+
};
|
|
142
|
+
|
|
143
|
+
var areSomeChildrenChecked = function areSomeChildrenChecked(dataItem, groupKey, stateSelected, selected) {
|
|
144
|
+
return dataItem.children ? dataItem.children.some(function (child) {
|
|
145
|
+
return areSomeChildrenChecked(child, groupKey, stateSelected, selected);
|
|
146
|
+
}) : isChecked(groupKey, dataItem.id, undefined, undefined, stateSelected, selected);
|
|
147
|
+
};
|
|
148
|
+
|
|
149
|
+
export var mapTree = function mapTree(item, groupKey, stateSelected, selected) {
|
|
150
|
+
var hasCheck = areAllChildrenChecked(item, groupKey, stateSelected, selected);
|
|
151
|
+
item.checkProps = {
|
|
152
|
+
checked: false
|
|
101
153
|
};
|
|
154
|
+
|
|
155
|
+
if (hasCheck) {
|
|
156
|
+
item.checkProps.checked = true;
|
|
157
|
+
} else {
|
|
158
|
+
var hasPartialCheck = areSomeChildrenChecked(item, groupKey, stateSelected, selected);
|
|
159
|
+
|
|
160
|
+
if (hasPartialCheck) {
|
|
161
|
+
item.checkProps = {
|
|
162
|
+
checked: null
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
if (item.children) {
|
|
168
|
+
return _objectSpread(_objectSpread({}, item), {}, {
|
|
169
|
+
children: item.children.map(function (child) {
|
|
170
|
+
return mapTree(child, groupKey, stateSelected, selected);
|
|
171
|
+
})
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
return item;
|
|
176
|
+
};
|
|
177
|
+
export var onTreeCheck = function onTreeCheck(e, treeViewItem, tree) {
|
|
178
|
+
var _e$target;
|
|
179
|
+
|
|
180
|
+
return tree[0].onClick(e, treeViewItem, e === null || e === void 0 ? void 0 : (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.checked);
|
|
102
181
|
};
|
package/esm/Skeleton/Skeleton.js
CHANGED
|
@@ -3,6 +3,7 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
|
3
3
|
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
4
4
|
import React from 'react';
|
|
5
5
|
import propTypes from 'prop-types';
|
|
6
|
+
import { Skeleton as PFSkeleton } from "@patternfly/react-core/dist/esm/components/Skeleton/Skeleton.js";
|
|
6
7
|
import classNames from 'classnames';
|
|
7
8
|
export var SkeletonSize = {
|
|
8
9
|
xs: 'xs',
|
|
@@ -18,10 +19,9 @@ var Skeleton = function Skeleton(_ref) {
|
|
|
18
19
|
className = _ref.className,
|
|
19
20
|
props = _objectWithoutProperties(_ref, ["size", "isDark", "className"]);
|
|
20
21
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}, props), "\xA0");
|
|
22
|
+
return /*#__PURE__*/React.createElement(PFSkeleton, _extends({
|
|
23
|
+
className: classNames('ins-c-skeleton', "ins-c-skeleton__".concat(size), _defineProperty({}, "ins-m-dark", isDark), className)
|
|
24
|
+
}, props));
|
|
25
25
|
};
|
|
26
26
|
|
|
27
27
|
export default Skeleton;
|
|
@@ -14,7 +14,9 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
|
|
|
14
14
|
import React from 'react';
|
|
15
15
|
import { RowSelectVariant, Table, TableHeader, TableBody } from '@patternfly/react-table';
|
|
16
16
|
import { Skeleton, SkeletonSize } from '../Skeleton';
|
|
17
|
+
import classNames from 'classnames';
|
|
17
18
|
import PropTypes from 'prop-types';
|
|
19
|
+
import "../../SkeletonTable/./SkeletonTable.css";
|
|
18
20
|
|
|
19
21
|
var SkeletonTable = /*#__PURE__*/function (_React$Component) {
|
|
20
22
|
_inherits(SkeletonTable, _React$Component);
|
|
@@ -33,10 +35,13 @@ var SkeletonTable = /*#__PURE__*/function (_React$Component) {
|
|
|
33
35
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
34
36
|
|
|
35
37
|
_defineProperty(_assertThisInitialized(_this), "createColumns", function () {
|
|
36
|
-
var
|
|
38
|
+
var _this$props = _this.props,
|
|
39
|
+
colSize = _this$props.colSize,
|
|
40
|
+
isDark = _this$props.isDark;
|
|
37
41
|
return _toConsumableArray(Array(colSize)).map(function () {
|
|
38
42
|
return {
|
|
39
43
|
title: /*#__PURE__*/React.createElement(Skeleton, {
|
|
44
|
+
isDark: isDark,
|
|
40
45
|
size: SkeletonSize.sm
|
|
41
46
|
})
|
|
42
47
|
};
|
|
@@ -44,20 +49,21 @@ var SkeletonTable = /*#__PURE__*/function (_React$Component) {
|
|
|
44
49
|
});
|
|
45
50
|
|
|
46
51
|
_defineProperty(_assertThisInitialized(_this), "getColumns", function () {
|
|
47
|
-
var _this$
|
|
48
|
-
paddingColumnSize = _this$
|
|
49
|
-
columns = _this$
|
|
52
|
+
var _this$props2 = _this.props,
|
|
53
|
+
paddingColumnSize = _this$props2.paddingColumnSize,
|
|
54
|
+
columns = _this$props2.columns;
|
|
50
55
|
return _this.newArray(paddingColumnSize).map(function () {
|
|
51
56
|
return '';
|
|
52
57
|
}).concat(columns || _this.createColumns());
|
|
53
58
|
});
|
|
54
59
|
|
|
55
60
|
_defineProperty(_assertThisInitialized(_this), "createRows", function () {
|
|
56
|
-
var _this$
|
|
57
|
-
colSize = _this$
|
|
58
|
-
rowSize = _this$
|
|
59
|
-
columns = _this$
|
|
60
|
-
paddingColumnSize = _this$
|
|
61
|
+
var _this$props3 = _this.props,
|
|
62
|
+
colSize = _this$props3.colSize,
|
|
63
|
+
rowSize = _this$props3.rowSize,
|
|
64
|
+
columns = _this$props3.columns,
|
|
65
|
+
paddingColumnSize = _this$props3.paddingColumnSize,
|
|
66
|
+
isDark = _this$props3.isDark;
|
|
61
67
|
var numberOfCols = columns ? columns.length : colSize;
|
|
62
68
|
return _this.newArray(rowSize).map(function () {
|
|
63
69
|
return {
|
|
@@ -67,6 +73,7 @@ var SkeletonTable = /*#__PURE__*/function (_React$Component) {
|
|
|
67
73
|
}).concat(_this.newArray(numberOfCols).map(function () {
|
|
68
74
|
return {
|
|
69
75
|
title: /*#__PURE__*/React.createElement(Skeleton, {
|
|
76
|
+
isDark: isDark,
|
|
70
77
|
size: SkeletonSize.md
|
|
71
78
|
})
|
|
72
79
|
};
|
|
@@ -90,12 +97,16 @@ var SkeletonTable = /*#__PURE__*/function (_React$Component) {
|
|
|
90
97
|
_createClass(SkeletonTable, [{
|
|
91
98
|
key: "render",
|
|
92
99
|
value: function render() {
|
|
93
|
-
var _this$
|
|
94
|
-
canSelectAll = _this$
|
|
95
|
-
isSelectable = _this$
|
|
96
|
-
sortBy = _this$
|
|
97
|
-
variant = _this$
|
|
100
|
+
var _this$props4 = this.props,
|
|
101
|
+
canSelectAll = _this$props4.canSelectAll,
|
|
102
|
+
isSelectable = _this$props4.isSelectable,
|
|
103
|
+
sortBy = _this$props4.sortBy,
|
|
104
|
+
variant = _this$props4.variant,
|
|
105
|
+
isDark = _this$props4.isDark;
|
|
98
106
|
return /*#__PURE__*/React.createElement(Table, {
|
|
107
|
+
className: classNames({
|
|
108
|
+
'ins-c-skeleton-table__dark': isDark
|
|
109
|
+
}),
|
|
99
110
|
cells: this.getColumns(),
|
|
100
111
|
rows: this.createRows(),
|
|
101
112
|
sortBy: sortBy,
|
|
@@ -123,7 +134,8 @@ SkeletonTable.propTypes = {
|
|
|
123
134
|
isSelectable: PropTypes.bool,
|
|
124
135
|
canSelectAll: PropTypes.bool,
|
|
125
136
|
hasRadio: PropTypes.bool,
|
|
126
|
-
variant: PropTypes.string
|
|
137
|
+
variant: PropTypes.string,
|
|
138
|
+
isDark: PropTypes.bool
|
|
127
139
|
};
|
|
128
140
|
SkeletonTable.defaultProps = {
|
|
129
141
|
rowSize: 0,
|
|
@@ -131,6 +143,7 @@ SkeletonTable.defaultProps = {
|
|
|
131
143
|
canSelectAll: false,
|
|
132
144
|
isSelectable: false,
|
|
133
145
|
hasRadio: false,
|
|
134
|
-
variant: null
|
|
146
|
+
variant: null,
|
|
147
|
+
isDark: false
|
|
135
148
|
};
|
|
136
149
|
export default SkeletonTable;
|
package/index.css
CHANGED
|
@@ -122,9 +122,6 @@ i.ins-battery svg {
|
|
|
122
122
|
.ins-c-conditional-filter .pf-c-select__toggle-badge {
|
|
123
123
|
display: none;
|
|
124
124
|
}
|
|
125
|
-
.ins-c-conditional-filter .pf-c-menu-toggle {
|
|
126
|
-
padding: 0;
|
|
127
|
-
}
|
|
128
125
|
.ins-c-conditional-filter .pf-c-menu-toggle .pf-c-menu-toggle__text {
|
|
129
126
|
flex: 1;
|
|
130
127
|
}
|
|
@@ -135,6 +132,7 @@ i.ins-battery svg {
|
|
|
135
132
|
.pf-c-menu.ins-c-menu__scrollable {
|
|
136
133
|
max-height: 416px;
|
|
137
134
|
overflow-y: auto;
|
|
135
|
+
min-width: initial;
|
|
138
136
|
}
|
|
139
137
|
.pf-c-menu .ins-c-menu__show--more {
|
|
140
138
|
background: none;
|
|
@@ -1421,51 +1419,31 @@ textarea.pf-c-form-control {
|
|
|
1421
1419
|
top: 0.5rem;
|
|
1422
1420
|
}
|
|
1423
1421
|
|
|
1424
|
-
:root {
|
|
1425
|
-
--ins-color--orange: #ec7a08;
|
|
1426
|
-
}
|
|
1427
|
-
|
|
1428
|
-
.ins-c-skeleton {
|
|
1429
|
-
animation-duration: 1s;
|
|
1430
|
-
animation-iteration-count: infinite;
|
|
1431
|
-
animation-name: skeletonGradient;
|
|
1432
|
-
animation-timing-function: linear;
|
|
1433
|
-
background: var(--pf-global--disabled-color--200);
|
|
1434
|
-
background: linear-gradient(to right, #f5f5f5 10%, #e8e8e8 18%, #f5f5f5 33%);
|
|
1435
|
-
background-size: 1000px 50px;
|
|
1436
|
-
background-size: 62.5rem 3.125rem;
|
|
1437
|
-
border-radius: 5px;
|
|
1438
|
-
border-radius: 0.3125rem;
|
|
1439
|
-
}
|
|
1440
1422
|
.ins-c-skeleton__xs {
|
|
1441
|
-
width: 16
|
|
1423
|
+
width: 16% !important;
|
|
1442
1424
|
}
|
|
1443
1425
|
.ins-c-skeleton__sm {
|
|
1444
|
-
width: 33
|
|
1426
|
+
width: 33% !important;
|
|
1445
1427
|
}
|
|
1446
1428
|
.ins-c-skeleton__md {
|
|
1447
|
-
width: 66
|
|
1429
|
+
width: 66% !important;
|
|
1448
1430
|
}
|
|
1449
1431
|
.ins-c-skeleton__lg {
|
|
1450
|
-
width: 100
|
|
1432
|
+
width: 100% !important;
|
|
1451
1433
|
}
|
|
1452
1434
|
.ins-c-skeleton.ins-m-dark {
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1435
|
+
--pf-c-skeleton--BackgroundColor: var(--pf-global--palette--black-600);
|
|
1436
|
+
--pf-c-skeleton--after--LinearGradientColorStop1: var(
|
|
1437
|
+
--pf-global--palette--black-600
|
|
1438
|
+
);
|
|
1439
|
+
--pf-c-skeleton--after--LinearGradientColorStop2: var(
|
|
1440
|
+
--pf-global--palette--black-500
|
|
1441
|
+
);
|
|
1442
|
+
--pf-c-skeleton--after--LinearGradientColorStop3: var(
|
|
1443
|
+
--pf-global--palette--black-600
|
|
1444
|
+
);
|
|
1457
1445
|
}
|
|
1458
1446
|
|
|
1459
|
-
@keyframes skeletonGradient {
|
|
1460
|
-
0% {
|
|
1461
|
-
background-position: -500px 0px;
|
|
1462
|
-
background-position: -31.25rem 0rem;
|
|
1463
|
-
}
|
|
1464
|
-
100% {
|
|
1465
|
-
background-position: 500px 0px;
|
|
1466
|
-
background-position: 31.25rem 0rem;
|
|
1467
|
-
}
|
|
1468
|
-
}
|
|
1469
1447
|
:root {
|
|
1470
1448
|
--ins-color--orange: #ec7a08;
|
|
1471
1449
|
}
|