@canonical/react-components 0.41.0 → 0.43.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/dist/__mocks__/nanoid.js +0 -2
- package/dist/components/Accordion/Accordion.js +13 -37
- package/dist/components/Accordion/AccordionSection/AccordionSection.js +8 -14
- package/dist/components/Accordion/AccordionSection/index.js +0 -2
- package/dist/components/Accordion/index.js +0 -2
- package/dist/components/ActionButton/ActionButton.js +36 -65
- package/dist/components/ActionButton/index.js +0 -2
- package/dist/components/ArticlePagination/ArticlePagination.js +5 -15
- package/dist/components/ArticlePagination/index.js +0 -2
- package/dist/components/Badge/Badge.js +10 -28
- package/dist/components/Badge/index.js +0 -2
- package/dist/components/Button/Button.js +12 -25
- package/dist/components/Button/index.js +0 -4
- package/dist/components/Card/Card.js +7 -18
- package/dist/components/Card/index.js +0 -2
- package/dist/components/CheckboxInput/CheckableInput/CheckableInput.js +6 -20
- package/dist/components/CheckboxInput/CheckableInput/index.js +0 -2
- package/dist/components/CheckboxInput/CheckboxInput.js +3 -13
- package/dist/components/CheckboxInput/index.js +0 -2
- package/dist/components/Chip/Chip.js +14 -30
- package/dist/components/Chip/index.js +0 -2
- package/dist/components/Code/Code.js +5 -23
- package/dist/components/Code/index.js +0 -2
- package/dist/components/CodeSnippet/CodeSnippet.js +2 -12
- package/dist/components/CodeSnippet/CodeSnippetBlock.js +10 -18
- package/dist/components/CodeSnippet/CodeSnippetDropdown.js +5 -14
- package/dist/components/CodeSnippet/index.js +0 -3
- package/dist/components/Col/Col.js +15 -25
- package/dist/components/Col/index.js +0 -4
- package/dist/components/ConfirmationButton/ConfirmationButton.d.ts +25 -0
- package/dist/components/ConfirmationButton/ConfirmationButton.js +59 -0
- package/dist/components/ConfirmationButton/index.d.ts +2 -0
- package/dist/components/ConfirmationButton/index.js +13 -0
- package/dist/components/ConfirmationModal/ConfirmationModal.d.ts +33 -0
- package/dist/components/ConfirmationModal/ConfirmationModal.js +38 -0
- package/dist/components/ConfirmationModal/index.d.ts +2 -0
- package/dist/components/ConfirmationModal/index.js +13 -0
- package/dist/components/ContextualMenu/ContextualMenu.d.ts +3 -3
- package/dist/components/ContextualMenu/ContextualMenu.js +66 -101
- package/dist/components/ContextualMenu/ContextualMenuDropdown/ContextualMenuDropdown.d.ts +2 -1
- package/dist/components/ContextualMenu/ContextualMenuDropdown/ContextualMenuDropdown.js +48 -85
- package/dist/components/ContextualMenu/ContextualMenuDropdown/index.js +0 -2
- package/dist/components/ContextualMenu/index.js +0 -2
- package/dist/components/EmptyState/EmptyState.d.ts +22 -0
- package/dist/components/EmptyState/EmptyState.js +27 -0
- package/dist/components/EmptyState/index.d.ts +2 -0
- package/dist/components/EmptyState/index.js +13 -0
- package/dist/components/Field/Field.js +35 -51
- package/dist/components/Field/index.js +0 -2
- package/dist/components/Form/Form.js +4 -14
- package/dist/components/Form/index.js +0 -2
- package/dist/components/Icon/Icon.js +3 -14
- package/dist/components/Icon/Icon.stories.scss +1 -0
- package/dist/components/Icon/index.js +0 -4
- package/dist/components/Input/Input.js +21 -39
- package/dist/components/Input/index.js +0 -2
- package/dist/components/Label/Label.js +7 -13
- package/dist/components/Label/index.js +0 -2
- package/dist/components/Link/Link.js +10 -22
- package/dist/components/Link/index.js +0 -2
- package/dist/components/List/List.d.ts +5 -5
- package/dist/components/List/List.js +17 -32
- package/dist/components/List/index.js +0 -2
- package/dist/components/Loader/Loader.js +0 -7
- package/dist/components/Loader/index.js +0 -2
- package/dist/components/MainTable/MainTable.js +59 -111
- package/dist/components/MainTable/index.js +0 -2
- package/dist/components/Modal/Modal.js +7 -34
- package/dist/components/Modal/index.js +0 -2
- package/dist/components/ModularTable/ModularTable.d.ts +9 -1
- package/dist/components/ModularTable/ModularTable.js +39 -46
- package/dist/components/ModularTable/index.js +0 -2
- package/dist/components/Navigation/Navigation.js +46 -82
- package/dist/components/Navigation/NavigationLink/NavigationLink.js +15 -30
- package/dist/components/Navigation/NavigationLink/index.js +0 -2
- package/dist/components/Navigation/NavigationMenu/NavigationMenu.js +12 -35
- package/dist/components/Navigation/NavigationMenu/index.js +0 -2
- package/dist/components/Navigation/index.js +0 -2
- package/dist/components/Notification/Notification.d.ts +6 -0
- package/dist/components/Notification/Notification.js +29 -42
- package/dist/components/Notification/index.js +0 -4
- package/dist/components/NotificationProvider/NotificationProvider.d.ts +5 -0
- package/dist/components/NotificationProvider/NotificationProvider.js +119 -0
- package/dist/components/NotificationProvider/index.d.ts +3 -0
- package/dist/components/NotificationProvider/index.js +49 -0
- package/dist/components/NotificationProvider/messageBuilder.d.ts +6 -0
- package/dist/components/NotificationProvider/messageBuilder.js +41 -0
- package/dist/components/NotificationProvider/types.d.ts +30 -0
- package/dist/components/NotificationProvider/types.js +5 -0
- package/dist/components/Pagination/Pagination.js +14 -44
- package/dist/components/Pagination/PaginationButton/PaginationButton.js +3 -10
- package/dist/components/Pagination/PaginationButton/index.js +0 -2
- package/dist/components/Pagination/PaginationItem/PaginationItem.js +3 -8
- package/dist/components/Pagination/PaginationItem/index.js +0 -2
- package/dist/components/Pagination/index.js +0 -2
- package/dist/components/PasswordToggle/PasswordToggle.js +16 -45
- package/dist/components/PasswordToggle/index.js +0 -2
- package/dist/components/RadioInput/RadioInput.js +1 -11
- package/dist/components/RadioInput/index.js +0 -2
- package/dist/components/Row/Row.js +2 -12
- package/dist/components/Row/index.js +0 -2
- package/dist/components/SearchAndFilter/FilterPanelSection/FilterPanelSection.js +27 -49
- package/dist/components/SearchAndFilter/FilterPanelSection/index.js +0 -2
- package/dist/components/SearchAndFilter/SearchAndFilter.d.ts +9 -1
- package/dist/components/SearchAndFilter/SearchAndFilter.js +68 -104
- package/dist/components/SearchAndFilter/index.js +0 -2
- package/dist/components/SearchAndFilter/utils.js +1 -7
- package/dist/components/SearchBox/SearchBox.js +14 -34
- package/dist/components/SearchBox/index.js +0 -2
- package/dist/components/Select/Select.js +20 -33
- package/dist/components/Select/index.js +0 -2
- package/dist/components/Slider/Slider.js +16 -32
- package/dist/components/Slider/index.js +0 -2
- package/dist/components/Spinner/Spinner.js +8 -19
- package/dist/components/Spinner/index.js +0 -2
- package/dist/components/StatusLabel/StatusLabel.js +4 -15
- package/dist/components/StatusLabel/index.js +0 -4
- package/dist/components/Strip/Strip.js +25 -36
- package/dist/components/Strip/index.js +0 -2
- package/dist/components/SummaryButton/SummaryButton.js +4 -10
- package/dist/components/SummaryButton/index.js +0 -2
- package/dist/components/Switch/Switch.js +3 -12
- package/dist/components/Switch/index.js +0 -2
- package/dist/components/Table/Table.js +6 -16
- package/dist/components/Table/index.js +0 -2
- package/dist/components/TableCell/TableCell.js +10 -20
- package/dist/components/TableCell/index.js +0 -2
- package/dist/components/TableHeader/TableHeader.js +2 -11
- package/dist/components/TableHeader/index.js +0 -2
- package/dist/components/TableRow/TableRow.js +1 -10
- package/dist/components/TableRow/index.js +0 -2
- package/dist/components/Tabs/Tabs.js +7 -17
- package/dist/components/Tabs/index.js +0 -2
- package/dist/components/Textarea/Textarea.js +23 -36
- package/dist/components/Textarea/index.js +0 -2
- package/dist/components/Tooltip/Tooltip.js +38 -88
- package/dist/components/Tooltip/index.js +0 -4
- package/dist/enums.js +0 -2
- package/dist/hooks/index.js +0 -8
- package/dist/hooks/useClickOutside.js +2 -7
- package/dist/hooks/useId.js +0 -4
- package/dist/hooks/useListener.js +0 -8
- package/dist/hooks/useOnEscapePressed.js +0 -3
- package/dist/hooks/usePagination.js +13 -25
- package/dist/hooks/usePrevious.js +0 -3
- package/dist/hooks/useThrottle.js +1 -15
- package/dist/hooks/useWindowFitment.js +6 -13
- package/dist/index.d.ts +8 -0
- package/dist/index.js +64 -52
- package/dist/utils.js +3 -10
- package/package.json +31 -28
|
@@ -1,68 +1,40 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
|
|
12
9
|
var _Pagination = _interopRequireDefault(require("../Pagination"));
|
|
13
|
-
|
|
14
10
|
var _Table = _interopRequireDefault(require("../Table"));
|
|
15
|
-
|
|
16
11
|
var _TableRow = _interopRequireDefault(require("../TableRow"));
|
|
17
|
-
|
|
18
12
|
var _TableHeader = _interopRequireDefault(require("../TableHeader"));
|
|
19
|
-
|
|
20
13
|
var _TableCell = _interopRequireDefault(require("../TableCell"));
|
|
21
|
-
|
|
22
14
|
var _hooks = require("../../hooks");
|
|
23
|
-
|
|
24
15
|
var _excluded = ["content", "sortKey"],
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
16
|
+
_excluded2 = ["columns", "expanded", "expandedContent", "key", "sortData"],
|
|
17
|
+
_excluded3 = ["content"],
|
|
18
|
+
_excluded4 = ["defaultSort", "defaultSortDirection", "emptyStateMsg", "expanding", "headers", "onUpdateSort", "paginate", "rows", "responsive", "sortable", "sortFunction", "hiddenCaption"];
|
|
29
19
|
var _this = void 0;
|
|
30
|
-
|
|
31
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
32
|
-
|
|
33
21
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
34
|
-
|
|
35
22
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
36
|
-
|
|
37
23
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
38
|
-
|
|
39
24
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
40
|
-
|
|
41
|
-
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
42
|
-
|
|
25
|
+
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
43
26
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
44
|
-
|
|
45
27
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
46
|
-
|
|
47
28
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
48
|
-
|
|
49
29
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
50
|
-
|
|
51
30
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
52
|
-
|
|
53
31
|
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
54
|
-
|
|
55
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
56
|
-
|
|
32
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
57
33
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
58
|
-
|
|
59
34
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
60
|
-
|
|
61
35
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
62
|
-
|
|
63
36
|
var updateSort = function updateSort(setSortKey, setSortDirection, sortKey, sortDirection) {
|
|
64
37
|
var newDirection = null;
|
|
65
|
-
|
|
66
38
|
if (sortDirection === "none") {
|
|
67
39
|
newDirection = "ascending";
|
|
68
40
|
} else if (sortDirection === "ascending") {
|
|
@@ -70,19 +42,15 @@ var updateSort = function updateSort(setSortKey, setSortDirection, sortKey, sort
|
|
|
70
42
|
} else {
|
|
71
43
|
sortKey = null;
|
|
72
44
|
}
|
|
73
|
-
|
|
74
45
|
setSortKey(sortKey);
|
|
75
46
|
setSortDirection(newDirection);
|
|
76
47
|
};
|
|
77
|
-
|
|
78
48
|
var generateHeaders = function generateHeaders(currentSortKey, currentSortDirection, expanding, headers, sortable, setSortKey, setSortDirection) {
|
|
79
49
|
var headerItems = headers.map(function (_ref, index) {
|
|
80
50
|
var content = _ref.content,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
51
|
+
sortKey = _ref.sortKey,
|
|
52
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
84
53
|
var sortDirection;
|
|
85
|
-
|
|
86
54
|
if (sortable && sortKey) {
|
|
87
55
|
if (currentSortKey === sortKey) {
|
|
88
56
|
sortDirection = currentSortDirection;
|
|
@@ -90,55 +58,49 @@ var generateHeaders = function generateHeaders(currentSortKey, currentSortDirect
|
|
|
90
58
|
sortDirection = "none";
|
|
91
59
|
}
|
|
92
60
|
}
|
|
93
|
-
|
|
94
61
|
return /*#__PURE__*/_react.default.createElement(_TableHeader.default, _extends({
|
|
95
62
|
key: index,
|
|
96
63
|
sort: sortDirection,
|
|
97
64
|
onClick: sortable && sortKey ? updateSort.bind(_this, setSortKey, setSortDirection, sortKey, sortDirection) : undefined
|
|
98
65
|
}, props), content);
|
|
99
|
-
});
|
|
66
|
+
});
|
|
67
|
+
// When there is expanding content then provide an extra hidden header to
|
|
100
68
|
// account for the extra cell in the body rows.
|
|
101
|
-
|
|
102
69
|
return /*#__PURE__*/_react.default.createElement("thead", null, /*#__PURE__*/_react.default.createElement(_TableRow.default, null, headerItems, expanding && /*#__PURE__*/_react.default.createElement(_TableHeader.default, {
|
|
103
70
|
"aria-hidden": "true"
|
|
104
71
|
})));
|
|
105
72
|
};
|
|
106
|
-
|
|
107
73
|
var generateRows = function generateRows(_ref2) {
|
|
108
74
|
var rows = _ref2.rows,
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
75
|
+
headers = _ref2.headers,
|
|
76
|
+
responsive = _ref2.responsive,
|
|
77
|
+
expanding = _ref2.expanding;
|
|
112
78
|
return rows.map(function (_ref3, index) {
|
|
113
79
|
var columns = _ref3.columns,
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
80
|
+
expanded = _ref3.expanded,
|
|
81
|
+
expandedContent = _ref3.expandedContent,
|
|
82
|
+
key = _ref3.key,
|
|
83
|
+
sortData = _ref3.sortData,
|
|
84
|
+
rowProps = _objectWithoutProperties(_ref3, _excluded2);
|
|
120
85
|
var cellItems = columns === null || columns === void 0 ? void 0 : columns.map(function (_ref4, index) {
|
|
121
86
|
var content = _ref4.content,
|
|
122
|
-
|
|
123
|
-
|
|
87
|
+
cellProps = _objectWithoutProperties(_ref4, _excluded3);
|
|
124
88
|
var headerContent = headers && headers[index]["content"];
|
|
125
89
|
var headerReplacement = headers && headers[index]["heading"];
|
|
126
|
-
|
|
127
90
|
if (responsive) {
|
|
128
91
|
cellProps["data-heading"] = typeof headerContent === "string" ? headerContent : headerReplacement;
|
|
129
92
|
}
|
|
130
|
-
|
|
131
93
|
return /*#__PURE__*/_react.default.createElement(_TableCell.default, _extends({
|
|
132
94
|
key: index
|
|
133
95
|
}, cellProps), content);
|
|
134
|
-
});
|
|
135
|
-
|
|
96
|
+
});
|
|
97
|
+
// if key was not provided as a prop, use row's index instead
|
|
136
98
|
if (key === null || typeof key === "undefined") {
|
|
137
99
|
key = index;
|
|
138
|
-
}
|
|
139
|
-
// table cells in rows that do have expanding content.
|
|
140
|
-
|
|
100
|
+
}
|
|
141
101
|
|
|
102
|
+
// The expanding cell is alway created to match the correct number of
|
|
103
|
+
// table cells in rows that do have expanding content.
|
|
142
104
|
return /*#__PURE__*/_react.default.createElement(_TableRow.default, _extends({
|
|
143
105
|
key: key
|
|
144
106
|
}, rowProps), cellItems, expanding && /*#__PURE__*/_react.default.createElement(_TableCell.default, {
|
|
@@ -147,86 +109,74 @@ var generateRows = function generateRows(_ref2) {
|
|
|
147
109
|
}, expandedContent));
|
|
148
110
|
});
|
|
149
111
|
};
|
|
150
|
-
|
|
151
112
|
var sortRows = function sortRows(_ref5) {
|
|
152
113
|
var currentSortDirection = _ref5.currentSortDirection,
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
114
|
+
currentSortKey = _ref5.currentSortKey,
|
|
115
|
+
rows = _ref5.rows,
|
|
116
|
+
sortable = _ref5.sortable,
|
|
117
|
+
sortFunction = _ref5.sortFunction;
|
|
158
118
|
if (!rows) {
|
|
159
119
|
return [];
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
|
|
120
|
+
}
|
|
121
|
+
// Clone the rows so we can restore the original order.
|
|
163
122
|
var sortedRows = _toConsumableArray(rows);
|
|
164
|
-
|
|
165
123
|
if (sortable && currentSortKey) {
|
|
166
124
|
if (!sortFunction) {
|
|
167
125
|
sortFunction = function sortFunction(a, b) {
|
|
168
126
|
if (!a.sortData || !b.sortData) {
|
|
169
127
|
return 0;
|
|
170
128
|
}
|
|
171
|
-
|
|
172
129
|
if (a.sortData[currentSortKey] > b.sortData[currentSortKey]) {
|
|
173
130
|
return currentSortDirection === "ascending" ? 1 : -1;
|
|
174
131
|
} else if (a.sortData[currentSortKey] < b.sortData[currentSortKey]) {
|
|
175
132
|
return currentSortDirection === "ascending" ? -1 : 1;
|
|
176
133
|
}
|
|
177
|
-
|
|
178
134
|
return 0;
|
|
179
135
|
};
|
|
180
136
|
}
|
|
181
|
-
|
|
182
137
|
sortedRows.sort(function (a, b) {
|
|
183
138
|
return sortFunction(a, b, currentSortDirection, currentSortKey);
|
|
184
139
|
});
|
|
185
140
|
}
|
|
186
|
-
|
|
187
141
|
return sortedRows;
|
|
188
142
|
};
|
|
189
|
-
|
|
190
143
|
var MainTable = function MainTable(_ref6) {
|
|
191
144
|
var defaultSort = _ref6.defaultSort,
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
145
|
+
defaultSortDirection = _ref6.defaultSortDirection,
|
|
146
|
+
_ref6$emptyStateMsg = _ref6.emptyStateMsg,
|
|
147
|
+
emptyStateMsg = _ref6$emptyStateMsg === void 0 ? "" : _ref6$emptyStateMsg,
|
|
148
|
+
expanding = _ref6.expanding,
|
|
149
|
+
headers = _ref6.headers,
|
|
150
|
+
onUpdateSort = _ref6.onUpdateSort,
|
|
151
|
+
paginate = _ref6.paginate,
|
|
152
|
+
rows = _ref6.rows,
|
|
153
|
+
responsive = _ref6.responsive,
|
|
154
|
+
sortable = _ref6.sortable,
|
|
155
|
+
sortFunction = _ref6.sortFunction,
|
|
156
|
+
hiddenCaption = _ref6.hiddenCaption,
|
|
157
|
+
props = _objectWithoutProperties(_ref6, _excluded4);
|
|
206
158
|
var _useState = (0, _react.useState)(defaultSort),
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
159
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
160
|
+
currentSortKey = _useState2[0],
|
|
161
|
+
setSortKey = _useState2[1];
|
|
211
162
|
var _useState3 = (0, _react.useState)(defaultSortDirection),
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
163
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
164
|
+
currentSortDirection = _useState4[0],
|
|
165
|
+
setSortDirection = _useState4[1];
|
|
216
166
|
|
|
167
|
+
// Update the current sort state if the prop changes.
|
|
217
168
|
(0, _react.useEffect)(function () {
|
|
218
169
|
setSortKey(defaultSort);
|
|
219
|
-
}, [defaultSort]);
|
|
170
|
+
}, [defaultSort]);
|
|
220
171
|
|
|
172
|
+
// Update the current sort direction state if the prop changes.
|
|
221
173
|
(0, _react.useEffect)(function () {
|
|
222
174
|
setSortDirection(defaultSortDirection);
|
|
223
175
|
}, [defaultSortDirection]);
|
|
224
|
-
|
|
225
176
|
var updateSort = function updateSort(newSort) {
|
|
226
177
|
setSortKey(newSort);
|
|
227
178
|
onUpdateSort && onUpdateSort(newSort);
|
|
228
179
|
};
|
|
229
|
-
|
|
230
180
|
var sortedRows = (0, _react.useMemo)(function () {
|
|
231
181
|
return sortRows({
|
|
232
182
|
currentSortDirection: currentSortDirection,
|
|
@@ -236,15 +186,13 @@ var MainTable = function MainTable(_ref6) {
|
|
|
236
186
|
sortFunction: sortFunction
|
|
237
187
|
});
|
|
238
188
|
}, [currentSortDirection, currentSortKey, rows, sortable, sortFunction]);
|
|
239
|
-
|
|
240
189
|
var _usePagination = (0, _hooks.usePagination)(sortedRows, {
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
190
|
+
itemsPerPage: paginate,
|
|
191
|
+
autoResetPage: true
|
|
192
|
+
}),
|
|
193
|
+
finalRows = _usePagination.pageData,
|
|
194
|
+
currentPage = _usePagination.currentPage,
|
|
195
|
+
setCurrentPage = _usePagination.paginate;
|
|
248
196
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Table.default, _extends({
|
|
249
197
|
expanding: expanding,
|
|
250
198
|
responsive: responsive
|
|
@@ -258,7 +206,8 @@ var MainTable = function MainTable(_ref6) {
|
|
|
258
206
|
top: "auto",
|
|
259
207
|
width: "1px"
|
|
260
208
|
}
|
|
261
|
-
}, hiddenCaption), !!headers && generateHeaders(currentSortKey, currentSortDirection, expanding, headers, sortable, updateSort, setSortDirection),
|
|
209
|
+
}, hiddenCaption), !!headers && generateHeaders(currentSortKey, currentSortDirection, expanding, headers, sortable, updateSort, setSortDirection),
|
|
210
|
+
// If the table has no rows, return empty state message
|
|
262
211
|
Object.entries(finalRows).length === 0 && emptyStateMsg ? /*#__PURE__*/_react.default.createElement("caption", null, emptyStateMsg) : /*#__PURE__*/_react.default.createElement("tbody", null, generateRows({
|
|
263
212
|
rows: finalRows,
|
|
264
213
|
headers: headers,
|
|
@@ -274,6 +223,5 @@ var MainTable = function MainTable(_ref6) {
|
|
|
274
223
|
totalItems: rows.length
|
|
275
224
|
}));
|
|
276
225
|
};
|
|
277
|
-
|
|
278
226
|
var _default = MainTable;
|
|
279
227
|
exports.default = _default;
|
|
@@ -1,40 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = exports.Modal = void 0;
|
|
9
|
-
|
|
10
8
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
|
-
|
|
12
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
-
|
|
14
10
|
var _useId = require("../../hooks/useId");
|
|
15
|
-
|
|
16
11
|
var _excluded = ["buttonRow", "children", "className", "close", "title"];
|
|
17
|
-
|
|
18
12
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
|
-
|
|
20
13
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
21
|
-
|
|
22
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
|
-
|
|
24
15
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
25
|
-
|
|
26
16
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
27
|
-
|
|
28
17
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
29
|
-
|
|
30
18
|
var Modal = function Modal(_ref) {
|
|
31
19
|
var buttonRow = _ref.buttonRow,
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
20
|
+
children = _ref.children,
|
|
21
|
+
className = _ref.className,
|
|
22
|
+
close = _ref.close,
|
|
23
|
+
title = _ref.title,
|
|
24
|
+
wrapperProps = _objectWithoutProperties(_ref, _excluded);
|
|
38
25
|
// list of focusable selectors is based on this Stack Overflow answer:
|
|
39
26
|
// https://stackoverflow.com/a/30753870/3732840
|
|
40
27
|
var focusableElementSelectors = 'a[href]:not([tabindex="-1"]), button:not([disabled]), textarea:not([disabled]):not([tabindex="-1"]), input:not([disabled]):not([tabindex="-1"]), select:not([disabled]):not([tabindex="-1"]), area[href]:not([tabindex="-1"]), iframe:not([tabindex="-1"]), [tabindex]:not([tabindex="-1"]), [contentEditable=true]:not([tabindex="-1"])';
|
|
@@ -43,43 +30,36 @@ var Modal = function Modal(_ref) {
|
|
|
43
30
|
var shouldClose = (0, _react.useRef)(false);
|
|
44
31
|
var modalRef = (0, _react.useRef)(null);
|
|
45
32
|
var focusableModalElements = (0, _react.useRef)(null);
|
|
46
|
-
|
|
47
33
|
var handleTabKey = function handleTabKey(e) {
|
|
48
34
|
if (focusableModalElements.current.length > 0) {
|
|
49
35
|
var firstElement = focusableModalElements.current[0];
|
|
50
36
|
var lastElement = focusableModalElements.current[focusableModalElements.current.length - 1];
|
|
51
|
-
|
|
52
37
|
if (!e.shiftKey && document.activeElement === lastElement) {
|
|
53
38
|
firstElement.focus();
|
|
54
39
|
e.preventDefault();
|
|
55
40
|
}
|
|
56
|
-
|
|
57
41
|
if (e.shiftKey && document.activeElement === firstElement) {
|
|
58
42
|
lastElement.focus();
|
|
59
43
|
return e.preventDefault();
|
|
60
44
|
}
|
|
61
45
|
}
|
|
62
46
|
};
|
|
63
|
-
|
|
64
47
|
var handleEscKey = function handleEscKey(e) {
|
|
65
48
|
e.nativeEvent.stopImmediatePropagation();
|
|
66
49
|
close();
|
|
67
50
|
};
|
|
68
|
-
|
|
69
51
|
var keyListenersMap = new Map([["Escape", handleEscKey], ["Tab", handleTabKey]]);
|
|
70
52
|
(0, _react.useEffect)(function () {
|
|
71
53
|
modalRef.current.focus();
|
|
72
54
|
}, [modalRef]);
|
|
73
55
|
(0, _react.useEffect)(function () {
|
|
74
56
|
var _focusableModalElemen;
|
|
75
|
-
|
|
76
57
|
focusableModalElements.current = modalRef.current.querySelectorAll(focusableElementSelectors);
|
|
77
|
-
var focusIndex = 0;
|
|
78
|
-
|
|
58
|
+
var focusIndex = 0;
|
|
59
|
+
// when the close button is rendered, focus on the 2nd content element and not the close btn.
|
|
79
60
|
if (close && focusableModalElements.current.length > 1) {
|
|
80
61
|
focusIndex = 1;
|
|
81
62
|
}
|
|
82
|
-
|
|
83
63
|
(_focusableModalElemen = focusableModalElements.current[focusIndex]) === null || _focusableModalElemen === void 0 ? void 0 : _focusableModalElemen.focus();
|
|
84
64
|
}, []);
|
|
85
65
|
(0, _react.useEffect)(function () {
|
|
@@ -87,33 +67,27 @@ var Modal = function Modal(_ref) {
|
|
|
87
67
|
var listener = keyListenersMap.get(e.code);
|
|
88
68
|
return listener && listener(e);
|
|
89
69
|
};
|
|
90
|
-
|
|
91
70
|
document.addEventListener("keydown", keyDown);
|
|
92
71
|
return function () {
|
|
93
72
|
document.removeEventListener("keydown", keyDown);
|
|
94
73
|
};
|
|
95
74
|
});
|
|
96
|
-
|
|
97
75
|
var handleContentOnMouseDown = function handleContentOnMouseDown() {
|
|
98
76
|
shouldClose.current = false;
|
|
99
77
|
};
|
|
100
|
-
|
|
101
78
|
var handleContentOnMouseUp = function handleContentOnMouseUp() {
|
|
102
79
|
shouldClose.current = false;
|
|
103
80
|
};
|
|
104
|
-
|
|
105
81
|
var handleOverlayOnMouseDown = function handleOverlayOnMouseDown(event) {
|
|
106
82
|
if (event.target === modalRef.current) {
|
|
107
83
|
shouldClose.current = true;
|
|
108
84
|
}
|
|
109
85
|
};
|
|
110
|
-
|
|
111
86
|
var handleOverlayOnClick = function handleOverlayOnClick() {
|
|
112
87
|
if (shouldClose.current) {
|
|
113
88
|
close();
|
|
114
89
|
}
|
|
115
90
|
};
|
|
116
|
-
|
|
117
91
|
return /*#__PURE__*/_react.default.createElement("div", _extends({
|
|
118
92
|
className: (0, _classnames.default)("p-modal", className),
|
|
119
93
|
onClick: handleOverlayOnClick,
|
|
@@ -143,7 +117,6 @@ var Modal = function Modal(_ref) {
|
|
|
143
117
|
className: "p-modal__footer"
|
|
144
118
|
}, buttonRow)));
|
|
145
119
|
};
|
|
146
|
-
|
|
147
120
|
exports.Modal = Modal;
|
|
148
121
|
var _default = Modal;
|
|
149
122
|
exports.default = _default;
|
|
@@ -36,6 +36,14 @@ export type Props<D extends Record<string, unknown>> = PropsWithSpread<{
|
|
|
36
36
|
*/
|
|
37
37
|
getCellProps?: (cell: Cell<D>) => Partial<TableCellProps & HTMLProps<HTMLTableCellElement>>;
|
|
38
38
|
getRowId?: UseTableOptions<D>["getRowId"];
|
|
39
|
+
/**
|
|
40
|
+
* The column that the table will be sorted by (this should match a cell selector).
|
|
41
|
+
*/
|
|
42
|
+
initialSortColumn?: string;
|
|
43
|
+
/**
|
|
44
|
+
* The direction of the initial sort.
|
|
45
|
+
*/
|
|
46
|
+
initialSortDirection?: "ascending" | "descending";
|
|
39
47
|
}, HTMLProps<HTMLTableElement>>;
|
|
40
|
-
declare function ModularTable<D extends Record<string, unknown>>({ data, columns, emptyMsg, footer, sortable, getHeaderProps, getRowProps, getCellProps, getRowId, ...props }: Props<D>): JSX.Element;
|
|
48
|
+
declare function ModularTable<D extends Record<string, unknown>>({ data, columns, emptyMsg, footer, sortable, getHeaderProps, getRowProps, getCellProps, getRowId, initialSortColumn, initialSortDirection, ...props }: Props<D>): JSX.Element;
|
|
41
49
|
export default ModularTable;
|
|
@@ -4,40 +4,28 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
8
|
var _reactTable = require("react-table");
|
|
11
|
-
|
|
12
9
|
var _Table = _interopRequireDefault(require("../Table"));
|
|
13
|
-
|
|
14
10
|
var _TableRow = _interopRequireDefault(require("../TableRow"));
|
|
15
|
-
|
|
16
11
|
var _TableHeader = _interopRequireDefault(require("../TableHeader"));
|
|
17
|
-
|
|
18
12
|
var _TableCell = _interopRequireDefault(require("../TableCell"));
|
|
19
|
-
|
|
20
13
|
var _Icon = _interopRequireDefault(require("../Icon"));
|
|
21
|
-
|
|
22
|
-
var _excluded = ["data", "columns", "emptyMsg", "footer", "sortable", "getHeaderProps", "getRowProps", "getCellProps", "getRowId"];
|
|
23
|
-
|
|
14
|
+
var _excluded = ["data", "columns", "emptyMsg", "footer", "sortable", "getHeaderProps", "getRowProps", "getCellProps", "getRowId", "initialSortColumn", "initialSortDirection"];
|
|
24
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
-
|
|
16
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
17
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
18
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
26
19
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
27
|
-
|
|
28
20
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
29
|
-
|
|
30
21
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
31
|
-
|
|
32
22
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
33
|
-
|
|
34
23
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
35
|
-
|
|
36
|
-
function
|
|
37
|
-
|
|
24
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
25
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
26
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
38
27
|
var generateCell = function generateCell(cell, getCellProps) {
|
|
39
28
|
var _cell$column$getCellI, _cell$column;
|
|
40
|
-
|
|
41
29
|
var hasColumnIcon = cell.column.getCellIcon;
|
|
42
30
|
var iconName = hasColumnIcon && ((_cell$column$getCellI = (_cell$column = cell.column).getCellIcon) === null || _cell$column$getCellI === void 0 ? void 0 : _cell$column$getCellI.call(_cell$column, cell));
|
|
43
31
|
return /*#__PURE__*/_react.default.createElement(_TableCell.default, cell.getCellProps([{
|
|
@@ -48,12 +36,10 @@ var generateCell = function generateCell(cell, getCellProps) {
|
|
|
48
36
|
name: iconName
|
|
49
37
|
}), cell.render("Cell"));
|
|
50
38
|
};
|
|
51
|
-
|
|
52
39
|
var generateRows = function generateRows(rows, prepareRow, getRowProps, getCellProps) {
|
|
53
40
|
var tableRows = [];
|
|
54
41
|
rows.forEach(function (row) {
|
|
55
42
|
var _row$subRows;
|
|
56
|
-
|
|
57
43
|
// This function is responsible for lazily preparing a row for rendering.
|
|
58
44
|
// Any row that you intend to render in your table needs to be passed to this function before every render.
|
|
59
45
|
// see: https://react-table.tanstack.com/docs/api/useTable#instance-properties
|
|
@@ -61,37 +47,44 @@ var generateRows = function generateRows(rows, prepareRow, getRowProps, getCellP
|
|
|
61
47
|
tableRows.push( /*#__PURE__*/_react.default.createElement(_TableRow.default, row.getRowProps(getRowProps === null || getRowProps === void 0 ? void 0 : getRowProps(row)), row.cells.map(function (cell) {
|
|
62
48
|
return generateCell(cell, getCellProps);
|
|
63
49
|
})));
|
|
64
|
-
|
|
65
50
|
if ((_row$subRows = row.subRows) !== null && _row$subRows !== void 0 && _row$subRows.length) {
|
|
66
51
|
tableRows = tableRows.concat(generateRows(row.subRows, prepareRow, getRowProps, getCellProps));
|
|
67
52
|
}
|
|
68
53
|
});
|
|
69
54
|
return tableRows;
|
|
70
55
|
};
|
|
71
|
-
|
|
72
56
|
function ModularTable(_ref) {
|
|
73
57
|
var data = _ref.data,
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
58
|
+
columns = _ref.columns,
|
|
59
|
+
emptyMsg = _ref.emptyMsg,
|
|
60
|
+
footer = _ref.footer,
|
|
61
|
+
sortable = _ref.sortable,
|
|
62
|
+
getHeaderProps = _ref.getHeaderProps,
|
|
63
|
+
getRowProps = _ref.getRowProps,
|
|
64
|
+
getCellProps = _ref.getCellProps,
|
|
65
|
+
getRowId = _ref.getRowId,
|
|
66
|
+
initialSortColumn = _ref.initialSortColumn,
|
|
67
|
+
initialSortDirection = _ref.initialSortDirection,
|
|
68
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
69
|
+
var sortBy = (0, _react.useMemo)(function () {
|
|
70
|
+
return initialSortColumn ? [{
|
|
71
|
+
id: initialSortColumn,
|
|
72
|
+
desc: initialSortDirection === "descending"
|
|
73
|
+
}] : [];
|
|
74
|
+
}, [initialSortColumn, initialSortDirection]);
|
|
84
75
|
var _useTable = (0, _reactTable.useTable)({
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
76
|
+
columns: columns,
|
|
77
|
+
data: data,
|
|
78
|
+
getRowId: getRowId || undefined,
|
|
79
|
+
initialState: {
|
|
80
|
+
sortBy: sortBy
|
|
81
|
+
}
|
|
82
|
+
}, sortable ? _reactTable.useSortBy : undefined),
|
|
83
|
+
getTableProps = _useTable.getTableProps,
|
|
84
|
+
getTableBodyProps = _useTable.getTableBodyProps,
|
|
85
|
+
headerGroups = _useTable.headerGroups,
|
|
86
|
+
rows = _useTable.rows,
|
|
87
|
+
prepareRow = _useTable.prepareRow;
|
|
95
88
|
var showEmpty = !!emptyMsg && (!rows || rows.length === 0);
|
|
96
89
|
return /*#__PURE__*/_react.default.createElement(_Table.default, _extends({}, getTableProps(), props), /*#__PURE__*/_react.default.createElement("thead", null, headerGroups.map(function (headerGroup) {
|
|
97
90
|
return /*#__PURE__*/_react.default.createElement(_TableRow.default, headerGroup.getHeaderGroupProps(), headerGroup.headers.map(function (column) {
|
|
@@ -101,7 +94,8 @@ function ModularTable(_ref) {
|
|
|
101
94
|
className: column.className
|
|
102
95
|
}, {
|
|
103
96
|
className: column.getCellIcon ? "p-table__cell--icon-placeholder" : ""
|
|
104
|
-
}, _objectSpread({}, getHeaderProps === null || getHeaderProps === void 0 ? void 0 : getHeaderProps(column)),
|
|
97
|
+
}, _objectSpread({}, getHeaderProps === null || getHeaderProps === void 0 ? void 0 : getHeaderProps(column)),
|
|
98
|
+
// Only call this if we want it to be sortable too.
|
|
105
99
|
sortable ? column.getSortByToggleProps({
|
|
106
100
|
title: undefined
|
|
107
101
|
}) : {}])), column.render("Header"));
|
|
@@ -112,6 +106,5 @@ function ModularTable(_ref) {
|
|
|
112
106
|
colSpan: columns.length
|
|
113
107
|
}, footer))));
|
|
114
108
|
}
|
|
115
|
-
|
|
116
109
|
var _default = ModularTable;
|
|
117
110
|
exports.default = _default;
|
|
@@ -9,7 +9,5 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
return _ModularTable.default;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
-
|
|
13
12
|
var _ModularTable = _interopRequireDefault(require("./ModularTable"));
|
|
14
|
-
|
|
15
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|