@redhat-cloud-services/frontend-components 3.4.3 → 3.4.7
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 -1
- package/ConditionalFilter/GroupFilter.js +8 -9
- package/ConditionalFilter/conditional-filter.css +5 -1
- package/ConditionalFilter/conditional-filter.scss +5 -1
- package/esm/ConditionalFilter/ConditionalFilter.js +6 -1
- package/esm/ConditionalFilter/GroupFilter.js +8 -9
- package/index.css +5 -1
- package/package.json +1 -1
|
@@ -108,6 +108,7 @@ var ConditionalFilter = /*#__PURE__*/function (_Component) {
|
|
|
108
108
|
return width <= _this.breakpointConstant;
|
|
109
109
|
});
|
|
110
110
|
_this.breakpointConstant = parseInt(_global_breakpoint_md["default"].value.replace('px', ''));
|
|
111
|
+
_this.containerRef = /*#__PURE__*/_react["default"].createRef();
|
|
111
112
|
_this.state = {
|
|
112
113
|
isOpen: false,
|
|
113
114
|
stateValue: undefined,
|
|
@@ -221,10 +222,14 @@ var ConditionalFilter = /*#__PURE__*/function (_Component) {
|
|
|
221
222
|
})
|
|
222
223
|
})), ActiveComponent && /*#__PURE__*/_react["default"].createElement(_SplitItem.SplitItem, {
|
|
223
224
|
isFilled: true
|
|
225
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
226
|
+
ref: this.containerRef
|
|
224
227
|
}, /*#__PURE__*/_react["default"].createElement(ActiveComponent, (0, _extends2["default"])({}, activeItem.type !== _conditionalFilterConstants.conditionalFilterType.custom && {
|
|
225
228
|
placeholder: placeholder || activeItem.placeholder || "Filter by ".concat(activeItem.label),
|
|
226
229
|
id: activeItem.filterValues && activeItem.filterValues.id || currentValue
|
|
227
|
-
}, activeItem.filterValues
|
|
230
|
+
}, activeItem.filterValues, activeItem.type === _conditionalFilterConstants.conditionalFilterType.group && {
|
|
231
|
+
containerRef: this.containerRef.current
|
|
232
|
+
})))))));
|
|
228
233
|
}
|
|
229
234
|
}]);
|
|
230
235
|
return ConditionalFilter;
|
|
@@ -64,7 +64,8 @@ var Group = function Group(_ref) {
|
|
|
64
64
|
groups = _ref$groups === void 0 ? [] : _ref$groups,
|
|
65
65
|
onChange = _ref.onChange,
|
|
66
66
|
selected = _ref.selected,
|
|
67
|
-
isFilterable = _ref.isFilterable
|
|
67
|
+
isFilterable = _ref.isFilterable,
|
|
68
|
+
containerRef = _ref.containerRef;
|
|
68
69
|
|
|
69
70
|
var _useState = (0, _react.useState)({}),
|
|
70
71
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
@@ -123,10 +124,7 @@ var Group = function Group(_ref) {
|
|
|
123
124
|
ev.stopPropagation(); // Stop handleClickOutside from handling
|
|
124
125
|
|
|
125
126
|
ev.persist();
|
|
126
|
-
|
|
127
|
-
if (!(isOpen && toggleRef.current.contains(ev.target))) {
|
|
128
|
-
setIsOpen(!isOpen);
|
|
129
|
-
}
|
|
127
|
+
setIsOpen(!isOpen);
|
|
130
128
|
};
|
|
131
129
|
|
|
132
130
|
var groupMenuItems = (0, _groupFilterConstants.getGroupMenuItems)(groups, onChange, calculateSelection(selected));
|
|
@@ -177,6 +175,7 @@ var Group = function Group(_ref) {
|
|
|
177
175
|
};
|
|
178
176
|
|
|
179
177
|
return /*#__PURE__*/_react["default"].createElement(_Popper.Popper, {
|
|
178
|
+
appendTo: containerRef,
|
|
180
179
|
trigger: /*#__PURE__*/_react["default"].createElement(_MenuToggle.MenuToggle, {
|
|
181
180
|
ref: toggleRef,
|
|
182
181
|
onClick: onToggleClick,
|
|
@@ -195,7 +194,7 @@ var Group = function Group(_ref) {
|
|
|
195
194
|
}) : placeholder),
|
|
196
195
|
popper: /*#__PURE__*/_react["default"].createElement(_Menu.Menu, {
|
|
197
196
|
ref: menuRef,
|
|
198
|
-
className: (0, _classnames["default"])(className, {
|
|
197
|
+
className: (0, _classnames["default"])('ins-c-menu__scrollable', className, {
|
|
199
198
|
'pf-m-expanded': isOpen
|
|
200
199
|
})
|
|
201
200
|
}, /*#__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(items)), groupMenuItems.map(function (group, groupKey) {
|
|
@@ -208,8 +207,7 @@ var Group = function Group(_ref) {
|
|
|
208
207
|
className: "ins-c-menu__show--more"
|
|
209
208
|
}, showMoreOptions, {
|
|
210
209
|
onClick: function onClick(e) {
|
|
211
|
-
|
|
212
|
-
onShowMore(e);
|
|
210
|
+
return onShowMore(e);
|
|
213
211
|
}
|
|
214
212
|
}), showMoreTitle) : /*#__PURE__*/_react["default"].createElement("span", {
|
|
215
213
|
hidden: true,
|
|
@@ -245,7 +243,8 @@ Group.propTypes = {
|
|
|
245
243
|
}))
|
|
246
244
|
})),
|
|
247
245
|
onChange: _propTypes["default"].func.isRequired,
|
|
248
|
-
selectedTags: _propTypes["default"].shape({})
|
|
246
|
+
selectedTags: _propTypes["default"].shape({}),
|
|
247
|
+
containerRef: _propTypes["default"].element
|
|
249
248
|
};
|
|
250
249
|
var _default = Group;
|
|
251
250
|
exports["default"] = _default;
|
|
@@ -61,7 +61,11 @@
|
|
|
61
61
|
border: none;
|
|
62
62
|
}
|
|
63
63
|
|
|
64
|
-
.pf-c-menu
|
|
64
|
+
.pf-c-menu.ins-c-menu__scrollable {
|
|
65
|
+
max-height: 416px;
|
|
66
|
+
overflow-y: auto;
|
|
67
|
+
}
|
|
68
|
+
.pf-c-menu .ins-c-menu__show--more {
|
|
65
69
|
background: none;
|
|
66
70
|
}
|
|
67
71
|
.pf-c-menu .ins-c-menu__show--more .pf-c-menu__item-text {
|
|
@@ -70,8 +70,12 @@
|
|
|
70
70
|
}
|
|
71
71
|
|
|
72
72
|
.pf-c-menu {
|
|
73
|
+
&.ins-c-menu__scrollable {
|
|
74
|
+
max-height: 416px;
|
|
75
|
+
overflow-y: auto;
|
|
76
|
+
}
|
|
73
77
|
.ins-c-menu__show--more {
|
|
74
|
-
|
|
78
|
+
background: none;
|
|
75
79
|
.pf-c-menu__item-text{ color: var(--pf-global--active-color--100); }
|
|
76
80
|
}
|
|
77
81
|
}
|
|
@@ -76,6 +76,7 @@ var ConditionalFilter = /*#__PURE__*/function (_Component) {
|
|
|
76
76
|
});
|
|
77
77
|
|
|
78
78
|
_this.breakpointConstant = parseInt(globalBreakpointMd.value.replace('px', ''));
|
|
79
|
+
_this.containerRef = /*#__PURE__*/React.createRef();
|
|
79
80
|
_this.state = {
|
|
80
81
|
isOpen: false,
|
|
81
82
|
stateValue: undefined,
|
|
@@ -190,10 +191,14 @@ var ConditionalFilter = /*#__PURE__*/function (_Component) {
|
|
|
190
191
|
})
|
|
191
192
|
})), ActiveComponent && /*#__PURE__*/React.createElement(SplitItem, {
|
|
192
193
|
isFilled: true
|
|
194
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
195
|
+
ref: this.containerRef
|
|
193
196
|
}, /*#__PURE__*/React.createElement(ActiveComponent, _extends({}, activeItem.type !== conditionalFilterType.custom && {
|
|
194
197
|
placeholder: placeholder || activeItem.placeholder || "Filter by ".concat(activeItem.label),
|
|
195
198
|
id: activeItem.filterValues && activeItem.filterValues.id || currentValue
|
|
196
|
-
}, activeItem.filterValues
|
|
199
|
+
}, activeItem.filterValues, activeItem.type === conditionalFilterType.group && {
|
|
200
|
+
containerRef: this.containerRef.current
|
|
201
|
+
})))))));
|
|
197
202
|
}
|
|
198
203
|
}]);
|
|
199
204
|
|
|
@@ -31,7 +31,8 @@ var Group = function Group(_ref) {
|
|
|
31
31
|
groups = _ref$groups === void 0 ? [] : _ref$groups,
|
|
32
32
|
onChange = _ref.onChange,
|
|
33
33
|
selected = _ref.selected,
|
|
34
|
-
isFilterable = _ref.isFilterable
|
|
34
|
+
isFilterable = _ref.isFilterable,
|
|
35
|
+
containerRef = _ref.containerRef;
|
|
35
36
|
|
|
36
37
|
var _useState = useState({}),
|
|
37
38
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -90,10 +91,7 @@ var Group = function Group(_ref) {
|
|
|
90
91
|
ev.stopPropagation(); // Stop handleClickOutside from handling
|
|
91
92
|
|
|
92
93
|
ev.persist();
|
|
93
|
-
|
|
94
|
-
if (!(isOpen && toggleRef.current.contains(ev.target))) {
|
|
95
|
-
setIsOpen(!isOpen);
|
|
96
|
-
}
|
|
94
|
+
setIsOpen(!isOpen);
|
|
97
95
|
};
|
|
98
96
|
|
|
99
97
|
var groupMenuItems = getGroupMenuItems(groups, onChange, calculateSelection(selected));
|
|
@@ -144,6 +142,7 @@ var Group = function Group(_ref) {
|
|
|
144
142
|
};
|
|
145
143
|
|
|
146
144
|
return /*#__PURE__*/React.createElement(Popper, {
|
|
145
|
+
appendTo: containerRef,
|
|
147
146
|
trigger: /*#__PURE__*/React.createElement(MenuToggle, {
|
|
148
147
|
ref: toggleRef,
|
|
149
148
|
onClick: onToggleClick,
|
|
@@ -162,7 +161,7 @@ var Group = function Group(_ref) {
|
|
|
162
161
|
}) : placeholder),
|
|
163
162
|
popper: /*#__PURE__*/React.createElement(Menu, {
|
|
164
163
|
ref: menuRef,
|
|
165
|
-
className: classNames(className, {
|
|
164
|
+
className: classNames('ins-c-menu__scrollable', className, {
|
|
166
165
|
'pf-m-expanded': isOpen
|
|
167
166
|
})
|
|
168
167
|
}, /*#__PURE__*/React.createElement(MenuContent, null, /*#__PURE__*/React.createElement(MenuList, null, menuItems.length > 0 && /*#__PURE__*/React.createElement(MenuGroup, null, renderItems(items)), groupMenuItems.map(function (group, groupKey) {
|
|
@@ -175,8 +174,7 @@ var Group = function Group(_ref) {
|
|
|
175
174
|
className: "ins-c-menu__show--more"
|
|
176
175
|
}, showMoreOptions, {
|
|
177
176
|
onClick: function onClick(e) {
|
|
178
|
-
|
|
179
|
-
onShowMore(e);
|
|
177
|
+
return onShowMore(e);
|
|
180
178
|
}
|
|
181
179
|
}), showMoreTitle) : /*#__PURE__*/React.createElement("span", {
|
|
182
180
|
hidden: true,
|
|
@@ -212,6 +210,7 @@ Group.propTypes = {
|
|
|
212
210
|
}))
|
|
213
211
|
})),
|
|
214
212
|
onChange: PropTypes.func.isRequired,
|
|
215
|
-
selectedTags: PropTypes.shape({})
|
|
213
|
+
selectedTags: PropTypes.shape({}),
|
|
214
|
+
containerRef: PropTypes.element
|
|
216
215
|
};
|
|
217
216
|
export default Group;
|
package/index.css
CHANGED
|
@@ -132,7 +132,11 @@ i.ins-battery svg {
|
|
|
132
132
|
border: none;
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
-
.pf-c-menu
|
|
135
|
+
.pf-c-menu.ins-c-menu__scrollable {
|
|
136
|
+
max-height: 416px;
|
|
137
|
+
overflow-y: auto;
|
|
138
|
+
}
|
|
139
|
+
.pf-c-menu .ins-c-menu__show--more {
|
|
136
140
|
background: none;
|
|
137
141
|
}
|
|
138
142
|
.pf-c-menu .ins-c-menu__show--more .pf-c-menu__item-text {
|