@pingux/astro 2.30.0-alpha.1 → 2.30.0-alpha.3
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/lib/cjs/components/PanelHeader/PanelHeader.js +19 -12
- package/lib/cjs/components/PanelHeader/PanelHeader.stories.js +25 -1
- package/lib/cjs/components/PanelHeader/PanelHeader.styles.js +22 -11
- package/lib/cjs/components/PanelHeader/PanelHeader.test.js +9 -0
- package/lib/cjs/recipes/{CollapsiblePanel.stories.hidden.js → CollapsiblePanel.stories.js} +22 -43
- package/lib/components/PanelHeader/PanelHeader.js +19 -12
- package/lib/components/PanelHeader/PanelHeader.stories.js +24 -1
- package/lib/components/PanelHeader/PanelHeader.styles.js +22 -11
- package/lib/components/PanelHeader/PanelHeader.test.js +9 -0
- package/lib/recipes/{CollapsiblePanel.stories.hidden.js → CollapsiblePanel.stories.js} +23 -44
- package/package.json +1 -1
@@ -20,10 +20,11 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/he
|
|
20
20
|
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
21
21
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectWithoutProperties"));
|
22
22
|
var _react = _interopRequireWildcard(require("react"));
|
23
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
23
24
|
var _index = require("../../index");
|
24
25
|
var _listViewItemAttributes = require("../ListViewItem/listViewItemAttributes");
|
25
26
|
var _react2 = require("@emotion/react");
|
26
|
-
var _excluded = ["children", "className", "data"];
|
27
|
+
var _excluded = ["children", "className", "data", "slots"];
|
27
28
|
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); }
|
28
29
|
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; }
|
29
30
|
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
@@ -35,17 +36,15 @@ var PanelHeader = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
35
36
|
var children = _ref.children,
|
36
37
|
className = _ref.className,
|
37
38
|
data = _ref.data,
|
39
|
+
slots = _ref.slots,
|
38
40
|
others = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
39
41
|
var icon = data.icon,
|
40
42
|
image = data.image,
|
41
43
|
subtext = data.subtext,
|
42
44
|
text = data.text;
|
43
|
-
var getWrapperVariant = function getWrapperVariant() {
|
44
|
-
if (image && !icon) return 'panelHeader.imageWrapper';
|
45
|
-
return 'panelHeader.wrapper';
|
46
|
-
};
|
47
45
|
var renderIcon = (0, _react2.jsx)(_index.Box, {
|
48
|
-
width: "25px"
|
46
|
+
width: "25px",
|
47
|
+
mx: "md"
|
49
48
|
}, icon && (0, _react2.jsx)(_index.Icon, {
|
50
49
|
color: "accent.40",
|
51
50
|
icon: icon,
|
@@ -55,7 +54,8 @@ var PanelHeader = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
55
54
|
}
|
56
55
|
}));
|
57
56
|
var renderImage = !icon && image && (0, _react2.jsx)(_index.Box, {
|
58
|
-
width: "35px"
|
57
|
+
width: "35px",
|
58
|
+
mx: "sm"
|
59
59
|
}, (0, _react2.jsx)(_index.Image, {
|
60
60
|
src: image.src,
|
61
61
|
alt: image.alt,
|
@@ -63,9 +63,9 @@ var PanelHeader = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
63
63
|
}));
|
64
64
|
var renderData = (0, _react2.jsx)(_index.Box, {
|
65
65
|
isRow: true,
|
66
|
-
variant:
|
66
|
+
variant: text && subtext ? 'panelHeader.data' : 'panelHeader.emptyData'
|
67
67
|
}, icon ? renderIcon : renderImage, (0, _react2.jsx)(_index.Box, {
|
68
|
-
variant:
|
68
|
+
variant: "panelHeader.wrapper"
|
69
69
|
}, text && (0, _react2.jsx)(_index.Text, {
|
70
70
|
variant: "panelHeaderText"
|
71
71
|
}, text), subtext && (0, _react2.jsx)(_index.Text, {
|
@@ -77,12 +77,19 @@ var PanelHeader = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
77
77
|
ref: ref
|
78
78
|
}, others), (0, _react2.jsx)(_index.Box, {
|
79
79
|
isRow: true,
|
80
|
-
variant:
|
81
|
-
}, renderData, (0, _react2.jsx)(_index.Box, {
|
80
|
+
variant: "panelHeader.wrapper"
|
81
|
+
}, renderData, (slots === null || slots === void 0 ? void 0 : slots.rightOfData) && (0, _react2.jsx)(_index.Box, {
|
82
|
+
isRow: true,
|
83
|
+
variant: "panelHeader.rightOfData"
|
84
|
+
}, slots.rightOfData), (0, _react2.jsx)(_index.Box, {
|
82
85
|
isRow: true,
|
83
86
|
variant: "panelHeader.controls"
|
84
87
|
}, children)));
|
85
88
|
});
|
86
|
-
PanelHeader.propTypes = _objectSpread({}, _listViewItemAttributes.SharedItemPropTypes)
|
89
|
+
PanelHeader.propTypes = _objectSpread(_objectSpread({}, _listViewItemAttributes.SharedItemPropTypes), {}, {
|
90
|
+
slots: _propTypes["default"].shape({
|
91
|
+
rightOfData: _propTypes["default"].node
|
92
|
+
})
|
93
|
+
});
|
87
94
|
var _default = PanelHeader;
|
88
95
|
exports["default"] = _default;
|
@@ -5,11 +5,12 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
|
|
5
5
|
_Object$defineProperty(exports, "__esModule", {
|
6
6
|
value: true
|
7
7
|
});
|
8
|
-
exports["default"] = exports.WithSubtext = exports.WithImage = exports.WithExtraLongText = exports.WithControls = exports.Default = void 0;
|
8
|
+
exports["default"] = exports.WithSubtext = exports.WithImage = exports.WithExtraLongText = exports.WithControls = exports.WithBreadcrumbs = exports.Default = void 0;
|
9
9
|
var _objectDestructuringEmpty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectDestructuringEmpty"));
|
10
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
11
11
|
var _react = _interopRequireDefault(require("react"));
|
12
12
|
var _AccountIcon = _interopRequireDefault(require("@pingux/mdi-react/AccountIcon"));
|
13
|
+
var _ChevronRightIcon = _interopRequireDefault(require("@pingux/mdi-react/ChevronRightIcon"));
|
13
14
|
var _storybookDocsLayout = _interopRequireDefault(require("../../../.storybook/storybookDocsLayout"));
|
14
15
|
var _index = require("../../index");
|
15
16
|
var _figmaLinks = require("../../utils/designUtils/figmaLinks.js");
|
@@ -102,6 +103,29 @@ var WithImage = function WithImage() {
|
|
102
103
|
});
|
103
104
|
};
|
104
105
|
exports.WithImage = WithImage;
|
106
|
+
var WithBreadcrumbs = function WithBreadcrumbs() {
|
107
|
+
var breadcrumbs = (0, _react2.jsx)(_index.Breadcrumbs, {
|
108
|
+
icon: _ChevronRightIcon["default"]
|
109
|
+
}, (0, _react2.jsx)(_index.Item, {
|
110
|
+
"aria-label": "Fons Vernall",
|
111
|
+
href: "https://www.pingidentity.com",
|
112
|
+
key: "fonsVernallKey",
|
113
|
+
variant: "buttons.link"
|
114
|
+
}, "Fons Vernall"), (0, _react2.jsx)(_index.Item, {
|
115
|
+
"aria-label": "Edit",
|
116
|
+
key: "editKey",
|
117
|
+
variant: "buttons.link"
|
118
|
+
}, "Edit"));
|
119
|
+
return (0, _react2.jsx)(_index.PanelHeader, {
|
120
|
+
data: {
|
121
|
+
icon: _AccountIcon["default"]
|
122
|
+
},
|
123
|
+
slots: {
|
124
|
+
rightOfData: breadcrumbs
|
125
|
+
}
|
126
|
+
});
|
127
|
+
};
|
128
|
+
exports.WithBreadcrumbs = WithBreadcrumbs;
|
105
129
|
WithImage.parameters = {
|
106
130
|
design: {
|
107
131
|
type: 'figma',
|
@@ -1,10 +1,21 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
+
var _Object$keys = require("@babel/runtime-corejs3/core-js-stable/object/keys");
|
4
|
+
var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols");
|
5
|
+
var _filterInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/filter");
|
6
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
7
|
+
var _forEachInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/for-each");
|
8
|
+
var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors");
|
9
|
+
var _Object$defineProperties = require("@babel/runtime-corejs3/core-js-stable/object/define-properties");
|
3
10
|
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
11
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
12
|
_Object$defineProperty(exports, "__esModule", {
|
5
13
|
value: true
|
6
14
|
});
|
7
15
|
exports["default"] = void 0;
|
16
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
17
|
+
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
18
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(source), !0)).call(_context, function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
8
19
|
var container = {
|
9
20
|
bg: 'accent.99',
|
10
21
|
borderBottom: '1px',
|
@@ -13,6 +24,12 @@ var container = {
|
|
13
24
|
justifyContent: 'center',
|
14
25
|
minHeight: 60
|
15
26
|
};
|
27
|
+
var emptyData = {
|
28
|
+
alignItems: 'center'
|
29
|
+
};
|
30
|
+
var data = _objectSpread(_objectSpread({}, emptyData), {}, {
|
31
|
+
mr: 'sm'
|
32
|
+
});
|
16
33
|
var controls = {
|
17
34
|
alignItems: 'center',
|
18
35
|
alignSelf: 'center',
|
@@ -21,25 +38,19 @@ var controls = {
|
|
21
38
|
ml: 'auto',
|
22
39
|
mr: 'md'
|
23
40
|
};
|
24
|
-
var data = {
|
25
|
-
alignItems: 'center',
|
26
|
-
mr: 'sm'
|
27
|
-
};
|
28
41
|
var wrapper = {
|
29
42
|
display: 'flex',
|
30
|
-
flex: '1 1 0px'
|
31
|
-
ml: 'md'
|
43
|
+
flex: '1 1 0px'
|
32
44
|
};
|
33
|
-
var
|
34
|
-
|
35
|
-
flex: '1 1 0px',
|
36
|
-
ml: 'sm'
|
45
|
+
var rightOfData = {
|
46
|
+
alignSelf: 'center'
|
37
47
|
};
|
38
48
|
var _default = {
|
39
49
|
container: container,
|
40
50
|
controls: controls,
|
41
51
|
data: data,
|
42
|
-
|
52
|
+
emptyData: emptyData,
|
53
|
+
rightOfData: rightOfData,
|
43
54
|
wrapper: wrapper
|
44
55
|
};
|
45
56
|
exports["default"] = _default;
|
@@ -87,4 +87,13 @@ test('renders image', function () {
|
|
87
87
|
expect(image).toHaveAttribute('src', _images.pingImg);
|
88
88
|
expect(image).toHaveAttribute('alt', 'avatar');
|
89
89
|
expect(image).toHaveAttribute('aria-label', 'avatar');
|
90
|
+
});
|
91
|
+
test('renders rightOfData slot', function () {
|
92
|
+
var TEST_TEXT = 'test text';
|
93
|
+
getComponent({
|
94
|
+
slots: {
|
95
|
+
rightOfData: (0, _react3.jsx)("div", null, TEST_TEXT)
|
96
|
+
}
|
97
|
+
});
|
98
|
+
_testWrapper.screen.getByText(TEST_TEXT);
|
90
99
|
});
|
@@ -108,9 +108,6 @@ var data = [{
|
|
108
108
|
var sx = {
|
109
109
|
listViewItem: {
|
110
110
|
bg: 'white',
|
111
|
-
width: '100%',
|
112
|
-
justifyContent: 'space-between',
|
113
|
-
alignItems: 'center',
|
114
111
|
'&.is-hovered': {
|
115
112
|
bg: 'accent.99'
|
116
113
|
}
|
@@ -122,8 +119,7 @@ var sx = {
|
|
122
119
|
minHeight: 22,
|
123
120
|
justifyContent: 'center',
|
124
121
|
alignItems: 'center',
|
125
|
-
p: 'xs'
|
126
|
-
maxWidth: '50%'
|
122
|
+
p: 'xs'
|
127
123
|
},
|
128
124
|
defaultSelectedTitle: {
|
129
125
|
fontSize: 'sm',
|
@@ -237,48 +233,31 @@ var Default = function Default() {
|
|
237
233
|
mr: "sm",
|
238
234
|
onChange: setSearchValue
|
239
235
|
}), (0, _react2.jsx)(_index.ListView, {
|
240
|
-
items: filteredItems
|
241
|
-
style: {
|
242
|
-
width: '100%',
|
243
|
-
outline: 'none'
|
244
|
-
}
|
236
|
+
items: filteredItems
|
245
237
|
}, function (item) {
|
246
238
|
return (0, _react2.jsx)(_index.Item, {
|
247
239
|
key: item.key,
|
248
240
|
textValue: item.name,
|
249
|
-
"data-id": item.key
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
isRow: true
|
268
|
-
}, (0, _react2.jsx)(_index.Text, {
|
269
|
-
variant: "listTitle",
|
270
|
-
mb: "xs",
|
271
|
-
mr: "xs"
|
272
|
-
}, item.name), (0, _react2.jsx)(_index.Badge, {
|
273
|
-
label: item.badgeValue,
|
274
|
-
bg: "accent.99",
|
275
|
-
textColor: "text.secondary",
|
276
|
-
sx: {
|
277
|
-
minWidth: 'max-content'
|
241
|
+
"data-id": item.key
|
242
|
+
}, (0, _react2.jsx)(_index.ListViewItem, {
|
243
|
+
sx: sx.listViewItem,
|
244
|
+
data: {
|
245
|
+
icon: _AccountGroupIcon["default"],
|
246
|
+
text: item.name,
|
247
|
+
subtext: item.subtitle
|
248
|
+
},
|
249
|
+
slots: {
|
250
|
+
rightOfData: (0, _react2.jsx)(_index.Badge, {
|
251
|
+
label: item.badgeValue,
|
252
|
+
bg: "accent.99",
|
253
|
+
textColor: "text.secondary",
|
254
|
+
sx: {
|
255
|
+
minWidth: 'max-content'
|
256
|
+
},
|
257
|
+
ml: "xs"
|
258
|
+
})
|
278
259
|
}
|
279
|
-
}
|
280
|
-
variant: "listSubtitle"
|
281
|
-
}, item.subtitle))), item.isDefaultSelected ? (0, _react2.jsx)(_index.Box, {
|
260
|
+
}, item.isDefaultSelected ? (0, _react2.jsx)(_index.Box, {
|
282
261
|
isRow: true,
|
283
262
|
sx: sx.defaultSelectedBox
|
284
263
|
}, (0, _react2.jsx)(_index.Icon, {
|
@@ -308,7 +287,7 @@ var Default = function Default() {
|
|
308
287
|
onClick: function onClick() {
|
309
288
|
return checkBoxRef.current.focus();
|
310
289
|
}
|
311
|
-
}));
|
290
|
+
})));
|
312
291
|
})), (0, _react2.jsx)(_index.CollapsiblePanel, {
|
313
292
|
items: selectedItems,
|
314
293
|
selectedFilterCount: selectedItems.length.toString(),
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
2
2
|
import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
|
3
3
|
import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/esm/objectWithoutProperties";
|
4
|
-
var _excluded = ["children", "className", "data"];
|
4
|
+
var _excluded = ["children", "className", "data", "slots"];
|
5
5
|
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
6
6
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context2, _context3; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context2 = ownKeys(Object(source), !0)).call(_context2, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context3 = ownKeys(Object(source))).call(_context3, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
7
7
|
import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
|
@@ -14,6 +14,7 @@ import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-st
|
|
14
14
|
import _Object$defineProperties from "@babel/runtime-corejs3/core-js-stable/object/define-properties";
|
15
15
|
import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object/define-property";
|
16
16
|
import React, { forwardRef } from 'react';
|
17
|
+
import PropTypes from 'prop-types';
|
17
18
|
import { Box, Icon, Image, Text } from '../../index';
|
18
19
|
import { SharedItemPropTypes } from '../ListViewItem/listViewItemAttributes';
|
19
20
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
@@ -23,17 +24,15 @@ var PanelHeader = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
23
24
|
var children = _ref.children,
|
24
25
|
className = _ref.className,
|
25
26
|
data = _ref.data,
|
27
|
+
slots = _ref.slots,
|
26
28
|
others = _objectWithoutProperties(_ref, _excluded);
|
27
29
|
var icon = data.icon,
|
28
30
|
image = data.image,
|
29
31
|
subtext = data.subtext,
|
30
32
|
text = data.text;
|
31
|
-
var getWrapperVariant = function getWrapperVariant() {
|
32
|
-
if (image && !icon) return 'panelHeader.imageWrapper';
|
33
|
-
return 'panelHeader.wrapper';
|
34
|
-
};
|
35
33
|
var renderIcon = ___EmotionJSX(Box, {
|
36
|
-
width: "25px"
|
34
|
+
width: "25px",
|
35
|
+
mx: "md"
|
37
36
|
}, icon && ___EmotionJSX(Icon, {
|
38
37
|
color: "accent.40",
|
39
38
|
icon: icon,
|
@@ -43,7 +42,8 @@ var PanelHeader = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
43
42
|
}
|
44
43
|
}));
|
45
44
|
var renderImage = !icon && image && ___EmotionJSX(Box, {
|
46
|
-
width: "35px"
|
45
|
+
width: "35px",
|
46
|
+
mx: "sm"
|
47
47
|
}, ___EmotionJSX(Image, {
|
48
48
|
src: image.src,
|
49
49
|
alt: image.alt,
|
@@ -51,9 +51,9 @@ var PanelHeader = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
51
51
|
}));
|
52
52
|
var renderData = ___EmotionJSX(Box, {
|
53
53
|
isRow: true,
|
54
|
-
variant:
|
54
|
+
variant: text && subtext ? 'panelHeader.data' : 'panelHeader.emptyData'
|
55
55
|
}, icon ? renderIcon : renderImage, ___EmotionJSX(Box, {
|
56
|
-
variant:
|
56
|
+
variant: "panelHeader.wrapper"
|
57
57
|
}, text && ___EmotionJSX(Text, {
|
58
58
|
variant: "panelHeaderText"
|
59
59
|
}, text), subtext && ___EmotionJSX(Text, {
|
@@ -65,11 +65,18 @@ var PanelHeader = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
65
65
|
ref: ref
|
66
66
|
}, others), ___EmotionJSX(Box, {
|
67
67
|
isRow: true,
|
68
|
-
variant:
|
69
|
-
}, renderData, ___EmotionJSX(Box, {
|
68
|
+
variant: "panelHeader.wrapper"
|
69
|
+
}, renderData, (slots === null || slots === void 0 ? void 0 : slots.rightOfData) && ___EmotionJSX(Box, {
|
70
|
+
isRow: true,
|
71
|
+
variant: "panelHeader.rightOfData"
|
72
|
+
}, slots.rightOfData), ___EmotionJSX(Box, {
|
70
73
|
isRow: true,
|
71
74
|
variant: "panelHeader.controls"
|
72
75
|
}, children)));
|
73
76
|
});
|
74
|
-
PanelHeader.propTypes = _objectSpread({}, SharedItemPropTypes)
|
77
|
+
PanelHeader.propTypes = _objectSpread(_objectSpread({}, SharedItemPropTypes), {}, {
|
78
|
+
slots: PropTypes.shape({
|
79
|
+
rightOfData: PropTypes.node
|
80
|
+
})
|
81
|
+
});
|
75
82
|
export default PanelHeader;
|
@@ -2,8 +2,9 @@ import _objectDestructuringEmpty from "@babel/runtime-corejs3/helpers/esm/object
|
|
2
2
|
import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
|
3
3
|
import React from 'react';
|
4
4
|
import AccountIcon from '@pingux/mdi-react/AccountIcon';
|
5
|
+
import ChevronRightIcon from '@pingux/mdi-react/ChevronRightIcon';
|
5
6
|
import DocsLayout from '../../../.storybook/storybookDocsLayout';
|
6
|
-
import { Item, PanelHeader, PanelHeaderCloseButton, PanelHeaderMenu, PanelHeaderSwitchField } from '../../index';
|
7
|
+
import { Breadcrumbs, Item, PanelHeader, PanelHeaderCloseButton, PanelHeaderMenu, PanelHeaderSwitchField } from '../../index';
|
7
8
|
import { FIGMA_LINKS } from '../../utils/designUtils/figmaLinks.js';
|
8
9
|
import { pingImg } from '../../utils/devUtils/constants/images';
|
9
10
|
import { SharedItemArgTypes } from '../ListViewItem/listViewItemAttributes';
|
@@ -89,6 +90,28 @@ export var WithImage = function WithImage() {
|
|
89
90
|
}
|
90
91
|
});
|
91
92
|
};
|
93
|
+
export var WithBreadcrumbs = function WithBreadcrumbs() {
|
94
|
+
var breadcrumbs = ___EmotionJSX(Breadcrumbs, {
|
95
|
+
icon: ChevronRightIcon
|
96
|
+
}, ___EmotionJSX(Item, {
|
97
|
+
"aria-label": "Fons Vernall",
|
98
|
+
href: "https://www.pingidentity.com",
|
99
|
+
key: "fonsVernallKey",
|
100
|
+
variant: "buttons.link"
|
101
|
+
}, "Fons Vernall"), ___EmotionJSX(Item, {
|
102
|
+
"aria-label": "Edit",
|
103
|
+
key: "editKey",
|
104
|
+
variant: "buttons.link"
|
105
|
+
}, "Edit"));
|
106
|
+
return ___EmotionJSX(PanelHeader, {
|
107
|
+
data: {
|
108
|
+
icon: AccountIcon
|
109
|
+
},
|
110
|
+
slots: {
|
111
|
+
rightOfData: breadcrumbs
|
112
|
+
}
|
113
|
+
});
|
114
|
+
};
|
92
115
|
WithImage.parameters = {
|
93
116
|
design: {
|
94
117
|
type: 'figma',
|
@@ -1,3 +1,14 @@
|
|
1
|
+
import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
|
2
|
+
import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
|
3
|
+
import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
|
4
|
+
import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor";
|
5
|
+
import _forEachInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/for-each";
|
6
|
+
import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors";
|
7
|
+
import _Object$defineProperties from "@babel/runtime-corejs3/core-js-stable/object/define-properties";
|
8
|
+
import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object/define-property";
|
9
|
+
import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
10
|
+
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
11
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
1
12
|
var container = {
|
2
13
|
bg: 'accent.99',
|
3
14
|
borderBottom: '1px',
|
@@ -6,6 +17,12 @@ var container = {
|
|
6
17
|
justifyContent: 'center',
|
7
18
|
minHeight: 60
|
8
19
|
};
|
20
|
+
var emptyData = {
|
21
|
+
alignItems: 'center'
|
22
|
+
};
|
23
|
+
var data = _objectSpread(_objectSpread({}, emptyData), {}, {
|
24
|
+
mr: 'sm'
|
25
|
+
});
|
9
26
|
var controls = {
|
10
27
|
alignItems: 'center',
|
11
28
|
alignSelf: 'center',
|
@@ -14,24 +31,18 @@ var controls = {
|
|
14
31
|
ml: 'auto',
|
15
32
|
mr: 'md'
|
16
33
|
};
|
17
|
-
var data = {
|
18
|
-
alignItems: 'center',
|
19
|
-
mr: 'sm'
|
20
|
-
};
|
21
34
|
var wrapper = {
|
22
35
|
display: 'flex',
|
23
|
-
flex: '1 1 0px'
|
24
|
-
ml: 'md'
|
36
|
+
flex: '1 1 0px'
|
25
37
|
};
|
26
|
-
var
|
27
|
-
|
28
|
-
flex: '1 1 0px',
|
29
|
-
ml: 'sm'
|
38
|
+
var rightOfData = {
|
39
|
+
alignSelf: 'center'
|
30
40
|
};
|
31
41
|
export default {
|
32
42
|
container: container,
|
33
43
|
controls: controls,
|
34
44
|
data: data,
|
35
|
-
|
45
|
+
emptyData: emptyData,
|
46
|
+
rightOfData: rightOfData,
|
36
47
|
wrapper: wrapper
|
37
48
|
};
|
@@ -84,4 +84,13 @@ test('renders image', function () {
|
|
84
84
|
expect(image).toHaveAttribute('src', pingImg);
|
85
85
|
expect(image).toHaveAttribute('alt', 'avatar');
|
86
86
|
expect(image).toHaveAttribute('aria-label', 'avatar');
|
87
|
+
});
|
88
|
+
test('renders rightOfData slot', function () {
|
89
|
+
var TEST_TEXT = 'test text';
|
90
|
+
getComponent({
|
91
|
+
slots: {
|
92
|
+
rightOfData: ___EmotionJSX("div", null, TEST_TEXT)
|
93
|
+
}
|
94
|
+
});
|
95
|
+
screen.getByText(TEST_TEXT);
|
87
96
|
});
|
@@ -21,7 +21,7 @@ import ChevronRightIcon from '@pingux/mdi-react/ChevronRightIcon';
|
|
21
21
|
import Clear from '@pingux/mdi-react/CloseIcon';
|
22
22
|
import SearchIcon from '@pingux/mdi-react/SearchIcon';
|
23
23
|
import { useFilter } from '@react-aria/i18n';
|
24
|
-
import { Badge, Box, Breadcrumbs, CheckboxField, CollapsiblePanel, CollapsiblePanelItem, Icon, IconButton, Item, ListView, SearchField, Text } from '../index';
|
24
|
+
import { Badge, Box, Breadcrumbs, CheckboxField, CollapsiblePanel, CollapsiblePanelItem, Icon, IconButton, Item, ListView, ListViewItem, SearchField, Text } from '../index';
|
25
25
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
26
26
|
export default {
|
27
27
|
title: 'Recipes/CollapsiblePanel with List'
|
@@ -95,9 +95,6 @@ var data = [{
|
|
95
95
|
var sx = {
|
96
96
|
listViewItem: {
|
97
97
|
bg: 'white',
|
98
|
-
width: '100%',
|
99
|
-
justifyContent: 'space-between',
|
100
|
-
alignItems: 'center',
|
101
98
|
'&.is-hovered': {
|
102
99
|
bg: 'accent.99'
|
103
100
|
}
|
@@ -109,8 +106,7 @@ var sx = {
|
|
109
106
|
minHeight: 22,
|
110
107
|
justifyContent: 'center',
|
111
108
|
alignItems: 'center',
|
112
|
-
p: 'xs'
|
113
|
-
maxWidth: '50%'
|
109
|
+
p: 'xs'
|
114
110
|
},
|
115
111
|
defaultSelectedTitle: {
|
116
112
|
fontSize: 'sm',
|
@@ -224,48 +220,31 @@ export var Default = function Default() {
|
|
224
220
|
mr: "sm",
|
225
221
|
onChange: setSearchValue
|
226
222
|
}), ___EmotionJSX(ListView, {
|
227
|
-
items: filteredItems
|
228
|
-
style: {
|
229
|
-
width: '100%',
|
230
|
-
outline: 'none'
|
231
|
-
}
|
223
|
+
items: filteredItems
|
232
224
|
}, function (item) {
|
233
225
|
return ___EmotionJSX(Item, {
|
234
226
|
key: item.key,
|
235
227
|
textValue: item.name,
|
236
|
-
"data-id": item.key
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
isRow: true
|
255
|
-
}, ___EmotionJSX(Text, {
|
256
|
-
variant: "listTitle",
|
257
|
-
mb: "xs",
|
258
|
-
mr: "xs"
|
259
|
-
}, item.name), ___EmotionJSX(Badge, {
|
260
|
-
label: item.badgeValue,
|
261
|
-
bg: "accent.99",
|
262
|
-
textColor: "text.secondary",
|
263
|
-
sx: {
|
264
|
-
minWidth: 'max-content'
|
228
|
+
"data-id": item.key
|
229
|
+
}, ___EmotionJSX(ListViewItem, {
|
230
|
+
sx: sx.listViewItem,
|
231
|
+
data: {
|
232
|
+
icon: AccountGroupIcon,
|
233
|
+
text: item.name,
|
234
|
+
subtext: item.subtitle
|
235
|
+
},
|
236
|
+
slots: {
|
237
|
+
rightOfData: ___EmotionJSX(Badge, {
|
238
|
+
label: item.badgeValue,
|
239
|
+
bg: "accent.99",
|
240
|
+
textColor: "text.secondary",
|
241
|
+
sx: {
|
242
|
+
minWidth: 'max-content'
|
243
|
+
},
|
244
|
+
ml: "xs"
|
245
|
+
})
|
265
246
|
}
|
266
|
-
}
|
267
|
-
variant: "listSubtitle"
|
268
|
-
}, item.subtitle))), item.isDefaultSelected ? ___EmotionJSX(Box, {
|
247
|
+
}, item.isDefaultSelected ? ___EmotionJSX(Box, {
|
269
248
|
isRow: true,
|
270
249
|
sx: sx.defaultSelectedBox
|
271
250
|
}, ___EmotionJSX(Icon, {
|
@@ -295,7 +274,7 @@ export var Default = function Default() {
|
|
295
274
|
onClick: function onClick() {
|
296
275
|
return checkBoxRef.current.focus();
|
297
276
|
}
|
298
|
-
}));
|
277
|
+
})));
|
299
278
|
})), ___EmotionJSX(CollapsiblePanel, {
|
300
279
|
items: selectedItems,
|
301
280
|
selectedFilterCount: selectedItems.length.toString(),
|