@popmenu/common-ui 0.18.4-alpha.0 → 0.19.0
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.
- package/build/components/index.d.ts +0 -1
- package/build/index.es.js +1 -266
- package/build/index.es.js.map +1 -1
- package/build/index.js +0 -264
- package/build/index.js.map +1 -1
- package/package.json +4 -7
- package/build/components/Table/Table.d.ts +0 -3
- package/build/components/Table/TableProps.d.ts +0 -28
- package/build/components/Table/TableStyles.d.ts +0 -2
- package/build/components/Table/index.d.ts +0 -2
- package/build/components/Table/util/makeColumns.d.ts +0 -7
- package/build/components/TableActionsCell/TableActionsCell.d.ts +0 -3
- package/build/components/TableActionsCell/TableActionsCellProps.d.ts +0 -10
- package/build/components/TableActionsCell/index.d.ts +0 -2
- package/build/components/TableBody/TableBody.d.ts +0 -2
- package/build/components/TableBody/index.d.ts +0 -1
- package/build/components/TableCell/TableCell.d.ts +0 -2
- package/build/components/TableCell/TableCellStyles.d.ts +0 -1
- package/build/components/TableCell/index.d.ts +0 -1
- package/build/components/TableFooter/TableFooter.d.ts +0 -2
- package/build/components/TableFooter/index.d.ts +0 -1
- package/build/components/TableHeader/TableHeader.d.ts +0 -2
- package/build/components/TableHeader/index.d.ts +0 -1
- package/build/components/TableHeaderCell/TableHeaderCell.d.ts +0 -3
- package/build/components/TableHeaderCell/TableHeaderCellProps.d.ts +0 -8
- package/build/components/TableHeaderCell/TableHeaderCellStyles.d.ts +0 -2
- package/build/components/TableHeaderCell/index.d.ts +0 -1
- package/build/components/TableHeaderRow/TableHeaderRow.d.ts +0 -2
- package/build/components/TableHeaderRow/index.d.ts +0 -1
- package/build/components/TableRow/TableRow.d.ts +0 -2
- package/build/components/TableRow/TableRowStyles.d.ts +0 -1
- package/build/components/TableRow/index.d.ts +0 -1
package/build/index.js
CHANGED
|
@@ -45,10 +45,6 @@ var MenuList = require('@material-ui/core/MenuList');
|
|
|
45
45
|
var MuiRadio = require('@material-ui/core/Radio');
|
|
46
46
|
var TextField = require('@material-ui/core/TextField');
|
|
47
47
|
var MuiSwitch = require('@material-ui/core/Switch');
|
|
48
|
-
var useTable_js = require('react-table/src/hooks/useTable.js');
|
|
49
|
-
var usePagination_js = require('react-table/src/plugin-hooks/usePagination.js');
|
|
50
|
-
var useSortBy_js = require('react-table/src/plugin-hooks/useSortBy.js');
|
|
51
|
-
var lab = require('@material-ui/lab');
|
|
52
48
|
var Tab = require('@material-ui/core/Tab');
|
|
53
49
|
var Tabs = require('@material-ui/core/Tabs');
|
|
54
50
|
var MuiToggleButton = require('@material-ui/lab/ToggleButton');
|
|
@@ -161,70 +157,6 @@ function __rest(s, e) {
|
|
|
161
157
|
t[p[i]] = s[p[i]];
|
|
162
158
|
}
|
|
163
159
|
return t;
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
function __spreadArray(to, from, pack) {
|
|
167
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
168
|
-
if (ar || !(i in from)) {
|
|
169
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
170
|
-
ar[i] = from[i];
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
return to.concat(ar || from);
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
var _path$3K;
|
|
177
|
-
|
|
178
|
-
function _extends$3$() { _extends$3$ = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$3$.apply(this, arguments); }
|
|
179
|
-
|
|
180
|
-
function SvgMore(props) {
|
|
181
|
-
return /*#__PURE__*/React__namespace.createElement("svg", _extends$3$({
|
|
182
|
-
viewBox: "0 0 16 16",
|
|
183
|
-
strokeLinecap: "round",
|
|
184
|
-
strokeLinejoin: "round",
|
|
185
|
-
stroke: "currentColor",
|
|
186
|
-
width: "1em",
|
|
187
|
-
height: "1em",
|
|
188
|
-
fill: "none"
|
|
189
|
-
}, props), _path$3K || (_path$3K = /*#__PURE__*/React__namespace.createElement("path", {
|
|
190
|
-
d: "M8 8.667a.667.667 0 100-1.334.667.667 0 000 1.334zM8 4a.667.667 0 100-1.333A.667.667 0 008 4zm0 9.333A.667.667 0 108 12a.667.667 0 000 1.333z"
|
|
191
|
-
})));
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
var _path$2X;
|
|
195
|
-
|
|
196
|
-
function _extends$3b() { _extends$3b = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$3b.apply(this, arguments); }
|
|
197
|
-
|
|
198
|
-
function SvgChevronDown(props) {
|
|
199
|
-
return /*#__PURE__*/React__namespace.createElement("svg", _extends$3b({
|
|
200
|
-
viewBox: "0 0 16 16",
|
|
201
|
-
strokeLinecap: "round",
|
|
202
|
-
strokeLinejoin: "round",
|
|
203
|
-
stroke: "currentColor",
|
|
204
|
-
width: "1em",
|
|
205
|
-
height: "1em",
|
|
206
|
-
fill: "none"
|
|
207
|
-
}, props), _path$2X || (_path$2X = /*#__PURE__*/React__namespace.createElement("path", {
|
|
208
|
-
d: "M4 6l4 4 4-4"
|
|
209
|
-
})));
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
var _path$2W;
|
|
213
|
-
|
|
214
|
-
function _extends$3a() { _extends$3a = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$3a.apply(this, arguments); }
|
|
215
|
-
|
|
216
|
-
function SvgChevronUp(props) {
|
|
217
|
-
return /*#__PURE__*/React__namespace.createElement("svg", _extends$3a({
|
|
218
|
-
viewBox: "0 0 16 16",
|
|
219
|
-
strokeLinecap: "round",
|
|
220
|
-
strokeLinejoin: "round",
|
|
221
|
-
stroke: "currentColor",
|
|
222
|
-
width: "1em",
|
|
223
|
-
height: "1em",
|
|
224
|
-
fill: "none"
|
|
225
|
-
}, props), _path$2W || (_path$2W = /*#__PURE__*/React__namespace.createElement("path", {
|
|
226
|
-
d: "M12 10L8 6l-4 4"
|
|
227
|
-
})));
|
|
228
160
|
}
|
|
229
161
|
|
|
230
162
|
var _path$1f;
|
|
@@ -1126,201 +1058,6 @@ var Switch = React.forwardRef(function (props, ref) {
|
|
|
1126
1058
|
});
|
|
1127
1059
|
Switch.displayName = 'Switch';
|
|
1128
1060
|
|
|
1129
|
-
var TableFooter = function (props) {
|
|
1130
|
-
return (React__default['default'].createElement(core.Box, { display: "flex", justifyContent: "center", alignItems: "end", paddingTop: 3, paddingBottom: 4, flexGrow: 1 }, props.children));
|
|
1131
|
-
};
|
|
1132
|
-
|
|
1133
|
-
var TableHeader = function (props) {
|
|
1134
|
-
var children = props.children, restProps = __rest(props, ["children"]);
|
|
1135
|
-
return React__default['default'].createElement("thead", __assign({}, restProps), children);
|
|
1136
|
-
};
|
|
1137
|
-
|
|
1138
|
-
var getWidth = function (props) {
|
|
1139
|
-
var isActionColumn = props.column.isActionColumn, fullWidth = props.tableProps.fullWidth;
|
|
1140
|
-
var width;
|
|
1141
|
-
if (fullWidth && isActionColumn) {
|
|
1142
|
-
width = '0.0000000001%';
|
|
1143
|
-
}
|
|
1144
|
-
if (fullWidth && !isActionColumn) {
|
|
1145
|
-
width = '1%';
|
|
1146
|
-
}
|
|
1147
|
-
if (!fullWidth && isActionColumn) {
|
|
1148
|
-
width = 72;
|
|
1149
|
-
}
|
|
1150
|
-
if (!fullWidth && !isActionColumn) {
|
|
1151
|
-
width = undefined;
|
|
1152
|
-
}
|
|
1153
|
-
return width;
|
|
1154
|
-
};
|
|
1155
|
-
var useTableHeaderCellStyles = core.makeStyles(function (theme) { return ({
|
|
1156
|
-
root: function (props) {
|
|
1157
|
-
var width = getWidth(props);
|
|
1158
|
-
return {
|
|
1159
|
-
borderBottomStyle: 'solid',
|
|
1160
|
-
borderBottomWidth: 2,
|
|
1161
|
-
borderBottomColor: theme.palette.grey[100],
|
|
1162
|
-
padding: theme.spacing(2),
|
|
1163
|
-
textAlign: 'left',
|
|
1164
|
-
fontWeight: 500,
|
|
1165
|
-
width: width,
|
|
1166
|
-
};
|
|
1167
|
-
},
|
|
1168
|
-
}); });
|
|
1169
|
-
|
|
1170
|
-
var TableHeaderCell = function (props) {
|
|
1171
|
-
var children = props.children, column = props.column; props.tableProps; var restProps = __rest(props, ["children", "column", "tableProps"]);
|
|
1172
|
-
var root = useTableHeaderCellStyles(props).root;
|
|
1173
|
-
var _a = core.useTheme(), palette = _a.palette, spacing = _a.spacing;
|
|
1174
|
-
//@ts-expect-error @types/react-table issue
|
|
1175
|
-
var canSort = column.canSort, isSorted = column.isSorted, isSortedDesc = column.isSortedDesc, isActionColumn = column.isActionColumn;
|
|
1176
|
-
var showSortIndicator = canSort && !isActionColumn;
|
|
1177
|
-
return (React__default['default'].createElement("th", __assign({ className: root }, restProps),
|
|
1178
|
-
React__default['default'].createElement(core.Box, { display: "flex", alignItems: "center", gridGap: spacing(1) },
|
|
1179
|
-
children,
|
|
1180
|
-
showSortIndicator && (React__default['default'].createElement(Icon, { icon: isSortedDesc ? SvgChevronDown : SvgChevronUp, color: isSorted ? palette.text.primary : palette.text.disabled, size: "large" })))));
|
|
1181
|
-
};
|
|
1182
|
-
|
|
1183
|
-
var TableHeaderRow = function (props) {
|
|
1184
|
-
var children = props.children, restProps = __rest(props, ["children"]);
|
|
1185
|
-
return React__default['default'].createElement("tr", __assign({}, restProps), children);
|
|
1186
|
-
};
|
|
1187
|
-
|
|
1188
|
-
var useTableRowStyles = core.makeStyles(function (theme) { return ({
|
|
1189
|
-
root: function () { return ({
|
|
1190
|
-
'&:nth-child(even)': {
|
|
1191
|
-
backgroundColor: theme.palette.grey[100],
|
|
1192
|
-
},
|
|
1193
|
-
}); },
|
|
1194
|
-
}); });
|
|
1195
|
-
|
|
1196
|
-
var TableRow = function (props) {
|
|
1197
|
-
var children = props.children, restProps = __rest(props, ["children"]);
|
|
1198
|
-
var root = useTableRowStyles(props).root;
|
|
1199
|
-
return (React__default['default'].createElement("tr", __assign({ className: root }, restProps), children));
|
|
1200
|
-
};
|
|
1201
|
-
|
|
1202
|
-
var TableBody = function (props) {
|
|
1203
|
-
var children = props.children, restProps = __rest(props, ["children"]);
|
|
1204
|
-
return React__default['default'].createElement("tbody", __assign({}, restProps), children);
|
|
1205
|
-
};
|
|
1206
|
-
|
|
1207
|
-
var useTableCellStyles = core.makeStyles(function (theme) { return ({
|
|
1208
|
-
root: function () { return ({
|
|
1209
|
-
padding: theme.spacing(2),
|
|
1210
|
-
}); },
|
|
1211
|
-
}); });
|
|
1212
|
-
|
|
1213
|
-
var TableCell = function (props) {
|
|
1214
|
-
var children = props.children, restProps = __rest(props, ["children"]);
|
|
1215
|
-
var root = useTableCellStyles(props).root;
|
|
1216
|
-
return (React__default['default'].createElement("td", __assign({ className: root }, restProps), children));
|
|
1217
|
-
};
|
|
1218
|
-
|
|
1219
|
-
var useTableStyles = core.makeStyles(function (_a) {
|
|
1220
|
-
var typography = _a.typography;
|
|
1221
|
-
return ({
|
|
1222
|
-
root: function (_a) {
|
|
1223
|
-
var fullWidth = _a.fullWidth;
|
|
1224
|
-
return ({
|
|
1225
|
-
display: fullWidth ? 'flex' : 'inline-flex',
|
|
1226
|
-
flexDirection: 'column',
|
|
1227
|
-
});
|
|
1228
|
-
},
|
|
1229
|
-
table: function (_a) {
|
|
1230
|
-
var fullWidth = _a.fullWidth;
|
|
1231
|
-
return (__assign(__assign({ borderCollapse: 'collapse' }, (fullWidth && { width: '100%' })), typography.body1));
|
|
1232
|
-
},
|
|
1233
|
-
tableWrap: function () { return ({
|
|
1234
|
-
maxWidth: '100%',
|
|
1235
|
-
overflowX: 'auto',
|
|
1236
|
-
overflowY: 'hidden',
|
|
1237
|
-
}); },
|
|
1238
|
-
});
|
|
1239
|
-
});
|
|
1240
|
-
|
|
1241
|
-
var TableActionsCell = function (props) {
|
|
1242
|
-
var _a = props.actions, primary = _a.primary, secondary = _a.secondary, intermediate = __rest(_a, ["primary", "secondary"]);
|
|
1243
|
-
var tertiary = intermediate.tertiary, restActions = __rest(intermediate, ["tertiary"]);
|
|
1244
|
-
var overflow = Object.keys(props.actions).length > 3;
|
|
1245
|
-
var _b = React__default['default'].useState(null), anchorEl = _b[0], setAnchorEl = _b[1];
|
|
1246
|
-
var openMenu = function (event) {
|
|
1247
|
-
setAnchorEl(event.currentTarget);
|
|
1248
|
-
};
|
|
1249
|
-
var closeMenu = function () {
|
|
1250
|
-
setAnchorEl(null);
|
|
1251
|
-
};
|
|
1252
|
-
var handleItemClick = function (action) {
|
|
1253
|
-
action(props.cell);
|
|
1254
|
-
closeMenu();
|
|
1255
|
-
};
|
|
1256
|
-
return (React__default['default'].createElement(core.Box, { display: "flex" },
|
|
1257
|
-
primary && primary.icon && (React__default['default'].createElement(IconButton, { size: "small", onClick: function () { return primary.action(props.cell); } },
|
|
1258
|
-
React__default['default'].createElement(Icon, { icon: primary.icon }))),
|
|
1259
|
-
secondary && secondary.icon && (React__default['default'].createElement(IconButton, { size: "small", onClick: function () { return secondary.action(props.cell); } },
|
|
1260
|
-
React__default['default'].createElement(Icon, { icon: secondary.icon }))),
|
|
1261
|
-
!overflow && tertiary && tertiary.icon && (React__default['default'].createElement(IconButton, { size: "small", onClick: function () { return tertiary.action(props.cell); } },
|
|
1262
|
-
React__default['default'].createElement(Icon, { icon: tertiary.icon }))),
|
|
1263
|
-
overflow && restActions && (React__default['default'].createElement(React__default['default'].Fragment, null,
|
|
1264
|
-
React__default['default'].createElement(IconButton, { size: "small", onClick: openMenu },
|
|
1265
|
-
React__default['default'].createElement(Icon, { icon: SvgMore })),
|
|
1266
|
-
React__default['default'].createElement(Menu__default['default'], { anchorEl: anchorEl, open: Boolean(anchorEl), onClose: closeMenu }, Object.values(__assign({ tertiary: tertiary }, restActions))
|
|
1267
|
-
.filter(function (value) { return value; })
|
|
1268
|
-
.map(function (_a, i) {
|
|
1269
|
-
var label = _a.label, action = _a.action;
|
|
1270
|
-
return (React__default['default'].createElement(MenuItem__default['default'], { key: i, onClick: function () { return handleItemClick(action); } }, label));
|
|
1271
|
-
}))))));
|
|
1272
|
-
};
|
|
1273
|
-
|
|
1274
|
-
var makeColumns = function (config) {
|
|
1275
|
-
var columns = config.columns, actions = config.actions, actionColumnId = config.actionColumnId;
|
|
1276
|
-
var actionColumn;
|
|
1277
|
-
var memoizedColumns = __spreadArray([], columns);
|
|
1278
|
-
if (actions) {
|
|
1279
|
-
var CellComponent = function (props) { return React__default['default'].createElement(TableActionsCell, __assign({}, props, { actions: actions })); };
|
|
1280
|
-
actionColumn = {
|
|
1281
|
-
id: actionColumnId,
|
|
1282
|
-
Header: function () { return null; },
|
|
1283
|
-
Cell: CellComponent,
|
|
1284
|
-
};
|
|
1285
|
-
memoizedColumns = __spreadArray(__spreadArray([], columns), [actionColumn]);
|
|
1286
|
-
}
|
|
1287
|
-
return memoizedColumns;
|
|
1288
|
-
};
|
|
1289
|
-
|
|
1290
|
-
/* eslint-disable react/jsx-key */
|
|
1291
|
-
var Table = function (props) {
|
|
1292
|
-
var actionColumnId = 'table-actions-column';
|
|
1293
|
-
var rawColumns = props.columns, data = props.data, actions = props.actions, sortable = props.sortable, emptyMessage = props.emptyMessage, EmptyImage = props.EmptyImage, isLoading = props.loading, enableMinHeight = props.enableMinHeight;
|
|
1294
|
-
var classes = useTableStyles(props);
|
|
1295
|
-
var columns = React.useMemo(function () { return makeColumns({ columns: rawColumns, actions: actions, actionColumnId: actionColumnId }); }, [rawColumns, actions]);
|
|
1296
|
-
var instance = useTable_js.useTable({ columns: columns, data: data, disableSortBy: !sortable }, useSortBy_js.useSortBy, usePagination_js.usePagination);
|
|
1297
|
-
var getTableProps = instance.getTableProps, getTableBodyProps = instance.getTableBodyProps, headerGroups = instance.headerGroups, page = instance.page, prepareRow = instance.prepareRow, pageCount = instance.pageCount, gotoPage = instance.gotoPage, state = instance.state, rows = instance.rows;
|
|
1298
|
-
var isPaginated = pageCount > 1;
|
|
1299
|
-
var isEmpty = rows.length === 0;
|
|
1300
|
-
var handlePagination = function (_e, pageNumber) {
|
|
1301
|
-
gotoPage(pageNumber - 1);
|
|
1302
|
-
};
|
|
1303
|
-
return (React__default['default'].createElement(core.Box, { className: classes.root, minHeight: (isLoading || isEmpty) && enableMinHeight ? 618 : 'unset' },
|
|
1304
|
-
React__default['default'].createElement(core.Box, { className: classes.tableWrap, minHeight: page.length > 0 && !isLoading && enableMinHeight ? 618 : 'unset' },
|
|
1305
|
-
React__default['default'].createElement("table", __assign({ className: classes.table }, getTableProps()),
|
|
1306
|
-
React__default['default'].createElement(TableHeader, null, headerGroups.map(function (headerGroup) { return (React__default['default'].createElement(TableHeaderRow, __assign({}, headerGroup.getHeaderGroupProps()), headerGroup.headers.map(function (column) { return (React__default['default'].createElement(TableHeaderCell, __assign({}, column.getHeaderProps(column.getSortByToggleProps()), { column: __assign(__assign({}, column), { isActionColumn: column.id === actionColumnId }), tableProps: props }), column.render('Header'))); }))); })),
|
|
1307
|
-
!isEmpty && !isLoading && (React__default['default'].createElement(TableBody, __assign({}, getTableBodyProps()), page.map(function (row) {
|
|
1308
|
-
prepareRow(row);
|
|
1309
|
-
return (React__default['default'].createElement(TableRow, __assign({}, row.getRowProps()), row.cells.map(function (cell) { return (React__default['default'].createElement(TableCell, __assign({}, cell.getCellProps()), cell.render('Cell'))); })));
|
|
1310
|
-
}))))),
|
|
1311
|
-
isEmpty && (React__default['default'].createElement(core.Box, { display: "flex", flexDirection: "column", justifyContent: "center", alignItems: "center", p: 2, flexGrow: 1 },
|
|
1312
|
-
EmptyImage && EmptyImage(),
|
|
1313
|
-
React__default['default'].createElement(Typography, null, emptyMessage))),
|
|
1314
|
-
isLoading && (React__default['default'].createElement(core.Box, { display: "flex", flexDirection: "column", justifyContent: "center", alignItems: "center", p: 2, flexGrow: 1 },
|
|
1315
|
-
React__default['default'].createElement(CircularProgress__default['default'], { size: 80, color: "inherit" }))),
|
|
1316
|
-
isPaginated && !isLoading && (React__default['default'].createElement(TableFooter, null,
|
|
1317
|
-
React__default['default'].createElement(lab.Pagination, { count: pageCount, page: state.pageIndex + 1, onChange: handlePagination })))));
|
|
1318
|
-
};
|
|
1319
|
-
Table.defaultProps = {
|
|
1320
|
-
emptyMessage: 'No results.',
|
|
1321
|
-
enableMinHeight: true,
|
|
1322
|
-
};
|
|
1323
|
-
|
|
1324
1061
|
var useToggleButtonStyles = styles.makeStyles(function (theme) { return ({
|
|
1325
1062
|
root: {
|
|
1326
1063
|
color: theme.palette.text.primary,
|
|
@@ -1815,7 +1552,6 @@ exports.PaperContent = PaperContent;
|
|
|
1815
1552
|
exports.Radio = Radio;
|
|
1816
1553
|
exports.SplitInput = SplitInput;
|
|
1817
1554
|
exports.Switch = Switch;
|
|
1818
|
-
exports.Table = Table;
|
|
1819
1555
|
exports.ToggleButton = ToggleButton;
|
|
1820
1556
|
exports.ToggleButtonGroup = ToggleButtonGroup;
|
|
1821
1557
|
exports.Tooltip = Tooltip;
|