@pingux/astro 2.54.0 → 2.55.0-alpha.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.
@@ -8,22 +8,25 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
8
8
  _Object$defineProperty(exports, "__esModule", {
9
9
  value: true
10
10
  });
11
- exports["default"] = exports.PanelHeader = exports.ListElement = exports.ListAndPanel = void 0;
11
+ exports["default"] = exports.OverlayPanelHeader = exports.ListElement = exports.ListAndPanel = void 0;
12
12
  var _findIndex = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find-index"));
13
+ var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
14
+ var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
13
15
  var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
16
+ var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
14
17
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
15
18
  var _react = _interopRequireWildcard(require("react"));
16
19
  var _reactAria = require("react-aria");
17
20
  var _reactStately = require("react-stately");
18
21
  var _AccountIcon = _interopRequireDefault(require("@pingux/mdi-react/AccountIcon"));
19
- var _CloseIcon = _interopRequireDefault(require("@pingux/mdi-react/CloseIcon"));
20
- var _MoreVertIcon = _interopRequireDefault(require("@pingux/mdi-react/MoreVertIcon"));
21
- var _PencilIcon = _interopRequireDefault(require("@pingux/mdi-react/PencilIcon"));
22
+ var _ChevronRightIcon = _interopRequireDefault(require("@pingux/mdi-react/ChevronRightIcon"));
22
23
  var _PlusIcon = _interopRequireDefault(require("@pingux/mdi-react/PlusIcon"));
23
24
  var _hooks = require("../hooks");
24
25
  var _index = require("../index");
25
26
  var _figmaLinks = require("../utils/designUtils/figmaLinks");
27
+ var _UserImage = _interopRequireDefault(require("../utils/devUtils/assets/UserImage.png"));
26
28
  var _items = require("./items");
29
+ var _PanelContent = require("./PanelContent.stories");
27
30
  var _react2 = require("@emotion/react");
28
31
  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); }
29
32
  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; }
@@ -134,15 +137,16 @@ var title = (0, _react2.jsx)(_index.Box, null, (0, _react2.jsx)(_index.Box, {
134
137
  }
135
138
  }, " Learn more")));
136
139
  var ListAndPanel = function ListAndPanel() {
137
- // Example of items data structure
138
- // const items = [
139
- // {
140
- // email: 'dburkitt5@columbia.edu',
141
- // firstName: 'Nicola',
142
- // lastName: 'Burkitt',
143
- // icon: AccountIcon,
144
- // },
145
- // ]
140
+ var _context, _context2, _context4, _context5, _context6;
141
+ /* Example of items data structure
142
+ const items = [
143
+ {
144
+ email: 'dburkitt5@columbia.edu',
145
+ firstName: 'Nicola',
146
+ lastName: 'Burkitt',
147
+ icon: AccountIcon,
148
+ },
149
+ ] */
146
150
 
147
151
  var _useState = (0, _react.useState)(),
148
152
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
@@ -152,6 +156,10 @@ var ListAndPanel = function ListAndPanel() {
152
156
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
153
157
  selectedKeys = _useState4[0],
154
158
  setSelectedKeys = _useState4[1];
159
+ var _useState5 = (0, _react.useState)(false),
160
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
161
+ isEditPanel = _useState6[0],
162
+ setEditPanel = _useState6[1];
155
163
  var _useOverlayPanelState = (0, _hooks.useOverlayPanelState)(),
156
164
  panelState = _useOverlayPanelState.state,
157
165
  onPanelClose = _useOverlayPanelState.onClose;
@@ -160,6 +168,7 @@ var ListAndPanel = function ListAndPanel() {
160
168
  onPanelClose(panelState, panelTriggerRef);
161
169
  setSelectedItemId(-1);
162
170
  setSelectedKeys([]);
171
+ setEditPanel(false);
163
172
  };
164
173
  var selectItemHandler = function selectItemHandler(e) {
165
174
  if (e.size) {
@@ -167,11 +176,234 @@ var ListAndPanel = function ListAndPanel() {
167
176
  return item.email === e.currentKey;
168
177
  }));
169
178
  setSelectedKeys([e.currentKey]);
179
+ setEditPanel(false);
170
180
  panelState.open();
171
181
  } else {
172
182
  closePanelHandler();
173
183
  }
174
184
  };
