@popmenu/admin-ui 0.18.2 → 0.18.4-alpha.2

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 +5 -4
package/build/index.es.js CHANGED
@@ -1,11 +1,56 @@
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 { Pagination } from '@material-ui/lab';
53
+ import { useTable, useSortBy, usePagination } from 'react-table';
9
54
  import MuiSnackbar from '@material-ui/core/Snackbar';
10
55
  import createTheme from '@material-ui/core/styles/createTheme';
11
56
 
@@ -24,18 +69,18 @@ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
24
69
  PERFORMANCE OF THIS SOFTWARE.
25
70
  ***************************************************************************** */
26
71
 
27
- var __assign = function() {
28
- __assign = Object.assign || function __assign(t) {
72
+ var __assign$1 = function() {
73
+ __assign$1 = Object.assign || function __assign(t) {
29
74
  for (var s, i = 1, n = arguments.length; i < n; i++) {
30
75
  s = arguments[i];
31
76
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
32
77
  }
33
78
  return t;
34
79
  };
35
- return __assign.apply(this, arguments);
80
+ return __assign$1.apply(this, arguments);
36
81
  };
37
82
 
38
- function __rest(s, e) {
83
+ function __rest$1(s, e) {
39
84
  var t = {};
40
85
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
41
86
  t[p] = s[p];
@@ -95,6 +140,645 @@ function __spreadArray(to, from, pack) {
95
140
  return to.concat(ar || from);
96
141
  }
97
142
 
143
+ /*! *****************************************************************************
144
+ Copyright (c) Microsoft Corporation.
145
+
146
+ Permission to use, copy, modify, and/or distribute this software for any
147
+ purpose with or without fee is hereby granted.
148
+
149
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
150
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
151
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
152
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
153
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
154
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
155
+ PERFORMANCE OF THIS SOFTWARE.
156
+ ***************************************************************************** */
157
+
158
+ var __assign = function() {
159
+ __assign = Object.assign || function __assign(t) {
160
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
161
+ s = arguments[i];
162
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
163
+ }
164
+ return t;
165
+ };
166
+ return __assign.apply(this, arguments);
167
+ };
168
+
169
+ function __rest(s, e) {
170
+ var t = {};
171
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
172
+ t[p] = s[p];
173
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
174
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
175
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
176
+ t[p[i]] = s[p[i]];
177
+ }
178
+ return t;
179
+ }
180
+
181
+ var useIconStyles = makeStyles(function (_a) {
182
+ var spacing = _a.spacing, palette = _a.palette;
183
+ var getFontSize = function (_a) {
184
+ var size = _a.size;
185
+ var sizes = {
186
+ inherit: 'inherit',
187
+ small: spacing(1.5),
188
+ medium: spacing(2),
189
+ large: spacing(2.5),
190
+ 'extra-large': spacing(3),
191
+ };
192
+ return size ? sizes[size] : 'inherit';
193
+ };
194
+ var getColor = function (props) {
195
+ var semanticColors = ['primary', 'secondary', 'info', 'success', 'warning', 'error'];
196
+ var value = 'inherit';
197
+ if (props.color) {
198
+ if (semanticColors.includes(props.color.split('.')[0])) {
199
+ var _a = props.color.split('.'), color = _a[0], _b = _a[1], variant = _b === void 0 ? 'main' : _b;
200
+ value = palette[color][variant];
201
+ }
202
+ else if (props.color.search(/^(rgb|hsla|#)/) !== -1) {
203
+ value = props.color;
204
+ }
205
+ }
206
+ return value;
207
+ };
208
+ return {
209
+ root: {
210
+ color: getColor,
211
+ fontSize: getFontSize,
212
+ strokeWidth: '1.3px',
213
+ },
214
+ };
215
+ });
216
+
217
+ var classnames = {exports: {}};
218
+
219
+ /*!
220
+ Copyright (c) 2018 Jed Watson.
221
+ Licensed under the MIT License (MIT), see
222
+ http://jedwatson.github.io/classnames
223
+ */
224
+
225
+ (function (module) {
226
+ /* global define */
227
+
228
+ (function () {
229
+
230
+ var hasOwn = {}.hasOwnProperty;
231
+
232
+ function classNames() {
233
+ var classes = [];
234
+
235
+ for (var i = 0; i < arguments.length; i++) {
236
+ var arg = arguments[i];
237
+ if (!arg) continue;
238
+
239
+ var argType = typeof arg;
240
+
241
+ if (argType === 'string' || argType === 'number') {
242
+ classes.push(arg);
243
+ } else if (Array.isArray(arg)) {
244
+ if (arg.length) {
245
+ var inner = classNames.apply(null, arg);
246
+ if (inner) {
247
+ classes.push(inner);
248
+ }
249
+ }
250
+ } else if (argType === 'object') {
251
+ if (arg.toString === Object.prototype.toString) {
252
+ for (var key in arg) {
253
+ if (hasOwn.call(arg, key) && arg[key]) {
254
+ classes.push(key);
255
+ }
256
+ }
257
+ } else {
258
+ classes.push(arg.toString());
259
+ }
260
+ }
261
+ }
262
+
263
+ return classes.join(' ');
264
+ }
265
+
266
+ if (module.exports) {
267
+ classNames.default = classNames;
268
+ module.exports = classNames;
269
+ } else {
270
+ window.classNames = classNames;
271
+ }
272
+ }());
273
+ }(classnames));
274
+
275
+ var classNames = classnames.exports;
276
+
277
+ var iconStaticClassName = 'pop-icon';
278
+ var Icon = function (props) {
279
+ var icon = props.icon, className = props.className, restProps = __rest(props, ["icon", "className"]);
280
+ var classes = useIconStyles(props);
281
+ var isValid = true;
282
+ if (!icon || (typeof icon === 'function' && icon({}) === undefined)) {
283
+ isValid = false;
284
+ }
285
+ return isValid
286
+ ? createElement(icon, __assign({ className: classNames([classes.root, iconStaticClassName, className]) }, restProps))
287
+ : null;
288
+ };
289
+ Icon.defaultProps = {
290
+ size: 'inherit',
291
+ color: 'inherit',
292
+ };
293
+ Icon.displayName = 'Icon';
294
+
295
+ var IconButton = forwardRef(function (props, ref) {
296
+ return React__default.createElement(MuiIconButton, __assign({ ref: ref }, props));
297
+ });
298
+ IconButton.displayName = 'IconButton';
299
+ IconButton.defaultProps = {
300
+ color: 'secondary',
301
+ };
302
+
303
+ var useTypographyStyles = makeStyles$1(function () {
304
+ var _a;
305
+ return ({
306
+ root: (_a = {},
307
+ _a["& ." + iconStaticClassName] = {
308
+ position: 'relative',
309
+ top: '0.125em',
310
+ padding: '0 0.125em',
311
+ boxSizing: 'content-box',
312
+ },
313
+ _a),
314
+ caption: {
315
+ display: 'inline',
316
+ },
317
+ overline: {
318
+ display: 'inline',
319
+ },
320
+ });
321
+ });
322
+
323
+ var Typography = forwardRef(function (props, ref) {
324
+ var classes = useTypographyStyles(props);
325
+ return React__default.createElement(MuiTypography, __assign({ ref: ref, classes: classes }, props));
326
+ });
327
+ Typography.displayName = 'Typography';
328
+
329
+ var useStyles$1 = makeStyles(function (_a) {
330
+ var spacing = _a.spacing;
331
+ return ({
332
+ root: {
333
+ '&:last-child': {
334
+ marginBottom: 0,
335
+ },
336
+ marginBottom: spacing(4),
337
+ padding: spacing(4),
338
+ },
339
+ });
340
+ });
341
+ var Paper = forwardRef(function (props, ref) {
342
+ var legacyStyles = props.legacyStyles, restProps = __rest(props, ["legacyStyles"]);
343
+ var classes = useStyles$1(props);
344
+ return React__default.createElement(Paper$1, __assign({}, ref, { classes: __assign({}, (legacyStyles && classes)) }, restProps));
345
+ });
346
+ Paper.displayName = 'Paper';
347
+ Paper.defaultProps = {
348
+ legacyStyles: false,
349
+ };
350
+
351
+ var AUDIO_PLAYER_EVENT_TYPES;
352
+ (function (AUDIO_PLAYER_EVENT_TYPES) {
353
+ AUDIO_PLAYER_EVENT_TYPES["TOGGLE_PLAYBACK"] = "TOGGLE_PLAYBACK";
354
+ AUDIO_PLAYER_EVENT_TYPES["TOGGLE_VOLUME_CONTROL"] = "TOGGLE_VOLUME_CONTROL";
355
+ AUDIO_PLAYER_EVENT_TYPES["TOGGLE_MUTE"] = "TOGGLE_MUTE";
356
+ AUDIO_PLAYER_EVENT_TYPES["VOLUME_CHANGE"] = "VOLUME_CHANGE";
357
+ AUDIO_PLAYER_EVENT_TYPES["TIME_CHANGE"] = "TIME_CHANGE";
358
+ AUDIO_PLAYER_EVENT_TYPES["DURATION_CHANGE"] = "DURATION_CHANGE";
359
+ AUDIO_PLAYER_EVENT_TYPES["SET_TIME"] = "SET_TIME";
360
+ AUDIO_PLAYER_EVENT_TYPES["CAN_PLAY"] = "CAN_PLAY";
361
+ AUDIO_PLAYER_EVENT_TYPES["RESET"] = "RESET";
362
+ })(AUDIO_PLAYER_EVENT_TYPES || (AUDIO_PLAYER_EVENT_TYPES = {}));
363
+ var PLAYBACK_STATES;
364
+ (function (PLAYBACK_STATES) {
365
+ PLAYBACK_STATES["NONE"] = "NONE";
366
+ PLAYBACK_STATES["PAUSED"] = "PAUSED";
367
+ PLAYBACK_STATES["PLAYING"] = "PLAYING";
368
+ })(PLAYBACK_STATES || (PLAYBACK_STATES = {}));
369
+ var CONTROL_LABELS;
370
+ (function (CONTROL_LABELS) {
371
+ CONTROL_LABELS["PAUSE"] = "PAUSE";
372
+ CONTROL_LABELS["PLAY"] = "PLAY";
373
+ CONTROL_LABELS["MUTE"] = "MUTE";
374
+ CONTROL_LABELS["UNMUTE"] = "UNMUTE";
375
+ })(CONTROL_LABELS || (CONTROL_LABELS = {}));
376
+ var VOLUME_CONTROL_STATES;
377
+ (function (VOLUME_CONTROL_STATES) {
378
+ VOLUME_CONTROL_STATES["SHOW"] = "SHOW";
379
+ VOLUME_CONTROL_STATES["HIDE"] = "HIDE";
380
+ })(VOLUME_CONTROL_STATES || (VOLUME_CONTROL_STATES = {}));
381
+
382
+ ({
383
+ playback: PLAYBACK_STATES.NONE,
384
+ volumeControls: VOLUME_CONTROL_STATES.HIDE,
385
+ context: {
386
+ volume: 100,
387
+ playbackButtonLabel: CONTROL_LABELS.PLAY,
388
+ volumeButtonLabel: CONTROL_LABELS.MUTE,
389
+ },
390
+ });
391
+
392
+ var LoadingStatus;
393
+ (function (LoadingStatus) {
394
+ LoadingStatus["ERROR"] = "ERROR";
395
+ LoadingStatus["LOADED"] = "LOADED";
396
+ LoadingStatus["PENDING"] = "PENDING";
397
+ })(LoadingStatus || (LoadingStatus = {}));
398
+ /**
399
+ * Hook returns [imgProps, loaded]
400
+ * ref: Merged default and provided imgProp object. Includes load and error events for img tag. To be passed to MuiAvatar.
401
+ * loaded: Indicates whether the src supplied to an img within Avatar results in loaded or error
402
+ */
403
+ var useImgProps = function (avatarProps) {
404
+ var _a = React__default.useState(LoadingStatus.PENDING), loaded = _a[0], setLoaded = _a[1];
405
+ var imgProps = __assign(__assign({}, avatarProps.imgProps), { onError: function (event) {
406
+ var _a, _b;
407
+ setLoaded(LoadingStatus.ERROR);
408
+ (_b = (_a = avatarProps.imgProps) === null || _a === void 0 ? void 0 : _a.onError) === null || _b === void 0 ? void 0 : _b.call(_a, event);
409
+ }, onLoad: function (event) {
410
+ var _a, _b;
411
+ setLoaded(LoadingStatus.LOADED);
412
+ (_b = (_a = avatarProps.imgProps) === null || _a === void 0 ? void 0 : _a.onLoad) === null || _b === void 0 ? void 0 : _b.call(_a, event);
413
+ } });
414
+ return { imgProps: imgProps, loaded: loaded };
415
+ };
416
+
417
+ var getAvatarDimensions = function (theme, props) {
418
+ var factors = {
419
+ 'extra-small': 3,
420
+ small: 4,
421
+ medium: 5,
422
+ large: 6,
423
+ 'extra-large': 12.5,
424
+ };
425
+ var sizeFactor = factors[props.size || 'medium'];
426
+ return theme.spacing(sizeFactor);
427
+ };
428
+ var getAvatarFontSize = function (props) {
429
+ var fontSizes = {
430
+ 'extra-small': '0.75rem',
431
+ small: '1rem',
432
+ medium: '1rem',
433
+ large: '1.25rem',
434
+ 'extra-large': '3.5rem',
435
+ };
436
+ return fontSizes[props.size || 'medium'];
437
+ };
438
+ var getAvatarBackground = function (props) {
439
+ var src = props.src, loaded = props.loaded;
440
+ var background = props.background;
441
+ if (src && loaded === LoadingStatus.LOADED) {
442
+ background = 'transparent';
443
+ }
444
+ return background;
445
+ };
446
+ var useAvatarStyles = makeStyles$1(function (theme) { return ({
447
+ root: {
448
+ width: function (props) { return getAvatarDimensions(theme, props); },
449
+ height: function (props) { return getAvatarDimensions(theme, props); },
450
+ fontSize: function (props) { return getAvatarFontSize(props); },
451
+ backgroundColor: function (props) { return getAvatarBackground(props); },
452
+ color: function (props) { return theme.palette.getContrastText(props.background || '#E0E0E0'); },
453
+ objectFit: function (props) { return props.fit; },
454
+ },
455
+ silhouette: {
456
+ '& path': {
457
+ fill: function (props) { return theme.palette.getContrastText(props.background || '#E0E0E0'); },
458
+ },
459
+ },
460
+ }); });
461
+
462
+ var _path$2;
463
+
464
+ 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); }
465
+
466
+ function SvgSilhouetteFemale(props) {
467
+ return /*#__PURE__*/React.createElement("svg", _extends$2({
468
+ viewBox: "0 0 300 300",
469
+ fill: "none",
470
+ xmlns: "http://www.w3.org/2000/svg"
471
+ }, props), _path$2 || (_path$2 = /*#__PURE__*/React.createElement("path", {
472
+ 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",
473
+ fill: "#2E3042"
474
+ })));
475
+ }
476
+
477
+ var _path$1;
478
+
479
+ 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); }
480
+
481
+ function SvgSilhouetteMale(props) {
482
+ return /*#__PURE__*/React.createElement("svg", _extends$1({
483
+ viewBox: "0 0 300 300",
484
+ fill: "none",
485
+ xmlns: "http://www.w3.org/2000/svg"
486
+ }, props), _path$1 || (_path$1 = /*#__PURE__*/React.createElement("path", {
487
+ 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",
488
+ fill: "#2E3042"
489
+ })));
490
+ }
491
+
492
+ var _path;
493
+
494
+ 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); }
495
+
496
+ function SvgSilhouetteNeutral(props) {
497
+ return /*#__PURE__*/React.createElement("svg", _extends({
498
+ viewBox: "0 0 300 300",
499
+ fill: "none",
500
+ xmlns: "http://www.w3.org/2000/svg"
501
+ }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
502
+ fillRule: "evenodd",
503
+ clipRule: "evenodd",
504
+ 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",
505
+ fill: "#2E3042"
506
+ })));
507
+ }
508
+
509
+ var silhouettes = {
510
+ female: SvgSilhouetteFemale,
511
+ male: SvgSilhouetteMale,
512
+ neutral: SvgSilhouetteNeutral,
513
+ };
514
+ var Avatar = forwardRef(function (props, ref) {
515
+ var children = props.children, _a = props.silhouette, silhouette = _a === void 0 ? 'neutral' : _a, muiProps = __rest(props, ["children", "silhouette"]);
516
+ var _b = useImgProps(props), imgProps = _b.imgProps, loaded = _b.loaded;
517
+ var classes = useAvatarStyles(__assign(__assign({}, props), { loaded: loaded }));
518
+ var Silhouette = silhouettes[silhouette];
519
+ var fallback = muiProps.src || silhouette === 'none' ? '' : React__default.createElement(Silhouette, { className: classes.silhouette });
520
+ return (React__default.createElement(MuiAvatar, __assign({ ref: ref, classes: { root: classes.root } }, muiProps, imgProps), children || fallback));
521
+ });
522
+ Avatar.defaultProps = {
523
+ size: 'medium',
524
+ fit: 'cover',
525
+ background: '#E0E0E0',
526
+ silhouette: 'neutral',
527
+ };
528
+ Avatar.displayName = 'Avatar';
529
+
530
+ var useButtonStyles$1 = makeStyles$1(function () { return ({
531
+ root: {
532
+ minWidth: 'unset',
533
+ },
534
+ label: {
535
+ textTransform: function (_a) {
536
+ var textTransform = _a.textTransform;
537
+ return textTransform;
538
+ },
539
+ },
540
+ }); });
541
+
542
+ var Button$1 = forwardRef(function (props, ref) {
543
+ props.textTransform; var loading = props.loading, classesOverride = props.classes, className = props.className, muiProps = __rest(props, ["textTransform", "loading", "classes", "className"]);
544
+ props.classes; var styleProps = __rest(props, ["classes"]);
545
+ var classes = useButtonStyles$1(styleProps);
546
+ var typography = useTheme().typography;
547
+ var loadingIndicator = {
548
+ startIcon: React__default.createElement(CircularProgress, { color: "inherit", size: typography.button.fontSize }),
549
+ disabled: true,
550
+ };
551
+ return (React__default.createElement(MuiButton, __assign({ ref: ref, classes: __assign(__assign({}, classes), classesOverride), className: classNames([className, 'pm-button']) }, muiProps, (loading && loadingIndicator))));
552
+ });
553
+ Button$1.displayName = 'Button';
554
+
555
+ var Checkbox = forwardRef(function (props, ref) {
556
+ var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest(props, ["label", "disabled", "LabelProps"]);
557
+ var control = React__default.createElement(MuiCheckbox, __assign({ disabled: label ? undefined : disabled }, muiProps));
558
+ return label ? (React__default.createElement(FormControlLabel, __assign({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
559
+ });
560
+ Checkbox.displayName = 'Checkbox';
561
+
562
+ var getFadeStop = function (_a, typographyVariant) {
563
+ var typography = _a.typography;
564
+ return !isNaN(Number(typography[typographyVariant].lineHeight))
565
+ ? typography[typographyVariant].lineHeight + "rem"
566
+ : typography[typographyVariant].lineHeight;
567
+ };
568
+ makeStyles(function (theme) { return ({
569
+ overlay: {
570
+ position: 'absolute',
571
+ top: 0,
572
+ left: 0,
573
+ height: '100%',
574
+ width: '100%',
575
+ background: function (props) { return "linear-gradient(to top, white, #FFF0 " + getFadeStop(theme, props.typographyVariant) + ")"; },
576
+ },
577
+ }); });
578
+
579
+ var SemanticColors;
580
+ (function (SemanticColors) {
581
+ SemanticColors["PRIMARY_MAIN"] = "primary.main";
582
+ SemanticColors["PRIMARY_DARK"] = "primary.dark";
583
+ SemanticColors["PRIMARY_LIGHT"] = "primary.light";
584
+ SemanticColors["SECONDARY_MAIN"] = "secondary.main";
585
+ SemanticColors["SECONDARY_DARK"] = "secondary.dark";
586
+ SemanticColors["SECONDARY_LIGHT"] = "secondary.light";
587
+ })(SemanticColors || (SemanticColors = {}));
588
+ makeStyles(function (theme) { return ({
589
+ dividerRoot: {
590
+ gap: theme.spacing(2),
591
+ },
592
+ textRoot: {
593
+ color: function (props) {
594
+ var textColor = props.textColor;
595
+ if (Object.values(SemanticColors).includes(textColor)) {
596
+ var _a = textColor.split('.'), semanticColor = _a[0], shade = _a[1];
597
+ return theme.palette[semanticColor][shade];
598
+ }
599
+ else if (textColor) {
600
+ return textColor;
601
+ }
602
+ else {
603
+ return 'black';
604
+ }
605
+ },
606
+ textTransform: function (props) { return props.textTransform; },
607
+ },
608
+ dividerLine: {
609
+ backgroundColor: function (props) {
610
+ var dividerColor = props.dividerColor;
611
+ if (Object.values(SemanticColors).includes(dividerColor)) {
612
+ var _a = dividerColor.split('.'), semanticColor = _a[0], shade = _a[1];
613
+ return theme.palette[semanticColor][shade];
614
+ }
615
+ else if (dividerColor) {
616
+ return dividerColor;
617
+ }
618
+ else {
619
+ return theme.palette.grey[500];
620
+ }
621
+ },
622
+ },
623
+ }); });
624
+
625
+ var getLinkColor = function (_a, _b) {
626
+ var palette = _a.palette;
627
+ var _c = _b.color, color = _c === void 0 ? 'info' : _c;
628
+ var resolved;
629
+ if (['primary', 'secondary', 'info', 'error'].includes(color)) {
630
+ resolved = palette[color].main;
631
+ }
632
+ else if (['textPrimary', 'textSecondary'].includes(color)) {
633
+ resolved = palette.text[color.substring(4).toLowerCase()];
634
+ }
635
+ else if (color === 'inherit') {
636
+ resolved = color;
637
+ }
638
+ return resolved;
639
+ };
640
+ var useLinkStyles = makeStyles$1(function (theme) {
641
+ var _a;
642
+ return ({
643
+ root: (_a = {
644
+ display: 'flex',
645
+ color: function (props) { return getLinkColor(theme, props); }
646
+ },
647
+ _a["& ." + iconStaticClassName] = {
648
+ alignSelf: 'center',
649
+ },
650
+ _a),
651
+ });
652
+ });
653
+
654
+ var Link = forwardRef(function (props, ref) {
655
+ var children = props.children; props.color; var muiProps = __rest(props, ["children", "color"]);
656
+ var classes = useLinkStyles(props);
657
+ return (React__default.createElement(MuiLink, __assign({ ref: ref, classes: { root: classes.root } }, muiProps), children));
658
+ });
659
+ Link.defaultProps = {
660
+ color: 'info',
661
+ variant: 'body1',
662
+ };
663
+ Link.displayName = 'Link';
664
+
665
+ var Radio = forwardRef(function (props, ref) {
666
+ var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest(props, ["label", "disabled", "LabelProps"]);
667
+ var control = React__default.createElement(MuiRadio, __assign({ disabled: label ? undefined : disabled }, muiProps));
668
+ return label ? (React__default.createElement(FormControlLabel, __assign({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
669
+ });
670
+ Radio.displayName = 'Radio';
671
+
672
+ makeStyles$1(function () { return ({
673
+ textfield: {
674
+ background: function (props) { return (props.backgroundTransparency ? '#FFFFFF44' : 'none'); },
675
+ borderTopLeftRadius: 4,
676
+ borderBottomLeftRadius: 4,
677
+ '& fieldset': {
678
+ borderRight: 'none',
679
+ borderTopRightRadius: 0,
680
+ borderBottomRightRadius: 0,
681
+ },
682
+ },
683
+ button: {
684
+ borderTopLeftRadius: 0,
685
+ borderBottomLeftRadius: 0,
686
+ alignSelf: 'stretch',
687
+ },
688
+ input: {
689
+ color: function (props) { return props.inputTextColor || 'inherit'; },
690
+ '&$focused fieldset': {
691
+ top: -4,
692
+ },
693
+ },
694
+ focused: {},
695
+ }); });
696
+
697
+ var useSwitchStyles = makeStyles$1(function (theme) { return ({
698
+ checked: {
699
+ '& $thumb': {
700
+ background: theme.palette.success.main,
701
+ },
702
+ '&& + $track': {
703
+ backgroundColor: theme.palette.success.main,
704
+ },
705
+ },
706
+ thumb: {},
707
+ track: {},
708
+ }); });
709
+
710
+ var Switch = forwardRef(function (props, ref) {
711
+ var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest(props, ["label", "disabled", "LabelProps"]);
712
+ var classes = useSwitchStyles(props);
713
+ var control = React__default.createElement(MuiSwitch, __assign({ classes: classes, disabled: label ? undefined : disabled }, muiProps));
714
+ return label ? (React__default.createElement(FormControlLabel, __assign({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
715
+ });
716
+ Switch.displayName = 'Switch';
717
+
718
+ var useToggleButtonStyles = makeStyles$1(function (theme) { return ({
719
+ root: {
720
+ color: theme.palette.text.primary,
721
+ },
722
+ selected: {
723
+ '&&': {
724
+ '&:hover': {
725
+ backgroundColor: function (props) { return theme.palette[props.color || 'primary'].dark; },
726
+ },
727
+ backgroundColor: function (props) { return theme.palette[props.color || 'primary'].main; },
728
+ color: 'white',
729
+ },
730
+ },
731
+ }); });
732
+
733
+ var ToggleButton = forwardRef(function (props, ref) {
734
+ var children = props.children, muiProps = __rest(props, ["children"]);
735
+ var classes = useToggleButtonStyles(props);
736
+ return (React__default.createElement(MuiToggleButton, __assign({ ref: ref, classes: {
737
+ root: classes.root,
738
+ selected: classes.selected,
739
+ } }, muiProps), children));
740
+ });
741
+ ToggleButton.defaultProps = {
742
+ color: 'primary',
743
+ };
744
+ ToggleButton.displayName = 'ToggleButton';
745
+
746
+ var useToggleButtonGroupStyles = makeStyles$1(function (theme) { return ({
747
+ root: {
748
+ '&&': {
749
+ backgroundColor: theme.palette.grey[300],
750
+ },
751
+ },
752
+ }); });
753
+
754
+ var ToggleButtonGroup = forwardRef(function (props, ref) {
755
+ var children = props.children, _a = props.color, color = _a === void 0 ? 'primary' : _a, muiProps = __rest(props, ["children", "color"]);
756
+ var classes = useToggleButtonGroupStyles(props);
757
+ var childrenWithProps = React__default.Children.map(children, function (child) {
758
+ if (!React__default.isValidElement(child)) {
759
+ return null;
760
+ }
761
+ return React__default.cloneElement(child, { color: color });
762
+ });
763
+ return (React__default.createElement(MuiToggleButtonGroup, __assign({ ref: ref, classes: { root: classes.root } }, muiProps), childrenWithProps));
764
+ });
765
+ ToggleButtonGroup.displayName = 'ToggleButtonGroup';
766
+
767
+ var useTooltipStyles = makeStyles$1(function (_a) {
768
+ var typography = _a.typography;
769
+ return ({
770
+ tooltip: {
771
+ fontSize: typography.pxToRem(16),
772
+ },
773
+ });
774
+ });
775
+
776
+ var Tooltip = forwardRef(function (props, ref) {
777
+ var classes = useTooltipStyles(props);
778
+ return React__default.createElement(MuiTooltip, __assign({ ref: ref, classes: classes }, props));
779
+ });
780
+ Tooltip.displayName = 'Tooltip';
781
+
98
782
  var _path$4n, _path2$1p;
99
783
 
100
784
  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 +835,24 @@ function SvgInfo(props) {
151
835
  })));
152
836
  }
153
837
 
838
+ var _path$3K;
839
+
840
+ 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); }
841
+
842
+ function SvgMore(props) {
843
+ return /*#__PURE__*/React.createElement("svg", _extends$3$({
844
+ viewBox: "0 0 16 16",
845
+ strokeLinecap: "round",
846
+ strokeLinejoin: "round",
847
+ stroke: "currentColor",
848
+ width: "1em",
849
+ height: "1em",
850
+ fill: "none"
851
+ }, props), _path$3K || (_path$3K = /*#__PURE__*/React.createElement("path", {
852
+ 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"
853
+ })));
854
+ }
855
+
154
856
  var _path$3a;
155
857
 
156
858
  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 +889,42 @@ function SvgWarning(props) {
187
889
  })));
188
890
  }
189
891
 
892
+ var _path$2X;
893
+
894
+ 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); }
895
+
896
+ function SvgChevronDown(props) {
897
+ return /*#__PURE__*/React.createElement("svg", _extends$3b({
898
+ viewBox: "0 0 16 16",
899
+ strokeLinecap: "round",
900
+ strokeLinejoin: "round",
901
+ stroke: "currentColor",
902
+ width: "1em",
903
+ height: "1em",
904
+ fill: "none"
905
+ }, props), _path$2X || (_path$2X = /*#__PURE__*/React.createElement("path", {
906
+ d: "M4 6l4 4 4-4"
907
+ })));
908
+ }
909
+
910
+ var _path$2W;
911
+
912
+ 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); }
913
+
914
+ function SvgChevronUp(props) {
915
+ return /*#__PURE__*/React.createElement("svg", _extends$3a({
916
+ viewBox: "0 0 16 16",
917
+ strokeLinecap: "round",
918
+ strokeLinejoin: "round",
919
+ stroke: "currentColor",
920
+ width: "1em",
921
+ height: "1em",
922
+ fill: "none"
923
+ }, props), _path$2W || (_path$2W = /*#__PURE__*/React.createElement("path", {
924
+ d: "M12 10L8 6l-4 4"
925
+ })));
926
+ }
927
+
190
928
  var _path$S;
