@deque/cauldron-react 2.0.0 → 3.0.1-canary.00f53b54

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 (108) 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.js +24 -0
  4. package/lib/arrows-alt.js +24 -0
  5. package/lib/{bolt-e44406fd.js → bolt.js} +11 -12
  6. package/lib/cauldron.css +45 -7
  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-1b16b9ec.js → close.js} +12 -13
  17. package/lib/code.js +25 -0
  18. package/lib/components/Address/index.d.ts +38 -0
  19. package/lib/components/Card/Card.d.ts +3 -1
  20. package/lib/components/ExpandCollapsePanel/PanelTrigger.d.ts +2 -1
  21. package/lib/components/FieldWrap/index.d.ts +7 -0
  22. package/lib/components/Icon/index.d.ts +3 -1
  23. package/lib/components/Icon/types.d.ts +7 -0
  24. package/lib/components/IconButton/index.d.ts +12 -4
  25. package/lib/components/IssuePanel/index.d.ts +17 -0
  26. package/lib/components/Loader/index.d.ts +3 -3
  27. package/lib/components/LoaderOverlay/axe-loader.d.ts +1 -0
  28. package/lib/components/NavBar/NavBar.d.ts +22 -0
  29. package/lib/components/NavBar/NavItem.d.ts +14 -0
  30. package/lib/components/NavBar/index.d.ts +2 -0
  31. package/lib/components/OptionsMenu/OptionsMenu.d.ts +4 -4
  32. package/lib/components/Pagination/index.d.ts +20 -0
  33. package/lib/components/Panel/index.d.ts +22 -0
  34. package/lib/components/ProgressBar/index.d.ts +15 -0
  35. package/lib/components/Select/index.d.ts +2 -2
  36. package/lib/components/SideBar/SideBar.d.ts +1 -0
  37. package/lib/components/Stepper/index.d.ts +2 -0
  38. package/lib/components/Table/TableCell.d.ts +2 -2
  39. package/lib/components/Table/TableHeader.d.ts +2 -2
  40. package/lib/components/Tabs/Tab.d.ts +8 -0
  41. package/lib/components/Tabs/TabPanel.d.ts +8 -0
  42. package/lib/components/Tabs/Tabs.d.ts +28 -0
  43. package/lib/components/Tabs/index.d.ts +3 -0
  44. package/lib/components/TextField/index.d.ts +0 -1
  45. package/lib/components/Toast/utils.d.ts +9 -22
  46. package/lib/components/Tooltip/index.d.ts +1 -1
  47. package/lib/copy.js +24 -0
  48. package/lib/{download-2790e982.js → download.js} +10 -12
  49. package/lib/exchange.js +24 -0
  50. package/lib/external-link.js +25 -0
  51. package/lib/{eye-a0d28243.js → eye.js} +10 -12
  52. package/lib/{filter-d2057f4c.js → filter.js} +10 -12
  53. package/lib/{flag-fb248a99.js → flag.js} +12 -13
  54. package/lib/gears.js +22 -0
  55. package/lib/{grid-ee446118.js → grid.js} +10 -12
  56. package/lib/{hamburger-menu-0fc0e266.js → hamburger-menu.js} +10 -11
  57. package/lib/highlight.js +24 -0
  58. package/lib/index.d.ts +10 -1
  59. package/lib/index.js +605 -122
  60. package/lib/{info-circle-alt-b1a696c7.js → info-circle-alt.js} +10 -12
  61. package/lib/{info-circle-b43f7a9b.js → info-circle.js} +11 -12
  62. package/lib/{arrow-97011665.js → info-square.js} +12 -15
  63. package/lib/kabob.js +25 -0
  64. package/lib/{list-8fbd8209.js → list.js} +10 -11
  65. package/lib/{lock-bd0122db.js → lock.js} +12 -13
  66. package/lib/magnifying-glass.js +21 -0
  67. package/lib/menu.js +25 -0
  68. package/lib/{new-releases-ac749bdd.js → new-releases.js} +13 -15
  69. package/lib/{new-6c3ac7d7.js → new.js} +11 -12
  70. package/lib/{no-bb3aa565.js → no.js} +12 -13
  71. package/lib/{pencil-4843058f.js → pencil.js} +11 -13
  72. package/lib/{plus-6589e613.js → plus.js} +11 -12
  73. package/lib/{question-circle-c3c634c4.js → question-circle.js} +11 -13
  74. package/lib/{radio-checked-006112fe.js → radio-checked.js} +11 -12
  75. package/lib/{radio-unchecked-a76e2d66.js → radio-unchecked.js} +11 -12
  76. package/lib/recycle.js +24 -0
  77. package/lib/robot.js +26 -0
  78. package/lib/run-again.js +23 -0
  79. package/lib/{save-edf5fc68.js → save.js} +12 -13
  80. package/lib/share.js +25 -0
  81. package/lib/{sort-49ec1442.js → sort.js} +11 -13
  82. package/lib/{star-a1af8d95.js → star.js} +11 -13
  83. package/lib/sun.js +24 -0
  84. package/lib/{tag-56c32f4f.js → tag.js} +11 -12
  85. package/lib/target.js +28 -0
  86. package/lib/trash.js +24 -0
  87. package/lib/{triangle-51d7723a.js → triangle.js} +14 -16
  88. package/lib/types.d.ts +7 -0
  89. package/lib/{upload-d71f0e44.js → upload.js} +10 -12
  90. package/lib/utils/polymorphic-type/index.d.ts +40 -0
  91. package/lib/utils/use-did-update/index.d.ts +10 -0
  92. package/package.json +5 -4
  93. package/lib/arrow-circle-7b95a2fd.js +0 -27
  94. package/lib/arrows-alt-b91e24b7.js +0 -26
  95. package/lib/chevron-064d5f96.js +0 -26
  96. package/lib/chevron-double-65975fca.js +0 -26
  97. package/lib/code-e3365341.js +0 -26
  98. package/lib/exchange-1d290efb.js +0 -26
  99. package/lib/external-link-ef122c95.js +0 -26
  100. package/lib/gears-b9ee1585.js +0 -23
  101. package/lib/highlight-81bfb759.js +0 -26
  102. package/lib/kabob-692fdc00.js +0 -26
  103. package/lib/menu-2bb052ac.js +0 -43
  104. package/lib/run-again-c9777075.js +0 -25
  105. package/lib/share-70e94257.js +0 -26
  106. package/lib/sun-408aecdc.js +0 -26
  107. package/lib/target-50f179e0.js +0 -35
  108. package/lib/trash-896a3291.js +0 -26
package/lib/index.js CHANGED
@@ -10,10 +10,10 @@ var React__default = _interopDefault(React);
10
10
  var PropTypes = _interopDefault(require('prop-types'));
11
11
  var classNames = _interopDefault(require('classnames'));
12
12
  var keyname = _interopDefault(require('keyname'));
13
- var reactDom = require('react-dom');
14
- var FocusTrap = _interopDefault(require('focus-trap-react'));
15
13
  var nextId = require('react-id-generator');
16
14
  var nextId__default = _interopDefault(nextId);
15
+ var reactDom = require('react-dom');
16
+ var FocusTrap = _interopDefault(require('focus-trap-react'));
17
17
  var reactPopper = require('react-popper');
18
18
  var focusable = _interopDefault(require('focusable'));
19
19
 
