@popmenu/admin-ui 0.17.0 → 0.18.4-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/build/components/Table/Table.d.ts +3 -0
  2. package/build/components/Table/TableProps.d.ts +28 -0
  3. package/build/components/Table/TableStyles.d.ts +2 -0
  4. package/build/components/Table/index.d.ts +2 -0
  5. package/build/components/Table/util/makeColumns.d.ts +7 -0
  6. package/build/components/TableActionsCell/TableActionsCell.d.ts +3 -0
  7. package/build/components/TableActionsCell/TableActionsCellProps.d.ts +10 -0
  8. package/build/components/TableActionsCell/index.d.ts +2 -0
  9. package/build/components/TableBody/TableBody.d.ts +2 -0
  10. package/build/components/TableBody/index.d.ts +1 -0
  11. package/build/components/TableCell/TableCell.d.ts +2 -0
  12. package/build/components/TableCell/TableCellStyles.d.ts +1 -0
  13. package/build/components/TableCell/index.d.ts +1 -0
  14. package/build/components/TableFooter/TableFooter.d.ts +2 -0
  15. package/build/components/TableFooter/index.d.ts +1 -0
  16. package/build/components/TableHeader/TableHeader.d.ts +2 -0
  17. package/build/components/TableHeader/index.d.ts +1 -0
  18. package/build/components/TableHeaderCell/TableHeaderCell.d.ts +3 -0
  19. package/build/components/TableHeaderCell/TableHeaderCellProps.d.ts +8 -0
  20. package/build/components/TableHeaderCell/TableHeaderCellStyles.d.ts +2 -0
  21. package/build/components/TableHeaderCell/index.d.ts +1 -0
  22. package/build/components/TableHeaderRow/TableHeaderRow.d.ts +2 -0
  23. package/build/components/TableHeaderRow/index.d.ts +1 -0
  24. package/build/components/TableRow/TableRow.d.ts +2 -0
  25. package/build/components/TableRow/TableRowStyles.d.ts +1 -0
  26. package/build/components/TableRow/index.d.ts +1 -0
  27. package/build/components/index.d.ts +1 -0
  28. package/build/index.es.js +995 -60
  29. package/build/index.es.js.map +1 -1
  30. package/build/index.js +1039 -82
  31. package/build/index.js.map +1 -1
  32. package/package.json +6 -4
package/build/index.es.js CHANGED
@@ -1,11 +1,58 @@
1
1
  import * as React from 'react';
2
- import React__default, { forwardRef, createContext, useState, useContext } from 'react';
3
- import { Link, IconButton, Icon, Alert as Alert$1, Button as Button$1, Dialog, Card, CardContent, Box, CardActions, Typography, ButtonGroup as ButtonGroup$1, CardActionArea } from '@popmenu/common-ui';
4
- import { makeStyles, useTheme, lighten } from '@material-ui/core/styles';
5
- import { makeStyles as makeStyles$1 } from '@material-ui/core';
2
+ import React__default, { createElement, forwardRef, createContext, useState, useMemo, useContext } from 'react';
3
+ import CommonAlert from '@material-ui/lab/Alert';
4
+ import { makeStyles, Paper as Paper$1, Box, useTheme as useTheme$1 } from '@material-ui/core';
5
+ import '@material-ui/core/AppBar';
6
+ import MuiIconButton from '@material-ui/core/IconButton';
7
+ import MuiTypography from '@material-ui/core/Typography';
8
+ import { makeStyles as makeStyles$1, useTheme, lighten } from '@material-ui/core/styles';
9
+ import MuiAvatar from '@material-ui/core/Avatar';
10
+ import '@material-ui/core/Badge';
11
+ import MuiButton from '@material-ui/core/Button';
12
+ import CircularProgress from '@material-ui/core/CircularProgress';
13
+ import CommonButtonGroup from '@material-ui/core/ButtonGroup';
14
+ import Card from '@material-ui/core/Card';
15
+ import CardActionArea from '@material-ui/core/CardActionArea';
16
+ import CardActions from '@material-ui/core/CardActions';
17
+ import CardContent from '@material-ui/core/CardContent';
18
+ import '@material-ui/core/CardHeader';
19
+ import '@material-ui/core/CardMedia';
20
+ import MuiCheckbox from '@material-ui/core/Checkbox';
21
+ import FormControlLabel from '@material-ui/core/FormControlLabel';
22
+ import '@material-ui/core/Chip';
23
+ import '@material-ui/core/Collapse';
24
+ import Dialog from '@material-ui/core/Dialog';
25
+ import '@material-ui/core/DialogActions';
26
+ import '@material-ui/core/DialogContent';
27
+ import '@material-ui/core/DialogTitle';
28
+ import '@material-ui/core/Drawer';
29
+ import '@material-ui/core/FormControl';
30
+ import '@material-ui/core/Grid';
31
+ import '@material-ui/core/InputAdornment';
32
+ import '@material-ui/core/LinearProgress';
33
+ import MuiLink from '@material-ui/core/Link';
34
+ import '@material-ui/core/List';
35
+ import '@material-ui/core/ListItem';
36
+ import '@material-ui/core/ListItemIcon';
37
+ import '@material-ui/core/ListItemSecondaryAction';
38
+ import '@material-ui/core/ListItemText';
39
+ import Menu from '@material-ui/core/Menu';
40
+ import MenuItem from '@material-ui/core/MenuItem';
41
+ import '@material-ui/core/MenuList';
42
+ import MuiRadio from '@material-ui/core/Radio';
43
+ import '@material-ui/core/TextField';
44
+ import MuiSwitch from '@material-ui/core/Switch';
45
+ import '@material-ui/core/Tab';
46
+ import '@material-ui/core/Tabs';
47
+ import MuiToggleButton from '@material-ui/lab/ToggleButton';
48
+ import MuiToggleButtonGroup from '@material-ui/lab/ToggleButtonGroup';
49
+ import MuiTooltip from '@material-ui/core/Tooltip';
6
50
  import MuiAlertTitle from '@material-ui/lab/AlertTitle';
7
51
  import Box$1 from '@material-ui/core/Box';
8
- import Dialog$1 from '@material-ui/core/Dialog';
52
+ import { useTable } from 'react-table/src/hooks/useTable.js';
53
+ import { usePagination } from 'react-table/src/plugin-hooks/usePagination.js';
54
+ import { useSortBy } from 'react-table/src/plugin-hooks/useSortBy.js';
55
+ import { Pagination } from '@material-ui/lab';
9
56
  import MuiSnackbar from '@material-ui/core/Snackbar';
10
57
  import createTheme from '@material-ui/core/styles/createTheme';
11
58
 
@@ -24,18 +71,18 @@ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
24
71
  PERFORMANCE OF THIS SOFTWARE.
25
72
  ***************************************************************************** */
26
73
 