185
+ var renderProfileTab = selectedItemId >= 0 && (0, _react2.jsx)(_react["default"].Fragment, null, (0, _react2.jsx)(_index.Box, {
186
+ isRow: true,
187
+ gap: "md",
188
+ mb: "20px"
189
+ }, (0, _map["default"])(_items.colorBlockButtons).call(_items.colorBlockButtons, function (tileData) {
190
+ return (0, _react2.jsx)(_PanelContent.ColorBlockButton, {
191
+ buttonData: tileData,
192
+ key: "".concat(tileData.text, "-key")
193
+ });
194
+ })), (0, _react2.jsx)(_index.Box, {
195
+ isRow: true,
196
+ justifyContent: "space-between"
197
+ }, (0, _react2.jsx)(_index.AccordionGroup, {
198
+ defaultExpandedKeys: (0, _map["default"])(_context = (0, _keys["default"])(_items.personalData)).call(_context, function (item) {
199
+ return _items.personalData[item].key;
200
+ }),
201
+ labelHeadingTag: "h2"
202
+ }, (0, _map["default"])(_context2 = (0, _keys["default"])(_items.personalData)).call(_context2, function (item) {
203
+ var _context3;
204
+ return (0, _react2.jsx)(_reactStately.Item, {
205
+ "data-id": _items.personalData[item].label,
206
+ key: _items.personalData[item].key,
207
+ label: _items.personalData[item].label,
208
+ textValue: _items.personalData[item].label
209
+ }, _items.personalData[item].image ? (0, _react2.jsx)(_index.Box, {
210
+ isRow: true,
211
+ gap: "md"
212
+ }, (0, _react2.jsx)(_index.Image, {
213
+ src: _UserImage["default"],
214
+ alt: "user"
215
+ }), (0, _react2.jsx)(_PanelContent.LabelValuePairs, {
216
+ fields: _items.personalData[item].fields
217
+ })) : (0, _react2.jsx)(_PanelContent.LabelValuePairs, {
218
+ fields: _items.personalData[item].fields
219
+ }), _items.personalData[item].badges && (0, _react2.jsx)(_index.Box, {
220
+ isRow: true,
221
+ gap: "sm"
222
+ }, (0, _map["default"])(_context3 = _items.personalData[item].badges).call(_context3, function (badge) {
223
+ return (0, _react2.jsx)(_index.Badge, {
224
+ label: badge,
225
+ variant: "defaultBadge",
226
+ key: "".concat(badge, "-key")
227
+ });
228
+ })));
229
+ })), (0, _react2.jsx)(_index.EditButton, {
230
+ size: "lg",
231
+ onPress: function onPress() {
232
+ return setEditPanel(!isEditPanel);
233
+ }
234
+ })));
235
+ var tabs = [{
236
+ name: 'Profile',
237
+ children: renderProfileTab
238
+ }, {
239
+ name: 'Groups',
240
+ children: 'Groups'
241
+ }, {
242
+ name: 'Roles',
243
+ children: 'Roles'
244
+ }, {
245
+ name: 'Services',
246
+ list: [{
247
+ key: 'service1',
248
+ name: 'Service 1',
249
+ children: 'Service 1',
250
+ role: 'listitem'
251
+ }, {
252
+ key: 'service2',
253
+ name: 'Service 2',
254
+ children: 'Service 2',
255
+ role: 'listitem'
256
+ }]
257
+ }, {
258
+ name: 'API',
259
+ children: 'API'
260
+ }];
261
+ var renderDisplayPanel = selectedItemId >= 0 && (0, _react2.jsx)(_index.Box, {
262
+ sx: sx.tabsWrapper
263
+ }, (0, _react2.jsx)(_index.Tabs, {
264
+ items: tabs,
265
+ mode: "list",
266
+ tabListProps: {
267
+ justifyContent: 'center',
268
+ mb: 'lg'
269
+ },
270
+ tabPanelProps: {
271
+ sx: {
272
+ position: 'relative'
273
+ }
274
+ }
275
+ }, function (item) {
276
+ return (0, _react2.jsx)(_index.Tab, (0, _extends2["default"])({
277
+ key: item.name,
278
+ title: item.name
279
+ }, item), item.children);
280
+ }));
281
+ var renderHeader = function renderHeader() {
282
+ var selectedItem = _items.items[selectedItemId];
283
+ if (selectedItem) {
284
+ var data = {
285
+ fname: selectedItem.firstName,
286
+ lname: selectedItem.lastName,
287
+ subtext: selectedItem.email,
288
+ icon: selectedItem.icon,
289
+ personalInfo: {
290
+ image: _items.personalData.personalInfo.image
291
+ }
292
+ };
293
+ return (0, _react2.jsx)(OverlayPanelHeader, {
294
+ headerData: data,
295
+ isEditPanel: isEditPanel,
296
+ closePanelHandler: closePanelHandler
297
+ });
298
+ }
299
+ return null;
300
+ };
301
+ var renderEditPanel = selectedItemId >= 0 && (0, _react2.jsx)(_react["default"].Fragment, null, (0, _react2.jsx)(_index.Box, {
302
+ p: "lg",
303
+ pb: "50px"
304
+ }, (0, _react2.jsx)(_index.Box, {
305
+ gap: "md",
306
+ mb: "20px",
307
+ width: "500px"
308
+ }, (0, _react2.jsx)(_index.TextField, {
309
+ defaultValue: "ednepomuceno",
310
+ isRequired: true,
311
+ label: "Username"
312
+ }), (0, _react2.jsx)(_index.SelectField, {
313
+ label: "Population",
314
+ isRequired: true,
315
+ defaultSelectedKey: "population"
316
+ }, (0, _react2.jsx)(_reactStately.Item, {
317
+ key: "population"
318
+ }, "Denver"))), (0, _react2.jsx)(_index.AccordionGroup, {
319
+ defaultExpandedKeys: (0, _concat["default"])(_context4 = []).call(_context4, (0, _map["default"])(_context5 = (0, _keys["default"])(_items.editData)).call(_context5, function (item) {
320
+ return _items.editData[item].key;
321
+ }), ['preferencesKey', 'customAttributesKey', 'jsonAttributesKey']),
322
+ labelHeadingTag: "h2"
323
+ }, (0, _map["default"])(_context6 = (0, _keys["default"])(_items.editData)).call(_context6, function (item) {
324
+ var _context7;
325
+ return (0, _react2.jsx)(_reactStately.Item, {
326
+ "data-id": _items.editData[item].label,
327
+ key: _items.editData[item].key,
328
+ label: _items.editData[item].label,
329
+ textValue: _items.editData[item].label
330
+ }, (0, _react2.jsx)(_index.Box, {
331
+ gap: "md",
332
+ width: "500px"
333
+ }, _items.editData[item].image && (0, _react2.jsx)(_index.ImageUploadField, {
334
+ label: "Photo",
335
+ previewHeight: 40,
336
+ previewWidth: 40,
337
+ previewImage: _UserImage["default"]
338
+ }), (0, _map["default"])(_context7 = _items.editData[item].fields).call(_context7, function (_ref) {
339
+ var label = _ref.label,
340
+ value = _ref.value,
341
+ slot = _ref.slot;
342
+ return (0, _react2.jsx)(_index.Box, {
343
+ key: "".concat(label, "-key")
344
+ }, (0, _react2.jsx)(_index.TextField, {
345
+ label: label,
346
+ defaultValue: value
347
+ }), slot);
348
+ })));
349
+ }), (0, _react2.jsx)(_reactStately.Item, {
350
+ "data-id": "preferences",
351
+ key: "preferencesKey",
352
+ label: "Preferences",
353
+ textValue: "Preferences"
354
+ }, (0, _react2.jsx)(_index.Box, {
355
+ gap: "md",
356
+ width: "500px"
357
+ }, (0, _react2.jsx)(_index.SelectField, {
358
+ label: "Preferred Language",
359
+ defaultSelectedKey: "language"
360
+ }, (0, _react2.jsx)(_reactStately.Item, {
361
+ key: "language"
362
+ }, "Select a Language")), (0, _react2.jsx)(_index.SelectField, {
363
+ label: "Locale",
364
+ defaultSelectedKey: "language"
365
+ }, (0, _react2.jsx)(_reactStately.Item, {
366
+ key: "language"
367
+ }, "Select a locale")), (0, _react2.jsx)(_index.SelectField, {
368
+ label: "Timezone",
369
+ defaultSelectedKey: "language"
370
+ }, (0, _react2.jsx)(_reactStately.Item, {
371
+ key: "language"
372
+ }, "Select a timezone")))), (0, _react2.jsx)(_reactStately.Item, {
373
+ "data-id": "customAttributes",
374
+ key: "customAttributesKey",
375
+ label: "Custom Attributes",
376
+ textValue: "Custom Attributes"
377
+ }, (0, _react2.jsx)(_PanelContent.AddAttributeButton, null), (0, _react2.jsx)(_index.Text, {
378
+ fontWeight: "-1",
379
+ fontSize: "md",
380
+ textAlign: "center"
381
+ }, "Click + Add to select a custom attribute")), (0, _react2.jsx)(_reactStately.Item, {
382
+ "data-id": "jsonAttributes",
383
+ key: "jsonAttributesKey",
384
+ label: "JSON Attributes",
385
+ textValue: "JSON Attributes"
386
+ }, (0, _react2.jsx)(_PanelContent.AddAttributeButton, null), (0, _react2.jsx)(_index.Text, {
387
+ fontWeight: "-1",
388
+ fontSize: "md",
389
+ textAlign: "center"
390
+ }, "Click + Add to select a JSON attribute")))), (0, _react2.jsx)(_index.ButtonBar, {
391
+ sx: {
392
+ position: 'fixed',
393
+ bottom: '0',
394
+ width: '100%'
395
+ }
396
+ }, (0, _react2.jsx)(_index.Button, {
397
+ variant: "primary",
398
+ onPress: function onPress() {
399
+ return setEditPanel(!isEditPanel);
400
+ }
401
+ }, "Save"), (0, _react2.jsx)(_index.Button, {
402
+ variant: "link",
403
+ onPress: function onPress() {
404
+ return setEditPanel(!isEditPanel);
405
+ }
406
+ }, "Cancel")));
175
407
  return (0, _react2.jsx)(_index.Box, {
176
408
  sx: sx.wrapper
177
409
  }, title, (0, _react2.jsx)(_index.SearchField, {
@@ -189,12 +421,12 @@ var ListAndPanel = function ListAndPanel() {
189
421
  ref: panelTriggerRef,
190
422
  selectedKeys: selectedKeys
191
423
  }, function (item) {
192
- var _context;
424
+ var _context8;
193
425
  return (0, _react2.jsx)(_reactStately.Item, {
194
426
  key: item.email
195
427
  }, (0, _react2.jsx)(ListElement, {
196
428
  data: {
197
- text: (0, _concat["default"])(_context = "".concat(item.lastName, ", ")).call(_context, item.firstName),
429
+ text: (0, _concat["default"])(_context8 = "".concat(item.lastName, ", ")).call(_context8, item.firstName),
198
430
  subtext: item.email,
199
431
  icon: item.icon
200
432
  }
@@ -209,68 +441,31 @@ var ListAndPanel = function ListAndPanel() {
209
441
  contain: true,
210
442
  restoreFocus: true,
211
443
  autoFocus: true
212
- }, (0, _react2.jsx)(PanelHeader, {
213
- item: selectedItemId >= 0 ? _items.items[selectedItemId] : [],
214
- onClosePanel: closePanelHandler
215
- }), (0, _react2.jsx)(_index.Separator, {
216
- margin: 0,
217
- sx: sx.separator
218
- }), (0, _react2.jsx)(_index.Box, {
219
- sx: sx.tabsWrapper
220
- }, (0, _react2.jsx)(_index.Tabs, {
221
- tabListProps: {
222
- justifyContent: 'center'
223
- },
224
- tabPanelProps: {
225
- sx: {
226
- position: 'relative'
227
- }
228
- }
229
- }, (0, _react2.jsx)(_index.Tab, {
230
- title: "Profile"
231
- }, selectedItemId >= 0 && (0, _react2.jsx)(_react["default"].Fragment, null, (0, _react2.jsx)(_index.IconButton, {
232
- variant: "inverted",
233
- "aria-label": "pencil icon button",
234
- sx: sx.iconButton
235
- }, (0, _react2.jsx)(_index.Icon, {
236
- icon: _PencilIcon["default"],
237
- size: "sm"
238
- })), (0, _react2.jsx)(_index.Text, {
239
- sx: sx.itemLabel
240
- }, "Full Name"), (0, _react2.jsx)(_index.Text, {
241
- sx: sx.itemValue
242
- }, _items.items[selectedItemId].firstName, ' ', _items.items[selectedItemId].lastName), (0, _react2.jsx)(_index.Text, {
243
- sx: sx.itemLabel
244
- }, "First Name"), (0, _react2.jsx)(_index.Text, {
245
- sx: sx.itemValue
246
- }, _items.items[selectedItemId].firstName), (0, _react2.jsx)(_index.Text, {
247
- sx: sx.itemLabel
248
- }, "Last Name"), (0, _react2.jsx)(_index.Text, {
249
- sx: sx.itemValue
250
- }, _items.items[selectedItemId].lastName), (0, _react2.jsx)(_index.Text, {
251
- sx: sx.itemLabel
252
- }, "Email"), (0, _react2.jsx)(_index.Text, {
253
- sx: sx.itemValue
254
- }, _items.items[selectedItemId].email))), (0, _react2.jsx)(_index.Tab, {
255
- title: "Group Memberships"
256
- }, (0, _react2.jsx)(_index.Text, null, "Group Memberships")), (0, _react2.jsx)(_index.Tab, {
257
- title: "Account Info"
258
- }, (0, _react2.jsx)(_index.Text, null, "Account Info")))))));
444
+ }, renderHeader(), isEditPanel ? renderEditPanel : renderDisplayPanel)));
259
445
  };