@@ -112,60 +112,147 @@ var Workspace = /** @class */ (function (_super) {
112
112
 
113
113
  var Offscreen = function (props) { return (React__default.createElement("div", tslib.__assign({ className: "Offscreen" }, props))); };
114
114
 
115
+ /*!
116
+ * GENERATED CODE. DO NOT EDIT DIRECTLY!
117
+ */
118
+ /** iconTypes holds each valid icon type. */
119
+ var iconTypes = [
120
+ 'add-user',
121
+ 'arrow-circle-up',
122
+ 'arrow-circle-down',
123
+ 'arrow-circle-left',
124
+ 'arrow-circle-right',
125
+ 'arrow-up',
126
+ 'arrow-down',
127
+ 'arrow-left',
128
+ 'arrow-right',
129
+ 'arrows-alt',
130
+ 'bolt',
131
+ 'caution',
132
+ 'check-circle',
133
+ 'check-shield',
134
+ 'check-solid',
135
+ 'check',
136
+ 'checkbox-checked',
137
+ 'checkbox-unchecked',
138
+ 'chevron-double-up',
139
+ 'chevron-double-down',
140
+ 'chevron-double-left',
141
+ 'chevron-double-right',
142
+ 'chevron-up',
143
+ 'chevron-down',
144
+ 'chevron-left',
145
+ 'chevron-right',
146
+ 'close',
147
+ 'code',
148
+ 'copy',
149
+ 'download',
150
+ 'exchange',
151
+ 'external-link',
152
+ 'eye',
153
+ 'filter',
154
+ 'flag',
155
+ 'gears',
156
+ 'grid',
157
+ 'hamburger-menu',
158
+ 'highlight',
159
+ 'info-circle-alt',
160
+ 'info-circle',
161
+ 'info-square',
162
+ 'kabob',
163
+ 'list',
164
+ 'lock',
165
+ 'magnifying-glass',
166
+ 'menu',
167
+ 'new-releases',
168
+ 'new',
169
+ 'no',
170
+ 'pencil',
171
+ 'plus',
172
+ 'question-circle',
173
+ 'radio-checked',
174
+ 'radio-unchecked',
175
+ 'recycle',
176
+ 'robot',
177
+ 'run-again',
178
+ 'save',
179
+ 'share',
180
+ 'sort',
181
+ 'star',
182
+ 'sun',
183
+ 'tag',
184
+ 'target',
185
+ 'trash',
186
+ 'triangle-up',
187
+ 'triangle-down',
188
+ 'triangle-left',
189
+ 'triangle-right',
190
+ 'upload'
191
+ ];
192
+
115
193
  function __variableDynamicImportRuntime0__(path) {
116
- switch (path) {
117
- case './icons/add-user.svg': return Promise.resolve().then(function () { return require('./add-user-075c63a1.js'); });
118
- case './icons/arrow-circle.svg': return Promise.resolve().then(function () { return require('./arrow-circle-7b95a2fd.js'); });
119
- case './icons/arrow.svg': return Promise.resolve().then(function () { return require('./arrow-97011665.js'); });
120
- case './icons/arrows-alt.svg': return Promise.resolve().then(function () { return require('./arrows-alt-b91e24b7.js'); });
121
- case './icons/bolt.svg': return Promise.resolve().then(function () { return require('./bolt-e44406fd.js'); });
122
- case './icons/caution.svg': return Promise.resolve().then(function () { return require('./caution-e048e1bf.js'); });
123
- case './icons/check-circle.svg': return Promise.resolve().then(function () { return require('./check-circle-8b5069b4.js'); });
124
- case './icons/check-shield.svg': return Promise.resolve().then(function () { return require('./check-shield-8fdb3641.js'); });
125
- case './icons/check-solid.svg': return Promise.resolve().then(function () { return require('./check-solid-a0682f04.js'); });
126
- case './icons/check.svg': return Promise.resolve().then(function () { return require('./check-c2912d5e.js'); });
127
- case './icons/checkbox-checked.svg': return Promise.resolve().then(function () { return require('./checkbox-checked-a262e99c.js'); });
128
- case './icons/checkbox-unchecked.svg': return Promise.resolve().then(function () { return require('./checkbox-unchecked-2ad5b4ae.js'); });
129
- case './icons/chevron-double.svg': return Promise.resolve().then(function () { return require('./chevron-double-65975fca.js'); });
130
- case './icons/chevron.svg': return Promise.resolve().then(function () { return require('./chevron-064d5f96.js'); });
131
- case './icons/close.svg': return Promise.resolve().then(function () { return require('./close-1b16b9ec.js'); });
132
- case './icons/code.svg': return Promise.resolve().then(function () { return require('./code-e3365341.js'); });
133
- case './icons/download.svg': return Promise.resolve().then(function () { return require('./download-2790e982.js'); });
134
- case './icons/exchange.svg': return Promise.resolve().then(function () { return require('./exchange-1d290efb.js'); });
135
- case './icons/external-link.svg': return Promise.resolve().then(function () { return require('./external-link-ef122c95.js'); });
136
- case './icons/eye.svg': return Promise.resolve().then(function () { return require('./eye-a0d28243.js'); });
137
- case './icons/filter.svg': return Promise.resolve().then(function () { return require('./filter-d2057f4c.js'); });
138
- case './icons/flag.svg': return Promise.resolve().then(function () { return require('./flag-fb248a99.js'); });
139
- case './icons/gears.svg': return Promise.resolve().then(function () { return require('./gears-b9ee1585.js'); });
140
- case './icons/grid.svg': return Promise.resolve().then(function () { return require('./grid-ee446118.js'); });
141
- case './icons/hamburger-menu.svg': return Promise.resolve().then(function () { return require('./hamburger-menu-0fc0e266.js'); });
142
- case './icons/highlight.svg': return Promise.resolve().then(function () { return require('./highlight-81bfb759.js'); });
143
- case './icons/info-circle-alt.svg': return Promise.resolve().then(function () { return require('./info-circle-alt-b1a696c7.js'); });
144
- case './icons/info-circle.svg': return Promise.resolve().then(function () { return require('./info-circle-b43f7a9b.js'); });
145
- case './icons/kabob.svg': return Promise.resolve().then(function () { return require('./kabob-692fdc00.js'); });
146
- case './icons/list.svg': return Promise.resolve().then(function () { return require('./list-8fbd8209.js'); });
147
- case './icons/lock.svg': return Promise.resolve().then(function () { return require('./lock-bd0122db.js'); });
148
- case './icons/menu.svg': return Promise.resolve().then(function () { return require('./menu-2bb052ac.js'); });
149
- case './icons/new-releases.svg': return Promise.resolve().then(function () { return require('./new-releases-ac749bdd.js'); });
150
- case './icons/new.svg': return Promise.resolve().then(function () { return require('./new-6c3ac7d7.js'); });
151
- case './icons/no.svg': return Promise.resolve().then(function () { return require('./no-bb3aa565.js'); });
152
- case './icons/pencil.svg': return Promise.resolve().then(function () { return require('./pencil-4843058f.js'); });
153
- case './icons/plus.svg': return Promise.resolve().then(function () { return require('./plus-6589e613.js'); });
154
- case './icons/question-circle.svg': return Promise.resolve().then(function () { return require('./question-circle-c3c634c4.js'); });
155
- case './icons/radio-checked.svg': return Promise.resolve().then(function () { return require('./radio-checked-006112fe.js'); });
156
- case './icons/radio-unchecked.svg': return Promise.resolve().then(function () { return require('./radio-unchecked-a76e2d66.js'); });
157
- case './icons/run-again.svg': return Promise.resolve().then(function () { return require('./run-again-c9777075.js'); });
158
- case './icons/save.svg': return Promise.resolve().then(function () { return require('./save-edf5fc68.js'); });
159
- case './icons/share.svg': return Promise.resolve().then(function () { return require('./share-70e94257.js'); });
160
- case './icons/sort.svg': return Promise.resolve().then(function () { return require('./sort-49ec1442.js'); });
161
- case './icons/star.svg': return Promise.resolve().then(function () { return require('./star-a1af8d95.js'); });
162
- case './icons/sun.svg': return Promise.resolve().then(function () { return require('./sun-408aecdc.js'); });
163
- case './icons/tag.svg': return Promise.resolve().then(function () { return require('./tag-56c32f4f.js'); });
164
- case './icons/target.svg': return Promise.resolve().then(function () { return require('./target-50f179e0.js'); });
165
- case './icons/trash.svg': return Promise.resolve().then(function () { return require('./trash-896a3291.js'); });
166
- case './icons/triangle.svg': return Promise.resolve().then(function () { return require('./triangle-51d7723a.js'); });
167
- case './icons/upload.svg': return Promise.resolve().then(function () { return require('./upload-d71f0e44.js'); });
168
- default: return Promise.reject(new Error("Unknown variable dynamic import: " + path));
194
+ switch (path) {
195
+ case './icons/add-user.svg': return Promise.resolve().then(function () { return require('./add-user.js'); });
196
+ case './icons/arrow-circle.svg': return Promise.resolve().then(function () { return require('./arrow-circle.js'); });
197
+ case './icons/arrow.svg': return Promise.resolve().then(function () { return require('./arrow.js'); });
198
+ case './icons/arrows-alt.svg': return Promise.resolve().then(function () { return require('./arrows-alt.js'); });
199
+ case './icons/bolt.svg': return Promise.resolve().then(function () { return require('./bolt.js'); });
200
+ case './icons/caution.svg': return Promise.resolve().then(function () { return require('./caution.js'); });
201
+ case './icons/check-circle.svg': return Promise.resolve().then(function () { return require('./check-circle.js'); });
202
+ case './icons/check-shield.svg': return Promise.resolve().then(function () { return require('./check-shield.js'); });
203
+ case './icons/check-solid.svg': return Promise.resolve().then(function () { return require('./check-solid.js'); });
204
+ case './icons/check.svg': return Promise.resolve().then(function () { return require('./check.js'); });
205
+ case './icons/checkbox-checked.svg': return Promise.resolve().then(function () { return require('./checkbox-checked.js'); });
206
+ case './icons/checkbox-unchecked.svg': return Promise.resolve().then(function () { return require('./checkbox-unchecked.js'); });
207
+ case './icons/chevron-double.svg': return Promise.resolve().then(function () { return require('./chevron-double.js'); });
208
+ case './icons/chevron.svg': return Promise.resolve().then(function () { return require('./chevron.js'); });
209
+ case './icons/close.svg': return Promise.resolve().then(function () { return require('./close.js'); });
210
+ case './icons/code.svg': return Promise.resolve().then(function () { return require('./code.js'); });
211
+ case './icons/copy.svg': return Promise.resolve().then(function () { return require('./copy.js'); });
212
+ case './icons/download.svg': return Promise.resolve().then(function () { return require('./download.js'); });
213
+ case './icons/exchange.svg': return Promise.resolve().then(function () { return require('./exchange.js'); });
214
+ case './icons/external-link.svg': return Promise.resolve().then(function () { return require('./external-link.js'); });
215
+ case './icons/eye.svg': return Promise.resolve().then(function () { return require('./eye.js'); });
216
+ case './icons/filter.svg': return Promise.resolve().then(function () { return require('./filter.js'); });
217
+ case './icons/flag.svg': return Promise.resolve().then(function () { return require('./flag.js'); });
218
+ case './icons/gears.svg': return Promise.resolve().then(function () { return require('./gears.js'); });
219
+ case './icons/grid.svg': return Promise.resolve().then(function () { return require('./grid.js'); });
220
+ case './icons/hamburger-menu.svg': return Promise.resolve().then(function () { return require('./hamburger-menu.js'); });
221
+ case './icons/highlight.svg': return Promise.resolve().then(function () { return require('./highlight.js'); });
222
+ case './icons/info-circle-alt.svg': return Promise.resolve().then(function () { return require('./info-circle-alt.js'); });
223
+ case './icons/info-circle.svg': return Promise.resolve().then(function () { return require('./info-circle.js'); });
224
+ case './icons/info-square.svg': return Promise.resolve().then(function () { return require('./info-square.js'); });
225
+ case './icons/kabob.svg': return Promise.resolve().then(function () { return require('./kabob.js'); });
226
+ case './icons/list.svg': return Promise.resolve().then(function () { return require('./list.js'); });
227
+ case './icons/lock.svg': return Promise.resolve().then(function () { return require('./lock.js'); });
228
+ case './icons/magnifying-glass.svg': return Promise.resolve().then(function () { return require('./magnifying-glass.js'); });
229
+ case './icons/menu.svg': return Promise.resolve().then(function () { return require('./menu.js'); });
230
+ case './icons/new-releases.svg': return Promise.resolve().then(function () { return require('./new-releases.js'); });
231
+ case './icons/new.svg': return Promise.resolve().then(function () { return require('./new.js'); });
232
+ case './icons/no.svg': return Promise.resolve().then(function () { return require('./no.js'); });
233
+ case './icons/pencil.svg': return Promise.resolve().then(function () { return require('./pencil.js'); });
234
+ case './icons/plus.svg': return Promise.resolve().then(function () { return require('./plus.js'); });
235
+ case './icons/question-circle.svg': return Promise.resolve().then(function () { return require('./question-circle.js'); });
236
+ case './icons/radio-checked.svg': return Promise.resolve().then(function () { return require('./radio-checked.js'); });
237
+ case './icons/radio-unchecked.svg': return Promise.resolve().then(function () { return require('./radio-unchecked.js'); });
238
+ case './icons/recycle.svg': return Promise.resolve().then(function () { return require('./recycle.js'); });
239
+ case './icons/robot.svg': return Promise.resolve().then(function () { return require('./robot.js'); });
240
+ case './icons/run-again.svg': return Promise.resolve().then(function () { return require('./run-again.js'); });
241
+ case './icons/save.svg': return Promise.resolve().then(function () { return require('./save.js'); });
242
+ case './icons/share.svg': return Promise.resolve().then(function () { return require('./share.js'); });
243
+ case './icons/sort.svg': return Promise.resolve().then(function () { return require('./sort.js'); });
244
+ case './icons/star.svg': return Promise.resolve().then(function () { return require('./star.js'); });
245
+ case './icons/sun.svg': return Promise.resolve().then(function () { return require('./sun.js'); });
246
+ case './icons/tag.svg': return Promise.resolve().then(function () { return require('./tag.js'); });
247
+ case './icons/target.svg': return Promise.resolve().then(function () { return require('./target.js'); });
248
+ case './icons/trash.svg': return Promise.resolve().then(function () { return require('./trash.js'); });
249
+ case './icons/triangle.svg': return Promise.resolve().then(function () { return require('./triangle.js'); });
250
+ case './icons/upload.svg': return Promise.resolve().then(function () { return require('./upload.js'); });
251
+ default: return new Promise(function(resolve, reject) {
252
+ (typeof queueMicrotask === 'function' ? queueMicrotask : setTimeout)(
253
+ reject.bind(null, new Error("Unknown variable dynamic import: " + path))
254
+ );
255
+ })
169
256
  }
170
257
  }
171
258
  var Icon = React.forwardRef(function (_a, ref) {
@@ -205,6 +292,7 @@ var Icon = React.forwardRef(function (_a, ref) {
205
292
  Icon.propTypes = {
206
293
  label: PropTypes.string,
207
294
  className: PropTypes.string,
295
+ // @ts-expect-error
208
296
  type: PropTypes.string.isRequired
209
297
  };
210
298
  Icon.displayName = 'Icon';
@@ -907,6 +995,69 @@ var TopBarMenu = /** @class */ (function (_super) {
907
995
  return TopBarMenu;
908
996
  }(React__default.Component));
909
997
 
998
+ var NavBar = function (_a) {
999
+ 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;
1000
+ var navRef = React.useRef(null);
1001
+ var triggerRef = React.useRef(null);
1002
+ var _d = React.useState(false), showDropdown = _d[0], setShowDropdown = _d[1];
1003
+ var menuId = ([propId] || nextId.useId(1, 'navbar'))[0];
1004
+ var showNavItems = !collapsed || (collapsed && showDropdown);
1005
+ var handleOutSideEvent = function (e) {
1006
+ var _a;
1007
+ var target = e.target;
1008
+ if (navRef.current && !((_a = navRef.current) === null || _a === void 0 ? void 0 : _a.contains(target))) {
1009
+ setShowDropdown(false);
1010
+ }
1011
+ };
1012
+ var handleKeyDown = function (e) {
1013
+ var _a;
1014
+ if (e.key !== 'Escape') {
1015
+ return;
1016
+ }
1017
+ setShowDropdown(false);
1018
+ (_a = triggerRef.current) === null || _a === void 0 ? void 0 : _a.focus();
1019
+ };
1020
+ React.useEffect(function () {
1021
+ if (collapsed && showDropdown) {
1022
+ document.addEventListener('focusin', handleOutSideEvent);
1023
+ return function () {
1024
+ document.removeEventListener('focusin', handleOutSideEvent);
1025
+ };
1026
+ }
1027
+ }, [collapsed, showDropdown]);
1028
+ var handleTriggerClick = function () {
1029
+ setShowDropdown(!showDropdown);
1030
+ };
1031
+ return (React__default.createElement("nav", { className: classNames('NavBar', className, {
1032
+ 'NavBar--collapsed': collapsed
1033
+ }), ref: navRef },
1034
+ collapsed && (React__default.createElement("button", { "aria-haspopup": "true", "aria-expanded": showDropdown, "aria-controls": menuId, ref: triggerRef, onClick: handleTriggerClick, className: classNames('NavBar__trigger', {
1035
+ 'NavBar__trigger--active': showDropdown
1036
+ }) },
1037
+ React__default.createElement(Icon, { type: showDropdown ? 'close' : 'hamburger-menu' }),
1038
+ navTriggerLabel)),
1039
+ showNavItems && (React__default.createElement("ul", { onKeyDown: handleKeyDown, id: menuId }, children))));
1040
+ };
1041
+ NavBar.displayName = 'NavBar';
1042
+ NavBar.propTypes = {
1043
+ children: PropTypes.node.isRequired,
1044
+ className: PropTypes.string,
1045
+ collapsed: PropTypes.bool,
1046
+ navTriggerLabel: PropTypes.string,
1047
+ propId: PropTypes.string
1048
+ };
1049
+
1050
+ var NavItem = function (_a) {
1051
+ var children = _a.children, active = _a.active, other = tslib.__rest(_a, ["children", "active"]);
1052
+ return (React__default.createElement("li", tslib.__assign({ className: classNames('NavItem', {
1053
+ 'NavItem--active': active
1054
+ }) }, other), children));
1055
+ };
1056
+ NavItem.displayName = 'NavItem';
1057
+ NavItem.propTypes = {
1058
+ children: PropTypes.node.isRequired
1059
+ };
1060
+
910
1061
  /**
911
1062
  * Selector for NATURALLY focusable elements
912
1063
  * @type {String}
@@ -1003,11 +1154,11 @@ var SideBar = /** @class */ (function (_super) {
1003
1154
  var _a = this.state, animateClass = _a.animateClass, wide = _a.wide;
1004
1155
  // disabling no-unused-vars to prevent onDismiss from being passed through to dom element
1005
1156
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
1006
- var _b = this.props, children = _b.children, className = _b.className, show = _b.show, onDismiss = _b.onDismiss, other = tslib.__rest(_b, ["children", "className", "show", "onDismiss"]);
1157
+ var _b = this.props, children = _b.children, className = _b.className, show = _b.show, onDismiss = _b.onDismiss, navProps = _b.navProps, other = tslib.__rest(_b, ["children", "className", "show", "onDismiss", "navProps"]);
1007
1158
  /* eslint-disable jsx-a11y/no-noninteractive-element-interactions */
1008
1159
  return (React__default.createElement(React.Fragment, null,
1009
1160
  React__default.createElement(ClickOutsideListener, { onClickOutside: this.handleClickOutside },
1010
- React__default.createElement("nav", null,
1161
+ React__default.createElement("nav", tslib.__assign({}, navProps),
1011
1162
  React__default.createElement("ul", tslib.__assign({ className: classNames('SideBar', className, animateClass) }, other, { ref: this.navList, onKeyDown: this.onKeyDown }), children))),
1012
1163
  React__default.createElement(Scrim, { show: !wide && show })));
1013
1164
  /* eslint-enable jsx-a11y/no-noninteractive-element-interactions */
@@ -1320,7 +1471,7 @@ var fireCustomEvent = function (show, button) {
1320
1471
  };
1321
1472
  function Tooltip(_a) {
1322
1473
  var _this = this;
1323
- 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, props = tslib.__rest(_a, ["id", "placement", "children", "portal", "target", "association", "variant", "show", "hideElementOnHidden"]);
1474
+ 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"]);
1324
1475
  var id = (propId ? [propId] : nextId.useId(1, 'tooltip'))[0];
1325
1476
  var hovering = React.useRef(false);
1326
1477
  var _g = React.useState(initialPlacement), placement = _g[0], setPlacement = _g[1];
@@ -1441,7 +1592,7 @@ function Tooltip(_a) {
1441
1592
  }
1442
1593
  }, [targetElement, id]);
1443
1594
  return showTooltip || hideElementOnHidden
1444
- ? reactDom.createPortal(React__default.createElement("div", tslib.__assign({ id: id, className: classNames('Tooltip', "Tooltip--" + placement, {
1595
+ ? reactDom.createPortal(React__default.createElement("div", tslib.__assign({ id: id, className: classNames('Tooltip', "Tooltip--" + placement, className, {
1445
1596
  TooltipInfo: variant === 'info',
1446
1597
  'Tooltip--hidden': !showTooltip && hideElementOnHidden,
1447
1598
  'Tooltip--big': variant === 'big'
@@ -1470,29 +1621,61 @@ var TooltipContent = function (_a) {
1470
1621
  return (React__default.createElement("div", tslib.__assign({ className: classNames('TooltipContent', className) }, other)));
1471
1622
  };
1472
1623
 
1624
+ /**
1625
+ * Unfortunately, eslint does not recognize that this Polymorphic component has a displayName set
1626
+ *
1627
+ * We might be able to remove this if we upgrade eslint and associated plugins
1628
+ * See: https://github.com/dequelabs/cauldron/issues/451
1629
+ */
1630
+ // eslint-disable-next-line react/display-name
1473
1631
  var IconButton = React.forwardRef(function (_a, ref) {
1474
- var icon = _a.icon, label = _a.label, _b = _a.tooltipPlacement, tooltipPlacement = _b === void 0 ? 'auto' : _b, tooltipVariant = _a.tooltipVariant, tooltipPortal = _a.tooltipPortal, className = _a.className, _c = _a.variant, variant = _c === void 0 ? 'secondary' : _c, disabled = _a.disabled, other = tslib.__rest(_a, ["icon", "label", "tooltipPlacement", "tooltipVariant", "tooltipPortal", "className", "variant", "disabled"]);
1475
- var buttonRef = React.useRef();
1476
- React.useImperativeHandle(ref, function () { return buttonRef.current; });
1632
+ var _b = _a.as, Component = _b === void 0 ? 'button' : _b, icon = _a.icon, label = _a.label, _c = _a.tooltipPlacement, tooltipPlacement = _c === void 0 ? 'auto' : _c, tooltipVariant = _a.tooltipVariant, tooltipPortal = _a.tooltipPortal, className = _a.className, _d = _a.variant, variant = _d === void 0 ? 'secondary' : _d, disabled = _a.disabled, _e = _a.tabIndex, tabIndex = _e === void 0 ? 0 : _e, other = tslib.__rest(_a, ["as", "icon", "label", "tooltipPlacement", "tooltipVariant", "tooltipPortal", "className", "variant", "disabled", "tabIndex"]);
1633
+ var internalRef = React.useRef();
1634
+ React.useImperativeHandle(ref, function () { return internalRef.current; });
1635
+ // Configure additional properties based on the type of the Component
1636
+ // for accessibility
1637
+ var accessibilityProps = {};
1638
+ if (Component === 'button') {
1639
+ accessibilityProps.type = 'button';
1640
+ }
1641
+ else {
1642
+ // We don't need to set an anchor's role, since it would be redundant
1643
+ if (Component !== 'a') {
1644
+ accessibilityProps.role = other.href || other.to ? 'link' : 'button';
1645
+ }
1646
+ if (disabled) {
1647
+ accessibilityProps['aria-disabled'] = disabled;
1648
+ }
1649
+ }
1650
+ React.useEffect(function () {
1651
+ var _a;
1652
+ if (!disabled) {
1653
+ return;
1654
+ }
1655
+ (_a = internalRef.current) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-label', label);
1656
+ }, [disabled]);
1477
1657
  return (React__default.createElement(React__default.Fragment, null,
1478
- React__default.createElement("button", tslib.__assign({ type: 'button', className: classNames(className, {
1658
+ React__default.createElement(Component, tslib.__assign({ className: classNames(className, {
1479
1659
  IconButton: true,
1480
1660
  'IconButton--primary': variant === 'primary',
1481
1661
  'IconButton--secondary': variant === 'secondary',
1482
1662
  'IconButton--error': variant === 'error'
1483
- }), ref: buttonRef, disabled: disabled }, other),
1663
+ }), ref: internalRef, disabled: disabled, tabIndex: disabled ? -1 : tabIndex }, accessibilityProps, other),
1484
1664
  React__default.createElement(Icon, { type: icon })),
1485
- !disabled && (React__default.createElement(Tooltip, { target: buttonRef, placement: tooltipPlacement, variant: tooltipVariant, portal: tooltipPortal, association: "aria-labelledby", hideElementOnHidden: true }, label))));
1665
+ !disabled && (React__default.createElement(Tooltip, { target: internalRef, placement: tooltipPlacement, variant: tooltipVariant, portal: tooltipPortal, association: "aria-labelledby", hideElementOnHidden: true }, label))));
1486
1666
  });
1487
1667
  IconButton.propTypes = {
1668
+ // @ts-expect-error
1669
+ as: PropTypes.elementType,
1670
+ // @ts-expect-error
1488
1671
  icon: PropTypes.string.isRequired,
1489
1672
  label: PropTypes.string.isRequired,
1490
- // @ts-ignore
1673
+ // @ts-expect-error
1491
1674
  tooltipPlacement: PropTypes.string,
1492
- // @ts-ignore
1675
+ // @ts-expect-error
1493
1676
  tooltipVariant: PropTypes.string,
1494
1677
  tooltipPortal: PropTypes.any,
1495
- // @ts-ignore
1678
+ // @ts-expect-error
1496
1679
  variant: PropTypes.string
1497
1680
  };
1498
1681
  IconButton.displayName = 'IconButton';
@@ -2014,22 +2197,21 @@ Link.propTypes = {
2014
2197
  Link.displayName = 'Link';
2015
2198
 
2016
2199
  function Loader(_a) {
2017
- var label = _a.label, className = _a.className, other = tslib.__rest(_a, ["label", "className"]);
2018
- var props = tslib.__assign(tslib.__assign({}, other), { className: classNames('Loader', className), 'aria-hidden': !label });
2019
- if (label) {
2020
- props.role = 'progressbar';
2021
- props['aria-valuetext'] = label;
2022
- props['aria-busy'] = true;
2023
- props['aria-valuemin'] = 0;
2024
- props['aria-valuemax'] = 100;
2025
- // According to the ARIA 1.2 spec (https://www.w3.org/TR/wai-aria-1.2/#progressbar),
2026
- // the aria-valuenow attribute SHOULD be omitted because the "value" of our progress
2027
- // is "indeterminate".
2200
+ var className = _a.className, _b = _a.variant, variant = _b === void 0 ? 'small' : _b, label = _a.label, props = tslib.__rest(_a, ["className", "variant", "label"]);
2201
+ if (label === null || label === void 0 ? void 0 : label.length) {
2202
+ props['role'] = 'alert';
2203
+ props.children = React__default.createElement(Offscreen, null, label);
2028
2204
  }
2029
- return React__default.createElement("div", tslib.__assign({}, props));
2205
+ else {
2206
+ props['aria-hidden'] = true;
2207
+ }
2208
+ return (React__default.createElement("div", tslib.__assign({ className: classNames('Loader', className, variant === 'large'
2209
+ ? 'Loader--large'
2210
+ : variant === 'small'
2211
+ ? 'Loader--small'
2212
+ : '') }, props)));
2030
2213
  }
2031
2214
  Loader.propTypes = {
2032
- label: PropTypes.string,
2033
2215
  className: PropTypes.string
2034
2216
  };
2035
2217
  Loader.displayName = 'Loader';
@@ -2048,18 +2230,16 @@ var tokenList = function (id, currentVal) {
2048
2230
  };
2049
2231
 
2050
2232
  var Select = React__default.forwardRef(function (_a, ref) {
2051
- var options = _a.options, children = _a.children, disabled = _a.disabled, label = _a.label, id = _a.id, required = _a.required, _b = _a.requiredText, requiredText = _b === void 0 ? 'Required' : _b, error = _a.error, value = _a.value, ariaDescribedby = _a["aria-describedby"], defaultValue = _a.defaultValue,
2052
- // eslint-disable-next-line @typescript-eslint/no-empty-function
2053
- _c = _a.onChange,
2054
- // eslint-disable-next-line @typescript-eslint/no-empty-function
2055
- onChange = _c === void 0 ? function () { } : _c, rest = tslib.__rest(_a, ["options", "children", "disabled", "label", "id", "required", "requiredText", "error", "value", 'aria-describedby', "defaultValue", "onChange"]);
2233
+ var options = _a.options, children = _a.children, disabled = _a.disabled, label = _a.label, id = _a.id, required = _a.required, _b = _a.requiredText, requiredText = _b === void 0 ? 'Required' : _b, error = _a.error, value = _a.value, ariaDescribedby = _a["aria-describedby"], defaultValue = _a.defaultValue, onChange = _a.onChange, rest = tslib.__rest(_a, ["options", "children", "disabled", "label", "id", "required", "requiredText", "error", "value", 'aria-describedby', "defaultValue", "onChange"]);
2056
2234
  if (options && children) {
2057
2235
  console.error('The Select component only takes the options props or child option elements, not both.');
2058
2236
  }
2237
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
2238
+ var onChangeEvent = onChange !== null && onChange !== void 0 ? onChange : (function () { });
2059
2239
  var isControlled = typeof value !== 'undefined';
2060
- var _d = React.useState(value || defaultValue || ''), currentValue = _d[0], setCurrentValue = _d[1];
2240
+ var _c = React.useState(value || defaultValue || ''), currentValue = _c[0], setCurrentValue = _c[1];
2061
2241
  var handleChange = function (e) {
2062
- onChange(e);
2242
+ onChangeEvent(e);
2063
2243
  if (isControlled) {
2064
2244
  return;
2065
2245
  }
@@ -2103,7 +2283,7 @@ var Select = React__default.forwardRef(function (_a, ref) {
2103
2283
  })
2104
2284
  : children),
2105
2285
  React__default.createElement("div", { className: "arrow-down" })),
2106
- React__default.createElement("div", { className: "Error", id: errorId }, error)));
2286
+ error && (React__default.createElement("div", { id: errorId, className: "Error" }, error))));
2107
2287
  /* eslint-disable jsx-a11y/no-onchange */
2108
2288
  });
2109
2289
  Select.displayName = 'Select';
@@ -2150,13 +2330,13 @@ var RadioGroup = function (_a) {
2150
2330
  handleChange(radioValue);
2151
2331
  onChange(radio, (_a = inputs.current) === null || _a === void 0 ? void 0 : _a[index]);
2152
2332
  }, disabled: disabled, checked: isChecked }, other)),
2333
+ React__default.createElement("label", { htmlFor: id, className: classNames('Field__label', {
2334
+ 'Field__label--disabled': disabled
2335
+ }) }, label),
2153
2336
  React__default.createElement(Icon, { className: classNames('Radio__overlay', {
2154
2337
  'Radio__overlay--focused': isFocused,
2155
2338
  'Radio__overlay--disabled': disabled
2156
- }), type: isChecked ? 'radio-checked' : 'radio-unchecked', "aria-hidden": "true", onClick: function () { return onRadioClick(index); } }),
2157
- React__default.createElement("label", { htmlFor: id, className: classNames('Field__label', {
2158
- 'Field__label--disabled': disabled
2159
- }) }, label)));
2339
+ }), type: isChecked ? 'radio-checked' : 'radio-unchecked', "aria-hidden": "true", onClick: function () { return onRadioClick(index); } })));
2160
2340
  });
2161
2341
  // reset the input refs array
2162
2342
  // refs get clobbered every re-render anyway and this supports "dynamic" radios
@@ -2206,6 +2386,9 @@ var Checkbox = React.forwardRef(function (_a, ref) {
2206
2386
  onChange(e);
2207
2387
  }
2208
2388
  } }, other)),
2389
+ React__default.createElement("label", { className: classNames('Field__label', {
2390
+ 'Field__label--disabled': disabled
2391
+ }), htmlFor: id }, label),
2209
2392
  React__default.createElement(Icon, { className: classNames('Checkbox__overlay', {
2210
2393
  'Checkbox__overlay--disabled': disabled,
2211
2394
  'Checkbox__overlay--focused': focused,
@@ -2218,11 +2401,8 @@ var Checkbox = React.forwardRef(function (_a, ref) {
2218
2401
  else {
2219
2402
  (_b = checkRef.current) === null || _b === void 0 ? void 0 : _b.click();
2220
2403
  }
2221
- } }),
2222
- React__default.createElement("label", { className: classNames('Field__label', {
2223
- 'Field__label--disabled': disabled
2224
- }), htmlFor: id }, label)),
2225
- React__default.createElement("div", { id: errorId, className: "Error" }, error)));
2404
+ } })),
2405
+ error && (React__default.createElement("div", { id: errorId, className: "Error" }, error))));
2226
2406
  });
