@ltht-react/table 2.0.188 → 2.0.189

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 (40) hide show
  1. package/lib/atoms/questionnaire-withdrawn-table-cell.d.ts +6 -0
  2. package/lib/atoms/questionnaire-withdrawn-table-cell.js +19 -0
  3. package/lib/atoms/questionnaire-withdrawn-table-cell.js.map +1 -0
  4. package/lib/index.d.ts +7 -0
  5. package/lib/index.js +15 -0
  6. package/lib/index.js.map +1 -0
  7. package/lib/molecules/table-cell.d.ts +17 -0
  8. package/lib/molecules/table-cell.js +109 -0
  9. package/lib/molecules/table-cell.js.map +1 -0
  10. package/lib/molecules/table-component.d.ts +20 -0
  11. package/lib/molecules/table-component.js +78 -0
  12. package/lib/molecules/table-component.js.map +1 -0
  13. package/lib/molecules/table-header.d.ts +12 -0
  14. package/lib/molecules/table-header.js +33 -0
  15. package/lib/molecules/table-header.js.map +1 -0
  16. package/lib/molecules/table-methods.d.ts +14 -0
  17. package/lib/molecules/table-methods.js +198 -0
  18. package/lib/molecules/table-methods.js.map +1 -0
  19. package/lib/molecules/table-styled-components.d.ts +81 -0
  20. package/lib/molecules/table-styled-components.js +112 -0
  21. package/lib/molecules/table-styled-components.js.map +1 -0
  22. package/lib/molecules/table.d.ts +44 -0
  23. package/lib/molecules/table.js +95 -0
  24. package/lib/molecules/table.js.map +1 -0
  25. package/lib/molecules/useDimensionRef.d.ts +5 -0
  26. package/lib/molecules/useDimensionRef.js +31 -0
  27. package/lib/molecules/useDimensionRef.js.map +1 -0
  28. package/lib/molecules/useScrollRef.d.ts +8 -0
  29. package/lib/molecules/useScrollRef.js +30 -0
  30. package/lib/molecules/useScrollRef.js.map +1 -0
  31. package/lib/organisms/generic-table.d.ts +9 -0
  32. package/lib/organisms/generic-table.js +36 -0
  33. package/lib/organisms/generic-table.js.map +1 -0
  34. package/lib/organisms/questionnaire-table-methods.d.ts +9 -0
  35. package/lib/organisms/questionnaire-table-methods.js +247 -0
  36. package/lib/organisms/questionnaire-table-methods.js.map +1 -0
  37. package/lib/organisms/questionnaire-table.d.ts +12 -0
  38. package/lib/organisms/questionnaire-table.js +44 -0
  39. package/lib/organisms/questionnaire-table.js.map +1 -0
  40. package/package.json +8 -8