260
446
  exports.ListAndPanel = ListAndPanel;
261
447
  ListAndPanel.parameters = {
262
448
  design: {
263
449
  type: 'figma',
264
450
  url: _figmaLinks.FIGMA_LINKS.listAndPanel.listAndPanel
451
+ },
452
+ a11y: {
453
+ config: {
454
+ rules: [{
455
+ id: 'color-contrast',
456
+ enabled: false
457
+ }] // Added to bypass color contrast issue due to virtualizer
458
+ }
265
459
  }
266
460
  };
267
- var ListElement = function ListElement(_ref) {
268
- var _ref$data = _ref.data,
269
- data = _ref$data === void 0 ? {
461
+
462
+ var ListElement = function ListElement(_ref2) {
463
+ var _ref2$data = _ref2.data,
464
+ data = _ref2$data === void 0 ? {
270
465
  subtext: 'dburkitt5@columbia.edu',
271
466
  text: 'Burkitt, Nicola',
272
467
  icon: _AccountIcon["default"]
273
- } : _ref$data;
468
+ } : _ref2$data;
274
469
  var listItemRef = (0, _react.useRef)();
275
470
  var _useOverlappingMenuHo = (0, _hooks.useOverlappingMenuHoverState)({
276
471
  listItemRef: listItemRef
@@ -300,58 +495,63 @@ var ListElement = function ListElement(_ref) {
300
495
  }, "Delete user")));
301
496
  };
