@oc-digital/react-component-library 2.4.4-beta.0 → 3.0.0-beta.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 (144) hide show
  1. package/README.md +0 -4
  2. package/build/Alert/Alert.js +44 -0
  3. package/build/Alert/Alert.js.map +1 -0
  4. package/build/Alert/Alert.types.js +2 -0
  5. package/build/Alert/Alert.types.js.map +1 -0
  6. package/build/AlphabeticalList/AlphabeticalList.js +82 -0
  7. package/build/AlphabeticalList/AlphabeticalList.js.map +1 -0
  8. package/build/AlphabeticalList/AlphabeticalList.types.js +2 -0
  9. package/build/AlphabeticalList/AlphabeticalList.types.js.map +1 -0
  10. package/build/Breadcrumbs/Breadcrumbs.js +138 -0
  11. package/build/Breadcrumbs/Breadcrumbs.js.map +1 -0
  12. package/build/Breadcrumbs/Breadcrumbs.types.js +2 -0
  13. package/build/Breadcrumbs/Breadcrumbs.types.js.map +1 -0
  14. package/build/Button/Button.js +55 -0
  15. package/build/Button/Button.js.map +1 -0
  16. package/build/Button/Button.types.d.ts +2 -9
  17. package/build/Button/Button.types.js +2 -0
  18. package/build/Button/Button.types.js.map +1 -0
  19. package/build/ButtonWithConfirm/ButtonWithConfirm.js +67 -0
  20. package/build/ButtonWithConfirm/ButtonWithConfirm.js.map +1 -0
  21. package/build/ButtonWithConfirm/ButtonWithConfirm.types.d.ts +2 -6
  22. package/build/ButtonWithConfirm/ButtonWithConfirm.types.js +2 -0
  23. package/build/ButtonWithConfirm/ButtonWithConfirm.types.js.map +1 -0
  24. package/build/ContentBox/ContentBox.js +22 -0
  25. package/build/ContentBox/ContentBox.js.map +1 -0
  26. package/build/ContentBox/ContentBox.types.js +2 -0
  27. package/build/ContentBox/ContentBox.types.js.map +1 -0
  28. package/build/ContentLabel/ContentLabel.js +10 -0
  29. package/build/ContentLabel/ContentLabel.js.map +1 -0
  30. package/build/ContentLabel/ContentLabel.types.js +2 -0
  31. package/build/ContentLabel/ContentLabel.types.js.map +1 -0
  32. package/build/DatePicker/DatePicker.js +40 -0
  33. package/build/DatePicker/DatePicker.js.map +1 -0
  34. package/build/DatePicker/DatePicker.types.d.ts +3 -2
  35. package/build/DatePicker/DatePicker.types.js +2 -0
  36. package/build/DatePicker/DatePicker.types.js.map +1 -0
  37. package/build/EditableTable/EditableTable.js +517 -0
  38. package/build/EditableTable/EditableTable.js.map +1 -0
  39. package/build/EditableTable/EditableTable.types.js +2 -0
  40. package/build/EditableTable/EditableTable.types.js.map +1 -0
  41. package/build/EditableTable/defaultCells.d.ts +1 -1
  42. package/build/EditableTable/defaultCells.js +168 -0
  43. package/build/EditableTable/defaultCells.js.map +1 -0
  44. package/build/EntityList/EntityList.js +55 -0
  45. package/build/EntityList/EntityList.js.map +1 -0
  46. package/build/EntityList/EntityList.types.js +2 -0
  47. package/build/EntityList/EntityList.types.js.map +1 -0
  48. package/build/ErrorIndicator/ErrorIndicator.js +24 -0
  49. package/build/ErrorIndicator/ErrorIndicator.js.map +1 -0
  50. package/build/ErrorIndicator/ErrorIndicator.types.js +2 -0
  51. package/build/ErrorIndicator/ErrorIndicator.types.js.map +1 -0
  52. package/build/ImageDisplayAndUpload/ImageDisplayAndUpload.js +310 -0
  53. package/build/ImageDisplayAndUpload/ImageDisplayAndUpload.js.map +1 -0
  54. package/build/ImageDisplayAndUpload/ImageDisplayAndUpload.types.js +2 -0
  55. package/build/ImageDisplayAndUpload/ImageDisplayAndUpload.types.js.map +1 -0
  56. package/build/KeyboardDatePicker/KeyboardDatePicker.d.ts +2 -2
  57. package/build/KeyboardDatePicker/KeyboardDatePicker.js +38 -0
  58. package/build/KeyboardDatePicker/KeyboardDatePicker.js.map +1 -0
  59. package/build/KeyboardDatePicker/KeyboardDatePicker.types.d.ts +3 -2
  60. package/build/KeyboardDatePicker/KeyboardDatePicker.types.js +2 -0
  61. package/build/KeyboardDatePicker/KeyboardDatePicker.types.js.map +1 -0
  62. package/build/LeftNavigation/LeftNavigation.js +48 -0
  63. package/build/LeftNavigation/LeftNavigation.js.map +1 -0
  64. package/build/LeftNavigation/LeftNavigation.types.js +2 -0
  65. package/build/LeftNavigation/LeftNavigation.types.js.map +1 -0
  66. package/build/LeftNavigation/NavListItem.js +139 -0
  67. package/build/LeftNavigation/NavListItem.js.map +1 -0
  68. package/build/LeftNavigation/PrimaryLeftNavigation.js +112 -0
  69. package/build/LeftNavigation/PrimaryLeftNavigation.js.map +1 -0
  70. package/build/LeftNavigation/SecondaryLeftNavigation.js +99 -0
  71. package/build/LeftNavigation/SecondaryLeftNavigation.js.map +1 -0
  72. package/build/LoadingSpinner/LoadingSpinner.js +23 -0
  73. package/build/LoadingSpinner/LoadingSpinner.js.map +1 -0
  74. package/build/LoadingSpinner/LoadingSpinner.types.js +2 -0
  75. package/build/LoadingSpinner/LoadingSpinner.types.js.map +1 -0
  76. package/build/MainLayout/MainLayout.js +38 -0
  77. package/build/MainLayout/MainLayout.js.map +1 -0
  78. package/build/MainLayout/MainLayout.types.js +2 -0
  79. package/build/MainLayout/MainLayout.types.js.map +1 -0
  80. package/build/NavbarLayout/Navbar.js +104 -0
  81. package/build/NavbarLayout/Navbar.js.map +1 -0
  82. package/build/NavbarLayout/NavbarLayout.js +57 -0
  83. package/build/NavbarLayout/NavbarLayout.js.map +1 -0
  84. package/build/NavbarLayout/index.js +2 -0
  85. package/build/NavbarLayout/index.js.map +1 -0
  86. package/build/SearchBar/SearchBar.js +78 -0
  87. package/build/SearchBar/SearchBar.js.map +1 -0
  88. package/build/SearchBar/SearchBar.types.js +2 -0
  89. package/build/SearchBar/SearchBar.types.js.map +1 -0
  90. package/build/Select/Select.js +70 -0
  91. package/build/Select/Select.js.map +1 -0
  92. package/build/Select/Select.types.d.ts +1 -1
  93. package/build/Select/Select.types.js +2 -0
  94. package/build/Select/Select.types.js.map +1 -0
  95. package/build/StaticTable/StaticTable.js +155 -0
  96. package/build/StaticTable/StaticTable.js.map +1 -0
  97. package/build/StaticTable/StaticTable.types.js +2 -0
  98. package/build/StaticTable/StaticTable.types.js.map +1 -0
  99. package/build/SvgComponents/ContainedPartnersLogo.js +10 -0
  100. package/build/SvgComponents/ContainedPartnersLogo.js.map +1 -0
  101. package/build/SvgComponents/HomeSvg.js +16 -0
  102. package/build/SvgComponents/HomeSvg.js.map +1 -0
  103. package/build/SvgComponents/NovelLogoSvg.js +97 -0
  104. package/build/SvgComponents/NovelLogoSvg.js.map +1 -0
  105. package/build/SvgComponents/OrganisationList.js +103 -0
  106. package/build/SvgComponents/OrganisationList.js.map +1 -0
  107. package/build/SvgComponents/ProjectsSvg.js +18 -0
  108. package/build/SvgComponents/ProjectsSvg.js.map +1 -0
  109. package/build/SvgComponents/index.js +6 -0
  110. package/build/SvgComponents/index.js.map +1 -0
  111. package/build/SvgComponents/types.js +2 -0
  112. package/build/SvgComponents/types.js.map +1 -0
  113. package/build/TextField/TextField.js +67 -0
  114. package/build/TextField/TextField.js.map +1 -0
  115. package/build/TextField/TextField.types.d.ts +1 -1
  116. package/build/TextField/TextField.types.js +2 -0
  117. package/build/TextField/TextField.types.js.map +1 -0
  118. package/build/ThemeProvider/index.d.ts +5 -0
  119. package/build/globals/index.js +28 -0
  120. package/build/globals/index.js.map +1 -0
  121. package/build/hooks/index.js +4 -0
  122. package/build/hooks/index.js.map +1 -0
  123. package/build/hooks/useDebounceEffect.js +12 -0
  124. package/build/hooks/useDebounceEffect.js.map +1 -0
  125. package/build/hooks/useInterval.js +19 -0
  126. package/build/hooks/useInterval.js.map +1 -0
  127. package/build/hooks/useWhyDidYouUpdate.js +43 -0
  128. package/build/hooks/useWhyDidYouUpdate.js.map +1 -0
  129. package/build/index.js +1 -1
  130. package/build/index.js.map +1 -1
  131. package/build/styles/font.d.ts +1 -1
  132. package/build/styles/font.js +19 -0
  133. package/build/styles/font.js.map +1 -0
  134. package/build/styles/index.js +4 -0
  135. package/build/styles/index.js.map +1 -0
  136. package/build/styles/layout.d.ts +1 -1
  137. package/build/styles/layout.js +81 -0
  138. package/build/styles/layout.js.map +1 -0
  139. package/build/styles/spacing.d.ts +1 -1
  140. package/build/styles/spacing.js +50 -0
  141. package/build/styles/spacing.js.map +1 -0
  142. package/build/utils/index.js +14 -0
  143. package/build/utils/index.js.map +1 -0
  144. package/package.json +18 -12