2227
2407
  Checkbox.displayName = 'Checkbox';
2228
2408
 
@@ -2242,12 +2422,16 @@ function TooltipTabstop(_a) {
2242
2422
  TooltipTabstop.displayName = 'TooltipTabstop';
2243
2423
 
2244
2424
  var Card = function (_a) {
2245
- var className = _a.className, other = tslib.__rest(_a, ["className"]);
2246
- return (React__default.createElement("div", tslib.__assign({ className: classNames('Card', className) }, other)));
2425
+ var className = _a.className, variant = _a.variant, other = tslib.__rest(_a, ["className", "variant"]);
2426
+ return (React__default.createElement("div", tslib.__assign({ className: classNames(className, {
2427
+ 'Card--simple': variant === 'simple',
2428
+ Card: !variant
2429
+ }) }, other)));
2247
2430
  };
2248
2431
  Card.displayName = 'Card';
2249
2432
  Card.propTypes = {
2250
- className: PropTypes.string
2433
+ className: PropTypes.string,
2434
+ variant: PropTypes.string
2251
2435
  };
2252
2436
 
2253
2437
  var CardHeader = function (_a) {
@@ -2291,21 +2475,12 @@ var TextField = /** @class */ (function (_super) {
2291
2475
  _this.onChange = _this.onChange.bind(_this);
2292
2476
  return _this;
2293
2477
  }
2294
- TextField.prototype.componentDidUpdate = function (prevProps) {
2295
- var value = this.props.value;
2296
- if (value === prevProps.value) {
2297
- return;
2298
- }
2299
- this.setState({ value: value });
2300
- };
2301
2478
  TextField.prototype.render = function () {
2302
2479
  var _this = this;
2303
2480
  var isRequired = !!this.props.required;
2304
2481
  // disabling `no-unused-vars` to prevent specific
2305
2482
  // props from being passed through to the input
2306
- var _a = this.props, label = _a.label, fieldRef = _a.fieldRef,
2307
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
2308
- value = _a.value,
2483
+ var _a = this.props, label = _a.label, fieldRef = _a.fieldRef, value = _a.value,
2309
2484
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
2310
2485
  onChange = _a.onChange,
2311
2486
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
@@ -2330,11 +2505,11 @@ var TextField = /** @class */ (function (_super) {
2330
2505
  'Field__text-input': !multiline,
2331
2506
  Field__textarea: multiline,
2332
2507
  'Field--has-error': error
2333
- }), id: this.inputId, value: this.state.value, onChange: this.onChange, "aria-invalid": !!error, ref: function (input) {
2508
+ }), id: this.inputId, value: typeof value !== 'undefined' ? value : this.state.value, onChange: this.onChange, "aria-invalid": !!error, ref: function (input) {
2334
2509
  _this.input = input;
2335
2510
  setRef(fieldRef, input);
2336
2511
  } }, other, inputProps)),