302
497
  exports.ListElement = ListElement;
303
- var PanelHeader = function PanelHeader(_ref2) {
304
- var _context2;
305
- var _ref2$item = _ref2.item,
306
- item = _ref2$item === void 0 ? {
307
- email: 'dburkitt5@columbia.edu',
308
- icon: _AccountIcon["default"],
309
- firstName: 'John',
310
- lastName: 'Doe'
311
- } : _ref2$item,
312
- onClosePanel = _ref2.onClosePanel;
313
- var email = item.email,
314
- firstName = item.firstName,
315
- lastName = item.lastName;
316
- var text = (0, _concat["default"])(_context2 = "".concat(lastName, ", ")).call(_context2, firstName);
317
- return (0, _react2.jsx)(_index.Box, {
318
- sx: sx.panelHeader.container
319
- }, (0, _react2.jsx)(_index.Box, {
320
- isRow: true,
321
- sx: sx.panelHeader.wrapper
322
- }, (0, _react2.jsx)(_index.Box, {
323
- isRow: true,
324
- sx: sx.panelHeader.data
325
- }, (0, _react2.jsx)(_index.Box, null, (0, _react2.jsx)(_index.Text, {
326
- variant: "bodyStrong",
327
- sx: sx.panelHeader.title
328
- }, text), (0, _react2.jsx)(_index.Text, {
329
- variant: "subtitle",
330
- sx: sx.panelHeader.subtitle
331
- }, email))), (0, _react2.jsx)(_index.Box, {
332
- isRow: true,
333
- sx: sx.panelHeader.controls
334
- }, (0, _react2.jsx)(_index.SwitchField, {
335
- isDefaultSelected: true,
336
- alignSelf: "center",
337
- mr: "xs"
338
- }), (0, _react2.jsx)(_index.PopoverMenu, null, (0, _react2.jsx)(_index.IconButton, {
339
- "aria-label": "more"
340
- }, (0, _react2.jsx)(_index.Icon, {
341
- icon: _MoreVertIcon["default"],
342
- size: "md"
343
- })), (0, _react2.jsx)(_index.Menu, null, (0, _react2.jsx)(_reactStately.Item, {
498
+ var renderBreadcrumbs = function renderBreadcrumbs(headerData) {
499
+ var _context9;
500
+ return (0, _react2.jsx)(_index.Breadcrumbs, {
501
+ icon: _ChevronRightIcon["default"]
502
+ }, (0, _react2.jsx)(_reactStately.Item, {
503
+ "aria-label": headerData.fname,
504
+ href: "https://www.pingidentity.com",
505
+ key: headerData.fname,
506
+ variant: "buttons.link"
507
+ }, (0, _concat["default"])(_context9 = "".concat(headerData.fname, " ")).call(_context9, headerData.lname)), (0, _react2.jsx)(_reactStately.Item, {
508
+ "aria-label": "Edit",
509
+ key: "editKey",
510
+ variant: "buttons.link"
511
+ }, "Edit"));
512
+ };
513
+ var OverlayPanelHeader = function OverlayPanelHeader(_ref3) {
514
+ var _context10, _context11, _context12;
515
+ var _ref3$headerData = _ref3.headerData,
516
+ headerData = _ref3$headerData === void 0 ? {
517
+ fname: 'John',
518
+ lname: 'Doe',
519
+ subtext: 'dburkitt5@columbia.edu',
520
+ icon: _AccountIcon["default"]
521
+ } : _ref3$headerData,
522
+ isEditPanel = _ref3.isEditPanel,
523
+ closePanelHandler = _ref3.closePanelHandler;
524
+ var fname = headerData.fname,
525
+ lname = headerData.lname,
526
+ subtext = headerData.subtext,
527
+ icon = headerData.icon,
528
+ personalInfo = headerData.personalInfo;
529
+ var headerProps = isEditPanel ? {
530
+ data: {
531
+ image: {
532
+ src: personalInfo.image,
533
+ alt: (0, _concat["default"])(_context10 = "".concat(fname, " ")).call(_context10, lname),
534
+ 'aria-label': (0, _concat["default"])(_context11 = "".concat(fname, " ")).call(_context11, lname)
535
+ }
536
+ },
537
+ slots: {
538
+ rightOfData: renderBreadcrumbs(headerData)
539
+ }
540
+ } : {
541
+ data: {
542
+ text: (0, _concat["default"])(_context12 = "".concat(lname, ", ")).call(_context12, fname),
543
+ subtext: subtext,
544
+ icon: icon
545
+ }
546
+ };
547
+ return (0, _react2.jsx)(_index.PanelHeader, headerProps, !isEditPanel && (0, _react2.jsx)(_index.PanelHeaderSwitchField, null), !isEditPanel && (0, _react2.jsx)(_index.PanelHeaderMenu, null, (0, _react2.jsx)(_reactStately.Item, {
344
548
  key: "enable"
345
549
  }, "Enable user"), (0, _react2.jsx)(_reactStately.Item, {
346
550
  key: "disable"
347
551
  }, "Disable user"), (0, _react2.jsx)(_reactStately.Item, {
348
552
  key: "delete"
349
- }, "Delete user"))), (0, _react2.jsx)(_index.IconButton, {
350
- "aria-label": "close icon button",
351
- onPress: onClosePanel
352
- }, (0, _react2.jsx)(_index.Icon, {
353
- size: "md",
354
- icon: _CloseIcon["default"]
355
- })))));
553
+ }, "Delete user")), (0, _react2.jsx)(_index.PanelHeaderCloseButton, {
554
+ onPress: closePanelHandler
555
+ }));
356
556
  };
357
- exports.PanelHeader = PanelHeader;
557
+ exports.OverlayPanelHeader = OverlayPanelHeader;