@deque/cauldron-react 3.0.1-canary.ec8e93ab → 4.0.0-canary.2be1dbda

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.
Files changed (92) hide show
  1. package/lib/{add-user-075c63a1.js → add-user.js} +10 -12
  2. package/lib/arrow-circle.js +24 -0
  3. package/lib/{arrow-97011665.js → arrow.js} +13 -16
  4. package/lib/arrows-alt.js +24 -0
  5. package/lib/{bolt-e44406fd.js → bolt.js} +11 -12
  6. package/lib/cauldron.css +8 -8
  7. package/lib/{caution-e048e1bf.js → caution.js} +10 -12
  8. package/lib/{check-circle-8b5069b4.js → check-circle.js} +12 -13
  9. package/lib/{check-shield-8fdb3641.js → check-shield.js} +11 -13
  10. package/lib/{check-solid-a0682f04.js → check-solid.js} +12 -13
  11. package/lib/{check-c2912d5e.js → check.js} +12 -13
  12. package/lib/{checkbox-checked-a262e99c.js → checkbox-checked.js} +12 -13
  13. package/lib/{checkbox-unchecked-2ad5b4ae.js → checkbox-unchecked.js} +11 -12
  14. package/lib/chevron-double.js +24 -0
  15. package/lib/chevron.js +24 -0
  16. package/lib/{close-31ce4dcf.js → close.js} +12 -13
  17. package/lib/code.js +25 -0
  18. package/lib/components/Breadcrumb/Breadcrumb.d.ts +11 -0
  19. package/lib/components/Breadcrumb/BreadcrumbItem.d.ts +5 -0
  20. package/lib/components/Breadcrumb/BreadcrumbLink.d.ts +6 -0
  21. package/lib/components/Breadcrumb/index.d.ts +3 -0
  22. package/lib/components/FieldWrap/index.d.ts +7 -0
  23. package/lib/components/Icon/types.d.ts +1 -1
  24. package/lib/components/IssuePanel/index.d.ts +17 -0
  25. package/lib/components/Loader/index.d.ts +2 -1
  26. package/lib/components/LoaderOverlay/axe-loader.d.ts +1 -0
  27. package/lib/components/LoaderOverlay/index.d.ts +5 -1
  28. package/lib/components/Pagination/index.d.ts +20 -0
  29. package/lib/components/Panel/index.d.ts +13 -8
  30. package/lib/components/Table/TableHeader.d.ts +6 -1
  31. package/lib/components/Tabs/Tabs.d.ts +3 -1
  32. package/lib/{copy-d2ade017.js → copy.js} +10 -12
  33. package/lib/{download-2790e982.js → download.js} +10 -12
  34. package/lib/exchange.js +24 -0
  35. package/lib/external-link.js +25 -0
  36. package/lib/{eye-a0d28243.js → eye.js} +10 -12
  37. package/lib/{filter-d2057f4c.js → filter.js} +10 -12
  38. package/lib/{flag-fb248a99.js → flag.js} +12 -13
  39. package/lib/gears.js +22 -0
  40. package/lib/{grid-ee446118.js → grid.js} +10 -12
  41. package/lib/{hamburger-menu-0fc0e266.js → hamburger-menu.js} +10 -11
  42. package/lib/highlight.js +24 -0
  43. package/lib/index.d.ts +4 -0
  44. package/lib/index.js +329 -137
  45. package/lib/{info-circle-alt-b1a696c7.js → info-circle-alt.js} +10 -12
  46. package/lib/{info-circle-b43f7a9b.js → info-circle.js} +11 -12
  47. package/lib/{info-square-f193e281.js → info-square.js} +10 -11
  48. package/lib/kabob.js +25 -0
  49. package/lib/{list-8fbd8209.js → list.js} +10 -11
  50. package/lib/{lock-bd0122db.js → lock.js} +12 -13
  51. package/lib/{magnifying-glass-2907fb77.js → magnifying-glass.js} +9 -11
  52. package/lib/{menu-2f2be7c2.js → menu.js} +11 -12
  53. package/lib/{new-releases-ac749bdd.js → new-releases.js} +13 -15
  54. package/lib/{new-6c3ac7d7.js → new.js} +11 -12
  55. package/lib/{no-bb3aa565.js → no.js} +12 -13
  56. package/lib/{pencil-4843058f.js → pencil.js} +11 -13
  57. package/lib/{plus-6589e613.js → plus.js} +11 -12
  58. package/lib/{question-circle-c3c634c4.js → question-circle.js} +11 -13
  59. package/lib/{radio-checked-006112fe.js → radio-checked.js} +11 -12
  60. package/lib/{radio-unchecked-a76e2d66.js → radio-unchecked.js} +11 -12
  61. package/lib/{recycle-0198fb67.js → recycle.js} +11 -12
  62. package/lib/resend.js +24 -0
  63. package/lib/robot.js +26 -0
  64. package/lib/run-again.js +23 -0
  65. package/lib/{save-edf5fc68.js → save.js} +12 -13
  66. package/lib/share.js +25 -0
  67. package/lib/sort-triangle.js +24 -0
  68. package/lib/{sort-49ec1442.js → sort.js} +11 -13
  69. package/lib/{star-a1af8d95.js → star.js} +11 -13
  70. package/lib/sun.js +24 -0
  71. package/lib/{tag-56c32f4f.js → tag.js} +11 -12
  72. package/lib/target.js +28 -0
  73. package/lib/trash.js +24 -0
  74. package/lib/{triangle-51d7723a.js → triangle.js} +14 -16
  75. package/lib/{upload-d71f0e44.js → upload.js} +10 -12
  76. package/package.json +3 -3
  77. package/lib/arrow-circle-7b95a2fd.js +0 -27
  78. package/lib/arrows-alt-b91e24b7.js +0 -26
  79. package/lib/chevron-064d5f96.js +0 -26
  80. package/lib/chevron-double-65975fca.js +0 -26
  81. package/lib/code-e3365341.js +0 -26
  82. package/lib/exchange-1d290efb.js +0 -26
  83. package/lib/external-link-ef122c95.js +0 -26
  84. package/lib/gears-b9ee1585.js +0 -23
  85. package/lib/highlight-81bfb759.js +0 -26
  86. package/lib/kabob-692fdc00.js +0 -26
  87. package/lib/robot-22863b2b.js +0 -29
  88. package/lib/run-again-c9777075.js +0 -25
  89. package/lib/share-70e94257.js +0 -26
  90. package/lib/sun-408aecdc.js +0 -26
  91. package/lib/target-50f179e0.js +0 -35
  92. package/lib/trash-896a3291.js +0 -26