2337
- React__default.createElement("div", { className: "Error", id: this.errorId }, error)));
2512
+ error && (React__default.createElement("div", { className: "Error", id: this.errorId }, error))));
2338
2513
  };
2339
2514
  TextField.prototype.onChange = function (e) {
2340
2515
  var _a, _b;
@@ -2380,11 +2555,10 @@ var TextField = /** @class */ (function (_super) {
2380
2555
  }(React__default.Component));
2381
2556
 
2382
2557
  function PanelTrigger(_a) {
2383
- var children = _a.children, className = _a.className, open = _a.open, onClick = _a.onClick, other = tslib.__rest(_a, ["children", "className", "open", "onClick"]);
2384
- return (React__default.createElement("button", tslib.__assign({}, other, { className: classNames('ExpandCollapse__trigger', className), type: "button", "aria-expanded": open, onClick: onClick }),
2385
- typeof children === 'function' ? children({ open: !!open }) : children,
2386
- ' ',
2387
- React__default.createElement(Icon, { type: "chevron-" + (open ? 'down' : 'right') })));
2558
+ var children = _a.children, className = _a.className, open = _a.open, fullWidth = _a.fullWidth, onClick = _a.onClick, other = tslib.__rest(_a, ["children", "className", "open", "fullWidth", "onClick"]);
2559
+ return (React__default.createElement("button", tslib.__assign({}, other, { className: classNames('ExpandCollapse__trigger', fullWidth ? 'fullWidth' : '', className), type: "button", "aria-expanded": open, onClick: onClick }),
2560
+ React__default.createElement("div", { className: "ExpandCollapse__trigger-title" }, typeof children === 'function' ? children({ open: !!open }) : children),
2561
+ React__default.createElement(Icon, { type: open ? 'chevron-down' : 'chevron-right' })));
2388
2562
  }
2389
2563
  PanelTrigger.propTypes = {
2390
2564
  children: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),
@@ -2506,7 +2680,7 @@ var ExpandCollapsePanel = /** @class */ (function (_super) {
2506
2680
  open: isOpen,
2507
2681
  onClick: this.handleToggle
2508
2682
  }),
2509
- React__default.createElement("div", tslib.__assign({}, other, { className: classNames(animationClass, className, {
2683
+ React__default.createElement("div", tslib.__assign({}, other, { className: classNames('ExpandCollapse__panel', animationClass, className, {
2510
2684
  'is--hidden': !isOpen && !isAnimating
2511
2685
  }), ref: this.panel }), panelElements)));
2512
2686
  };
@@ -7775,9 +7949,24 @@ Code.propTypes = {
7775
7949
  className: PropTypes.string
7776
7950
  };
7777
7951
 
7952
+ function AxeLoader() {
7953
+ return (React__default.createElement("svg", { version: "1.1", xmlns: "http://www.w3.org/2000/svg", x: "0", y: "0", viewBox: "0 0 800 800" },
7954
+ 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" }),
7955
+ 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" })));
7956
+ }
7957
+
7778
7958
  var LoaderOverlay = React__default.forwardRef(function (_a, ref) {
7779
- var className = _a.className, other = tslib.__rest(_a, ["className"]);
7780
- return (React__default.createElement("div", tslib.__assign({ className: classNames('Loader__overlay', className), ref: ref }, other)));
7959
+ var className = _a.className, variant = _a.variant, label = _a.label, other = tslib.__rest(_a, ["className", "variant", "label"]);
7960
+ return (React__default.createElement("div", tslib.__assign({ className: classNames('Loader__overlay', className, variant === 'large'
7961
+ ? 'Loader__overlay--large'
7962
+ : variant === 'small'
7963
+ ? 'Loader__overlay--small'
7964
+ : ''), ref: ref }, other),
7965
+ React__default.createElement("div", { className: "Loader__overlay__loader" },
7966
+ React__default.createElement(Loader, { variant: variant }),
7967
+ React__default.createElement(AxeLoader, null)),
7968
+ label ? React__default.createElement("span", { className: "Loader__overlay__label" }, label) : null,
7969
+ other.children));
7781
7970
  });
7782
7971
  LoaderOverlay.propTypes = {
7783
7972
  className: PropTypes.string
@@ -7872,6 +8061,152 @@ TableRow.propTypes = {
7872
8061
  className: PropTypes.string
7873
8062
  };
7874
8063
 
8064
+ var Tab = React__default.forwardRef(function (_a, ref) {
8065
+ var children = _a.children, propId = _a.id, target = _a.target, other = tslib.__rest(_a, ["children", "id", "target"]);
8066
+ return (React__default.createElement("li", tslib.__assign({ id: propId, ref: ref, role: "tab" }, other), children));
8067
+ });
8068
+ Tab.displayName = 'Tab';
8069
+ Tab.propTypes = {
8070
+ target: PropTypes.any.isRequired,
8071
+ id: PropTypes.string,
8072
+ children: PropTypes.node
8073
+ };
8074
+
8075
+ /**
8076
+ * Hook to be used similarly to the React.Component#componentDidMount.
8077
+ * Executes the provided `effect` when `dependencies` change but does not
8078
+ * execute the effect initially (on mount) - only on update.
8079
+ *
8080
+ * @param effect {Function} function to be executed when dependencies update
8081
+ * @param dependencies {Any} any valid dependency argument to React.useEffect
8082
+ */
8083
+ var useDidUpdate = function (effect, dependencies) {
8084
+ var mounted = React__default.useRef(false);
8085
+ React__default.useEffect(function () {
8086
+ if (!mounted.current) {
8087
+ mounted.current = true;
8088
+ return;
8089
+ }
8090
+ effect();
8091
+ }, dependencies);
8092
+ };
8093
+
8094
+ var Tabs = function (_a) {
8095
+ 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"]);
8096
+ var _d = React.useState(initialActiveIndex), activeIndex = _d[0], setActiveIndex = _d[1];
8097
+ var tabsRef = React.useRef(null);
8098
+ var focusedTabRef = React.useRef(null);
8099
+ var tabs = React__default.Children.toArray(children).filter(function (child) { return child.type === Tab; });
8100
+ var tabCount = tabs.length;
8101
+ var handleClick = function (index) {
8102
+ setActiveIndex(index);
8103
+ };
8104
+ var handleKeyDown = function (event) {
8105
+ var key = event.key;
8106
+ var newIndex = activeIndex;
8107
+ var forward;
8108
+ var backward;
8109
+ if (orientation === 'horizontal') {
8110
+ forward = 'ArrowRight';
8111
+ backward = 'ArrowLeft';
8112
+ }
8113
+ else {
8114
+ forward = 'ArrowDown';
8115
+ backward = 'ArrowUp';
8116
+ }
8117
+ switch (key) {
8118
+ case backward: {
8119
+ newIndex = activeIndex - 1;
8120
+ // circularity
8121
+ if (newIndex === -1) {
8122
+ newIndex = tabCount - 1;
8123
+ }
8124
+ setActiveIndex(newIndex);
8125
+ event.preventDefault();
8126
+ break;
8127
+ }
8128
+ case forward: {
8129
+ newIndex = activeIndex + 1;
8130
+ // circularity
8131
+ if (newIndex === tabCount) {
8132
+ newIndex = 0;
8133
+ }
8134
+ setActiveIndex(newIndex);
8135
+ event.preventDefault();
8136
+ break;
8137
+ }
8138
+ case 'Home': {
8139
+ newIndex = 0;
8140
+ setActiveIndex(newIndex);
8141
+ event.preventDefault();
8142
+ break;
8143
+ }
8144
+ case 'End': {
8145
+ event.preventDefault();
8146
+ newIndex = tabCount - 1;
8147
+ setActiveIndex(newIndex);
8148
+ event.preventDefault();
8149
+ break;
8150
+ }
8151
+ }
8152
+ };
8153
+ var tabComponents = tabs.map(function (child, index) {
8154
+ var _a;
8155
+ var _b;
8156
+ var _c = child.props, target = _c.target, propId = _c.id, other = tslib.__rest(_c, ["target", "id"]);
8157
+ var selected = index === activeIndex;
8158
+ var id = (propId ? [propId] : nextId.useId(1, 'tab'))[0];
8159
+ React.useEffect(function () {
8160
+ var _a;
8161
+ (_a = target.current) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-labelledby', id);
8162
+ }, [target]);
8163
+ React.useEffect(function () {
8164
+ var _a, _b;
8165
+ index === activeIndex
8166
+ ? (_a = target.current) === null || _a === void 0 ? void 0 : _a.classList.remove('TabPanel--hidden') : (_b = target.current) === null || _b === void 0 ? void 0 : _b.classList.add('TabPanel--hidden');
8167
+ }, [activeIndex]);
8168
+ var config = tslib.__assign((_a = { id: id, className: classNames('Tab', {
8169
+ 'Tab--active': selected
8170
+ }), tabIndex: index === activeIndex ? 0 : -1 }, _a['aria-controls'] = (_b = target.current) === null || _b === void 0 ? void 0 : _b.id, _a['aria-selected'] = selected, _a.ref = index === activeIndex ? focusedTabRef : null, _a.onClick = function () { return handleClick(index); }, _a), other);
8171
+ return React__default.cloneElement(child, config);
8172
+ });
8173
+ useDidUpdate(function () {
8174
+ var _a;
8175
+ (_a = focusedTabRef.current) === null || _a === void 0 ? void 0 : _a.focus();
8176
+ if (typeof onChange === 'function') {
8177
+ onChange({ activeTabIndex: activeIndex, target: focusedTabRef.current });
8178
+ }
8179
+ }, [activeIndex]);
8180
+ return (React__default.createElement("div", { className: classNames('Tabs', className, {
8181
+ 'Tabs--thin': thin,
8182
+ 'Tabs--vertical': orientation === 'vertical',
8183
+ 'Tabs--horizontal': orientation === 'horizontal'
8184
+ }), ref: tabsRef },
8185
+ React__default.createElement("ul", tslib.__assign({ role: "tablist", className: "Tablist" }, labelProp, { onKeyDown: handleKeyDown }), tabComponents)));
8186
+ };
8187
+ Tabs.displayName = 'Tabs';
8188
+ Tabs.propTypes = {
8189
+ children: PropTypes.node.isRequired,
8190
+ 'aria-label': PropTypes.string,
8191
+ 'aria-labelledby': PropTypes.string,
8192
+ initialActiveIndex: PropTypes.number,
8193
+ thin: PropTypes.bool,
8194
+ orientation: PropTypes.string,
8195
+ className: PropTypes.string
8196
+ };
8197
+
8198
+ var TabPanel = React.forwardRef(function (_a, ref) {
8199
+ var children = _a.children, propId = _a.id, className = _a.className, other = tslib.__rest(_a, ["children", "id", "className"]);
8200
+ var id = (propId ? [propId] : nextId.useId(1, 'tabpanel'))[0];
8201
+ return (React__default.createElement("div", tslib.__assign({ role: "tabpanel", className: classNames('TabPanel', className), id: id, ref: ref }, other), children));
8202
+ });
8203
+ TabPanel.displayName = 'TabPanel';
8204
+ TabPanel.propTypes = {
8205
+ id: PropTypes.string,
8206
+ children: PropTypes.node,
8207
+ className: PropTypes.string
8208
+ };
8209
+
7875
8210
  var commonPropTypes = {
7876
8211
  children: PropTypes.node.isRequired,
7877
8212
  className: PropTypes.string
@@ -7916,7 +8251,7 @@ var Step = function (props) {
7916
8251
  // list items, therefore it is safe to clobber
7917
8252
  // it with the contents of the tooltip in the
7918
8253
  // tab stop's accessible name.
7919
- association: "aria-labelledby" },
8254
+ association: "aria-labelledby", "aria-label": isTooltip(props) ? props.tooltipText : undefined },
7920
8255
  React__default.createElement("div", { className: "Stepper__step-indicator" }))) : (React__default.createElement(React__default.Fragment, null,
7921
8256
  React__default.createElement("div", { className: "Stepper__step-indicator" }),
7922
8257
  'children' in props && (React__default.createElement("div", { className: "Stepper__step-label" }, props.children)))))));
@@ -7925,6 +8260,7 @@ Step.displayName = 'Step';
7925
8260
  Step.propTypes = {
7926
8261
  children: PropTypes.node,
7927
8262
  tooltip: PropTypes.node,
8263
+ tooltipText: PropTypes.string,
7928
8264
  className: PropTypes.string
7929
8265
  };
7930
8266
  var Stepper = function (_a) {
@@ -7937,6 +8273,138 @@ Stepper.propTypes = {
7937
8273
  className: PropTypes.string
7938
8274
  };
7939
8275
 
8276
+ var Panel = function (_a) {
8277
+ var _b;
8278
+ var children = _a.children, collapsed = _a.collapsed, className = _a.className, heading = _a.heading, other = tslib.__rest(_a, ["children", "collapsed", "className", "heading"]);
8279
+ var Heading = "h" + (typeof heading === 'object' && 'level' in heading && !!heading.level
8280
+ ? heading.level
8281
+ : 2);
8282
+ var headingId = typeof heading === 'object' && 'id' in heading ? heading.id : randomId();
8283
+ return (React__default.createElement("section", tslib.__assign({ "aria-labelledby": headingId, className: classNames('Panel', className, (_b = {},
8284
+ _b['Panel--collapsed'] = collapsed,
8285
+ _b)) }, other),
8286
+ React__default.createElement(Heading, { id: headingId, className: "Panel__Heading" }, typeof heading === 'object' && 'text' in heading
8287
+ ? heading.text
8288
+ : heading),
8289
+ children));
8290
+ };
8291
+ Panel.displayName = 'Panel';
8292
+ Panel.propTypes = {
8293
+ children: PropTypes.node.isRequired,
8294
+ heading: PropTypes.oneOfType([PropTypes.object, PropTypes.node]).isRequired,
8295
+ className: PropTypes.string
8296
+ };
8297
+
8298
+ var IssuePanel = function (_a) {
8299
+ var className = _a.className, _b = _a.title, title = _b === void 0 ? '' : _b, actions = _a.actions, children = _a.children;
8300
+ return (React__default.createElement("div", { className: classNames('IssuePanel', className) },
8301
+ React__default.createElement("div", { className: "IssuePanel__Header" },
8302
+ title && React__default.createElement("div", { className: "IssuePanel__Header-title" }, title),
8303
+ actions && React__default.createElement("div", { className: "IssuePanel__Header-actions" }, actions)),
8304
+ React__default.createElement("div", { className: "IssuePanel__Content" }, children)));
8305
+ };
8306
+ IssuePanel.displayName = 'IssuePanel';
8307
+ IssuePanel.propTypes = {
8308
+ children: PropTypes.node.isRequired,
8309
+ className: PropTypes.string
8310
+ };
8311
+
8312
+ var ProgressBar = React.forwardRef(function (_a, ref) {
8313
+ var _b = _a.progress, progress = _b === void 0 ? 0 : _b, _c = _a.progressMax, progressMax = _c === void 0 ? 100 : _c, _d = _a.progressMin, progressMin = _d === void 0 ? 0 : _d, props = tslib.__rest(_a, ["progress", "progressMax", "progressMin"]);
8314
+ var className = props.className, otherProps = tslib.__rest(props, ["className"]);
8315
+ return (React__default.createElement("div", tslib.__assign({ className: classNames('ProgressBar', className), role: "progressbar", "aria-valuemin": progressMin, "aria-valuemax": progressMax, "aria-valuenow": progress, ref: ref }, otherProps),
8316
+ React__default.createElement("div", { className: "ProgressBar--fill", style: { width: Math.min((progress / progressMax) * 100, 100) + "%" } })));
8317
+ });
8318
+ ProgressBar.displayName = 'ProgressBar';
8319
+
8320
+ var Address = function (_a) {
8321
+ var children = _a.children, className = _a.className, other = tslib.__rest(_a, ["children", "className"]);
8322
+ return (React__default.createElement("address", tslib.__assign({ className: classNames('Address', className) }, other), children));
8323
+ };
8324
+ Address.displayName = 'Address';
8325
+ Address.propTypes = {
8326
+ children: PropTypes.node.isRequired,
8327
+ className: PropTypes.string
8328
+ };
8329
+ var AddressLine = function (_a) {
8330
+ var children = _a.children, className = _a.className, other = tslib.__rest(_a, ["children", "className"]);
8331
+ return children ? (React__default.createElement("div", tslib.__assign({ className: classNames('Address__line', className) }, other), children)) : null;
8332
+ };
8333
+ AddressLine.displayName = 'AddressLine';
8334
+ AddressLine.propTypes = {
8335
+ children: PropTypes.node,
8336
+ className: PropTypes.string
8337
+ };
8338
+ var AddressCityStateZip = function (_a) {
8339
+ var city = _a.city, state = _a.state, zip = _a.zip, className = _a.className, other = tslib.__rest(_a, ["city", "state", "zip", "className"]);
8340
+ return city || state || zip ? (React__default.createElement("div", tslib.__assign({ className: classNames('Address__city-state-zip', className) }, other), [[city, state].filter(Boolean).join(', '), zip]
8341
+ .filter(Boolean)
8342
+ .join(' '))) : null;
8343
+ };
8344
+ AddressCityStateZip.displayName = 'AddressCityStateZip';
8345
+ AddressCityStateZip.propTypes = {
8346
+ city: PropTypes.node,
8347
+ state: PropTypes.node,
8348
+ zip: PropTypes.node,
8349
+ className: PropTypes.string
8350
+ };
8351
+
8352
+ var Pagination = React__default.forwardRef(function (_a, ref) {
8353
+ 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"]);
8354
+ var itemStart = currentPage * itemsPerPage - itemsPerPage + 1;
8355
+ var itemEnd = Math.min(itemStart + itemsPerPage - 1, totalItems);
8356
+ var isLastPage = itemEnd === totalItems;
8357
+ var isFirstPage = currentPage === 1;
8358
+ return (React__default.createElement("div", tslib.__assign({ ref: ref, className: classNames('Pagination', className) }, other),
8359
+ React__default.createElement("ul", null,
8360
+ React__default.createElement("li", null, isFirstPage ? (React__default.createElement(TooltipTabstop, { hideElementOnHidden: true, tooltip: firstPageLabel, placement: tooltipPlacement },
8361
+ React__default.createElement(Icon, { type: "chevron-double-left" }))) : (React__default.createElement(IconButton, { icon: "chevron-double-left", tooltipPlacement: tooltipPlacement, label: firstPageLabel, onClick: onFirstPageClick }))),
8362
+ React__default.createElement("li", null, isFirstPage ? (React__default.createElement(TooltipTabstop, { hideElementOnHidden: true, tooltip: previousPageLabel, placement: tooltipPlacement },
8363
+ React__default.createElement(Icon, { type: "chevron-left" }))) : (React__default.createElement(IconButton, { icon: "chevron-left", tooltipPlacement: tooltipPlacement, label: previousPageLabel, onClick: onPreviousPageClick }))),
8364
+ React__default.createElement("li", null,
8365
+ React__default.createElement("span", { role: "log", "aria-atomic": "true" }, statusLabel || (React__default.createElement("span", null,
8366
+ "Showing ",
8367
+ React__default.createElement("strong", null, itemStart),
8368
+ " of",
8369
+ ' ',
8370
+ React__default.createElement("strong", null, itemEnd),
8371
+ " of ",
8372
+ React__default.createElement("strong", null, totalItems))))),
8373
+ React__default.createElement("li", null, isLastPage ? (React__default.createElement(TooltipTabstop, { hideElementOnHidden: true, tooltip: nextPageLabel, placement: tooltipPlacement },
8374
+ React__default.createElement(Icon, { type: "chevron-right" }))) : (React__default.createElement(IconButton, { icon: "chevron-right", tooltipPlacement: tooltipPlacement, label: nextPageLabel, onClick: onNextPageClick }))),
8375
+ React__default.createElement("li", null, isLastPage ? (React__default.createElement(TooltipTabstop, { hideElementOnHidden: true, tooltip: lastPageLabel, placement: tooltipPlacement },
8376
+ React__default.createElement(Icon, { type: "chevron-double-right" }))) : (React__default.createElement(IconButton, { icon: "chevron-double-right", tooltipPlacement: tooltipPlacement, label: lastPageLabel, onClick: onLastPageClick }))))));
8377
+ });
8378
+ Pagination.displayName = 'Pagination';
8379
+ Pagination.propTypes = {
8380
+ totalItems: PropTypes.number.isRequired,
8381
+ itemsPerPage: PropTypes.number,
8382
+ currentPage: PropTypes.number,
8383
+ statusLabel: PropTypes.element,
8384
+ firstPageLabel: PropTypes.string,
8385
+ previousPageLabel: PropTypes.string,
8386
+ nextPageLabel: PropTypes.string,
8387
+ lastPageLabel: PropTypes.string,
8388
+ onNextPageClick: PropTypes.func,
8389
+ onPreviousPageClick: PropTypes.func,
8390
+ onFirstPageClick: PropTypes.func,
8391
+ onLastPageClick: PropTypes.func,
8392
+ // @ts-expect-error
8393
+ tooltipPlacement: PropTypes.string,
8394
+ className: PropTypes.string
8395
+ };
8396
+
8397
+ var FieldWrap = React__default.forwardRef(function (_a, ref) {
8398
+ var children = _a.children, className = _a.className, _b = _a.as, Component = _b === void 0 ? 'div' : _b, props = tslib.__rest(_a, ["children", "className", "as"]);
8399
+ return (React__default.createElement(Component, tslib.__assign({ ref: ref, className: classNames('Panel', className) }, props), children));
8400
+ });
8401
+ FieldWrap.displayName = 'FieldWrap';
8402
+ FieldWrap.propTypes = {
8403
+ children: PropTypes.node.isRequired,
8404
+ className: PropTypes.string,
8405
+ as: PropTypes.string
8406
+ };
8407
+
7940
8408
  var LIGHT_THEME_CLASS = 'cauldron--theme-light';
7941
8409
  var DARK_THEME_CLASS = 'cauldron--theme-dark';
7942
8410
  var ThemeContext = React.createContext({});
@@ -7986,6 +8454,9 @@ ThemeProvider.propTypes = {
7986
8454
  initialTheme: PropTypes.string
7987
8455
  };
7988
8456
 
8457
+ exports.Address = Address;
8458
+ exports.AddressCityStateZip = AddressCityStateZip;
8459
+ exports.AddressLine = AddressLine;
7989
8460
  exports.Alert = Alert;
7990
8461
  exports.AlertActions = AlertActions;
7991
8462
  exports.AlertContent = AlertContent;
@@ -8006,8 +8477,10 @@ exports.Dialog = Dialog;
8006
8477
  exports.DialogContent = DialogContent;
8007
8478
  exports.DialogFooter = DialogFooter;
8008
8479
  exports.ExpandCollapsePanel = ExpandCollapsePanel;
8480
+ exports.FieldWrap = FieldWrap;
8009
8481
  exports.Icon = Icon;
8010
8482
  exports.IconButton = IconButton;
8483
+ exports.IssuePanel = IssuePanel;
8011
8484
  exports.Layout = Layout;
8012
8485
  exports.Line = Line;
8013
8486
  exports.Link = Link;
@@ -8019,14 +8492,19 @@ exports.MenuItem = MenuItem;
8019
8492
  exports.Modal = Modal;
8020
8493
  exports.ModalContent = ModalContent;
8021
8494
  exports.ModalFooter = ModalFooter;
8495
+ exports.NavBar = NavBar;
8496
+ exports.NavItem = NavItem;
8022
8497
  exports.Offscreen = Offscreen;
8023
8498
  exports.OptionsMenu = OptionsMenu;
8024
8499
  exports.OptionsMenuItem = OptionsMenuItem;
8025
8500
  exports.OptionsMenuList = OptionsMenuList;
8026
8501
  exports.OptionsMenuTrigger = OptionsMenuTrigger;
8027
8502
  exports.OptionsMenuWrapper = OptionsMenuWrapper;
8503
+ exports.Pagination = Pagination;
8504
+ exports.Panel = Panel;
8028
8505
  exports.PanelTrigger = PanelTrigger$1;
8029
8506
  exports.Pointout = Pointout;
8507
+ exports.ProgressBar = ProgressBar;
8030
8508
  exports.RadioGroup = RadioGroup;
8031
8509
  exports.Scrim = Scrim;
8032
8510
  exports.Select = Select;
@@ -8036,12 +8514,15 @@ exports.Sidebar = SideBar;
8036
8514
  exports.SkipLink = SkipLink;
8037
8515
  exports.Step = Step;
8038
8516
  exports.Stepper = Stepper;
8517
+ exports.Tab = Tab;
8518
+ exports.TabPanel = TabPanel;
8039
8519
  exports.Table = Table;
8040
8520
  exports.TableBody = TableBody;
8041
8521
  exports.TableCell = TableCell;
8042
8522
  exports.TableHead = TableHead;
8043
8523
  exports.TableHeader = TableHeader;
8044
8524
  exports.TableRow = TableRow;
8525
+ exports.Tabs = Tabs;
8045
8526
  exports.Tag = Tag;
8046
8527
  exports.TagLabel = TagLabel;
8047
8528
  exports.TextField = TextField;
@@ -8058,4 +8539,6 @@ exports.TopBarMenu = TopBarMenu;
8058
8539
  exports.TopBarTrigger = TopBarTrigger;
8059
8540
  exports.Workspace = Workspace;
8060
8541
  exports.focusableSelector = focusableSelector;
8542
+ exports.iconTypes = iconTypes;
8543
+ exports.useDidUpdate = useDidUpdate;
8061
8544
  exports.useThemeContext = useThemeContext;