@popmenu/table 0.125.0 → 0.126.1

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 (192) hide show
  1. package/build/esm/_virtual/_commonjsHelpers.js +4 -0
  2. package/build/esm/_virtual/_commonjsHelpers.js.map +1 -0
  3. package/build/{components → esm/components}/ColumnFilterChip/ColumnFilterChip.d.ts +9 -9
  4. package/build/esm/components/ColumnFilterChip/ColumnFilterChip.js +17 -0
  5. package/build/esm/components/ColumnFilterChip/ColumnFilterChip.js.map +1 -0
  6. package/build/esm/components/ColumnFilterChip/ColumnFilterChipStyles.d.ts +1 -0
  7. package/build/esm/components/ColumnFilterChip/ColumnFilterChipStyles.js +14 -0
  8. package/build/esm/components/ColumnFilterChip/ColumnFilterChipStyles.js.map +1 -0
  9. package/build/{components → esm/components}/ColumnFilterChip/index.d.ts +1 -1
  10. package/build/{components → esm/components}/ColumnFilterResetButton/ColumnFilterResetButton.d.ts +3 -3
  11. package/build/esm/components/ColumnFilterResetButton/ColumnFilterResetButton.js +11 -0
  12. package/build/esm/components/ColumnFilterResetButton/ColumnFilterResetButton.js.map +1 -0
  13. package/build/{components → esm/components}/ColumnFilterResetButton/index.d.ts +1 -1
  14. package/build/{components → esm/components}/FilterPanel/FilterControl/FilterControl.d.ts +3 -3
  15. package/build/esm/components/FilterPanel/FilterControl/FilterControl.js +24 -0
  16. package/build/esm/components/FilterPanel/FilterControl/FilterControl.js.map +1 -0
  17. package/build/{components → esm/components}/FilterPanel/FilterControl/SelectFilter/SelectFilter.d.ts +5 -5
  18. package/build/esm/components/FilterPanel/FilterControl/SelectFilter/SelectFilter.js +97 -0
  19. package/build/esm/components/FilterPanel/FilterControl/SelectFilter/SelectFilter.js.map +1 -0
  20. package/build/{components → esm/components}/FilterPanel/FilterControl/SelectFilter/SelectFilterStyles.d.ts +1 -1
  21. package/build/esm/components/FilterPanel/FilterControl/SelectFilter/SelectFilterStyles.js +23 -0
  22. package/build/esm/components/FilterPanel/FilterControl/SelectFilter/SelectFilterStyles.js.map +1 -0
  23. package/build/{components → esm/components}/FilterPanel/FilterControl/SelectFilter/index.d.ts +1 -1
  24. package/build/{components → esm/components}/FilterPanel/FilterControl/ToggleFilter/ToggleFilter.d.ts +4 -4
  25. package/build/esm/components/FilterPanel/FilterControl/ToggleFilter/ToggleFilter.js +20 -0
  26. package/build/esm/components/FilterPanel/FilterControl/ToggleFilter/ToggleFilter.js.map +1 -0
  27. package/build/{components → esm/components}/FilterPanel/FilterControl/ToggleFilter/index.d.ts +1 -1
  28. package/build/{components → esm/components}/FilterPanel/FilterControl/index.d.ts +1 -1
  29. package/build/{components → esm/components}/FilterPanel/FilterPanel.d.ts +2 -2
  30. package/build/esm/components/FilterPanel/FilterPanel.js +24 -0
  31. package/build/esm/components/FilterPanel/FilterPanel.js.map +1 -0
  32. package/build/{components → esm/components}/FilterPanel/FilterPanelContext/FilterPanelContext.d.ts +7 -7
  33. package/build/esm/components/FilterPanel/FilterPanelContext/FilterPanelContext.js +13 -0
  34. package/build/esm/components/FilterPanel/FilterPanelContext/FilterPanelContext.js.map +1 -0
  35. package/build/{components → esm/components}/FilterPanel/FilterPanelContext/index.d.ts +1 -1
  36. package/build/{components → esm/components}/FilterPanel/FilterPanelProps.d.ts +11 -11
  37. package/build/{components → esm/components}/FilterPanel/Panel/Panel.d.ts +7 -7
  38. package/build/esm/components/FilterPanel/Panel/Panel.js +72 -0
  39. package/build/esm/components/FilterPanel/Panel/Panel.js.map +1 -0
  40. package/build/{components → esm/components}/FilterPanel/Panel/PanelStyles.d.ts +1 -1
  41. package/build/esm/components/FilterPanel/Panel/PanelStyles.js +58 -0
  42. package/build/esm/components/FilterPanel/Panel/PanelStyles.js.map +1 -0
  43. package/build/{components → esm/components}/FilterPanel/Panel/index.d.ts +1 -1
  44. package/build/{components → esm/components}/FilterPanel/Trigger/Trigger.d.ts +7 -7
  45. package/build/esm/components/FilterPanel/Trigger/Trigger.js +14 -0
  46. package/build/esm/components/FilterPanel/Trigger/Trigger.js.map +1 -0
  47. package/build/{components → esm/components}/FilterPanel/Trigger/TriggerStyles.d.ts +1 -1
  48. package/build/esm/components/FilterPanel/Trigger/TriggerStyles.js +11 -0
  49. package/build/esm/components/FilterPanel/Trigger/TriggerStyles.js.map +1 -0
  50. package/build/{components → esm/components}/FilterPanel/Trigger/index.d.ts +1 -1
  51. package/build/{components → esm/components}/FilterPanel/index.d.ts +1 -1
  52. package/build/{components → esm/components}/GlobalFilter/GlobalFilter.d.ts +3 -3
  53. package/build/esm/components/GlobalFilter/GlobalFilter.js +21 -0
  54. package/build/esm/components/GlobalFilter/GlobalFilter.js.map +1 -0
  55. package/build/{components → esm/components}/GlobalFilter/GlobalFilterProps.d.ts +7 -7
  56. package/build/{components → esm/components}/GlobalFilter/GlobalFilterStyles.d.ts +1 -1
  57. package/build/esm/components/GlobalFilter/GlobalFilterStyles.js +14 -0
  58. package/build/esm/components/GlobalFilter/GlobalFilterStyles.js.map +1 -0
  59. package/build/{components → esm/components}/GlobalFilter/index.d.ts +2 -2
  60. package/build/{components → esm/components}/RowActions/RowActions.d.ts +3 -3
  61. package/build/esm/components/RowActions/RowActions.js +42 -0
  62. package/build/esm/components/RowActions/RowActions.js.map +1 -0
  63. package/build/{components → esm/components}/RowActions/RowActionsProps.d.ts +13 -13
  64. package/build/{components → esm/components}/RowActions/index.d.ts +2 -2
  65. package/build/{components → esm/components}/Table/Table.d.ts +21 -21
  66. package/build/esm/components/Table/Table.js +107 -0
  67. package/build/esm/components/Table/Table.js.map +1 -0
  68. package/build/{components → esm/components}/Table/TableProps.d.ts +47 -47
  69. package/build/{components → esm/components}/Table/TableStyles.d.ts +2 -2
  70. package/build/esm/components/Table/TableStyles.js +28 -0
  71. package/build/esm/components/Table/TableStyles.js.map +1 -0
  72. package/build/{components → esm/components}/Table/index.d.ts +2 -2
  73. package/build/{components → esm/components}/TableBody/TableBody.d.ts +4 -4
  74. package/build/esm/components/TableBody/TableBody.js +10 -0
  75. package/build/esm/components/TableBody/TableBody.js.map +1 -0
  76. package/build/{components → esm/components}/TableBody/index.d.ts +1 -1
  77. package/build/{components → esm/components}/TableCell/TableCell.d.ts +4 -4
  78. package/build/esm/components/TableCell/TableCell.js +12 -0
  79. package/build/esm/components/TableCell/TableCell.js.map +1 -0
  80. package/build/{components → esm/components}/TableCell/TableCellStyles.d.ts +1 -1
  81. package/build/esm/components/TableCell/TableCellStyles.js +11 -0
  82. package/build/esm/components/TableCell/TableCellStyles.js.map +1 -0
  83. package/build/{components → esm/components}/TableCell/index.d.ts +1 -1
  84. package/build/{components → esm/components}/TableContext/index.d.ts +16 -16
  85. package/build/esm/components/TableContext/index.js +6 -0
  86. package/build/esm/components/TableContext/index.js.map +1 -0
  87. package/build/{components → esm/components}/TableControlsContainer/TableControlsContainer.d.ts +3 -3
  88. package/build/esm/components/TableControlsContainer/TableControlsContainer.js +34 -0
  89. package/build/esm/components/TableControlsContainer/TableControlsContainer.js.map +1 -0
  90. package/build/{components → esm/components}/TableControlsContainer/TableControlsContainerProps.d.ts +6 -6
  91. package/build/{components → esm/components}/TableControlsContainer/index.d.ts +1 -1
  92. package/build/{components → esm/components}/TableFooter/TableFooter.d.ts +4 -4
  93. package/build/esm/components/TableFooter/TableFooter.js +9 -0
  94. package/build/esm/components/TableFooter/TableFooter.js.map +1 -0
  95. package/build/{components → esm/components}/TableFooter/index.d.ts +1 -1
  96. package/build/{components → esm/components}/TableHeader/TableHeader.d.ts +4 -4
  97. package/build/esm/components/TableHeader/TableHeader.js +10 -0
  98. package/build/esm/components/TableHeader/TableHeader.js.map +1 -0
  99. package/build/{components → esm/components}/TableHeader/index.d.ts +1 -1
  100. package/build/{components → esm/components}/TableHeaderCell/TableHeaderCell.d.ts +3 -3
  101. package/build/esm/components/TableHeaderCell/TableHeaderCell.js +31 -0
  102. package/build/esm/components/TableHeaderCell/TableHeaderCell.js.map +1 -0
  103. package/build/{components → esm/components}/TableHeaderCell/TableHeaderCellProps.d.ts +6 -6
  104. package/build/{components → esm/components}/TableHeaderCell/TableHeaderCellStyles.d.ts +4 -4
  105. package/build/esm/components/TableHeaderCell/TableHeaderCellStyles.js +41 -0
  106. package/build/esm/components/TableHeaderCell/TableHeaderCellStyles.js.map +1 -0
  107. package/build/{components → esm/components}/TableHeaderCell/index.d.ts +2 -2
  108. package/build/{components → esm/components}/TableHeaderRow/TableHeaderRow.d.ts +4 -4
  109. package/build/esm/components/TableHeaderRow/TableHeaderRow.js +10 -0
  110. package/build/esm/components/TableHeaderRow/TableHeaderRow.js.map +1 -0
  111. package/build/{components → esm/components}/TableHeaderRow/index.d.ts +1 -1
  112. package/build/{components → esm/components}/TableRow/TableRow.d.ts +4 -4
  113. package/build/esm/components/TableRow/TableRow.js +12 -0
  114. package/build/esm/components/TableRow/TableRow.js.map +1 -0
  115. package/build/{components → esm/components}/TableRow/TableRowStyles.d.ts +1 -1
  116. package/build/esm/components/TableRow/TableRowStyles.js +12 -0
  117. package/build/esm/components/TableRow/TableRowStyles.js.map +1 -0
  118. package/build/{components → esm/components}/TableRow/index.d.ts +1 -1
  119. package/build/{components → esm/components}/index.d.ts +10 -10
  120. package/build/{hooks → esm/hooks}/index.d.ts +2 -2
  121. package/build/{hooks → esm/hooks}/useColumnFilters.d.ts +9 -9
  122. package/build/esm/hooks/useColumnFilters.js +74 -0
  123. package/build/esm/hooks/useColumnFilters.js.map +1 -0
  124. package/build/{hooks → esm/hooks}/useStagedColumnFilters.d.ts +8 -8
  125. package/build/esm/hooks/useStagedColumnFilters.js +55 -0
  126. package/build/esm/hooks/useStagedColumnFilters.js.map +1 -0
  127. package/build/{index.d.ts → esm/index.d.ts} +1 -1
  128. package/build/esm/index.js +11 -0
  129. package/build/esm/index.js.map +1 -0
  130. package/build/esm/node_modules/lodash/_Symbol.js +11 -0
  131. package/build/esm/node_modules/lodash/_Symbol.js.map +1 -0
  132. package/build/esm/node_modules/lodash/_arrayMap.js +25 -0
  133. package/build/esm/node_modules/lodash/_arrayMap.js.map +1 -0
  134. package/build/esm/node_modules/lodash/_arrayReduce.js +30 -0
  135. package/build/esm/node_modules/lodash/_arrayReduce.js.map +1 -0
  136. package/build/esm/node_modules/lodash/_asciiWords.js +19 -0
  137. package/build/esm/node_modules/lodash/_asciiWords.js.map +1 -0
  138. package/build/esm/node_modules/lodash/_baseGetTag.js +35 -0
  139. package/build/esm/node_modules/lodash/_baseGetTag.js.map +1 -0
  140. package/build/esm/node_modules/lodash/_basePropertyOf.js +18 -0
  141. package/build/esm/node_modules/lodash/_basePropertyOf.js.map +1 -0
  142. package/build/esm/node_modules/lodash/_baseToString.js +42 -0
  143. package/build/esm/node_modules/lodash/_baseToString.js.map +1 -0
  144. package/build/esm/node_modules/lodash/_createCompounder.js +31 -0
  145. package/build/esm/node_modules/lodash/_createCompounder.js.map +1 -0
  146. package/build/esm/node_modules/lodash/_deburrLetter.js +76 -0
  147. package/build/esm/node_modules/lodash/_deburrLetter.js.map +1 -0
  148. package/build/esm/node_modules/lodash/_freeGlobal.js +10 -0
  149. package/build/esm/node_modules/lodash/_freeGlobal.js.map +1 -0
  150. package/build/esm/node_modules/lodash/_getRawTag.js +51 -0
  151. package/build/esm/node_modules/lodash/_getRawTag.js.map +1 -0
  152. package/build/esm/node_modules/lodash/_hasUnicodeWord.js +19 -0
  153. package/build/esm/node_modules/lodash/_hasUnicodeWord.js.map +1 -0
  154. package/build/esm/node_modules/lodash/_objectToString.js +26 -0
  155. package/build/esm/node_modules/lodash/_objectToString.js.map +1 -0
  156. package/build/esm/node_modules/lodash/_root.js +14 -0
  157. package/build/esm/node_modules/lodash/_root.js.map +1 -0
  158. package/build/esm/node_modules/lodash/_unicodeWords.js +73 -0
  159. package/build/esm/node_modules/lodash/_unicodeWords.js.map +1 -0
  160. package/build/esm/node_modules/lodash/deburr.js +51 -0
  161. package/build/esm/node_modules/lodash/deburr.js.map +1 -0
  162. package/build/esm/node_modules/lodash/isArray.js +30 -0
  163. package/build/esm/node_modules/lodash/isArray.js.map +1 -0
  164. package/build/esm/node_modules/lodash/isObjectLike.js +33 -0
  165. package/build/esm/node_modules/lodash/isObjectLike.js.map +1 -0
  166. package/build/esm/node_modules/lodash/isSymbol.js +35 -0
  167. package/build/esm/node_modules/lodash/isSymbol.js.map +1 -0
  168. package/build/esm/node_modules/lodash/kebabCase.js +33 -0
  169. package/build/esm/node_modules/lodash/kebabCase.js.map +1 -0
  170. package/build/esm/node_modules/lodash/toString.js +33 -0
  171. package/build/esm/node_modules/lodash/toString.js.map +1 -0
  172. package/build/esm/node_modules/lodash/words.js +43 -0
  173. package/build/esm/node_modules/lodash/words.js.map +1 -0
  174. package/build/{util → esm/util}/coercedValueIncludesString.d.ts +2 -2
  175. package/build/esm/util/coercedValueIncludesString.js +9 -0
  176. package/build/esm/util/coercedValueIncludesString.js.map +1 -0
  177. package/build/{util → esm/util}/getTableMinHeight.d.ts +2 -2
  178. package/build/esm/util/getTableMinHeight.js +20 -0
  179. package/build/esm/util/getTableMinHeight.js.map +1 -0
  180. package/build/{util → esm/util}/index.d.ts +3 -3
  181. package/build/{util → esm/util}/tableConstants.d.ts +5 -5
  182. package/build/esm/util/tableConstants.js +6 -0
  183. package/build/esm/util/tableConstants.js.map +1 -0
  184. package/build/{util → esm/util}/validateRowAction.d.ts +2 -2
  185. package/build/esm/util/validateRowAction.js +12 -0
  186. package/build/esm/util/validateRowAction.js.map +1 -0
  187. package/build/index.js +694 -3716
  188. package/build/index.js.map +1 -1
  189. package/package.json +8 -4
  190. package/build/components/ColumnFilterChip/ColumnFilterChipStyles.d.ts +0 -1
  191. package/build/index.es.js +0 -4407
  192. package/build/index.es.js.map +0 -1
