orc-shared 5.10.0-dev.2 → 5.10.0-dev.21
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/actions/metadata.js +30 -11
- package/dist/actions/requestsApi.js +10 -1
- package/dist/components/AppFrame/About.js +136 -100
- package/dist/components/AppFrame/Anchor.js +45 -21
- package/dist/components/AppFrame/AppFrame.js +53 -31
- package/dist/components/AppFrame/Help.js +35 -15
- package/dist/components/AppFrame/MenuItem.js +148 -114
- package/dist/components/AppFrame/Preferences.js +136 -97
- package/dist/components/AppFrame/Sidebar.js +51 -28
- package/dist/components/AppFrame/Topbar.js +61 -36
- package/dist/components/ColumnWrapper.js +28 -5
- package/dist/components/Culture.js +33 -14
- package/dist/components/DropMenu/Menu.js +79 -45
- package/dist/components/DropMenu/index.js +34 -29
- package/dist/components/Form/Combination.js +45 -16
- package/dist/components/Form/Field.js +57 -38
- package/dist/components/Form/FieldElements.js +0 -11
- package/dist/components/Form/Fieldset.js +47 -19
- package/dist/components/Form/Form.js +22 -9
- package/dist/components/Form/FormElement.js +40 -7
- package/dist/components/Form/Inputs/Button.js +63 -18
- package/dist/components/Form/Inputs/ReadOnly.js +50 -27
- package/dist/components/{AppFrame/ApplicationSelector/Header.js → Form/Inputs/Selector.js} +30 -31
- package/dist/components/Form/Inputs/Text.js +20 -37
- package/dist/components/Form/Inputs/Toggles.js +39 -40
- package/dist/components/Form/Inputs/index.js +2 -13
- package/dist/components/MaterialUI/DataDisplay/PredefinedElements/Placeholder.js +31 -11
- package/dist/components/MaterialUI/DataDisplay/PredefinedElements/SectionToolbar.js +89 -0
- package/dist/components/MaterialUI/DataDisplay/Table.js +109 -18
- package/dist/components/MaterialUI/DataDisplay/TableProps.js +5 -1
- package/dist/components/MaterialUI/DataDisplay/TableWithInMemoryPaging.js +198 -0
- package/dist/components/MaterialUI/DataDisplay/TooltippedElements/MultipleLinesText.js +4 -1
- package/dist/components/MaterialUI/Inputs/DatePicker.js +14 -14
- package/dist/components/MaterialUI/Inputs/PredefinedElements/SearchControl.js +1 -0
- package/dist/components/MaterialUI/Inputs/Select.js +2 -0
- package/dist/components/MaterialUI/Inputs/SelectProps.js +2 -0
- package/dist/components/MaterialUI/Inputs/Switch.js +17 -1
- package/dist/components/MaterialUI/Inputs/SwitchProps.js +2 -0
- package/dist/components/MaterialUI/Inputs/TimePicker.js +14 -21
- package/dist/components/MaterialUI/hocs/withDeferredTooltip.js +3 -1
- package/dist/components/MaterialUI/muiThemes.js +2 -1
- package/dist/components/Provision.js +1 -1
- package/dist/constants.js +2 -1
- package/dist/content/iconsSheet.svg +740 -116
- package/dist/hocs/withScrollBox.js +27 -12
- package/dist/hooks/useDaysAndMonthsLocalization.js +77 -0
- package/dist/hooks/useInMemoryPaging.js +135 -0
- package/dist/hooks/useMultipleFieldEditState.js +12 -3
- package/dist/reducers/metadata.js +6 -0
- package/dist/schemas/metadata.js +9 -1
- package/dist/selectors/locale.js +1 -0
- package/dist/selectors/metadata.js +14 -11
- package/dist/sharedMessages.js +184 -0
- package/dist/utils/ListHelper.js +271 -0
- package/dist/utils/comparisonHelper.js +185 -0
- package/dist/utils/propertyBagHelper.js +3 -1
- package/dist/utils/timezoneHelper.js +18 -31
- package/package.json +4 -3
- package/src/actions/metadata.js +11 -0
- package/src/actions/metadata.test.js +27 -0
- package/src/actions/requestsApi.js +6 -0
- package/src/components/AppFrame/About.js +97 -117
- package/src/components/AppFrame/About.test.js +128 -90
- package/src/components/AppFrame/Anchor.js +34 -36
- package/src/components/AppFrame/Anchor.test.js +5 -68
- package/src/components/AppFrame/AppFrame.js +31 -40
- package/src/components/AppFrame/AppFrame.test.js +424 -445
- package/src/components/AppFrame/Help.js +23 -20
- package/src/components/AppFrame/Help.test.js +3 -3
- package/src/components/AppFrame/MenuItem.js +106 -126
- package/src/components/AppFrame/MenuItem.test.js +78 -169
- package/src/components/AppFrame/Preferences.js +110 -98
- package/src/components/AppFrame/Preferences.test.js +115 -219
- package/src/components/AppFrame/Sidebar.js +39 -41
- package/src/components/AppFrame/Sidebar.test.js +88 -168
- package/src/components/AppFrame/Topbar.js +59 -52
- package/src/components/AppFrame/Topbar.test.js +31 -39
- package/src/components/ColumnWrapper.js +18 -9
- package/src/components/Culture.js +20 -10
- package/src/components/Culture.test.js +27 -16
- package/src/components/DropMenu/DropMenu.test.js +185 -224
- package/src/components/DropMenu/Menu.js +73 -80
- package/src/components/DropMenu/Menu.test.js +35 -86
- package/src/components/DropMenu/index.js +19 -15
- package/src/components/Form/Combination.js +35 -28
- package/src/components/Form/Combination.test.js +6 -19
- package/src/components/Form/Field.js +53 -66
- package/src/components/Form/Field.test.js +29 -51
- package/src/components/Form/FieldElements.js +0 -14
- package/src/components/Form/FieldElements.test.js +104 -111
- package/src/components/Form/Fieldset.js +42 -37
- package/src/components/Form/Fieldset.test.js +14 -7
- package/src/components/Form/Form.js +11 -7
- package/src/components/Form/Form.test.js +75 -56
- package/src/components/Form/FormElement.js +24 -16
- package/src/components/Form/InputField.test.js +24 -30
- package/src/components/Form/Inputs/Button.js +58 -14
- package/src/components/Form/Inputs/Button.test.js +32 -7
- package/src/components/Form/Inputs/Inputs.test.js +0 -7
- package/src/components/Form/Inputs/ReadOnly.js +34 -28
- package/src/components/Form/Inputs/ReadOnly.test.js +45 -7
- package/src/components/Form/Inputs/Selector.js +22 -0
- package/src/components/Form/Inputs/Selector.test.js +105 -0
- package/src/components/Form/Inputs/Text.js +15 -44
- package/src/components/Form/Inputs/Text.test.js +20 -29
- package/src/components/Form/Inputs/Toggles.js +27 -26
- package/src/components/Form/Inputs/Toggles.test.js +22 -28
- package/src/components/Form/Inputs/index.js +4 -15
- package/src/components/MaterialUI/DataDisplay/PredefinedElements/InformationItem.test.js +1 -4
- package/src/components/MaterialUI/DataDisplay/PredefinedElements/Placeholder.js +32 -6
- package/src/components/MaterialUI/DataDisplay/PredefinedElements/Placeholder.test.js +3 -1
- package/src/components/MaterialUI/DataDisplay/PredefinedElements/SectionToolbar.js +39 -0
- package/src/components/MaterialUI/DataDisplay/Table.js +190 -114
- package/src/components/MaterialUI/DataDisplay/Table.test.js +246 -1
- package/src/components/MaterialUI/DataDisplay/TableProps.js +4 -0
- package/src/components/MaterialUI/DataDisplay/TableProps.test.js +2 -0
- package/src/components/MaterialUI/DataDisplay/TableWithInMemoryPaging.js +145 -0
- package/src/components/MaterialUI/DataDisplay/TableWithInMemoryPaging.test.js +457 -0
- package/src/components/MaterialUI/DataDisplay/TooltippedElements/MultipleLinesText.js +5 -1
- package/src/components/MaterialUI/DataDisplay/TooltippedElements/MultipleLinesText.test.js +7 -1
- package/src/components/MaterialUI/Inputs/DatePicker.js +19 -20
- package/src/components/MaterialUI/Inputs/DatePicker.test.js +11 -6
- package/src/components/MaterialUI/Inputs/PredefinedElements/SearchControl.js +1 -0
- package/src/components/MaterialUI/Inputs/Select.js +2 -0
- package/src/components/MaterialUI/Inputs/SelectProps.js +2 -0
- package/src/components/MaterialUI/Inputs/SelectProps.test.js +2 -0
- package/src/components/MaterialUI/Inputs/Switch.js +22 -1
- package/src/components/MaterialUI/Inputs/Switch.test.js +23 -0
- package/src/components/MaterialUI/Inputs/SwitchProps.js +2 -0
- package/src/components/MaterialUI/Inputs/SwitchProps.test.js +2 -0
- package/src/components/MaterialUI/Inputs/TimePicker.js +10 -19
- package/src/components/MaterialUI/Inputs/TimePicker.test.js +278 -117
- package/src/components/MaterialUI/hocs/withDeferredTooltip.js +4 -1
- package/src/components/MaterialUI/hocs/withDeferredTooltip.test.js +27 -0
- package/src/components/MaterialUI/muiThemes.js +1 -0
- package/src/components/Navigation/Bar.test.js +92 -87
- package/src/components/Provision.js +1 -1
- package/src/components/TaskDetailsModal.test.js +1 -3
- package/src/constants.js +1 -0
- package/src/content/iconsSheet.svg +740 -116
- package/src/hocs/withScrollBox.js +32 -19
- package/src/hocs/withScrollBox.test.js +15 -3
- package/src/hooks/useDaysAndMonthsLocalization.js +79 -0
- package/src/hooks/useDaysAndMonthsLocalization.test.js +107 -0
- package/src/hooks/useInMemoryPaging.js +78 -0
- package/src/hooks/useInMemoryPaging.test.js +515 -0
- package/src/hooks/useMultipleFieldEditState.js +11 -4
- package/src/hooks/useMultipleFieldEditState.test.js +49 -1
- package/src/reducers/metadata.js +6 -1
- package/src/reducers/metadata.test.js +31 -0
- package/src/requests +1 -0
- package/src/schemas/metadata.js +3 -0
- package/src/selectors/locale.js +1 -1
- package/src/selectors/metadata.js +12 -9
- package/src/selectors/metadata.test.js +92 -11
- package/src/sharedMessages.js +184 -0
- package/src/timezones.json +883 -0
- package/src/translations/en-US.json +46 -0
- package/src/translations/fr-CA.json +46 -0
- package/src/utils/ListHelper.js +203 -0
- package/src/utils/ListHelper.test.js +710 -0
- package/src/utils/comparisonHelper.js +135 -0
- package/src/utils/comparisonHelper.test.js +334 -0
- package/src/utils/propertyBagHelper.js +2 -0
- package/src/utils/propertyBagHelper.test.js +6 -0
- package/src/utils/timezoneHelper.js +10 -135
- package/src/utils/timezoneHelper.test.js +7 -7
- package/dist/components/Form/FieldList.js +0 -270
- package/dist/components/Form/Inputs/FieldButtons.js +0 -66
- package/dist/components/Form/Inputs/Number.js +0 -117
- package/dist/components/Form/Inputs/SmallButton.js +0 -91
- package/dist/components/Form/Inputs/Time.js +0 -86
- package/dist/components/Form/Inputs/Translation.js +0 -169
- package/src/components/AppFrame/ApplicationSelector/Header.js +0 -34
- package/src/components/AppFrame/ApplicationSelector/Header.test.js +0 -23
- package/src/components/Form/FieldList.js +0 -210
- package/src/components/Form/FieldList.test.js +0 -558
- package/src/components/Form/Inputs/FieldButtons.js +0 -90
- package/src/components/Form/Inputs/Number.js +0 -60
- package/src/components/Form/Inputs/Number.test.js +0 -435
- package/src/components/Form/Inputs/SmallButton.js +0 -37
- package/src/components/Form/Inputs/SmallButton.test.js +0 -65
- package/src/components/Form/Inputs/Time.js +0 -32
- package/src/components/Form/Inputs/Time.test.js +0 -41
- package/src/components/Form/Inputs/Translation.js +0 -93
- package/src/components/Form/Inputs/Translation.test.js +0 -204
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.default = void 0;
|
|
5
|
+
var _react = _interopRequireDefault(require("react"));
|
|
6
|
+
var _styles = require("@material-ui/core/styles");
|
|
7
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
8
|
+
(function () {
|
|
9
|
+
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
10
|
+
enterModule && enterModule(module);
|
|
11
|
+
})();
|
|
12
|
+
(function () {
|
|
13
|
+
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
14
|
+
enterModule && enterModule(module);
|
|
15
|
+
})();
|
|
16
|
+
var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
17
|
+
return a;
|
|
18
|
+
};
|
|
19
|
+
var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
20
|
+
return a;
|
|
21
|
+
};
|
|
22
|
+
var useStyles = (0, _styles.makeStyles)(function (theme) {
|
|
23
|
+
return {
|
|
24
|
+
container: {
|
|
25
|
+
display: "flex",
|
|
26
|
+
padding: "".concat(theme.spacing(1), " ").concat(theme.spacing(2)),
|
|
27
|
+
minHeight: theme.spacing(4),
|
|
28
|
+
alignItems: "center",
|
|
29
|
+
borderBottom: "".concat(theme.spacing(0.1), " solid ").concat(theme.palette.grey.borders)
|
|
30
|
+
},
|
|
31
|
+
rightContent: {
|
|
32
|
+
justifyContent: "flex-end",
|
|
33
|
+
alignItems: "center",
|
|
34
|
+
display: "flex",
|
|
35
|
+
flex: 1
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
});
|
|
39
|
+
var SectionToolbar = function SectionToolbar(_ref) {
|
|
40
|
+
var children = _ref.children,
|
|
41
|
+
rightContent = _ref.rightContent;
|
|
42
|
+
var classes = useStyles();
|
|
43
|
+
var container = /*#__PURE__*/_react.default.createElement("div", {
|
|
44
|
+
className: classes.container
|
|
45
|
+
}, children, [rightContent && /*#__PURE__*/_react.default.createElement("div", {
|
|
46
|
+
key: "rightContent",
|
|
47
|
+
className: classes.rightContent
|
|
48
|
+
}, rightContent)]);
|
|
49
|
+
return container;
|
|
50
|
+
};
|
|
51
|
+
__signature__(SectionToolbar, "useStyles{classes}", function () {
|
|
52
|
+
return [useStyles];
|
|
53
|
+
});
|
|
54
|
+
__signature__(SectionToolbar, "useStyles{classes}", function () {
|
|
55
|
+
return [useStyles];
|
|
56
|
+
});
|
|
57
|
+
var _default = SectionToolbar;
|
|
58
|
+
var _default2 = _default;
|
|
59
|
+
var _default3 = exports.default = _default2;
|
|
60
|
+
;
|
|
61
|
+
(function () {
|
|
62
|
+
var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
|
|
63
|
+
if (!reactHotLoader) {
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
reactHotLoader.register(useStyles, "useStyles", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/PredefinedElements/SectionToolbar.js");
|
|
67
|
+
reactHotLoader.register(SectionToolbar, "SectionToolbar", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/PredefinedElements/SectionToolbar.js");
|
|
68
|
+
reactHotLoader.register(_default, "default", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/PredefinedElements/SectionToolbar.js");
|
|
69
|
+
})();
|
|
70
|
+
;
|
|
71
|
+
(function () {
|
|
72
|
+
var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
|
|
73
|
+
leaveModule && leaveModule(module);
|
|
74
|
+
})();
|
|
75
|
+
;
|
|
76
|
+
(function () {
|
|
77
|
+
var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
|
|
78
|
+
if (!reactHotLoader) {
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
reactHotLoader.register(useStyles, "useStyles", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/PredefinedElements/SectionToolbar.js");
|
|
82
|
+
reactHotLoader.register(SectionToolbar, "SectionToolbar", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/PredefinedElements/SectionToolbar.js");
|
|
83
|
+
reactHotLoader.register(_default2, "default", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/PredefinedElements/SectionToolbar.js");
|
|
84
|
+
})();
|
|
85
|
+
;
|
|
86
|
+
(function () {
|
|
87
|
+
var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
|
|
88
|
+
leaveModule && leaveModule(module);
|
|
89
|
+
})();
|
|
@@ -14,6 +14,7 @@ var _TableProps = _interopRequireWildcard(require("./TableProps"));
|
|
|
14
14
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
15
15
|
var _reactResizeDetector = _interopRequireDefault(require("react-resize-detector"));
|
|
16
16
|
var _lodash = require("lodash");
|
|
17
|
+
var _useViewState3 = _interopRequireDefault(require("../../../hooks/useViewState"));
|
|
17
18
|
var _excluded = ["deepPropsComparation", "dataRows", "isEditingMode"],
|
|
18
19
|
_excluded2 = ["deepPropsComparation", "isEditingMode"];
|
|
19
20
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -318,16 +319,25 @@ var buildTableRows = function buildTableRows(rows, classes, customClasses, selec
|
|
|
318
319
|
return mappedRows;
|
|
319
320
|
};
|
|
320
321
|
var FullTable = _react.default.forwardRef(function (props, ref) {
|
|
322
|
+
return props.saveScrollbarPosition ? /*#__PURE__*/_react.default.createElement(FullTableWithSavedScrollbar, _extends({}, props, {
|
|
323
|
+
ref: ref
|
|
324
|
+
})) : /*#__PURE__*/_react.default.createElement(DefaultFullTable, _extends({}, props, {
|
|
325
|
+
ref: ref
|
|
326
|
+
}));
|
|
327
|
+
});
|
|
328
|
+
var DefaultFullTable = _react.default.forwardRef(function (props, ref) {
|
|
321
329
|
var scrollEvent = function scrollEvent(evt) {
|
|
322
330
|
if (evt.target.scrollHeight - (evt.target.scrollTop + evt.target.offsetHeight) < 100 && props.dataRows.length === props.latestPage * props.pageLength) {
|
|
323
331
|
props.scrollLoader(props.latestPage + 1);
|
|
324
332
|
}
|
|
333
|
+
props.saveScrollBarPosition == null || props.saveScrollBarPosition(evt);
|
|
325
334
|
};
|
|
326
335
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
327
336
|
key: "actualTable",
|
|
328
337
|
className: (0, _classnames.default)(props.classes.tableContainer, props.customClasses.tableContainer),
|
|
329
338
|
ref: ref,
|
|
330
|
-
onScroll: scrollEvent
|
|
339
|
+
onScroll: scrollEvent,
|
|
340
|
+
"data-qa": "scrollable-table-div"
|
|
331
341
|
}, /*#__PURE__*/_react.default.createElement(_reactResizeDetector.default, {
|
|
332
342
|
onResize: props.onResize
|
|
333
343
|
}), /*#__PURE__*/_react.default.createElement(_Table.default, {
|
|
@@ -346,7 +356,73 @@ var FullTable = _react.default.forwardRef(function (props, ref) {
|
|
|
346
356
|
className: props.classes.placeholder
|
|
347
357
|
}, props.placeholder));
|
|
348
358
|
});
|
|
349
|
-
var
|
|
359
|
+
var FullTableWithSavedScrollbar = _react.default.forwardRef(__signature__(__signature__(function (props, ref) {
|
|
360
|
+
if (props.saveScrollbarPosition && !props.tableName) {
|
|
361
|
+
throw new Error("prop 'tableName' is required if 'saveScrollbarPosition' is set to true.");
|
|
362
|
+
}
|
|
363
|
+
var _useViewState = (0, _useViewState3.default)(props.tableName + "ScrollbarPosition"),
|
|
364
|
+
_useViewState2 = _slicedToArray(_useViewState, 2),
|
|
365
|
+
scrollbarViewState = _useViewState2[0],
|
|
366
|
+
updateScrollbarViewState = _useViewState2[1];
|
|
367
|
+
var _useState = (0, _react.useState)(scrollbarViewState.scrollBarPosition),
|
|
368
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
369
|
+
scrollbar = _useState2[0],
|
|
370
|
+
setScrollbarPosition = _useState2[1];
|
|
371
|
+
(0, _react.useEffect)(function () {
|
|
372
|
+
var handler = setTimeout(function () {
|
|
373
|
+
updateScrollbarViewState("scrollBarPosition", scrollbar);
|
|
374
|
+
}, 500);
|
|
375
|
+
return function () {
|
|
376
|
+
clearTimeout(handler);
|
|
377
|
+
};
|
|
378
|
+
},
|
|
379
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
380
|
+
[scrollbar]);
|
|
381
|
+
var saveScrollBarPosition = function saveScrollBarPosition(evt) {
|
|
382
|
+
setScrollbarPosition(evt.target.scrollTop);
|
|
383
|
+
};
|
|
384
|
+
(0, _react.useEffect)(function () {
|
|
385
|
+
if (scrollbarViewState.scrollBarPosition > 0) {
|
|
386
|
+
// The Table component usually display the provided list ASAP however it can happen that the Table is not fully rendered with its items when we attempt to change the scrollTop value.
|
|
387
|
+
// The timer should ensure that the list is rendered before attempting to change the scrollTop if the first attempt was not able to set the scroll position
|
|
388
|
+
// This edge case was found using these steps:
|
|
389
|
+
// * Create an organization with 50+ customers
|
|
390
|
+
// * Go to the customer section of the organization and scroll down a bit
|
|
391
|
+
// * Wait 1 second for the scroll position to be stored
|
|
392
|
+
// * Go to the organization list (click on the tab)
|
|
393
|
+
// * Go back to the organization (its tab should still be visible)
|
|
394
|
+
// * We expect the customer list to remember its scroll position but it wasn't the case
|
|
395
|
+
//
|
|
396
|
+
// In addition to the timer, the tableName was added as a dependency to force the effect to execute again when it changes.
|
|
397
|
+
// The tableName value in the organization's customers page is composed with 2 parts: "OrganizationCustomers_" + organizationId. This allows 2 organizations to use different scroll position for their respective customers pages.
|
|
398
|
+
// When the page first load, it is possible for organizationId to not yet be defined (strange but it's routing related) and because of that this useEffect was executed but with an unknown scrollBarPosition.
|
|
399
|
+
// The organizationId will be set on the next render and this useEffect needs be executed again to have the list scrolled to the correct position.
|
|
400
|
+
|
|
401
|
+
var previousScrollTop = ref.current.scrollTop;
|
|
402
|
+
ref.current.scrollTop = scrollbarViewState.scrollBarPosition;
|
|
403
|
+
|
|
404
|
+
// Note AD20250714: I was not able to create a test for the code below because it needs to run in a real browser otherwise the behavior with scrollTop does not match reality
|
|
405
|
+
/* istanbul ignore if */
|
|
406
|
+
if (ref.current.scrollTop === previousScrollTop) {
|
|
407
|
+
setTimeout(function () {
|
|
408
|
+
// using a timer to give a chance to the UI to populate the list
|
|
409
|
+
ref.current.scrollTop = scrollbarViewState.scrollBarPosition;
|
|
410
|
+
}, 250);
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
414
|
+
}, [props.tableName]); // forcing this effect to run again when the tableName changes
|
|
415
|
+
|
|
416
|
+
return /*#__PURE__*/_react.default.createElement(DefaultFullTable, _extends({}, props, {
|
|
417
|
+
ref: ref,
|
|
418
|
+
saveScrollBarPosition: saveScrollBarPosition
|
|
419
|
+
}));
|
|
420
|
+
}, "useViewState{[scrollbarViewState, updateScrollbarViewState]}\nuseState{[scrollbar, setScrollbarPosition](scrollbarViewState.scrollBarPosition)}\nuseEffect{}\nuseEffect{}", function () {
|
|
421
|
+
return [_useViewState3.default];
|
|
422
|
+
}), "useViewState{[scrollbarViewState, updateScrollbarViewState]}\nuseState{[scrollbar, setScrollbarPosition](scrollbarViewState.scrollBarPosition)}\nuseEffect{}\nuseEffect{}", function () {
|
|
423
|
+
return [_useViewState3.default];
|
|
424
|
+
}));
|
|
425
|
+
var Table = _react.default.forwardRef(__signature__(__signature__(function (_ref4, ref) {
|
|
350
426
|
var tableInfo = _ref4.tableInfo,
|
|
351
427
|
headers = _ref4.headers,
|
|
352
428
|
rows = _ref4.rows,
|
|
@@ -369,6 +445,8 @@ var Table = function Table(_ref4) {
|
|
|
369
445
|
var selectedRows = (tableProps == null ? void 0 : tableProps.get(_TableProps.default.propNames.selectedRows)) || null;
|
|
370
446
|
var selectedRowsChanged = (tableProps == null ? void 0 : tableProps.get(_TableProps.default.propNames.selectedRowsChanged)) || null;
|
|
371
447
|
var constrained = (tableProps == null ? void 0 : tableProps.get(_TableProps.default.propNames.constrained)) || false;
|
|
448
|
+
var tableName = (tableProps == null ? void 0 : tableProps.get(_TableProps.default.propNames.tableName)) || null;
|
|
449
|
+
var saveScrollbarPosition = (tableProps == null ? void 0 : tableProps.get(_TableProps.default.propNames.saveScrollbarPosition)) || false;
|
|
372
450
|
customClasses["tableHeader"] = (tableProps == null ? void 0 : tableProps.getStyle(_TableProps.default.ruleNames.tableHeader)) || null;
|
|
373
451
|
customClasses["tableRow"] = (tableProps == null ? void 0 : tableProps.getStyle(_TableProps.default.ruleNames.tableRow)) || null;
|
|
374
452
|
customClasses["tableCell"] = (tableProps == null ? void 0 : tableProps.getStyle(_TableProps.default.ruleNames.tableCell)) || null;
|
|
@@ -378,17 +456,26 @@ var Table = function Table(_ref4) {
|
|
|
378
456
|
customClasses["table"] = (tableProps == null ? void 0 : tableProps.getStyle(_TableProps.default.ruleNames.table)) || null;
|
|
379
457
|
if (selectedRows && !selectedRowsChanged || !selectedRows && selectedRowsChanged) throw new Error("Both 'selectedRows' and 'selectedRowsChanged' need to be defined if one of them is.");
|
|
380
458
|
var refScrolled = (0, _react.useRef)();
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
459
|
+
(0, _react.useImperativeHandle)(ref, function () {
|
|
460
|
+
return {
|
|
461
|
+
scrollToTop: function scrollToTop() {
|
|
462
|
+
if (refScrolled.current.scrollTop > 0) {
|
|
463
|
+
refScrolled.current.scrollTop = 0;
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
};
|
|
467
|
+
});
|
|
468
|
+
var _useState3 = (0, _react.useState)(0),
|
|
469
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
470
|
+
scrolled = _useState4[0],
|
|
471
|
+
setScrolled = _useState4[1];
|
|
472
|
+
var _useState5 = (0, _react.useState)({
|
|
386
473
|
width: 0,
|
|
387
474
|
height: 0
|
|
388
475
|
}),
|
|
389
|
-
|
|
390
|
-
tableSize =
|
|
391
|
-
setTableSize =
|
|
476
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
477
|
+
tableSize = _useState6[0],
|
|
478
|
+
setTableSize = _useState6[1];
|
|
392
479
|
var _useTableSelection = (0, _useTableSelection3.useTableSelection)(rows, selectedRows, selectedRowsChanged),
|
|
393
480
|
_useTableSelection2 = _slicedToArray(_useTableSelection, 3),
|
|
394
481
|
selectedNumber = _useTableSelection2[0],
|
|
@@ -447,15 +534,15 @@ var Table = function Table(_ref4) {
|
|
|
447
534
|
placeholder: placeholder,
|
|
448
535
|
deepPropsComparation: deepPropsComparation,
|
|
449
536
|
isEditingMode: isEditingMode,
|
|
450
|
-
context: context
|
|
537
|
+
context: context,
|
|
538
|
+
tableName: tableName,
|
|
539
|
+
saveScrollbarPosition: saveScrollbarPosition
|
|
451
540
|
}));
|
|
452
|
-
}
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
return [_useTableSelection3.useTableSelection, useStyles];
|
|
458
|
-
});
|
|
541
|
+
}, "useRef{refScrolled}\nuseImperativeHandle{}\nuseState{[scrolled, setScrolled](0)}\nuseState{[tableSize, setTableSize]({ width: 0, height: 0 })}\nuseTableSelection{[selectedNumber, tableSelectionStatus, selectionMethods]}\nuseStyles{classes}\nuseEffect{}\nuseCallback{onResize}", function () {
|
|
542
|
+
return [_react.useImperativeHandle, _useTableSelection3.useTableSelection, useStyles];
|
|
543
|
+
}), "useRef{refScrolled}\nuseImperativeHandle{}\nuseState{[scrolled, setScrolled](0)}\nuseState{[tableSize, setTableSize]({ width: 0, height: 0 })}\nuseTableSelection{[selectedNumber, tableSelectionStatus, selectionMethods]}\nuseStyles{classes}\nuseEffect{}\nuseCallback{onResize}", function () {
|
|
544
|
+
return [_react.useImperativeHandle, _useTableSelection3.useTableSelection, useStyles];
|
|
545
|
+
}));
|
|
459
546
|
var _default = _react.default.memo(Table, function (prev, next) {
|
|
460
547
|
return readOnlyMode(prev.tableProps, next.tableProps) && rowAreIdentical(prev.rows, next.rows) && headersAreIdentical(prev.headers, next.headers);
|
|
461
548
|
});
|
|
@@ -487,6 +574,8 @@ var _default3 = exports.default = _default2;
|
|
|
487
574
|
reactHotLoader.register(buildTableHeaders, "buildTableHeaders", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/Table.js");
|
|
488
575
|
reactHotLoader.register(buildTableRows, "buildTableRows", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/Table.js");
|
|
489
576
|
reactHotLoader.register(FullTable, "FullTable", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/Table.js");
|
|
577
|
+
reactHotLoader.register(DefaultFullTable, "DefaultFullTable", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/Table.js");
|
|
578
|
+
reactHotLoader.register(FullTableWithSavedScrollbar, "FullTableWithSavedScrollbar", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/Table.js");
|
|
490
579
|
reactHotLoader.register(Table, "Table", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/Table.js");
|
|
491
580
|
reactHotLoader.register(_default, "default", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/Table.js");
|
|
492
581
|
})();
|
|
@@ -521,6 +610,8 @@ var _default3 = exports.default = _default2;
|
|
|
521
610
|
reactHotLoader.register(buildTableHeaders, "buildTableHeaders", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/Table.js");
|
|
522
611
|
reactHotLoader.register(buildTableRows, "buildTableRows", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/Table.js");
|
|
523
612
|
reactHotLoader.register(FullTable, "FullTable", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/Table.js");
|
|
613
|
+
reactHotLoader.register(DefaultFullTable, "DefaultFullTable", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/Table.js");
|
|
614
|
+
reactHotLoader.register(FullTableWithSavedScrollbar, "FullTableWithSavedScrollbar", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/Table.js");
|
|
524
615
|
reactHotLoader.register(Table, "Table", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/Table.js");
|
|
525
616
|
reactHotLoader.register(_default2, "default", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/Table.js");
|
|
526
617
|
})();
|
|
@@ -37,6 +37,8 @@ var TableProps = /*#__PURE__*/function (_ComponentProps) {
|
|
|
37
37
|
_this.componentProps.set(_this.constructor.propNames.selectedRows, null);
|
|
38
38
|
_this.componentProps.set(_this.constructor.propNames.selectedRowsChanged, null);
|
|
39
39
|
_this.componentProps.set(_this.constructor.propNames.constrained, false);
|
|
40
|
+
_this.componentProps.set(_this.constructor.propNames.tableName, null);
|
|
41
|
+
_this.componentProps.set(_this.constructor.propNames.saveScrollbarPosition, null);
|
|
40
42
|
_this.componentClasses.set(_this.constructor.ruleNames.tableHeader, null);
|
|
41
43
|
_this.componentClasses.set(_this.constructor.ruleNames.tableRow, null);
|
|
42
44
|
_this.componentClasses.set(_this.constructor.ruleNames.tableCell, null);
|
|
@@ -66,7 +68,9 @@ _defineProperty(TableProps, "propNames", {
|
|
|
66
68
|
isEditingMode: "isEditingMode",
|
|
67
69
|
selectedRows: "selectedRows",
|
|
68
70
|
selectedRowsChanged: "selectedRowsChanged",
|
|
69
|
-
constrained: "constrained"
|
|
71
|
+
constrained: "constrained",
|
|
72
|
+
tableName: "tableName",
|
|
73
|
+
saveScrollbarPosition: "saveScrollbarPosition"
|
|
70
74
|
});
|
|
71
75
|
_defineProperty(TableProps, "ruleNames", {
|
|
72
76
|
tableHeader: "tableHeader",
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.default = void 0;
|
|
5
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
6
|
+
var _TableProps = _interopRequireDefault(require("./TableProps"));
|
|
7
|
+
var _tableHelpers = _interopRequireDefault(require("./tableHelpers"));
|
|
8
|
+
var _useInMemoryPaging2 = _interopRequireDefault(require("../../../hooks/useInMemoryPaging"));
|
|
9
|
+
var _Placeholder = _interopRequireDefault(require("./PredefinedElements/Placeholder"));
|
|
10
|
+
var _comparisonHelper = require("../../../utils/comparisonHelper");
|
|
11
|
+
var _reactIntl = require("react-intl");
|
|
12
|
+
var _sharedMessages = _interopRequireDefault(require("../../../sharedMessages"));
|
|
13
|
+
var _SearchControl = _interopRequireDefault(require("../Inputs/PredefinedElements/SearchControl"));
|
|
14
|
+
var _Table = _interopRequireDefault(require("./Table"));
|
|
15
|
+
var _SectionToolbar = _interopRequireDefault(require("./PredefinedElements/SectionToolbar"));
|
|
16
|
+
var _TableInfoBar = _interopRequireDefault(require("./PredefinedElements/TableInfoBar"));
|
|
17
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
19
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
20
|
+
(function () {
|
|
21
|
+
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
22
|
+
enterModule && enterModule(module);
|
|
23
|
+
})();
|
|
24
|
+
(function () {
|
|
25
|
+
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
26
|
+
enterModule && enterModule(module);
|
|
27
|
+
})();
|
|
28
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
29
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
30
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
31
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
32
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
33
|
+
var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
34
|
+
return a;
|
|
35
|
+
};
|
|
36
|
+
var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
37
|
+
return a;
|
|
38
|
+
};
|
|
39
|
+
var listFilter = function listFilter(list, searchTerm, searchProperties) {
|
|
40
|
+
if (!searchTerm) {
|
|
41
|
+
return list;
|
|
42
|
+
}
|
|
43
|
+
return list.filter(function (item) {
|
|
44
|
+
return (0, _comparisonHelper.doesObjectContainsTextCaseInsensitive)(item, searchTerm, searchProperties);
|
|
45
|
+
});
|
|
46
|
+
};
|
|
47
|
+
function getTableInfo(totalCountLabelId, noRowsTotalCountLabelId, formatMessage, totalCount) {
|
|
48
|
+
if (totalCountLabelId && noRowsTotalCountLabelId) {
|
|
49
|
+
if (totalCount) {
|
|
50
|
+
return /*#__PURE__*/_react.default.createElement(_TableInfoBar.default, {
|
|
51
|
+
tableLabel: formatMessage(totalCountLabelId, {
|
|
52
|
+
quantity: totalCount
|
|
53
|
+
})
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
return /*#__PURE__*/_react.default.createElement(_TableInfoBar.default, {
|
|
57
|
+
tableLabel: formatMessage(noRowsTotalCountLabelId)
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
return null;
|
|
61
|
+
}
|
|
62
|
+
var TableWithInMemoryPaging = function TableWithInMemoryPaging(_ref) {
|
|
63
|
+
var sortedRows = _ref.sortedRows,
|
|
64
|
+
tableName = _ref.tableName,
|
|
65
|
+
_ref$searchProperties = _ref.searchProperties,
|
|
66
|
+
searchProperties = _ref$searchProperties === void 0 ? [] : _ref$searchProperties,
|
|
67
|
+
columnDefs = _ref.columnDefs,
|
|
68
|
+
toolbarRightContent = _ref.toolbarRightContent,
|
|
69
|
+
_ref$pageSize = _ref.pageSize,
|
|
70
|
+
pageSize = _ref$pageSize === void 0 ? 20 : _ref$pageSize,
|
|
71
|
+
_ref$onItemClick = _ref.onItemClick,
|
|
72
|
+
onItemClick = _ref$onItemClick === void 0 ? null : _ref$onItemClick,
|
|
73
|
+
_ref$isReadMode = _ref.isReadMode,
|
|
74
|
+
isReadMode = _ref$isReadMode === void 0 ? true : _ref$isReadMode,
|
|
75
|
+
_ref$totalCountLabelI = _ref.totalCountLabelId,
|
|
76
|
+
totalCountLabelId = _ref$totalCountLabelI === void 0 ? null : _ref$totalCountLabelI,
|
|
77
|
+
_ref$noRowsTotalCount = _ref.noRowsTotalCountLabelId,
|
|
78
|
+
noRowsTotalCountLabelId = _ref$noRowsTotalCount === void 0 ? null : _ref$noRowsTotalCount,
|
|
79
|
+
_ref$placeholderIcon = _ref.placeholderIcon,
|
|
80
|
+
placeholderIcon = _ref$placeholderIcon === void 0 ? null : _ref$placeholderIcon,
|
|
81
|
+
_ref$placeholderTitle = _ref.placeholderTitle,
|
|
82
|
+
placeholderTitle = _ref$placeholderTitle === void 0 ? null : _ref$placeholderTitle,
|
|
83
|
+
_ref$placeholderSubti = _ref.placeholderSubtitle,
|
|
84
|
+
placeholderSubtitle = _ref$placeholderSubti === void 0 ? null : _ref$placeholderSubti,
|
|
85
|
+
_ref$rowKeyField = _ref.rowKeyField,
|
|
86
|
+
rowKeyField = _ref$rowKeyField === void 0 ? "id" : _ref$rowKeyField;
|
|
87
|
+
var _useIntl = (0, _reactIntl.useIntl)(),
|
|
88
|
+
formatMessage = _useIntl.formatMessage;
|
|
89
|
+
var tableRef = (0, _react.useRef)(null);
|
|
90
|
+
var initialSearchProperties = (0, _react.useRef)(searchProperties);
|
|
91
|
+
var searchPlaceholder = formatMessage(_sharedMessages.default.search);
|
|
92
|
+
var sortAndFilter = (0, _react.useCallback)(function (_ref2) {
|
|
93
|
+
var list = _ref2.list,
|
|
94
|
+
filters = _ref2.filters;
|
|
95
|
+
var searchTerm = filters.searchTerm;
|
|
96
|
+
return listFilter(list, searchTerm, initialSearchProperties.current);
|
|
97
|
+
}, [initialSearchProperties]);
|
|
98
|
+
var _useInMemoryPaging = (0, _useInMemoryPaging2.default)({
|
|
99
|
+
viewStateName: tableName,
|
|
100
|
+
tableRef: tableRef,
|
|
101
|
+
records: sortedRows,
|
|
102
|
+
pageSize: pageSize,
|
|
103
|
+
sortAndFilterFn: sortAndFilter
|
|
104
|
+
}),
|
|
105
|
+
rowsSlice = _useInMemoryPaging.rows,
|
|
106
|
+
scrollLoader = _useInMemoryPaging.scrollLoader,
|
|
107
|
+
currentPage = _useInMemoryPaging.currentPage,
|
|
108
|
+
filters = _useInMemoryPaging.filters,
|
|
109
|
+
setFilter = _useInMemoryPaging.setFilter,
|
|
110
|
+
totalCount = _useInMemoryPaging.totalCount;
|
|
111
|
+
var _buildHeaderAndRowFro = (0, _tableHelpers.default)(columnDefs, rowsSlice, isReadMode, rowKeyField),
|
|
112
|
+
headers = _buildHeaderAndRowFro.headers,
|
|
113
|
+
rows = _buildHeaderAndRowFro.rows;
|
|
114
|
+
var placeholder = /*#__PURE__*/_react.default.createElement(_Placeholder.default, {
|
|
115
|
+
icon: placeholderIcon,
|
|
116
|
+
title: placeholderTitle,
|
|
117
|
+
subtitle: placeholderSubtitle,
|
|
118
|
+
cellList: columnDefs.map(function (col) {
|
|
119
|
+
return col.placeholder;
|
|
120
|
+
})
|
|
121
|
+
});
|
|
122
|
+
var onSearch = function onSearch(searchOption, searchText) {
|
|
123
|
+
setFilter(_objectSpread(_objectSpread({}, filters), {}, {
|
|
124
|
+
searchTerm: searchText
|
|
125
|
+
}));
|
|
126
|
+
};
|
|
127
|
+
var tableProps = new _TableProps.default();
|
|
128
|
+
tableProps.set(_TableProps.default.propNames.stickyHeader, true);
|
|
129
|
+
tableProps.set(_TableProps.default.propNames.withoutTopBorder, true);
|
|
130
|
+
tableProps.set(_TableProps.default.propNames.deepPropsComparation, true);
|
|
131
|
+
tableProps.set(_TableProps.default.propNames.saveScrollbarPosition, true);
|
|
132
|
+
tableProps.set(_TableProps.default.propNames.tableName, tableName);
|
|
133
|
+
if (onItemClick) {
|
|
134
|
+
tableProps.set(_TableProps.default.propNames.onRowClick, onItemClick);
|
|
135
|
+
}
|
|
136
|
+
var hasToolbar = toolbarRightContent || searchProperties.length > 0;
|
|
137
|
+
var toolbar = hasToolbar ? /*#__PURE__*/_react.default.createElement(_SectionToolbar.default, {
|
|
138
|
+
rightContent: toolbarRightContent
|
|
139
|
+
}, searchProperties.length > 0 && /*#__PURE__*/_react.default.createElement(_SearchControl.default, {
|
|
140
|
+
placeholder: searchPlaceholder,
|
|
141
|
+
defaultValue: filters.searchTerm,
|
|
142
|
+
onSearch: onSearch,
|
|
143
|
+
focusAndSelectSearchFieldOnLoad: false
|
|
144
|
+
})) : null;
|
|
145
|
+
var tableInfo = getTableInfo(totalCountLabelId, noRowsTotalCountLabelId, formatMessage, totalCount);
|
|
146
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, toolbar, /*#__PURE__*/_react.default.createElement(_Table.default, {
|
|
147
|
+
ref: tableRef,
|
|
148
|
+
headers: headers,
|
|
149
|
+
tableInfo: tableInfo,
|
|
150
|
+
rows: rows,
|
|
151
|
+
tableProps: tableProps,
|
|
152
|
+
placeholder: placeholder,
|
|
153
|
+
scrollLoader: scrollLoader,
|
|
154
|
+
latestPage: currentPage,
|
|
155
|
+
pageLength: pageSize
|
|
156
|
+
}));
|
|
157
|
+
};
|
|
158
|
+
__signature__(TableWithInMemoryPaging, "useIntl{{ formatMessage }}\nuseRef{tableRef}\nuseRef{initialSearchProperties}\nuseCallback{sortAndFilter}\nuseInMemoryPaging{{\n\t\trows: rowsSlice,\n\t\tscrollLoader,\n\t\tcurrentPage,\n\t\tfilters,\n\t\tsetFilter,\n\t\ttotalCount,\n\t}}", function () {
|
|
159
|
+
return [_reactIntl.useIntl, _useInMemoryPaging2.default];
|
|
160
|
+
});
|
|
161
|
+
__signature__(TableWithInMemoryPaging, "useIntl{{ formatMessage }}\nuseRef{tableRef}\nuseRef{initialSearchProperties}\nuseCallback{sortAndFilter}\nuseInMemoryPaging{{\n\t\trows: rowsSlice,\n\t\tscrollLoader,\n\t\tcurrentPage,\n\t\tfilters,\n\t\tsetFilter,\n\t\ttotalCount,\n\t}}", function () {
|
|
162
|
+
return [_reactIntl.useIntl, _useInMemoryPaging2.default];
|
|
163
|
+
});
|
|
164
|
+
var _default = TableWithInMemoryPaging;
|
|
165
|
+
var _default2 = _default;
|
|
166
|
+
var _default3 = exports.default = _default2;
|
|
167
|
+
;
|
|
168
|
+
(function () {
|
|
169
|
+
var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
|
|
170
|
+
if (!reactHotLoader) {
|
|
171
|
+
return;
|
|
172
|
+
}
|
|
173
|
+
reactHotLoader.register(listFilter, "listFilter", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/TableWithInMemoryPaging.js");
|
|
174
|
+
reactHotLoader.register(getTableInfo, "getTableInfo", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/TableWithInMemoryPaging.js");
|
|
175
|
+
reactHotLoader.register(TableWithInMemoryPaging, "TableWithInMemoryPaging", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/TableWithInMemoryPaging.js");
|
|
176
|
+
reactHotLoader.register(_default, "default", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/TableWithInMemoryPaging.js");
|
|
177
|
+
})();
|
|
178
|
+
;
|
|
179
|
+
(function () {
|
|
180
|
+
var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
|
|
181
|
+
leaveModule && leaveModule(module);
|
|
182
|
+
})();
|
|
183
|
+
;
|
|
184
|
+
(function () {
|
|
185
|
+
var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
|
|
186
|
+
if (!reactHotLoader) {
|
|
187
|
+
return;
|
|
188
|
+
}
|
|
189
|
+
reactHotLoader.register(listFilter, "listFilter", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/TableWithInMemoryPaging.js");
|
|
190
|
+
reactHotLoader.register(getTableInfo, "getTableInfo", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/TableWithInMemoryPaging.js");
|
|
191
|
+
reactHotLoader.register(TableWithInMemoryPaging, "TableWithInMemoryPaging", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/TableWithInMemoryPaging.js");
|
|
192
|
+
reactHotLoader.register(_default2, "default", "/home/vsts/work/1/s/src/components/MaterialUI/DataDisplay/TableWithInMemoryPaging.js");
|
|
193
|
+
})();
|
|
194
|
+
;
|
|
195
|
+
(function () {
|
|
196
|
+
var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
|
|
197
|
+
leaveModule && leaveModule(module);
|
|
198
|
+
})();
|
|
@@ -65,8 +65,11 @@ var MultipleLinesText = function MultipleLinesText(_ref) {
|
|
|
65
65
|
setIsClamped(true);
|
|
66
66
|
}
|
|
67
67
|
}, [isClamped, setIsClamped]);
|
|
68
|
+
if (!children) {
|
|
69
|
+
return null;
|
|
70
|
+
}
|
|
68
71
|
return /*#__PURE__*/_react.default.createElement(TooltippedTextClamp, {
|
|
69
|
-
disableCssClamp:
|
|
72
|
+
disableCssClamp: false,
|
|
70
73
|
clamp: lineCount,
|
|
71
74
|
className: (0, _classnames.default)(classes.clampedText, customStyles),
|
|
72
75
|
children: children.toString(),
|
|
@@ -10,9 +10,7 @@ require("react-datepicker/dist/react-datepicker.css");
|
|
|
10
10
|
var _TimePicker = _interopRequireDefault(require("./TimePicker"));
|
|
11
11
|
var _styles = require("@material-ui/core/styles");
|
|
12
12
|
var _timezoneHelper = require("../../../utils/timezoneHelper");
|
|
13
|
-
var
|
|
14
|
-
var _reactRedux = require("react-redux");
|
|
15
|
-
var _excluded = ["value", "useTime", "useDate", "onChange", "useTimeZone", "dateFormat", "showTimeZone", "timeInputLabel", "readOnly", "showTimeSelectOnly", "metadata", "timePickerTimeZone", "error", "timeOption"];
|
|
13
|
+
var _excluded = ["value", "useTime", "useDate", "onChange", "useTimeZone", "dateFormat", "showTimeZone", "timeInputLabel", "readOnly", "showTimeSelectOnly", "metadata", "timePickerWindowsTimeZone", "error", "timeOption"];
|
|
16
14
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
17
15
|
(function () {
|
|
18
16
|
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
@@ -162,20 +160,23 @@ var WrappedDatePicker = function WrappedDatePicker(_ref) {
|
|
|
162
160
|
readOnly = _ref.readOnly,
|
|
163
161
|
showTimeSelectOnly = _ref.showTimeSelectOnly,
|
|
164
162
|
metadata = _ref.metadata,
|
|
165
|
-
|
|
163
|
+
timePickerWindowsTimeZone = _ref.timePickerWindowsTimeZone,
|
|
166
164
|
error = _ref.error,
|
|
167
165
|
timeOption = _ref.timeOption,
|
|
168
166
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
169
167
|
var classes = useStyles({
|
|
170
168
|
readOnly: readOnly
|
|
171
169
|
});
|
|
172
|
-
var
|
|
173
|
-
var
|
|
170
|
+
var ianaTimeZone = useTimeZone && timePickerWindowsTimeZone ? (0, _timezoneHelper.getIanaTimeZoneFromWindowsName)(timePickerWindowsTimeZone) : null;
|
|
171
|
+
var computeDateWithTimezone = _react.default.useCallback(function (date) {
|
|
172
|
+
return date ? ianaTimeZone ? (0, _timezoneHelper.convertTimeToLocalTimeZone)(new Date(date), ianaTimeZone) : new Date(date) : null;
|
|
173
|
+
}, [ianaTimeZone]);
|
|
174
|
+
var startDate = computeDateWithTimezone(value);
|
|
174
175
|
var disabledCls = (0, _classnames.default)(_defineProperty({}, classes.disabled, props.disabled));
|
|
175
|
-
var
|
|
176
|
+
var windowsTimeZoneName = useTime && showTimeZone ? timePickerWindowsTimeZone != null ? timePickerWindowsTimeZone : (0, _timezoneHelper.getWindowsTimeZone)() : null;
|
|
176
177
|
var updateDate = function updateDate(date, metadata) {
|
|
177
178
|
if (onChange) {
|
|
178
|
-
onChange(
|
|
179
|
+
onChange(computeDateWithTimezone(date), metadata);
|
|
179
180
|
}
|
|
180
181
|
};
|
|
181
182
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -193,8 +194,7 @@ var WrappedDatePicker = function WrappedDatePicker(_ref) {
|
|
|
193
194
|
showTimeInput: useTime != null ? useTime : false,
|
|
194
195
|
useTime: useTime != null ? useTime : false,
|
|
195
196
|
customTimeInput: useTime ? /*#__PURE__*/_react.default.createElement(_TimePicker.default, {
|
|
196
|
-
|
|
197
|
-
requestedTimeZone: localizedTimeZoneName,
|
|
197
|
+
windowsTimeZone: windowsTimeZoneName,
|
|
198
198
|
timeOption: timeOption
|
|
199
199
|
}) : null,
|
|
200
200
|
timeInputLabel: timeInputLabel != null ? timeInputLabel : "",
|
|
@@ -209,11 +209,11 @@ var WrappedDatePicker = function WrappedDatePicker(_ref) {
|
|
|
209
209
|
className: classes.errorText
|
|
210
210
|
}, error));
|
|
211
211
|
};
|
|
212
|
-
__signature__(WrappedDatePicker, "useStyles{classes}\
|
|
213
|
-
return [useStyles
|
|
212
|
+
__signature__(WrappedDatePicker, "useStyles{classes}\nuseCallback{computeDateWithTimezone}", function () {
|
|
213
|
+
return [useStyles];
|
|
214
214
|
});
|
|
215
|
-
__signature__(WrappedDatePicker, "useStyles{classes}\
|
|
216
|
-
return [useStyles
|
|
215
|
+
__signature__(WrappedDatePicker, "useStyles{classes}\nuseCallback{computeDateWithTimezone}", function () {
|
|
216
|
+
return [useStyles];
|
|
217
217
|
});
|
|
218
218
|
var _default = WrappedDatePicker;
|
|
219
219
|
var _default2 = _default;
|
|
@@ -274,6 +274,7 @@ var SearchControl = function SearchControl(_ref) {
|
|
|
274
274
|
})));
|
|
275
275
|
var searchSection = /*#__PURE__*/_react.default.createElement(_IconButton.default, {
|
|
276
276
|
"data-qa": "searchButton",
|
|
277
|
+
"data-testid": "searchButton",
|
|
277
278
|
variant: "contained",
|
|
278
279
|
disabled: disabled,
|
|
279
280
|
classes: {
|
|
@@ -210,6 +210,7 @@ var Select = function Select(_ref) {
|
|
|
210
210
|
var disabled = (selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.disabled)) || false;
|
|
211
211
|
var error = selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.error);
|
|
212
212
|
var native = selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.native);
|
|
213
|
+
var onClose = selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.onClose);
|
|
213
214
|
var inputProps = selectProps == null ? void 0 : selectProps.get(_SelectProps.default.propNames.inputProps);
|
|
214
215
|
var hasError = !!error;
|
|
215
216
|
if (sortType === _SelectProps.sortTypeEnum.numeric) {
|
|
@@ -281,6 +282,7 @@ var Select = function Select(_ref) {
|
|
|
281
282
|
var defaultSelect = /*#__PURE__*/_react.default.createElement(_Select.default, {
|
|
282
283
|
value: value,
|
|
283
284
|
onChange: handleChange,
|
|
285
|
+
onClose: onClose,
|
|
284
286
|
disableUnderline: true,
|
|
285
287
|
IconComponent: SelectIcon,
|
|
286
288
|
MenuProps: defaultMenuProps,
|
|
@@ -42,6 +42,7 @@ var SelectProps = /*#__PURE__*/function (_ComponentProps) {
|
|
|
42
42
|
_this.componentProps.set(_this.constructor.propNames.iconSelect, null);
|
|
43
43
|
_this.componentProps.set(_this.constructor.propNames.disabled, null);
|
|
44
44
|
_this.componentProps.set(_this.constructor.propNames.error, null);
|
|
45
|
+
_this.componentProps.set(_this.constructor.propNames.onClose, null);
|
|
45
46
|
_this.componentProps.set(_this.constructor.propNames.native, null);
|
|
46
47
|
_this.componentProps.set(_this.constructor.propNames.inputProps, null);
|
|
47
48
|
_this.componentClasses.set(_this.constructor.ruleNames.root, null);
|
|
@@ -68,6 +69,7 @@ _defineProperty(SelectProps, "propNames", {
|
|
|
68
69
|
iconSelect: "iconSelect",
|
|
69
70
|
disabled: "disabled",
|
|
70
71
|
error: "error",
|
|
72
|
+
onClose: "onClose",
|
|
71
73
|
native: "native",
|
|
72
74
|
inputProps: "inputProps"
|
|
73
75
|
});
|