191
929
 
192
930
  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 +943,7 @@ function SvgCircle(props) {
205
943
  })));
206
944
  }
207
945
 
208
- var useAlertStyles = makeStyles(function (theme) { return ({
946
+ var useAlertStyles = makeStyles$1(function (theme) { return ({
209
947
  root: {
210
948
  alignItems: 'center',
211
949
  width: function (_a) {
@@ -226,14 +964,14 @@ var severityIcons$1 = {
226
964
  success: SvgCheckCircle,
227
965
  };
228
966
  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"]);
967
+ 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
968
  var classes = useAlertStyles(props);
231
969
  var validLink = link && link.href && link.text && { href: link.href, children: link.text };
232
970
  var Action = (React__default.createElement(React__default.Fragment, null,
233
- validLink && React__default.createElement(Link, __assign({}, validLink)),
971
+ validLink && React__default.createElement(Link, __assign$1({}, validLink)),
234
972
  React__default.createElement(IconButton, { onClick: onClose },
235
973
  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));
974
+ 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
975
  });
238
976
  Alert.displayName = 'Alert';
239
977
 
@@ -307,7 +1045,7 @@ var buttonTypography = {
307
1045
  fontSize: '0.875rem',
308
1046
  lineHeight: '1.25rem',
309
1047
  };
310
- var useButtonStyles = makeStyles$1(function (_a) {
1048
+ var useButtonStyles = makeStyles(function (_a) {
311
1049
  var palette = _a.palette, spacing = _a.spacing;
312
1050
  return ({
313
1051
  root: function (props) { return ({
@@ -342,7 +1080,7 @@ var useButtonStyles = makeStyles$1(function (_a) {
342
1080
  text: {
343
1081
  padding: spacing(1, 2),
344
1082
  },
345
- label: __assign(__assign({}, buttonTypography), { textTransform: function (props) { return props.textTransform; } }),
1083
+ label: __assign$1(__assign$1({}, buttonTypography), { textTransform: function (props) { return props.textTransform; } }),
346
1084
  sizeSmall: {
347
1085
  padding: spacing(0.5, 2),
348
1086
  },
@@ -393,11 +1131,11 @@ var deriveButtonProps = function (buttonProps) {
393
1131
  };
394
1132
 
395
1133
  var Button = forwardRef(function (props, ref) {
396
- var children = props.children; props.variant; var classesOverride = props.classes, commonProps = __rest(props, ["children", "variant", "classes"]);
1134
+ var children = props.children; props.variant; var classesOverride = props.classes, commonProps = __rest$1(props, ["children", "variant", "classes"]);
397
1135
  var classes = useButtonStyles(props);
398
1136
  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));
1137
+ var mergedProps = __assign$1(__assign$1({}, derivedProps), commonProps);
1138
+ return (React__default.createElement(Button$1, __assign$1({ ref: ref, classes: __assign$1(__assign$1({}, classes), classesOverride), disableElevation: true }, mergedProps), children));
401
1139
  });
402
1140
  Button.defaultProps = {
403
1141
  textTransform: 'uppercase',
@@ -405,7 +1143,7 @@ Button.defaultProps = {
405
1143
  };
406
1144
  Button.displayName = 'Button';
407
1145
 
408
- var useAlertDialogStyles = makeStyles(function (theme) { return ({
1146
+ var useAlertDialogStyles = makeStyles$1(function (theme) { return ({
409
1147
  cancelButton: {
410
1148
  color: theme.palette.grey[700],
411
1149
  },
@@ -438,9 +1176,9 @@ var severityIcons = {
438
1176
  success: SvgCheckCircle,
439
1177
  };
440
1178
  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"]);
1179
+ 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
1180
  var classes = useAlertDialogStyles(props);
443
- return (React__default.createElement(Dialog, __assign({ ref: ref, classes: { paper: classes.root } }, DialogProps),
1181
+ return (React__default.createElement(Dialog, __assign$1({ ref: ref, classes: { paper: classes.root } }, DialogProps),
444
1182
  React__default.createElement(Card, { classes: { root: classes.card }, role: "alertdialog", "aria-modal": "true", "aria-labelledby": labelId, "aria-describedby": descriptionId },
445
1183
  React__default.createElement(IconButton, { className: classes.cancelIcon, onClick: onClose },
446
1184
  React__default.createElement(Icon, { icon: SvgX })),
@@ -455,15 +1193,15 @@ var AlertDialog = forwardRef(function (props, ref) {
455
1193
  AlertDialog.displayName = 'AlertDialog';
456
1194
 
457
1195
  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),
1196
+ var children = props.children, muiProps = __rest$1(props, ["children"]);
1197
+ return (React__default.createElement(Box, __assign$1({ display: "flex", height: 40, alignItems: "center" }, muiProps),
460
1198
  React__default.createElement(Typography, { variant: "h6" }, children)));
461
1199
  };
462
1200
  AlertDialogHeader.displayName = 'AlertDialogHeader';
463
1201
 
464
1202
  var AlertTitle = function (props) {
465
- var children = props.children, muiProps = __rest(props, ["children"]);
466
- return (React__default.createElement(MuiAlertTitle, __assign({}, muiProps),
1203
+ var children = props.children, muiProps = __rest$1(props, ["children"]);
1204
+ return (React__default.createElement(MuiAlertTitle, __assign$1({}, muiProps),
467
1205
  React__default.createElement(Typography, { variant: "h6" },
468
1206
  " ",
469
1207
  children,
@@ -478,7 +1216,7 @@ var getBorderColor = function (palette, variant) {
478
1216
  }
479
1217
  return borderColor;
480
1218
  };
481
- var useButtonGroupStyles = makeStyles(function (theme) { return ({
1219
+ var useButtonGroupStyles = makeStyles$1(function (theme) { return ({
482
1220
  root: {
483
1221
  boxShadow: 'none',
484
1222
  },
@@ -495,7 +1233,7 @@ var useButtonGroupStyles = makeStyles(function (theme) { return ({
495
1233
  }); });
496
1234
 
497
1235
  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"]);
1236
+ var children = props.children, _a = props.variant, variant = _a === void 0 ? 'primary' : _a, muiProps = __rest$1(props, ["children", "variant"]);
499
1237
  var classes = useButtonGroupStyles(props);
500
1238
  var derivedProps = deriveButtonProps({ variant: variant });
501
1239
  var spacing = useTheme().spacing;
@@ -507,13 +1245,13 @@ var ButtonGroup = forwardRef(function (props, ref) {
507
1245
  if (!React__default.isValidElement(child)) {
508
1246
  return null;
509
1247
  }
510
- return React__default.cloneElement(child, __assign(__assign({ variant: variant }, (isFirst && firstStyles)), (isLast && lastStyles)));
1248
+ return React__default.cloneElement(child, __assign$1(__assign$1({ variant: variant }, (isFirst && firstStyles)), (isLast && lastStyles)));
511
1249
  });
512
- return (React__default.createElement(ButtonGroup$1, __assign({ ref: ref, classes: classes }, derivedProps, muiProps), childrenWithProps));
1250
+ return (React__default.createElement(CommonButtonGroup, __assign$1({ ref: ref, classes: classes }, derivedProps, muiProps), childrenWithProps));
513
1251
  });
514
1252
  ButtonGroup.displayName = 'ButtonGroup';
515
1253
 
516
- var useFeatureIntroStyles = makeStyles(function (_a) {
1254
+ var useFeatureIntroStyles = makeStyles$1(function (_a) {
517
1255
  var spacing = _a.spacing;
518
1256
  return ({
519
1257
  root: {
@@ -531,8 +1269,8 @@ var useFeatureIntroStyles = makeStyles(function (_a) {
531
1269
 
532
1270
  var FeatureIntro = function (props) {
533
1271
  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"]);
1272
+ var primaryActionLabel = primaryAction.label, primaryActionProps = __rest$1(primaryAction, ["label"]);
1273
+ var _a = secondaryAction || {}, secondaryActionLabel = _a.label, secondaryActionProps = __rest$1(_a, ["label"]);
536
1274
  var classes = useFeatureIntroStyles(props);
537
1275
  var validImage = (image === null || image === void 0 ? void 0 : image.src) && (image === null || image === void 0 ? void 0 : image.alt);
538
1276
  return (
@@ -544,14 +1282,14 @@ var FeatureIntro = function (props) {
544
1282
  React__default.createElement(Typography, { align: "inherit", variant: "h4" }, title)),
545
1283
  React__default.createElement(Box, { textAlign: { xs: 'center', sm: 'start' }, marginBottom: 6 }, body),
546
1284
  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)))),
1285
+ primaryAction && React__default.createElement(Button, __assign$1({}, primaryActionProps), primaryActionLabel),
1286
+ secondaryAction && (React__default.createElement(Button, __assign$1({ variant: "tertiary" }, secondaryActionProps), secondaryActionLabel)))),
549
1287
  React__default.createElement(Box, { display: "flex", width: { xs: '100%', sm: '50%' }, alignItems: "center", justifyContent: "center" },
550
1288
  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
1289
  };
552
1290
  FeatureIntro.displayName = 'FeatureIntro';
553
1291
 
554
- var useFullScreenStepperActionsStyles = makeStyles(function (theme) { return ({
1292
+ var useFullScreenStepperActionsStyles = makeStyles$1(function (theme) { return ({
555
1293
  root: {
556
1294
  position: 'sticky',
557
1295
  background: 'white',
@@ -578,7 +1316,7 @@ var useFullScreenStepperActionsStyles = makeStyles(function (theme) { return ({
578
1316
 
579
1317
  var augmentButtonProps = function (internalProps, externalProps, setStepCursor, stepCursor, incrementor) {
580
1318
  if (externalProps === void 0) { externalProps = {}; }
581
- var mergedProps = __assign(__assign({}, internalProps), externalProps);
1319
+ var mergedProps = __assign$1(__assign$1({}, internalProps), externalProps);
582
1320
  mergedProps.onClick = function () { return __awaiter(void 0, void 0, void 0, function () {
583
1321
  return __generator(this, function (_a) {
584
1322
  switch (_a.label) {
@@ -602,10 +1340,10 @@ var augmentButtonProps = function (internalProps, externalProps, setStepCursor,
602
1340
  var StepperActionsPreviousButton = function (props) {
603
1341
  var previousButtonText = props.previousButtonText, stepCursor = props.stepCursor, handlePreviousClick = props.handlePreviousClick, previousButtonProps = props.previousButtonProps, setStepCursor = props.setStepCursor, displayPreviousButton = props.displayPreviousButton;
604
1342
  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;
1343
+ return displayPreviousButton ? (React__default.createElement(Button, __assign$1({ variant: "tertiary", disabled: stepCursor === 1 }, augmentedPreviousButtonProps), previousButtonText || 'previous')) : null;
606
1344
  };
607
1345
 
608
- var useStyles = makeStyles({
1346
+ var useStyles = makeStyles$1({
609
1347
  root: {
610
1348
  fontStyle: 'italic',
611
1349
  },
@@ -623,13 +1361,13 @@ var StepperActionsNextButton = function (props) {
623
1361
  var finishText = finishButtonText || 'finish';
624
1362
  var nextText = nextButtonText || 'next';
625
1363
  var buttonText = finalStep ? finishText : nextText;
626
- return React__default.createElement(Button, __assign({}, augmentedNextButtonProps), buttonText);
1364
+ return React__default.createElement(Button, __assign$1({}, augmentedNextButtonProps), buttonText);
627
1365
  };
628
1366
 
629
1367
  var StepperActionsCancelButton = function (props) {
630
1368
  var setStepCursor = props.setStepCursor, stepCursor = props.stepCursor, cancelButtonText = props.cancelButtonText, cancelButtonProps = props.cancelButtonProps, handleCancelClick = props.handleCancelClick, displayCancelButton = props.displayCancelButton;
631
1369
  var augmentedCancelButtonProps = augmentButtonProps({ onClick: handleCancelClick }, cancelButtonProps, setStepCursor, stepCursor, 0);
632
- return displayCancelButton ? (React__default.createElement(Button, __assign({ variant: "ghost" }, augmentedCancelButtonProps), cancelButtonText || 'cancel')) : null;
1370
+ return displayCancelButton ? (React__default.createElement(Button, __assign$1({ variant: "ghost" }, augmentedCancelButtonProps), cancelButtonText || 'cancel')) : null;
633
1371
  };
634
1372
 
635
1373
  var FullScreenStepperActions = function (props) {
@@ -641,7 +1379,7 @@ var FullScreenStepperActions = function (props) {
641
1379
  React__default.createElement(StepperActionsStatusText, { statusText: statusText })),
642
1380
  React__default.createElement(Box, { className: classes.inlineEndActions },
643
1381
  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)); }),
1382
+ 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
1383
  React__default.createElement(StepperActionsCancelButton, { setStepCursor: setStepCursor, stepCursor: stepCursor, cancelButtonText: cancelButtonText, cancelButtonProps: cancelButtonProps, handleCancelClick: handleCancelClick, displayCancelButton: displayCancelButton }),
646
1384
  React__default.createElement(StepperActionsNextButton, { handleNextClick: handleNextClick, nextButtonProps: nextButtonProps, setStepCursor: setStepCursor, stepCursor: stepCursor, stepCount: stepCount, finishButtonText: finishButtonText, nextButtonText: nextButtonText }))));
647
1385
  };
@@ -656,7 +1394,7 @@ var getBorderRadius = function (theme, props) {
656
1394
  return theme.spacing(0.5);
657
1395
  }
658
1396
  };
659
- var useFullScreenStepperProgressStyles = makeStyles(function (theme) { return ({
1397
+ var useFullScreenStepperProgressStyles = makeStyles$1(function (theme) { return ({
660
1398
  progress: {
661
1399
  width: function (props) { return (props.stepCursor / props.stepCount) * 100 + "%"; },
662
1400
  transition: 'all 500ms',
@@ -684,7 +1422,7 @@ var FullScreenStepperProgress = function (props) {
684
1422
  React__default.createElement(Box, { className: classes.progress })));
685
1423
  };
686
1424
 
687
- var useFullScreenStepperHeaderStyles = makeStyles(function (_a) {
1425
+ var useFullScreenStepperHeaderStyles = makeStyles$1(function (_a) {
688
1426
  var spacing = _a.spacing;
689
1427
  return ({
690
1428
  closeButton: {
@@ -728,14 +1466,14 @@ var FullScreenStepperContext = createContext({});
728
1466
  * - loading?
729
1467
  */
730
1468
  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"]);
1469
+ 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
1470
  var _f = useState(defaultStepCursor), stepCursor = _f[0], setStepCursor = _f[1];
733
1471
  var stepCount = steps.length;
734
1472
  var stepIndex = stepCursor - 1;
735
1473
  var step = steps[stepIndex];
736
1474
  var isFinalStep = stepCursor / stepCount === 1;
737
1475
  var callbackArgs = { setStepCursor: setStepCursor, step: step, stepCount: stepCount, stepIndex: stepIndex, steps: steps };
738
- var mergedContext = __assign(__assign({}, context), callbackArgs);
1476
+ var mergedContext = __assign$1(__assign$1({}, context), callbackArgs);
739
1477
  var resetStepCursor = function () { return setTimeout(function () { return setStepCursor(1); }, 600); };
740
1478
  var handleClose = function () {
741
1479
  if (typeof onClose === 'function') {
@@ -803,21 +1541,21 @@ var FullScreenStepper = function (props) {
803
1541
  });
804
1542
  }); };
805
1543
  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),
1544
+ return (React__default.createElement(Dialog, __assign$1({ fullScreen: true }, DialogProps),
807
1545
  React__default.createElement(FullScreenStepperContext.Provider, { value: mergedContext },
808
1546
  React__default.createElement(Box$1, { display: "flex", flexDirection: "column", flexGrow: 1 },
809
1547
  React__default.createElement(FullScreenStepperHeader, { stepCount: stepCount, stepCursor: stepCursor, onClose: handleClose, step: step }),
810
1548
  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 }))))));
1549
+ 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
1550
  };
813
1551
  FullScreenStepper.displayName = 'FullScreenStepper';
814
1552
 
815
1553
  var FullScreenStepperContent = function (props) {
816
- props.name; var boxProps = __rest(props, ["name"]);
817
- return (React__default.createElement(Box, __assign({ py: 8 }, boxProps), props.children));
1554
+ props.name; var boxProps = __rest$1(props, ["name"]);
1555
+ return (React__default.createElement(Box, __assign$1({ py: 8 }, boxProps), props.children));
818
1556
  };
819
1557
 
820
- var useSelectableCardStyles = makeStyles(function (theme) {
1558
+ var useSelectableCardStyles = makeStyles$1(function (theme) {
821
1559
  var _a = theme.palette, info = _a.info, grey = _a.grey, getContrastText = _a.getContrastText, spacing = theme.spacing;
822
1560
  var selectedBackgroundColor = lighten(theme.palette.info.light, 0.9);
823
1561
  var backgroundColor = theme.palette.surface.light;
@@ -861,20 +1599,217 @@ var useSelectableCardStyles = makeStyles(function (theme) {
861
1599
  });
862
1600
 
863
1601
  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"]);
1602
+ 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
1603
  var selected = typeof selectedProp === 'boolean' ? selectedProp : selection.includes(value);
866
- var classes = useSelectableCardStyles(__assign(__assign({}, props), { selected: selected }));
1604
+ var classes = useSelectableCardStyles(__assign$1(__assign$1({}, props), { selected: selected }));
867
1605
  var handleClick = function () {
868
1606
  onClick(value);
869
1607
  };
870
- return (React__default.createElement(Card, __assign({ classes: { root: classes.root } }, muiProps),
1608
+ return (React__default.createElement(Card, __assign$1({ classes: { root: classes.root } }, muiProps),
871
1609
  React__default.createElement(CardActionArea, { onClick: handleClick, classes: { focusHighlight: classes.focusHighlight }, role: "checkbox", "aria-checked": selected, "aria-labelledby": labelId },
872
1610
  React__default.createElement(Icon, { className: classes.icon, icon: selected ? SvgCheckCircle : SvgCircle, size: "medium" }),
873
1611
  React__default.createElement(CardContent, { classes: { root: classes.cardContent } }, children))));
874
1612
  };
875
1613
  SelectableCard.displayName = 'SelectableCard';
876
1614
 
877
- var useToastStyles = makeStyles(function (theme) { return ({
1615
+ var TableFooter = function (props) {
1616
+ return (React__default.createElement(Box, { display: "flex", justifyContent: "center", alignItems: "end", paddingTop: 3, paddingBottom: 4, flexGrow: 1 }, props.children));
1617
+ };
1618
+
1619
+ var TableHeader = function (props) {
1620
+ var children = props.children, restProps = __rest$1(props, ["children"]);
1621
+ return React__default.createElement("thead", __assign$1({}, restProps), children);
1622
+ };
1623
+
1624
+ var getWidth = function (props) {
1625
+ var isActionColumn = props.column.isActionColumn, fullWidth = props.tableProps.fullWidth;
1626
+ var width;
1627
+ if (fullWidth && isActionColumn) {
1628
+ width = '0.0000000001%';
1629
+ }
1630
+ if (fullWidth && !isActionColumn) {
1631
+ width = '1%';
1632
+ }
1633
+ if (!fullWidth && isActionColumn) {
1634
+ width = 72;
1635
+ }
1636
+ if (!fullWidth && !isActionColumn) {
1637
+ width = undefined;
1638
+ }
1639
+ return width;
1640
+ };
1641
+ var useTableHeaderCellStyles = makeStyles(function (theme) { return ({
1642
+ root: function (props) {
1643
+ var width = getWidth(props);
1644
+ return {
1645
+ borderBottomStyle: 'solid',
1646
+ borderBottomWidth: 2,
1647
+ borderBottomColor: theme.palette.grey[100],
1648
+ padding: theme.spacing(2),
1649
+ textAlign: 'left',
1650
+ fontWeight: 500,
1651
+ width: width,
1652
+ };
1653
+ },
1654
+ }); });
1655
+
1656
+ var TableHeaderCell = function (props) {
1657
+ var children = props.children, column = props.column; props.tableProps; var restProps = __rest$1(props, ["children", "column", "tableProps"]);
1658
+ var root = useTableHeaderCellStyles(props).root;
1659
+ var _a = useTheme$1(), palette = _a.palette, spacing = _a.spacing;
1660
+ //@ts-expect-error @types/react-table issue
1661
+ var canSort = column.canSort, isSorted = column.isSorted, isSortedDesc = column.isSortedDesc, isActionColumn = column.isActionColumn;
1662
+ var showSortIndicator = canSort && !isActionColumn;
1663
+ return (React__default.createElement("th", __assign$1({ className: root }, restProps),
1664
+ React__default.createElement(Box, { display: "flex", alignItems: "center", gridGap: spacing(1) },
1665
+ children,
1666
+ showSortIndicator && (React__default.createElement(Icon, { icon: isSortedDesc ? SvgChevronDown : SvgChevronUp, color: isSorted ? palette.text.primary : palette.text.disabled, size: "large" })))));
1667
+ };
1668
+
1669
+ var TableHeaderRow = function (props) {
1670
+ var children = props.children, restProps = __rest$1(props, ["children"]);
1671
+ return React__default.createElement("tr", __assign$1({}, restProps), children);
1672
+ };
1673
+
1674
+ var useTableRowStyles = makeStyles(function (theme) { return ({
1675
+ root: function () { return ({
1676
+ '&:nth-child(even)': {
1677
+ backgroundColor: theme.palette.grey[100],
1678
+ },
1679
+ }); },
1680
+ }); });
1681
+
1682
+ var TableRow = function (props) {
1683
+ var children = props.children, restProps = __rest$1(props, ["children"]);
1684
+ var root = useTableRowStyles(props).root;
1685
+ return (React__default.createElement("tr", __assign$1({ className: root }, restProps), children));
1686
+ };
1687
+
1688
+ var TableBody = function (props) {
1689
+ var children = props.children, restProps = __rest$1(props, ["children"]);
1690
+ return React__default.createElement("tbody", __assign$1({}, restProps), children);
1691
+ };
1692
+
1693
+ var useTableCellStyles = makeStyles(function (theme) { return ({
1694
+ root: function () { return ({
1695
+ padding: theme.spacing(2),
1696
+ }); },
1697
+ }); });
1698
+
1699
+ var TableCell = function (props) {
1700
+ var children = props.children, restProps = __rest$1(props, ["children"]);
1701
+ var root = useTableCellStyles(props).root;
1702
+ return (React__default.createElement("td", __assign$1({ className: root }, restProps), children));
1703
+ };
1704
+
1705
+ var useTableStyles = makeStyles(function (_a) {
1706
+ var typography = _a.typography;
1707
+ return ({
1708
+ root: function (_a) {
1709
+ var fullWidth = _a.fullWidth;
1710
+ return ({
1711
+ display: fullWidth ? 'flex' : 'inline-flex',
1712
+ flexDirection: 'column',
1713
+ });
1714
+ },
1715
+ table: function (_a) {
1716
+ var fullWidth = _a.fullWidth;
1717
+ return (__assign$1(__assign$1({ borderCollapse: 'collapse' }, (fullWidth && { width: '100%' })), typography.body1));
1718
+ },
1719
+ tableWrap: function () { return ({
1720
+ maxWidth: '100%',
1721
+ overflowX: 'auto',
1722
+ overflowY: 'hidden',
1723
+ }); },
1724
+ });
1725
+ });
1726
+
1727
+ var TableActionsCell = function (props) {
1728
+ var _a = props.actions, primary = _a.primary, secondary = _a.secondary, intermediate = __rest$1(_a, ["primary", "secondary"]);
1729
+ var tertiary = intermediate.tertiary, restActions = __rest$1(intermediate, ["tertiary"]);
1730
+ var overflow = Object.keys(props.actions).length > 3;
1731
+ var _b = React__default.useState(null), anchorEl = _b[0], setAnchorEl = _b[1];
1732
+ var openMenu = function (event) {
1733
+ setAnchorEl(event.currentTarget);
1734
+ };
1735
+ var closeMenu = function () {
1736
+ setAnchorEl(null);
1737
+ };
1738
+ var handleItemClick = function (action) {
1739
+ action(props.cell);
1740
+ closeMenu();
1741
+ };
1742
+ return (React__default.createElement(Box, { display: "flex" },
1743
+ primary && primary.icon && (React__default.createElement(IconButton, { size: "small", onClick: function () { return primary.action(props.cell); } },
1744
+ React__default.createElement(Icon, { icon: primary.icon }))),
1745
+ secondary && secondary.icon && (React__default.createElement(IconButton, { size: "small", onClick: function () { return secondary.action(props.cell); } },
1746
+ React__default.createElement(Icon, { icon: secondary.icon }))),
1747
+ !overflow && tertiary && tertiary.icon && (React__default.createElement(IconButton, { size: "small", onClick: function () { return tertiary.action(props.cell); } },
1748
+ React__default.createElement(Icon, { icon: tertiary.icon }))),
1749
+ overflow && restActions && (React__default.createElement(React__default.Fragment, null,
1750
+ React__default.createElement(IconButton, { size: "small", onClick: openMenu },
1751
+ React__default.createElement(Icon, { icon: SvgMore })),
1752
+ React__default.createElement(Menu, { anchorEl: anchorEl, open: Boolean(anchorEl), onClose: closeMenu }, Object.values(__assign$1({ tertiary: tertiary }, restActions))
1753
+ .filter(function (value) { return value; })
1754
+ .map(function (_a, i) {
1755
+ var label = _a.label, action = _a.action;
1756
+ return (React__default.createElement(MenuItem, { key: i, onClick: function () { return handleItemClick(action); } }, label));
1757
+ }))))));
1758
+ };
1759
+
1760
+ var makeColumns = function (config) {
1761
+ var columns = config.columns, actions = config.actions, actionColumnId = config.actionColumnId;
1762
+ var actionColumn;
1763
+ var memoizedColumns = __spreadArray([], columns);
1764
+ if (actions) {
1765
+ var CellComponent = function (props) { return React__default.createElement(TableActionsCell, __assign$1({}, props, { actions: actions })); };
1766
+ actionColumn = {
1767
+ id: actionColumnId,
1768
+ Header: function () { return null; },
1769
+ Cell: CellComponent,
1770
+ };
1771
+ memoizedColumns = __spreadArray(__spreadArray([], columns), [actionColumn]);
1772
+ }
1773
+ return memoizedColumns;
1774
+ };
1775
+
1776
+ /* eslint-disable react/jsx-key */
1777
+ var Table = function (props) {
1778
+ var actionColumnId = 'table-actions-column';
1779
+ 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;
1780
+ var classes = useTableStyles(props);
1781
+ var columns = useMemo(function () { return makeColumns({ columns: rawColumns, actions: actions, actionColumnId: actionColumnId }); }, [rawColumns, actions]);
1782
+ // @ts-expect-error @types/react-table issue
1783
+ var instance = useTable({ columns: columns, data: data, disableSortBy: !sortable }, useSortBy, usePagination);
1784
+ // @ts-expect-error @types/react-table issue
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