package/build/index.es.js DELETED
@@ -1,4407 +0,0 @@
1
- import * as React from 'react';
2
- import React__default, { createElement, forwardRef, createContext, useContext, useState, useRef, isValidElement } from 'react';
3
- import { makeStyles, Link as Link$2, Paper as Paper$2, Typography as Typography$2, Box, FormControl, InputLabel, Select, FormControlLabel as FormControlLabel$1, Switch as Switch$2, TextField, ButtonBase, Popover, InputAdornment, useTheme as useTheme$1 } from '@material-ui/core';
4
- import { Pagination } from '@material-ui/lab';
5
- import { useReactTable, getCoreRowModel, getSortedRowModel, getFilteredRowModel, getPaginationRowModel, flexRender } from '@tanstack/react-table';
6
- import CommonAlert from '@material-ui/lab/Alert';
7
- import '@material-ui/core/AppBar';
8
- import MuiAvatar from '@material-ui/core/Avatar';
9
- import { makeStyles as makeStyles$1, useTheme, lighten } from '@material-ui/core/styles';
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 '@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 MuiChip from '@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 MuiIconButton from '@material-ui/core/IconButton';
32
- import '@material-ui/core/InputAdornment';
33
- import '@material-ui/core/LinearProgress';
34
- import '@material-ui/core/List';
35
- import '@material-ui/core/ListItem';
36
- import '@material-ui/core/ListItemAvatar';
37
- import '@material-ui/core/ListItemIcon';
38
- import '@material-ui/core/ListItemSecondaryAction';
39
- import '@material-ui/core/ListItemText';
40
- import Menu from '@material-ui/core/Menu';
41
- import MenuItem from '@material-ui/core/MenuItem';
42
- import '@material-ui/core/MenuList';
43
- import MuiRadio from '@material-ui/core/Radio';
44
- import '@material-ui/core/TextField';
45
- import MuiSwitch from '@material-ui/core/Switch';
46
- import '@material-ui/core/Tab';
47
- import '@material-ui/core/Tabs';
48
- import MuiToggleButton from '@material-ui/lab/ToggleButton';
49
- import MuiToggleButtonGroup from '@material-ui/lab/ToggleButtonGroup';
50
- import MuiTooltip from '@material-ui/core/Tooltip';
51
- import '@material-ui/lab/AlertTitle';
52
- import '@material-ui/core/Box';
53
- import '@material-ui/core/Snackbar';
54
- import createTheme from '@material-ui/core/styles/createTheme';
55
-
56
- /*! *****************************************************************************
57
- Copyright (c) Microsoft Corporation.
58
-
59
- Permission to use, copy, modify, and/or distribute this software for any
60
- purpose with or without fee is hereby granted.
61
-
62
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
63
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
64
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
65
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
66
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
67
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
68
- PERFORMANCE OF THIS SOFTWARE.
69
- ***************************************************************************** */
70
-
71
- var __assign$3 = function() {
72
- __assign$3 = Object.assign || function __assign(t) {
73
- for (var s, i = 1, n = arguments.length; i < n; i++) {
74
- s = arguments[i];
75
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
76
- }
77
- return t;
78
- };
79
- return __assign$3.apply(this, arguments);
80
- };
81
-
82
- function __rest$3(s, e) {
83
- var t = {};
84
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
85
- t[p] = s[p];
86
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
87
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
88
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
89
- t[p[i]] = s[p[i]];
90
- }
91
- return t;
92
- }
93
-
94
- function __spreadArray(to, from, pack) {
95
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
96
- if (ar || !(i in from)) {
97
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
98
- ar[i] = from[i];
99
- }
100
- }
101
- return to.concat(ar || from);
102
- }
103
-
104
- /*! *****************************************************************************
105
- Copyright (c) Microsoft Corporation.
106
-
107
- Permission to use, copy, modify, and/or distribute this software for any
108
- purpose with or without fee is hereby granted.
109
-
110
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
111
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
112
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
113
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
114
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
115
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
116
- PERFORMANCE OF THIS SOFTWARE.
117
- ***************************************************************************** */
118
-
119
- var __assign$2 = function() {
120
- __assign$2 = Object.assign || function __assign(t) {
121
- for (var s, i = 1, n = arguments.length; i < n; i++) {
122
- s = arguments[i];
123
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
124
- }
125
- return t;
126
- };
127
- return __assign$2.apply(this, arguments);
128
- };
129
-
130
- function __rest$2(s, e) {
131
- var t = {};
132
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
133
- t[p] = s[p];
134
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
135
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
136
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
137
- t[p[i]] = s[p[i]];
138
- }
139
- return t;
140
- }
141
-
142
- var _g$2C$1;
143
-
144
- function _extends$4K$1() { _extends$4K$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$4K$1.apply(this, arguments); }
145
-
146
- function SvgCheckCircle$1(props) {
147
- return /*#__PURE__*/React.createElement("svg", _extends$4K$1({
148
- viewBox: "0 0 16 16",
149
- fill: "none",
150
- strokeLinecap: "round",
151
- strokeLinejoin: "round",
152
- width: "1em",
153
- height: "1em"
154
- }, props), _g$2C$1 || (_g$2C$1 = /*#__PURE__*/React.createElement("g", {
155
- stroke: "currentColor"
156
- }, /*#__PURE__*/React.createElement("path", {
157
- d: "M14.667 7.387V8a6.667 6.667 0 11-3.954-6.093"
158
- }), /*#__PURE__*/React.createElement("path", {
159
- d: "M14.667 2.667L8 9.34l-2-2"
160
- }))));
161
- }
162
-
163
- var _g$2z, _defs$1D;
164
-
165
- function _extends$4G() { _extends$4G = 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$4G.apply(this, arguments); }
166
-
167
- function SvgXCircle(props) {
168
- return /*#__PURE__*/React.createElement("svg", _extends$4G({
169
- viewBox: "0 0 16 16",
170
- fill: "none",
171
- strokeLinecap: "round",
172
- strokeLinejoin: "round",
173
- width: "1em",
174
- height: "1em"
175
- }, props), _g$2z || (_g$2z = /*#__PURE__*/React.createElement("g", {
176
- clipPath: "url(#x-circle_svg__clip0_8_6136)",
177
- stroke: "currentColor"
178
- }, /*#__PURE__*/React.createElement("path", {
179
- d: "M8 14.667A6.667 6.667 0 108 1.334a6.667 6.667 0 000 13.333zM10 6l-4 4m0-4l4 4"
180
- }))), _defs$1D || (_defs$1D = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
181
- id: "x-circle_svg__clip0_8_6136"
182
- }, /*#__PURE__*/React.createElement("path", {
183
- fill: "currentColor",
184
- d: "M0 0h16v16H0z"
185
- })))));
186
- }
187
-
188
- var _g$2m$1, _defs$1t$1;
189
-
190
- function _extends$4m$1() { _extends$4m$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$4m$1.apply(this, arguments); }
191
-
192
- function SvgInfo$1(props) {
193
- return /*#__PURE__*/React.createElement("svg", _extends$4m$1({
194
- viewBox: "0 0 16 16",
195
- fill: "none",
196
- strokeLinecap: "round",
197
- strokeLinejoin: "round",
198
- width: "1em",
199
- height: "1em"
200
- }, props), _g$2m$1 || (_g$2m$1 = /*#__PURE__*/React.createElement("g", {
201
- clipPath: "url(#info_svg__clip0_8_5377)",
202
- stroke: "currentColor"
203
- }, /*#__PURE__*/React.createElement("path", {
204
- d: "M8 14.667A6.667 6.667 0 108 1.334a6.667 6.667 0 000 13.333zm0-4V8m0-2.667h.007"
205
- }))), _defs$1t$1 || (_defs$1t$1 = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
206
- id: "info_svg__clip0_8_5377"
207
- }, /*#__PURE__*/React.createElement("path", {
208
- fill: "currentColor",
209
- d: "M0 0h16v16H0z"
210
- })))));
211
- }
212
-
213
- var _path$1D$1;
214
-
215
- function _extends$3H$1() { _extends$3H$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$3H$1.apply(this, arguments); }
216
-
217
- function SvgUser$1(props) {
218
- return /*#__PURE__*/React.createElement("svg", _extends$3H$1({
219
- viewBox: "0 0 16 16",
220
- fill: "none",
221
- strokeLinecap: "round",
222
- strokeLinejoin: "round",
223
- width: "1em",
224
- height: "1em"
225
- }, props), _path$1D$1 || (_path$1D$1 = /*#__PURE__*/React.createElement("path", {
226
- d: "M13.333 14v-1.333A2.667 2.667 0 0010.667 10H5.333a2.667 2.667 0 00-2.666 2.667V14M8 7.333A2.667 2.667 0 108 2a2.667 2.667 0 000 5.333z",
227
- stroke: "currentColor"
228
- })));
229
- }
230
-
231
- var _g$20$1, _defs$1f$1;
232
-
233
- function _extends$3w$1() { _extends$3w$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$3w$1.apply(this, arguments); }
234
-
235
- function SvgError$1(props) {
236
- return /*#__PURE__*/React.createElement("svg", _extends$3w$1({
237
- viewBox: "0 0 16 16",
238
- fill: "none",
239
- strokeLinecap: "round",
240
- strokeLinejoin: "round",
241
- width: "1em",
242
- height: "1em"
243
- }, props), _g$20$1 || (_g$20$1 = /*#__PURE__*/React.createElement("g", {
244
- clipPath: "url(#error_svg__clip0_8_5411)",
245
- stroke: "currentColor"
246
- }, /*#__PURE__*/React.createElement("path", {
247
- d: "M5.24 1.333h5.52l3.907 3.907v5.52l-3.907 3.907H5.24L1.333 10.76V5.24L5.24 1.333zm2.76 4V8m0 2.666h.008"
248
- }))), _defs$1f$1 || (_defs$1f$1 = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
249
- id: "error_svg__clip0_8_5411"
250
- }, /*#__PURE__*/React.createElement("path", {
251
- fill: "currentColor",
252
- d: "M0 0h16v16H0z"
253
- })))));
254
- }
255
-
256
- var _path$1u$1;
257
-
258
- function _extends$3v$1() { _extends$3v$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$3v$1.apply(this, arguments); }
259
-
260
- function SvgWarning$1(props) {
261
- return /*#__PURE__*/React.createElement("svg", _extends$3v$1({
262
- viewBox: "0 0 16 16",
263
- fill: "none",
264
- strokeLinecap: "round",
265
- strokeLinejoin: "round",
266
- width: "1em",
267
- height: "1em"
268
- }, props), _path$1u$1 || (_path$1u$1 = /*#__PURE__*/React.createElement("path", {
269
- d: "M6.86 2.573L1.213 12a1.334 1.334 0 001.14 2h11.294a1.332 1.332 0 001.14-2L9.14 2.573a1.333 1.333 0 00-2.28 0v0zM8 6v2.667m0 2.667h.007",
270
- stroke: "currentColor"
271
- })));
272
- }
273
-
274
- var useIconStyles$1 = makeStyles(function (_a) {
275
- var spacing = _a.spacing, palette = _a.palette;
276
- var getFontSize = function (_a) {
277
- var size = _a.size;
278
- var sizes = {
279
- inherit: 'inherit',
280
- small: spacing(1.5),
281
- medium: spacing(2),
282
- large: spacing(2.5),
283
- 'extra-large': spacing(3),
284
- };
285
- return size ? sizes[size] : 'inherit';
286
- };
287
- var getColor = function (props) {
288
- var semanticColors = ['primary', 'secondary', 'info', 'success', 'warning', 'error'];
289
- var value = 'inherit';
290
- if (props.color) {
291
- if (semanticColors.includes(props.color.split('.')[0])) {
292
- var _a = props.color.split('.'), color = _a[0], _b = _a[1], variant = _b === void 0 ? 'main' : _b;
293
- // @ts-expect-error - todo.
294
- value = palette[color][variant];
295
- }
296
- else if (props.color.search(/^(rgb|hsla|#)/) !== -1) {
297
- value = props.color;
298
- }
299
- }
300
- return value;
301
- };
302
- return {
303
- root: {
304
- color: getColor,
305
- fontSize: getFontSize,
306
- strokeWidth: '1.3px',
307
- },
308
- };
309
- });
310
-
311
- var classnames$2 = {exports: {}};
312
-
313
- /*!
314
- Copyright (c) 2018 Jed Watson.
315
- Licensed under the MIT License (MIT), see
316
- http://jedwatson.github.io/classnames
317
- */
318
-
319
- (function (module) {
320
- /* global define */
321
-
322
- (function () {
323
-
324
- var hasOwn = {}.hasOwnProperty;
325
-
326
- function classNames() {
327
- var classes = [];
328
-
329
- for (var i = 0; i < arguments.length; i++) {
330
- var arg = arguments[i];
331
- if (!arg) continue;
332
-
333
- var argType = typeof arg;
334
-
335
- if (argType === 'string' || argType === 'number') {
336
- classes.push(arg);
337
- } else if (Array.isArray(arg)) {
338
- if (arg.length) {
339
- var inner = classNames.apply(null, arg);
340
- if (inner) {
341
- classes.push(inner);
342
- }
343
- }
344
- } else if (argType === 'object') {
345
- if (arg.toString === Object.prototype.toString) {
346
- for (var key in arg) {
347
- if (hasOwn.call(arg, key) && arg[key]) {
348
- classes.push(key);
349
- }
350
- }
351
- } else {
352
- classes.push(arg.toString());
353
- }
354
- }
355
- }
356
-
357
- return classes.join(' ');
358
- }
359
-
360
- if (module.exports) {
361
- classNames.default = classNames;
362
- module.exports = classNames;
363
- } else {
364
- window.classNames = classNames;
365
- }
366
- }());
367
- }(classnames$2));
368
-
369
- var classNames = classnames$2.exports;
370
-
371
- var iconStaticClassName$1 = 'pop-icon';
372
- var Icon$1 = function (props) {
373
- var icon = props.icon, className = props.className, restProps = __rest$2(props, ["icon", "className"]);
374
- var hasAccessibleAttr = Boolean(restProps['aria-describedby'] || restProps['aria-label']);
375
- if (!hasAccessibleAttr && restProps['aria-hidden'] === undefined) {
376
- restProps['aria-hidden'] = true;
377
- }
378
- var classes = useIconStyles$1(props);
379
- var isValid = true;
380
- if (!icon || (typeof icon === 'function' && icon({}) === undefined)) {
381
- isValid = false;
382
- }
383
- return isValid
384
- ? createElement(icon, __assign$2({ className: classNames([classes.root, iconStaticClassName$1, className]) }, restProps))
385
- : null;
386
- };
387
- Icon$1.defaultProps = {
388
- size: 'inherit',
389
- color: 'inherit',
390
- };
391
- Icon$1.displayName = 'Icon';
392
-
393
- var LoadingStatus$1;
394
- (function (LoadingStatus) {
395
- LoadingStatus["ERROR"] = "ERROR";
396
- LoadingStatus["LOADED"] = "LOADED";
397
- LoadingStatus["PENDING"] = "PENDING";
398
- })(LoadingStatus$1 || (LoadingStatus$1 = {}));
399
- var useImgProps$1 = function (avatarProps) {
400
- var _a = React__default.useState(LoadingStatus$1.PENDING), loaded = _a[0], setLoaded = _a[1];
401
- var imgProps = __assign$2(__assign$2({}, avatarProps.imgProps), { onLoad: function (event) {
402
- var _a, _b;
403
- setLoaded(LoadingStatus$1.LOADED);
404
- (_b = (_a = avatarProps.imgProps) === null || _a === void 0 ? void 0 : _a.onLoad) === null || _b === void 0 ? void 0 : _b.call(_a, event);
405
- } });
406
- return { imgProps: imgProps, loaded: loaded };
407
- };
408
-
409
- var getAvatarDimensions$1 = function (theme, props) {
410
- var factors = {
411
- 'extra-small': 3,
412
- small: 4,
413
- medium: 5,
414
- large: 6,
415
- 'extra-large': 12.5,
416
- };
417
- var sizeFactor = factors[props.size || 'medium'];
418
- return theme.spacing(sizeFactor);
419
- };
420
- var getAvatarFontSize$1 = function (props) {
421
- var fontSizes = {
422
- 'extra-small': '0.75rem',
423
- small: '1rem',
424
- medium: '1rem',
425
- large: '1.25rem',
426
- 'extra-large': '3.5rem',
427
- };
428
- return fontSizes[props.size];
429
- };
430
- var useAvatarStyles$1 = makeStyles$1(function (theme) { return ({
431
- root: function (props) { return ({
432
- width: getAvatarDimensions$1(theme, props),
433
- height: getAvatarDimensions$1(theme, props),
434
- fontSize: getAvatarFontSize$1(props),
435
- backgroundColor: props.loaded === LoadingStatus$1.LOADED ? 'transparent' : props.background,
436
- color: theme.palette.getContrastText(props.background),
437
- objectFit: props.fit,
438
- }); },
439
- fallback: function (props) { return ({
440
- fontSize: getAvatarDimensions$1(theme, props),
441
- strokeWidth: 1,
442
- }); },
443
- }); });
444
-
445
- var Avatar$1 = forwardRef(function (props, ref) {
446
- var children = props.children, src = props.src, alt = props.alt, fallback = props.fallback, muiProps = __rest$2(props, ["children", "src", "alt", "fallback"]);
447
- var _a = useImgProps$1(props), imgProps = _a.imgProps, loaded = _a.loaded;
448
- var classes = useAvatarStyles$1(__assign$2(__assign$2({}, props), { loaded: loaded }));
449
- var displayAltTextFallback = src && alt;
450
- var displayNoFallback = fallback === 'none';
451
- var displayCustomFallback = fallback !== 'none' && typeof fallback !== 'undefined';
452
- var Fallback;
453
- if (displayAltTextFallback) {
454
- Fallback = null;
455
- }
456
- else if (displayNoFallback) {
457
- Fallback = ' ';
458
- }
459
- else if (displayCustomFallback) {
460
- Fallback = fallback;
461
- }
462
- else {
463
- Fallback = React__default.createElement(Icon$1, { icon: SvgUser$1, className: classes.fallback });
464
- }
465
- return (React__default.createElement(MuiAvatar, __assign$2({ ref: ref, classes: { root: classes.root }, src: src, alt: alt }, muiProps, { imgProps: imgProps }), children || Fallback));
466
- });
467
- Avatar$1.defaultProps = {
468
- size: 'medium',
469
- fit: 'cover',
470
- background: '#E0E0E0',
471
- };
472
- Avatar$1.displayName = 'Avatar';
473
-
474
- makeStyles$1(function (theme) { return ({
475
- circle: {
476
- backgroundColor: theme.palette.grey[300],
477
- borderRadius: '50%',
478
- height: theme.spacing(0.65),
479
- width: theme.spacing(0.65),
480
- margin: theme.spacing(1) + "px 0 " + theme.spacing(1) + "px " + theme.spacing(1) + "px",
481
- },
482
- container: {
483
- border: "1px solid " + theme.palette.secondary.light,
484
- borderRadius: theme.spacing(0.5),
485
- flexGrow: 1,
486
- },
487
- titleBar: {
488
- display: 'flex',
489
- flexDirection: 'row',
490
- borderBottom: "1px solid " + theme.palette.secondary.light,
491
- width: '100%',
492
- },
493
- }); });
494
-
495
- makeStyles$1(function () { return ({
496
- root: {
497
- minWidth: 'unset',
498
- },
499
- label: {
500
- textTransform: function (_a) {
501
- var textTransform = _a.textTransform;
502
- return textTransform;
503
- },
504
- },
505
- }); });
506
-
507
- var Checkbox$1 = forwardRef(function (props, ref) {
508
- var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest$2(props, ["label", "disabled", "LabelProps"]);
509
- var control = React__default.createElement(MuiCheckbox, __assign$2({ disabled: label ? undefined : disabled }, muiProps));
510
- return label ? (React__default.createElement(FormControlLabel, __assign$2({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
511
- });
512
- Checkbox$1.displayName = 'Checkbox';
513
-
514
- var getBackground$2 = function (theme) { return function (props) {
515
- var variant = props.variant, severity = props.severity;
516
- var background = theme.palette.grey[100];
517
- var backgrounds = {
518
- outlined: 'none',
519
- error: 'error.main',
520
- warning: 'warning.main',
521
- info: 'info.light',
522
- success: 'success.light',
523
- };
524
- if (variant === 'outlined') {
525
- background = backgrounds[variant];
526
- }
527
- else if (severity) {
528
- var _a = backgrounds[severity].split('.'), color = _a[0], colorVariant = _a[1];
529
- // @ts-expect-error - todo.
530
- background = theme.palette[color][colorVariant];
531
- }
532
- return background;
533
- }; };
534
- var getColor$2 = function (theme) { return function (props) {
535
- var variant = props.variant, severity = props.severity;
536
- var textColor;
537
- if (variant === 'outlined' && severity) {
538
- var textColors = {
539
- error: theme.palette.error.main,
540
- info: theme.palette.info.main,
541
- warning: theme.palette.warning.dark,
542
- success: theme.palette.success.dark,
543
- };
544
- textColor = textColors[severity];
545
- }
546
- else if (variant === 'outlined' && !severity) {
547
- textColor = theme.palette.grey[700];
548
- }
549
- else if ((variant === 'default' || variant === undefined) && severity) {
550
- var textColors = {
551
- error: theme.palette.common.white,
552
- info: theme.palette.secondary.main,
553
- warning: theme.palette.secondary.main,
554
- success: theme.palette.secondary.main,
555
- };
556
- textColor = textColors[severity];
557
- }
558
- return textColor;
559
- }; };
560
- var getBorder$1 = function (theme) { return function (props) {
561
- var variant = props.variant, severity = props.severity;
562
- var borderColor;
563
- if (variant === 'outlined' && severity) {
564
- var borderColors = {
565
- error: theme.palette.error.main,
566
- info: theme.palette.info.main,
567
- warning: theme.palette.warning.dark,
568
- success: theme.palette.success.dark,
569
- };
570
- borderColor = borderColors[severity];
571
- }
572
- return borderColor;
573
- }; };
574
- // using `any` here is a bit of cheating but it doesn't matter since this doesn't depend on
575
- // any component-specific props
576
- var useChipStyles = makeStyles$1(function (theme) { return ({
577
- root: {
578
- background: getBackground$2(theme),
579
- color: getColor$2(theme),
580
- borderColor: getBorder$1(theme),
581
- borderRadius: theme.spacing(0.5),
582
- },
583
- icon: {
584
- color: 'inherit',
585
- height: theme.spacing(2),
586
- width: theme.spacing(2),
587
- },
588
- deleteIcon: {
589
- color: theme.palette.grey[500],
590
- },
591
- }); });
592
-
593
- var IconDictionary = {
594
- error: SvgError$1,
595
- info: SvgInfo$1,
596
- success: SvgCheckCircle$1,
597
- warning: SvgWarning$1,
598
- };
599
- var Chip = function (props) {
600
- var severity = props.severity, restProps = __rest$2(props, ["severity"]);
601
- var classes = useChipStyles(props);
602
- var icon = severity ? React__default.createElement(IconDictionary[severity]) : undefined;
603
- var deleteIcon = React__default.createElement(SvgXCircle);
604
- return React__default.createElement(MuiChip, __assign$2({ classes: classes, icon: icon, deleteIcon: deleteIcon }, restProps));
605
- };
606
- Chip.displayName = 'Chip';
607
-
608
- var defaultTypographyProps$1 = {
609
- variant: 'body1',
610
- };
611
-
612
- var weights$1 = {
613
- regular: 400,
614
- medium: 500,
615
- 'semi-bold': 600,
616
- bold: 700,
617
- };
618
- var getCustomColor$1 = function (theme, color) {
619
- var isCommonColor = color && ['white', 'black'].includes(color);
620
- var isGreyColor = color && color.match(/^grey\.\d{3}/);
621
- var isSemanticColor = color && color.match(/(primary|secondary|info|success|error|warning).?(light|dark)?/);
622
- var isTextColor = color && ['textPrimary', 'textSecondary'].includes(color);
623
- switch (true) {
624
- case isCommonColor:
625
- // @ts-expect-error - todo.
626
- return theme.palette.common[color];
627
- case Boolean(isGreyColor):
628
- var scale = color.split('.')[1];
629
- // @ts-expect-error - todo.
630
- return theme.palette.grey[scale] || theme.palette.grey[900];
631
- case Boolean(isSemanticColor):
632
- var _a = color.split('.'), paletteKey = _a[0], _b = _a[1], variant = _b === void 0 ? 'main' : _b;
633
- // @ts-expect-error - todo.
634
- return theme.palette[paletteKey][variant];
635
- case isTextColor:
636
- // @ts-expect-error - todo.
637
- return theme.palette.text[color.slice(4).toLowerCase()];
638
- default:
639
- return undefined;
640
- }
641
- };
642
- var useTypographyStyles$1 = makeStyles$1(function (theme) {
643
- var _a;
644
- return ({
645
- root: (_a = {},
646
- _a["& ." + iconStaticClassName$1] = {
647
- position: 'relative',
648
- top: '0.125em',
649
- padding: '0 0.125em',
650
- boxSizing: 'content-box',
651
- },
652
- _a.fontFamily = theme.typography.fontFamily,
653
- _a.fontWeight = function (_a) {
654
- var variant = _a.variant, weight = _a.weight;
655
- return (weight ? weights$1[weight] : theme.typography[variant].fontWeight);
656
- },
657
- _a.fontSize = function (_a) {
658
- var variant = _a.variant;
659
- return theme.typography[variant].fontSize;
660
- },
661
- _a.lineHeight = function (_a) {
662
- var variant = _a.variant;
663
- return theme.typography[variant].lineHeight;
664
- },
665
- _a.textTransform = function (_a) {
666
- var variant = _a.variant;
667
- return theme.typography[variant].textTransform;
668
- },
669
- _a.color = function (_a) {
670
- var color = _a.color, variant = _a.variant;
671
- return (color && getCustomColor$1(theme, color)) || theme.typography[variant].color;
672
- },
673
- _a),
674
- caption: {
675
- display: 'inline',
676
- },
677
- overline: {
678
- display: 'inline',
679
- },
680
- });
681
- });
682
-
683
- var Typography$1 = function (props) {
684
- props.weight; props.color; var TypographyRef = props.TypographyRef, restProps = __rest$2(props, ["weight", "color", "TypographyRef"]);
685
- var classes = useTypographyStyles$1(__assign$2({}, props));
686
- var variantMapping = { subtitle1: 'p' };
687
- return React__default.createElement(Typography$2, __assign$2({ classes: classes, variantMapping: variantMapping, ref: TypographyRef }, restProps));
688
- };
689
- Typography$1.displayName = 'Typography';
690
- Typography$1.defaultProps = defaultTypographyProps$1;
691
-
692
- var getFadeStop$1 = function (_a, typographyVariant) {
693
- var typography = _a.typography;
694
- // @ts-expect-error - todo.
695
- return !isNaN(Number(typography[typographyVariant].lineHeight))
696
- ? // @ts-expect-error - todo.
697
- typography[typographyVariant].lineHeight + "rem"
698
- : // @ts-expect-error - todo.
699
- typography[typographyVariant].lineHeight;
700
- };
701
- makeStyles(function (theme) { return ({
702
- overlay: {
703
- position: 'absolute',
704
- top: 0,
705
- left: 0,
706
- height: '100%',
707
- width: '100%',
708
- background: function (props) { return "linear-gradient(to top, white, #FFF0 " + getFadeStop$1(theme, props.typographyVariant) + ")"; },
709
- },
710
- }); });
711
-
712
- var SemanticColors$1;
713
- (function (SemanticColors) {
714
- SemanticColors["PRIMARY_MAIN"] = "primary.main";
715
- SemanticColors["PRIMARY_DARK"] = "primary.dark";
716
- SemanticColors["PRIMARY_LIGHT"] = "primary.light";
717
- SemanticColors["SECONDARY_MAIN"] = "secondary.main";
718
- SemanticColors["SECONDARY_DARK"] = "secondary.dark";
719
- SemanticColors["SECONDARY_LIGHT"] = "secondary.light";
720
- })(SemanticColors$1 || (SemanticColors$1 = {}));
721
- makeStyles(function (theme) { return ({
722
- dividerRoot: {
723
- gap: theme.spacing(2),
724
- },
725
- textRoot: {
726
- color: function (props) {
727
- var textColor = props.textColor;
728
- if (Object.values(SemanticColors$1).includes(textColor)) {
729
- var _a = textColor.split('.'), semanticColor = _a[0], shade = _a[1];
730
- // @ts-expect-error - todo.
731
- return theme.palette[semanticColor][shade];
732
- }
733
- else if (textColor) {
734
- return textColor;
735
- }
736
- else {
737
- return 'black';
738
- }
739
- },
740
- textTransform: function (props) { return props.textTransform; },
741
- },
742
- dividerLine: {
743
- backgroundColor: function (props) {
744
- var dividerColor = props.dividerColor;
745
- if (Object.values(SemanticColors$1).includes(dividerColor)) {
746
- var _a = dividerColor.split('.'), semanticColor = _a[0], shade = _a[1];
747
- // @ts-expect-error - todo.
748
- return theme.palette[semanticColor][shade];
749
- }
750
- else if (dividerColor) {
751
- return dividerColor;
752
- }
753
- else {
754
- return theme.palette.grey[500];
755
- }
756
- },
757
- },
758
- }); });
759
-
760
- var IconButton$1 = forwardRef(function (props, ref) {
761
- return React__default.createElement(MuiIconButton, __assign$2({ ref: ref }, props));
762
- });
763
- IconButton$1.displayName = 'IconButton';
764
- IconButton$1.defaultProps = {
765
- color: 'secondary',
766
- };
767
-
768
- var useLinkStyles$1 = makeStyles$1(function (theme) { return ({
769
- root: function (props) {
770
- var _a;
771
- return (__assign$2(__assign$2({ display: 'flex' }, (props.color === undefined && { color: theme.palette.info.main })), (_a = {}, _a["& ." + iconStaticClassName$1] = {
772
- alignSelf: 'center',
773
- }, _a)));
774
- },
775
- }); });
776
-
777
- // eslint-disable-next-line react/display-name -- false positive
778
- var Link$1 = forwardRef(function (props, ref) {
779
- var children = props.children, muiProps = __rest$2(props, ["children"]);
780
- var classes = useLinkStyles$1(props);
781
- return (React__default.createElement(Link$2, __assign$2({ ref: ref, classes: { root: classes.root } }, muiProps), children));
782
- });
783
- Link$1.defaultProps = {
784
- variant: 'body1',
785
- };
786
- Link$1.displayName = 'Link';
787
-
788
- var useStyles$4$2 = makeStyles(function (_a) {
789
- var spacing = _a.spacing;
790
- return ({
791
- root: {
792
- '&:last-child': {
793
- marginBottom: 0,
794
- },
795
- marginBottom: spacing(4),
796
- padding: spacing(4),
797
- },
798
- });
799
- });
800
- var Paper$1 = forwardRef(function (props, ref) {
801
- var legacyStyles = props.legacyStyles, restProps = __rest$2(props, ["legacyStyles"]);
802
- var classes = useStyles$4$2(props);
803
- return React__default.createElement(Paper$2, __assign$2({}, ref, { classes: __assign$2({}, (legacyStyles && classes)) }, restProps));
804
- });
805
- Paper$1.displayName = 'Paper';
806
- Paper$1.defaultProps = {
807
- legacyStyles: false,
808
- };
809
-
810
- var Radio$1 = forwardRef(function (props, ref) {
811
- var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest$2(props, ["label", "disabled", "LabelProps"]);
812
- var control = React__default.createElement(MuiRadio, __assign$2({ disabled: label ? undefined : disabled }, muiProps));
813
- return label ? (React__default.createElement(FormControlLabel, __assign$2({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
814
- });
815
- Radio$1.displayName = 'Radio';
816
-
817
- makeStyles$1(function () { return ({
818
- textfield: {
819
- background: function (props) { return (props.backgroundTransparency ? '#FFFFFF44' : 'none'); },
820
- borderTopLeftRadius: 4,
821
- borderBottomLeftRadius: 4,
822
- '& fieldset': {
823
- borderRight: 'none',
824
- borderTopRightRadius: 0,
825
- borderBottomRightRadius: 0,
826
- },
827
- },
828
- button: {
829
- borderTopLeftRadius: 0,
830
- borderBottomLeftRadius: 0,
831
- alignSelf: 'stretch',
832
- },
833
- input: {
834
- color: function (props) { return props.inputTextColor || 'inherit'; },
835
- '&$focused fieldset': {
836
- top: -4,
837
- },
838
- },
839
- focused: {},
840
- }); });
841
-
842
- var useSwitchStyles$1 = makeStyles$1(function (theme) { return ({
843
- checked: {
844
- '& $thumb': {
845
- background: theme.palette.success.main,
846
- },
847
- '&& + $track': {
848
- backgroundColor: theme.palette.success.main,
849
- },
850
- },
851
- thumb: {},
852
- track: {},
853
- }); });
854
-
855
- var Switch$1 = forwardRef(function (props, ref) {
856
- var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest$2(props, ["label", "disabled", "LabelProps"]);
857
- var classes = useSwitchStyles$1(props);
858
- var control = React__default.createElement(MuiSwitch, __assign$2({ classes: classes, disabled: label ? undefined : disabled }, muiProps));
859
- return label ? (React__default.createElement(FormControlLabel, __assign$2({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
860
- });
861
- Switch$1.displayName = 'Switch';
862
-
863
- var useToggleButtonStyles$1 = makeStyles$1(function (theme) { return ({
864
- root: {
865
- color: theme.palette.text.primary,
866
- },
867
- selected: {
868
- '&&': {
869
- '&:hover': {
870
- backgroundColor: function (props) { return theme.palette[props.color || 'primary'].dark; },
871
- },
872
- backgroundColor: function (props) { return theme.palette[props.color || 'primary'].main; },
873
- color: 'white',
874
- },
875
- },
876
- }); });
877
-
878
- var ToggleButton$1 = forwardRef(function (props, ref) {
879
- var children = props.children, muiProps = __rest$2(props, ["children"]);
880
- var classes = useToggleButtonStyles$1(props);
881
- return (React__default.createElement(MuiToggleButton, __assign$2({ ref: ref, classes: {
882
- root: classes.root,
883
- selected: classes.selected,
884
- } }, muiProps), children));
885
- });
886
- ToggleButton$1.defaultProps = {
887
- color: 'primary',
888
- };
889
- ToggleButton$1.displayName = 'ToggleButton';
890
-
891
- var useToggleButtonGroupStyles$1 = makeStyles$1(function (theme) { return ({
892
- root: {
893
- '&&': {
894
- backgroundColor: theme.palette.grey[300],
895
- },
896
- },
897
- }); });
898
-
899
- var ToggleButtonGroup$1 = forwardRef(function (props, ref) {
900
- var children = props.children, _a = props.color, color = _a === void 0 ? 'primary' : _a, muiProps = __rest$2(props, ["children", "color"]);
901
- var classes = useToggleButtonGroupStyles$1(props);
902
- var childrenWithProps = React__default.Children.map(children, function (child) {
903
- if (!React__default.isValidElement(child)) {
904
- return null;
905
- }
906
- return React__default.cloneElement(child, { color: color });
907
- });
908
- return (React__default.createElement(MuiToggleButtonGroup, __assign$2({ ref: ref, classes: { root: classes.root } }, muiProps), childrenWithProps));
909
- });
910
- ToggleButtonGroup$1.displayName = 'ToggleButtonGroup';
911
-
912
- var useTooltipStyles$1 = makeStyles$1(function (_a) {
913
- var typography = _a.typography;
914
- return ({
915
- tooltip: {
916
- fontSize: typography.pxToRem(16),
917
- },
918
- });
919
- });
920
-
921
- var Tooltip$1 = forwardRef(function (props, ref) {
922
- var classes = useTooltipStyles$1(props);
923
- return React__default.createElement(MuiTooltip, __assign$2({ ref: ref, classes: classes }, props));
924
- });
925
- Tooltip$1.displayName = 'Tooltip';
926
-
927
- makeStyles(function () { return ({
928
- root: {
929
- height: 56,
930
- },
931
- }); });
932
- makeStyles(function (theme) { return ({
933
- root: {
934
- height: '100%',
935
- width: 'min-content',
936
- borderRadius: theme.spacing(1),
937
- },
938
- input: {
939
- '&::-webkit-clear-button, &::-webkit-outer-spin-button, &::-webkit-inner-spin-button': {
940
- display: 'none',
941
- },
942
- '-moz-appearance': 'textfield',
943
- minWidth: 40,
944
- padding: 0,
945
- textAlign: 'center',
946
- },
947
- adornedStart: {
948
- padding: 0,
949
- },
950
- adornedEnd: {
951
- padding: 0,
952
- },
953
- }); });
954
-
955
- makeStyles(function () { return ({
956
- root: {
957
- display: 'flex',
958
- flexDirection: 'column',
959
- alignItems: 'center',
960
- gridGap: 16,
961
- },
962
- }); });
963
-
964
- var FollowerAuthenticationDialogContext$1 = createContext(null);
965
- FollowerAuthenticationDialogContext$1.Provider;
966
-
967
- makeStyles(function () { return ({
968
- form: {
969
- display: 'flex',
970
- flexDirection: 'column',
971
- alignItems: 'center',
972
- width: '100%',
973
- gridGap: 16,
974
- },
975
- }); });
976
-
977
- makeStyles(function () { return ({
978
- main: {
979
- width: '100%',
980
- display: 'flex',
981
- flexDirection: 'column',
982
- gridGap: 16,
983
- },
984
- }); });
985
-
986
- makeStyles(function () { return ({
987
- root: {
988
- position: 'absolute',
989
- top: 0,
990
- right: 0,
991
- },
992
- }); });
993
-
994
- var useTableRowStyles = makeStyles(function (theme) { return ({
995
- root: function () { return ({
996
- '&:nth-child(even)': {
997
- backgroundColor: theme.palette.grey[100],
998
- },
999
- }); },
1000
- }); });
1001
-
1002
- var TableRow = function (props) {
1003
- var children = props.children, restProps = __rest$3(props, ["children"]);
1004
- var root = useTableRowStyles(props).root;
1005
- return (React__default.createElement("tr", __assign$3({ "data-table-element": "body-row", className: root }, restProps), children));
1006
- };
1007
-
1008
- var tableConstants = {
1009
- tableTypography: 'body1',
1010
- cellPaddingFactor: 2,
1011
- headerBorder: 2,
1012
- };
1013
-
1014
- var coercedValueIncludesString = function (row, columnId, value) {
1015
- if (value === '')
1016
- return true;
1017
- var cellValue = row.getValue(columnId);
1018
- return String(cellValue).toLowerCase().includes(value.toLowerCase());
1019
- };
1020
-
1021
- var getTableMinHeight = function (rootRef, pageSize) {
1022
- var defaultBodyRowHeight = 56;
1023
- var defaultHeaderRowHeight = 57;
1024
- var defaultFooterHeight = 88;
1025
- var minHeight = defaultBodyRowHeight * pageSize + defaultHeaderRowHeight + defaultFooterHeight;
1026
- if (rootRef === null || rootRef === void 0 ? void 0 : rootRef.current) {
1027
- var rootTableNode = rootRef.current;
1028
- var headerRowNode = rootTableNode.querySelector("[data-table-element=\"header-row\"]");
1029
- var bodyRowNode = rootTableNode.querySelector("[data-table-element=\"body-row\"]");
1030
- if (headerRowNode && bodyRowNode) {
1031
- var headerRowHeight = headerRowNode.getBoundingClientRect().height;
1032
- var bodyRowHeight = bodyRowNode.getBoundingClientRect().height;
1033
- minHeight = headerRowHeight + bodyRowHeight * pageSize + defaultFooterHeight;
1034
- }
1035
- }
1036
- return minHeight;
1037
- };
1038
-
1039
- var useTableCellStyles = makeStyles(function (theme) { return ({
1040
- root: function () { return ({
1041
- padding: theme.spacing(tableConstants.cellPaddingFactor),
1042
- }); },
1043
- }); });
1044
-
1045
- var TableCell = function (props) {
1046
- var children = props.children, restProps = __rest$3(props, ["children"]);
1047
- var root = useTableCellStyles(props).root;
1048
- return (React__default.createElement("td", __assign$3({ className: root }, restProps), children));
1049
- };
1050
-
1051
- var TableBody = function (props) {
1052
- var children = props.children, restProps = __rest$3(props, ["children"]);
1053
- return React__default.createElement("tbody", __assign$3({}, restProps), children);
1054
- };
1055
-
1056
- var useStyles$6 = makeStyles(function (_a) {
1057
- var typography = _a.typography;
1058
- return ({
1059
- root: function (_a) {
1060
- var fullWidth = _a.fullWidth;
1061
- return ({
1062
- display: fullWidth ? 'flex' : 'inline-flex',
1063
- flexDirection: 'column',
1064
- });
1065
- },
1066
- table: function (_a) {
1067
- var fullWidth = _a.fullWidth;
1068
- return (__assign$3(__assign$3({ borderCollapse: 'collapse' }, (fullWidth && { width: '100%' })), typography[tableConstants.tableTypography]));
1069
- },
1070
- tableContainer: function () { return ({
1071
- maxWidth: '100%',
1072
- overflowX: 'auto',
1073
- overflowY: 'hidden',
1074
- }); },
1075
- });
1076
- });
1077
-
1078
- var TableHeader = function (props) {
1079
- var children = props.children, restProps = __rest$3(props, ["children"]);
1080
- return React__default.createElement("thead", __assign$3({}, restProps), children);
1081
- };
1082
-
1083
- var TableFooter = function (props) {
1084
- return (React__default.createElement(Box, { display: "flex", justifyContent: "center", alignItems: "end", paddingTop: 3, paddingBottom: 4 }, props.children));
1085
- };
1086
-
1087
- var useStyles$5 = makeStyles(function (theme) { return ({
1088
- buttonBox: {
1089
- '& > :last-child': {
1090
- marginLeft: theme.spacing(2),
1091
- },
1092
- display: 'flex',
1093
- justifyContent: 'flex-end',
1094
- padding: "0px " + theme.spacing(3) + "px " + theme.spacing(3) + "px " + theme.spacing(3) + "px",
1095
- },
1096
- buttonLabel: {
1097
- fontWeight: 400,
1098
- },
1099
- filterPopoverContents: {
1100
- backgroundColor: 'white',
1101
- borderRadius: theme.spacing(1),
1102
- position: 'relative',
1103
- margin: '10px',
1104
- marginTop: theme.spacing(2),
1105
- width: '323px',
1106
- '&::before': {
1107
- backgroundColor: 'white',
1108
- borderRadius: theme.spacing(0.5),
1109
- content: '""',
1110
- display: 'block',
1111
- filter: 'drop-shadow(4px 4px 3px rgba(0, 0, 0, 0.14)) drop-shadow(0px 1px 5px rgba(0, 0, 0, 0.12))',
1112
- position: 'absolute',
1113
- width: theme.spacing(2.5),
1114
- height: theme.spacing(2.5),
1115
- top: -7,
1116
- transform: 'rotate(45deg)',
1117
- left: 'calc(90% - 12px)',
1118
- zIndex: 0,
1119
- },
1120
- '&::after': {
1121
- backgroundColor: 'white',
1122
- content: '""',
1123
- display: 'block',
1124
- position: 'absolute',
1125
- top: 0,
1126
- left: 'calc(80%)',
1127
- width: theme.spacing(6),
1128
- height: theme.spacing(4),
1129
- },
1130
- },
1131
- menuTitle: {
1132
- fontWeight: 400,
1133
- fontSize: '20px',
1134
- paddingBottom: theme.spacing(2),
1135
- },
1136
- selectInput: {
1137
- margin: '8px 0',
1138
- },
1139
- }); });
1140
-
1141
- var _path$2p;
1142
-
1143
- function _extends$5q() { _extends$5q = 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$5q.apply(this, arguments); }
1144
-
1145
- function SvgChevronDown(props) {
1146
- return /*#__PURE__*/React.createElement("svg", _extends$5q({
1147
- viewBox: "0 0 16 16",
1148
- fill: "none",
1149
- strokeLinecap: "round",
1150
- strokeLinejoin: "round",
1151
- width: "1em",
1152
- height: "1em"
1153
- }, props), _path$2p || (_path$2p = /*#__PURE__*/React.createElement("path", {
1154
- d: "M4 6l4 4 4-4",
1155
- stroke: "currentColor"
1156
- })));
1157
- }
1158
-
1159
- var _path$2o;
1160
-
1161
- function _extends$5p() { _extends$5p = 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$5p.apply(this, arguments); }
1162
-
1163
- function SvgChevronUp(props) {
1164
- return /*#__PURE__*/React.createElement("svg", _extends$5p({
1165
- viewBox: "0 0 16 16",
1166
- fill: "none",
1167
- strokeLinecap: "round",
1168
- strokeLinejoin: "round",
1169
- width: "1em",
1170
- height: "1em"
1171
- }, props), _path$2o || (_path$2o = /*#__PURE__*/React.createElement("path", {
1172
- d: "M12 10L8 6l-4 4",
1173
- stroke: "currentColor"
1174
- })));
1175
- }
1176
-
1177
- var _path$2f;
1178
-
1179
- function _extends$59() { _extends$59 = 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$59.apply(this, arguments); }
1180
-
1181
- function SvgSort(props) {
1182
- return /*#__PURE__*/React.createElement("svg", _extends$59({
1183
- viewBox: "0 0 16 16",
1184
- fill: "none",
1185
- strokeLinecap: "round",
1186
- strokeLinejoin: "round",
1187
- width: "1em",
1188
- height: "1em"
1189
- }, props), _path$2f || (_path$2f = /*#__PURE__*/React.createElement("path", {
1190
- d: "M11.333 6L8 2.667 4.667 6m6.666 4L8 13.334 4.667 10",
1191
- stroke: "currentColor"
1192
- })));
1193
- }
1194
-
1195
- var _path$22;
1196
-
1197
- function _extends$4u() { _extends$4u = 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$4u.apply(this, arguments); }
1198
-
1199
- function SvgFilter(props) {
1200
- return /*#__PURE__*/React.createElement("svg", _extends$4u({
1201
- viewBox: "0 0 16 16",
1202
- fill: "none",
1203
- strokeLinecap: "round",
1204
- strokeLinejoin: "round",
1205
- width: "1em",
1206
- height: "1em"
1207
- }, props), _path$22 || (_path$22 = /*#__PURE__*/React.createElement("path", {
1208
- d: "M14.667 2H1.333l5.334 6.307v4.36L9.333 14V8.307L14.667 2z",
1209
- stroke: "currentColor"
1210
- })));
1211
- }
1212
-
1213
- var _path$1P;
1214
-
1215
- function _extends$45() { _extends$45 = 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$45.apply(this, arguments); }
1216
-
1217
- function SvgMore(props) {
1218
- return /*#__PURE__*/React.createElement("svg", _extends$45({
1219
- viewBox: "0 0 16 16",
1220
- fill: "none",
1221
- strokeLinecap: "round",
1222
- strokeLinejoin: "round",
1223
- width: "1em",
1224
- height: "1em"
1225
- }, props), _path$1P || (_path$1P = /*#__PURE__*/React.createElement("path", {
1226
- d: "M8 8.667a.667.667 0 100-1.334.667.667 0 000 1.334zM8 4a.667.667 0 100-1.334A.667.667 0 008 4zm0 9.333A.667.667 0 108 12a.667.667 0 000 1.333z",
1227
- stroke: "currentColor"
1228
- })));
1229
- }
1230
-
1231
- var _path$1J;
1232
-
1233
- function _extends$3X() { _extends$3X = 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$3X.apply(this, arguments); }
1234
-
1235
- function SvgSearch(props) {
1236
- return /*#__PURE__*/React.createElement("svg", _extends$3X({
1237
- viewBox: "0 0 16 16",
1238
- fill: "none",
1239
- strokeLinecap: "round",
1240
- strokeLinejoin: "round",
1241
- width: "1em",
1242
- height: "1em"
1243
- }, props), _path$1J || (_path$1J = /*#__PURE__*/React.createElement("path", {
1244
- d: "M7.333 12.667A5.333 5.333 0 107.333 2a5.333 5.333 0 000 10.667zM14 14l-2.9-2.9",
1245
- stroke: "currentColor"
1246
- })));
1247
- }
1248
-
1249
- var useStyles$4 = makeStyles(function (theme) { return ({
1250
- icon: {
1251
- marginRight: theme.spacing(1.5),
1252
- marginTop: theme.spacing(0.5),
1253
- scale: 1.5,
1254
- },
1255
- selectContainer: {
1256
- padding: '8px 0',
1257
- },
1258
- selectRoot: {
1259
- '&:focus': {
1260
- backgroundColor: 'transparent',
1261
- },
1262
- },
1263
- hidden: {
1264
- display: 'none',
1265
- },
1266
- }); });
1267
-
1268
- var TableContext = createContext({});
1269
-
1270
- var FilterPanelContext = createContext(null);
1271
- var useFilterPanelContext = function () {
1272
- var context = useContext(FilterPanelContext);
1273
- if (!context) {
1274
- throw new Error('useFilterPanelContext has to be used within <FilterPanelContext.Provider>');
1275
- }
1276
- return context;
1277
- };
1278
-
1279
- var SelectFilter = function (props) {
1280
- var _a, _b, _c;
1281
- var options = props.options, columnId = props.columnId, multiple = props.multiple;
1282
- var classes = useStyles$4();
1283
- var _d = useContext(TableContext), table = _d.table, stagedColumnFilters = _d.stagedColumnFilters, stageFilterSelections = _d.stageFilterSelections;
1284
- var _e = useState(false), open = _e[0], setOpen = _e[1];
1285
- var _f = useFilterPanelContext().anchorState, setAnchorEl = _f[1];
1286
- var column = table.getColumn(columnId);
1287
- var meta = column.columnDef.meta;
1288
- var filterName = (_a = meta === null || meta === void 0 ? void 0 : meta.filter) === null || _a === void 0 ? void 0 : _a.name;
1289
- var value = '';
1290
- if (stageFilterSelections && !!stagedColumnFilters.get(columnId)) {
1291
- value = stagedColumnFilters.get(columnId);
1292
- }
1293
- else {
1294
- value = column.getFilterValue();
1295
- }
1296
- var fallbackValue = multiple ? [] : '';
1297
- var filteredOptions = options.map(function (option) {
1298
- if (Array.isArray(value)) {
1299
- if (value.includes(option.value)) {
1300
- return __assign$3(__assign$3({}, option), { hide: !stageFilterSelections });
1301
- }
1302
- }
1303
- if (typeof value === 'string' || typeof value === 'number') {
1304
- if (value === option.value) {
1305
- return __assign$3(__assign$3({}, option), { hide: !stageFilterSelections });
1306
- }
1307
- }
1308
- return __assign$3(__assign$3({}, option), { hide: false });
1309
- });
1310
- var filteredOptionsCount = filteredOptions.filter(function (option) { return !(option === null || option === void 0 ? void 0 : option.hide); }).length;
1311
- var renderedValue = '';
1312
- if (!stageFilterSelections && value && filteredOptions && filteredOptionsCount > 0) {
1313
- if (typeof value === 'string' || typeof value === 'number') {
1314
- renderedValue = (_c = (_b = filteredOptions.find(function (option) { return option.value === value; })) === null || _b === void 0 ? void 0 : _b.label) !== null && _c !== void 0 ? _c : filterName;
1315
- }
1316
- else if (Array.isArray(value) && value.length > 0) {
1317
- renderedValue = value.length + " selected";
1318
- }
1319
- else {
1320
- renderedValue = filterName;
1321
- }
1322
- }
1323
- var handleChange = function (event) {
1324
- event.stopPropagation();
1325
- if (stageFilterSelections) {
1326
- stagedColumnFilters.update(columnId, event.target.value);
1327
- }
1328
- else {
1329
- column.setFilterValue(event.target.value);
1330
- setAnchorEl(null);
1331
- }
1332
- };
1333
- var handleItemClick = function () {
1334
- if (multiple) {
1335
- if (!stageFilterSelections && filteredOptionsCount === 1) {
1336
- setOpen(false);
1337
- }
1338
- else {
1339
- setOpen(false);
1340
- }
1341
- }
1342
- };
1343
- return (React__default.createElement(Box, { className: classes.selectContainer },
1344
- React__default.createElement(FormControl, { variant: "outlined", fullWidth: true },
1345
- React__default.createElement(InputLabel, { id: "select-filter-label-" + filterName }, filterName || 'filter'),
1346
- React__default.createElement(Select, { variant: "outlined", open: open, onOpen: function () { return setOpen(true); }, onClose: function () { return setOpen(false); }, value: value || fallbackValue, displayEmpty: true, multiple: multiple, renderValue: stageFilterSelections ? undefined : function () { return React__default.createElement(Typography$1, null, renderedValue); }, label: filterName || 'filter', labelId: "select-filter-label-" + filterName, disabled: !filteredOptionsCount, IconComponent: SvgChevronDown, onChange: handleChange, fullWidth: true, classes: {
1347
- root: classes.selectRoot,
1348
- icon: classes.icon,
1349
- }, MenuProps: {
1350
- disablePortal: true,
1351
- anchorOrigin: {
1352
- vertical: 'bottom',
1353
- horizontal: 'left',
1354
- },
1355
- transformOrigin: {
1356
- vertical: 'top',
1357
- horizontal: 'left',
1358
- },
1359
- getContentAnchorEl: null,
1360
- } }, filteredOptions.map(function (option, index) {
1361
- return (React__default.createElement(MenuItem, { classes: { root: option.hide ? classes.hidden : undefined }, key: "option-" + value + "-" + index, value: option.value, onClick: handleItemClick }, option.label));
1362
- })))));
1363
- };
1364
-
1365
- var ToggleFilter = function (props) {
1366
- var table = useContext(TableContext).table;
1367
- var columnId = props.columnId;
1368
- var column = table.getColumn(columnId);
1369
- var meta = column.columnDef.meta;
1370
- var filterName = meta.filter.name;
1371
- var value = column.getFilterValue();
1372
- var handleChange = function (event, checked) {
1373
- event.stopPropagation();
1374
- column.setFilterValue(checked);
1375
- };
1376
- return React__default.createElement(FormControlLabel$1, { control: React__default.createElement(Switch$2, { checked: value, onChange: handleChange }), label: filterName });
1377
- };
1378
-
1379
- var FilterControl = function (props) {
1380
- var input = props.input, columnFilter = __rest$3(props, ["input"]);
1381
- var inputDictionary = {
1382
- text: TextField,
1383
- select: SelectFilter,
1384
- 'multi-select': SelectFilter,
1385
- toggle: ToggleFilter,
1386
- };
1387
- var propsDictionary = {
1388
- select: { multiple: false },
1389
- 'multi-select': { multiple: true },
1390
- };
1391
- // @ts-expect-error - todo.
1392
- return React__default.createElement("div", null, createElement(inputDictionary[input], __assign$3(__assign$3({}, columnFilter), propsDictionary[input])));
1393
- };
1394
-
1395
- var useColumnFilters = function (table) {
1396
- var selectedColumnFilters = getSelectedColumnFilters(table.getState());
1397
- var columnFilters = getColumnFilters(table.getAllFlatColumns());
1398
- var hasColumnFilters = columnFilters.length > 0;
1399
- var deselectColumnFilter = makeDeselectColumnFilter(table);
1400
- var formatSelectedFilterText = makeFormatSelectedFilterText(table);
1401
- var resetColumnFilters = table.resetColumnFilters;
1402
- return {
1403
- selectedColumnFilters: selectedColumnFilters,
1404
- columnFilters: columnFilters,
1405
- hasColumnFilters: hasColumnFilters,
1406
- deselectColumnFilter: deselectColumnFilter,
1407
- formatSelectedFilterText: formatSelectedFilterText,
1408
- resetColumnFilters: resetColumnFilters,
1409
- };
1410
- };
1411
- function getSelectedColumnFilters(state) {
1412
- var columnFilters = state.columnFilters;
1413
- var selectedColumnFilters = columnFilters.reduce(function (acc, columnFilter) {
1414
- var id = columnFilter.id, value = columnFilter.value;
1415
- var selections = [];
1416
- if (value) {
1417
- if (Array.isArray(value)) {
1418
- value.forEach(function (innerValue) {
1419
- selections.push({ id: id, value: innerValue });
1420
- });
1421
- }
1422
- else if (typeof value === 'string' || typeof value === 'number') {
1423
- selections.push({ id: id, value: value });
1424
- }
1425
- }
1426
- return __spreadArray(__spreadArray([], acc), selections);
1427
- }, []);
1428
- return selectedColumnFilters;
1429
- }
1430
- function getColumnFilters(columns) {
1431
- return columns
1432
- .map(function (column) {
1433
- var meta = column.columnDef.meta;
1434
- if (meta === null || meta === void 0 ? void 0 : meta.filter) {
1435
- return __assign$3({ columnId: column.id }, meta.filter);
1436
- }
1437
- })
1438
- .filter(Boolean);
1439
- }
1440
- function makeDeselectColumnFilter(table) {
1441
- return function (columnFilter) {
1442
- var column = table.getColumn(columnFilter.id);
1443
- column.setFilterValue(function (prev) {
1444
- if (Array.isArray(prev)) {
1445
- return prev.filter(function (value) { return value !== columnFilter.value; });
1446
- }
1447
- else if (typeof prev === 'string' || typeof prev === 'number') {
1448
- return null;
1449
- }
1450
- return prev;
1451
- });
1452
- };
1453
- }
1454
- function makeFormatSelectedFilterText(table) {
1455
- return function (columnFilter) {
1456
- var column = table.getColumn(columnFilter.id);
1457
- var meta = column.columnDef.meta;
1458
- var name = (meta === null || meta === void 0 ? void 0 : meta.filter.name) || '';
1459
- var optionMatch = meta === null || meta === void 0 ? void 0 : meta.filter.options.find(function (option) { return option.value === columnFilter.value; });
1460
- var label = optionMatch === null || optionMatch === void 0 ? void 0 : optionMatch.label;
1461
- return [name, label];
1462
- };
1463
- }
1464
-
1465
- var useStagedColumnFilters = function (selectedColumnFilters) {
1466
- var _a = useState(function () {
1467
- return selectedColumnFilters.reduce(function (acc, _a) {
1468
- var id = _a.id, value = _a.value;
1469
- if (acc.has(id)) {
1470
- var existingValue = acc.get(id);
1471
- // If the existing value is a string, convert it to an array and add the new value
1472
- if (typeof existingValue === 'string') {
1473
- acc.set(id, [existingValue, value]);
1474
- }
1475
- else {
1476
- existingValue.push(value);
1477
- }
1478
- }
1479
- else {
1480
- acc.set(id, value);
1481
- }
1482
- return acc;
1483
- }, new Map());
1484
- }), columnInputValues = _a[0], setColumnInputValues = _a[1];
1485
- var filterState = {
1486
- update: function (columnId, value) {
1487
- return setColumnInputValues(columnInputValues.set(columnId, value));
1488
- },
1489
- get: function (columnId) { return columnInputValues.get(columnId); },
1490
- clear: function () {
1491
- columnInputValues.clear();
1492
- setColumnInputValues(columnInputValues);
1493
- },
1494
- delete: function (columnFilter) {
1495
- var values = columnInputValues.get(columnFilter.id);
1496
- if (values && Array.isArray(values)) {
1497
- var valueIndex = values.indexOf(columnFilter.value);
1498
- values.splice(valueIndex, 1);
1499
- if (values.length > 0) {
1500
- columnInputValues.set(columnFilter.id, values);
1501
- }
1502
- else {
1503
- columnInputValues.delete(columnFilter.id);
1504
- }
1505
- }
1506
- else {
1507
- columnInputValues.delete(columnFilter.id);
1508
- }
1509
- setColumnInputValues(columnInputValues);
1510
- },
1511
- exist: function () { return columnInputValues.size > 0; },
1512
- };
1513
- return filterState;
1514
- };
1515
-
1516
- /*! *****************************************************************************
1517
- Copyright (c) Microsoft Corporation.
1518
-
1519
- Permission to use, copy, modify, and/or distribute this software for any
1520
- purpose with or without fee is hereby granted.
1521
-
1522
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
1523
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
1524
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
1525
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
1526
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
1527
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
1528
- PERFORMANCE OF THIS SOFTWARE.
1529
- ***************************************************************************** */
1530
-
1531
- var __assign$1 = function() {
1532
- __assign$1 = Object.assign || function __assign(t) {
1533
- for (var s, i = 1, n = arguments.length; i < n; i++) {
1534
- s = arguments[i];
1535
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
1536
- }
1537
- return t;
1538
- };
1539
- return __assign$1.apply(this, arguments);
1540
- };
1541
-
1542
- function __rest$1(s, e) {
1543
- var t = {};
1544
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
1545
- t[p] = s[p];
1546
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
1547
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
1548
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
1549
- t[p[i]] = s[p[i]];
1550
- }
1551
- return t;
1552
- }
1553
-
1554
- /*! *****************************************************************************
1555
- Copyright (c) Microsoft Corporation.
1556
-
1557
- Permission to use, copy, modify, and/or distribute this software for any
1558
- purpose with or without fee is hereby granted.
1559
-
1560
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
1561
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
1562
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
1563
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
1564
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
1565
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
1566
- PERFORMANCE OF THIS SOFTWARE.
1567
- ***************************************************************************** */
1568
-
1569
- var __assign = function() {
1570
- __assign = Object.assign || function __assign(t) {
1571
- for (var s, i = 1, n = arguments.length; i < n; i++) {
1572
- s = arguments[i];
1573
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
1574
- }
1575
- return t;
1576
- };
1577
- return __assign.apply(this, arguments);
1578
- };
1579
-
1580
- function __rest(s, e) {
1581
- var t = {};
1582
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
1583
- t[p] = s[p];
1584
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
1585
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
1586
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
1587
- t[p[i]] = s[p[i]];
1588
- }
1589
- return t;
1590
- }
1591
-
1592
- var _path$1D;
1593
-
1594
- function _extends$3H() { _extends$3H = 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$3H.apply(this, arguments); }
1595
-
1596
- function SvgUser(props) {
1597
- return /*#__PURE__*/React.createElement("svg", _extends$3H({
1598
- viewBox: "0 0 16 16",
1599
- fill: "none",
1600
- strokeLinecap: "round",
1601
- strokeLinejoin: "round",
1602
- width: "1em",
1603
- height: "1em"
1604
- }, props), _path$1D || (_path$1D = /*#__PURE__*/React.createElement("path", {
1605
- d: "M13.333 14v-1.333A2.667 2.667 0 0010.667 10H5.333a2.667 2.667 0 00-2.666 2.667V14M8 7.333A2.667 2.667 0 108 2a2.667 2.667 0 000 5.333z",
1606
- stroke: "currentColor"
1607
- })));
1608
- }
1609
-
1610
- var useIconStyles = makeStyles(function (_a) {
1611
- var spacing = _a.spacing, palette = _a.palette;
1612
- var getFontSize = function (_a) {
1613
- var size = _a.size;
1614
- var sizes = {
1615
- inherit: 'inherit',
1616
- small: spacing(1.5),
1617
- medium: spacing(2),
1618
- large: spacing(2.5),
1619
- 'extra-large': spacing(3),
1620
- };
1621
- return size ? sizes[size] : 'inherit';
1622
- };
1623
- var getColor = function (props) {
1624
- var semanticColors = ['primary', 'secondary', 'info', 'success', 'warning', 'error'];
1625
- var value = 'inherit';
1626
- if (props.color) {
1627
- if (semanticColors.includes(props.color.split('.')[0])) {
1628
- var _a = props.color.split('.'), color = _a[0], _b = _a[1], variant = _b === void 0 ? 'main' : _b;
1629
- // @ts-expect-error - todo.
1630
- value = palette[color][variant];
1631
- }
1632
- else if (props.color.search(/^(rgb|hsla|#)/) !== -1) {
1633
- value = props.color;
1634
- }
1635
- }
1636
- return value;
1637
- };
1638
- return {
1639
- root: {
1640
- color: getColor,
1641
- fontSize: getFontSize,
1642
- strokeWidth: '1.3px',
1643
- },
1644
- };
1645
- });
1646
-
1647
- var classnames$1 = {exports: {}};
1648
-
1649
- /*!
1650
- Copyright (c) 2018 Jed Watson.
1651
- Licensed under the MIT License (MIT), see
1652
- http://jedwatson.github.io/classnames
1653
- */
1654
-
1655
- (function (module) {
1656
- /* global define */
1657
-
1658
- (function () {
1659
-
1660
- var hasOwn = {}.hasOwnProperty;
1661
-
1662
- function classNames() {
1663
- var classes = [];
1664
-
1665
- for (var i = 0; i < arguments.length; i++) {
1666
- var arg = arguments[i];
1667
- if (!arg) continue;
1668
-
1669
- var argType = typeof arg;
1670
-
1671
- if (argType === 'string' || argType === 'number') {
1672
- classes.push(arg);
1673
- } else if (Array.isArray(arg)) {
1674
- if (arg.length) {
1675
- var inner = classNames.apply(null, arg);
1676
- if (inner) {
1677
- classes.push(inner);
1678
- }
1679
- }
1680
- } else if (argType === 'object') {
1681
- if (arg.toString === Object.prototype.toString) {
1682
- for (var key in arg) {
1683
- if (hasOwn.call(arg, key) && arg[key]) {
1684
- classes.push(key);
1685
- }
1686
- }
1687
- } else {
1688
- classes.push(arg.toString());
1689
- }
1690
- }
1691
- }
1692
-
1693
- return classes.join(' ');
1694
- }
1695
-
1696
- if (module.exports) {
1697
- classNames.default = classNames;
1698
- module.exports = classNames;
1699
- } else {
1700
- window.classNames = classNames;
1701
- }
1702
- }());
1703
- }(classnames$1));
1704
-
1705
- var classNames$1 = classnames$1.exports;
1706
-
1707
- var iconStaticClassName = 'pop-icon';
1708
- var Icon = function (props) {
1709
- var icon = props.icon, className = props.className, restProps = __rest(props, ["icon", "className"]);
1710
- var hasAccessibleAttr = Boolean(restProps['aria-describedby'] || restProps['aria-label']);
1711
- if (!hasAccessibleAttr && restProps['aria-hidden'] === undefined) {
1712
- restProps['aria-hidden'] = true;
1713
- }
1714
- var classes = useIconStyles(props);
1715
- var isValid = true;
1716
- if (!icon || (typeof icon === 'function' && icon({}) === undefined)) {
1717
- isValid = false;
1718
- }
1719
- return isValid
1720
- ? createElement(icon, __assign({ className: classNames$1([classes.root, iconStaticClassName, className]) }, restProps))
1721
- : null;
1722
- };
1723
- Icon.defaultProps = {
1724
- size: 'inherit',
1725
- color: 'inherit',
1726
- };
1727
- Icon.displayName = 'Icon';
1728
-
1729
- var LoadingStatus;
1730
- (function (LoadingStatus) {
1731
- LoadingStatus["ERROR"] = "ERROR";
1732
- LoadingStatus["LOADED"] = "LOADED";
1733
- LoadingStatus["PENDING"] = "PENDING";
1734
- })(LoadingStatus || (LoadingStatus = {}));
1735
- var useImgProps = function (avatarProps) {
1736
- var _a = React__default.useState(LoadingStatus.PENDING), loaded = _a[0], setLoaded = _a[1];
1737
- var imgProps = __assign(__assign({}, avatarProps.imgProps), { onLoad: function (event) {
1738
- var _a, _b;
1739
- setLoaded(LoadingStatus.LOADED);
1740
- (_b = (_a = avatarProps.imgProps) === null || _a === void 0 ? void 0 : _a.onLoad) === null || _b === void 0 ? void 0 : _b.call(_a, event);
1741
- } });
1742
- return { imgProps: imgProps, loaded: loaded };
1743
- };
1744
-
1745
- var getAvatarDimensions = function (theme, props) {
1746
- var factors = {
1747
- 'extra-small': 3,
1748
- small: 4,
1749
- medium: 5,
1750
- large: 6,
1751
- 'extra-large': 12.5,
1752
- };
1753
- var sizeFactor = factors[props.size || 'medium'];
1754
- return theme.spacing(sizeFactor);
1755
- };
1756
- var getAvatarFontSize = function (props) {
1757
- var fontSizes = {
1758
- 'extra-small': '0.75rem',
1759
- small: '1rem',
1760
- medium: '1rem',
1761
- large: '1.25rem',
1762
- 'extra-large': '3.5rem',
1763
- };
1764
- return fontSizes[props.size];
1765
- };
1766
- var useAvatarStyles = makeStyles$1(function (theme) { return ({
1767
- root: function (props) { return ({
1768
- width: getAvatarDimensions(theme, props),
1769
- height: getAvatarDimensions(theme, props),
1770
- fontSize: getAvatarFontSize(props),
1771
- backgroundColor: props.loaded === LoadingStatus.LOADED ? 'transparent' : props.background,
1772
- color: theme.palette.getContrastText(props.background),
1773
- objectFit: props.fit,
1774
- }); },
1775
- fallback: function (props) { return ({
1776
- fontSize: getAvatarDimensions(theme, props),
1777
- strokeWidth: 1,
1778
- }); },
1779
- }); });
1780
-
1781
- var Avatar = forwardRef(function (props, ref) {
1782
- var children = props.children, src = props.src, alt = props.alt, fallback = props.fallback, muiProps = __rest(props, ["children", "src", "alt", "fallback"]);
1783
- var _a = useImgProps(props), imgProps = _a.imgProps, loaded = _a.loaded;
1784
- var classes = useAvatarStyles(__assign(__assign({}, props), { loaded: loaded }));
1785
- var displayAltTextFallback = src && alt;
1786
- var displayNoFallback = fallback === 'none';
1787
- var displayCustomFallback = fallback !== 'none' && typeof fallback !== 'undefined';
1788
- var Fallback;
1789
- if (displayAltTextFallback) {
1790
- Fallback = null;
1791
- }
1792
- else if (displayNoFallback) {
1793
- Fallback = ' ';
1794
- }
1795
- else if (displayCustomFallback) {
1796
- Fallback = fallback;
1797
- }
1798
- else {
1799
- Fallback = React__default.createElement(Icon, { icon: SvgUser, className: classes.fallback });
1800
- }
1801
- return (React__default.createElement(MuiAvatar, __assign({ ref: ref, classes: { root: classes.root }, src: src, alt: alt }, muiProps, { imgProps: imgProps }), children || Fallback));
1802
- });
1803
- Avatar.defaultProps = {
1804
- size: 'medium',
1805
- fit: 'cover',
1806
- background: '#E0E0E0',
1807
- };
1808
- Avatar.displayName = 'Avatar';
1809
-
1810
- makeStyles$1(function (theme) { return ({
1811
- circle: {
1812
- backgroundColor: theme.palette.grey[300],
1813
- borderRadius: '50%',
1814
- height: theme.spacing(0.65),
1815
- width: theme.spacing(0.65),
1816
- margin: theme.spacing(1) + "px 0 " + theme.spacing(1) + "px " + theme.spacing(1) + "px",
1817
- },
1818
- container: {
1819
- border: "1px solid " + theme.palette.secondary.light,
1820
- borderRadius: theme.spacing(0.5),
1821
- flexGrow: 1,
1822
- },
1823
- titleBar: {
1824
- display: 'flex',
1825
- flexDirection: 'row',
1826
- borderBottom: "1px solid " + theme.palette.secondary.light,
1827
- width: '100%',
1828
- },
1829
- }); });
1830
-
1831
- var useButtonStyles$1 = makeStyles$1(function () { return ({
1832
- root: {
1833
- minWidth: 'unset',
1834
- },
1835
- label: {
1836
- textTransform: function (_a) {
1837
- var textTransform = _a.textTransform;
1838
- return textTransform;
1839
- },
1840
- },
1841
- }); });
1842
-
1843
- var Button$1 = function (props) {
1844
- props.textTransform; var loading = props.loading, classesOverride = props.classes, className = props.className, ButtonRef = props.ButtonRef, muiProps = __rest(props, ["textTransform", "loading", "classes", "className", "ButtonRef"]);
1845
- props.classes; var styleProps = __rest(props, ["classes"]);
1846
- var classes = useButtonStyles$1(styleProps);
1847
- var typography = useTheme().typography;
1848
- var loadingIndicator = {
1849
- startIcon: React__default.createElement(CircularProgress, { color: "inherit", size: typography.button.fontSize }),
1850
- disabled: true,
1851
- };
1852
- return (React__default.createElement(MuiButton, __assign({ ref: ButtonRef, classes: __assign(__assign({}, classes), classesOverride), className: classNames$1([className, 'pm-button']) }, muiProps, (loading && loadingIndicator))));
1853
- };
1854
- Button$1.displayName = 'Button';
1855
-
1856
- var Checkbox = forwardRef(function (props, ref) {
1857
- var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest(props, ["label", "disabled", "LabelProps"]);
1858
- var control = React__default.createElement(MuiCheckbox, __assign({ disabled: label ? undefined : disabled }, muiProps));
1859
- return label ? (React__default.createElement(FormControlLabel, __assign({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
1860
- });
1861
- Checkbox.displayName = 'Checkbox';
1862
-
1863
- var getBackground$1 = function (theme) { return function (props) {
1864
- var variant = props.variant, severity = props.severity;
1865
- var background = theme.palette.grey[100];
1866
- var backgrounds = {
1867
- outlined: 'none',
1868
- error: 'error.main',
1869
- warning: 'warning.main',
1870
- info: 'info.light',
1871
- success: 'success.light',
1872
- };
1873
- if (variant === 'outlined') {
1874
- background = backgrounds[variant];
1875
- }
1876
- else if (severity) {
1877
- var _a = backgrounds[severity].split('.'), color = _a[0], colorVariant = _a[1];
1878
- // @ts-expect-error - todo.
1879
- background = theme.palette[color][colorVariant];
1880
- }
1881
- return background;
1882
- }; };
1883
- var getColor$1 = function (theme) { return function (props) {
1884
- var variant = props.variant, severity = props.severity;
1885
- var textColor;
1886
- if (variant === 'outlined' && severity) {
1887
- var textColors = {
1888
- error: theme.palette.error.main,
1889
- info: theme.palette.info.main,
1890
- warning: theme.palette.warning.dark,
1891
- success: theme.palette.success.dark,
1892
- };
1893
- textColor = textColors[severity];
1894
- }
1895
- else if (variant === 'outlined' && !severity) {
1896
- textColor = theme.palette.grey[700];
1897
- }
1898
- else if ((variant === 'default' || variant === undefined) && severity) {
1899
- var textColors = {
1900
- error: theme.palette.common.white,
1901
- info: theme.palette.secondary.main,
1902
- warning: theme.palette.secondary.main,
1903
- success: theme.palette.secondary.main,
1904
- };
1905
- textColor = textColors[severity];
1906
- }
1907
- return textColor;
1908
- }; };
1909
- var getBorder = function (theme) { return function (props) {
1910
- var variant = props.variant, severity = props.severity;
1911
- var borderColor;
1912
- if (variant === 'outlined' && severity) {
1913
- var borderColors = {
1914
- error: theme.palette.error.main,
1915
- info: theme.palette.info.main,
1916
- warning: theme.palette.warning.dark,
1917
- success: theme.palette.success.dark,
1918
- };
1919
- borderColor = borderColors[severity];
1920
- }
1921
- return borderColor;
1922
- }; };
1923
- // using `any` here is a bit of cheating but it doesn't matter since this doesn't depend on
1924
- // any component-specific props
1925
- makeStyles$1(function (theme) { return ({
1926
- root: {
1927
- background: getBackground$1(theme),
1928
- color: getColor$1(theme),
1929
- borderColor: getBorder(theme),
1930
- borderRadius: theme.spacing(0.5),
1931
- },
1932
- icon: {
1933
- color: 'inherit',
1934
- height: theme.spacing(2),
1935
- width: theme.spacing(2),
1936
- },
1937
- deleteIcon: {
1938
- color: theme.palette.grey[500],
1939
- },
1940
- }); });
1941
-
1942
- var defaultTypographyProps = {
1943
- variant: 'body1',
1944
- };
1945
-
1946
- var weights = {
1947
- regular: 400,
1948
- medium: 500,
1949
- 'semi-bold': 600,
1950
- bold: 700,
1951
- };
1952
- var getCustomColor = function (theme, color) {
1953
- var isCommonColor = color && ['white', 'black'].includes(color);
1954
- var isGreyColor = color && color.match(/^grey\.\d{3}/);
1955
- var isSemanticColor = color && color.match(/(primary|secondary|info|success|error|warning).?(light|dark)?/);
1956
- var isTextColor = color && ['textPrimary', 'textSecondary'].includes(color);
1957
- switch (true) {
1958
- case isCommonColor:
1959
- // @ts-expect-error - todo.
1960
- return theme.palette.common[color];
1961
- case Boolean(isGreyColor):
1962
- var scale = color.split('.')[1];
1963
- // @ts-expect-error - todo.
1964
- return theme.palette.grey[scale] || theme.palette.grey[900];
1965
- case Boolean(isSemanticColor):
1966
- var _a = color.split('.'), paletteKey = _a[0], _b = _a[1], variant = _b === void 0 ? 'main' : _b;
1967
- // @ts-expect-error - todo.
1968
- return theme.palette[paletteKey][variant];
1969
- case isTextColor:
1970
- // @ts-expect-error - todo.
1971
- return theme.palette.text[color.slice(4).toLowerCase()];
1972
- default:
1973
- return undefined;
1974
- }
1975
- };
1976
- var useTypographyStyles = makeStyles$1(function (theme) {
1977
- var _a;
1978
- return ({
1979
- root: (_a = {},
1980
- _a["& ." + iconStaticClassName] = {
1981
- position: 'relative',
1982
- top: '0.125em',
1983
- padding: '0 0.125em',
1984
- boxSizing: 'content-box',
1985
- },
1986
- _a.fontFamily = theme.typography.fontFamily,
1987
- _a.fontWeight = function (_a) {
1988
- var variant = _a.variant, weight = _a.weight;
1989
- return (weight ? weights[weight] : theme.typography[variant].fontWeight);
1990
- },
1991
- _a.fontSize = function (_a) {
1992
- var variant = _a.variant;
1993
- return theme.typography[variant].fontSize;
1994
- },
1995
- _a.lineHeight = function (_a) {
1996
- var variant = _a.variant;
1997
- return theme.typography[variant].lineHeight;
1998
- },
1999
- _a.textTransform = function (_a) {
2000
- var variant = _a.variant;
2001
- return theme.typography[variant].textTransform;
2002
- },
2003
- _a.color = function (_a) {
2004
- var color = _a.color, variant = _a.variant;
2005
- return (color && getCustomColor(theme, color)) || theme.typography[variant].color;
2006
- },
2007
- _a),
2008
- caption: {
2009
- display: 'inline',
2010
- },
2011
- overline: {
2012
- display: 'inline',
2013
- },
2014
- });
2015
- });
2016
-
2017
- var Typography = function (props) {
2018
- props.weight; props.color; var TypographyRef = props.TypographyRef, restProps = __rest(props, ["weight", "color", "TypographyRef"]);
2019
- var classes = useTypographyStyles(__assign({}, props));
2020
- var variantMapping = { subtitle1: 'p' };
2021
- return React__default.createElement(Typography$2, __assign({ classes: classes, variantMapping: variantMapping, ref: TypographyRef }, restProps));
2022
- };
2023
- Typography.displayName = 'Typography';
2024
- Typography.defaultProps = defaultTypographyProps;
2025
-
2026
- var getFadeStop = function (_a, typographyVariant) {
2027
- var typography = _a.typography;
2028
- // @ts-expect-error - todo.
2029
- return !isNaN(Number(typography[typographyVariant].lineHeight))
2030
- ? // @ts-expect-error - todo.
2031
- typography[typographyVariant].lineHeight + "rem"
2032
- : // @ts-expect-error - todo.
2033
- typography[typographyVariant].lineHeight;
2034
- };
2035
- makeStyles(function (theme) { return ({
2036
- overlay: {
2037
- position: 'absolute',
2038
- top: 0,
2039
- left: 0,
2040
- height: '100%',
2041
- width: '100%',
2042
- background: function (props) { return "linear-gradient(to top, white, #FFF0 " + getFadeStop(theme, props.typographyVariant) + ")"; },
2043
- },
2044
- }); });
2045
-
2046
- var SemanticColors;
2047
- (function (SemanticColors) {
2048
- SemanticColors["PRIMARY_MAIN"] = "primary.main";
2049
- SemanticColors["PRIMARY_DARK"] = "primary.dark";
2050
- SemanticColors["PRIMARY_LIGHT"] = "primary.light";
2051
- SemanticColors["SECONDARY_MAIN"] = "secondary.main";
2052
- SemanticColors["SECONDARY_DARK"] = "secondary.dark";
2053
- SemanticColors["SECONDARY_LIGHT"] = "secondary.light";
2054
- })(SemanticColors || (SemanticColors = {}));
2055
- makeStyles(function (theme) { return ({
2056
- dividerRoot: {
2057
- gap: theme.spacing(2),
2058
- },
2059
- textRoot: {
2060
- color: function (props) {
2061
- var textColor = props.textColor;
2062
- if (Object.values(SemanticColors).includes(textColor)) {
2063
- var _a = textColor.split('.'), semanticColor = _a[0], shade = _a[1];
2064
- // @ts-expect-error - todo.
2065
- return theme.palette[semanticColor][shade];
2066
- }
2067
- else if (textColor) {
2068
- return textColor;
2069
- }
2070
- else {
2071
- return 'black';
2072
- }
2073
- },
2074
- textTransform: function (props) { return props.textTransform; },
2075
- },
2076
- dividerLine: {
2077
- backgroundColor: function (props) {
2078
- var dividerColor = props.dividerColor;
2079
- if (Object.values(SemanticColors).includes(dividerColor)) {
2080
- var _a = dividerColor.split('.'), semanticColor = _a[0], shade = _a[1];
2081
- // @ts-expect-error - todo.
2082
- return theme.palette[semanticColor][shade];
2083
- }
2084
- else if (dividerColor) {
2085
- return dividerColor;
2086
- }
2087
- else {
2088
- return theme.palette.grey[500];
2089
- }
2090
- },
2091
- },
2092
- }); });
2093
-
2094
- var IconButton = forwardRef(function (props, ref) {
2095
- return React__default.createElement(MuiIconButton, __assign({ ref: ref }, props));
2096
- });
2097
- IconButton.displayName = 'IconButton';
2098
- IconButton.defaultProps = {
2099
- color: 'secondary',
2100
- };
2101
-
2102
- var useLinkStyles = makeStyles$1(function (theme) { return ({
2103
- root: function (props) {
2104
- var _a;
2105
- return (__assign(__assign({ display: 'flex' }, (props.color === undefined && { color: theme.palette.info.main })), (_a = {}, _a["& ." + iconStaticClassName] = {
2106
- alignSelf: 'center',
2107
- }, _a)));
2108
- },
2109
- }); });
2110
-
2111
- // eslint-disable-next-line react/display-name -- false positive
2112
- var Link = forwardRef(function (props, ref) {
2113
- var children = props.children, muiProps = __rest(props, ["children"]);
2114
- var classes = useLinkStyles(props);
2115
- return (React__default.createElement(Link$2, __assign({ ref: ref, classes: { root: classes.root } }, muiProps), children));
2116
- });
2117
- Link.defaultProps = {
2118
- variant: 'body1',
2119
- };
2120
- Link.displayName = 'Link';
2121
-
2122
- var useStyles$4$1 = makeStyles(function (_a) {
2123
- var spacing = _a.spacing;
2124
- return ({
2125
- root: {
2126
- '&:last-child': {
2127
- marginBottom: 0,
2128
- },
2129
- marginBottom: spacing(4),
2130
- padding: spacing(4),
2131
- },
2132
- });
2133
- });
2134
- var Paper = forwardRef(function (props, ref) {
2135
- var legacyStyles = props.legacyStyles, restProps = __rest(props, ["legacyStyles"]);
2136
- var classes = useStyles$4$1(props);
2137
- return React__default.createElement(Paper$2, __assign({}, ref, { classes: __assign({}, (legacyStyles && classes)) }, restProps));
2138
- });
2139
- Paper.displayName = 'Paper';
2140
- Paper.defaultProps = {
2141
- legacyStyles: false,
2142
- };
2143
-
2144
- var Radio = forwardRef(function (props, ref) {
2145
- var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest(props, ["label", "disabled", "LabelProps"]);
2146
- var control = React__default.createElement(MuiRadio, __assign({ disabled: label ? undefined : disabled }, muiProps));
2147
- return label ? (React__default.createElement(FormControlLabel, __assign({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
2148
- });
2149
- Radio.displayName = 'Radio';
2150
-
2151
- makeStyles$1(function () { return ({
2152
- textfield: {
2153
- background: function (props) { return (props.backgroundTransparency ? '#FFFFFF44' : 'none'); },
2154
- borderTopLeftRadius: 4,
2155
- borderBottomLeftRadius: 4,
2156
- '& fieldset': {
2157
- borderRight: 'none',
2158
- borderTopRightRadius: 0,
2159
- borderBottomRightRadius: 0,
2160
- },
2161
- },
2162
- button: {
2163
- borderTopLeftRadius: 0,
2164
- borderBottomLeftRadius: 0,
2165
- alignSelf: 'stretch',
2166
- },
2167
- input: {
2168
- color: function (props) { return props.inputTextColor || 'inherit'; },
2169
- '&$focused fieldset': {
2170
- top: -4,
2171
- },
2172
- },
2173
- focused: {},
2174
- }); });
2175
-
2176
- var useSwitchStyles = makeStyles$1(function (theme) { return ({
2177
- checked: {
2178
- '& $thumb': {
2179
- background: theme.palette.success.main,
2180
- },
2181
- '&& + $track': {
2182
- backgroundColor: theme.palette.success.main,
2183
- },
2184
- },
2185
- thumb: {},
2186
- track: {},
2187
- }); });
2188
-
2189
- var Switch = forwardRef(function (props, ref) {
2190
- var label = props.label, disabled = props.disabled, LabelProps = props.LabelProps, muiProps = __rest(props, ["label", "disabled", "LabelProps"]);
2191
- var classes = useSwitchStyles(props);
2192
- var control = React__default.createElement(MuiSwitch, __assign({ classes: classes, disabled: label ? undefined : disabled }, muiProps));
2193
- return label ? (React__default.createElement(FormControlLabel, __assign({ disabled: disabled, inputRef: ref, control: control, label: label }, LabelProps))) : (control);
2194
- });
2195
- Switch.displayName = 'Switch';
2196
-
2197
- var useToggleButtonStyles = makeStyles$1(function (theme) { return ({
2198
- root: {
2199
- color: theme.palette.text.primary,
2200
- },
2201
- selected: {
2202
- '&&': {
2203
- '&:hover': {
2204
- backgroundColor: function (props) { return theme.palette[props.color || 'primary'].dark; },
2205
- },
2206
- backgroundColor: function (props) { return theme.palette[props.color || 'primary'].main; },
2207
- color: 'white',
2208
- },
2209
- },
2210
- }); });
2211
-
2212
- var ToggleButton = forwardRef(function (props, ref) {
2213
- var children = props.children, muiProps = __rest(props, ["children"]);
2214
- var classes = useToggleButtonStyles(props);
2215
- return (React__default.createElement(MuiToggleButton, __assign({ ref: ref, classes: {
2216
- root: classes.root,
2217
- selected: classes.selected,
2218
- } }, muiProps), children));
2219
- });
2220
- ToggleButton.defaultProps = {
2221
- color: 'primary',
2222
- };
2223
- ToggleButton.displayName = 'ToggleButton';
2224
-
2225
- var useToggleButtonGroupStyles = makeStyles$1(function (theme) { return ({
2226
- root: {
2227
- '&&': {
2228
- backgroundColor: theme.palette.grey[300],
2229
- },
2230
- },
2231
- }); });
2232
-
2233
- var ToggleButtonGroup = forwardRef(function (props, ref) {
2234
- var children = props.children, _a = props.color, color = _a === void 0 ? 'primary' : _a, muiProps = __rest(props, ["children", "color"]);
2235
- var classes = useToggleButtonGroupStyles(props);
2236
- var childrenWithProps = React__default.Children.map(children, function (child) {
2237
- if (!React__default.isValidElement(child)) {
2238
- return null;
2239
- }
2240
- return React__default.cloneElement(child, { color: color });
2241
- });
2242
- return (React__default.createElement(MuiToggleButtonGroup, __assign({ ref: ref, classes: { root: classes.root } }, muiProps), childrenWithProps));
2243
- });
2244
- ToggleButtonGroup.displayName = 'ToggleButtonGroup';
2245
-
2246
- var useTooltipStyles = makeStyles$1(function (_a) {
2247
- var typography = _a.typography;
2248
- return ({
2249
- tooltip: {
2250
- fontSize: typography.pxToRem(16),
2251
- },
2252
- });
2253
- });
2254
-
2255
- var Tooltip = forwardRef(function (props, ref) {
2256
- var classes = useTooltipStyles(props);
2257
- return React__default.createElement(MuiTooltip, __assign({ ref: ref, classes: classes }, props));
2258
- });
2259
- Tooltip.displayName = 'Tooltip';
2260
-
2261
- makeStyles(function () { return ({
2262
- root: {
2263
- height: 56,
2264
- },
2265
- }); });
2266
- makeStyles(function (theme) { return ({
2267
- root: {
2268
- height: '100%',
2269
- width: 'min-content',
2270
- borderRadius: theme.spacing(1),
2271
- },
2272
- input: {
2273
- '&::-webkit-clear-button, &::-webkit-outer-spin-button, &::-webkit-inner-spin-button': {
2274
- display: 'none',
2275
- },
2276
- '-moz-appearance': 'textfield',
2277
- minWidth: 40,
2278
- padding: 0,
2279
- textAlign: 'center',
2280
- },
2281
- adornedStart: {
2282
- padding: 0,
2283
- },
2284
- adornedEnd: {
2285
- padding: 0,
2286
- },
2287
- }); });
2288
-
2289
- makeStyles(function () { return ({
2290
- root: {
2291
- display: 'flex',
2292
- flexDirection: 'column',
2293
- alignItems: 'center',
2294
- gridGap: 16,
2295
- },
2296
- }); });
2297
-
2298
- var FollowerAuthenticationDialogContext = createContext(null);
2299
- FollowerAuthenticationDialogContext.Provider;
2300
-
2301
- makeStyles(function () { return ({
2302
- form: {
2303
- display: 'flex',
2304
- flexDirection: 'column',
2305
- alignItems: 'center',
2306
- width: '100%',
2307
- gridGap: 16,
2308
- },
2309
- }); });
2310
-
2311
- makeStyles(function () { return ({
2312
- main: {
2313
- width: '100%',
2314
- display: 'flex',
2315
- flexDirection: 'column',
2316
- gridGap: 16,
2317
- },
2318
- }); });
2319
-
2320
- makeStyles(function () { return ({
2321
- root: {
2322
- position: 'absolute',
2323
- top: 0,
2324
- right: 0,
2325
- },
2326
- }); });
2327
-
2328
- var _g$2C;
2329
-
2330
- function _extends$4K() { _extends$4K = 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$4K.apply(this, arguments); }
2331
-
2332
- function SvgCheckCircle(props) {
2333
- return /*#__PURE__*/React.createElement("svg", _extends$4K({
2334
- viewBox: "0 0 16 16",
2335
- fill: "none",
2336
- strokeLinecap: "round",
2337
- strokeLinejoin: "round",
2338
- width: "1em",
2339
- height: "1em"
2340
- }, props), _g$2C || (_g$2C = /*#__PURE__*/React.createElement("g", {
2341
- stroke: "currentColor"
2342
- }, /*#__PURE__*/React.createElement("path", {
2343
- d: "M14.667 7.387V8a6.667 6.667 0 11-3.954-6.093"
2344
- }), /*#__PURE__*/React.createElement("path", {
2345
- d: "M14.667 2.667L8 9.34l-2-2"
2346
- }))));
2347
- }
2348
-
2349
- var _path$26;
2350
-
2351
- function _extends$4H() { _extends$4H = 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$4H.apply(this, arguments); }
2352
-
2353
- function SvgX(props) {
2354
- return /*#__PURE__*/React.createElement("svg", _extends$4H({
2355
- viewBox: "0 0 16 16",
2356
- fill: "none",
2357
- strokeLinecap: "round",
2358
- strokeLinejoin: "round",
2359
- width: "1em",
2360
- height: "1em"
2361
- }, props), _path$26 || (_path$26 = /*#__PURE__*/React.createElement("path", {
2362
- d: "M12 4l-8 8m0-8l8 8",
2363
- stroke: "currentColor"
2364
- })));
2365
- }
2366
-
2367
- var _g$2p, _defs$1u;
2368
-
2369
- function _extends$4p() { _extends$4p = 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$4p.apply(this, arguments); }
2370
-
2371
- function SvgHelp(props) {
2372
- return /*#__PURE__*/React.createElement("svg", _extends$4p({
2373
- viewBox: "0 0 16 16",
2374
- fill: "none",
2375
- strokeLinecap: "round",
2376
- strokeLinejoin: "round",
2377
- width: "1em",
2378
- height: "1em"
2379
- }, props), _g$2p || (_g$2p = /*#__PURE__*/React.createElement("g", {
2380
- clipPath: "url(#help_svg__clip0_8_5446)",
2381
- stroke: "currentColor"
2382
- }, /*#__PURE__*/React.createElement("path", {
2383
- d: "M8 14.667A6.667 6.667 0 108 1.334a6.667 6.667 0 000 13.333z"
2384
- }), /*#__PURE__*/React.createElement("path", {
2385
- d: "M6.06 6a2 2 0 013.887.667c0 1.333-2 2-2 2M8 11.334h.007"
2386
- }))), _defs$1u || (_defs$1u = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
2387
- id: "help_svg__clip0_8_5446"
2388
- }, /*#__PURE__*/React.createElement("path", {
2389
- fill: "currentColor",
2390
- d: "M0 0h16v16H0z"
2391
- })))));
2392
- }
2393
-
2394
- var _g$2m, _defs$1t;
2395
-
2396
- function _extends$4m() { _extends$4m = 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$4m.apply(this, arguments); }
2397
-
2398
- function SvgInfo(props) {
2399
- return /*#__PURE__*/React.createElement("svg", _extends$4m({
2400
- viewBox: "0 0 16 16",
2401
- fill: "none",
2402
- strokeLinecap: "round",
2403
- strokeLinejoin: "round",
2404
- width: "1em",
2405
- height: "1em"
2406
- }, props), _g$2m || (_g$2m = /*#__PURE__*/React.createElement("g", {
2407
- clipPath: "url(#info_svg__clip0_8_5377)",
2408
- stroke: "currentColor"
2409
- }, /*#__PURE__*/React.createElement("path", {
2410
- d: "M8 14.667A6.667 6.667 0 108 1.334a6.667 6.667 0 000 13.333zm0-4V8m0-2.667h.007"
2411
- }))), _defs$1t || (_defs$1t = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
2412
- id: "info_svg__clip0_8_5377"
2413
- }, /*#__PURE__*/React.createElement("path", {
2414
- fill: "currentColor",
2415
- d: "M0 0h16v16H0z"
2416
- })))));
2417
- }
2418
-
2419
- var _g$20, _defs$1f;
2420
-
2421
- function _extends$3w() { _extends$3w = 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$3w.apply(this, arguments); }
2422
-
2423
- function SvgError(props) {
2424
- return /*#__PURE__*/React.createElement("svg", _extends$3w({
2425
- viewBox: "0 0 16 16",
2426
- fill: "none",
2427
- strokeLinecap: "round",
2428
- strokeLinejoin: "round",
2429
- width: "1em",
2430
- height: "1em"
2431
- }, props), _g$20 || (_g$20 = /*#__PURE__*/React.createElement("g", {
2432
- clipPath: "url(#error_svg__clip0_8_5411)",
2433
- stroke: "currentColor"
2434
- }, /*#__PURE__*/React.createElement("path", {
2435
- d: "M5.24 1.333h5.52l3.907 3.907v5.52l-3.907 3.907H5.24L1.333 10.76V5.24L5.24 1.333zm2.76 4V8m0 2.666h.008"
2436
- }))), _defs$1f || (_defs$1f = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
2437
- id: "error_svg__clip0_8_5411"
2438
- }, /*#__PURE__*/React.createElement("path", {
2439
- fill: "currentColor",
2440
- d: "M0 0h16v16H0z"
2441
- })))));
2442
- }
2443
-
2444
- var _path$1u;
2445
-
2446
- function _extends$3v() { _extends$3v = 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$3v.apply(this, arguments); }
2447
-
2448
- function SvgWarning(props) {
2449
- return /*#__PURE__*/React.createElement("svg", _extends$3v({
2450
- viewBox: "0 0 16 16",
2451
- fill: "none",
2452
- strokeLinecap: "round",
2453
- strokeLinejoin: "round",
2454
- width: "1em",
2455
- height: "1em"
2456
- }, props), _path$1u || (_path$1u = /*#__PURE__*/React.createElement("path", {
2457
- d: "M6.86 2.573L1.213 12a1.334 1.334 0 001.14 2h11.294a1.332 1.332 0 001.14-2L9.14 2.573a1.333 1.333 0 00-2.28 0v0zM8 6v2.667m0 2.667h.007",
2458
- stroke: "currentColor"
2459
- })));
2460
- }
2461
-
2462
- var useAlertStyles = makeStyles$1(function (theme) { return ({
2463
- root: {
2464
- alignItems: 'center',
2465
- width: function (_a) {
2466
- var fullWidth = _a.fullWidth;
2467
- return (fullWidth ? '100%' : 'unset');
2468
- },
2469
- background: 'white',
2470
- borderColor: function (props) { return theme.palette[props.severity || 'error'].main; },
2471
- borderLeft: theme.spacing(1) + "px solid",
2472
- color: theme.palette.text.primary,
2473
- },
2474
- icon: {
2475
- alignSelf: 'start',
2476
- },
2477
- }); });
2478
-
2479
- var severityIcons$1 = {
2480
- info: SvgInfo,
2481
- error: SvgError,
2482
- warning: SvgWarning,
2483
- success: SvgCheckCircle,
2484
- };
2485
- var getLinkProps = function (link) {
2486
- if (!link)
2487
- return null;
2488
- var href = link.href, onClick = link.onClick, text = link.text;
2489
- if (!text)
2490
- return null;
2491
- var props = { children: text };
2492
- if (href)
2493
- return __assign$1(__assign$1({}, props), { href: href });
2494
- if (onClick)
2495
- return __assign$1(__assign$1({}, props), { onClick: onClick });
2496
- return null;
2497
- };
2498
- var Alert = forwardRef(function (props, ref) {
2499
- 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"]);
2500
- var classes = useAlertStyles(props);
2501
- var validLink = link && getLinkProps(link);
2502
- var Action = (React__default.createElement(React__default.Fragment, null,
2503
- validLink && React__default.createElement(Link, __assign$1({}, validLink)),
2504
- onClose && (React__default.createElement(IconButton, { onClick: onClose },
2505
- React__default.createElement(Icon, { icon: SvgX })))));
2506
- return (React__default.createElement(CommonAlert, __assign$1({ ref: ref, classes: classes,
2507
- // @ts-expect-error - todo.
2508
- icon: React__default.createElement(Icon, { icon: severityIcons$1[severity], size: "extra-large" }), action: Action, variant: variant, severity: severity }, muiProps), children));
2509
- });
2510
- Alert.displayName = 'Alert';
2511
-
2512
- var borderWidth = 1;
2513
- var getColor = function (palette, props) {
2514
- var variant = props.variant;
2515
- var color = 'inherit';
2516
- if (['primary', 'info', 'success', 'warning', 'error'].includes(variant)) {
2517
- // @ts-expect-error - todo.
2518
- color = palette[variant].contrastText;
2519
- }
2520
- if (variant === 'secondary') {
2521
- color = palette[variant].main;
2522
- /**
2523
- * Temporary fix for dark theme buttons.
2524
- * Dark theme will be addressed in ch-11596 and the following if block should be removed
2525
- */
2526
- if (palette.type === 'dark') {
2527
- color = 'black';
2528
- }
2529
- }
2530
- if (variant === 'tertiary') {
2531
- color = palette.secondary.contrastText;
2532
- }
2533
- if (variant === 'text') {
2534
- color = palette.info.main;
2535
- }
2536
- return color;
2537
- };
2538
- var getColorHover = function (palette, props) {
2539
- var color;
2540
- if (props.variant === 'secondary') {
2541
- color = palette.secondary.contrastText;
2542
- }
2543
- return color;
2544
- };
2545
- var getBackground = function (palette, props) {
2546
- var backgroundColor = 'inherit';
2547
- if (['info', 'success', 'warning', 'error'].includes(props.variant)) {
2548
- // @ts-expect-error - todo.
2549
- backgroundColor = palette[props.variant].main;
2550
- }
2551
- if (props.variant === 'primary') {
2552
- // @ts-expect-error gradient colors are included in the extended palette.
2553
- backgroundColor = "linear-gradient(97.36deg, " + palette.primary.gradientStart + " 17.03%, " + palette.primary.gradientEnd + " 72.96%)";
2554
- }
2555
- if (props.variant === 'secondary') {
2556
- backgroundColor = 'white';
2557
- }
2558
- if (props.variant === 'tertiary') {
2559
- backgroundColor = palette.secondary.main;
2560
- }
2561
- return backgroundColor;
2562
- };
2563
- var getBackgroundHover = function (palette, props) {
2564
- var backgroundHoverColor = 'inherit';
2565
- if (['primary', 'info', 'success', 'warning', 'error'].includes(props.variant)) {
2566
- // @ts-expect-error - todo.
2567
- backgroundHoverColor = palette[props.variant].dark;
2568
- }
2569
- if (props.variant === 'secondary') {
2570
- backgroundHoverColor = palette.secondary.main;
2571
- }
2572
- if (props.variant === 'tertiary') {
2573
- backgroundHoverColor = palette.secondary.light;
2574
- }
2575
- if (props.variant === 'text' || props.variant === 'ghost') {
2576
- backgroundHoverColor = palette.action.hover;
2577
- }
2578
- return backgroundHoverColor;
2579
- };
2580
- var buttonTypography = {
2581
- fontWeight: 500,
2582
- fontSize: '0.875rem',
2583
- lineHeight: '1.25rem',
2584
- };
2585
- var useButtonStyles = makeStyles(function (_a) {
2586
- var palette = _a.palette, spacing = _a.spacing;
2587
- return ({
2588
- root: function (props) { return ({
2589
- minWidth: 'unset',
2590
- color: getColor(palette, props),
2591
- background: getBackground(palette, props),
2592
- backgroundColor: props.variant === 'primary' ? palette.primary.dark : getBackground(palette, props),
2593
- borderRadius: spacing(6),
2594
- transition: 'all 200ms ease-in-out',
2595
- '&:hover': {
2596
- color: getColorHover(palette, props),
2597
- background: getBackgroundHover(palette, props),
2598
- },
2599
- }); },
2600
- disabled: {
2601
- '&$root': {
2602
- background: palette.action.disabled,
2603
- },
2604
- },
2605
- contained: {
2606
- padding: spacing(1, 2),
2607
- },
2608
- outlined: {
2609
- padding: "calc(" + spacing(1) + "px - " + borderWidth + "px) calc(" + spacing(2) + "px - " + borderWidth + "px)",
2610
- '&$sizeSmall': {
2611
- padding: "calc(" + spacing(0.5) + "px - " + borderWidth + "px) calc(" + spacing(2) + "px - " + borderWidth + "px)",
2612
- },
2613
- '&$sizeLarge': {
2614
- padding: "calc(" + spacing(1.5) + "px - " + borderWidth + "px) calc(" + spacing(2) + "px - " + borderWidth + "px)",
2615
- },
2616
- },
2617
- text: {
2618
- padding: spacing(1, 2),
2619
- },
2620
- label: __assign$1(__assign$1({}, buttonTypography), { textTransform: function (props) { return props.textTransform; } }),
2621
- sizeSmall: {
2622
- padding: spacing(0.5, 2),
2623
- },
2624
- sizeLarge: {
2625
- padding: spacing(1.5, 2),
2626
- },
2627
- });
2628
- });
2629
-
2630
- var deriveButtonProps = function (buttonProps) {
2631
- var variant = buttonProps.variant;
2632
- var derived = {};
2633
- switch (variant) {
2634
- case 'primary':
2635
- derived.variant = 'contained';
2636
- derived.color = 'primary';
2637
- break;
2638
- case 'secondary':
2639
- derived.variant = 'outlined';
2640
- derived.color = 'secondary';
2641
- break;
2642
- case 'tertiary':
2643
- derived.variant = 'contained';
2644
- derived.color = 'secondary';
2645
- break;
2646
- case 'text':
2647
- derived.variant = 'text';
2648
- case 'ghost':
2649
- derived.variant = 'text';
2650
- break;
2651
- case 'success':
2652
- derived.variant = 'contained';
2653
- break;
2654
- case 'info':
2655
- derived.variant = 'contained';
2656
- break;
2657
- case 'warning':
2658
- derived.variant = 'contained';
2659
- break;
2660
- case 'error':
2661
- derived.variant = 'contained';
2662
- break;
2663
- default:
2664
- derived.variant = variant;
2665
- break;
2666
- }
2667
- return derived;
2668
- };
2669
-
2670
- // eslint-disable-next-line react/display-name -- false positive
2671
- var Button = forwardRef(function (props, ref) {
2672
- var children = props.children; props.variant; var classesOverride = props.classes, commonProps = __rest$1(props, ["children", "variant", "classes"]);
2673
- var classes = useButtonStyles(props);
2674
- var derivedProps = deriveButtonProps(props);
2675
- var mergedProps = __assign$1(__assign$1({}, derivedProps), commonProps);
2676
- return (React__default.createElement(Button$1, __assign$1({ ref: ref, classes: __assign$1(__assign$1({}, classes), classesOverride), disableElevation: true }, mergedProps), children));
2677
- });
2678
- Button.defaultProps = {
2679
- textTransform: 'uppercase',
2680
- variant: 'primary',
2681
- };
2682
- Button.displayName = 'Button';
2683
-
2684
- var useAlertDialogStyles = makeStyles$1(function (theme) { return ({
2685
- cancelButton: {
2686
- color: theme.palette.grey[700],
2687
- },
2688
- cancelIcon: {
2689
- position: 'absolute',
2690
- right: theme.spacing(1),
2691
- top: theme.spacing(2),
2692
- },
2693
- card: {
2694
- borderRadius: theme.spacing(0.75),
2695
- borderTop: function (props) { return theme.spacing(1.25) + "px solid " + theme.palette[props.severity || 'info'].main; },
2696
- },
2697
- cardActions: {
2698
- background: theme.palette.grey[100],
2699
- justifyContent: 'flex-end',
2700
- },
2701
- icon: {
2702
- fontSize: theme.spacing(5),
2703
- },
2704
- root: {
2705
- borderRadius: theme.spacing(0.75),
2706
- },
2707
- }); });
2708
-
2709
- var severityIcons = {
2710
- info: SvgInfo,
2711
- error: SvgError,
2712
- warning: SvgWarning,
2713
- success: SvgCheckCircle,
2714
- };
2715
- var AlertDialog = forwardRef(function (props, ref) {
2716
- var _a = props.cancelButtonText, cancelButtonText = _a === void 0 ? 'cancel' : _a, _b = props.hideCancelButton, hideCancelButton = _b === void 0 ? false : _b, children = props.children, labelId = props.labelId, descriptionId = props.descriptionId, _c = props.severity, severity = _c === void 0 ? 'info' : _c, _d = props.proceedButtonText, proceedButtonText = _d === void 0 ? 'proceed' : _d, _e = props.disabled, disabled = _e === void 0 ? false : _e, onClose = props.onClose, onCancel = props.onCancel, onProceed = props.onProceed, DialogProps = __rest$1(props, ["cancelButtonText", "hideCancelButton", "children", "labelId", "descriptionId", "severity", "proceedButtonText", "disabled", "onClose", "onCancel", "onProceed"]);
2717
- var classes = useAlertDialogStyles(props);
2718
- return (React__default.createElement(Dialog, __assign$1({ ref: ref, classes: { paper: classes.root }, maxWidth: "sm", fullWidth: true }, DialogProps),
2719
- React__default.createElement(Card, { classes: { root: classes.card }, role: "alertdialog", "aria-modal": "true", "aria-labelledby": labelId, "aria-describedby": descriptionId },
2720
- React__default.createElement(IconButton, { className: classes.cancelIcon, onClick: onClose, disabled: disabled },
2721
- React__default.createElement(Icon, { icon: SvgX })),
2722
- React__default.createElement(CardContent, null,
2723
- React__default.createElement(Box, { display: "flex" },
2724
- React__default.createElement(Icon, { className: classes.icon, color: severity, icon: severityIcons[severity] }),
2725
- React__default.createElement(Box, { pl: 2, pr: 3 }, children))),
2726
- React__default.createElement(CardActions, { classes: { root: classes.cardActions } },
2727
- !hideCancelButton && (React__default.createElement(Button, { onClick: onCancel, disabled: disabled, variant: "ghost" }, cancelButtonText)),
2728
- React__default.createElement(Button, { onClick: onProceed, loading: disabled, variant: severity }, proceedButtonText)))));
2729
- });
2730
- AlertDialog.displayName = 'AlertDialog';
2731
-
2732
- var getBorderColor = function (palette, variant) {
2733
- var borderColor = 'inherit';
2734
- if (['primary', 'secondary', 'info', 'success', 'warning', 'error'].includes(variant)) {
2735
- // @ts-expect-error - todo.
2736
- borderColor = palette[variant].light;
2737
- }
2738
- return borderColor;
2739
- };
2740
- var useButtonGroupStyles = makeStyles$1(function (theme) { return ({
2741
- root: {
2742
- boxShadow: 'none',
2743
- },
2744
- groupedContained: {
2745
- '&&': {
2746
- borderColor: function (props) { return getBorderColor(theme.palette, props.variant); },
2747
- },
2748
- },
2749
- groupedText: {
2750
- '&&': {
2751
- borderColor: theme.palette.info.main,
2752
- },
2753
- },
2754
- }); });
2755
-
2756
- var ButtonGroup = forwardRef(function (props, ref) {
2757
- var children = props.children, _a = props.variant, variant = _a === void 0 ? 'primary' : _a, muiProps = __rest$1(props, ["children", "variant"]);
2758
- var classes = useButtonGroupStyles(props);
2759
- var derivedProps = deriveButtonProps({ variant: variant });
2760
- var spacing = useTheme().spacing;
2761
- var childrenWithProps = React__default.Children.map(children, function (child, i) {
2762
- var isFirst = i === 0 && props.orientation === 'vertical';
2763
- var isLast = i === React__default.Children.toArray(children).length - 1 && props.orientation === 'vertical';
2764
- var firstStyles = { style: { borderTopLeftRadius: spacing(2), borderTopRightRadius: spacing(2) } };
2765
- var lastStyles = { style: { borderBottomLeftRadius: spacing(2), borderBottomRightRadius: spacing(2) } };
2766
- if (!React__default.isValidElement(child)) {
2767
- return null;
2768
- }
2769
- return React__default.cloneElement(child, __assign$1(__assign$1({ variant: variant }, (isFirst && firstStyles)), (isLast && lastStyles)));
2770
- });
2771
- return (React__default.createElement(CommonButtonGroup, __assign$1({ ref: ref, classes: classes }, derivedProps, muiProps), childrenWithProps));
2772
- });
2773
- ButtonGroup.displayName = 'ButtonGroup';
2774
-
2775
- makeStyles$1(function (_a) {
2776
- var spacing = _a.spacing;
2777
- return ({
2778
- root: {
2779
- gap: spacing(3),
2780
- },
2781
- actions: {
2782
- gap: spacing(3),
2783
- },
2784
- image: {
2785
- width: '100%',
2786
- objectFit: 'contain',
2787
- },
2788
- });
2789
- });
2790
-
2791
- makeStyles$1(function (theme) { return ({
2792
- root: {
2793
- position: 'sticky',
2794
- background: 'white',
2795
- bottom: 0,
2796
- display: 'flex',
2797
- justifyContent: 'space-between',
2798
- padding: theme.spacing(1.5) + "px " + theme.spacing(3) + "px",
2799
- borderTop: theme.spacing(0.5) + "px solid " + theme.palette.grey[100],
2800
- zIndex: 3,
2801
- },
2802
- inlineEndActions: {
2803
- '& > *': {
2804
- marginInlineStart: theme.spacing(2),
2805
- },
2806
- },
2807
- inlineStartActions: {
2808
- display: 'flex',
2809
- alignItems: 'center',
2810
- '& > *': {
2811
- marginInlineEnd: theme.spacing(2),
2812
- },
2813
- },
2814
- }); });
2815
-
2816
- makeStyles$1({
2817
- root: {
2818
- fontStyle: 'italic',
2819
- },
2820
- });
2821
-
2822
- var getBorderRadius = function (theme, props) {
2823
- var stepCursor = props.stepCursor, stepCount = props.stepCount;
2824
- var isFinalStep = stepCursor / stepCount === 1;
2825
- if (isFinalStep) {
2826
- return 0;
2827
- }
2828
- else {
2829
- return theme.spacing(0.5);
2830
- }
2831
- };
2832
- makeStyles$1(function (theme) { return ({
2833
- progress: {
2834
- width: function (props) { return (props.stepCursor / props.stepCount) * 100 + "%"; },
2835
- transition: 'all 500ms',
2836
- height: theme.spacing(1),
2837
- // @ts-expect-error: Theme includes extended properties
2838
- background: "linear-gradient(45deg, " + theme.palette.primary.gradientStart + ", " + theme.palette.primary.gradientEnd + ")",
2839
- borderEndEndRadius: function (props) { return getBorderRadius(theme, props); },
2840
- borderStartEndRadius: function (props) { return getBorderRadius(theme, props); },
2841
- },
2842
- track: {
2843
- position: 'absolute',
2844
- bottom: 0,
2845
- display: 'flex',
2846
- alignItems: 'center',
2847
- width: '100%',
2848
- height: theme.spacing(0.5),
2849
- background: theme.palette.grey[100],
2850
- zIndex: 2,
2851
- },
2852
- }); });
2853
-
2854
- makeStyles$1(function (_a) {
2855
- var spacing = _a.spacing;
2856
- return ({
2857
- closeButton: {
2858
- position: 'absolute',
2859
- right: 0,
2860
- top: 0,
2861
- },
2862
- root: {
2863
- alignItems: 'center',
2864
- background: 'white',
2865
- display: 'flex',
2866
- flexDirection: 'column',
2867
- justifyContent: 'center',
2868
- padding: spacing(1.5, 0),
2869
- position: 'sticky',
2870
- top: 0,
2871
- zIndex: 3,
2872
- },
2873
- });
2874
- });
2875
-
2876
- createContext({});
2877
-
2878
- makeStyles$1(function (theme) {
2879
- var _a = theme.palette, info = _a.info, grey = _a.grey, getContrastText = _a.getContrastText, spacing = theme.spacing;
2880
- var selectedBackgroundColor = lighten(theme.palette.info.light, 0.9);
2881
- var backgroundColor = theme.palette.surface.light;
2882
- return {
2883
- root: {
2884
- position: 'relative',
2885
- border: function (_a) {
2886
- var selected = _a.selected;
2887
- return (selected ? "1px solid " + info.light : "1px solid " + grey[700]);
2888
- },
2889
- backgroundColor: function (_a) {
2890
- var selected = _a.selected;
2891
- return (selected ? selectedBackgroundColor : backgroundColor);
2892
- },
2893
- color: function (_a) {
2894
- var selected = _a.selected;
2895
- return (selected ? getContrastText(selectedBackgroundColor) : getContrastText(backgroundColor));
2896
- },
2897
- transition: 'none',
2898
- },
2899
- cardContent: {
2900
- display: 'flex',
2901
- flexDirection: 'column',
2902
- alignItems: 'center',
2903
- justifyContent: 'center',
2904
- marginTop: spacing(2.5),
2905
- },
2906
- icon: {
2907
- position: 'absolute',
2908
- top: spacing(2),
2909
- left: spacing(2),
2910
- color: function (_a) {
2911
- var selected = _a.selected;
2912
- return (selected ? info.main : grey[700]);
2913
- },
2914
- },
2915
- focusHighlight: {
2916
- backgroundColor: 'inherit',
2917
- },
2918
- };
2919
- });
2920
-
2921
- makeStyles$1(function (theme) { return ({
2922
- root: {
2923
- boxSizing: 'border-box',
2924
- padding: theme.spacing(0, 1.5),
2925
- /** TODO: design to define responsive width value. */
2926
- width: '350px',
2927
- '& > div:first-child': {
2928
- alignItems: 'center',
2929
- },
2930
- },
2931
- }); });
2932
-
2933
- makeStyles(function (_a) {
2934
- var palette = _a.palette;
2935
- return ({
2936
- root: {
2937
- background: palette.grey['100'],
2938
- },
2939
- });
2940
- });
2941
-
2942
- var usePageSectionStyles = makeStyles(function (_a) {
2943
- var spacing = _a.spacing;
2944
- return ({
2945
- root: {
2946
- background: function (_a) {
2947
- var uncontained = _a.uncontained;
2948
- return (uncontained ? 'transparent' : undefined);
2949
- },
2950
- },
2951
- cardContent: {
2952
- padding: spacing(4),
2953
- },
2954
- });
2955
- });
2956
-
2957
- var PageSection = forwardRef(function (props, ref) {
2958
- var children = props.children; props.uncontained; var restProps = __rest$1(props, ["children", "uncontained"]);
2959
- var classes = usePageSectionStyles(props);
2960
- return (React__default.createElement(Card, __assign$1({ classes: { root: classes.root }, ref: ref }, restProps),
2961
- React__default.createElement(CardContent, { classes: { root: classes.cardContent } }, children)));
2962
- });
2963
- PageSection.displayName = 'PageSection';
2964
-
2965
- makeStyles(function () { return ({
2966
- gutterBottom: {
2967
- marginBottom: '1em',
2968
- },
2969
- }); });
2970
-
2971
- var useSettingsIndexCardStyles = makeStyles$1(function (theme) { return ({
2972
- cardRoot: {
2973
- border: "1px solid " + theme.palette.grey[300],
2974
- alignSelf: 'stretch',
2975
- flexGrow: 1,
2976
- '&:hover': {
2977
- backgroundColor: '#52B7FF1A',
2978
- },
2979
- },
2980
- cardContentRoot: {
2981
- padding: theme.spacing(4),
2982
- '&:last-child': {
2983
- paddingBottom: theme.spacing(4),
2984
- },
2985
- },
2986
- }); });
2987
-
2988
- // eslint-disable-next-line react/display-name -- false positive
2989
- var SettingsIndexCard = forwardRef(function (props, ref) {
2990
- var title = props.title, description = props.description, Icon$1 = props.Icon, onClick = props.onClick, statusLabel = props.statusLabel, restProps = __rest$1(props, ["title", "description", "Icon", "onClick", "statusLabel"]);
2991
- var classes = useSettingsIndexCardStyles(props);
2992
- var showStatusLabel = (statusLabel === null || statusLabel === void 0 ? void 0 : statusLabel.text) && (statusLabel === null || statusLabel === void 0 ? void 0 : statusLabel.color);
2993
- return (React__default.createElement(ButtonBase, __assign$1({ onClick: onClick, ref: ref }, restProps),
2994
- React__default.createElement(Card, { classes: { root: classes.cardRoot } },
2995
- React__default.createElement(CardContent, { classes: { root: classes.cardContentRoot } },
2996
- React__default.createElement(Box, { fontSize: "32px", display: "flex", justifyContent: 'space-between', alignItems: "center", paddingBottom: 2 },
2997
- React__default.createElement(Icon, { icon: Icon$1 || SvgHelp, size: "inherit" }),
2998
- showStatusLabel && (React__default.createElement(Typography, { weight: "semi-bold", variant: "body2", color: statusLabel === null || statusLabel === void 0 ? void 0 : statusLabel.color }, statusLabel === null || statusLabel === void 0 ? void 0 : statusLabel.text))),
2999
- React__default.createElement(Typography, { align: "left", variant: "h6", gutterBottom: true }, title),
3000
- description && (React__default.createElement(Typography, { align: "left", variant: "body2", color: "grey.700" }, description))))));
3001
- });
3002
- SettingsIndexCard.displayName = 'SettingsIndexCard';
3003
-
3004
- var classnames = {exports: {}};
3005
-
3006
- /*!
3007
- Copyright (c) 2018 Jed Watson.
3008
- Licensed under the MIT License (MIT), see
3009
- http://jedwatson.github.io/classnames
3010
- */
3011
-
3012
- (function (module) {
3013
- /* global define */
3014
-
3015
- (function () {
3016
-
3017
- var hasOwn = {}.hasOwnProperty;
3018
-
3019
- function classNames() {
3020
- var classes = [];
3021
-
3022
- for (var i = 0; i < arguments.length; i++) {
3023
- var arg = arguments[i];
3024
- if (!arg) continue;
3025
-
3026
- var argType = typeof arg;
3027
-
3028
- if (argType === 'string' || argType === 'number') {
3029
- classes.push(arg);
3030
- } else if (Array.isArray(arg)) {
3031
- if (arg.length) {
3032
- var inner = classNames.apply(null, arg);
3033
- if (inner) {
3034
- classes.push(inner);
3035
- }
3036
- }
3037
- } else if (argType === 'object') {
3038
- if (arg.toString === Object.prototype.toString) {
3039
- for (var key in arg) {
3040
- if (hasOwn.call(arg, key) && arg[key]) {
3041
- classes.push(key);
3042
- }
3043
- }
3044
- } else {
3045
- classes.push(arg.toString());
3046
- }
3047
- }
3048
- }
3049
-
3050
- return classes.join(' ');
3051
- }
3052
-
3053
- if (module.exports) {
3054
- classNames.default = classNames;
3055
- module.exports = classNames;
3056
- } else {
3057
- window.classNames = classNames;
3058
- }
3059
- }());
3060
- }(classnames));
3061
-
3062
- classnames.exports;
3063
-
3064
- makeStyles(function (theme) { return ({
3065
- root: {
3066
- '&$uncontained > li > *:first-child': {
3067
- background: theme.palette.background.paper,
3068
- borderRadius: theme.spacing(1),
3069
- },
3070
- '& > li > *:first-child': {
3071
- borderBottom: "1px solid " + theme.palette.grey[300],
3072
- },
3073
- '& > li:last-child > *:first-child': {
3074
- borderBottom: 'none',
3075
- },
3076
- },
3077
- uncontained: {
3078
- display: 'flex',
3079
- flexDirection: 'column',
3080
- gap: 16,
3081
- },
3082
- }); });
3083
-
3084
- makeStyles(function (theme) { return ({
3085
- chipRoot: {
3086
- marginRight: theme.spacing(4),
3087
- cursor: 'pointer',
3088
- },
3089
- body: {
3090
- paddingTop: '4px',
3091
- },
3092
- listItemText: {
3093
- marginRight: '32px',
3094
- },
3095
- }); });
3096
-
3097
- var fonts = ['"Poppins"', '"sans-serif"'];
3098
- var adminThemeTypography = {
3099
- htmlFontSize: 16,
3100
- fontFamily: fonts.join(', '),
3101
- h1: {
3102
- fontWeight: 400,
3103
- fontSize: '6rem',
3104
- lineHeight: '9rem',
3105
- },
3106
- h2: {
3107
- fontWeight: 400,
3108
- fontSize: '3.75rem',
3109
- lineHeight: '5.625rem',
3110
- },
3111
- h3: {
3112
- fontWeight: 400,
3113
- fontSize: '3rem',
3114
- lineHeight: '4.5rem',
3115
- },
3116
- h4: {
3117
- fontWeight: 400,
3118
- fontSize: '2.125rem',
3119
- lineHeight: '3.25rem',
3120
- },
3121
- h5: {
3122
- fontWeight: 500,
3123
- fontSize: '1.5rem',
3124
- lineHeight: '2.25rem',
3125
- },
3126
- h6: {
3127
- fontWeight: 500,
3128
- fontSize: '1.25rem',
3129
- lineHeight: '1.875rem',
3130
- },
3131
- h7: {
3132
- fontWeight: 400,
3133
- fontSize: '1.125rem',
3134
- lineHeight: '1.75rem',
3135
- },
3136
- body1: {
3137
- fontWeight: 400,
3138
- fontSize: '1rem',
3139
- lineHeight: '1.5rem',
3140
- },
3141
- body2: {
3142
- fontWeight: 400,
3143
- fontSize: '0.875rem',
3144
- lineHeight: '1.25rem',
3145
- },
3146
- subtitle1: {
3147
- fontWeight: 400,
3148
- fontSize: '0.75rem',
3149
- lineHeight: '1.125rem',
3150
- color: '#9E9E9E',
3151
- },
3152
- button: {
3153
- fontWeight: 500,
3154
- fontSize: '0.875rem',
3155
- lineHeight: '1.25rem',
3156
- textTransform: 'capitalize',
3157
- },
3158
- };
3159
-
3160
- var adminThemeBreakpoints = {
3161
- values: {
3162
- xs: 0,
3163
- sm: 768,
3164
- md: 992,
3165
- lg: 1200,
3166
- xl: 1900,
3167
- },
3168
- };
3169
-
3170
- var basePalette = {
3171
- /** Semantic Colors */
3172
- primary: {
3173
- light: '#DA777E',
3174
- main: '#F04649',
3175
- dark: '#B3212B',
3176
- contrastText: '#FFFFFF',
3177
- gradientStart: '#ED4A67',
3178
- gradientEnd: '#F04649',
3179
- },
3180
- info: {
3181
- light: '#52B7FF',
3182
- main: '#0076CB',
3183
- dark: '#164B54',
3184
- },
3185
- success: {
3186
- light: '#48D3AB',
3187
- main: '#00B485',
3188
- dark: '#00663E',
3189
- contrastText: '#FFFFFF',
3190
- },
3191
- error: {
3192
- light: '#DA777E',
3193
- main: '#E52021',
3194
- dark: '#A80005',
3195
- },
3196
- warning: {
3197
- light: '#F0DFBA',
3198
- main: '#F5C364',
3199
- dark: '#E57E45',
3200
- },
3201
- /** Colors */
3202
- blue: {
3203
- light: '#52B7FF',
3204
- main: '#0076CB',
3205
- dark: '#164B54',
3206
- darker: '#002E6C',
3207
- },
3208
- green: {
3209
- light: '#48D3AB',
3210
- main: '#00B485',
3211
- dark: '#00663E',
3212
- },
3213
- purple: {
3214
- light: '#7B7FA3',
3215
- main: '#2E3042',
3216
- dark: '#1A1D20',
3217
- },
3218
- red: {
3219
- light: '#DA777E',
3220
- main: '#F04649',
3221
- dark: '#B3212B',
3222
- },
3223
- yellow: {
3224
- light: '#F0DFBA',
3225
- main: '#F5C364',
3226
- dark: '#E57E45',
3227
- },
3228
- gray: {
3229
- light: '#E9E9E9',
3230
- main: '#D9D9D9',
3231
- dark: '#9D9D9D',
3232
- },
3233
- white: {
3234
- main: '#FFFFFF',
3235
- },
3236
- };
3237
- var adminLightPalette = {
3238
- type: 'light',
3239
- /** Semantic Colors */
3240
- secondary: {
3241
- light: '#7B7FA3',
3242
- main: '#2E3042',
3243
- dark: '#1A1D20',
3244
- },
3245
- surface: {
3246
- light: '#FEFEFE',
3247
- main: '#ECF0F1',
3248
- dark: '#2E3042',
3249
- },
3250
- };
3251
- var adminDarkPalette = {
3252
- type: 'dark',
3253
- /** Semantic Colors */
3254
- secondary: {
3255
- light: '#7B7FA3',
3256
- main: '#FFFFFF',
3257
- },
3258
- surface: {
3259
- light: '#141414',
3260
- main: '#222222',
3261
- dark: '#333333',
3262
- },
3263
- };
3264
- var dataVizPalette = {
3265
- data: {
3266
- blue: {
3267
- light: '#A5BBFF',
3268
- main: '#6B82FE',
3269
- dark: '#5F6FE6',
3270
- },
3271
- peach: {
3272
- light: '#E69999',
3273
- main: '#FF7061',
3274
- dark: '#DC5D56',
3275
- },
3276
- pink: {
3277
- light: '#D08CB2',
3278
- main: '#BC5090',
3279
- dark: '#A04383',
3280
- },
3281
- purple: {
3282
- light: '#978CCE',
3283
- main: '#58508D',
3284
- dark: '#1B1B51',
3285
- },
3286
- marigold: {
3287
- light: '#ECBE70',
3288
- main: '#ECA33A',
3289
- dark: '#E28A30',
3290
- },
3291
- teal: {
3292
- light: '#5FCFD2',
3293
- main: '#1AB0AF',
3294
- dark: '#1E938F',
3295
- },
3296
- },
3297
- };
3298
-
3299
- var props = {
3300
- MuiSwitch: {
3301
- color: 'default',
3302
- },
3303
- MuiTextField: {
3304
- variant: 'outlined',
3305
- },
3306
- };
3307
-
3308
- /**
3309
- * These theme properties should be considered legacy. Make efforts to avoid new usage as well as refactor out existing
3310
- * usage.
3311
- */
3312
- var adminLightPlaceholder = { placeholder: 'rgba(0, 0, 0, 1)' };
3313
- var adminDarkPlaceholder = { placeholder: 'rgba(255, 255, 255, 0.37)' };
3314
- var adminThemeStatus = {
3315
- status: {
3316
- disabled: {
3317
- opacity: 0.55,
3318
- },
3319
- },
3320
- };
3321
- var BASE_Z_INDEX = 1100000;
3322
- var adminThemeZIndex = {
3323
- zIndex: {
3324
- mobileStepper: BASE_Z_INDEX + 1000,
3325
- appBar: BASE_Z_INDEX + 1100,
3326
- drawer: BASE_Z_INDEX + 1200,
3327
- modal: BASE_Z_INDEX + 1300,
3328
- snackbar: BASE_Z_INDEX + 1400,
3329
- tooltip: BASE_Z_INDEX + 9100,
3330
- },
3331
- };
3332
- /** The defaults for MuiInputBase and MuiInputLabel can be removed once the BasicForm & 'shared' inputs have either:
3333
- * 1. been refactored to use secondary color.
3334
- * 2. been replaced with new common components.
3335
- *
3336
- * props as imported from './props' are part updated design system.
3337
- */
3338
- var adminThemeDefaultProps = {
3339
- props: __assign$1(__assign$1({}, props), {
3340
- // Legacy below
3341
- MuiCard: {
3342
- elevation: 0,
3343
- }, MuiTooltip: {
3344
- title: '',
3345
- placement: 'right',
3346
- }, MuiPaper: {
3347
- elevation: 0,
3348
- }, MuiAppBar: {
3349
- position: 'static',
3350
- }, MuiInputBase: {
3351
- color: 'secondary',
3352
- }, MuiInputLabel: {
3353
- color: 'secondary',
3354
- } }),
3355
- };
3356
-
3357
- var overrides = {
3358
- MuiCssBaseline: {
3359
- '@global': {
3360
- '*::-webkit-scrollbar': {
3361
- width: '12px',
3362
- },
3363
- '*::-webkit-scrollbar-thumb': {
3364
- backgroundColor: 'rgba(167,167,167,1)',
3365
- border: '2px solid rgba(245, 245, 245, 1)',
3366
- borderRadius: '8px',
3367
- },
3368
- '*::-webkit-scrollbar-track': {
3369
- backgroundColor: 'rgba(245, 245, 245, 1)',
3370
- borderRadius: '0px',
3371
- },
3372
- },
3373
- },
3374
- MuiSwitch: {
3375
- checked: {},
3376
- track: {},
3377
- switchBase: {
3378
- '&$checked': {
3379
- color: basePalette.success.main,
3380
- '& + $track': {
3381
- background: basePalette.success.light,
3382
- },
3383
- },
3384
- },
3385
- },
3386
- };
3387
-
3388
- var adminLightOptions = __assign$1(__assign$1(__assign$1(__assign$1({ themeName: 'Admin Light', palette: __assign$1(__assign$1(__assign$1({}, basePalette), adminLightPalette), dataVizPalette), breakpoints: adminThemeBreakpoints, typography: adminThemeTypography, overrides: overrides }, adminLightPlaceholder), adminThemeZIndex), adminThemeStatus), adminThemeDefaultProps);
3389
- createTheme(adminLightOptions);
3390
-
3391
- var adminDarkOptions = __assign$1(__assign$1(__assign$1(__assign$1({ themeName: 'Admin Dark', palette: __assign$1(__assign$1(__assign$1({}, basePalette), adminDarkPalette), dataVizPalette), breakpoints: adminThemeBreakpoints, typography: adminThemeTypography, overrides: overrides }, adminDarkPlaceholder), adminThemeZIndex), adminThemeStatus), adminThemeDefaultProps);
3392
- createTheme(adminDarkOptions);
3393
-
3394
- var Panel = function (props) {
3395
- var anchorEl = props.anchorEl, onClose = props.onClose;
3396
- var classes = useStyles$5();
3397
- var _a = useContext(TableContext), table = _a.table, stagedColumnFilters = _a.stagedColumnFilters, stageFilterSelections = _a.stageFilterSelections;
3398
- var paperRef = useRef(null);
3399
- var _b = useColumnFilters(table), columnFilters = _b.columnFilters, resetColumnFilters = _b.resetColumnFilters;
3400
- var handleClick = function (e) {
3401
- var _a;
3402
- var rect = (_a = paperRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
3403
- if (rect) {
3404
- var buffer = 10;
3405
- var mouseX = e.nativeEvent.x;
3406
- var mouseY = e.nativeEvent.y;
3407
- var xHit = rect.x - buffer < mouseX && mouseX < rect.x + rect.width + buffer;
3408
- var yHit = rect.y - buffer < mouseY && mouseY < rect.y + rect.height + buffer;
3409
- if (!xHit || !yHit) {
3410
- onClose();
3411
- }
3412
- }
3413
- };
3414
- var handleApplyClick = function () {
3415
- if (stagedColumnFilters.exist()) {
3416
- columnFilters.forEach(function (columnFilter) {
3417
- var columnInputValue = stagedColumnFilters.get(columnFilter.columnId);
3418
- if (columnInputValue) {
3419
- var column = table.getColumn(columnFilter.columnId);
3420
- column.setFilterValue(columnInputValue);
3421
- }
3422
- });
3423
- }
3424
- else {
3425
- resetColumnFilters();
3426
- }
3427
- onClose();
3428
- };
3429
- var handleCancelClick = function () {
3430
- onClose();
3431
- };
3432
- var open = Boolean(anchorEl);
3433
- return (React__default.createElement(Popover, { onClick: handleClick, anchorEl: anchorEl, anchorOrigin: {
3434
- vertical: 'bottom',
3435
- horizontal: 'right',
3436
- }, className: classes.filterPopover, onClose: onClose, open: open, PaperProps: {
3437
- style: {
3438
- backgroundColor: 'transparent',
3439
- boxShadow: 'none',
3440
- borderRadius: 0,
3441
- },
3442
- }, transformOrigin: {
3443
- vertical: 'top',
3444
- horizontal: 'right',
3445
- } },
3446
- React__default.createElement(Paper$1, { className: classes.filterPopoverContents, elevation: 2 },
3447
- React__default.createElement(Box, __assign$3({}, { ref: paperRef }, { padding: 3 }),
3448
- React__default.createElement(Typography$1, { className: classes.menuTitle }, "Filter By"),
3449
- columnFilters.map(function (columnFilter, i) { return (React__default.createElement(FilterControl, __assign$3({}, columnFilter, { key: i }))); })),
3450
- stageFilterSelections && (React__default.createElement(Box, { className: classes.buttonBox },
3451
- React__default.createElement(Button, { variant: "secondary", onClick: handleCancelClick }, "Cancel"),
3452
- React__default.createElement(Button, { onClick: handleApplyClick }, "Apply"))))));
3453
- };
3454
-
3455
- var useStyles$3 = makeStyles({
3456
- root: {
3457
- justifySelf: 'end',
3458
- gridArea: 'columnFilter',
3459
- },
3460
- });
3461
-
3462
- var Trigger = function (props) {
3463
- var _a = props.label, label = _a === void 0 ? 'Filter' : _a, onClick = props.onClick;
3464
- var classes = useStyles$3();
3465
- return (React__default.createElement(Button, { className: classes.root, onClick: onClick, startIcon: React__default.createElement(Icon$1, { icon: SvgFilter }), textTransform: "none", variant: "ghost" }, label));
3466
- };
3467
-
3468
- var FilterPanel = function () {
3469
- var _a = useState(null), anchorEl = _a[0], setAnchorEl = _a[1];
3470
- var _b = useContext(TableContext), stageFilterSelections = _b.stageFilterSelections, stagedColumnFilters = _b.stagedColumnFilters;
3471
- var handleClick = function (event) {
3472
- setAnchorEl(event.currentTarget);
3473
- };
3474
- var handleClose = function () {
3475
- if (stageFilterSelections)
3476
- stagedColumnFilters.clear();
3477
- setAnchorEl(null);
3478
- };
3479
- return (React__default.createElement(FilterPanelContext.Provider, { value: { anchorState: [anchorEl, setAnchorEl] } },
3480
- React__default.createElement(Trigger, { onClick: handleClick }),
3481
- React__default.createElement(Panel, { onClose: handleClose, anchorEl: anchorEl })));
3482
- };
3483
-
3484
- var useStyles$2 = makeStyles({
3485
- root: {
3486
- justifySelf: 'start',
3487
- maxWidth: 300,
3488
- minWidth: 200,
3489
- width: '100%',
3490
- gridArea: 'globalFilter',
3491
- },
3492
- });
3493
-
3494
- var GlobalFilter = function (props) {
3495
- var value = props.value, setValue = props.setValue, restProps = __rest$3(props, ["value", "setValue"]);
3496
- var classes = useStyles$2();
3497
- var handleChange = function (e) {
3498
- setValue(e.target.value);
3499
- };
3500
- return (React__default.createElement(TextField, __assign$3({ className: classes.root, variant: "outlined", value: value, onChange: handleChange, InputProps: {
3501
- startAdornment: (React__default.createElement(InputAdornment, { position: "start" },
3502
- React__default.createElement(Icon$1, { icon: SvgSearch }))),
3503
- } }, restProps)));
3504
- };
3505
-
3506
- var TableHeaderRow = function (props) {
3507
- var children = props.children, restProps = __rest$3(props, ["children"]);
3508
- return (React__default.createElement("tr", __assign$3({ "data-table-element": 'header-row' }, restProps), children));
3509
- };
3510
-
3511
- // const getWidth = (props: TableHeaderCellProps) => {
3512
- // const {
3513
- // column: { isActionColumn },
3514
- // tableProps: { fullWidth },
3515
- // } = props
3516
- // let width
3517
- // if (fullWidth && isActionColumn) {
3518
- // width = '0.0000000001%'
3519
- // }
3520
- // if (fullWidth && !isActionColumn) {
3521
- // width = '1%'
3522
- // }
3523
- // if (!fullWidth && isActionColumn) {
3524
- // width = 72
3525
- // }
3526
- // if (!fullWidth && !isActionColumn) {
3527
- // width = undefined
3528
- // }
3529
- // return width
3530
- // }
3531
- var useStyles$1 = makeStyles(function (theme) { return ({
3532
- root: {
3533
- borderBottomStyle: 'solid',
3534
- borderBottomWidth: 2,
3535
- borderBottomColor: theme.palette.grey[100],
3536
- padding: theme.spacing(2),
3537
- textAlign: 'left',
3538
- fontWeight: 500,
3539
- },
3540
- box: {
3541
- cursor: function (_a) {
3542
- var sortable = _a.sortable;
3543
- return (sortable ? 'pointer' : 'default');
3544
- },
3545
- },
3546
- }); });
3547
-
3548
- var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
3549
-
3550
- /**
3551
- * A specialized version of `_.reduce` for arrays without support for
3552
- * iteratee shorthands.
3553
- *
3554
- * @private
3555
- * @param {Array} [array] The array to iterate over.
3556
- * @param {Function} iteratee The function invoked per iteration.
3557
- * @param {*} [accumulator] The initial value.
3558
- * @param {boolean} [initAccum] Specify using the first element of `array` as
3559
- * the initial value.
3560
- * @returns {*} Returns the accumulated value.
3561
- */
3562
-
3563
- function arrayReduce$1(array, iteratee, accumulator, initAccum) {
3564
- var index = -1,
3565
- length = array == null ? 0 : array.length;
3566
-
3567
- if (initAccum && length) {
3568
- accumulator = array[++index];
3569
- }
3570
- while (++index < length) {
3571
- accumulator = iteratee(accumulator, array[index], index, array);
3572
- }
3573
- return accumulator;
3574
- }
3575
-
3576
- var _arrayReduce = arrayReduce$1;
3577
-
3578
- /**
3579
- * The base implementation of `_.propertyOf` without support for deep paths.
3580
- *
3581
- * @private
3582
- * @param {Object} object The object to query.
3583
- * @returns {Function} Returns the new accessor function.
3584
- */
3585
-
3586
- function basePropertyOf$1(object) {
3587
- return function(key) {
3588
- return object == null ? undefined : object[key];
3589
- };
3590
- }
3591
-
3592
- var _basePropertyOf = basePropertyOf$1;
3593
-
3594
- var basePropertyOf = _basePropertyOf;
3595
-
3596
- /** Used to map Latin Unicode letters to basic Latin letters. */
3597
- var deburredLetters = {
3598
- // Latin-1 Supplement block.
3599
- '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A',
3600
- '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a',
3601
- '\xc7': 'C', '\xe7': 'c',
3602
- '\xd0': 'D', '\xf0': 'd',
3603
- '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E',
3604
- '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e',
3605
- '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I',
3606
- '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i',
3607
- '\xd1': 'N', '\xf1': 'n',
3608
- '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O',
3609
- '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o',
3610
- '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U',
3611
- '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u',
3612
- '\xdd': 'Y', '\xfd': 'y', '\xff': 'y',
3613
- '\xc6': 'Ae', '\xe6': 'ae',
3614
- '\xde': 'Th', '\xfe': 'th',
3615
- '\xdf': 'ss',
3616
- // Latin Extended-A block.
3617
- '\u0100': 'A', '\u0102': 'A', '\u0104': 'A',
3618
- '\u0101': 'a', '\u0103': 'a', '\u0105': 'a',
3619
- '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C',
3620
- '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c',
3621
- '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd',
3622
- '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E',
3623
- '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e',
3624
- '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G',
3625
- '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g',
3626
- '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h',
3627
- '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I',
3628
- '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i',
3629
- '\u0134': 'J', '\u0135': 'j',
3630
- '\u0136': 'K', '\u0137': 'k', '\u0138': 'k',
3631
- '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L',
3632
- '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l',
3633
- '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N',
3634
- '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n',
3635
- '\u014c': 'O', '\u014e': 'O', '\u0150': 'O',
3636
- '\u014d': 'o', '\u014f': 'o', '\u0151': 'o',
3637
- '\u0154': 'R', '\u0156': 'R', '\u0158': 'R',
3638
- '\u0155': 'r', '\u0157': 'r', '\u0159': 'r',
3639
- '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S',
3640
- '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's',
3641
- '\u0162': 'T', '\u0164': 'T', '\u0166': 'T',
3642
- '\u0163': 't', '\u0165': 't', '\u0167': 't',
3643
- '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U',
3644
- '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u',
3645
- '\u0174': 'W', '\u0175': 'w',
3646
- '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y',
3647
- '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z',
3648
- '\u017a': 'z', '\u017c': 'z', '\u017e': 'z',
3649
- '\u0132': 'IJ', '\u0133': 'ij',
3650
- '\u0152': 'Oe', '\u0153': 'oe',
3651
- '\u0149': "'n", '\u017f': 's'
3652
- };
3653
-
3654
- /**
3655
- * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A
3656
- * letters to basic Latin letters.
3657
- *
3658
- * @private
3659
- * @param {string} letter The matched letter to deburr.
3660
- * @returns {string} Returns the deburred letter.
3661
- */
3662
- var deburrLetter$1 = basePropertyOf(deburredLetters);
3663
-
3664
- var _deburrLetter = deburrLetter$1;
3665
-
3666
- /** Detect free variable `global` from Node.js. */
3667
-
3668
- var freeGlobal$1 = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
3669
-
3670
- var _freeGlobal = freeGlobal$1;
3671
-
3672
- var freeGlobal = _freeGlobal;
3673
-
3674
- /** Detect free variable `self`. */
3675
- var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
3676
-
3677
- /** Used as a reference to the global object. */
3678
- var root$1 = freeGlobal || freeSelf || Function('return this')();
3679
-
3680
- var _root = root$1;
3681
-
3682
- var root = _root;
3683
-
3684
- /** Built-in value references. */
3685
- var Symbol$3 = root.Symbol;
3686
-
3687
- var _Symbol = Symbol$3;
3688
-
3689
- /**
3690
- * A specialized version of `_.map` for arrays without support for iteratee
3691
- * shorthands.
3692
- *
3693
- * @private
3694
- * @param {Array} [array] The array to iterate over.
3695
- * @param {Function} iteratee The function invoked per iteration.
3696
- * @returns {Array} Returns the new mapped array.
3697
- */
3698
-
3699
- function arrayMap$1(array, iteratee) {
3700
- var index = -1,
3701
- length = array == null ? 0 : array.length,
3702
- result = Array(length);
3703
-
3704
- while (++index < length) {
3705
- result[index] = iteratee(array[index], index, array);
3706
- }
3707
- return result;
3708
- }
3709
-
3710
- var _arrayMap = arrayMap$1;
3711
-
3712
- /**
3713
- * Checks if `value` is classified as an `Array` object.
3714
- *
3715
- * @static
3716
- * @memberOf _
3717
- * @since 0.1.0
3718
- * @category Lang
3719
- * @param {*} value The value to check.
3720
- * @returns {boolean} Returns `true` if `value` is an array, else `false`.
3721
- * @example
3722
- *
3723
- * _.isArray([1, 2, 3]);
3724
- * // => true
3725
- *
3726
- * _.isArray(document.body.children);
3727
- * // => false
3728
- *
3729
- * _.isArray('abc');
3730
- * // => false
3731
- *
3732
- * _.isArray(_.noop);
3733
- * // => false
3734
- */
3735
-
3736
- var isArray$1 = Array.isArray;
3737
-
3738
- var isArray_1 = isArray$1;
3739
-
3740
- var Symbol$2 = _Symbol;
3741
-
3742
- /** Used for built-in method references. */
3743
- var objectProto$1 = Object.prototype;
3744
-
3745
- /** Used to check objects for own properties. */
3746
- var hasOwnProperty = objectProto$1.hasOwnProperty;
3747
-
3748
- /**
3749
- * Used to resolve the
3750
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
3751
- * of values.
3752
- */
3753
- var nativeObjectToString$1 = objectProto$1.toString;
3754
-
3755
- /** Built-in value references. */
3756
- var symToStringTag$1 = Symbol$2 ? Symbol$2.toStringTag : undefined;
3757
-
3758
- /**
3759
- * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
3760
- *
3761
- * @private
3762
- * @param {*} value The value to query.
3763
- * @returns {string} Returns the raw `toStringTag`.
3764
- */
3765
- function getRawTag$1(value) {
3766
- var isOwn = hasOwnProperty.call(value, symToStringTag$1),
3767
- tag = value[symToStringTag$1];
3768
-
3769
- try {
3770
- value[symToStringTag$1] = undefined;
3771
- var unmasked = true;
3772
- } catch (e) {}
3773
-
3774
- var result = nativeObjectToString$1.call(value);
3775
- if (unmasked) {
3776
- if (isOwn) {
3777
- value[symToStringTag$1] = tag;
3778
- } else {
3779
- delete value[symToStringTag$1];
3780
- }
3781
- }
3782
- return result;
3783
- }
3784
-
3785
- var _getRawTag = getRawTag$1;
3786
-
3787
- /** Used for built-in method references. */
3788
-
3789
- var objectProto = Object.prototype;
3790
-
3791
- /**
3792
- * Used to resolve the
3793
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
3794
- * of values.
3795
- */
3796
- var nativeObjectToString = objectProto.toString;
3797
-
3798
- /**
3799
- * Converts `value` to a string using `Object.prototype.toString`.
3800
- *
3801
- * @private
3802
- * @param {*} value The value to convert.
3803
- * @returns {string} Returns the converted string.
3804
- */
3805
- function objectToString$1(value) {
3806
- return nativeObjectToString.call(value);
3807
- }
3808
-
3809
- var _objectToString = objectToString$1;
3810
-
3811
- var Symbol$1 = _Symbol,
3812
- getRawTag = _getRawTag,
3813
- objectToString = _objectToString;
3814
-
3815
- /** `Object#toString` result references. */
3816
- var nullTag = '[object Null]',
3817
- undefinedTag = '[object Undefined]';
3818
-
3819
- /** Built-in value references. */
3820
- var symToStringTag = Symbol$1 ? Symbol$1.toStringTag : undefined;
3821
-
3822
- /**
3823
- * The base implementation of `getTag` without fallbacks for buggy environments.
3824
- *
3825
- * @private
3826
- * @param {*} value The value to query.
3827
- * @returns {string} Returns the `toStringTag`.
3828
- */
3829
- function baseGetTag$1(value) {
3830
- if (value == null) {
3831
- return value === undefined ? undefinedTag : nullTag;
3832
- }
3833
- return (symToStringTag && symToStringTag in Object(value))
3834
- ? getRawTag(value)
3835
- : objectToString(value);
3836
- }
3837
-
3838
- var _baseGetTag = baseGetTag$1;
3839
-
3840
- /**
3841
- * Checks if `value` is object-like. A value is object-like if it's not `null`
3842
- * and has a `typeof` result of "object".
3843
- *
3844
- * @static
3845
- * @memberOf _
3846
- * @since 4.0.0
3847
- * @category Lang
3848
- * @param {*} value The value to check.
3849
- * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
3850
- * @example
3851
- *
3852
- * _.isObjectLike({});
3853
- * // => true
3854
- *
3855
- * _.isObjectLike([1, 2, 3]);
3856
- * // => true
3857
- *
3858
- * _.isObjectLike(_.noop);
3859
- * // => false
3860
- *
3861
- * _.isObjectLike(null);
3862
- * // => false
3863
- */
3864
-
3865
- function isObjectLike$1(value) {
3866
- return value != null && typeof value == 'object';
3867
- }
3868
-
3869
- var isObjectLike_1 = isObjectLike$1;
3870
-
3871
- var baseGetTag = _baseGetTag,
3872
- isObjectLike = isObjectLike_1;
3873
-
3874
- /** `Object#toString` result references. */
3875
- var symbolTag = '[object Symbol]';
3876
-
3877
- /**
3878
- * Checks if `value` is classified as a `Symbol` primitive or object.
3879
- *
3880
- * @static
3881
- * @memberOf _
3882
- * @since 4.0.0
3883
- * @category Lang
3884
- * @param {*} value The value to check.
3885
- * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
3886
- * @example
3887
- *
3888
- * _.isSymbol(Symbol.iterator);
3889
- * // => true
3890
- *
3891
- * _.isSymbol('abc');
3892
- * // => false
3893
- */
3894
- function isSymbol$1(value) {
3895
- return typeof value == 'symbol' ||
3896
- (isObjectLike(value) && baseGetTag(value) == symbolTag);
3897
- }
3898
-
3899
- var isSymbol_1 = isSymbol$1;
3900
-
3901
- var Symbol = _Symbol,
3902
- arrayMap = _arrayMap,
3903
- isArray = isArray_1,
3904
- isSymbol = isSymbol_1;
3905
-
3906
- /** Used as references for various `Number` constants. */
3907
- var INFINITY = 1 / 0;
3908
-
3909
- /** Used to convert symbols to primitives and strings. */
3910
- var symbolProto = Symbol ? Symbol.prototype : undefined,
3911
- symbolToString = symbolProto ? symbolProto.toString : undefined;
3912
-
3913
- /**
3914
- * The base implementation of `_.toString` which doesn't convert nullish
3915
- * values to empty strings.
3916
- *
3917
- * @private
3918
- * @param {*} value The value to process.
3919
- * @returns {string} Returns the string.
3920
- */
3921
- function baseToString$1(value) {
3922
- // Exit early for strings to avoid a performance hit in some environments.
3923
- if (typeof value == 'string') {
3924
- return value;
3925
- }
3926
- if (isArray(value)) {
3927
- // Recursively convert values (susceptible to call stack limits).
3928
- return arrayMap(value, baseToString$1) + '';
3929
- }
3930
- if (isSymbol(value)) {
3931
- return symbolToString ? symbolToString.call(value) : '';
3932
- }
3933
- var result = (value + '');
3934
- return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
3935
- }
3936
-
3937
- var _baseToString = baseToString$1;
3938
-
3939
- var baseToString = _baseToString;
3940
-
3941
- /**
3942
- * Converts `value` to a string. An empty string is returned for `null`
3943
- * and `undefined` values. The sign of `-0` is preserved.
3944
- *
3945
- * @static
3946
- * @memberOf _
3947
- * @since 4.0.0
3948
- * @category Lang
3949
- * @param {*} value The value to convert.
3950
- * @returns {string} Returns the converted string.
3951
- * @example
3952
- *
3953
- * _.toString(null);
3954
- * // => ''
3955
- *
3956
- * _.toString(-0);
3957
- * // => '-0'
3958
- *
3959
- * _.toString([1, 2, 3]);
3960
- * // => '1,2,3'
3961
- */
3962
- function toString$2(value) {
3963
- return value == null ? '' : baseToString(value);
3964
- }
3965
-
3966
- var toString_1 = toString$2;
3967
-
3968
- var deburrLetter = _deburrLetter,
3969
- toString$1 = toString_1;
3970
-
3971
- /** Used to match Latin Unicode letters (excluding mathematical operators). */
3972
- var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g;
3973
-
3974
- /** Used to compose unicode character classes. */
3975
- var rsComboMarksRange$1 = '\\u0300-\\u036f',
3976
- reComboHalfMarksRange$1 = '\\ufe20-\\ufe2f',
3977
- rsComboSymbolsRange$1 = '\\u20d0-\\u20ff',
3978
- rsComboRange$1 = rsComboMarksRange$1 + reComboHalfMarksRange$1 + rsComboSymbolsRange$1;
3979
-
3980
- /** Used to compose unicode capture groups. */
3981
- var rsCombo$1 = '[' + rsComboRange$1 + ']';
3982
-
3983
- /**
3984
- * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and
3985
- * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).
3986
- */
3987
- var reComboMark = RegExp(rsCombo$1, 'g');
3988
-
3989
- /**
3990
- * Deburrs `string` by converting
3991
- * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)
3992
- * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)
3993
- * letters to basic Latin letters and removing
3994
- * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).
3995
- *
3996
- * @static
3997
- * @memberOf _
3998
- * @since 3.0.0
3999
- * @category String
4000
- * @param {string} [string=''] The string to deburr.
4001
- * @returns {string} Returns the deburred string.
4002
- * @example
4003
- *
4004
- * _.deburr('déjà vu');
4005
- * // => 'deja vu'
4006
- */
4007
- function deburr$1(string) {
4008
- string = toString$1(string);
4009
- return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');
4010
- }
4011
-
4012
- var deburr_1 = deburr$1;
4013
-
4014
- /** Used to match words composed of alphanumeric characters. */
4015
-
4016
- var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;
4017
-
4018
- /**
4019
- * Splits an ASCII `string` into an array of its words.
4020
- *
4021
- * @private
4022
- * @param {string} The string to inspect.
4023
- * @returns {Array} Returns the words of `string`.
4024
- */
4025
- function asciiWords$1(string) {
4026
- return string.match(reAsciiWord) || [];
4027
- }
4028
-
4029
- var _asciiWords = asciiWords$1;
4030
-
4031
- /** Used to detect strings that need a more robust regexp to match words. */
4032
-
4033
- var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;
4034
-
4035
- /**
4036
- * Checks if `string` contains a word composed of Unicode symbols.
4037
- *
4038
- * @private
4039
- * @param {string} string The string to inspect.
4040
- * @returns {boolean} Returns `true` if a word is found, else `false`.
4041
- */
4042
- function hasUnicodeWord$1(string) {
4043
- return reHasUnicodeWord.test(string);
4044
- }
4045
-
4046
- var _hasUnicodeWord = hasUnicodeWord$1;
4047
-
4048
- /** Used to compose unicode character classes. */
4049
-
4050
- var rsAstralRange = '\\ud800-\\udfff',
4051
- rsComboMarksRange = '\\u0300-\\u036f',
4052
- reComboHalfMarksRange = '\\ufe20-\\ufe2f',
4053
- rsComboSymbolsRange = '\\u20d0-\\u20ff',
4054
- rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,
4055
- rsDingbatRange = '\\u2700-\\u27bf',
4056
- rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff',
4057
- rsMathOpRange = '\\xac\\xb1\\xd7\\xf7',
4058
- rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf',
4059
- rsPunctuationRange = '\\u2000-\\u206f',
4060
- rsSpaceRange = ' \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000',
4061
- rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde',
4062
- rsVarRange = '\\ufe0e\\ufe0f',
4063
- rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;
4064
-
4065
- /** Used to compose unicode capture groups. */
4066
- var rsApos$1 = "['\u2019]",
4067
- rsBreak = '[' + rsBreakRange + ']',
4068
- rsCombo = '[' + rsComboRange + ']',
4069
- rsDigits = '\\d+',
4070
- rsDingbat = '[' + rsDingbatRange + ']',
4071
- rsLower = '[' + rsLowerRange + ']',
4072
- rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',
4073
- rsFitz = '\\ud83c[\\udffb-\\udfff]',
4074
- rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',
4075
- rsNonAstral = '[^' + rsAstralRange + ']',
4076
- rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}',
4077
- rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]',
4078
- rsUpper = '[' + rsUpperRange + ']',
4079
- rsZWJ = '\\u200d';
4080
-
4081
- /** Used to compose unicode regexes. */
4082
- var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',
4083
- rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',
4084
- rsOptContrLower = '(?:' + rsApos$1 + '(?:d|ll|m|re|s|t|ve))?',
4085
- rsOptContrUpper = '(?:' + rsApos$1 + '(?:D|LL|M|RE|S|T|VE))?',
4086
- reOptMod = rsModifier + '?',
4087
- rsOptVar = '[' + rsVarRange + ']?',
4088
- rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',
4089
- rsOrdLower = '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])',
4090
- rsOrdUpper = '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])',
4091
- rsSeq = rsOptVar + reOptMod + rsOptJoin,
4092
- rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq;
4093
-
4094
- /** Used to match complex or compound words. */
4095
- var reUnicodeWord = RegExp([
4096
- rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',
4097
- rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',
4098
- rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,
4099
- rsUpper + '+' + rsOptContrUpper,
4100
- rsOrdUpper,
4101
- rsOrdLower,
4102
- rsDigits,
4103
- rsEmoji
4104
- ].join('|'), 'g');
4105
-
4106
- /**
4107
- * Splits a Unicode `string` into an array of its words.
4108
- *
4109
- * @private
4110
- * @param {string} The string to inspect.
4111
- * @returns {Array} Returns the words of `string`.
4112
- */
4113
- function unicodeWords$1(string) {
4114
- return string.match(reUnicodeWord) || [];
4115
- }
4116
-
4117
- var _unicodeWords = unicodeWords$1;
4118
-
4119
- var asciiWords = _asciiWords,
4120
- hasUnicodeWord = _hasUnicodeWord,
4121
- toString = toString_1,
4122
- unicodeWords = _unicodeWords;
4123
-
4124
- /**
4125
- * Splits `string` into an array of its words.
4126
- *
4127
- * @static
4128
- * @memberOf _
4129
- * @since 3.0.0
4130
- * @category String
4131
- * @param {string} [string=''] The string to inspect.
4132
- * @param {RegExp|string} [pattern] The pattern to match words.
4133
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
4134
- * @returns {Array} Returns the words of `string`.
4135
- * @example
4136
- *
4137
- * _.words('fred, barney, & pebbles');
4138
- * // => ['fred', 'barney', 'pebbles']
4139
- *
4140
- * _.words('fred, barney, & pebbles', /[^, ]+/g);
4141
- * // => ['fred', 'barney', '&', 'pebbles']
4142
- */
4143
- function words$1(string, pattern, guard) {
4144
- string = toString(string);
4145
- pattern = guard ? undefined : pattern;
4146
-
4147
- if (pattern === undefined) {
4148
- return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string);
4149
- }
4150
- return string.match(pattern) || [];
4151
- }
4152
-
4153
- var words_1 = words$1;
4154
-
4155
- var arrayReduce = _arrayReduce,
4156
- deburr = deburr_1,
4157
- words = words_1;
4158
-
4159
- /** Used to compose unicode capture groups. */
4160
- var rsApos = "['\u2019]";
4161
-
4162
- /** Used to match apostrophes. */
4163
- var reApos = RegExp(rsApos, 'g');
4164
-
4165
- /**
4166
- * Creates a function like `_.camelCase`.
4167
- *
4168
- * @private
4169
- * @param {Function} callback The function to combine each word.
4170
- * @returns {Function} Returns the new compounder function.
4171
- */
4172
- function createCompounder$1(callback) {
4173
- return function(string) {
4174
- return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');
4175
- };
4176
- }
4177
-
4178
- var _createCompounder = createCompounder$1;
4179
-
4180
- var createCompounder = _createCompounder;
4181
-
4182
- /**
4183
- * Converts `string` to
4184
- * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).
4185
- *
4186
- * @static
4187
- * @memberOf _
4188
- * @since 3.0.0
4189
- * @category String
4190
- * @param {string} [string=''] The string to convert.
4191
- * @returns {string} Returns the kebab cased string.
4192
- * @example
4193
- *
4194
- * _.kebabCase('Foo Bar');
4195
- * // => 'foo-bar'
4196
- *
4197
- * _.kebabCase('fooBar');
4198
- * // => 'foo-bar'
4199
- *
4200
- * _.kebabCase('__FOO_BAR__');
4201
- * // => 'foo-bar'
4202
- */
4203
- var kebabCase = createCompounder(function(result, word, index) {
4204
- return result + (index ? '-' : '') + word.toLowerCase();
4205
- });
4206
-
4207
- var kebabCase_1 = kebabCase;
4208
-
4209
- var TableHeaderCell = function (props) {
4210
- var _a;
4211
- var children = props.children, context = props.context, restProps = __rest$3(props, ["children", "context"]);
4212
- var sortable = context.header.column.getCanSort();
4213
- var sorted = context.header.column.getIsSorted();
4214
- var handleSort = context.header.column.getToggleSortingHandler();
4215
- var classes = useStyles$1(__assign$3(__assign$3({}, props), { sortable: sortable }));
4216
- var _b = useTheme$1(), spacing = _b.spacing, palette = _b.palette;
4217
- var sortIndicators = {
4218
- asc: SvgChevronUp,
4219
- desc: SvgChevronDown,
4220
- };
4221
- var idBase = (_a = context.table.options.meta) === null || _a === void 0 ? void 0 : _a.idBase;
4222
- var dataTourIdProps = idBase && sortable ? { 'data-tour-id': kebabCase_1("sort " + idBase + " on " + context.header.column.id) } : {};
4223
- return (React__default.createElement("th", __assign$3({ className: classes.root }, restProps),
4224
- React__default.createElement(Box, __assign$3({ className: classes.box, display: "flex", alignItems: "center", gridGap: spacing(1), onClick: handleSort }, dataTourIdProps),
4225
- children,
4226
- sortable && !sorted && React__default.createElement(Icon$1, { icon: SvgSort, color: palette.grey[500] }),
4227
- sortable && sorted && React__default.createElement(Icon$1, { icon: sortIndicators[sorted] }))));
4228
- };
4229
-
4230
- var useStyles = makeStyles({
4231
- chip: {
4232
- overflow: 'visible',
4233
- height: 'auto',
4234
- },
4235
- label: {
4236
- whiteSpace: 'normal',
4237
- },
4238
- });
4239
-
4240
- var ColumnFilterChip = function (props) {
4241
- var columnFilter = props.columnFilter, onClick = props.onClick, label = props.label;
4242
- var classes = useStyles();
4243
- return (React__default.createElement(Chip, { className: classes.chip, onDelete: function () { return onClick(columnFilter); }, label: React__default.createElement(Box, { display: "flex", gridGap: 4, flexWrap: "wrap" },
4244
- React__default.createElement(Typography$1, null,
4245
- label[0],
4246
- ":"),
4247
- React__default.createElement(Typography$1, __assign$3({ className: classes.label, weight: "semi-bold" }, { component: 'span' }), label[1])) }));
4248
- };
4249
-
4250
- var TableControlsContainer = function (props) {
4251
- var showTitle = props.showTitle, showGlobalSearch = props.showGlobalSearch, showColumnFilter = props.showColumnFilter;
4252
- var gridTemplateAreas;
4253
- switch (true) {
4254
- case showTitle && showGlobalSearch && showColumnFilter:
4255
- gridTemplateAreas = "\n \"title .\"\n \"globalFilter columnFilter\"\n ";
4256
- break;
4257
- case showTitle && !showGlobalSearch && showColumnFilter:
4258
- gridTemplateAreas = "\n \"title columnFilter\"\n ";
4259
- break;
4260
- case !showTitle && showGlobalSearch && showColumnFilter:
4261
- gridTemplateAreas = "\n \"globalFilter columnFilter\"\n ";
4262
- break;
4263
- case showTitle && !showGlobalSearch && !showColumnFilter:
4264
- gridTemplateAreas = "\n \"title .\"\n ";
4265
- break;
4266
- case !showTitle && !showGlobalSearch && showColumnFilter:
4267
- gridTemplateAreas = "\n \". columnFilter\"\n ";
4268
- break;
4269
- case !showTitle && showGlobalSearch && !showColumnFilter:
4270
- gridTemplateAreas = "\n \"globalFilter .\"\n ";
4271
- break;
4272
- case showTitle && showGlobalSearch && !showColumnFilter:
4273
- gridTemplateAreas = "\n \"title .\"\n \"globalFilter .\"\n ";
4274
- break;
4275
- }
4276
- return (React__default.createElement(Box, { display: "grid", gridTemplateColumns: "repeat(2, minmax(150px, 1fr))", gridTemplateAreas: gridTemplateAreas, gridGap: 16, marginBottom: 3 }, props.children));
4277
- };
4278
-
4279
- var ColumnFilterResetButton = function (props) {
4280
- var _a = props.children, children = _a === void 0 ? 'Clear All' : _a, restProps = __rest$3(props, ["children"]);
4281
- return (React__default.createElement(Button, __assign$3({ variant: "text", textTransform: "none" }, restProps), children));
4282
- };
4283
-
4284
- var defaultTableProps = {
4285
- enableSortingRemoval: true,
4286
- fullWidth: true,
4287
- paginated: true,
4288
- sortable: false,
4289
- searchable: false,
4290
- };
4291
- var Table = function (props) {
4292
- var title = props.title, data = props.data, columns = props.columns, enableSortingRemoval = props.enableSortingRemoval, loading = props.loading, searchable = props.searchable, sortable = props.sortable, externalFilterState = props.filterState, externalGlobalFilterState = props.globalFilterState, externalPaginationState = props.paginationState, externalSortingState = props.sortingState, externalVisibilityState = props.visibilityState, paginated = props.paginated, pageCount = props.pageCount, GlobalFilterProps = props.GlobalFilterProps, Empty = props.Empty, idBase = props.idBase, stageFilterSelections = props.stageFilterSelections;
4293
- var classes = useStyles$6(props);
4294
- var rootRef = useRef(null);
4295
- // Prepare Empty State
4296
- var isEmpty = data.length === 0;
4297
- var isEmptyComponentValid = Empty && isValidElement(createElement(Empty));
4298
- // Prepare Sorting
4299
- var _a = externalSortingState || [], sorting = _a[0], setSorting = _a[1];
4300
- var isControlledColumnSort = Boolean(externalSortingState);
4301
- var controlledColumnSortOptions = { onSortingChange: setSorting, manualSorting: true };
4302
- // Prepare Global Filtering
4303
- var _b = externalGlobalFilterState || [], globalFilter = _b[0], setGlobalFilter = _b[1];
4304
- var isControlledGlobalFilter = Boolean(externalGlobalFilterState);
4305
- var controlledGlobalFilterOptions = { onGlobalFilterChange: setGlobalFilter, manualFiltering: true };
4306
- // Prepare ColumnFiltering
4307
- var _c = externalFilterState || [], columnFilters = _c[0], setColumnFilters = _c[1];
4308
- var isControlledColumnFilters = Boolean(externalFilterState);
4309
- var controlledColumnFiltersOptions = { onColumnFiltersChange: setColumnFilters, manualFiltering: true };
4310
- // Prepare Pagination
4311
- var _d = externalPaginationState || [], pagination = _d[0], setPagination = _d[1];
4312
- var isControlledPagination = Boolean(externalPaginationState && pageCount);
4313
- var controlledPaginationOptions = { manualPagination: true, onPaginationChange: setPagination, pageCount: pageCount };
4314
- // Prepare Column Visibility
4315
- var columnVisibility = (externalVisibilityState || [])[0];
4316
- var isControlledColumnVisibility = Boolean(externalVisibilityState);
4317
- // Init table instance
4318
- var table = useReactTable(__assign$3(__assign$3(__assign$3(__assign$3(__assign$3(__assign$3({ data: data, columns: columns, state: __assign$3(__assign$3(__assign$3(__assign$3(__assign$3({}, (isControlledPagination && { pagination: pagination })), (isControlledGlobalFilter && { globalFilter: globalFilter })), (isControlledColumnFilters && { columnFilters: columnFilters })), (isControlledColumnVisibility && { columnVisibility: columnVisibility })), (isControlledColumnSort && { sorting: sorting })), enableSorting: sortable, enableSortingRemoval: enableSortingRemoval, globalFilterFn: coercedValueIncludesString, getCoreRowModel: getCoreRowModel(), getSortedRowModel: getSortedRowModel(), getFilteredRowModel: getFilteredRowModel() }, (paginated && { getPaginationRowModel: getPaginationRowModel() })), (isControlledPagination && controlledPaginationOptions)), (isControlledGlobalFilter && controlledGlobalFilterOptions)), (isControlledColumnFilters && controlledColumnFiltersOptions)), (isControlledColumnSort && controlledColumnSortOptions)), { meta: { idBase: idBase } }));
4319
- var _f = useColumnFilters(table), selectedColumnFilters = _f.selectedColumnFilters, hasColumnFilters = _f.hasColumnFilters, deselectColumnFilter = _f.deselectColumnFilter, formatSelectedFilterText = _f.formatSelectedFilterText, resetColumnFilters = _f.resetColumnFilters;
4320
- // stagedColumnFilters is only used when stageFilterSelections is enabled
4321
- var stagedColumnFilters = useStagedColumnFilters(selectedColumnFilters);
4322
- var handlePagination = function (_e, pageNumber) {
4323
- var pageIndex = pageNumber - 1;
4324
- table.setPageIndex(pageIndex);
4325
- };
4326
- var showTitle = Boolean(title);
4327
- var showGlobalSearch = Boolean(searchable || isControlledGlobalFilter);
4328
- var showColumnFilter = Boolean(hasColumnFilters);
4329
- var showControls = Boolean(showTitle || showGlobalSearch || showColumnFilter);
4330
- return (React__default.createElement(TableContext.Provider, { value: { table: table, stagedColumnFilters: stagedColumnFilters, stageFilterSelections: stageFilterSelections } },
4331
- React__default.createElement(Box, __assign$3({ className: classes.root }, { ref: rootRef }, { "data-table-element": "root" }, (table.getPageCount() > 1 && {
4332
- minHeight: getTableMinHeight(rootRef, table.getState().pagination.pageSize),
4333
- })),
4334
- showControls && (React__default.createElement(Box, null,
4335
- React__default.createElement(TableControlsContainer, { showTitle: showTitle, showGlobalSearch: showGlobalSearch, showColumnFilter: showColumnFilter },
4336
- showTitle && (React__default.createElement(Typography$2, { style: { gridArea: 'title', alignSelf: 'center', fontSize: '18px', lineHeight: '27px' } }, title)),
4337
- showGlobalSearch && (React__default.createElement(GlobalFilter, __assign$3({}, GlobalFilterProps, { value: table.getState().globalFilter, setValue: table.setGlobalFilter }))),
4338
- showColumnFilter && React__default.createElement(FilterPanel, null)),
4339
- React__default.createElement(Box, { display: "flex", flexWrap: "wrap", gridGap: 8 },
4340
- selectedColumnFilters.map(function (selectedColumnFilter, i) { return (React__default.createElement(ColumnFilterChip, { key: "selected-column-filter-chip-" + i, columnFilter: selectedColumnFilter, label: formatSelectedFilterText(selectedColumnFilter), onClick: function (columnFilter) {
4341
- if (stageFilterSelections) {
4342
- stagedColumnFilters.delete(columnFilter);
4343
- }
4344
- deselectColumnFilter(columnFilter);
4345
- } })); }),
4346
- selectedColumnFilters.length >= 1 && (React__default.createElement(ColumnFilterResetButton, { onClick: function () {
4347
- if (stageFilterSelections) {
4348
- stagedColumnFilters.clear();
4349
- }
4350
- resetColumnFilters();
4351
- } }))))),
4352
- React__default.createElement(Box, { className: classes.tableContainer, flexGrow: loading || isEmpty ? 0 : 1 },
4353
- React__default.createElement("table", { className: classes.table },
4354
- React__default.createElement(TableHeader, null, table.getHeaderGroups().map(function (headerGroup) { return (React__default.createElement(TableHeaderRow, { key: headerGroup.id }, headerGroup.headers.map(function (header) { return (React__default.createElement(TableHeaderCell, { key: header.id, context: header.getContext() }, flexRender(header.column.columnDef.header, header.getContext()))); }))); })),
4355
- !loading && (React__default.createElement(TableBody, null, table.getRowModel().rows.map(function (row) { return (React__default.createElement(TableRow, { key: row.id }, row.getVisibleCells().map(function (cell) { return (React__default.createElement(TableCell, { key: cell.id }, flexRender(cell.column.columnDef.cell, cell.getContext()))); }))); }))))),
4356
- isEmpty && isEmptyComponentValid && Empty && !loading && (React__default.createElement(Box, { display: "flex", flexDirection: "column", justifyContent: "center", alignItems: "center", p: 2, flexGrow: 1 }, createElement(Empty))),
4357
- loading && (React__default.createElement(Box, { display: "flex", flexDirection: "column", justifyContent: "center", alignItems: "center", p: 2, flexGrow: 1 },
4358
- React__default.createElement(CircularProgress, { size: 80, color: "inherit" }))),
4359
- paginated && table.getPageCount() > 1 && (React__default.createElement(TableFooter, null,
4360
- React__default.createElement(Pagination, { page: table.getState().pagination.pageIndex + 1, count: table.getPageCount(), onChange: handlePagination, disabled: loading }))))));
4361
- };
4362
- Table.defaultProps = defaultTableProps;
4363
-
4364
- var validateAction = function (action) {
4365
- var icon = action.icon, label = action.label, onClick = action.onClick;
4366
- var onClickIsValid = typeof onClick === 'function';
4367
- var labelIsValid = typeof label === 'string';
4368
- var iconIsValid = icon && isValidElement(createElement(icon));
4369
- return onClickIsValid && labelIsValid && iconIsValid;
4370
- };
4371
-
4372
- var RowActions = function (props) {
4373
- var context = props.context, actions = props.actions;
4374
- var validActions = actions.filter(validateAction);
4375
- var _a = React__default.useState(null), anchorEl = _a[0], setAnchorEl = _a[1];
4376
- var openMenu = function (event) {
4377
- setAnchorEl(event.currentTarget);
4378
- };
4379
- var closeMenu = function () {
4380
- setAnchorEl(null);
4381
- };
4382
- var actionsCount = validActions.length;
4383
- var mainActions;
4384
- var overflowActions;
4385
- if (actionsCount <= 3) {
4386
- mainActions = validActions;
4387
- }
4388
- else {
4389
- var firstAction = validActions[0], secondAction = validActions[1], restActions = validActions.slice(2);
4390
- mainActions = [firstAction, secondAction];
4391
- overflowActions = restActions;
4392
- }
4393
- return (React__default.createElement(Box, { display: "flex" },
4394
- mainActions.map(function (_a) {
4395
- var label = _a.label, onClick = _a.onClick, icon = _a.icon, restProps = __rest$3(_a, ["label", "onClick", "icon"]);
4396
- return (React__default.createElement(Tooltip$1, { title: label, key: label },
4397
- React__default.createElement(IconButton$1, __assign$3({ size: "small", onClick: function () { return onClick(context); } }, restProps),
4398
- React__default.createElement(Icon$1, { icon: icon }))));
4399
- }),
4400
- overflowActions && (React__default.createElement(React__default.Fragment, null,
4401
- React__default.createElement(IconButton$1, { size: "small", onClick: openMenu },
4402
- React__default.createElement(Icon$1, { icon: SvgMore })),
4403
- React__default.createElement(Menu, { anchorEl: anchorEl, open: Boolean(anchorEl), onClose: closeMenu }, overflowActions.map(function (action) { return (React__default.createElement(MenuItem, { key: action.label, onClick: function () { return action.onClick(context); } }, action.label)); }))))));
4404
- };
4405
-
4406
- export { GlobalFilter, RowActions, Table, TableBody, TableCell, TableFooter, TableHeader, TableHeaderCell, TableHeaderRow, TableRow };
4407
- //# sourceMappingURL=index.es.js.map