package/lib/index.js CHANGED
@@ -173,10 +173,12 @@ var iconTypes = [
173
173
  'radio-checked',
174
174
  'radio-unchecked',
175
175
  'recycle',
176
+ 'resend',
176
177
  'robot',
177
178
  'run-again',
178
179
  'save',
179
180
  'share',
181
+ 'sort-triangle',
180
182
  'sort',
181
183
  'star',
182
184
  'sun',
@@ -191,75 +193,81 @@ var iconTypes = [
191
193
  ];
192
194
 
193
195
  function __variableDynamicImportRuntime0__(path) {
194
- switch (path) {
195
- case './icons/add-user.svg': return Promise.resolve().then(function () { return require('./add-user-075c63a1.js'); });
196
- case './icons/arrow-circle.svg': return Promise.resolve().then(function () { return require('./arrow-circle-7b95a2fd.js'); });
197
- case './icons/arrow.svg': return Promise.resolve().then(function () { return require('./arrow-97011665.js'); });
198
- case './icons/arrows-alt.svg': return Promise.resolve().then(function () { return require('./arrows-alt-b91e24b7.js'); });
199
- case './icons/bolt.svg': return Promise.resolve().then(function () { return require('./bolt-e44406fd.js'); });
200
- case './icons/caution.svg': return Promise.resolve().then(function () { return require('./caution-e048e1bf.js'); });
201
- case './icons/check-circle.svg': return Promise.resolve().then(function () { return require('./check-circle-8b5069b4.js'); });
202
- case './icons/check-shield.svg': return Promise.resolve().then(function () { return require('./check-shield-8fdb3641.js'); });
203
- case './icons/check-solid.svg': return Promise.resolve().then(function () { return require('./check-solid-a0682f04.js'); });
204
- case './icons/check.svg': return Promise.resolve().then(function () { return require('./check-c2912d5e.js'); });
205
- case './icons/checkbox-checked.svg': return Promise.resolve().then(function () { return require('./checkbox-checked-a262e99c.js'); });
206
- case './icons/checkbox-unchecked.svg': return Promise.resolve().then(function () { return require('./checkbox-unchecked-2ad5b4ae.js'); });
207
- case './icons/chevron-double.svg': return Promise.resolve().then(function () { return require('./chevron-double-65975fca.js'); });
208
- case './icons/chevron.svg': return Promise.resolve().then(function () { return require('./chevron-064d5f96.js'); });
209
- case './icons/close.svg': return Promise.resolve().then(function () { return require('./close-31ce4dcf.js'); });
210
- case './icons/code.svg': return Promise.resolve().then(function () { return require('./code-e3365341.js'); });
211
- case './icons/copy.svg': return Promise.resolve().then(function () { return require('./copy-d2ade017.js'); });
212
- case './icons/download.svg': return Promise.resolve().then(function () { return require('./download-2790e982.js'); });
213
- case './icons/exchange.svg': return Promise.resolve().then(function () { return require('./exchange-1d290efb.js'); });
214
- case './icons/external-link.svg': return Promise.resolve().then(function () { return require('./external-link-ef122c95.js'); });
215
- case './icons/eye.svg': return Promise.resolve().then(function () { return require('./eye-a0d28243.js'); });
216
- case './icons/filter.svg': return Promise.resolve().then(function () { return require('./filter-d2057f4c.js'); });
217
- case './icons/flag.svg': return Promise.resolve().then(function () { return require('./flag-fb248a99.js'); });
218
- case './icons/gears.svg': return Promise.resolve().then(function () { return require('./gears-b9ee1585.js'); });
219
- case './icons/grid.svg': return Promise.resolve().then(function () { return require('./grid-ee446118.js'); });
220
- case './icons/hamburger-menu.svg': return Promise.resolve().then(function () { return require('./hamburger-menu-0fc0e266.js'); });
221
- case './icons/highlight.svg': return Promise.resolve().then(function () { return require('./highlight-81bfb759.js'); });
222
- case './icons/info-circle-alt.svg': return Promise.resolve().then(function () { return require('./info-circle-alt-b1a696c7.js'); });
223
- case './icons/info-circle.svg': return Promise.resolve().then(function () { return require('./info-circle-b43f7a9b.js'); });
224
- case './icons/info-square.svg': return Promise.resolve().then(function () { return require('./info-square-f193e281.js'); });
225
- case './icons/kabob.svg': return Promise.resolve().then(function () { return require('./kabob-692fdc00.js'); });
226
- case './icons/list.svg': return Promise.resolve().then(function () { return require('./list-8fbd8209.js'); });
227
- case './icons/lock.svg': return Promise.resolve().then(function () { return require('./lock-bd0122db.js'); });
228
- case './icons/magnifying-glass.svg': return Promise.resolve().then(function () { return require('./magnifying-glass-2907fb77.js'); });
229
- case './icons/menu.svg': return Promise.resolve().then(function () { return require('./menu-2f2be7c2.js'); });
230
- case './icons/new-releases.svg': return Promise.resolve().then(function () { return require('./new-releases-ac749bdd.js'); });
231
- case './icons/new.svg': return Promise.resolve().then(function () { return require('./new-6c3ac7d7.js'); });
232
- case './icons/no.svg': return Promise.resolve().then(function () { return require('./no-bb3aa565.js'); });
233
- case './icons/pencil.svg': return Promise.resolve().then(function () { return require('./pencil-4843058f.js'); });
234
- case './icons/plus.svg': return Promise.resolve().then(function () { return require('./plus-6589e613.js'); });
235
- case './icons/question-circle.svg': return Promise.resolve().then(function () { return require('./question-circle-c3c634c4.js'); });
236
- case './icons/radio-checked.svg': return Promise.resolve().then(function () { return require('./radio-checked-006112fe.js'); });
237
- case './icons/radio-unchecked.svg': return Promise.resolve().then(function () { return require('./radio-unchecked-a76e2d66.js'); });
238
- case './icons/recycle.svg': return Promise.resolve().then(function () { return require('./recycle-0198fb67.js'); });
239
- case './icons/robot.svg': return Promise.resolve().then(function () { return require('./robot-22863b2b.js'); });
240
- case './icons/run-again.svg': return Promise.resolve().then(function () { return require('./run-again-c9777075.js'); });
241
- case './icons/save.svg': return Promise.resolve().then(function () { return require('./save-edf5fc68.js'); });
242
- case './icons/share.svg': return Promise.resolve().then(function () { return require('./share-70e94257.js'); });
243
- case './icons/sort.svg': return Promise.resolve().then(function () { return require('./sort-49ec1442.js'); });
244
- case './icons/star.svg': return Promise.resolve().then(function () { return require('./star-a1af8d95.js'); });
245
- case './icons/sun.svg': return Promise.resolve().then(function () { return require('./sun-408aecdc.js'); });
246
- case './icons/tag.svg': return Promise.resolve().then(function () { return require('./tag-56c32f4f.js'); });
247
- case './icons/target.svg': return Promise.resolve().then(function () { return require('./target-50f179e0.js'); });
248
- case './icons/trash.svg': return Promise.resolve().then(function () { return require('./trash-896a3291.js'); });
249
- case './icons/triangle.svg': return Promise.resolve().then(function () { return require('./triangle-51d7723a.js'); });
250
- case './icons/upload.svg': return Promise.resolve().then(function () { return require('./upload-d71f0e44.js'); });
251
- default: return Promise.reject(new Error("Unknown variable dynamic import: " + path));
196
+ switch (path) {
197
+ case './icons/add-user.svg': return Promise.resolve().then(function () { return require('./add-user.js'); });
198
+ case './icons/arrow-circle.svg': return Promise.resolve().then(function () { return require('./arrow-circle.js'); });
199
+ case './icons/arrow.svg': return Promise.resolve().then(function () { return require('./arrow.js'); });
200
+ case './icons/arrows-alt.svg': return Promise.resolve().then(function () { return require('./arrows-alt.js'); });
201
+ case './icons/bolt.svg': return Promise.resolve().then(function () { return require('./bolt.js'); });
202
+ case './icons/caution.svg': return Promise.resolve().then(function () { return require('./caution.js'); });
203
+ case './icons/check-circle.svg': return Promise.resolve().then(function () { return require('./check-circle.js'); });
204
+ case './icons/check-shield.svg': return Promise.resolve().then(function () { return require('./check-shield.js'); });
205
+ case './icons/check-solid.svg': return Promise.resolve().then(function () { return require('./check-solid.js'); });
206
+ case './icons/check.svg': return Promise.resolve().then(function () { return require('./check.js'); });
207
+ case './icons/checkbox-checked.svg': return Promise.resolve().then(function () { return require('./checkbox-checked.js'); });
208
+ case './icons/checkbox-unchecked.svg': return Promise.resolve().then(function () { return require('./checkbox-unchecked.js'); });
209
+ case './icons/chevron-double.svg': return Promise.resolve().then(function () { return require('./chevron-double.js'); });
210
+ case './icons/chevron.svg': return Promise.resolve().then(function () { return require('./chevron.js'); });
211
+ case './icons/close.svg': return Promise.resolve().then(function () { return require('./close.js'); });
212
+ case './icons/code.svg': return Promise.resolve().then(function () { return require('./code.js'); });
213
+ case './icons/copy.svg': return Promise.resolve().then(function () { return require('./copy.js'); });
214
+ case './icons/download.svg': return Promise.resolve().then(function () { return require('./download.js'); });
215
+ case './icons/exchange.svg': return Promise.resolve().then(function () { return require('./exchange.js'); });
216
+ case './icons/external-link.svg': return Promise.resolve().then(function () { return require('./external-link.js'); });
217
+ case './icons/eye.svg': return Promise.resolve().then(function () { return require('./eye.js'); });
218
+ case './icons/filter.svg': return Promise.resolve().then(function () { return require('./filter.js'); });
219
+ case './icons/flag.svg': return Promise.resolve().then(function () { return require('./flag.js'); });
220
+ case './icons/gears.svg': return Promise.resolve().then(function () { return require('./gears.js'); });
221
+ case './icons/grid.svg': return Promise.resolve().then(function () { return require('./grid.js'); });
222
+ case './icons/hamburger-menu.svg': return Promise.resolve().then(function () { return require('./hamburger-menu.js'); });
223
+ case './icons/highlight.svg': return Promise.resolve().then(function () { return require('./highlight.js'); });
224
+ case './icons/info-circle-alt.svg': return Promise.resolve().then(function () { return require('./info-circle-alt.js'); });
225
+ case './icons/info-circle.svg': return Promise.resolve().then(function () { return require('./info-circle.js'); });
226
+ case './icons/info-square.svg': return Promise.resolve().then(function () { return require('./info-square.js'); });
227
+ case './icons/kabob.svg': return Promise.resolve().then(function () { return require('./kabob.js'); });
228
+ case './icons/list.svg': return Promise.resolve().then(function () { return require('./list.js'); });
229
+ case './icons/lock.svg': return Promise.resolve().then(function () { return require('./lock.js'); });
230
+ case './icons/magnifying-glass.svg': return Promise.resolve().then(function () { return require('./magnifying-glass.js'); });
231
+ case './icons/menu.svg': return Promise.resolve().then(function () { return require('./menu.js'); });
232
+ case './icons/new-releases.svg': return Promise.resolve().then(function () { return require('./new-releases.js'); });
233
+ case './icons/new.svg': return Promise.resolve().then(function () { return require('./new.js'); });
234
+ case './icons/no.svg': return Promise.resolve().then(function () { return require('./no.js'); });
235
+ case './icons/pencil.svg': return Promise.resolve().then(function () { return require('./pencil.js'); });
236
+ case './icons/plus.svg': return Promise.resolve().then(function () { return require('./plus.js'); });
237
+ case './icons/question-circle.svg': return Promise.resolve().then(function () { return require('./question-circle.js'); });
238
+ case './icons/radio-checked.svg': return Promise.resolve().then(function () { return require('./radio-checked.js'); });
239
+ case './icons/radio-unchecked.svg': return Promise.resolve().then(function () { return require('./radio-unchecked.js'); });
240
+ case './icons/recycle.svg': return Promise.resolve().then(function () { return require('./recycle.js'); });
241
+ case './icons/resend.svg': return Promise.resolve().then(function () { return require('./resend.js'); });
242
+ case './icons/robot.svg': return Promise.resolve().then(function () { return require('./robot.js'); });
243
+ case './icons/run-again.svg': return Promise.resolve().then(function () { return require('./run-again.js'); });
244
+ case './icons/save.svg': return Promise.resolve().then(function () { return require('./save.js'); });
245
+ case './icons/share.svg': return Promise.resolve().then(function () { return require('./share.js'); });
246
+ case './icons/sort-triangle.svg': return Promise.resolve().then(function () { return require('./sort-triangle.js'); });
247
+ case './icons/sort.svg': return Promise.resolve().then(function () { return require('./sort.js'); });
248
+ case './icons/star.svg': return Promise.resolve().then(function () { return require('./star.js'); });
249
+ case './icons/sun.svg': return Promise.resolve().then(function () { return require('./sun.js'); });
250
+ case './icons/tag.svg': return Promise.resolve().then(function () { return require('./tag.js'); });
251
+ case './icons/target.svg': return Promise.resolve().then(function () { return require('./target.js'); });
252
+ case './icons/trash.svg': return Promise.resolve().then(function () { return require('./trash.js'); });
253
+ case './icons/triangle.svg': return Promise.resolve().then(function () { return require('./triangle.js'); });
254
+ case './icons/upload.svg': return Promise.resolve().then(function () { return require('./upload.js'); });
255
+ default: return new Promise(function(resolve, reject) {
256
+ (typeof queueMicrotask === 'function' ? queueMicrotask : setTimeout)(
257
+ reject.bind(null, new Error("Unknown variable dynamic import: " + path))
258
+ );
259
+ })
252
260
  }
253
261
  }
254
262
  var Icon = React.forwardRef(function (_a, ref) {
255
263
  var _b;
256
264
  var label = _a.label, className = _a.className, type = _a.type, other = tslib.__rest(_a, ["label", "className", "type"]);
257
265
  var isMounted = React.useRef(true);
258
- var _c = type.match(/(.*)-(right|left|up|down)$/) || [
266
+ var _c = tslib.__read(type.match(/(.*)-(right|left|up|down)$/) || [
259
267
  '',
260
268
  type
261
- ], name = _c[1], direction = _c[2];
262
- var _d = React.useState(null), IconSVG = _d[0], setIcon = _d[1];
269
+ ], 3), name = _c[1], direction = _c[2];
270
+ var _d = tslib.__read(React.useState(null), 2), IconSVG = _d[0], setIcon = _d[1];
263
271
  React.useEffect(function () {
264
272
  isMounted.current = true;
265
273
  // NOTE: we don't want to pollute test output with
@@ -475,9 +483,9 @@ var TopBar = /** @class */ (function (_super) {
475
483
  args[_i] = arguments[_i];
476
484
  }
477
485
  // @ts-ignore we're just spreading the original args
478
- _this.onKeyDown.apply(_this, args);
486
+ _this.onKeyDown.apply(_this, tslib.__spread(args));
479
487
  if (child.props.onKeyDown) {
480
- (_a = child.props).onKeyDown.apply(_a, args);
488
+ (_a = child.props).onKeyDown.apply(_a, tslib.__spread(args));
481
489
  }
482
490
  },
483
491
  tabIndex: 0,
@@ -513,7 +521,7 @@ var TopBar = /** @class */ (function (_super) {
513
521
  };
514
522
  TopBar.prototype.onKeyDown = function (e) {
515
523
  var key = keyname(e.which);
516
- var menuItems = tslib.__spreadArrays(this.menuItems);
524
+ var menuItems = tslib.__spread(this.menuItems);
517
525
  // account for hidden side bar trigger (hamburger)
518
526
  if (this.state.wide && this.props.hasTrigger) {
519
527
  menuItems.shift();
@@ -665,7 +673,7 @@ var ClickOutsideListener = /** @class */ (function (_super) {
665
673
  return ClickOutsideListener;
666
674
  }(React__default.Component));
667
675
 
668
- var _a = [38, 40, 9, 13, 32, 27], up = _a[0], down = _a[1], tab = _a[2], enter = _a[3], space = _a[4], esc = _a[5];
676
+ var _a = tslib.__read([38, 40, 9, 13, 32, 27], 6), up = _a[0], down = _a[1], tab = _a[2], enter = _a[3], space = _a[4], esc = _a[5];
669
677
  var OptionsMenuList = /** @class */ (function (_super) {
670
678
  tslib.__extends(OptionsMenuList, _super);
671
679
  function OptionsMenuList(props) {
@@ -793,7 +801,7 @@ var OptionsMenuList = /** @class */ (function (_super) {
793
801
  return OptionsMenuList;
794
802
  }(React__default.Component));
795
803
 
796
- var down$1 = [40][0];
804
+ var _a$1 = tslib.__read([40], 1), down$1 = _a$1[0];
797
805
  var OptionsMenu = /** @class */ (function (_super) {
798
806
  tslib.__extends(OptionsMenu, _super);
799
807
  function OptionsMenu(props) {
@@ -995,8 +1003,8 @@ var NavBar = function (_a) {
995
1003
  var children = _a.children, className = _a.className, _b = _a.collapsed, collapsed = _b === void 0 ? false : _b, _c = _a.navTriggerLabel, navTriggerLabel = _c === void 0 ? 'MAIN MENU' : _c, propId = _a.propId;
996
1004
  var navRef = React.useRef(null);
997
1005
  var triggerRef = React.useRef(null);
998
- var _d = React.useState(false), showDropdown = _d[0], setShowDropdown = _d[1];
999
- var menuId = ([propId] || nextId.useId(1, 'navbar'))[0];
1006
+ var _d = tslib.__read(React.useState(false), 2), showDropdown = _d[0], setShowDropdown = _d[1];
1007
+ var _e = tslib.__read([propId] || nextId.useId(1, 'navbar'), 1), menuId = _e[0];
1000
1008
  var showNavItems = !collapsed || (collapsed && showDropdown);
1001
1009
  var handleOutSideEvent = function (e) {
1002
1010
  var _a;
@@ -1132,9 +1140,9 @@ var SideBar = /** @class */ (function (_super) {
1132
1140
  SideBar.prototype.animate = function () {
1133
1141
  var _this = this;
1134
1142
  var show = this.props.show;
1135
- var _a = show
1143
+ var _a = tslib.__read(show
1136
1144
  ? ['SideBar--show', 'SideBar--show SideBar--active']
1137
- : ['SideBar--show', ''], first = _a[0], second = _a[1];
1145
+ : ['SideBar--show', ''], 2), first = _a[0], second = _a[1];
1138
1146
  this.setState({ animateClass: first });
1139
1147
  // css3 animations require transition classes to be added on separate tics
1140
1148
  setTimeout(function () {
@@ -1468,14 +1476,14 @@ var fireCustomEvent = function (show, button) {
1468
1476
  function Tooltip(_a) {
1469
1477
  var _this = this;
1470
1478
  var propId = _a.id, _b = _a.placement, initialPlacement = _b === void 0 ? 'auto' : _b, children = _a.children, portal = _a.portal, target = _a.target, _c = _a.association, association = _c === void 0 ? 'aria-describedby' : _c, _d = _a.variant, variant = _d === void 0 ? 'text' : _d, _e = _a.show, showProp = _e === void 0 ? false : _e, _f = _a.hideElementOnHidden, hideElementOnHidden = _f === void 0 ? false : _f, className = _a.className, props = tslib.__rest(_a, ["id", "placement", "children", "portal", "target", "association", "variant", "show", "hideElementOnHidden", "className"]);
1471
- var id = (propId ? [propId] : nextId.useId(1, 'tooltip'))[0];
1479
+ var _g = tslib.__read(propId ? [propId] : nextId.useId(1, 'tooltip'), 1), id = _g[0];
1472
1480
  var hovering = React.useRef(false);
1473
- var _g = React.useState(initialPlacement), placement = _g[0], setPlacement = _g[1];
1474
- var _h = React.useState(!!showProp), showTooltip = _h[0], setShowTooltip = _h[1];
1475
- var _j = React.useState(null), targetElement = _j[0], setTargetElement = _j[1];
1476
- var _k = React.useState(null), tooltipElement = _k[0], setTooltipElement = _k[1];
1477
- var _l = React.useState(null), arrowElement = _l[0], setArrowElement = _l[1];
1478
- var _m = reactPopper.usePopper(targetElement, tooltipElement, {
1481
+ var _h = tslib.__read(React.useState(initialPlacement), 2), placement = _h[0], setPlacement = _h[1];
1482
+ var _j = tslib.__read(React.useState(!!showProp), 2), showTooltip = _j[0], setShowTooltip = _j[1];
1483
+ var _k = tslib.__read(React.useState(null), 2), targetElement = _k[0], setTargetElement = _k[1];
1484
+ var _l = tslib.__read(React.useState(null), 2), tooltipElement = _l[0], setTooltipElement = _l[1];
1485
+ var _m = tslib.__read(React.useState(null), 2), arrowElement = _m[0], setArrowElement = _m[1];
1486
+ var _o = reactPopper.usePopper(targetElement, tooltipElement, {
1479
1487
  placement: initialPlacement,
1480
1488
  modifiers: [
1481
1489
  { name: 'preventOverflow', options: { padding: 8 } },
@@ -1483,7 +1491,7 @@ function Tooltip(_a) {
1483
1491
  { name: 'offset', options: { offset: [0, 8] } },
1484
1492
  { name: 'arrow', options: { padding: 5, element: arrowElement } }
1485
1493
  ]
1486
- }), styles = _m.styles, attributes = _m.attributes, update = _m.update;
1494
+ }), styles = _o.styles, attributes = _o.attributes, update = _o.update;
1487
1495
  var show = function () { return tslib.__awaiter(_this, void 0, void 0, function () {
1488
1496
  return tslib.__generator(this, function (_a) {
1489
1497
  switch (_a.label) {
@@ -1556,9 +1564,9 @@ function Tooltip(_a) {
1556
1564
  return function () {
1557
1565
  targetElement.removeEventListener('keyup', handleEscape);
1558
1566
  };
1559
- }, [show]);
1567
+ }, [showProp]);
1560
1568
  React.useEffect(function () {
1561
- if (typeof show !== undefined) {
1569
+ if (typeof showProp !== undefined) {
1562
1570
  targetElement === null || targetElement === void 0 ? void 0 : targetElement.addEventListener('mouseenter', handleTriggerMouseEnter);
1563
1571
  targetElement === null || targetElement === void 0 ? void 0 : targetElement.addEventListener('mouseleave', handleTriggerMouseLeave);
1564
1572
  targetElement === null || targetElement === void 0 ? void 0 : targetElement.addEventListener('focusin', show);
@@ -1570,7 +1578,7 @@ function Tooltip(_a) {
1570
1578
  targetElement === null || targetElement === void 0 ? void 0 : targetElement.removeEventListener('focusin', show);
1571
1579
  targetElement === null || targetElement === void 0 ? void 0 : targetElement.removeEventListener('focusout', hide);
1572
1580
  };
1573
- }, [targetElement, show]);
1581
+ }, [targetElement, showProp]);
1574
1582
  React.useEffect(function () {
1575
1583
  if (tooltipElement) {
1576
1584
  tooltipElement === null || tooltipElement === void 0 ? void 0 : tooltipElement.addEventListener('mouseenter', handleTipMouseEnter);
@@ -1643,6 +1651,13 @@ var IconButton = React.forwardRef(function (_a, ref) {
1643
1651
  accessibilityProps['aria-disabled'] = disabled;
1644
1652
  }
1645
1653
  }
1654
+ React.useEffect(function () {
1655
+ var _a;
1656
+ if (!disabled) {
1657
+ return;
1658
+ }
1659
+ (_a = internalRef.current) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-label', label);
1660
+ }, [disabled]);
1646
1661
  return (React__default.createElement(React__default.Fragment, null,
1647
1662
  React__default.createElement(Component, tslib.__assign({ className: classNames(className, {
1648
1663
  IconButton: true,
@@ -1729,19 +1744,29 @@ var Pointout = /** @class */ (function (_super) {
1729
1744
  }
1730
1745
  };
1731
1746
  _this.handleOffscreenFocusIn = function (_a) {
1747
+ var e_1, _b;
1732
1748
  var target = _a.target;
1733
- var _b = _this, offscreenRef = _b.offscreenRef, visibleRef = _b.visibleRef, getFocusableElements = _b.getFocusableElements;
1749
+ var _c = _this, offscreenRef = _c.offscreenRef, visibleRef = _c.visibleRef, getFocusableElements = _c.getFocusableElements;
1734
1750
  var offscreenFocusable = getFocusableElements(offscreenRef);
1735
1751
  var visibleFocusable = getFocusableElements(visibleRef);
1736
1752
  var elementIndex = offscreenFocusable.findIndex(function (element) { return element === target; });
1737
1753
  if (elementIndex === -1 || !visibleFocusable[elementIndex]) {
1738
1754
  return;
1739
1755
  }
1740
- // Tag focusable elements
1741
- for (var _i = 0, visibleFocusable_1 = visibleFocusable; _i < visibleFocusable_1.length; _i++) {
1742
- var element = visibleFocusable_1[_i];
1743
- element.setAttribute('data-focusable', 'true');
1744
- element.setAttribute('tabindex', '-1');
1756
+ try {
1757
+ // Tag focusable elements
1758
+ for (var visibleFocusable_1 = tslib.__values(visibleFocusable), visibleFocusable_1_1 = visibleFocusable_1.next(); !visibleFocusable_1_1.done; visibleFocusable_1_1 = visibleFocusable_1.next()) {
1759
+ var element = visibleFocusable_1_1.value;
1760
+ element.setAttribute('data-focusable', 'true');
1761
+ element.setAttribute('tabindex', '-1');
1762
+ }
1763
+ }
1764
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
1765
+ finally {
1766
+ try {
1767
+ if (visibleFocusable_1_1 && !visibleFocusable_1_1.done && (_b = visibleFocusable_1["return"])) _b.call(visibleFocusable_1);
1768
+ }
1769
+ finally { if (e_1) throw e_1.error; }
1745
1770
  }
1746
1771
  visibleFocusable[elementIndex].classList.add('Pointout--focus-active');
1747
1772
  };
@@ -1774,7 +1799,7 @@ var Pointout = /** @class */ (function (_super) {
1774
1799
  top -= rect.top - portalNode.scrollTop;
1775
1800
  left -= rect.left - portalNode.scrollLeft;
1776
1801
  }
1777
- var arrowBoxSide = arrowPosition.split('-')[0];
1802
+ var _e = tslib.__read(arrowPosition.split('-'), 1), arrowBoxSide = _e[0];
1778
1803
  var style;
1779
1804
  switch (arrowBoxSide) {
1780
1805
  case 'right':
@@ -2186,8 +2211,7 @@ Link.propTypes = {
2186
2211
  Link.displayName = 'Link';
2187
2212
 
2188
2213
  function Loader(_a) {
2189
- var className = _a.className, label = _a.label, other = tslib.__rest(_a, ["className", "label"]);
2190
- var props = tslib.__assign(tslib.__assign({}, other), { className: classNames('Loader', className) });
2214
+ var className = _a.className, _b = _a.variant, variant = _b === void 0 ? 'small' : _b, label = _a.label, props = tslib.__rest(_a, ["className", "variant", "label"]);
2191
2215
  if (label === null || label === void 0 ? void 0 : label.length) {
2192
2216
  props['role'] = 'alert';
2193
2217
  props.children = React__default.createElement(Offscreen, null, label);
@@ -2195,7 +2219,11 @@ function Loader(_a) {
2195
2219
  else {
2196
2220
  props['aria-hidden'] = true;
2197
2221
  }
2198
- return React__default.createElement("div", tslib.__assign({}, props));
2222
+ return (React__default.createElement("div", tslib.__assign({ className: classNames('Loader', className, variant === 'large'
2223
+ ? 'Loader--large'
2224
+ : variant === 'small'
2225
+ ? 'Loader--small'
2226
+ : '') }, props)));
2199
2227
  }
2200
2228
  Loader.propTypes = {
2201
2229
  className: PropTypes.string
@@ -2223,7 +2251,7 @@ var Select = React__default.forwardRef(function (_a, ref) {
2223
2251
  // eslint-disable-next-line @typescript-eslint/no-empty-function
2224
2252
  var onChangeEvent = onChange !== null && onChange !== void 0 ? onChange : (function () { });
2225
2253
  var isControlled = typeof value !== 'undefined';
2226
- var _c = React.useState(value || defaultValue || ''), currentValue = _c[0], setCurrentValue = _c[1];
2254
+ var _c = tslib.__read(React.useState(value || defaultValue || ''), 2), currentValue = _c[0], setCurrentValue = _c[1];
2227
2255
  var handleChange = function (e) {
2228
2256
  onChangeEvent(e);
2229
2257
  if (isControlled) {
@@ -2280,8 +2308,8 @@ var RadioGroup = function (_a) {
2280
2308
  _b = _a.onChange,
2281
2309
  // eslint-disable-next-line @typescript-eslint/no-empty-function
2282
2310
  onChange = _b === void 0 ? function () { } : _b, className = _a.className, other = tslib.__rest(_a, ["name", "radios", "defaultValue", "value", "onChange", "className"]);
2283
- var _c = React.useState(value || defaultValue || null), currentValue = _c[0], setCurrentValue = _c[1];
2284
- var _d = React.useState(null), focusIndex = _d[0], setFocusIndex = _d[1];
2311
+ var _c = tslib.__read(React.useState(value || defaultValue || null), 2), currentValue = _c[0], setCurrentValue = _c[1];
2312
+ var _d = tslib.__read(React.useState(null), 2), focusIndex = _d[0], setFocusIndex = _d[1];
2285
2313
  var inputs = React.useRef([]);
2286
2314
  var handleChange = function (value) { return setCurrentValue(value); };
2287
2315
  var onRadioFocus = function (index) { return setFocusIndex(index); };
@@ -2350,8 +2378,8 @@ RadioGroup.displayName = 'RadioGroup';
2350
2378
 
2351
2379
  var Checkbox = React.forwardRef(function (_a, ref) {
2352
2380
  var id = _a.id, label = _a.label, error = _a.error, checkboxRef = _a.checkboxRef, className = _a.className, onChange = _a.onChange, ariaDescribedby = _a["aria-describedby"], _b = _a.disabled, disabled = _b === void 0 ? false : _b, _c = _a.checked, checked = _c === void 0 ? false : _c, other = tslib.__rest(_a, ["id", "label", "error", "checkboxRef", "className", "onChange", 'aria-describedby', "disabled", "checked"]);
2353
- var _d = React.useState(checked), isChecked = _d[0], setIsChecked = _d[1];
2354
- var _e = React.useState(false), focused = _e[0], setFocused = _e[1];
2381
+ var _d = tslib.__read(React.useState(checked), 2), isChecked = _d[0], setIsChecked = _d[1];
2382
+ var _e = tslib.__read(React.useState(false), 2), focused = _e[0], setFocused = _e[1];
2355
2383
  var checkRef = React.useRef(null);
2356
2384
  React.useEffect(function () {
2357
2385
  setIsChecked(checked);
@@ -7935,12 +7963,29 @@ Code.propTypes = {
7935
7963
  className: PropTypes.string
7936
7964
  };
7937
7965
 
7966
+ function AxeLoader() {
7967
+ return (React__default.createElement("svg", { version: "1.1", xmlns: "http://www.w3.org/2000/svg", x: "0", y: "0", viewBox: "0 0 800 800" },
7968
+ React__default.createElement("path", { fill: "currentColor", d: "M641.4 555.6c-27.2-12.1-59.1.2-71.2 27.3-.5 1-.8 2.1-1.2 3.2H160l227.6-394.3 170.1 292.8 32.4-18.8L387.5 117 95 623.6h474c4.9 13.1 14.8 24.4 28.6 30.5 7.1 3.2 14.5 4.7 21.8 4.7 20.7 0 40.4-11.9 49.3-32 12.1-27.1-.1-59.1-27.3-71.2zm1.6 59.8c-5.8 13-21.1 18.9-34 13.1-13-5.8-18.9-21.1-13.1-34 4.3-9.6 13.7-15.3 23.6-15.3 3.5 0 7.1.7 10.4 2.2 13.1 5.7 18.9 21 13.1 34z" }),
7969
+ React__default.createElement("path", { fill: "currentColor", d: "M379 549.9h-27.6v-16.7c-7.4 13.5-22.8 20.2-39 20.2-37.1 0-58.9-28.9-58.9-61.6 0-36.5 26.4-61.4 58.9-61.4 21.1 0 34 11.2 39 20.5V434H379v115.9zm-97.8-57.4c0 14.3 10.3 35.2 35.2 35.2 15.4 0 25.5-8 30.8-18.6 2.7-5.1 4-10.5 4.4-16.2.2-5.5-.8-11.2-3.2-16.2-4.9-11-15.6-20.5-32.3-20.5-22.4 0-35 18.1-35 36.1v.2zM436.2 488.9l-39-54.8h33.3l22.6 35.6 22.6-35.6h32.9l-38.8 54.8 43.2 61h-34L453.1 510l-26.2 39.9h-33.5l42.8-61z" })));
7970
+ }
7971
+
7938
7972
  var LoaderOverlay = React__default.forwardRef(function (_a, ref) {
7939
- var className = _a.className, other = tslib.__rest(_a, ["className"]);
7940
- return (React__default.createElement("div", tslib.__assign({ className: classNames('Loader__overlay', className), ref: ref }, other)));
7973
+ var className = _a.className, variant = _a.variant, label = _a.label, other = tslib.__rest(_a, ["className", "variant", "label"]);
7974
+ return (React__default.createElement("div", tslib.__assign({ className: classNames('Loader__overlay', className, variant === 'large'
7975
+ ? 'Loader__overlay--large'
7976
+ : variant === 'small'
7977
+ ? 'Loader__overlay--small'
7978
+ : ''), ref: ref }, other),
7979
+ React__default.createElement("div", { className: "Loader__overlay__loader" },
7980
+ React__default.createElement(Loader, { variant: variant }),
7981
+ React__default.createElement(AxeLoader, null)),
7982
+ label ? React__default.createElement("span", { className: "Loader__overlay__label" }, label) : null,
7983
+ other.children));
7941
7984
  });
7942
7985
  LoaderOverlay.propTypes = {
7943
- className: PropTypes.string
7986
+ className: PropTypes.string,
7987
+ variant: PropTypes.oneOf(['large', 'small']),
7988
+ label: PropTypes.string
7944
7989
  };
7945
7990
  LoaderOverlay.displayName = 'LoaderOverlay';
7946
7991
 
@@ -8013,12 +8058,19 @@ TableHead.propTypes = {
8013
8058
  };
8014
8059
 
8015
8060
  var TableHeader = function (_a) {
8016
- var children = _a.children, className = _a.className, other = tslib.__rest(_a, ["children", "className"]);
8017
- return (React__default.createElement("th", tslib.__assign({ className: classNames('TableHeader', className) }, other), children));
8061
+ var children = _a.children, sortDirection = _a.sortDirection, onSort = _a.onSort, className = _a.className, other = tslib.__rest(_a, ["children", "sortDirection", "onSort", "className"]);
8062
+ return (React__default.createElement("th", tslib.__assign({ "aria-sort": sortDirection, className: classNames('TableHeader', className, {
8063
+ 'TableHeader--sort-ascending': sortDirection === 'ascending',
8064
+ 'TableHeader--sort-descending': sortDirection === 'descending'
8065
+ }) }, other), !!onSort && !!sortDirection ? (React__default.createElement("button", { onClick: onSort, className: "TableHeader__sort-button", type: "button" },
8066
+ children,
8067
+ React__default.createElement("span", { "aria-hidden": "true" }, sortDirection === 'none' ? (React__default.createElement(Icon, { type: "sort-triangle" })) : sortDirection === 'ascending' ? (React__default.createElement(Icon, { type: "triangle-up" })) : (React__default.createElement(Icon, { type: "triangle-down" }))))) : (children)));
8018
8068
  };
8019
8069
  TableHeader.displayName = 'TableHeader';
8020
8070
  TableHeader.propTypes = {
8021
8071
  children: PropTypes.node.isRequired,
8072
+ sortDirection: PropTypes.string,
8073
+ onSort: PropTypes.func,
8022
8074
  className: PropTypes.string
8023
8075
  };
8024
8076
 
@@ -8043,9 +8095,28 @@ Tab.propTypes = {
8043
8095
  children: PropTypes.node
8044
8096
  };
8045
8097
 
8098
+ /**
8099
+ * Hook to be used similarly to the React.Component#componentDidMount.
8100
+ * Executes the provided `effect` when `dependencies` change but does not
8101
+ * execute the effect initially (on mount) - only on update.
8102
+ *
8103
+ * @param effect {Function} function to be executed when dependencies update
8104
+ * @param dependencies {Any} any valid dependency argument to React.useEffect
8105
+ */
8106
+ var useDidUpdate = function (effect, dependencies) {
8107
+ var mounted = React__default.useRef(false);
8108
+ React__default.useEffect(function () {
8109
+ if (!mounted.current) {
8110
+ mounted.current = true;
8111
+ return;
8112
+ }
8113
+ effect();
8114
+ }, dependencies);
8115
+ };
8116
+
8046
8117
  var Tabs = function (_a) {
8047
- var children = _a.children, thin = _a.thin, _b = _a.initialActiveIndex, initialActiveIndex = _b === void 0 ? 0 : _b, className = _a.className, onChange = _a.onChange, labelProp = tslib.__rest(_a, ["children", "thin", "initialActiveIndex", "className", "onChange"]);
8048
- var _c = React.useState(initialActiveIndex), activeIndex = _c[0], setActiveIndex = _c[1];
8118
+ var children = _a.children, thin = _a.thin, _b = _a.orientation, orientation = _b === void 0 ? 'horizontal' : _b, _c = _a.initialActiveIndex, initialActiveIndex = _c === void 0 ? 0 : _c, className = _a.className, onChange = _a.onChange, labelProp = tslib.__rest(_a, ["children", "thin", "orientation", "initialActiveIndex", "className", "onChange"]);
8119
+ var _d = tslib.__read(React.useState(initialActiveIndex), 2), activeIndex = _d[0], setActiveIndex = _d[1];
8049
8120
  var tabsRef = React.useRef(null);
8050
8121
  var focusedTabRef = React.useRef(null);
8051
8122
  var tabs = React__default.Children.toArray(children).filter(function (child) { return child.type === Tab; });
@@ -8056,34 +8127,48 @@ var Tabs = function (_a) {
8056
8127
  var handleKeyDown = function (event) {
8057
8128
  var key = event.key;
8058
8129
  var newIndex = activeIndex;
8130
+ var forward;
8131
+ var backward;
8132
+ if (orientation === 'horizontal') {
8133
+ forward = 'ArrowRight';
8134
+ backward = 'ArrowLeft';
8135
+ }
8136
+ else {
8137
+ forward = 'ArrowDown';
8138
+ backward = 'ArrowUp';
8139
+ }
8059
8140
  switch (key) {
8060
- case 'ArrowLeft': {
8141
+ case backward: {
8061
8142
  newIndex = activeIndex - 1;
8062
8143
  // circularity
8063
8144
  if (newIndex === -1) {
8064
8145
  newIndex = tabCount - 1;
8065
8146
  }
8066
8147
  setActiveIndex(newIndex);
8148
+ event.preventDefault();
8067
8149
  break;
8068
8150
  }
8069
- case 'ArrowRight': {
8151
+ case forward: {
8070
8152
  newIndex = activeIndex + 1;
8071
8153
  // circularity
8072
8154
  if (newIndex === tabCount) {
8073
8155
  newIndex = 0;
8074
8156
  }
8075
8157
  setActiveIndex(newIndex);
8158
+ event.preventDefault();
8076
8159
  break;
8077
8160
  }
8078
8161
  case 'Home': {
8079
8162
  newIndex = 0;
8080
8163
  setActiveIndex(newIndex);
8164
+ event.preventDefault();
8081
8165
  break;
8082
8166
  }
8083
8167
  case 'End': {
8084
8168
  event.preventDefault();
8085
8169
  newIndex = tabCount - 1;
8086
8170
  setActiveIndex(newIndex);
8171
+ event.preventDefault();
8087
8172
  break;
8088
8173
  }
8089
8174
  }
@@ -8093,7 +8178,7 @@ var Tabs = function (_a) {
8093
8178
  var _b;
8094
8179
  var _c = child.props, target = _c.target, propId = _c.id, other = tslib.__rest(_c, ["target", "id"]);
8095
8180
  var selected = index === activeIndex;
8096
- var id = (propId ? [propId] : nextId.useId(1, 'tab'))[0];
8181
+ var _d = tslib.__read(propId ? [propId] : nextId.useId(1, 'tab'), 1), id = _d[0];
8097
8182
  React.useEffect(function () {
8098
8183
  var _a;
8099
8184
  (_a = target.current) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-labelledby', id);
@@ -8116,7 +8201,9 @@ var Tabs = function (_a) {
8116
8201
  }
8117
8202
  }, [activeIndex]);
8118
8203
  return (React__default.createElement("div", { className: classNames('Tabs', className, {
8119
- 'Tabs--thin': thin
8204
+ 'Tabs--thin': thin,
8205
+ 'Tabs--vertical': orientation === 'vertical',
8206
+ 'Tabs--horizontal': orientation === 'horizontal'
8120
8207
  }), ref: tabsRef },
8121
8208
  React__default.createElement("ul", tslib.__assign({ role: "tablist", className: "Tablist" }, labelProp, { onKeyDown: handleKeyDown }), tabComponents)));
8122
8209
  };
@@ -8127,12 +8214,13 @@ Tabs.propTypes = {
8127
8214
  'aria-labelledby': PropTypes.string,
8128
8215
  initialActiveIndex: PropTypes.number,
8129
8216
  thin: PropTypes.bool,
8217
+ orientation: PropTypes.string,
8130
8218
  className: PropTypes.string
8131
8219
  };
8132
8220
 
8133
8221
  var TabPanel = React.forwardRef(function (_a, ref) {
8134
8222
  var children = _a.children, propId = _a.id, className = _a.className, other = tslib.__rest(_a, ["children", "id", "className"]);
8135
- var id = (propId ? [propId] : nextId.useId(1, 'tabpanel'))[0];
8223
+ var _b = tslib.__read(propId ? [propId] : nextId.useId(1, 'tabpanel'), 1), id = _b[0];
8136
8224
  return (React__default.createElement("div", tslib.__assign({ role: "tabpanel", className: classNames('TabPanel', className), id: id, ref: ref }, other), children));
8137
8225
  });
8138
8226
  TabPanel.displayName = 'TabPanel';
@@ -8209,15 +8297,37 @@ Stepper.propTypes = {
8209
8297
  };
8210
8298
 
8211
8299
  var Panel = function (_a) {
8212
- var className = _a.className, _b = _a.title, title = _b === void 0 ? '' : _b, actions = _a.actions, children = _a.children;
8213
- return (React__default.createElement("div", { className: classNames('Panel', className) },
8214
- React__default.createElement("div", { className: "Panel__Header" },
8215
- title && React__default.createElement("div", { className: "Panel__Header-title" }, title),
8216
- actions && React__default.createElement("div", { className: "Panel__Header-actions" }, actions)),
8217
- React__default.createElement("div", { className: "Panel__Content" }, children)));
8300
+ var _b;
8301
+ var children = _a.children, collapsed = _a.collapsed, className = _a.className, heading = _a.heading, other = tslib.__rest(_a, ["children", "collapsed", "className", "heading"]);
8302
+ var Heading = "h" + (typeof heading === 'object' && 'level' in heading && !!heading.level
8303
+ ? heading.level
8304
+ : 2);
8305
+ var headingId = typeof heading === 'object' && 'id' in heading ? heading.id : randomId();
8306
+ return (React__default.createElement("section", tslib.__assign({ "aria-labelledby": headingId, className: classNames('Panel', className, (_b = {},
8307
+ _b['Panel--collapsed'] = collapsed,
8308
+ _b)) }, other),
8309
+ React__default.createElement(Heading, { id: headingId, className: "Panel__Heading" }, typeof heading === 'object' && 'text' in heading
8310
+ ? heading.text
8311
+ : heading),
8312
+ children));
8218
8313
  };
8219
8314
  Panel.displayName = 'Panel';
8220
8315
  Panel.propTypes = {
8316
+ children: PropTypes.node.isRequired,
8317
+ heading: PropTypes.oneOfType([PropTypes.object, PropTypes.node]).isRequired,
8318
+ className: PropTypes.string
8319
+ };
8320
+
8321
+ var IssuePanel = function (_a) {
8322
+ var className = _a.className, _b = _a.title, title = _b === void 0 ? '' : _b, actions = _a.actions, children = _a.children;
8323
+ return (React__default.createElement("div", { className: classNames('IssuePanel', className) },
8324
+ React__default.createElement("div", { className: "IssuePanel__Header" },
8325
+ title && React__default.createElement("div", { className: "IssuePanel__Header-title" }, title),
8326
+ actions && React__default.createElement("div", { className: "IssuePanel__Header-actions" }, actions)),
8327
+ React__default.createElement("div", { className: "IssuePanel__Content" }, children)));
8328
+ };
8329
+ IssuePanel.displayName = 'IssuePanel';
8330
+ IssuePanel.propTypes = {
8221
8331
  children: PropTypes.node.isRequired,
8222
8332
  className: PropTypes.string
8223
8333
  };
@@ -8262,31 +8372,97 @@ AddressCityStateZip.propTypes = {
8262
8372
  className: PropTypes.string
8263
8373
  };
8264
8374
 
8265
- /**
8266
- * Hook to be used similarly to the React.Component#componentDidMount.
8267
- * Executes the provided `effect` when `dependencies` change but does not
8268
- * execute the effect initially (on mount) - only on update.
8269
- *
8270
- * @param effect {Function} function to be executed when dependencies update
8271
- * @param dependencies {Any} any valid dependency argument to React.useEffect
8272
- */
8273
- var useDidUpdate = function (effect, dependencies) {
8274
- var mounted = React__default.useRef(false);
8275
- React__default.useEffect(function () {
8276
- if (!mounted.current) {
8277
- mounted.current = true;
8278
- return;
8279
- }
8280
- effect();
8281
- }, dependencies);
8375
+ var Pagination = React__default.forwardRef(function (_a, ref) {
8376
+ var totalItems = _a.totalItems, _b = _a.itemsPerPage, itemsPerPage = _b === void 0 ? 10 : _b, _c = _a.currentPage, currentPage = _c === void 0 ? 1 : _c, statusLabel = _a.statusLabel, _d = _a.firstPageLabel, firstPageLabel = _d === void 0 ? 'First page' : _d, _e = _a.previousPageLabel, previousPageLabel = _e === void 0 ? 'Previous page' : _e, _f = _a.nextPageLabel, nextPageLabel = _f === void 0 ? 'Next page' : _f, _g = _a.lastPageLabel, lastPageLabel = _g === void 0 ? 'Last page' : _g, _h = _a.tooltipPlacement, tooltipPlacement = _h === void 0 ? 'bottom' : _h, onNextPageClick = _a.onNextPageClick, onPreviousPageClick = _a.onPreviousPageClick, onFirstPageClick = _a.onFirstPageClick, onLastPageClick = _a.onLastPageClick, className = _a.className, other = tslib.__rest(_a, ["totalItems", "itemsPerPage", "currentPage", "statusLabel", "firstPageLabel", "previousPageLabel", "nextPageLabel", "lastPageLabel", "tooltipPlacement", "onNextPageClick", "onPreviousPageClick", "onFirstPageClick", "onLastPageClick", "className"]);
8377
+ var itemStart = currentPage * itemsPerPage - itemsPerPage + 1;
8378
+ var itemEnd = Math.min(itemStart + itemsPerPage - 1, totalItems);
8379
+ var isLastPage = itemEnd === totalItems;
8380
+ var isFirstPage = currentPage === 1;
8381
+ return (React__default.createElement("div", tslib.__assign({ ref: ref, className: classNames('Pagination', className) }, other),
8382
+ React__default.createElement("ul", null,
8383
+ React__default.createElement("li", null, isFirstPage ? (React__default.createElement(TooltipTabstop, { hideElementOnHidden: true, association: "aria-labelledby", tooltip: firstPageLabel, placement: tooltipPlacement },
8384
+ React__default.createElement(Icon, { type: "chevron-double-left" }))) : (React__default.createElement(IconButton, { icon: "chevron-double-left", tooltipPlacement: tooltipPlacement, label: firstPageLabel, onClick: onFirstPageClick }))),
8385
+ React__default.createElement("li", null, isFirstPage ? (React__default.createElement(TooltipTabstop, { hideElementOnHidden: true, association: "aria-labelledby", tooltip: previousPageLabel, placement: tooltipPlacement },
8386
+ React__default.createElement(Icon, { type: "chevron-left" }))) : (React__default.createElement(IconButton, { icon: "chevron-left", tooltipPlacement: tooltipPlacement, label: previousPageLabel, onClick: onPreviousPageClick }))),
8387
+ React__default.createElement("li", null,
8388
+ React__default.createElement("span", { role: "log", "aria-atomic": "true" }, statusLabel || (React__default.createElement("span", null,
8389
+ "Showing ",
8390
+ React__default.createElement("strong", null, itemStart),
8391
+ " of",
8392
+ ' ',
8393
+ React__default.createElement("strong", null, itemEnd),
8394
+ " of ",
8395
+ React__default.createElement("strong", null, totalItems))))),
8396
+ React__default.createElement("li", null, isLastPage ? (React__default.createElement(TooltipTabstop, { hideElementOnHidden: true, association: "aria-labelledby", tooltip: nextPageLabel, placement: tooltipPlacement },
8397
+ React__default.createElement(Icon, { type: "chevron-right" }))) : (React__default.createElement(IconButton, { icon: "chevron-right", tooltipPlacement: tooltipPlacement, label: nextPageLabel, onClick: onNextPageClick }))),
8398
+ React__default.createElement("li", null, isLastPage ? (React__default.createElement(TooltipTabstop, { hideElementOnHidden: true, association: "aria-labelledby", tooltip: lastPageLabel, placement: tooltipPlacement },
8399
+ React__default.createElement(Icon, { type: "chevron-double-right" }))) : (React__default.createElement(IconButton, { icon: "chevron-double-right", tooltipPlacement: tooltipPlacement, label: lastPageLabel, onClick: onLastPageClick }))))));
8400
+ });
8401
+ Pagination.displayName = 'Pagination';
8402
+ Pagination.propTypes = {
8403
+ totalItems: PropTypes.number.isRequired,
8404
+ itemsPerPage: PropTypes.number,
8405
+ currentPage: PropTypes.number,
8406
+ statusLabel: PropTypes.element,
8407
+ firstPageLabel: PropTypes.string,
8408
+ previousPageLabel: PropTypes.string,
8409
+ nextPageLabel: PropTypes.string,
8410
+ lastPageLabel: PropTypes.string,
8411
+ onNextPageClick: PropTypes.func,
8412
+ onPreviousPageClick: PropTypes.func,
8413
+ onFirstPageClick: PropTypes.func,
8414
+ onLastPageClick: PropTypes.func,
8415
+ // @ts-expect-error
8416
+ tooltipPlacement: PropTypes.string,
8417
+ className: PropTypes.string
8282
8418
  };
8283
8419
 
8420
+ var FieldWrap = React__default.forwardRef(function (_a, ref) {
8421
+ var children = _a.children, className = _a.className, _b = _a.as, Component = _b === void 0 ? 'div' : _b, props = tslib.__rest(_a, ["children", "className", "as"]);
8422
+ return (React__default.createElement(Component, tslib.__assign({ ref: ref, className: classNames('Panel', className) }, props), children));
8423
+ });
8424
+ FieldWrap.displayName = 'FieldWrap';
8425
+ FieldWrap.propTypes = {
8426
+ children: PropTypes.node.isRequired,
8427
+ className: PropTypes.string,
8428
+ as: PropTypes.string
8429
+ };
8430
+
8431
+ var Breadcrumb = React.forwardRef(function (_a, ref) {
8432
+ var _b = _a.separator, separator = _b === void 0 ? '/' : _b, className = _a.className, children = _a.children, props = tslib.__rest(_a, ["separator", "className", "children"]);
8433
+ var items = React__default.Children.toArray(children);
8434
+ var childrenWithSeparators = [];
8435
+ items.forEach(function (child, index) {
8436
+ if (index !== items.length - 1) {
8437
+ childrenWithSeparators.push(React__default.createElement(React__default.Fragment, null,
8438
+ child,
8439
+ React__default.createElement("span", { className: "Breadcrumb__Separator", "aria-hidden": "true" }, separator)));
8440
+ }
8441
+ else {
8442
+ childrenWithSeparators.push(child);
8443
+ }
8444
+ });
8445
+ return (React__default.createElement("nav", tslib.__assign({ className: classNames('Breadcrumb', className), ref: ref }, props),
8446
+ React__default.createElement("ol", null, childrenWithSeparators.map(function (child, index) { return (React__default.createElement("li", { className: "Breadcrumb__Item", key: "breadcrumb-" + index }, child)); }))));
8447
+ });
8448
+ Breadcrumb.displayName = 'Breadcrumb';
8449
+
8450
+ var BreadcrumbItem = React.forwardRef(function (_a, ref) {
8451
+ var className = _a.className, children = _a.children, props = tslib.__rest(_a, ["className", "children"]);
8452
+ return (React__default.createElement("span", tslib.__assign({ className: classNames('Breadcrumb__Item', className), ref: ref, "aria-current": "location" }, props), children));
8453
+ });
8454
+
8455
+ var BreadcrumbLink = React.forwardRef(function (_a, ref) {
8456
+ var className = _a.className, _b = _a.as, ElementType = _b === void 0 ? 'a' : _b, children = _a.children, props = tslib.__rest(_a, ["className", "as", "children"]);
8457
+ return (React__default.createElement(ElementType, tslib.__assign({ className: classNames('Link', 'Breadcrumb__Link', className), ref: ref }, props), children));
8458
+ });
8459
+
8284
8460
  var LIGHT_THEME_CLASS = 'cauldron--theme-light';
8285
8461
  var DARK_THEME_CLASS = 'cauldron--theme-dark';
8286
8462
  var ThemeContext = React.createContext({});
8287
8463
  var ThemeProvider = function (_a) {
8288
8464
  var children = _a.children, _b = _a.context, context = _b === void 0 ? document.body : _b, _c = _a.initialTheme, initialTheme = _c === void 0 ? 'light' : _c;
8289
- var _d = React.useState(initialTheme), theme = _d[0], setTheme = _d[1];
8465
+ var _d = tslib.__read(React.useState(initialTheme), 2), theme = _d[0], setTheme = _d[1];
8290
8466
  var getThemeFromContext = function () {
8291
8467
  return context.classList.contains(DARK_THEME_CLASS) ? 'dark' : 'light';
8292
8468
  };
@@ -8299,12 +8475,22 @@ var ThemeProvider = function (_a) {
8299
8475
  }, [context, theme]);
8300
8476
  // Use a MutationObserver to track changes to the classes outside of the context of React
8301
8477
  var handleMutation = function (mutationList) {
8302
- for (var _i = 0, mutationList_1 = mutationList; _i < mutationList_1.length; _i++) {
8303
- var mutation = mutationList_1[_i];
8304
- if (mutation.type === 'attributes' &&
8305
- mutation.attributeName === 'class') {
8306
- setTheme(getThemeFromContext());
8478
+ var e_1, _a;
8479
+ try {
8480
+ for (var mutationList_1 = tslib.__values(mutationList), mutationList_1_1 = mutationList_1.next(); !mutationList_1_1.done; mutationList_1_1 = mutationList_1.next()) {
8481
+ var mutation = mutationList_1_1.value;
8482
+ if (mutation.type === 'attributes' &&
8483
+ mutation.attributeName === 'class') {
8484
+ setTheme(getThemeFromContext());
8485
+ }
8486
+ }
8487
+ }
8488
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
8489
+ finally {
8490
+ try {
8491
+ if (mutationList_1_1 && !mutationList_1_1.done && (_a = mutationList_1["return"])) _a.call(mutationList_1);
8307
8492
  }
8493
+ finally { if (e_1) throw e_1.error; }
8308
8494
  }
8309
8495
  };
8310
8496
  React.useEffect(function () {
@@ -8337,6 +8523,9 @@ exports.Alert = Alert;
8337
8523
  exports.AlertActions = AlertActions;
8338
8524
  exports.AlertContent = AlertContent;
8339
8525
  exports.AriaIsolate = AriaIsolate;
8526
+ exports.Breadcrumb = Breadcrumb;
8527
+ exports.BreadcrumbItem = BreadcrumbItem;
8528
+ exports.BreadcrumbLink = BreadcrumbLink;
8340
8529
  exports.Button = Button;
8341
8530
  exports.Card = Card;
8342
8531
  exports.CardContent = CardContent;
@@ -8353,8 +8542,10 @@ exports.Dialog = Dialog;
8353
8542
  exports.DialogContent = DialogContent;
8354
8543
  exports.DialogFooter = DialogFooter;
8355
8544
  exports.ExpandCollapsePanel = ExpandCollapsePanel;
8545
+ exports.FieldWrap = FieldWrap;
8356
8546
  exports.Icon = Icon;
8357
8547
  exports.IconButton = IconButton;
8548
+ exports.IssuePanel = IssuePanel;
8358
8549
  exports.Layout = Layout;
8359
8550
  exports.Line = Line;
8360
8551
  exports.Link = Link;
@@ -8374,6 +8565,7 @@ exports.OptionsMenuItem = OptionsMenuItem;
8374
8565
  exports.OptionsMenuList = OptionsMenuList;
8375
8566
  exports.OptionsMenuTrigger = OptionsMenuTrigger;
8376
8567
  exports.OptionsMenuWrapper = OptionsMenuWrapper;
8568
+ exports.Pagination = Pagination;
8377
8569
  exports.Panel = Panel;
8378
8570
  exports.PanelTrigger = PanelTrigger$1;
8379
8571
  exports.Pointout = Pointout;