@@ -1,5 +1,6 @@
1
- import { DatePickerProps } from "@material-ui/pickers";
1
+ import { DatePickerProps } from "@mui/x-date-pickers/DatePicker";
2
2
  import { IAuthoriserProp } from "../globals";
3
- export interface IDatePickerProps extends IAuthoriserProp, DatePickerProps {
3
+ export declare type DateValue = Date | undefined;
4
+ export interface IDatePickerProps extends IAuthoriserProp, DatePickerProps<DateValue> {
4
5
  styling?: string;
5
6
  }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=DatePicker.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatePicker.types.js","sourceRoot":"","sources":["../../src/DatePicker/DatePicker.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,517 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
+ return new (P || (P = Promise))(function (resolve, reject) {
15
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
19
+ });
20
+ };
21
+ var __generator = (this && this.__generator) || function (thisArg, body) {
22
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
23
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
+ function verb(n) { return function (v) { return step([n, v]); }; }
25
+ function step(op) {
26
+ if (f) throw new TypeError("Generator is already executing.");
27
+ while (_) try {
28
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
+ if (y = 0, t) op = [op[0] & 2, t.value];
30
+ switch (op[0]) {
31
+ case 0: case 1: t = op; break;
32
+ case 4: _.label++; return { value: op[1], done: false };
33
+ case 5: _.label++; y = op[1]; op = [0]; continue;
34
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
+ default:
36
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
+ if (t[2]) _.ops.pop();
41
+ _.trys.pop(); continue;
42
+ }
43
+ op = body.call(thisArg, _);
44
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
+ }
47
+ };
48
+ var __rest = (this && this.__rest) || function (s, e) {
49
+ var t = {};
50
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
51
+ t[p] = s[p];
52
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
53
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
54
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
55
+ t[p[i]] = s[p[i]];
56
+ }
57
+ return t;
58
+ };
59
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
60
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
61
+ if (ar || !(i in from)) {
62
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
63
+ ar[i] = from[i];
64
+ }
65
+ }
66
+ return to.concat(ar || Array.prototype.slice.call(from));
67
+ };
68
+ import React, { forwardRef, Fragment, memo, useCallback, useEffect, useState, } from "react";
69
+ import { useTable, useRowSelect, useFilters, usePagination, useGlobalFilter, useAsyncDebounce, } from "react-table";
70
+ import { Table as MUITable, TableBody, TableCell, TableHead, TableRow, Typography, Box, Tooltip, InputBase, } from "@mui/material";
71
+ import makeStyles from "@mui/styles/makeStyles";
72
+ import SearchIcon from "@mui/icons-material/Search";
73
+ import { EDITED_STATUS, NEW_STATUS } from "../globals";
74
+ import { SelectionCheckbox, tableTextField } from "./defaultCells";
75
+ import { didCellValueChange } from "../utils";
76
+ import LoadingSpinner from "../LoadingSpinner/LoadingSpinner";
77
+ import { Pagination } from "@mui/material";
78
+ import { useLayoutStyles, useSpacingStyles } from "../styles";
79
+ import { useVirtual } from "react-virtual";
80
+ var useStyles = makeStyles(function (theme) { return ({
81
+ newRowHighlight: {
82
+ backgroundColor: "#73c4ca30",
83
+ },
84
+ editedCellHighlight: {
85
+ backgroundColor: "#5840f52e !important",
86
+ backgroundClip: "padding-box",
87
+ },
88
+ editedBorder: {
89
+ border: "3px solid #5840f52e",
90
+ borderWidth: "2px 4px",
91
+ },
92
+ errorBorder: {
93
+ border: "3px solid " + theme.palette.error.light,
94
+ borderWidth: "2px 4px",
95
+ },
96
+ emptyLoadingPadding: {
97
+ paddingTop: "0.75rem",
98
+ paddingBottom: "0.75rem",
99
+ },
100
+ centeredText: {
101
+ textAlign: "center",
102
+ },
103
+ disabled: {
104
+ backgroundColor: theme.palette.action.hover,
105
+ },
106
+ pagination: {
107
+ marginTop: "1rem",
108
+ marginBottom: "1rem",
109
+ },
110
+ virtualisationContainer: {
111
+ maxHeight: "500px",
112
+ overflow: "auto",
113
+ },
114
+ cellPadding: {
115
+ padding: ".5rem .75rem",
116
+ },
117
+ shadedHeader: {
118
+ "&:nth-of-type(even).shadedHeader": {
119
+ backgroundColor: "#eeeeee",
120
+ },
121
+ },
122
+ shadedBodyCell: {
123
+ "&:nth-of-type(even).shadedBodyCell": {
124
+ backgroundColor: "rgba(0, 0, 0, 0.07)",
125
+ backgroundClip: "padding-box",
126
+ },
127
+ },
128
+ shadedHeaderGroupParent: {
129
+ "&:nth-of-type(even).shadedHeaderGroupParent": {
130
+ backgroundColor: "#eeeeee",
131
+ },
132
+ },
133
+ shadedHeaderGroup2Children: {
134
+ "&:nth-of-type(4n-2).shadedHeaderGroup2Children": {
135
+ backgroundColor: "#eeeeee",
136
+ },
137
+ "&:nth-of-type(4n-1).shadedHeaderGroup2Children": {
138
+ backgroundColor: "#eeeeee",
139
+ },
140
+ },
141
+ shadedBody2CellsInsideGroup: {
142
+ "&:nth-of-type(4n-2).shadedBody2CellsInsideGroup": {
143
+ backgroundColor: "rgba(0, 0, 0, 0.07)",
144
+ backgroundClip: "padding-box",
145
+ },
146
+ "&:nth-of-type(4n-1).shadedBody2CellsInsideGroup": {
147
+ backgroundColor: "rgba(0, 0, 0, 0.07)",
148
+ backgroundClip: "padding-box",
149
+ },
150
+ },
151
+ offsetStickyPosition: {
152
+ top: 0,
153
+ left: "-3px",
154
+ zIndex: 2,
155
+ position: "sticky",
156
+ },
157
+ stickyHeaderZIndex: {
158
+ zIndex: 3,
159
+ },
160
+ headerCellColour: {
161
+ backgroundColor: theme.palette.grey[50],
162
+ },
163
+ rowCellColour: {
164
+ backgroundColor: theme.palette.common.white,
165
+ backgroundClip: "padding-box",
166
+ },
167
+ rowHoverForStickyCell: {
168
+ "&:hover .stickyRowCell": {
169
+ backgroundColor: "rgb(245,245,245)",
170
+ },
171
+ },
172
+ headerBorders: {
173
+ "& :not(tr:last-child th)": {
174
+ border: "none",
175
+ },
176
+ },
177
+ }); });
178
+ var EditableCell = function (_a) {
179
+ var _b = _a.value, initialValue = _b === void 0 ? "" : _b, _c = _a.row, index = _c.index, values = _c.values, original = _c.original, id = _a.column.id, syncCellWithState = _a.syncCellWithState, setRows = _a.setRows, fieldConfig = _a.fieldConfig, disabled = _a.disabled;
180
+ var _d = fieldConfig[id], validationRule = _d.validationRule, dependentValidationRule = _d.dependentValidationRule, isCheckbox = _d.isCheckbox, isDateField = _d.isDateField, customRenderFn = _d.customRenderFn, prefix = _d.prefix, suffix = _d.suffix, textAlign = _d.textAlign, configOnBlur = _d.onBlur, onChangeValueModifier = _d.onChangeValueModifier;
181
+ var _e = useState(false), error = _e[0], setError = _e[1];
182
+ // We need to keep and update the state of the cell normally
183
+ var _f = useState(initialValue), value = _f[0], setValue = _f[1];
184
+ var checkbox = isCheckbox;
185
+ var validateValue = function (value) {
186
+ var returnValue = false;
187
+ if (validationRule) {
188
+ try {
189
+ validationRule.validateSync(value);
190
+ if (error)
191
+ setError(false);
192
+ }
193
+ catch (e) {
194
+ returnValue = true;
195
+ !error && setError(e.message);
196
+ }
197
+ }
198
+ if (dependentValidationRule) {
199
+ try {
200
+ dependentValidationRule(values).validateSync(value);
201
+ if (error)
202
+ setError(false);
203
+ }
204
+ catch (e) {
205
+ returnValue = true;
206
+ !error && setError(e.message);
207
+ }
208
+ }
209
+ return returnValue;
210
+ };
211
+ // We'll only update the external data when the input is blurred
212
+ var onBlur = function (fieldValue) { return __awaiter(void 0, void 0, void 0, function () {
213
+ return __generator(this, function (_a) {
214
+ switch (_a.label) {
215
+ case 0:
216
+ if (checkbox) {
217
+ syncCellWithState(index, id, fieldValue, false);
218
+ }
219
+ else
220
+ syncCellWithState(index, id, value, !!error);
221
+ if (!(configOnBlur &&
222
+ setRows &&
223
+ !error &&
224
+ !didCellValueChange(values[id], value, isDateField))) return [3 /*break*/, 2];
225
+ return [4 /*yield*/, configOnBlur({
226
+ rowIndex: index,
227
+ value: value,
228
+ setRows: setRows,
229
+ values: original,
230
+ })];
231
+ case 1:
232
+ _a.sent();
233
+ _a.label = 2;
234
+ case 2: return [2 /*return*/];
235
+ }
236
+ });
237
+ }); };
238
+ var onChange = function (e) {
239
+ var event;
240
+ if (isDateField) {
241
+ event = e;
242
+ var adjustedDateValue = onChangeValueModifier
243
+ ? onChangeValueModifier(event)
244
+ : event;
245
+ setValue(adjustedDateValue);
246
+ validateValue(adjustedDateValue);
247
+ return;
248
+ }
249
+ event = e;
250
+ var eventValue = checkbox ? event.target.checked : event.target.value;
251
+ if (checkbox) {
252
+ setValue(eventValue);
253
+ onBlur(eventValue);
254
+ }
255
+ else {
256
+ setValue(eventValue);
257
+ validateValue(eventValue);
258
+ }
259
+ };
260
+ // If the initialValue is changed external, sync it up with our state
261
+ useEffect(function () {
262
+ setValue(initialValue);
263
+ var errorStatus = validateValue(initialValue);
264
+ if (error !== errorStatus) {
265
+ syncCellWithState(index, id, initialValue, errorStatus, true);
266
+ }
267
+ // eslint-disable-next-line react-hooks/exhaustive-deps
268
+ }, [initialValue]);
269
+ useEffect(function () {
270
+ if (original.errors && !!original.errors[id] !== !!error) {
271
+ validateValue(initialValue);
272
+ }
273
+ // eslint-disable-next-line react-hooks/exhaustive-deps
274
+ }, [original.errors]);
275
+ var renderFnProps = {
276
+ value: value,
277
+ values: values,
278
+ disabled: disabled || original.disabledRow,
279
+ error: error,
280
+ onChange: onChange,
281
+ onBlur: onBlur,
282
+ prefix: prefix,
283
+ suffix: suffix,
284
+ textAlign: textAlign,
285
+ originalValues: original,
286
+ };
287
+ if (customRenderFn) {
288
+ return customRenderFn(renderFnProps);
289
+ }
290
+ else
291
+ return tableTextField(renderFnProps);
292
+ };
293
+ var TableRowContents = forwardRef(function (_a, ref) {
294
+ var row = _a.row, classes = _a.classes, disabled = _a.disabled, includeRowSelect = _a.includeRowSelect, rest = __rest(_a, ["row", "classes", "disabled", "includeRowSelect"]);
295
+ return (React.createElement(TableRow, __assign({}, rest, { ref: ref, hover: true, className: (row.original.rowStatus === NEW_STATUS ? classes.newRowHighlight : "") + " " + (row.original.rowStatus === EDITED_STATUS ? classes.editedBorder : "") + "\n" + (Object.values(row.original.errors || {}).includes(true) ? classes.errorBorder : "") + " " + (row.original.disabledRow || disabled ? classes.disabled : "") + "\n " + classes.rowHoverForStickyCell }), row.cells.map(function (cell, n) { return (React.createElement(TableCell, __assign({}, cell.getCellProps(), {
296
+ //@ts-ignore FIX REQUIRED incorrect use of react table props
297
+ align: cell.column.textAlign || "center", className: (cell.row.original.rowStatus === EDITED_STATUS &&
298
+ cell.row.original.edited[cell.column.id]
299
+ ? classes.editedCellHighlight
300
+ : "") + " " + classes.cellPadding + "\n " + (cell.column.shadedHeaderGroup
301
+ ? classes.shadedBody2CellsInsideGroup + " shadedBody2CellsInsideGroup"
302
+ : "") + "\n " + (cell.column.shadedHeader ? classes.shadedBodyCell + " shadedBodyCell" : "") + "\n " + (cell.column.stickyCell
303
+ ? classes.offsetStickyPosition + " " + classes.rowCellColour + " stickyRowCell"
304
+ : "") + "\n ", padding: includeRowSelect && n === 0 ? "checkbox" : "normal" }), cell.render("Cell"))); })));
305
+ });
306
+ // emptyRows is needed for when incoming data is null (loading state).
307
+ // useTable requires memoised row data to be defined at all times.
308
+ var emptyRows = [];
309
+ var EditableTable = memo(function (_a) {
310
+ var tableRows = _a.tableRows, tableHeaders = _a.tableHeaders, syncCellWithState = _a.syncCellWithState, _b = _a.setRows, setRows = _b === void 0 ? undefined : _b, _c = _a.skipPageReset, skipPageReset = _c === void 0 ? false : _c, fieldConfig = _a.fieldConfig, _d = _a.disabled, disabled = _d === void 0 ? false : _d, setSelectedRows = _a.setSelectedRows, _e = _a.includeRowSelect, includeRowSelect = _e === void 0 ? true : _e, filterData = _a.filterData, filterTypes = _a.filterTypes, _f = _a.emptyTableText, emptyTableText = _f === void 0 ? "Table is empty" : _f, _g = _a.paginate, paginate = _g === void 0 ? false : _g, _h = _a.defaultPageSize, defaultPageSize = _h === void 0 ? 50 : _h, virtContainerStyling = _a.virtContainerStyling, overscan = _a.overscan, rowHeight = _a.rowHeight, includeGlobalSearch = _a.includeGlobalSearch, disableHeaderSelect = _a.disableHeaderSelect;
311
+ var classes = __assign(__assign({}, useStyles()), useLayoutStyles());
312
+ var parentRef = React.useRef(null);
313
+ // Set our editable cell renderer as the default Cell renderer
314
+ var defaultColumn = React.useMemo(function () { return ({
315
+ Cell: EditableCell,
316
+ }); }, []);
317
+ var _j = useTable({
318
+ columns: tableHeaders,
319
+ data: tableRows || emptyRows,
320
+ defaultColumn: defaultColumn,
321
+ autoResetPage: paginate ? !skipPageReset : false,
322
+ filterTypes: filterTypes,
323
+ initialState: { pageSize: paginate ? defaultPageSize : undefined },
324
+ // below are custom methods and variables that will be supplied to EditableCell
325
+ syncCellWithState: syncCellWithState,
326
+ setRows: setRows,
327
+ fieldConfig: fieldConfig,
328
+ disabled: disabled,
329
+ autoResetGlobalFilter: false,
330
+ }, useFilters, // plugging in useFilters hook
331
+ useGlobalFilter, // plugging in useGlobalFilters hook
332
+ usePagination, // plugging in usePagination hook
333
+ useRowSelect, // plugging in useRowSelect hook
334
+ function (hooks) {
335
+ if (includeRowSelect) {
336
+ hooks.visibleColumns.push(function (columns) { return __spreadArray([
337
+ // Let's make a column for selection
338
+ {
339
+ id: "selection",
340
+ // The header can use the table's getToggleAllRowsSelectedProps method
341
+ // to render a checkbox
342
+ Header: function (_a) {
343
+ var getToggleAllRowsSelectedProps = _a.getToggleAllRowsSelectedProps, getToggleAllPageRowsSelectedProps = _a.getToggleAllPageRowsSelectedProps;
344
+ return !disableHeaderSelect ? (React.createElement(SelectionCheckbox, __assign({}, (paginate
345
+ ? getToggleAllPageRowsSelectedProps()
346
+ : getToggleAllRowsSelectedProps()), { disabled: disabled, size: "small" }))) : ("Select");
347
+ },
348
+ // The cell can use the individual row's getToggleRowSelectedProps method
349
+ // to the render a checkbox
350
+ Cell: function (_a) {
351
+ var row = _a.row;
352
+ return (React.createElement(SelectionCheckbox, __assign({}, row.getToggleRowSelectedProps(), { disabled: disabled || row.original.disableSelection, size: "small" })));
353
+ },
354
+ }
355
+ ], columns, true); });
356
+ }
357
+ }), getTableProps = _j.getTableProps, // props to use in table, supplied by react-table
358
+ getTableBodyProps = _j.getTableBodyProps, // props to use in table, supplied by react-table
359
+ headerGroups = _j.headerGroups, // headers enriched with methods by react-table
360
+ rows = _j.rows, // rows enriched with methods by react-table
361
+ page = _j.page, // selected slice of data subset of rows. Visible paginated data
362
+ prepareRow = _j.prepareRow, // row optimisation function that must be called when rendering rows
363
+ _k = _j.state, selectedRowIds = _k.selectedRowIds, pageIndex = _k.pageIndex, // ids of selected rows and page index from internal table state
364
+ state = _j.state, setFilter = _j.setFilter, // manipulate filter criteria
365
+ pageCount = _j.pageCount, gotoPage = _j.gotoPage, preGlobalFilteredRows = _j.preGlobalFilteredRows, setGlobalFilter = _j.setGlobalFilter, isAllRowsSelected = _j.isAllRowsSelected, // used only to induce re-render in the header and update checkbox state
366
+ selectedFlatRows = _j.selectedFlatRows;
367
+ /* Few resources that helped the most with virtualisation work
368
+ * https://github.com/TanStack/virtual/issues/10
369
+ * https://codesandbox.io/s/poc-react-virtual-table-forked-857kdi?file=/src/index.js:2037-2101
370
+ */
371
+ var rowVirtualizer = useVirtual({
372
+ size: (paginate ? page : rows).length,
373
+ parentRef: parentRef,
374
+ // amount of rows to render above and below visible rows
375
+ overscan: overscan || 5,
376
+ // estimated row size to determine how many rows are visible
377
+ estimateSize: useCallback(function () { return rowHeight || 54; }, [rowHeight]),
378
+ });
379
+ var rowsToRender = paginate ? page : rows;
380
+ var items = rowVirtualizer.virtualItems;
381
+ var paddingTop = items.length > 0 ? items[0].start : 0;
382
+ var paddingBottom = items.length > 0 ? rowVirtualizer.totalSize - items[items.length - 1].end : 0;
383
+ var handlePageChange = useCallback(function (event, value) {
384
+ gotoPage(value - 1);
385
+ },
386
+ // eslint-disable-next-line react-hooks/exhaustive-deps
387
+ []);
388
+ // provide the data to filter on, if filter types is not present the default filter will be used
389
+ useEffect(function () {
390
+ if (filterData) {
391
+ setFilter(filterData.filterRow, filterData.filterValues);
392
+ }
393
+ // eslint-disable-next-line react-hooks/exhaustive-deps
394
+ }, [filterData]);
395
+ useEffect(function () {
396
+ if (setSelectedRows) {
397
+ setSelectedRows(Object.keys(selectedRowIds).map(function (id) { return +id; }));
398
+ }
399
+ // eslint-disable-next-line react-hooks/exhaustive-deps
400
+ }, [selectedRowIds]);
401
+ return (React.createElement(React.Fragment, null,
402
+ includeGlobalSearch ? (React.createElement(GlobalSearch, { preGlobalFilteredRows: preGlobalFilteredRows, globalFilter: state.globalFilter, setGlobalFilter: setGlobalFilter })) : null,
403
+ React.createElement("div", { ref: parentRef, className: virtContainerStyling || classes.virtualisationContainer },
404
+ React.createElement(TableContent, __assign({}, {
405
+ disabled: disabled,
406
+ includeRowSelect: includeRowSelect,
407
+ getTableProps: getTableProps,
408
+ headerGroups: headerGroups,
409
+ getTableBodyProps: getTableBodyProps,
410
+ rowsToRender: rowsToRender,
411
+ prepareRow: prepareRow,
412
+ paddingTop: paddingTop,
413
+ paddingBottom: paddingBottom,
414
+ virtualRows: items,
415
+ isAllRowsSelected: isAllRowsSelected,
416
+ selectedFlatRows: selectedFlatRows,
417
+ }))),
418
+ tableRows === null ? (React.createElement(Box, { className: classes.emptyLoadingPadding },
419
+ React.createElement(LoadingSpinner, null))) : null,
420
+ tableRows && !tableRows.length ? (React.createElement(Box, { className: classes.emptyLoadingPadding + " " + classes.centeredText },
421
+ React.createElement(Typography, { variant: "body2" }, emptyTableText))) : null,
422
+ paginate && (tableRows === null || tableRows === void 0 ? void 0 : tableRows.length) ? (React.createElement(Pagination, { className: classes.flexCenter + " " + classes.pagination, count: pageCount, page: pageIndex + 1, onChange: handlePageChange, shape: "rounded", showFirstButton: true, showLastButton: true })) : null));
423
+ });
424
+ export default EditableTable;
425
+ var useGlobalSearchStyles = makeStyles(function (theme) { return ({
426
+ container: {
427
+ display: "flex",
428
+ justifyContent: "center",
429
+ alignItems: "center",
430
+ border: "1px solid " + theme.palette.grey[600],
431
+ borderRadius: "8px",
432
+ width: "100%",
433
+ maxWidth: "20rem",
434
+ marginInline: "auto",
435
+ color: theme.palette.grey[600],
436
+ "&:hover": {
437
+ borderColor: theme.palette.grey[800],
438
+ color: theme.palette.grey[800],
439
+ },
440
+ "&:focus-within": {
441
+ borderColor: theme.palette.grey[800],
442
+ color: theme.palette.grey[800],
443
+ },
444
+ },
445
+ input: __assign({ width: "100%", maxWidth: "18rem", color: "inherit" }, theme.typography.body2),
446
+ }); });
447
+ var GlobalSearch = memo(function (_a) {
448
+ var preGlobalFilteredRows = _a.preGlobalFilteredRows, globalFilter = _a.globalFilter, setGlobalFilter = _a.setGlobalFilter;
449
+ var _b = useState(globalFilter), value = _b[0], setValue = _b[1];
450
+ var classes = __assign(__assign({}, useSpacingStyles()), useGlobalSearchStyles());
451
+ var onChange = useAsyncDebounce(function (value) {
452
+ setGlobalFilter(value || undefined);
453
+ }, 200);
454
+ var count = preGlobalFilteredRows.length;
455
+ return (React.createElement("div", { className: classes.container + " " + classes.contentBreak },
456
+ React.createElement(SearchIcon, { className: classes.rightSpacer1 + " " + classes.leftSpacer1 }),
457
+ React.createElement(InputBase, { className: "" + classes.input, value: value || "", onChange: function (e) {
458
+ setValue(e.target.value);
459
+ onChange(e.target.value);
460
+ }, placeholder: "Search " + count + " records...", inputProps: { "aria-label": "search" } })));
461
+ });
462
+ var TableContent = memo(function (_a) {
463
+ var disabled = _a.disabled, includeRowSelect = _a.includeRowSelect, getTableProps = _a.getTableProps, headerGroups = _a.headerGroups, getTableBodyProps = _a.getTableBodyProps, rowsToRender = _a.rowsToRender, prepareRow = _a.prepareRow, paddingTop = _a.paddingTop, paddingBottom = _a.paddingBottom, virtualRows = _a.virtualRows, isAllRowsSelected = _a.isAllRowsSelected, selectedFlatRows = _a.selectedFlatRows;
464
+ return (React.createElement(MUITable, __assign({}, getTableProps(), { style: { borderCollapse: "collapse" } }),
465
+ React.createElement(TableHeaderContent, { headerGroups: headerGroups, includeRowSelect: includeRowSelect, isAllRowsSelected: isAllRowsSelected }),
466
+ React.createElement(TableBody, __assign({}, getTableBodyProps()),
467
+ paddingTop > 0 && (React.createElement("tr", null,
468
+ React.createElement("td", { style: { height: paddingTop + "px" } }))),
469
+ React.createElement(TableRows, __assign({}, {
470
+ disabled: disabled,
471
+ includeRowSelect: includeRowSelect,
472
+ rowsToRender: rowsToRender,
473
+ prepareRow: prepareRow,
474
+ virtualRows: virtualRows,
475
+ selectedFlatRows: selectedFlatRows,
476
+ })),
477
+ paddingBottom > 0 && (React.createElement("tr", null,
478
+ React.createElement("td", { style: { height: paddingBottom + "px" } }))))));
479
+ });
480
+ var TableHeaderContent = memo(function (_a) {
481
+ var headerGroups = _a.headerGroups, includeRowSelect = _a.includeRowSelect, isAllRowsSelected = _a.isAllRowsSelected;
482
+ var classes = useStyles();
483
+ return (React.createElement(TableHead, { className: classes.offsetStickyPosition + " " + classes.stickyHeaderZIndex + " " + classes.headerBorders }, headerGroups.map(function (headerGroup) { return (React.createElement(TableRow, __assign({}, headerGroup.getHeaderGroupProps()), headerGroup.headers.map(function (column, i) {
484
+ var _a;
485
+ return (React.createElement(TableCell, __assign({}, column.getHeaderProps(), {
486
+ //@ts-ignore FIX REQUIRED incorrect use of react table props
487
+ align: column.textAlign || "center", padding: includeRowSelect && i === 0 ? "checkbox" : "normal", className: classes.headerCellColour + "\n " + (
488
+ //@ts-ignore FIX REQUIRED incorrect use of react table props
489
+ !column.shadedHeaderGroup
490
+ ? ""
491
+ : column.columns
492
+ ? classes.shadedHeaderGroupParent + " shadedHeaderGroupParent"
493
+ : column.parent
494
+ ? classes.shadedHeaderGroup2Children + " shadedHeaderGroup2Children"
495
+ : "") + " " + (
496
+ //@ts-ignore FIX REQUIRED incorrect use of react table props
497
+ column.shadedHeader ? classes.shadedHeader + " shadedHeader" : "") + "\n " + (
498
+ //@ts-ignore FIX REQUIRED incorrect use of react table props
499
+ column.stickyCell || ((_a = column.placeholderOf) === null || _a === void 0 ? void 0 : _a.stickyCell)
500
+ ? classes.offsetStickyPosition + " " + classes.stickyHeaderZIndex
501
+ : "") }), column.render("Header")));
502
+ }))); })));
503
+ });
504
+ var TableRows = memo(function (_a) {
505
+ var rowsToRender = _a.rowsToRender, virtualRows = _a.virtualRows, prepareRow = _a.prepareRow, rest = __rest(_a, ["rowsToRender", "virtualRows", "prepareRow"]);
506
+ var classes = __assign(__assign({}, useStyles()), useLayoutStyles());
507
+ return (React.createElement(React.Fragment, null, virtualRows.map(function (virtualRow) {
508
+ var row = rowsToRender[virtualRow.index];
509
+ prepareRow(row);
510
+ return (React.createElement(Fragment, { key: row.original.rowKey || row.getRowProps().key }, row.original.disabledRow ? (
511
+ //At the moment disabledRow prop is only passed on xero costs so this check is fine
512
+ // If this changes will need to change the check to be more specific
513
+ React.createElement(Tooltip, { title: row.original.tooltipText || "This row is disabled", arrow: true },
514
+ React.createElement(TableRowContents, __assign({}, __assign(__assign({}, rest), { row: row, classes: classes }))))) : (React.createElement(TableRowContents, __assign({}, __assign(__assign({}, rest), { row: row, classes: classes }))))));
515
+ })));
516
+ });
517
+ //# sourceMappingURL=EditableTable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditableTable.js","sourceRoot":"","sources":["../../src/EditableTable/EditableTable.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=EditableTable.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditableTable.types.js","sourceRoot":"","sources":["../../src/EditableTable/EditableTable.types.ts"],"names":[],"mappings":""}
@@ -9,7 +9,7 @@ export declare const TableTextField: React.FC<IEssentialRenderFnProps & {
9
9
  export declare const tableTextField: (tableProps: ICustomRenderFnProps) => JSX.Element;
10
10
  export declare const tableNumericStringField: (tableProps: ICustomRenderFnProps) => JSX.Element;
11
11
  export declare const tableNumericStringFixedDecimalField: (tableProps: ICustomRenderFnProps) => JSX.Element;
12
- export declare const SelectionCheckbox: React.ComponentType<Pick<import("@material-ui/core").CheckboxProps, "color" | "translate" | "hidden" | "size" | "style" | "icon" | "disabled" | "value" | "onBlur" | "onChange" | "prefix" | "name" | "checked" | "indeterminate" | "checkedIcon" | "className" | "innerRef" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "slot" | "spellCheck" | "tabIndex" | "title" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlurCapture" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "ref" | "form" | "key" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "disableFocusRipple" | "edge" | "action" | "buttonRef" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "onFocusVisible" | "TouchRippleProps" | "inputProps" | "inputRef" | "readOnly" | "required" | "indeterminateIcon"> & import("@material-ui/core").StyledComponentProps<"root">>;
12
+ export declare const SelectionCheckbox: React.JSXElementConstructor<Omit<import("@mui/material").CheckboxProps, "classes"> & import("@mui/styles/withStyles").StyledComponentProps<"root">>;
13
13
  interface ITableDatePicker extends IEssentialRenderFnProps {
14
14
  fullDate?: boolean;
15
15
  }