27
- var __assign = function() {
28
- __assign = Object.assign || function __assign(t) {
74
+ var __assign$1 = function() {
75
+ __assign$1 = Object.assign || function __assign(t) {
29
76
  for (var s, i = 1, n = arguments.length; i < n; i++) {
30
77
  s = arguments[i];
31
78
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
32
79
  }
33
80
  return t;
34
81
  };
35
- return __assign.apply(this, arguments);
82
+ return __assign$1.apply(this, arguments);
36
83
  };
37
84
 
38
- function __rest(s, e) {
85
+ function __rest$1(s, e) {
39
86
  var t = {};
40
87
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
41
88
  t[p] = s[p];
@@ -95,6 +142,645 @@ function __spreadArray(to, from, pack) {
95
142
  return to.concat(ar || from);
96
143
  }
97
144
 
145
+ /*! *****************************************************************************
146
+ Copyright (c) Microsoft Corporation.
147
+
148
+ Permission to use, copy, modify, and/or distribute this software for any
149
+ purpose with or without fee is hereby granted.
150
+
151
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
152
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
153
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
154
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
155
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
156
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
157
+ PERFORMANCE OF THIS SOFTWARE.
158
+ ***************************************************************************** */
159
+
160
+ var __assign = function() {
161
+ __assign = Object.assign || function __assign(t) {
162
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
163
+ s = arguments[i];
164
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
165
+ }
166
+ return t;
167
+ };
168
+ return __assign.apply(this, arguments);
169
+ };
170
+
171
+ function __rest(s, e) {
172
+ var t = {};
173
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
174
+ t[p] = s[p];
175
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
176
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
177
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
178
+ t[p[i]] = s[p[i]];
179
+ }
180
+ return t;
181
+ }
182
+
183
+ var useIconStyles = makeStyles(function (_a) {
184
+ var spacing = _a.spacing, palette = _a.palette;
185
+ var getFontSize = function (_a) {
186
+ var size = _a.size;
187
+ var sizes = {
188
+ inherit: 'inherit',
189
+ small: spacing(1.5),
190
+ medium: spacing(2),
191
+ large: spacing(2.5),
192
+ 'extra-large': spacing(3),
193
+ };
194
+ return size ? sizes[size] : 'inherit';
195
+ };
196
+ var getColor = function (props) {
197
+ var semanticColors = ['primary', 'secondary', 'info', 'success', 'warning', 'error'];
198
+ var value = 'inherit';
199
+ if (props.color) {
200
+ if (semanticColors.includes(props.color.split('.')[0])) {
201
+ var _a = props.color.split('.'), color = _a[0], _b = _a[1], variant = _b === void 0 ? 'main' : _b;
202
+ value = palette[color][variant];
203
+ }
204
+ else if (props.color.search(/^(rgb|hsla|#)/) !== -1) {
205
+ value = props.color;
206
+ }
207
+ }
208
+ return value;
209
+ };
210
+ return {
211
+ root: {
212
+ color: getColor,
213
+ fontSize: getFontSize,
214
+ strokeWidth: '1.3px',
215
+ },
216
+ };
217
+ });
218
+
219
+ var classnames = {exports: {}};
220
+
221
+ /*!
222
+ Copyright (c) 2018 Jed Watson.
223
+ Licensed under the MIT License (MIT), see
224
+ http://jedwatson.github.io/classnames
225
+ */
226
+
227
+ (function (module) {
228
+ /* global define */
229
+
230
+ (function () {
231
+
232
+ var hasOwn = {}.hasOwnProperty;
233
+
234
+ function classNames() {
235
+ var classes = [];
236
+
237
+ for (var i = 0; i < arguments.length; i++) {
238
+ var arg = arguments[i];
239
+ if (!arg) continue;
240
+
241
+ var argType = typeof arg;
242
+
243
+ if (argType === 'string' || argType === 'number') {
244
+ classes.push(arg);
245
+ } else if (Array.isArray(arg)) {
246
+ if (arg.length) {
247
+ var inner = classNames.apply(null, arg);
248
+ if (inner) {
249
+ classes.push(inner);
250
+ }
251
+ }
252
+ } else if (argType === 'object') {
253
+ if (arg.toString === Object.prototype.toString) {
254
+ for (var key in arg) {
255
+ if (hasOwn.call(arg, key) && arg[key]) {
256
+ classes.push(key);
257
+ }
258
+ }
259
+ } else {
260
+ classes.push(arg.toString());
261
+ }
262
+ }
263
+ }
264
+
265
+ return classes.join(' ');
266
+ }
267
+
268
+ if (module.exports) {
269
+ classNames.default = classNames;
270
+ module.exports = classNames;
271
+ } else {
272
+ window.classNames = classNames;
273
+ }
274
+ }());
275
+ }(classnames));
276
+
277
+ var classNames = classnames.exports;
278
+
279
+ var iconStaticClassName = 'pop-icon';
280
+ var Icon = function (props) {
281
+ var icon = props.icon, className = props.className, restProps = __rest(props, ["icon", "className"]);
282
+ var classes = useIconStyles(props);
283
+ var isValid = true;
284
+ if (!icon || (typeof icon === 'function' && icon({}) === undefined)) {
285
+ isValid = false;
286
+ }
287
+ return isValid
288
+ ? createElement(icon, __assign({ className: classNames([classes.root, iconStaticClassName, className]) }, restProps))
289
+ : null;
290
+ };
291
+ Icon.defaultProps = {
292
+ size: 'inherit',
293
+ color: 'inherit',
294
+ };
295
+ Icon.displayName = 'Icon';
296
+
297
+ var IconButton = forwardRef(function (props, ref) {
298
+ return React__default.createElement(MuiIconButton, __assign({ ref: ref }, props));
299
+ });
300
+ IconButton.displayName = 'IconButton';
301
+ IconButton.defaultProps = {
302
+ color: 'secondary',
303
+ };
304
+
305
+ var useTypographyStyles = makeStyles$1(function () {
306
+ var _a;
307
+ return ({
308
+ root: (_a = {},
309
+ _a["& ." + iconStaticClassName] = {
310
+ position: 'relative',
311
+ top: '0.125em',
312
+ padding: '0 0.125em',
313
+ boxSizing: 'content-box',
314
+ },
315
+ _a),
316
+ caption: {
317
+ display: 'inline',
318
+ },
319
+ overline: {
320
+ display: 'inline',
321
+ },
322
+ });
323
+ });
324
+
325
+ var Typography = forwardRef(function (props, ref) {
326
+ var classes = useTypographyStyles(props);
327
+ return React__default.createElement(MuiTypography, __assign({ ref: ref, classes: classes }, props));
328
+ });
329
+ Typography.displayName = 'Typography';
330
+
331
+ var useStyles$1 = makeStyles(function (_a) {
332
+ var spacing = _a.spacing;
333
+ return ({
334
+ root: {
335
+ '&:last-child': {
336
+ marginBottom: 0,
337
+ },
338
+ marginBottom: spacing(4),
339
+ padding: spacing(4),
340
+ },
341
+ });
342
+ });
343
+ var Paper = forwardRef(function (props, ref) {
344
+ var legacyStyles = props.legacyStyles, restProps = __rest(props, ["legacyStyles"]);
345
+ var classes = useStyles$1(props);
346
+ return React__default.createElement(Paper$1, __assign({}, ref, { classes: __assign({}, (legacyStyles && classes)) }, restProps));
347
+ });
348
+ Paper.displayName = 'Paper';
349
+ Paper.defaultProps = {
350
+ legacyStyles: false,
351
+ };
352
+
353
+ var AUDIO_PLAYER_EVENT_TYPES;
354
+ (function (AUDIO_PLAYER_EVENT_TYPES) {
355
+ AUDIO_PLAYER_EVENT_TYPES["TOGGLE_PLAYBACK"] = "TOGGLE_PLAYBACK";
356
+ AUDIO_PLAYER_EVENT_TYPES["TOGGLE_VOLUME_CONTROL"] = "TOGGLE_VOLUME_CONTROL";
357
+ AUDIO_PLAYER_EVENT_TYPES["TOGGLE_MUTE"] = "TOGGLE_MUTE";
358
+ AUDIO_PLAYER_EVENT_TYPES["VOLUME_CHANGE"] = "VOLUME_CHANGE";
359
+ AUDIO_PLAYER_EVENT_TYPES["TIME_CHANGE"] = "TIME_CHANGE";
360
+ AUDIO_PLAYER_EVENT_TYPES["DURATION_CHANGE"] = "DURATION_CHANGE";
361
+ AUDIO_PLAYER_EVENT_TYPES["SET_TIME"] = "SET_TIME";
362
+ AUDIO_PLAYER_EVENT_TYPES["CAN_PLAY"] = "CAN_PLAY";
363
+ AUDIO_PLAYER_EVENT_TYPES["RESET"] = "RESET";
364
+ })(AUDIO_PLAYER_EVENT_TYPES || (AUDIO_PLAYER_EVENT_TYPES = {}));
365
+ var PLAYBACK_STATES;
366
+ (function (PLAYBACK_STATES) {
367
+ PLAYBACK_STATES["NONE"] = "NONE";
368
+ PLAYBACK_STATES["PAUSED"] = "PAUSED";
369
+ PLAYBACK_STATES["PLAYING"] = "PLAYING";
370
+ })(PLAYBACK_STATES || (PLAYBACK_STATES = {}));
371
+ var CONTROL_LABELS;
372
+ (function (CONTROL_LABELS) {
373
+ CONTROL_LABELS["PAUSE"] = "PAUSE";
374
+ CONTROL_LABELS["PLAY"] = "PLAY";
375
+ CONTROL_LABELS["MUTE"] = "MUTE";
376
+ CONTROL_LABELS["UNMUTE"] = "UNMUTE";
377
+ })(CONTROL_LABELS || (CONTROL_LABELS = {}));
378
+ var VOLUME_CONTROL_STATES;
379
+ (function (VOLUME_CONTROL_STATES) {
380
+ VOLUME_CONTROL_STATES["SHOW"] = "SHOW";
381
+ VOLUME_CONTROL_STATES["HIDE"] = "HIDE";
382
+ })(VOLUME_CONTROL_STATES || (VOLUME_CONTROL_STATES = {}));
383
+
384
+ ({
385
+ playback: PLAYBACK_STATES.NONE,
386
+ volumeControls: VOLUME_CONTROL_STATES.HIDE,
387
+ context: {
388
+ volume: 100,
389
+ playbackButtonLabel: CONTROL_LABELS.PLAY,
390
+ volumeButtonLabel: CONTROL_LABELS.MUTE,
391
+ },
392
+ });
393
+
394
+ var LoadingStatus;
395
+ (function (LoadingStatus) {
396
+ LoadingStatus["ERROR"] = "ERROR";
397
+ LoadingStatus["LOADED"] = "LOADED";
398
+ LoadingStatus["PENDING"] = "PENDING";
399
+ })(LoadingStatus || (LoadingStatus = {}));
400
+ /**
401
+ * Hook returns [imgProps, loaded]
402
+ * ref: Merged default and provided imgProp object. Includes load and error events for img tag. To be passed to MuiAvatar.
403
+ * loaded: Indicates whether the src supplied to an img within Avatar results in loaded or error
404
+ */
405
+ var useImgProps = function (avatarProps) {
406
+ var _a = React__default.useState(LoadingStatus.PENDING), loaded = _a[0], setLoaded = _a[1];
407
+ var imgProps = __assign(__assign({}, avatarProps.imgProps), { onError: function (event) {
408
+ var _a, _b;
409
+ setLoaded(LoadingStatus.ERROR);
410
+ (_b = (_a = avatarProps.imgProps) === null || _a === void 0 ? void 0 : _a.onError) === null || _b === void 0 ? void 0 : _b.call(_a, event);
411
+ }, onLoad: function (event) {
412
+ var _a, _b;
413
+ setLoaded(LoadingStatus.LOADED);
414
+ (_b = (_a = avatarProps.imgProps) === null || _a === void 0 ? void 0 : _a.onLoad) === null || _b === void 0 ? void 0 : _b.call(_a, event);
415
+ } });
416
+ return { imgProps: imgProps, loaded: loaded };
417
+ };
418
+
419
+ var getAvatarDimensions = function (theme, props) {
420
+ var factors = {
421
+ 'extra-small': 3,
422
+ small: 4,
423
+ medium: 5,
424
+ large: 6,
425
+ 'extra-large': 12.5,
426
+ };
427
+ var sizeFactor = factors[props.size || 'medium'];
428
+ return theme.spacing(sizeFactor);
429
+ };
430
+ var getAvatarFontSize = function (props) {
431
+ var fontSizes = {
432
+ 'extra-small': '0.75rem',
433
+ small: '1rem',
434
+ medium: '1rem',
435
+ large: '1.25rem',
436
+ 'extra-large': '3.5rem',
437
+ };
438
+ return fontSizes[props.size || 'medium'];
439
+ };
440
+ var getAvatarBackground = function (props) {
441
+ var src = props.src, loaded = props.loaded;
442
+ var background = props.background;
443
+ if (src && loaded === LoadingStatus.LOADED) {
444
+ background = 'transparent';
445
+ }
446
+ return background;
447
+ };
448
+ var useAvatarStyles = makeStyles$1(function (theme) { return ({
449
+ root: {
450
+ width: function (props) { return getAvatarDimensions(theme, props); },
451
+ height: function (props) { return getAvatarDimensions(theme, props); },
452
+ fontSize: function (props) { return getAvatarFontSize(props); },
453
+ backgroundColor: function (props) { return getAvatarBackground(props); },
454
+ color: function (props) { return theme.palette.getContrastText(props.background || '#E0E0E0'); },
455
+ objectFit: function (props) { return props.fit; },
456
+ },
457
+ silhouette: {
458
+ '& path': {
459
+ fill: function (props) { return theme.palette.getContrastText(props.background || '#E0E0E0'); },
460
+ },
461
+ },
462
+ }); });
463
+
464
+ var _path$2;
465
+
466
+ function _extends$2() { _extends$2 = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$2.apply(this, arguments); }
467
+
468
+ function SvgSilhouetteFemale(props) {
469
+ return /*#__PURE__*/React.createElement("svg", _extends$2({
470
+ viewBox: "0 0 300 300",
471
+ fill: "none",
472
+ xmlns: "http://www.w3.org/2000/svg"
473
+ }, props), _path$2 || (_path$2 = /*#__PURE__*/React.createElement("path", {
474
+ d: "M179.417 182.917a3.362 3.362 0 00-2.951 1.076 3.461 3.461 0 00-.875 3.021c1.916 10.069 8.368 23.889 28.173 32.493 2.347 1.014 5.972 1.805 10.57 2.799 17.208 3.722 45.986 9.958 53.055 36.333a3.488 3.488 0 001.622 2.11 3.491 3.491 0 002.639.345 3.488 3.488 0 002.109-1.622 3.473 3.473 0 00.345-2.639c-8.173-30.465-40.777-37.527-58.298-41.319-4.056-.882-7.563-1.639-9.278-2.389-11.903-5.167-19.59-12.833-22.924-22.819 33.07 2.458 48.042-10.716 48.702-11.313a3.469 3.469 0 001.121-2.951 3.478 3.478 0 00-1.732-2.639c-19.084-10.903-19.084-48.577-19.084-62.764 0-39.674-26.722-71.125-60.979-71.618-.326-.011-.652-.018-.979-.021h-.007c-34.757.194-63.035 31.68-63.035 70.194 0 14.188 0 51.868-19.083 62.764a3.5 3.5 0 00-1.73 2.769 3.494 3.494 0 001.313 2.988c.959.743 22.14 16.952 48.202 12.028-3.486 9.569-11.07 16.931-22.625 21.951-1.674.73-5.007 1.528-8.868 2.445-17.64 4.194-50.48 12.007-58.702 42.687a3.481 3.481 0 00.348 2.638 3.475 3.475 0 006.368-.839c7.145-26.694 36.229-33.604 53.597-37.743 4.354-1.035 7.791-1.854 10.028-2.82 19.805-8.604 26.25-22.423 28.173-32.493a3.45 3.45 0 00-1.104-3.243 3.457 3.457 0 00-3.347-.722c-18.799 5.917-36.167-2.222-43.757-6.736 18.132-15.181 18.132-50.118 18.132-65.674 0-34.7 25.18-63.076 56.389-63.263l.736.041c30.778.438 53.986 28.236 53.986 64.667 0 15.562 0 50.576 18.208 65.757-6.271 3.583-20.569 9.382-44.458 6.521z",
475
+ fill: "#2E3042"
476
+ })));
477
+ }
478
+
479
+ var _path$1;
480
+
481
+ function _extends$1() { _extends$1 = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$1.apply(this, arguments); }
482
+
483
+ function SvgSilhouetteMale(props) {
484
+ return /*#__PURE__*/React.createElement("svg", _extends$1({
485
+ viewBox: "0 0 300 300",
486
+ fill: "none",
487
+ xmlns: "http://www.w3.org/2000/svg"
488
+ }, props), _path$1 || (_path$1 = /*#__PURE__*/React.createElement("path", {
489
+ d: "M27.594 261.886a3.513 3.513 0 004.281-2.478c7.204-26.904 36.484-33.877 53.984-38.05 4.386-1.043 7.848-1.869 10.1-2.842 19.935-8.66 26.433-22.592 28.377-32.757a3.493 3.493 0 00-.133-1.81 3.492 3.492 0 00-1.021-1.501c-10.38-8.968-19.137-22.431-24.663-37.917a3.447 3.447 0 00-.72-1.197c-7.31-7.953-11.506-16.361-11.506-23.06 0-3.914 1.475-6.539 4.798-8.52a3.5 3.5 0 001.7-2.857c1.545-35.662 26.922-63.735 58.047-63.917l.749.049c31.279.434 56.495 29.11 57.397 65.275a3.487 3.487 0 001.245 2.584c2.189 1.855 3.211 4.207 3.211 7.4 0 5.607-2.987 12.503-8.401 19.406a3.633 3.633 0 00-.587 1.106c-5.596 17.754-15.64 33.429-27.545 43.02a3.517 3.517 0 00-1.245 3.381c1.945 10.159 8.442 24.083 28.377 32.757 2.357 1.022 6.015 1.821 10.653 2.822 17.325 3.752 46.318 10.046 53.431 36.628a3.503 3.503 0 002.926 2.562 3.494 3.494 0 003.922-3.019 3.52 3.52 0 00-.091-1.363c-8.219-30.713-41.065-37.833-58.705-41.655-4.092-.889-7.625-1.652-9.345-2.408-13.01-5.657-21.026-14.275-23.859-25.658 12.08-10.383 22.187-26.401 27.965-44.365 6.134-7.981 9.505-16.2 9.505-23.221 0-4.684-1.511-8.59-4.504-11.643-1.665-39.232-29.636-70.127-64.35-70.624L150.545 38c-34.085.182-62.175 30.264-64.63 68.818-4.379 3.22-6.603 7.736-6.603 13.47 0 8.282 4.68 18.188 12.87 27.275 5.659 15.563 14.43 29.235 24.873 38.805-2.819 11.426-10.842 20.072-23.88 25.735-1.685.735-5.043 1.541-8.932 2.465-17.773 4.228-50.843 12.104-59.125 43.034a3.501 3.501 0 002.476 4.284z",
490
+ fill: "#2E3042"
491
+ })));
492
+ }
493
+
494
+ var _path;
495
+
496
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
497
+
498
+ function SvgSilhouetteNeutral(props) {
499
+ return /*#__PURE__*/React.createElement("svg", _extends({
500
+ viewBox: "0 0 300 300",
501
+ fill: "none",
502
+ xmlns: "http://www.w3.org/2000/svg"
503
+ }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
504
+ fillRule: "evenodd",
505
+ clipRule: "evenodd",
506
+ d: "M209 121c0 32.585-26.415 59-59 59s-59-26.415-59-59 26.415-59 59-59 59 26.415 59 59zm8 0c0 37.003-29.997 67-67 67s-67-29.997-67-67 29.997-67 67-67 67 29.997 67 67zm35 137.333V284h8v-25.667c0-13.614-5.821-26.671-16.182-36.298C233.456 212.408 219.403 207 204.75 207H94.25c-14.653 0-28.706 5.408-39.068 15.035C44.821 231.662 39 244.719 39 258.333V284h8v-25.667c0-11.295 4.824-22.257 13.628-30.437C69.45 219.698 81.537 215 94.25 215h110.5c12.714 0 24.799 4.698 33.622 12.896 8.804 8.18 13.628 19.142 13.628 30.437z",
507
+ fill: "#2E3042"
508
+ })));
509
+ }
510
+
511
+ var silhouettes = {
512
+ female: SvgSilhouetteFemale,
513
+ male: SvgSilhouetteMale,
514
+ neutral: SvgSilhouetteNeutral,
515
+ };
516
+ var Avatar = forwardRef(function (props, ref) {
517
+ var children = props.children, _a = props.silhouette, silhouette = _a === void 0 ? 'neutral' : _a, muiProps = __rest(props, ["children", "silhouette"]);
518
+ var _b = useImgProps(props), imgProps = _b.imgProps, loaded = _b.loaded;
519
+ var classes = useAvatarStyles(__assign(__assign({}, props), { loaded: loaded }));
520
+ var Silhouette = silhouettes[silhouette];
521
+ var fallback = muiProps.src || silhouette === 'none' ? '' : React__default.createElement(Silhouette, { className: classes.silhouette });
522
+ return (React__default.createElement(MuiAvatar, __assign({ ref: ref, classes: { root: classes.root } }, muiProps, imgProps), children || fallback));
523
+ });
524
+ Avatar.defaultProps = {
525
+ size: 'medium',
526
+ fit: 'cover',
527
+ background: '#E0E0E0',
528
+ silhouette: 'neutral',
529
+ };
530
+ Avatar.displayName = 'Avatar';
531
+
532
+ var useButtonStyles$1 = makeStyles$1(function () { return ({
533
+ root: {
534
+ minWidth: 'unset',
535
+ },
536
+ label: {
537
+ textTransform: function (_a) {
538
+ var textTransform = _a.textTransform;
539
+ return textTransform;
540
+ },
541
+ },
542
+ }); });
543
+
544
+ var Button$1 = forwardRef(function (props, ref) {
545
+ props.textTransform; var loading = props.loading, classesOverride = props.classes, className = props.className, muiProps = __rest(props, ["textTransform", "loading", "classes", "className"]);
546
+ props.classes; var styleProps = __rest(props, ["classes"]);
547
+ var classes = useButtonStyles$1(styleProps);
548
+ var typography = useTheme().typography;
549
+ var loadingIndicator = {
550
+ startIcon: React__default.createElement(CircularProgress, { color: "inherit", size: typography.button.fontSize }),
551
+ disabled: true,
552
+ };
553
+ return (React__default.createElement(MuiButton, __assign({ ref: ref, classes: __assign(__assign({}, classes), classesOverride), className: classNames([className, 'pm-button']) }, muiProps, (loading && loadingIndicator))));
554
+ });
555
+ Button$1.displayName = 'Button';
556
+
557
+ var Checkbox = forwardRef(function (props, ref) {
558
+ var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest(props, ["label", "disabled", "LabelProps"]);
559
+ var control = React__default.createElement(MuiCheckbox, __assign({ disabled: label ? undefined : disabled }, muiProps));
560
+ return label ? (React__default.createElement(FormControlLabel, __assign({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
561
+ });
562
+ Checkbox.displayName = 'Checkbox';
563
+
564
+ var getFadeStop = function (_a, typographyVariant) {
565
+ var typography = _a.typography;
566
+ return !isNaN(Number(typography[typographyVariant].lineHeight))
567
+ ? typography[typographyVariant].lineHeight + "rem"
568
+ : typography[typographyVariant].lineHeight;
569
+ };
570
+ makeStyles(function (theme) { return ({
571
+ overlay: {
572
+ position: 'absolute',
573
+ top: 0,
574
+ left: 0,
575
+ height: '100%',
576
+ width: '100%',
577
+ background: function (props) { return "linear-gradient(to top, white, #FFF0 " + getFadeStop(theme, props.typographyVariant) + ")"; },
578
+ },
579
+ }); });
580
+
581
+ var SemanticColors;
582
+ (function (SemanticColors) {
583
+ SemanticColors["PRIMARY_MAIN"] = "primary.main";
584
+ SemanticColors["PRIMARY_DARK"] = "primary.dark";
585
+ SemanticColors["PRIMARY_LIGHT"] = "primary.light";
586
+ SemanticColors["SECONDARY_MAIN"] = "secondary.main";
587
+ SemanticColors["SECONDARY_DARK"] = "secondary.dark";
588
+ SemanticColors["SECONDARY_LIGHT"] = "secondary.light";
589
+ })(SemanticColors || (SemanticColors = {}));
590
+ makeStyles(function (theme) { return ({
591
+ dividerRoot: {
592
+ gap: theme.spacing(2),
593
+ },
594
+ textRoot: {
595
+ color: function (props) {
596
+ var textColor = props.textColor;
597
+ if (Object.values(SemanticColors).includes(textColor)) {
598
+ var _a = textColor.split('.'), semanticColor = _a[0], shade = _a[1];
599
+ return theme.palette[semanticColor][shade];
600
+ }
601
+ else if (textColor) {
602
+ return textColor;
603
+ }
604
+ else {
605
+ return 'black';
606
+ }
607
+ },
608
+ textTransform: function (props) { return props.textTransform; },
609
+ },
610
+ dividerLine: {
611
+ backgroundColor: function (props) {
612
+ var dividerColor = props.dividerColor;
613
+ if (Object.values(SemanticColors).includes(dividerColor)) {
614
+ var _a = dividerColor.split('.'), semanticColor = _a[0], shade = _a[1];
615
+ return theme.palette[semanticColor][shade];
616
+ }
617
+ else if (dividerColor) {
618
+ return dividerColor;
619
+ }
620
+ else {
621
+ return theme.palette.grey[500];
622
+ }
623
+ },
624
+ },
625
+ }); });
626
+
627
+ var getLinkColor = function (_a, _b) {
628
+ var palette = _a.palette;
629
+ var _c = _b.color, color = _c === void 0 ? 'info' : _c;
630
+ var resolved;
631
+ if (['primary', 'secondary', 'info', 'error'].includes(color)) {
632
+ resolved = palette[color].main;
633
+ }
634
+ else if (['textPrimary', 'textSecondary'].includes(color)) {
635
+ resolved = palette.text[color.substring(4).toLowerCase()];
636
+ }
637
+ else if (color === 'inherit') {
638
+ resolved = color;
639
+ }
640
+ return resolved;
641
+ };
642
+ var useLinkStyles = makeStyles$1(function (theme) {
643
+ var _a;
644
+ return ({
645
+ root: (_a = {
646
+ display: 'flex',
647
+ color: function (props) { return getLinkColor(theme, props); }
648
+ },
649
+ _a["& ." + iconStaticClassName] = {
650
+ alignSelf: 'center',
651
+ },
652
+ _a),
653
+ });
654
+ });
655
+
656
+ var Link = forwardRef(function (props, ref) {
657
+ var children = props.children; props.color; var muiProps = __rest(props, ["children", "color"]);
658
+ var classes = useLinkStyles(props);
659
+ return (React__default.createElement(MuiLink, __assign({ ref: ref, classes: { root: classes.root } }, muiProps), children));
660
+ });
661
+ Link.defaultProps = {
662
+ color: 'info',
663
+ variant: 'body1',
664
+ };
665
+ Link.displayName = 'Link';
666
+
667
+ var Radio = forwardRef(function (props, ref) {
668
+ var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest(props, ["label", "disabled", "LabelProps"]);
669
+ var control = React__default.createElement(MuiRadio, __assign({ disabled: label ? undefined : disabled }, muiProps));
670
+ return label ? (React__default.createElement(FormControlLabel, __assign({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
671
+ });
672
+ Radio.displayName = 'Radio';
673
+
674
+ makeStyles$1(function () { return ({
675
+ textfield: {
676
+ background: function (props) { return (props.backgroundTransparency ? '#FFFFFF44' : 'none'); },
677
+ borderTopLeftRadius: 4,
678
+ borderBottomLeftRadius: 4,
679
+ '& fieldset': {
680
+ borderRight: 'none',
681
+ borderTopRightRadius: 0,
682
+ borderBottomRightRadius: 0,
683
+ },
684
+ },
685
+ button: {
686
+ borderTopLeftRadius: 0,
687
+ borderBottomLeftRadius: 0,
688
+ alignSelf: 'stretch',
689
+ },
690
+ input: {
691
+ color: function (props) { return props.inputTextColor || 'inherit'; },
692
+ '&$focused fieldset': {
693
+ top: -4,
694
+ },
695
+ },
696
+ focused: {},
697
+ }); });
698
+
699
+ var useSwitchStyles = makeStyles$1(function (theme) { return ({
700
+ checked: {
701
+ '& $thumb': {
702
+ background: theme.palette.success.main,
703
+ },
704
+ '&& + $track': {
705
+ backgroundColor: theme.palette.success.main,
706
+ },
707
+ },
708
+ thumb: {},
709
+ track: {},
710
+ }); });
711
+
712
+ var Switch = forwardRef(function (props, ref) {
713
+ var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest(props, ["label", "disabled", "LabelProps"]);
714
+ var classes = useSwitchStyles(props);
715
+ var control = React__default.createElement(MuiSwitch, __assign({ classes: classes, disabled: label ? undefined : disabled }, muiProps));
716
+ return label ? (React__default.createElement(FormControlLabel, __assign({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
717
+ });
718
+ Switch.displayName = 'Switch';
719
+
720
+ var useToggleButtonStyles = makeStyles$1(function (theme) { return ({
721
+ root: {
722
+ color: theme.palette.text.primary,
723
+ },
724
+ selected: {
725
+ '&&': {
726
+ '&:hover': {
727
+ backgroundColor: function (props) { return theme.palette[props.color || 'primary'].dark; },
728
+ },
729
+ backgroundColor: function (props) { return theme.palette[props.color || 'primary'].main; },
730
+ color: 'white',
731
+ },
732
+ },
733
+ }); });
734
+
735
+ var ToggleButton = forwardRef(function (props, ref) {
736
+ var children = props.children, muiProps = __rest(props, ["children"]);
737
+ var classes = useToggleButtonStyles(props);
738
+ return (React__default.createElement(MuiToggleButton, __assign({ ref: ref, classes: {
739
+ root: classes.root,
740
+ selected: classes.selected,
741
+ } }, muiProps), children));
742
+ });
743
+ ToggleButton.defaultProps = {
744
+ color: 'primary',
745
+ };
746
+ ToggleButton.displayName = 'ToggleButton';
747
+
748
+ var useToggleButtonGroupStyles = makeStyles$1(function (theme) { return ({
749
+ root: {
750
+ '&&': {
751
+ backgroundColor: theme.palette.grey[300],
752
+ },
753
+ },
754
+ }); });
755
+
756
+ var ToggleButtonGroup = forwardRef(function (props, ref) {
757
+ var children = props.children, _a = props.color, color = _a === void 0 ? 'primary' : _a, muiProps = __rest(props, ["children", "color"]);
758
+ var classes = useToggleButtonGroupStyles(props);
759
+ var childrenWithProps = React__default.Children.map(children, function (child) {
760
+ if (!React__default.isValidElement(child)) {
761
+ return null;
762
+ }
763
+ return React__default.cloneElement(child, { color: color });
764
+ });
765
+ return (React__default.createElement(MuiToggleButtonGroup, __assign({ ref: ref, classes: { root: classes.root } }, muiProps), childrenWithProps));
766
+ });
767
+ ToggleButtonGroup.displayName = 'ToggleButtonGroup';
768
+
769
+ var useTooltipStyles = makeStyles$1(function (_a) {
770
+ var typography = _a.typography;
771
+ return ({
772
+ tooltip: {
773
+ fontSize: typography.pxToRem(16),
774
+ },
775
+ });
776
+ });
777
+
778
+ var Tooltip = forwardRef(function (props, ref) {
779
+ var classes = useTooltipStyles(props);
780
+ return React__default.createElement(MuiTooltip, __assign({ ref: ref, classes: classes }, props));
781
+ });
782
+ Tooltip.displayName = 'Tooltip';
783
+
98
784
  var _path$4n, _path2$1p;
99
785
 
100
786
  function _extends$4E() { _extends$4E = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$4E.apply(this, arguments); }
@@ -151,6 +837,24 @@ function SvgInfo(props) {
151
837
  })));
152
838
  }
153
839
 
840
+ var _path$3K;
841
+
842
+ function _extends$3$() { _extends$3$ = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$3$.apply(this, arguments); }
843
+
844
+ function SvgMore(props) {
845
+ return /*#__PURE__*/React.createElement("svg", _extends$3$({
846
+ viewBox: "0 0 16 16",
847
+ strokeLinecap: "round",
848
+ strokeLinejoin: "round",
849
+ stroke: "currentColor",
850
+ width: "1em",
851
+ height: "1em",
852
+ fill: "none"
853
+ }, props), _path$3K || (_path$3K = /*#__PURE__*/React.createElement("path", {
854
+ d: "M8 8.667a.667.667 0 100-1.334.667.667 0 000 1.334zM8 4a.667.667 0 100-1.333A.667.667 0 008 4zm0 9.333A.667.667 0 108 12a.667.667 0 000 1.333z"
855
+ })));
856
+ }
857
+
154
858
  var _path$3a;
155
859
 
156
860
  function _extends$3q() { _extends$3q = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$3q.apply(this, arguments); }
@@ -187,6 +891,42 @@ function SvgWarning(props) {
187
891
  })));
188
892
  }
189
893
 
894
+ var _path$2X;
895
+
896
+ function _extends$3b() { _extends$3b = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$3b.apply(this, arguments); }
897
+
898
+ function SvgChevronDown(props) {
899
+ return /*#__PURE__*/React.createElement("svg", _extends$3b({
900
+ viewBox: "0 0 16 16",
901
+ strokeLinecap: "round",
902
+ strokeLinejoin: "round",
903
+ stroke: "currentColor",
904
+ width: "1em",
905
+ height: "1em",
906
+ fill: "none"
907
+ }, props), _path$2X || (_path$2X = /*#__PURE__*/React.createElement("path", {
908
+ d: "M4 6l4 4 4-4"
909
+ })));
910
+ }
911
+
912
+ var _path$2W;
913
+
914
+ function _extends$3a() { _extends$3a = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$3a.apply(this, arguments); }
915
+
916
+ function SvgChevronUp(props) {
917
+ return /*#__PURE__*/React.createElement("svg", _extends$3a({
918
+ viewBox: "0 0 16 16",
919
+ strokeLinecap: "round",
920
+ strokeLinejoin: "round",
921
+ stroke: "currentColor",
922
+ width: "1em",
923
+ height: "1em",
924
+ fill: "none"
925
+ }, props), _path$2W || (_path$2W = /*#__PURE__*/React.createElement("path", {
926
+ d: "M12 10L8 6l-4 4"
927
+ })));
928
+ }
929
+
190
930
  var _path$S;
191
931
 
192
932
  function _extends$10() { _extends$10 = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$10.apply(this, arguments); }
@@ -205,7 +945,7 @@ function SvgCircle(props) {
205
945
  })));
206
946
  }
207
947
 
208
- var useAlertStyles = makeStyles(function (theme) { return ({
948
+ var useAlertStyles = makeStyles$1(function (theme) { return ({
209
949
  root: {
210
950
  alignItems: 'center',
211
951
  width: function (_a) {
@@ -226,14 +966,14 @@ var severityIcons$1 = {
226
966
  success: SvgCheckCircle,
227
967
  };
228
968
  var Alert = forwardRef(function (props, ref) {
229
- var children = props.children, link = props.link, _a = props.severity, severity = _a === void 0 ? 'error' : _a, _b = props.variant, variant = _b === void 0 ? 'outlined' : _b, onClose = props.onClose, muiProps = __rest(props, ["children", "link", "severity", "variant", "onClose"]);
969
+ var children = props.children, link = props.link, _a = props.severity, severity = _a === void 0 ? 'error' : _a, _b = props.variant, variant = _b === void 0 ? 'outlined' : _b, onClose = props.onClose, muiProps = __rest$1(props, ["children", "link", "severity", "variant", "onClose"]);
230
970
  var classes = useAlertStyles(props);
231
971
  var validLink = link && link.href && link.text && { href: link.href, children: link.text };
232
972
  var Action = (React__default.createElement(React__default.Fragment, null,
233
- validLink && React__default.createElement(Link, __assign({}, validLink)),
973
+ validLink && React__default.createElement(Link, __assign$1({}, validLink)),
234
974
  React__default.createElement(IconButton, { onClick: onClose },
235
975
  React__default.createElement(Icon, { icon: SvgX }))));
236
- return (React__default.createElement(Alert$1, __assign({ ref: ref, classes: classes, icon: React__default.createElement(Icon, { icon: severityIcons$1[severity] }), action: Action, variant: variant, severity: severity }, muiProps), children));
976
+ return (React__default.createElement(CommonAlert, __assign$1({ ref: ref, classes: classes, icon: React__default.createElement(Icon, { icon: severityIcons$1[severity] }), action: Action, variant: variant, severity: severity }, muiProps), children));
237
977
  });
238
978
  Alert.displayName = 'Alert';
239
979
 
@@ -307,7 +1047,7 @@ var buttonTypography = {
307
1047
  fontSize: '0.875rem',
308
1048
  lineHeight: '1.25rem',
309
1049
  };
310
- var useButtonStyles = makeStyles$1(function (_a) {
1050
+ var useButtonStyles = makeStyles(function (_a) {
311
1051
  var palette = _a.palette, spacing = _a.spacing;
312
1052
  return ({
313
1053
  root: function (props) { return ({
@@ -342,7 +1082,7 @@ var useButtonStyles = makeStyles$1(function (_a) {
342
1082
  text: {
343
1083
  padding: spacing(1, 2),
344
1084
  },
345
- label: __assign(__assign({}, buttonTypography), { textTransform: function (props) { return props.textTransform; } }),
1085
+ label: __assign$1(__assign$1({}, buttonTypography), { textTransform: function (props) { return props.textTransform; } }),
346
1086
  sizeSmall: {
347
1087
  padding: spacing(0.5, 2),
348
1088
  },
@@ -393,11 +1133,11 @@ var deriveButtonProps = function (buttonProps) {
393
1133
  };
394
1134
 
395
1135
  var Button = forwardRef(function (props, ref) {
396
- var children = props.children; props.variant; var classesOverride = props.classes, commonProps = __rest(props, ["children", "variant", "classes"]);
1136
+ var children = props.children; props.variant; var classesOverride = props.classes, commonProps = __rest$1(props, ["children", "variant", "classes"]);
397
1137
  var classes = useButtonStyles(props);
398
1138
  var derivedProps = deriveButtonProps(props);
399
- var mergedProps = __assign(__assign({}, derivedProps), commonProps);
400
- return (React__default.createElement(Button$1, __assign({ ref: ref, classes: __assign(__assign({}, classes), classesOverride), disableElevation: true }, mergedProps), children));
1139
+ var mergedProps = __assign$1(__assign$1({}, derivedProps), commonProps);
1140
+ return (React__default.createElement(Button$1, __assign$1({ ref: ref, classes: __assign$1(__assign$1({}, classes), classesOverride), disableElevation: true }, mergedProps), children));
401
1141
  });
402
1142
  Button.defaultProps = {
403
1143
  textTransform: 'uppercase',
@@ -405,7 +1145,7 @@ Button.defaultProps = {
405
1145
  };
406
1146
  Button.displayName = 'Button';
407
1147
 
408
- var useAlertDialogStyles = makeStyles(function (theme) { return ({
1148
+ var useAlertDialogStyles = makeStyles$1(function (theme) { return ({
409
1149
  cancelButton: {
410
1150
  color: theme.palette.grey[700],
411
1151
  },
@@ -438,9 +1178,9 @@ var severityIcons = {
438
1178
  success: SvgCheckCircle,
439
1179
  };
440
1180
  var AlertDialog = forwardRef(function (props, ref) {
441
- var children = props.children, labelId = props.labelId, descriptionId = props.descriptionId, _a = props.severity, severity = _a === void 0 ? 'info' : _a, _b = props.proceedButtonText, proceedButtonText = _b === void 0 ? 'proceed' : _b, onClose = props.onClose, onCancel = props.onCancel, onProceed = props.onProceed, DialogProps = __rest(props, ["children", "labelId", "descriptionId", "severity", "proceedButtonText", "onClose", "onCancel", "onProceed"]);
1181
+ var children = props.children, labelId = props.labelId, descriptionId = props.descriptionId, _a = props.severity, severity = _a === void 0 ? 'info' : _a, _b = props.proceedButtonText, proceedButtonText = _b === void 0 ? 'proceed' : _b, onClose = props.onClose, onCancel = props.onCancel, onProceed = props.onProceed, DialogProps = __rest$1(props, ["children", "labelId", "descriptionId", "severity", "proceedButtonText", "onClose", "onCancel", "onProceed"]);
442
1182
  var classes = useAlertDialogStyles(props);
443
- return (React__default.createElement(Dialog, __assign({ ref: ref, classes: { paper: classes.root } }, DialogProps),
1183
+ return (React__default.createElement(Dialog, __assign$1({ ref: ref, classes: { paper: classes.root } }, DialogProps),
444
1184
  React__default.createElement(Card, { classes: { root: classes.card }, role: "alertdialog", "aria-modal": "true", "aria-labelledby": labelId, "aria-describedby": descriptionId },
445
1185
  React__default.createElement(IconButton, { className: classes.cancelIcon, onClick: onClose },
446
1186
  React__default.createElement(Icon, { icon: SvgX })),
@@ -455,15 +1195,15 @@ var AlertDialog = forwardRef(function (props, ref) {
455
1195
  AlertDialog.displayName = 'AlertDialog';
456
1196
 
457
1197
  var AlertDialogHeader = function (props) {
458
- var children = props.children, muiProps = __rest(props, ["children"]);
459
- return (React__default.createElement(Box, __assign({ display: "flex", height: 40, alignItems: "center" }, muiProps),
1198
+ var children = props.children, muiProps = __rest$1(props, ["children"]);
1199
+ return (React__default.createElement(Box, __assign$1({ display: "flex", height: 40, alignItems: "center" }, muiProps),
460
1200
  React__default.createElement(Typography, { variant: "h6" }, children)));
461
1201
  };
462
1202
  AlertDialogHeader.displayName = 'AlertDialogHeader';
463
1203
 
464
1204
  var AlertTitle = function (props) {
465
- var children = props.children, muiProps = __rest(props, ["children"]);
466
- return (React__default.createElement(MuiAlertTitle, __assign({}, muiProps),
1205
+ var children = props.children, muiProps = __rest$1(props, ["children"]);
1206
+ return (React__default.createElement(MuiAlertTitle, __assign$1({}, muiProps),
467
1207
  React__default.createElement(Typography, { variant: "h6" },
468
1208
  " ",
469
1209
  children,
@@ -478,7 +1218,7 @@ var getBorderColor = function (palette, variant) {
478
1218
  }
479
1219
  return borderColor;
480
1220
  };
481
- var useButtonGroupStyles = makeStyles(function (theme) { return ({
1221
+ var useButtonGroupStyles = makeStyles$1(function (theme) { return ({
482
1222
  root: {
483
1223
  boxShadow: 'none',
484
1224
  },
@@ -495,7 +1235,7 @@ var useButtonGroupStyles = makeStyles(function (theme) { return ({
495
1235
  }); });
496
1236
 
497
1237
  var ButtonGroup = forwardRef(function (props, ref) {
498
- var children = props.children, _a = props.variant, variant = _a === void 0 ? 'primary' : _a, muiProps = __rest(props, ["children", "variant"]);
1238
+ var children = props.children, _a = props.variant, variant = _a === void 0 ? 'primary' : _a, muiProps = __rest$1(props, ["children", "variant"]);
499
1239
  var classes = useButtonGroupStyles(props);
500
1240
  var derivedProps = deriveButtonProps({ variant: variant });
501
1241
  var spacing = useTheme().spacing;
@@ -507,13 +1247,13 @@ var ButtonGroup = forwardRef(function (props, ref) {
507
1247
  if (!React__default.isValidElement(child)) {
508
1248
  return null;
509
1249
  }
510
- return React__default.cloneElement(child, __assign(__assign({ variant: variant }, (isFirst && firstStyles)), (isLast && lastStyles)));
1250
+ return React__default.cloneElement(child, __assign$1(__assign$1({ variant: variant }, (isFirst && firstStyles)), (isLast && lastStyles)));
511
1251
  });
512
- return (React__default.createElement(ButtonGroup$1, __assign({ ref: ref, classes: classes }, derivedProps, muiProps), childrenWithProps));
1252
+ return (React__default.createElement(CommonButtonGroup, __assign$1({ ref: ref, classes: classes }, derivedProps, muiProps), childrenWithProps));
513
1253
  });
514
1254
  ButtonGroup.displayName = 'ButtonGroup';
515
1255
 
516
- var useFeatureIntroStyles = makeStyles(function (_a) {
1256
+ var useFeatureIntroStyles = makeStyles$1(function (_a) {
517
1257
  var spacing = _a.spacing;
518
1258
  return ({
519
1259
  root: {
@@ -531,8 +1271,8 @@ var useFeatureIntroStyles = makeStyles(function (_a) {
531
1271
 
532
1272
  var FeatureIntro = function (props) {
533
1273
  var title = props.title, body = props.body, primaryAction = props.primaryAction, secondaryAction = props.secondaryAction, image = props.image;
534
- var primaryActionLabel = primaryAction.label, primaryActionProps = __rest(primaryAction, ["label"]);
535
- var _a = secondaryAction || {}, secondaryActionLabel = _a.label, secondaryActionProps = __rest(_a, ["label"]);
1274
+ var primaryActionLabel = primaryAction.label, primaryActionProps = __rest$1(primaryAction, ["label"]);
1275
+ var _a = secondaryAction || {}, secondaryActionLabel = _a.label, secondaryActionProps = __rest$1(_a, ["label"]);
536
1276
  var classes = useFeatureIntroStyles(props);
537
1277
  var validImage = (image === null || image === void 0 ? void 0 : image.src) && (image === null || image === void 0 ? void 0 : image.alt);
538
1278
  return (
@@ -544,14 +1284,14 @@ var FeatureIntro = function (props) {
544
1284
  React__default.createElement(Typography, { align: "inherit", variant: "h4" }, title)),
545
1285
  React__default.createElement(Box, { textAlign: { xs: 'center', sm: 'start' }, marginBottom: 6 }, body),
546
1286
  React__default.createElement(Box, { className: classes.actions, display: "flex", flexDirection: "column", width: "fit-content" },
547
- primaryAction && React__default.createElement(Button, __assign({}, primaryActionProps), primaryActionLabel),
548
- secondaryAction && (React__default.createElement(Button, __assign({ variant: "tertiary" }, secondaryActionProps), secondaryActionLabel)))),
1287
+ primaryAction && React__default.createElement(Button, __assign$1({}, primaryActionProps), primaryActionLabel),
1288
+ secondaryAction && (React__default.createElement(Button, __assign$1({ variant: "tertiary" }, secondaryActionProps), secondaryActionLabel)))),
549
1289
  React__default.createElement(Box, { display: "flex", width: { xs: '100%', sm: '50%' }, alignItems: "center", justifyContent: "center" },
550
1290
  React__default.createElement(Box, { display: "flex", maxWidth: 450, maxHeight: 450 }, validImage && React__default.createElement("img", { src: image.src, alt: image.alt, className: classes.image })))));
551
1291
  };
552
1292
  FeatureIntro.displayName = 'FeatureIntro';
553
1293
 
554
- var useFullScreenStepperActionsStyles = makeStyles(function (theme) { return ({
1294
+ var useFullScreenStepperActionsStyles = makeStyles$1(function (theme) { return ({
555
1295
  root: {
556
1296
  position: 'sticky',
557
1297
  background: 'white',
@@ -578,7 +1318,7 @@ var useFullScreenStepperActionsStyles = makeStyles(function (theme) { return ({
578
1318
 
579
1319
  var augmentButtonProps = function (internalProps, externalProps, setStepCursor, stepCursor, incrementor) {
580
1320
  if (externalProps === void 0) { externalProps = {}; }
581
- var mergedProps = __assign(__assign({}, internalProps), externalProps);
1321
+ var mergedProps = __assign$1(__assign$1({}, internalProps), externalProps);
582
1322
  mergedProps.onClick = function () { return __awaiter(void 0, void 0, void 0, function () {
583
1323
  return __generator(this, function (_a) {
584
1324
  switch (_a.label) {
@@ -602,10 +1342,10 @@ var augmentButtonProps = function (internalProps, externalProps, setStepCursor,
602
1342
  var StepperActionsPreviousButton = function (props) {
603
1343
  var previousButtonText = props.previousButtonText, stepCursor = props.stepCursor, handlePreviousClick = props.handlePreviousClick, previousButtonProps = props.previousButtonProps, setStepCursor = props.setStepCursor, displayPreviousButton = props.displayPreviousButton;
604
1344
  var augmentedPreviousButtonProps = augmentButtonProps({ onClick: handlePreviousClick }, previousButtonProps, setStepCursor, stepCursor, -1);
605
- return displayPreviousButton ? (React__default.createElement(Button, __assign({ variant: "tertiary", disabled: stepCursor === 1 }, augmentedPreviousButtonProps), previousButtonText || 'previous')) : null;
1345
+ return displayPreviousButton ? (React__default.createElement(Button, __assign$1({ variant: "tertiary", disabled: stepCursor === 1 }, augmentedPreviousButtonProps), previousButtonText || 'previous')) : null;
606
1346
  };
607
1347
 
608
- var useStyles = makeStyles({
1348
+ var useStyles = makeStyles$1({
609
1349
  root: {
610
1350
  fontStyle: 'italic',
611
1351
  },
@@ -623,13 +1363,13 @@ var StepperActionsNextButton = function (props) {
623
1363
  var finishText = finishButtonText || 'finish';
624
1364
  var nextText = nextButtonText || 'next';
625
1365
  var buttonText = finalStep ? finishText : nextText;
626
- return React__default.createElement(Button, __assign({}, augmentedNextButtonProps), buttonText);
1366
+ return React__default.createElement(Button, __assign$1({}, augmentedNextButtonProps), buttonText);
627
1367
  };
628
1368
 
629
1369
  var StepperActionsCancelButton = function (props) {
630
1370
  var setStepCursor = props.setStepCursor, stepCursor = props.stepCursor, cancelButtonText = props.cancelButtonText, cancelButtonProps = props.cancelButtonProps, handleCancelClick = props.handleCancelClick, displayCancelButton = props.displayCancelButton;
631
1371
  var augmentedCancelButtonProps = augmentButtonProps({ onClick: handleCancelClick }, cancelButtonProps, setStepCursor, stepCursor, 0);
632
- return displayCancelButton ? (React__default.createElement(Button, __assign({ variant: "ghost" }, augmentedCancelButtonProps), cancelButtonText || 'cancel')) : null;
1372
+ return displayCancelButton ? (React__default.createElement(Button, __assign$1({ variant: "ghost" }, augmentedCancelButtonProps), cancelButtonText || 'cancel')) : null;
633
1373
  };
634
1374
 
635
1375
  var FullScreenStepperActions = function (props) {
@@ -641,7 +1381,7 @@ var FullScreenStepperActions = function (props) {
641
1381
  React__default.createElement(StepperActionsStatusText, { statusText: statusText })),
642
1382
  React__default.createElement(Box, { className: classes.inlineEndActions },
643
1383
  actions &&
644
- actions.map(function (action, i) { return (React__default.createElement(Button, __assign({ key: "custom-action-" + stepCursor + "-" + i, variant: "ghost", onClick: action.onClick }, action.props), action.text)); }),
1384
+ actions.map(function (action, i) { return (React__default.createElement(Button, __assign$1({ key: "custom-action-" + stepCursor + "-" + i, variant: "ghost", onClick: action.onClick }, action.props), action.text)); }),
645
1385
  React__default.createElement(StepperActionsCancelButton, { setStepCursor: setStepCursor, stepCursor: stepCursor, cancelButtonText: cancelButtonText, cancelButtonProps: cancelButtonProps, handleCancelClick: handleCancelClick, displayCancelButton: displayCancelButton }),
646
1386
  React__default.createElement(StepperActionsNextButton, { handleNextClick: handleNextClick, nextButtonProps: nextButtonProps, setStepCursor: setStepCursor, stepCursor: stepCursor, stepCount: stepCount, finishButtonText: finishButtonText, nextButtonText: nextButtonText }))));
647
1387
  };
@@ -656,7 +1396,7 @@ var getBorderRadius = function (theme, props) {
656
1396
  return theme.spacing(0.5);
657
1397
  }
658
1398
  };
659
- var useFullScreenStepperProgressStyles = makeStyles(function (theme) { return ({
1399
+ var useFullScreenStepperProgressStyles = makeStyles$1(function (theme) { return ({
660
1400
  progress: {
661
1401
  width: function (props) { return (props.stepCursor / props.stepCount) * 100 + "%"; },
662
1402
  transition: 'all 500ms',
@@ -684,7 +1424,7 @@ var FullScreenStepperProgress = function (props) {
684
1424
  React__default.createElement(Box, { className: classes.progress })));
685
1425
  };
686
1426
 
687
- var useFullScreenStepperHeaderStyles = makeStyles(function (_a) {
1427
+ var useFullScreenStepperHeaderStyles = makeStyles$1(function (_a) {
688
1428
  var spacing = _a.spacing;
689
1429
  return ({
690
1430
  closeButton: {
@@ -728,14 +1468,14 @@ var FullScreenStepperContext = createContext({});
728
1468
  * - loading?
729
1469
  */
730
1470
  var FullScreenStepper = function (props) {
731
- var children = props.children, _a = props.context, context = _a === void 0 ? {} : _a, _b = props.defaultStepCursor, defaultStepCursor = _b === void 0 ? 1 : _b, _c = props.displayCancelButton, displayCancelButton = _c === void 0 ? true : _c, _d = props.displayPreviousButton, displayPreviousButton = _d === void 0 ? true : _d, _e = props.resetStepCursorOnClose, resetStepCursorOnClose = _e === void 0 ? true : _e, steps = props.steps, onClose = props.onClose, onFinish = props.onFinish, onNext = props.onNext, onCancel = props.onCancel, onPrevious = props.onPrevious, DialogProps = __rest(props, ["children", "context", "defaultStepCursor", "displayCancelButton", "displayPreviousButton", "resetStepCursorOnClose", "steps", "onClose", "onFinish", "onNext", "onCancel", "onPrevious"]);
1471
+ var children = props.children, _a = props.context, context = _a === void 0 ? {} : _a, _b = props.defaultStepCursor, defaultStepCursor = _b === void 0 ? 1 : _b, _c = props.displayCancelButton, displayCancelButton = _c === void 0 ? true : _c, _d = props.displayPreviousButton, displayPreviousButton = _d === void 0 ? true : _d, _e = props.resetStepCursorOnClose, resetStepCursorOnClose = _e === void 0 ? true : _e, steps = props.steps, onClose = props.onClose, onFinish = props.onFinish, onNext = props.onNext, onCancel = props.onCancel, onPrevious = props.onPrevious, DialogProps = __rest$1(props, ["children", "context", "defaultStepCursor", "displayCancelButton", "displayPreviousButton", "resetStepCursorOnClose", "steps", "onClose", "onFinish", "onNext", "onCancel", "onPrevious"]);
732
1472
  var _f = useState(defaultStepCursor), stepCursor = _f[0], setStepCursor = _f[1];
733
1473
  var stepCount = steps.length;
734
1474
  var stepIndex = stepCursor - 1;
735
1475
  var step = steps[stepIndex];
736
1476
  var isFinalStep = stepCursor / stepCount === 1;
737
1477
  var callbackArgs = { setStepCursor: setStepCursor, step: step, stepCount: stepCount, stepIndex: stepIndex, steps: steps };
738
- var mergedContext = __assign(__assign({}, context), callbackArgs);
1478
+ var mergedContext = __assign$1(__assign$1({}, context), callbackArgs);
739
1479
  var resetStepCursor = function () { return setTimeout(function () { return setStepCursor(1); }, 600); };
740
1480
  var handleClose = function () {
741
1481
  if (typeof onClose === 'function') {
@@ -803,21 +1543,21 @@ var FullScreenStepper = function (props) {
803
1543
  });
804
1544
  }); };
805
1545
  var content = React__default.Children.toArray(children).find(function (child) { return React__default.isValidElement(child) && child.props.name === step.name; });
806
- return (React__default.createElement(Dialog$1, __assign({ fullScreen: true }, DialogProps),
1546
+ return (React__default.createElement(Dialog, __assign$1({ fullScreen: true }, DialogProps),
807
1547
  React__default.createElement(FullScreenStepperContext.Provider, { value: mergedContext },
808
1548
  React__default.createElement(Box$1, { display: "flex", flexDirection: "column", flexGrow: 1 },
809
1549
  React__default.createElement(FullScreenStepperHeader, { stepCount: stepCount, stepCursor: stepCursor, onClose: handleClose, step: step }),
810
1550
  React__default.createElement(Box$1, { display: "flex", mx: 6, flexGrow: 1, alignItems: "center", flexDirection: "column" }, content),
811
- React__default.createElement(FullScreenStepperActions, __assign({}, step.actionBar, { displayCancelButton: displayCancelButton, displayPreviousButton: displayPreviousButton, stepCount: stepCount, stepCursor: stepCursor, setStepCursor: setStepCursor, handleCancelClick: handleCancelClick, handleNextClick: handleNextClick, handlePreviousClick: handlePreviousClick }))))));
1551
+ React__default.createElement(FullScreenStepperActions, __assign$1({}, step.actionBar, { displayCancelButton: displayCancelButton, displayPreviousButton: displayPreviousButton, stepCount: stepCount, stepCursor: stepCursor, setStepCursor: setStepCursor, handleCancelClick: handleCancelClick, handleNextClick: handleNextClick, handlePreviousClick: handlePreviousClick }))))));
812
1552
  };
813
1553
  FullScreenStepper.displayName = 'FullScreenStepper';
814
1554
 
815
1555
  var FullScreenStepperContent = function (props) {
816
- props.name; var boxProps = __rest(props, ["name"]);
817
- return (React__default.createElement(Box, __assign({ py: 8 }, boxProps), props.children));
1556
+ props.name; var boxProps = __rest$1(props, ["name"]);
1557
+ return (React__default.createElement(Box, __assign$1({ py: 8 }, boxProps), props.children));
818
1558
  };
819
1559
 
820
- var useSelectableCardStyles = makeStyles(function (theme) {
1560
+ var useSelectableCardStyles = makeStyles$1(function (theme) {
821
1561
  var _a = theme.palette, info = _a.info, grey = _a.grey, getContrastText = _a.getContrastText, spacing = theme.spacing;
822
1562
  var selectedBackgroundColor = lighten(theme.palette.info.light, 0.9);
823
1563
  var backgroundColor = theme.palette.surface.light;
@@ -861,20 +1601,215 @@ var useSelectableCardStyles = makeStyles(function (theme) {
861
1601
  });
862
1602
 
863
1603
  var SelectableCard = function (props) {
864
- var children = props.children, selectedProp = props.selected, _a = props.selection, selection = _a === void 0 ? [] : _a, onClick = props.onClick, value = props.value, labelId = props.labelId, muiProps = __rest(props, ["children", "selected", "selection", "onClick", "value", "labelId"]);
1604
+ var children = props.children, selectedProp = props.selected, _a = props.selection, selection = _a === void 0 ? [] : _a, onClick = props.onClick, value = props.value, labelId = props.labelId, muiProps = __rest$1(props, ["children", "selected", "selection", "onClick", "value", "labelId"]);
865
1605
  var selected = typeof selectedProp === 'boolean' ? selectedProp : selection.includes(value);
866
- var classes = useSelectableCardStyles(__assign(__assign({}, props), { selected: selected }));
1606
+ var classes = useSelectableCardStyles(__assign$1(__assign$1({}, props), { selected: selected }));
867
1607
  var handleClick = function () {
868
1608
  onClick(value);
869
1609
  };
870
- return (React__default.createElement(Card, __assign({ classes: { root: classes.root } }, muiProps),
1610
+ return (React__default.createElement(Card, __assign$1({ classes: { root: classes.root } }, muiProps),
871
1611
  React__default.createElement(CardActionArea, { onClick: handleClick, classes: { focusHighlight: classes.focusHighlight }, role: "checkbox", "aria-checked": selected, "aria-labelledby": labelId },
872
1612
  React__default.createElement(Icon, { className: classes.icon, icon: selected ? SvgCheckCircle : SvgCircle, size: "medium" }),
873
1613
  React__default.createElement(CardContent, { classes: { root: classes.cardContent } }, children))));
874
1614
  };
875
1615
  SelectableCard.displayName = 'SelectableCard';
876
1616
 
877
- var useToastStyles = makeStyles(function (theme) { return ({
1617
+ var TableFooter = function (props) {
1618
+ return (React__default.createElement(Box, { display: "flex", justifyContent: "center", alignItems: "end", paddingTop: 3, paddingBottom: 4, flexGrow: 1 }, props.children));
1619
+ };
1620
+
1621
+ var TableHeader = function (props) {
1622
+ var children = props.children, restProps = __rest$1(props, ["children"]);
1623
+ return React__default.createElement("thead", __assign$1({}, restProps), children);
1624
+ };
1625
+
1626
+ var getWidth = function (props) {
1627
+ var isActionColumn = props.column.isActionColumn, fullWidth = props.tableProps.fullWidth;
1628
+ var width;
1629
+ if (fullWidth && isActionColumn) {
1630
+ width = '0.0000000001%';
1631
+ }
1632
+ if (fullWidth && !isActionColumn) {
1633
+ width = '1%';
1634
+ }
1635
+ if (!fullWidth && isActionColumn) {
1636
+ width = 72;
1637
+ }
1638
+ if (!fullWidth && !isActionColumn) {
1639
+ width = undefined;
1640
+ }
1641
+ return width;
1642
+ };
1643
+ var useTableHeaderCellStyles = makeStyles(function (theme) { return ({
1644
+ root: function (props) {
1645
+ var width = getWidth(props);
1646
+ return {
1647
+ borderBottomStyle: 'solid',
1648
+ borderBottomWidth: 2,
1649
+ borderBottomColor: theme.palette.grey[100],
1650
+ padding: theme.spacing(2),
1651
+ textAlign: 'left',
1652
+ fontWeight: 500,
1653
+ width: width,
1654
+ };
1655
+ },
1656
+ }); });
1657
+
1658
+ var TableHeaderCell = function (props) {
1659
+ var children = props.children, column = props.column; props.tableProps; var restProps = __rest$1(props, ["children", "column", "tableProps"]);
1660
+ var root = useTableHeaderCellStyles(props).root;
1661
+ var _a = useTheme$1(), palette = _a.palette, spacing = _a.spacing;
1662
+ //@ts-expect-error @types/react-table issue
1663
+ var canSort = column.canSort, isSorted = column.isSorted, isSortedDesc = column.isSortedDesc, isActionColumn = column.isActionColumn;
1664
+ var showSortIndicator = canSort && !isActionColumn;
1665
+ return (React__default.createElement("th", __assign$1({ className: root }, restProps),
1666
+ React__default.createElement(Box, { display: "flex", alignItems: "center", gridGap: spacing(1) },
1667
+ children,
1668
+ showSortIndicator && (React__default.createElement(Icon, { icon: isSortedDesc ? SvgChevronDown : SvgChevronUp, color: isSorted ? palette.text.primary : palette.text.disabled, size: "large" })))));
1669
+ };
1670
+
1671
+ var TableHeaderRow = function (props) {
1672
+ var children = props.children, restProps = __rest$1(props, ["children"]);
1673
+ return React__default.createElement("tr", __assign$1({}, restProps), children);
1674
+ };
1675
+
1676
+ var useTableRowStyles = makeStyles(function (theme) { return ({
1677
+ root: function () { return ({
1678
+ '&:nth-child(even)': {
1679
+ backgroundColor: theme.palette.grey[100],
1680
+ },
1681
+ }); },
1682
+ }); });
1683
+
1684
+ var TableRow = function (props) {
1685
+ var children = props.children, restProps = __rest$1(props, ["children"]);
1686
+ var root = useTableRowStyles(props).root;
1687
+ return (React__default.createElement("tr", __assign$1({ className: root }, restProps), children));
1688
+ };
1689
+
1690
+ var TableBody = function (props) {
1691
+ var children = props.children, restProps = __rest$1(props, ["children"]);
1692
+ return React__default.createElement("tbody", __assign$1({}, restProps), children);
1693
+ };
1694
+
1695
+ var useTableCellStyles = makeStyles(function (theme) { return ({
1696
+ root: function () { return ({
1697
+ padding: theme.spacing(2),
1698
+ }); },
1699
+ }); });
1700
+
1701
+ var TableCell = function (props) {
1702
+ var children = props.children, restProps = __rest$1(props, ["children"]);
1703
+ var root = useTableCellStyles(props).root;
1704
+ return (React__default.createElement("td", __assign$1({ className: root }, restProps), children));
1705
+ };
1706
+
1707
+ var useTableStyles = makeStyles(function (_a) {
1708
+ var typography = _a.typography;
1709
+ return ({
1710
+ root: function (_a) {
1711
+ var fullWidth = _a.fullWidth;
1712
+ return ({
1713
+ display: fullWidth ? 'flex' : 'inline-flex',
1714
+ flexDirection: 'column',
1715
+ });
1716
+ },
1717
+ table: function (_a) {
1718
+ var fullWidth = _a.fullWidth;
1719
+ return (__assign$1(__assign$1({ borderCollapse: 'collapse' }, (fullWidth && { width: '100%' })), typography.body1));
1720
+ },
1721
+ tableWrap: function () { return ({
1722
+ maxWidth: '100%',
1723
+ overflowX: 'auto',
1724
+ overflowY: 'hidden',
1725
+ }); },
1726
+ });
1727
+ });
1728
+
1729
+ var TableActionsCell = function (props) {
1730
+ var _a = props.actions, primary = _a.primary, secondary = _a.secondary, intermediate = __rest$1(_a, ["primary", "secondary"]);
1731
+ var tertiary = intermediate.tertiary, restActions = __rest$1(intermediate, ["tertiary"]);
1732
+ var overflow = Object.keys(props.actions).length > 3;
1733
+ var _b = React__default.useState(null), anchorEl = _b[0], setAnchorEl = _b[1];
1734
+ var openMenu = function (event) {
1735
+ setAnchorEl(event.currentTarget);
1736
+ };
1737
+ var closeMenu = function () {
1738
+ setAnchorEl(null);
1739
+ };
1740
+ var handleItemClick = function (action) {
1741
+ action(props.cell);
1742
+ closeMenu();
1743
+ };
1744
+ return (React__default.createElement(Box, { display: "flex" },
1745
+ primary && primary.icon && (React__default.createElement(IconButton, { size: "small", onClick: function () { return primary.action(props.cell); } },
1746
+ React__default.createElement(Icon, { icon: primary.icon }))),
1747
+ secondary && secondary.icon && (React__default.createElement(IconButton, { size: "small", onClick: function () { return secondary.action(props.cell); } },
1748
+ React__default.createElement(Icon, { icon: secondary.icon }))),
1749
+ !overflow && tertiary && tertiary.icon && (React__default.createElement(IconButton, { size: "small", onClick: function () { return tertiary.action(props.cell); } },
1750
+ React__default.createElement(Icon, { icon: tertiary.icon }))),
1751
+ overflow && restActions && (React__default.createElement(React__default.Fragment, null,
1752
+ React__default.createElement(IconButton, { size: "small", onClick: openMenu },
1753
+ React__default.createElement(Icon, { icon: SvgMore })),
1754
+ React__default.createElement(Menu, { anchorEl: anchorEl, open: Boolean(anchorEl), onClose: closeMenu }, Object.values(__assign$1({ tertiary: tertiary }, restActions))
1755
+ .filter(function (value) { return value; })
1756
+ .map(function (_a, i) {
1757
+ var label = _a.label, action = _a.action;
1758
+ return (React__default.createElement(MenuItem, { key: i, onClick: function () { return handleItemClick(action); } }, label));
1759
+ }))))));
1760
+ };
1761
+
1762
+ var makeColumns = function (config) {
1763
+ var columns = config.columns, actions = config.actions, actionColumnId = config.actionColumnId;
1764
+ var actionColumn;
1765
+ var memoizedColumns = __spreadArray([], columns);
1766
+ if (actions) {
1767
+ var CellComponent = function (props) { return React__default.createElement(TableActionsCell, __assign$1({}, props, { actions: actions })); };
1768
+ actionColumn = {
1769
+ id: actionColumnId,
1770
+ Header: function () { return null; },
1771
+ Cell: CellComponent,
1772
+ };
1773
+ memoizedColumns = __spreadArray(__spreadArray([], columns), [actionColumn]);
1774
+ }
1775
+ return memoizedColumns;
1776
+ };
1777
+
1778
+ /* eslint-disable react/jsx-key */
1779
+ var Table = function (props) {
1780
+ var actionColumnId = 'table-actions-column';
1781
+ var rawColumns = props.columns, data = props.data, actions = props.actions, sortable = props.sortable, emptyMessage = props.emptyMessage, EmptyImage = props.EmptyImage, isLoading = props.loading, enableMinHeight = props.enableMinHeight;
1782
+ var classes = useTableStyles(props);
1783
+ var columns = useMemo(function () { return makeColumns({ columns: rawColumns, actions: actions, actionColumnId: actionColumnId }); }, [rawColumns, actions]);
1784
+ var instance = useTable({ columns: columns, data: data, disableSortBy: !sortable }, useSortBy, usePagination);
1785
+ var getTableProps = instance.getTableProps, getTableBodyProps = instance.getTableBodyProps, headerGroups = instance.headerGroups, page = instance.page, prepareRow = instance.prepareRow, pageCount = instance.pageCount, gotoPage = instance.gotoPage, state = instance.state, rows = instance.rows;
1786
+ var isPaginated = pageCount > 1;
1787
+ var isEmpty = rows.length === 0;
1788
+ var handlePagination = function (_e, pageNumber) {
1789
+ gotoPage(pageNumber - 1);
1790
+ };
1791
+ return (React__default.createElement(Box, { className: classes.root, minHeight: (isLoading || isEmpty) && enableMinHeight ? 618 : 'unset' },
1792
+ React__default.createElement(Box, { className: classes.tableWrap, minHeight: page.length > 0 && !isLoading && enableMinHeight ? 618 : 'unset' },
1793
+ React__default.createElement("table", __assign$1({ className: classes.table }, getTableProps()),
1794
+ React__default.createElement(TableHeader, null, headerGroups.map(function (headerGroup) { return (React__default.createElement(TableHeaderRow, __assign$1({}, headerGroup.getHeaderGroupProps()), headerGroup.headers.map(function (column) { return (React__default.createElement(TableHeaderCell, __assign$1({}, column.getHeaderProps(column.getSortByToggleProps()), { column: __assign$1(__assign$1({}, column), { isActionColumn: column.id === actionColumnId }), tableProps: props }), column.render('Header'))); }))); })),
1795
+ !isEmpty && !isLoading && (React__default.createElement(TableBody, __assign$1({}, getTableBodyProps()), page.map(function (row) {
1796
+ prepareRow(row);
1797
+ return (React__default.createElement(TableRow, __assign$1({}, row.getRowProps()), row.cells.map(function (cell) { return (React__default.createElement(TableCell, __assign$1({}, cell.getCellProps()), cell.render('Cell'))); })));
1798
+ }))))),
1799
+ isEmpty && (React__default.createElement(Box, { display: "flex", flexDirection: "column", justifyContent: "center", alignItems: "center", p: 2, flexGrow: 1 },
1800
+ EmptyImage && EmptyImage(),
1801
+ React__default.createElement(Typography, null, emptyMessage))),
1802
+ isLoading && (React__default.createElement(Box, { display: "flex", flexDirection: "column", justifyContent: "center", alignItems: "center", p: 2, flexGrow: 1 },
1803
+ React__default.createElement(CircularProgress, { size: 80, color: "inherit" }))),
1804
+ isPaginated && !isLoading && (React__default.createElement(TableFooter, null,
1805
+ React__default.createElement(Pagination, { count: pageCount, page: state.pageIndex + 1, onChange: handlePagination })))));
1806
+ };
1807
+ Table.defaultProps = {
1808
+ emptyMessage: 'No results.',
1809
+ enableMinHeight: true,
1810
+ };
1811
+
1812
+ var useToastStyles = makeStyles$1(function (theme) { return ({
878
1813
  root: {
879
1814
  boxSizing: 'border-box',
880
1815
  padding: theme.spacing(0, 1.5),
@@ -887,10 +1822,10 @@ var useToastStyles = makeStyles(function (theme) { return ({
887
1822
  }); });
888
1823
 
889
1824
  var Toast = function (props) {
890
- var children = props.children, AlertProps = props.AlertProps, severity = props.severity, muiProps = __rest(props, ["children", "AlertProps", "severity"]);
1825
+ var children = props.children, AlertProps = props.AlertProps, severity = props.severity, muiProps = __rest$1(props, ["children", "AlertProps", "severity"]);
891
1826
  var classes = useToastStyles(props);
892
- return (React__default.createElement(MuiSnackbar, __assign({ ClickAwayListenerProps: { mouseEvent: false } }, muiProps),
893
- React__default.createElement(Alert, __assign({ className: classes.root, action: null, severity: severity }, AlertProps), children)));
1827
+ return (React__default.createElement(MuiSnackbar, __assign$1({ ClickAwayListenerProps: { mouseEvent: false } }, muiProps),
1828
+ React__default.createElement(Alert, __assign$1({ className: classes.root, action: null, severity: severity }, AlertProps), children)));
894
1829
  };
895
1830
  Toast.defaultProps = {
896
1831
  AlertProps: {},
@@ -1156,11 +2091,11 @@ var adminOverrides = {
1156
2091
  overrides: {},
1157
2092
  };
1158
2093
 
1159
- var adminLightOptions = __assign(__assign(__assign(__assign(__assign({ themeName: 'Admin Light', palette: __assign(__assign({}, basePalette), adminLightPalette), breakpoints: adminThemeBreakpoints, typography: adminThemeTypography }, adminLightPlaceholder), adminThemeZIndex), adminThemeStatus), adminThemeDefaultProps), adminOverrides);
2094
+ var adminLightOptions = __assign$1(__assign$1(__assign$1(__assign$1(__assign$1({ themeName: 'Admin Light', palette: __assign$1(__assign$1({}, basePalette), adminLightPalette), breakpoints: adminThemeBreakpoints, typography: adminThemeTypography }, adminLightPlaceholder), adminThemeZIndex), adminThemeStatus), adminThemeDefaultProps), adminOverrides);
1160
2095
  var adminLight = createTheme(adminLightOptions);
1161
2096
 
1162
- var adminDarkOptions = __assign(__assign(__assign(__assign(__assign({ themeName: 'Admin Dark', palette: __assign(__assign({}, basePalette), adminDarkPalette), breakpoints: adminThemeBreakpoints, typography: adminThemeTypography }, adminDarkPlaceholder), adminThemeZIndex), adminThemeStatus), adminThemeDefaultProps), adminOverrides);
2097
+ var adminDarkOptions = __assign$1(__assign$1(__assign$1(__assign$1(__assign$1({ themeName: 'Admin Dark', palette: __assign$1(__assign$1({}, basePalette), adminDarkPalette), breakpoints: adminThemeBreakpoints, typography: adminThemeTypography }, adminDarkPlaceholder), adminThemeZIndex), adminThemeStatus), adminThemeDefaultProps), adminOverrides);
1163
2098
  var adminDark = createTheme(adminDarkOptions);
1164
2099
 
1165
- export { Alert, AlertDialog, AlertDialogHeader, AlertTitle, Button, ButtonGroup, FeatureIntro, FullScreenStepper, FullScreenStepperContent, FullScreenStepperContext, SelectableCard, Toast, adminDark, adminDarkOptions, adminLight, adminLightOptions, useFullScreenStepperContext, useSelectableCard };
2100
+ export { Alert, AlertDialog, AlertDialogHeader, AlertTitle, Button, ButtonGroup, FeatureIntro, FullScreenStepper, FullScreenStepperContent, FullScreenStepperContext, SelectableCard, Table, Toast, adminDark, adminDarkOptions, adminLight, adminLightOptions, useFullScreenStepperContext, useSelectableCard };
1166
2101
  //# sourceMappingURL=index.es.js.map