@@ -0,0 +1,247 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
14
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
15
+ if (ar || !(i in from)) {
16
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
17
+ ar[i] = from[i];
18
+ }
19
+ }
20
+ return to.concat(ar || Array.prototype.slice.call(from));
21
+ };
22
+ var __importDefault = (this && this.__importDefault) || function (mod) {
23
+ return (mod && mod.__esModule) ? mod : { "default": mod };
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ var jsx_runtime_1 = require("react/jsx-runtime");
27
+ var types_1 = require("@ltht-react/types");
28
+ var utils_1 = require("@ltht-react/utils");
29
+ var styles_1 = require("@ltht-react/styles");
30
+ var questionnaire_withdrawn_table_cell_1 = __importDefault(require("../atoms/questionnaire-withdrawn-table-cell"));
31
+ var DEFAULT_VERTICAL_HEADER_CELL_STYLE = {
32
+ maxWidth: '15rem',
33
+ textWrap: 'wrap',
34
+ textAlign: 'left',
35
+ };
36
+ var withdrawnWrapper = function (text) { return (0, jsx_runtime_1.jsx)(questionnaire_withdrawn_table_cell_1.default, { text: text }); };
37
+ var mapQuestionnaireDefinitionAndResponsesToTableData = function (definition, questionnaireResponses, axis, adminActions) {
38
+ var definitionItems = (0, utils_1.EnsureMaybeArray)((0, utils_1.EnsureMaybe)(definition.item, []));
39
+ if (definitionItems.length === 0) {
40
+ return undefined;
41
+ }
42
+ if (axis === 'y') {
43
+ return mapQuestionnaireObjectsToVerticalTableData(definitionItems, questionnaireResponses, adminActions);
44
+ }
45
+ return mapQuestionnaireObjectsToHorizontalTableData(definitionItems, questionnaireResponses, adminActions);
46
+ };
47
+ var mapQuestionnaireObjectsToHorizontalTableData = function (definitionItems, records, adminActions) {
48
+ var tableData = {
49
+ headers: __spreadArray([
50
+ {
51
+ id: 'date',
52
+ type: 'accessor',
53
+ cellProps: { text: 'Record Date' },
54
+ }
55
+ ], recursivelyMapQuestionnaireItemsIntoHeaders(definitionItems), true),
56
+ rows: mapQuestionnaireResponsesIntoDataEntities(records, adminActions),
57
+ };
58
+ if (adminActions) {
59
+ tableData.headers.splice(1, 0, {
60
+ id: 'adminactions',
61
+ type: 'accessor',
62
+ cellProps: { text: 'Actions' },
63
+ });
64
+ }
65
+ return tableData;
66
+ };
67
+ var recursivelyMapQuestionnaireItemsIntoHeaders = function (questionnaireItems) {
68
+ return questionnaireItems.map(function (questionnaireItem) {
69
+ var _a, _b, _c;
70
+ var subItems = (0, utils_1.EnsureMaybeArray)((_a = questionnaireItem.item) !== null && _a !== void 0 ? _a : []);
71
+ return {
72
+ id: (_b = questionnaireItem === null || questionnaireItem === void 0 ? void 0 : questionnaireItem.linkId) !== null && _b !== void 0 ? _b : '',
73
+ type: subItems.length > 0 ? 'group' : 'accessor',
74
+ cellProps: { text: (_c = questionnaireItem === null || questionnaireItem === void 0 ? void 0 : questionnaireItem.text) !== null && _c !== void 0 ? _c : '' },
75
+ subHeaders: recursivelyMapQuestionnaireItemsIntoHeaders(subItems),
76
+ };
77
+ });
78
+ };
79
+ var mapQuestionnaireResponsesIntoDataEntities = function (records, adminActions) {
80
+ return records
81
+ .filter(function (record) { return !!record.item; })
82
+ .map(function (record) {
83
+ var _a;
84
+ var dataEntity = {};
85
+ dataEntity.date = {
86
+ customComponentOverride: record.status === types_1.QuestionnaireResponseStatus.EnteredInError
87
+ ? withdrawnWrapper((0, utils_1.partialDateTimeText)(record.authored))
88
+ : undefined,
89
+ text: (0, utils_1.partialDateTimeText)(record.authored),
90
+ };
91
+ if (adminActions) {
92
+ var adminActionsForThisDataEntity = adminActions.find(function (actionForForm) { return actionForForm.questionnaire === record.id; });
93
+ if (adminActionsForThisDataEntity) {
94
+ dataEntity.adminactions = {
95
+ id: record.id,
96
+ adminActions: adminActionsForThisDataEntity.adminActions,
97
+ parentStyle: { zIndex: (0, styles_1.getZIndex)(styles_1.TableDataWithPopUp) },
98
+ };
99
+ }
100
+ }
101
+ (_a = record.item) === null || _a === void 0 ? void 0 : _a.filter(function (item) { return (item === null || item === void 0 ? void 0 : item.linkId) && (item === null || item === void 0 ? void 0 : item.answer); }).forEach(function (item) {
102
+ var _a;
103
+ var linkId = (0, utils_1.EnsureMaybe)(item === null || item === void 0 ? void 0 : item.linkId);
104
+ var answer = (0, utils_1.EnsureMaybe)((_a = item === null || item === void 0 ? void 0 : item.answer) === null || _a === void 0 ? void 0 : _a.find(function (answer) { return !!answer; }));
105
+ dataEntity[linkId] = createCellPropsForAnswer(answer, false, record.status === types_1.QuestionnaireResponseStatus.EnteredInError);
106
+ if (answer.item) {
107
+ dataEntity = recursivelyMapResponseItemsOntoData((0, utils_1.EnsureMaybeArray)(answer.item), dataEntity, record.status);
108
+ }
109
+ });
110
+ return dataEntity;
111
+ });
112
+ };
113
+ var recursivelyMapResponseItemsOntoData = function (items, dataEntity, status) {
114
+ var updatedDataEntity = __assign({}, dataEntity);
115
+ items.forEach(function (item) {
116
+ var firstAnswer = item.answer ? item.answer[0] : undefined;
117
+ if (item.linkId && firstAnswer) {
118
+ var props = createCellPropsForAnswer(firstAnswer, false, status === types_1.QuestionnaireResponseStatus.EnteredInError);
119
+ updatedDataEntity[item.linkId] = {
120
+ customComponentOverride: props.customComponentOverride,
121
+ text: props.text,
122
+ };
123
+ if (firstAnswer.item) {
124
+ updatedDataEntity = recursivelyMapResponseItemsOntoData((0, utils_1.EnsureMaybeArray)(firstAnswer.item), updatedDataEntity, status);
125
+ }
126
+ }
127
+ });
128
+ return updatedDataEntity;
129
+ };
130
+ var mapQuestionnaireObjectsToVerticalTableData = function (definitionItems, records, adminActions) { return ({
131
+ headers: __spreadArray([
132
+ {
133
+ id: 'property',
134
+ type: 'accessor',
135
+ cellProps: { text: '' },
136
+ }
137
+ ], records.map(function (record) {
138
+ var _a, _b, _c;
139
+ return ({
140
+ id: (_a = record === null || record === void 0 ? void 0 : record.id) !== null && _a !== void 0 ? _a : '',
141
+ type: 'accessor',
142
+ cellProps: {
143
+ customComponentOverride: record.status === types_1.QuestionnaireResponseStatus.EnteredInError
144
+ ? withdrawnWrapper((_b = (0, utils_1.partialDateTimeText)(record.authored)) !== null && _b !== void 0 ? _b : '')
145
+ : undefined,
146
+ text: (_c = (0, utils_1.partialDateTimeText)(record.authored)) !== null && _c !== void 0 ? _c : '',
147
+ },
148
+ });
149
+ }), true),
150
+ rows: buildVerticalCellRows(definitionItems, records, adminActions),
151
+ }); };
152
+ var buildVerticalCellRows = function (definitionItems, records, adminActions) {
153
+ var dataEntities = definitionItems.map(function (item) {
154
+ var dataEntity = {};
155
+ dataEntity = buildVerticalCellRowsRecursive((0, utils_1.EnsureMaybeArray)([item]), records, dataEntity);
156
+ return dataEntity;
157
+ });
158
+ if (adminActions) {
159
+ var actionsDataEntity_1 = {};
160
+ actionsDataEntity_1.property = { text: 'Actions', parentStyle: DEFAULT_VERTICAL_HEADER_CELL_STYLE };
161
+ records.forEach(function (record) {
162
+ var adminActionsForThisDataEntity = adminActions.find(function (actionForForm) { return actionForForm.questionnaire === record.id; });
163
+ if (adminActionsForThisDataEntity) {
164
+ actionsDataEntity_1[record.id] = {
165
+ id: record.id,
166
+ adminActions: adminActionsForThisDataEntity.adminActions,
167
+ parentStyle: { zIndex: (0, styles_1.getZIndex)(styles_1.TableDataWithPopUp) },
168
+ };
169
+ }
170
+ });
171
+ return [actionsDataEntity_1].concat(dataEntities);
172
+ }
173
+ return dataEntities;
174
+ };
175
+ var buildVerticalCellRowsRecursive = function (definitionItems, records, dataEntity) {
176
+ var updatedDataEntity = __assign({}, dataEntity);
177
+ definitionItems.forEach(function (definitionItem) {
178
+ var _a;
179
+ var containsChildItems = !!definitionItem.item && definitionItem.item.length > 0;
180
+ updatedDataEntity.property = {
181
+ text: (_a = definitionItem.text) !== null && _a !== void 0 ? _a : '',
182
+ parentStyle: __assign(__assign({}, DEFAULT_VERTICAL_HEADER_CELL_STYLE), { fontWeight: containsChildItems ? 'bold' : 'normal' }),
183
+ };
184
+ if (definitionItem.linkId) {
185
+ records.forEach(function (record) {
186
+ var _a;
187
+ updatedDataEntity = getRecordItemByLinkId((0, utils_1.EnsureMaybeArray)((_a = record.item) !== null && _a !== void 0 ? _a : []), (0, utils_1.EnsureMaybe)(definitionItem.linkId), updatedDataEntity, record.id, record.status);
188
+ });
189
+ }
190
+ if (definitionItem.item && definitionItem.item.length > 0) {
191
+ updatedDataEntity.subRows = buildVerticalCellRows((0, utils_1.EnsureMaybeArray)(definitionItem.item), records);
192
+ }
193
+ });
194
+ return updatedDataEntity;
195
+ };
196
+ var getRecordItemByLinkId = function (recordItems, linkId, dataEntity, recordId, status) {
197
+ var updatedDataEntity = __assign({}, dataEntity);
198
+ recordItems.forEach(function (recordItem) {
199
+ var recordItemAnswer = recordItem.answer && recordItem.answer.length > 0 ? (0, utils_1.EnsureMaybe)(recordItem.answer[0]) : undefined;
200
+ if (recordItemAnswer) {
201
+ if ((recordItem === null || recordItem === void 0 ? void 0 : recordItem.linkId) && (recordItem === null || recordItem === void 0 ? void 0 : recordItem.linkId) === linkId) {
202
+ updatedDataEntity[recordId] = createCellPropsForAnswer(recordItemAnswer, true, status === types_1.QuestionnaireResponseStatus.EnteredInError);
203
+ }
204
+ if (recordItemAnswer.item && recordItemAnswer.item.length > 0) {
205
+ updatedDataEntity = getRecordItemByLinkId((0, utils_1.EnsureMaybeArray)(recordItemAnswer.item), linkId, updatedDataEntity, recordId, status);
206
+ }
207
+ }
208
+ });
209
+ return updatedDataEntity;
210
+ };
211
+ var createCellPropsForAnswer = function (answer, shouldRenderCheckbox, isEnteredInError) {
212
+ if (answer.valueString) {
213
+ if (shouldRenderCheckbox && answer.valueString === 'CHECKBOX') {
214
+ return {
215
+ iconProps: { type: 'checkbox', size: 'medium' },
216
+ };
217
+ }
218
+ return {
219
+ customComponentOverride: isEnteredInError ? withdrawnWrapper(answer.valueString) : undefined,
220
+ text: answer.valueString,
221
+ };
222
+ }
223
+ if (answer.valueBoolean != null) {
224
+ var parsedBoolean = answer.valueBoolean ? 'Yes' : 'No';
225
+ return {
226
+ customComponentOverride: isEnteredInError ? withdrawnWrapper(parsedBoolean) : undefined,
227
+ text: parsedBoolean,
228
+ };
229
+ }
230
+ if (answer.valueInteger != null) {
231
+ return {
232
+ customComponentOverride: isEnteredInError ? withdrawnWrapper(answer.valueInteger.toString()) : undefined,
233
+ text: answer.valueInteger.toString(),
234
+ };
235
+ }
236
+ if (answer.valueDecimal != null) {
237
+ return {
238
+ customComponentOverride: isEnteredInError ? withdrawnWrapper(answer.valueDecimal.toString()) : undefined,
239
+ text: answer.valueDecimal.toString(),
240
+ };
241
+ }
242
+ return {
243
+ text: '',
244
+ };
245
+ };
246
+ exports.default = mapQuestionnaireDefinitionAndResponsesToTableData;
247
+ //# sourceMappingURL=questionnaire-table-methods.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"questionnaire-table-methods.js","sourceRoot":"","sources":["../../src/organisms/questionnaire-table-methods.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,2CAS0B;AAC1B,2CAAsF;AACtF,6CAAkE;AAGlE,mHAAyF;AAEzF,IAAM,kCAAkC,GAAkB;IACxD,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,MAAM;CAClB,CAAA;AAED,IAAM,gBAAgB,GAAG,UAAC,IAAY,IAAkB,OAAA,uBAAC,4CAA+B,IAAC,IAAI,EAAE,IAAI,GAAI,EAA/C,CAA+C,CAAA;AAEvG,IAAM,iDAAiD,GAAG,UACxD,UAAyB,EACzB,sBAA+C,EAC/C,IAAU,EACV,YAA6C;IAE7C,IAAM,eAAe,GAAG,IAAA,wBAAgB,EACtC,IAAA,mBAAW,EAA6B,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAC7D,CAAA;IAED,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;QACjB,OAAO,0CAA0C,CAAC,eAAe,EAAE,sBAAsB,EAAE,YAAY,CAAC,CAAA;IAC1G,CAAC;IACD,OAAO,4CAA4C,CAAC,eAAe,EAAE,sBAAsB,EAAE,YAAY,CAAC,CAAA;AAC5G,CAAC,CAAA;AAED,IAAM,4CAA4C,GAAG,UACnD,eAAyC,EACzC,OAAgC,EAChC,YAA6C;IAE7C,IAAM,SAAS,GAAc;QAC3B,OAAO;YACL;gBACE,EAAE,EAAE,MAAM;gBACV,IAAI,EAAE,UAAU;gBAChB,SAAS,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;aACnC;WACE,2CAA2C,CAAC,eAAe,CAAC,OAChE;QACD,IAAI,EAAE,yCAAyC,CAAC,OAAO,EAAE,YAAY,CAAC;KACvE,CAAA;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE;YAC7B,EAAE,EAAE,cAAc;YAClB,IAAI,EAAE,UAAU;YAChB,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;SAC/B,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,IAAM,2CAA2C,GAAG,UAAC,kBAAuC;IAC1F,OAAA,kBAAkB,CAAC,GAAG,CAAC,UAAC,iBAAiB;;QACvC,IAAM,QAAQ,GAAG,IAAA,wBAAgB,EAAoB,MAAA,iBAAiB,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAA;QAElF,OAAO;YACL,EAAE,EAAE,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,MAAM,mCAAI,EAAE;YACnC,IAAI,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU;YAChD,SAAS,EAAE,EAAE,IAAI,EAAE,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,IAAI,mCAAI,EAAE,EAAE;YAClD,UAAU,EAAE,2CAA2C,CAAC,QAAQ,CAAC;SAClE,CAAA;IACH,CAAC,CAAC;AATF,CASE,CAAA;AAEJ,IAAM,yCAAyC,GAAG,UAChD,OAAgC,EAChC,YAA6C;IAE7C,OAAA,OAAO;SACJ,MAAM,CAAC,UAAC,MAAM,IAAK,OAAA,CAAC,CAAC,MAAM,CAAC,IAAI,EAAb,CAAa,CAAC;SACjC,GAAG,CAAC,UAAC,MAAM;;QACV,IAAI,UAAU,GAAe,EAAE,CAAA;QAE/B,UAAU,CAAC,IAAI,GAAG;YAChB,uBAAuB,EACrB,MAAM,CAAC,MAAM,KAAK,mCAA2B,CAAC,cAAc;gBAC1D,CAAC,CAAC,gBAAgB,CAAC,IAAA,2BAAmB,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACxD,CAAC,CAAC,SAAS;YACf,IAAI,EAAE,IAAA,2BAAmB,EAAC,MAAM,CAAC,QAAQ,CAAC;SAC3C,CAAA;QAED,IAAI,YAAY,EAAE,CAAC;YACjB,IAAM,6BAA6B,GAAG,YAAY,CAAC,IAAI,CACrD,UAAC,aAAa,IAAK,OAAA,aAAa,CAAC,aAAa,KAAK,MAAM,CAAC,EAAE,EAAzC,CAAyC,CAC7D,CAAA;YACD,IAAI,6BAA6B,EAAE,CAAC;gBAClC,UAAU,CAAC,YAAY,GAAG;oBACxB,EAAE,EAAE,MAAM,CAAC,EAAE;oBACb,YAAY,EAAE,6BAA6B,CAAC,YAAY;oBACxD,WAAW,EAAE,EAAE,MAAM,EAAE,IAAA,kBAAS,EAAC,2BAAkB,CAAC,EAAE;iBACvD,CAAA;YACH,CAAC;QACH,CAAC;QACD,MAAA,MAAM,CAAC,IAAI,0CACP,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,MAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAA,EAA5B,CAA4B,EAC9C,OAAO,CAAC,UAAC,IAAI;;YACZ,IAAM,MAAM,GAAG,IAAA,mBAAW,EAAS,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,CAAA;YAChD,IAAM,MAAM,GAAG,IAAA,mBAAW,EAAkC,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,0CAAE,IAAI,CAAC,UAAC,MAAM,IAAK,OAAA,CAAC,CAAC,MAAM,EAAR,CAAQ,CAAC,CAAC,CAAA;YAErG,UAAU,CAAC,MAAM,CAAC,GAAG,wBAAwB,CAC3C,MAAM,EACN,KAAK,EACL,MAAM,CAAC,MAAM,KAAK,mCAA2B,CAAC,cAAc,CAC7D,CAAA;YAED,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;gBAChB,UAAU,GAAG,mCAAmC,CAC9C,IAAA,wBAAgB,EAA4B,MAAM,CAAC,IAAI,CAAC,EACxD,UAAU,EACV,MAAM,CAAC,MAAM,CACd,CAAA;YACH,CAAC;QACH,CAAC,CAAC,CAAA;QAEJ,OAAO,UAAU,CAAA;IACnB,CAAC,CAAC;AA/CJ,CA+CI,CAAA;AAEN,IAAM,mCAAmC,GAAG,UAC1C,KAAkC,EAClC,UAAsB,EACtB,MAAmC;IAEnC,IAAI,iBAAiB,gBAAQ,UAAU,CAAE,CAAA;IACzC,KAAK,CAAC,OAAO,CAAC,UAAC,IAAI;QACjB,IAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAE5D,IAAI,IAAI,CAAC,MAAM,IAAI,WAAW,EAAE,CAAC;YAC/B,IAAM,KAAK,GAAG,wBAAwB,CAAC,WAAW,EAAE,KAAK,EAAE,MAAM,KAAK,mCAA2B,CAAC,cAAc,CAAC,CAAA;YACjH,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG;gBAC/B,uBAAuB,EAAE,KAAK,CAAC,uBAAuB;gBACtD,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAA;YAED,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;gBACrB,iBAAiB,GAAG,mCAAmC,CACrD,IAAA,wBAAgB,EAA4B,WAAW,CAAC,IAAI,CAAC,EAC7D,iBAAiB,EACjB,MAAM,CACP,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAA;IACF,OAAO,iBAAiB,CAAA;AAC1B,CAAC,CAAA;AAED,IAAM,0CAA0C,GAAG,UACjD,eAAyC,EACzC,OAAgC,EAChC,YAA6C,IAC/B,OAAA,CAAC;IACf,OAAO;QACL;YACE,EAAE,EAAE,UAAU;YACd,IAAI,EAAE,UAAU;YAChB,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;SACxB;OACE,OAAO,CAAC,GAAG,CACZ,UAAC,MAAM;;QAAa,OAAA,CAAC;YACnB,EAAE,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,EAAE,mCAAI,EAAE;YACpB,IAAI,EAAE,UAAU;YAChB,SAAS,EAAE;gBACT,uBAAuB,EACrB,MAAM,CAAC,MAAM,KAAK,mCAA2B,CAAC,cAAc;oBAC1D,CAAC,CAAC,gBAAgB,CAAC,MAAA,IAAA,2BAAmB,EAAC,MAAM,CAAC,QAAQ,CAAC,mCAAI,EAAE,CAAC;oBAC9D,CAAC,CAAC,SAAS;gBACf,IAAI,EAAE,MAAA,IAAA,2BAAmB,EAAC,MAAM,CAAC,QAAQ,CAAC,mCAAI,EAAE;aACjD;SACF,CAAC,CAAA;KAAA,CACH,OACF;IACD,IAAI,EAAE,qBAAqB,CAAC,eAAe,EAAE,OAAO,EAAE,YAAY,CAAC;CACpE,CAAC,EAtBc,CAsBd,CAAA;AAEF,IAAM,qBAAqB,GAAG,UAC5B,eAAoC,EACpC,OAAgC,EAChC,YAA6C;IAE7C,IAAM,YAAY,GAAG,eAAe,CAAC,GAAG,CAAC,UAAC,IAAI;QAC5C,IAAI,UAAU,GAAe,EAAE,CAAA;QAE/B,UAAU,GAAG,8BAA8B,CAAC,IAAA,wBAAgB,EAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;QAE7G,OAAO,UAAU,CAAA;IACnB,CAAC,CAAC,CAAA;IAEF,IAAI,YAAY,EAAE,CAAC;QACjB,IAAM,mBAAiB,GAAe,EAAE,CAAA;QACxC,mBAAiB,CAAC,QAAQ,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,kCAAkC,EAAE,CAAA;QAEjG,OAAO,CAAC,OAAO,CAAC,UAAC,MAAM;YACrB,IAAM,6BAA6B,GAAG,YAAY,CAAC,IAAI,CACrD,UAAC,aAAa,IAAK,OAAA,aAAa,CAAC,aAAa,KAAK,MAAM,CAAC,EAAE,EAAzC,CAAyC,CAC7D,CAAA;YAED,IAAI,6BAA6B,EAAE,CAAC;gBAClC,mBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG;oBAC7B,EAAE,EAAE,MAAM,CAAC,EAAE;oBACb,YAAY,EAAE,6BAA6B,CAAC,YAAY;oBACxD,WAAW,EAAE,EAAE,MAAM,EAAE,IAAA,kBAAS,EAAC,2BAAkB,CAAC,EAAE;iBACvD,CAAA;YACH,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,CAAC,mBAAiB,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IACjD,CAAC;IACD,OAAO,YAAY,CAAA;AACrB,CAAC,CAAA;AAED,IAAM,8BAA8B,GAAG,UACrC,eAAoC,EACpC,OAAgC,EAChC,UAAsB;IAEtB,IAAI,iBAAiB,gBAAQ,UAAU,CAAE,CAAA;IACzC,eAAe,CAAC,OAAO,CAAC,UAAC,cAAc;;QACrC,IAAM,kBAAkB,GAAG,CAAC,CAAC,cAAc,CAAC,IAAI,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAA;QAElF,iBAAiB,CAAC,QAAQ,GAAG;YAC3B,IAAI,EAAE,MAAA,cAAc,CAAC,IAAI,mCAAI,EAAE;YAC/B,WAAW,wBACN,kCAAkC,KACrC,UAAU,EAAE,kBAAkB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,GACnD;SACF,CAAA;QAED,IAAI,cAAc,CAAC,MAAM,EAAE,CAAC;YAC1B,OAAO,CAAC,OAAO,CAAC,UAAC,MAAM;;gBACrB,iBAAiB,GAAG,qBAAqB,CACvC,IAAA,wBAAgB,EAA4B,MAAA,MAAM,CAAC,IAAI,mCAAI,EAAE,CAAC,EAC9D,IAAA,mBAAW,EAAS,cAAc,CAAC,MAAM,CAAC,EAC1C,iBAAiB,EACjB,MAAM,CAAC,EAAE,EACT,MAAM,CAAC,MAAM,CACd,CAAA;YACH,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,cAAc,CAAC,IAAI,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1D,iBAAiB,CAAC,OAAO,GAAG,qBAAqB,CAC/C,IAAA,wBAAgB,EAAoB,cAAc,CAAC,IAAI,CAAC,EACxD,OAAO,CACR,CAAA;QACH,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,iBAAiB,CAAA;AAC1B,CAAC,CAAA;AAED,IAAM,qBAAqB,GAAG,UAC5B,WAAwC,EACxC,MAAc,EACd,UAAsB,EACtB,QAAgB,EAChB,MAAmC;IAEnC,IAAI,iBAAiB,gBAAQ,UAAU,CAAE,CAAA;IACzC,WAAW,CAAC,OAAO,CAAC,UAAC,UAAU;QAC7B,IAAM,gBAAgB,GACpB,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAW,EAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAEnG,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,KAAI,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,MAAK,MAAM,EAAE,CAAC;gBACxD,iBAAiB,CAAC,QAAQ,CAAC,GAAG,wBAAwB,CACpD,gBAAgB,EAChB,IAAI,EACJ,MAAM,KAAK,mCAA2B,CAAC,cAAc,CACtD,CAAA;YACH,CAAC;YACD,IAAI,gBAAgB,CAAC,IAAI,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9D,iBAAiB,GAAG,qBAAqB,CACvC,IAAA,wBAAgB,EAA4B,gBAAgB,CAAC,IAAI,CAAC,EAClE,MAAM,EACN,iBAAiB,EACjB,QAAQ,EACR,MAAM,CACP,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,iBAAiB,CAAA;AAC1B,CAAC,CAAA;AAED,IAAM,wBAAwB,GAAG,UAC/B,MAAuC,EACvC,oBAA6B,EAC7B,gBAAyB;IAEzB,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,IAAI,oBAAoB,IAAI,MAAM,CAAC,WAAW,KAAK,UAAU,EAAE,CAAC;YAC9D,OAAO;gBACL,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE;aAChD,CAAA;QACH,CAAC;QACD,OAAO;YACL,uBAAuB,EAAE,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;YAC5F,IAAI,EAAE,MAAM,CAAC,WAAW;SACzB,CAAA;IACH,CAAC;IACD,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;QAChC,IAAM,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;QACxD,OAAO;YACL,uBAAuB,EAAE,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS;YACvF,IAAI,EAAE,aAAa;SACpB,CAAA;IACH,CAAC;IACD,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;QAChC,OAAO;YACL,uBAAuB,EAAE,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;YACxG,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE;SACrC,CAAA;IACH,CAAC;IACD,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;QAChC,OAAO;YACL,uBAAuB,EAAE,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;YACxG,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE;SACrC,CAAA;IACH,CAAC;IACD,OAAO;QACL,IAAI,EAAE,EAAE;KACT,CAAA;AACH,CAAC,CAAA;AAOD,kBAAe,iDAAiD,CAAA"}
@@ -0,0 +1,12 @@
1
+ import { QuestionnaireResponse, Questionnaire } from '@ltht-react/types';
2
+ import { FC } from 'react';
3
+ import { IPaginationProps, ITableDimensionProps, ITableConfig } from '../molecules/table';
4
+ import { AdminActionsForQuestionnaire } from './questionnaire-table-methods';
5
+ declare const QuestionnaireTable: FC<IProps>;
6
+ interface IProps extends ITableConfig, IPaginationProps, ITableDimensionProps {
7
+ id?: string;
8
+ definition: Questionnaire;
9
+ records: QuestionnaireResponse[];
10
+ adminActions?: AdminActionsForQuestionnaire[];
11
+ }
12
+ export default QuestionnaireTable;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ var __importDefault = (this && this.__importDefault) || function (mod) {
25
+ return (mod && mod.__esModule) ? mod : { "default": mod };
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ var jsx_runtime_1 = require("react/jsx-runtime");
29
+ var react_1 = require("react");
30
+ var icon_1 = __importDefault(require("@ltht-react/icon"));
31
+ var table_1 = __importDefault(require("../molecules/table"));
32
+ var questionnaire_table_methods_1 = __importDefault(require("./questionnaire-table-methods"));
33
+ var QuestionnaireTable = function (_a) {
34
+ var definition = _a.definition, records = _a.records, _b = _a.headerAxis, headerAxis = _b === void 0 ? 'y' : _b, _c = _a.staticColumns, staticColumns = _c === void 0 ? 0 : _c, adminActions = _a.adminActions, _d = _a.pageSize, pageSize = _d === void 0 ? 10 : _d, _e = _a.currentPage, currentPage = _e === void 0 ? 1 : _e, _f = _a.keepPreviousData, keepPreviousData = _f === void 0 ? true : _f, props = __rest(_a, ["definition", "records", "headerAxis", "staticColumns", "adminActions", "pageSize", "currentPage", "keepPreviousData"]);
35
+ var tableData = (0, react_1.useMemo)(function () { return (0, questionnaire_table_methods_1.default)(definition, records, headerAxis, adminActions); }, [headerAxis, definition, records, adminActions]);
36
+ // TODO: Replace this fragment with a properly styled error component.
37
+ // Maybe this could be a re-usable atom?
38
+ if (!tableData) {
39
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(icon_1.default, { type: "exclamation", size: "large", color: "red" }), (0, jsx_runtime_1.jsx)("div", { children: "An error occurred whilst loading this table." })] }));
40
+ }
41
+ return ((0, jsx_runtime_1.jsx)(table_1.default, __assign({ tableData: tableData, staticColumns: staticColumns, headerAxis: headerAxis, pageSize: pageSize, currentPage: currentPage, keepPreviousData: keepPreviousData }, props)));
42
+ };
43
+ exports.default = QuestionnaireTable;
44
+ //# sourceMappingURL=questionnaire-table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"questionnaire-table.js","sourceRoot":"","sources":["../../src/organisms/questionnaire-table.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,+BAAmC;AACnC,0DAAmC;AACnC,6DAAgG;AAChG,8FAEsC;AAEtC,IAAM,kBAAkB,GAAe,UAAC,EAUvC;IATC,IAAA,UAAU,gBAAA,EACV,OAAO,aAAA,EACP,kBAAgB,EAAhB,UAAU,mBAAG,GAAG,KAAA,EAChB,qBAAiB,EAAjB,aAAa,mBAAG,CAAC,KAAA,EACjB,YAAY,kBAAA,EACZ,gBAAa,EAAb,QAAQ,mBAAG,EAAE,KAAA,EACb,mBAAe,EAAf,WAAW,mBAAG,CAAC,KAAA,EACf,wBAAuB,EAAvB,gBAAgB,mBAAG,IAAI,KAAA,EACpB,KAAK,cAT8B,uHAUvC,CADS;IAER,IAAM,SAAS,GAAG,IAAA,eAAO,EACvB,cAAM,OAAA,IAAA,qCAAiD,EAAC,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,CAAC,EAAhG,CAAgG,EACtG,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,CAAC,CAChD,CAAA;IAED,sEAAsE;IACtE,wCAAwC;IACxC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CACL,6DACE,uBAAC,cAAI,IAAC,IAAI,EAAC,aAAa,EAAC,IAAI,EAAC,OAAO,EAAC,KAAK,EAAC,KAAK,GAAG,EACpD,2FAAuD,IACtD,CACJ,CAAA;IACH,CAAC;IAED,OAAO,CACL,uBAAC,eAAK,aACJ,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,aAAa,EAC5B,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,gBAAgB,IAC9B,KAAK,EACT,CACH,CAAA;AACH,CAAC,CAAA;AASD,kBAAe,kBAAkB,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ltht-react/table",
3
- "version": "2.0.188",
3
+ "version": "2.0.189",
4
4
  "description": "ltht-react Table component.",
5
5
  "author": "LTHT",
6
6
  "homepage": "",
@@ -28,15 +28,15 @@
28
28
  "dependencies": {
29
29
  "@emotion/react": "^11.0.0",
30
30
  "@emotion/styled": "^11.0.0",
31
- "@ltht-react/button": "^2.0.188",
32
- "@ltht-react/icon": "^2.0.188",
33
- "@ltht-react/menu": "^2.0.188",
34
- "@ltht-react/styles": "^2.0.188",
35
- "@ltht-react/types": "^2.0.188",
36
- "@ltht-react/utils": "^2.0.188",
31
+ "@ltht-react/button": "^2.0.189",
32
+ "@ltht-react/icon": "^2.0.189",
33
+ "@ltht-react/menu": "^2.0.189",
34
+ "@ltht-react/styles": "^2.0.189",
35
+ "@ltht-react/types": "^2.0.189",
36
+ "@ltht-react/utils": "^2.0.189",
37
37
  "@tanstack/react-table": "^8.10.7",
38
38
  "react": "^18.2.0",
39
39
  "react-uuid": "^2.0.0"
40
40
  },
41
- "gitHead": "db9a3b619b84b838cf14219aeec376975beea4fd"
41
+ "gitHead": "ef1aa76019b62345209fce83df6f93c51024ee55"
42
42
  }