orc-shared 5.10.0-dev.7 → 5.10.0-dev.9
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/components/AppFrame/Preferences.js +46 -45
- package/dist/components/MaterialUI/DataDisplay/PredefinedElements/Placeholder.js +15 -3
- package/dist/components/MaterialUI/DataDisplay/Table.js +15 -8
- package/dist/hocs/withScrollBox.js +9 -3
- package/dist/hooks/useInMemoryPaging.js +139 -0
- package/dist/utils/ListHelper.js +271 -0
- package/dist/utils/comparisonHelper.js +176 -0
- package/package.json +1 -1
- package/src/components/AppFrame/Preferences.js +30 -29
- package/src/components/AppFrame/Preferences.test.js +108 -123
- package/src/components/MaterialUI/DataDisplay/PredefinedElements/Placeholder.js +17 -2
- package/src/components/MaterialUI/DataDisplay/PredefinedElements/Placeholder.test.js +3 -1
- package/src/components/MaterialUI/DataDisplay/Table.js +121 -121
- package/src/components/MaterialUI/DataDisplay/Table.test.js +115 -1
- package/src/hocs/withScrollBox.js +10 -5
- package/src/hocs/withScrollBox.test.js +12 -0
- package/src/hooks/useInMemoryPaging.js +85 -0
- package/src/hooks/useInMemoryPaging.test.js +551 -0
- package/src/utils/ListHelper.js +203 -0
- package/src/utils/ListHelper.test.js +710 -0
- package/src/utils/comparisonHelper.js +124 -0
- package/src/utils/comparisonHelper.test.js +324 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.
|
|
4
|
+
exports.stateEventUpdater = exports.default = exports.clickOutsideHandler = exports.Wrapper = exports.Preferences = exports.PrefPanel = exports.PrefForm = exports.PrefButton = exports.PREFS_NAME = exports.Header = exports.Footer = void 0;
|
|
5
5
|
var _react = _interopRequireDefault(require("react"));
|
|
6
6
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
7
7
|
var _reactRedux = require("react-redux");
|
|
@@ -9,8 +9,6 @@ var _utils = require("../../utils");
|
|
|
9
9
|
var _Sidepanel = _interopRequireDefault(require("../Sidepanel"));
|
|
10
10
|
var _Button = _interopRequireDefault(require("../Button"));
|
|
11
11
|
var _Text = _interopRequireDefault(require("../Text"));
|
|
12
|
-
var _Form = require("../Form/Form");
|
|
13
|
-
var _FieldElements = _interopRequireDefault(require("../Form/FieldElements"));
|
|
14
12
|
var _useViewState3 = _interopRequireDefault(require("../../hooks/useViewState"));
|
|
15
13
|
var _view = require("../../actions/view");
|
|
16
14
|
var _locale = require("../../actions/locale");
|
|
@@ -21,6 +19,9 @@ var _settings = require("../../selectors/settings");
|
|
|
21
19
|
var _withClickOutside = _interopRequireDefault(require("../../hocs/withClickOutside"));
|
|
22
20
|
var _versionInfo = require("../../actions/versionInfo");
|
|
23
21
|
var _sharedMessages = _interopRequireDefault(require("./../../sharedMessages"));
|
|
22
|
+
var _SelectProps = _interopRequireDefault(require("../MaterialUI/Inputs/SelectProps"));
|
|
23
|
+
var _InformationItem = _interopRequireDefault(require("../MaterialUI/DataDisplay/PredefinedElements/InformationItem"));
|
|
24
|
+
var _Select = _interopRequireDefault(require("../MaterialUI/Inputs/Select"));
|
|
24
25
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
25
26
|
(function () {
|
|
26
27
|
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
@@ -30,11 +31,6 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
30
31
|
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
31
32
|
enterModule && enterModule(module);
|
|
32
33
|
})();
|
|
33
|
-
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; }
|
|
34
|
-
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; }
|
|
35
|
-
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; }
|
|
36
|
-
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
37
|
-
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); }
|
|
38
34
|
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
39
35
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
40
36
|
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
@@ -51,7 +47,7 @@ var PREFS_NAME = exports.PREFS_NAME = "__prefsDialog";
|
|
|
51
47
|
var PrefPanel = exports.PrefPanel = (0, _styledComponents.default)(_Sidepanel.default).withConfig({
|
|
52
48
|
displayName: "Preferences__PrefPanel",
|
|
53
49
|
componentId: "sc-1fqlcmy-0"
|
|
54
|
-
})(["background-color:#f7f7f7;border-left:1px solid ", ";border-top:1px solid ", ";border-top-left-radius:5px;top:40px;box-shadow:-3px 2px 5px 0px rgba(0,0,0,0.2);z-index:9998;"], (0, _utils.getThemeProp)(["colors", "borderLight"], "#cccccc"), (0, _utils.getThemeProp)(["colors", "borderLight"], "#cccccc"));
|
|
50
|
+
})(["background-color:#f7f7f7;border-left:1px solid ", ";border-top:1px solid ", ";border-top-left-radius:5px;top:40px;box-shadow:-3px 2px 5px 0px rgba(0,0,0,0.2);z-index:9998;transition:right 400ms ease-out;"], (0, _utils.getThemeProp)(["colors", "borderLight"], "#cccccc"), (0, _utils.getThemeProp)(["colors", "borderLight"], "#cccccc"));
|
|
55
51
|
var Wrapper = exports.Wrapper = (0, _withClickOutside.default)(_styledComponents.default.div.withConfig({
|
|
56
52
|
displayName: "Preferences__Wrapper",
|
|
57
53
|
componentId: "sc-1fqlcmy-1"
|
|
@@ -72,28 +68,40 @@ var PrefButton = exports.PrefButton = (0, _styledComponents.default)(_Button.def
|
|
|
72
68
|
displayName: "Preferences__PrefButton",
|
|
73
69
|
componentId: "sc-1fqlcmy-5"
|
|
74
70
|
})(["margin-right:20px;min-width:110px;"]);
|
|
75
|
-
var
|
|
76
|
-
return
|
|
77
|
-
return
|
|
78
|
-
|
|
79
|
-
};
|
|
80
|
-
});
|
|
71
|
+
var stateEventUpdater = exports.stateEventUpdater = (0, _utils.memoize)(function (update, key) {
|
|
72
|
+
return function (value) {
|
|
73
|
+
return update(key, value);
|
|
74
|
+
};
|
|
81
75
|
});
|
|
82
76
|
var usePreferenceSetup = function usePreferenceSetup() {
|
|
77
|
+
var _viewState$language, _viewState$applicatio;
|
|
83
78
|
var dispatch = (0, _reactRedux.useDispatch)();
|
|
84
79
|
var _useViewState = (0, _useViewState3.default)(PREFS_NAME),
|
|
85
80
|
_useViewState2 = _slicedToArray(_useViewState, 2),
|
|
86
81
|
viewState = _useViewState2[0],
|
|
87
82
|
updateViewState = _useViewState2[1];
|
|
83
|
+
var initialLanguage = (0, _reactRedux.useSelector)(_locale2.currentLocaleOrDefault);
|
|
84
|
+
var initialApplication = (0, _reactRedux.useSelector)(_settings.defaultAppId) || "";
|
|
85
|
+
var languageSelectProps = new _SelectProps.default();
|
|
86
|
+
languageSelectProps.set(_SelectProps.default.propNames.value, (_viewState$language = viewState.language) != null ? _viewState$language : initialLanguage);
|
|
87
|
+
languageSelectProps.set(_SelectProps.default.propNames.disabled, false);
|
|
88
|
+
languageSelectProps.set(_SelectProps.default.propNames.positionOverride, {
|
|
89
|
+
disablePortal: true
|
|
90
|
+
});
|
|
91
|
+
languageSelectProps.set(_SelectProps.default.propNames.update, stateEventUpdater(updateViewState, "language"));
|
|
92
|
+
var applicationSelectProps = new _SelectProps.default();
|
|
93
|
+
applicationSelectProps.set(_SelectProps.default.propNames.value, (_viewState$applicatio = viewState.application) != null ? _viewState$applicatio : initialApplication);
|
|
94
|
+
applicationSelectProps.set(_SelectProps.default.propNames.disabled, false);
|
|
95
|
+
applicationSelectProps.set(_SelectProps.default.propNames.positionOverride, {
|
|
96
|
+
disablePortal: true
|
|
97
|
+
});
|
|
98
|
+
applicationSelectProps.set(_SelectProps.default.propNames.update, stateEventUpdater(updateViewState, "application"));
|
|
88
99
|
return {
|
|
89
100
|
show: viewState.show,
|
|
90
|
-
values: _objectSpread({
|
|
91
|
-
language: (0, _reactRedux.useSelector)(_locale2.currentLocaleOrDefault),
|
|
92
|
-
application: (0, _reactRedux.useSelector)(_settings.defaultAppId) || ""
|
|
93
|
-
}, viewState),
|
|
94
|
-
getUpdater: createGetUpdater(updateViewState),
|
|
95
101
|
languageOptions: (0, _utils.unwrapImmutable)((0, _reactRedux.useSelector)(_locale2.cultureOptionList)),
|
|
102
|
+
languageSelectProps: languageSelectProps,
|
|
96
103
|
applicationOptions: (0, _utils.unwrapImmutable)((0, _reactRedux.useSelector)(_applications2.localizedAppOptionSelector)),
|
|
104
|
+
applicationSelectProps: applicationSelectProps,
|
|
97
105
|
clear: function clear() {
|
|
98
106
|
return dispatch((0, _view.setValue)(PREFS_NAME, {
|
|
99
107
|
show: false
|
|
@@ -115,10 +123,10 @@ var usePreferenceSetup = function usePreferenceSetup() {
|
|
|
115
123
|
}
|
|
116
124
|
};
|
|
117
125
|
};
|
|
118
|
-
__signature__(usePreferenceSetup, "useDispatch{dispatch}\nuseViewState{[viewState, updateViewState]}\nuseSelector{}\nuseSelector{}\nuseSelector{}\nuseSelector{}", function () {
|
|
126
|
+
__signature__(usePreferenceSetup, "useDispatch{dispatch}\nuseViewState{[viewState, updateViewState]}\nuseSelector{initialLanguage}\nuseSelector{}\nuseSelector{}\nuseSelector{}", function () {
|
|
119
127
|
return [_reactRedux.useDispatch, _useViewState3.default, _reactRedux.useSelector, _reactRedux.useSelector, _reactRedux.useSelector, _reactRedux.useSelector];
|
|
120
128
|
});
|
|
121
|
-
__signature__(usePreferenceSetup, "useDispatch{dispatch}\nuseViewState{[viewState, updateViewState]}\nuseSelector{}\nuseSelector{}\nuseSelector{}\nuseSelector{}", function () {
|
|
129
|
+
__signature__(usePreferenceSetup, "useDispatch{dispatch}\nuseViewState{[viewState, updateViewState]}\nuseSelector{initialLanguage}\nuseSelector{}\nuseSelector{}\nuseSelector{}", function () {
|
|
122
130
|
return [_reactRedux.useDispatch, _useViewState3.default, _reactRedux.useSelector, _reactRedux.useSelector, _reactRedux.useSelector, _reactRedux.useSelector];
|
|
123
131
|
});
|
|
124
132
|
var clickOutsideHandler = exports.clickOutsideHandler = function clickOutsideHandler(e) {
|
|
@@ -128,12 +136,12 @@ var clickOutsideHandler = exports.clickOutsideHandler = function clickOutsideHan
|
|
|
128
136
|
var Preferences = exports.Preferences = function Preferences() {
|
|
129
137
|
var _usePreferenceSetup = usePreferenceSetup(),
|
|
130
138
|
show = _usePreferenceSetup.show,
|
|
131
|
-
getUpdater = _usePreferenceSetup.getUpdater,
|
|
132
139
|
save = _usePreferenceSetup.save,
|
|
133
140
|
clear = _usePreferenceSetup.clear,
|
|
134
141
|
languageOptions = _usePreferenceSetup.languageOptions,
|
|
142
|
+
languageSelectProps = _usePreferenceSetup.languageSelectProps,
|
|
135
143
|
applicationOptions = _usePreferenceSetup.applicationOptions,
|
|
136
|
-
|
|
144
|
+
applicationSelectProps = _usePreferenceSetup.applicationSelectProps;
|
|
137
145
|
return /*#__PURE__*/_react.default.createElement(PrefPanel, {
|
|
138
146
|
in: show,
|
|
139
147
|
width: "380px",
|
|
@@ -142,23 +150,16 @@ var Preferences = exports.Preferences = function Preferences() {
|
|
|
142
150
|
onClickOutside: clickOutsideHandler
|
|
143
151
|
}, /*#__PURE__*/_react.default.createElement(Header, null, /*#__PURE__*/_react.default.createElement(_Text.default, {
|
|
144
152
|
message: _sharedMessages.default.preferences
|
|
145
|
-
})), /*#__PURE__*/_react.default.createElement(PrefForm, null, /*#__PURE__*/_react.default.createElement(
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
}, {
|
|
156
|
-
label: _sharedMessages.default.defaultApp,
|
|
157
|
-
type: "Selector",
|
|
158
|
-
name: "application",
|
|
159
|
-
options: applicationOptions
|
|
160
|
-
}],
|
|
161
|
-
getUpdater: getUpdater
|
|
153
|
+
})), /*#__PURE__*/_react.default.createElement(PrefForm, null, /*#__PURE__*/_react.default.createElement(_InformationItem.default, {
|
|
154
|
+
label: _sharedMessages.default.displayLanguage
|
|
155
|
+
}, /*#__PURE__*/_react.default.createElement(_Select.default, {
|
|
156
|
+
options: languageOptions,
|
|
157
|
+
selectProps: languageSelectProps
|
|
158
|
+
})), /*#__PURE__*/_react.default.createElement(_InformationItem.default, {
|
|
159
|
+
label: _sharedMessages.default.defaultApp
|
|
160
|
+
}, /*#__PURE__*/_react.default.createElement(_Select.default, {
|
|
161
|
+
options: applicationOptions,
|
|
162
|
+
selectProps: applicationSelectProps
|
|
162
163
|
}))), /*#__PURE__*/_react.default.createElement(Footer, null, /*#__PURE__*/_react.default.createElement(PrefButton, {
|
|
163
164
|
id: "cancelPrefs",
|
|
164
165
|
onClick: clear
|
|
@@ -172,10 +173,10 @@ var Preferences = exports.Preferences = function Preferences() {
|
|
|
172
173
|
message: _sharedMessages.default.save
|
|
173
174
|
})))));
|
|
174
175
|
};
|
|
175
|
-
__signature__(Preferences, "usePreferenceSetup{{ show,
|
|
176
|
+
__signature__(Preferences, "usePreferenceSetup{{ show, save, clear, languageOptions, languageSelectProps, applicationOptions, applicationSelectProps }}", function () {
|
|
176
177
|
return [usePreferenceSetup];
|
|
177
178
|
});
|
|
178
|
-
__signature__(Preferences, "usePreferenceSetup{{ show,
|
|
179
|
+
__signature__(Preferences, "usePreferenceSetup{{ show, save, clear, languageOptions, languageSelectProps, applicationOptions, applicationSelectProps }}", function () {
|
|
179
180
|
return [usePreferenceSetup];
|
|
180
181
|
});
|
|
181
182
|
var _default = Preferences;
|
|
@@ -194,7 +195,7 @@ var _default3 = exports.default = _default2;
|
|
|
194
195
|
reactHotLoader.register(PrefForm, "PrefForm", "/home/vsts/work/1/s/src/components/AppFrame/Preferences.js");
|
|
195
196
|
reactHotLoader.register(Footer, "Footer", "/home/vsts/work/1/s/src/components/AppFrame/Preferences.js");
|
|
196
197
|
reactHotLoader.register(PrefButton, "PrefButton", "/home/vsts/work/1/s/src/components/AppFrame/Preferences.js");
|
|
197
|
-
reactHotLoader.register(
|
|
198
|
+
reactHotLoader.register(stateEventUpdater, "stateEventUpdater", "/home/vsts/work/1/s/src/components/AppFrame/Preferences.js");
|
|
198
199
|
reactHotLoader.register(usePreferenceSetup, "usePreferenceSetup", "/home/vsts/work/1/s/src/components/AppFrame/Preferences.js");
|
|
199
200
|
reactHotLoader.register(clickOutsideHandler, "clickOutsideHandler", "/home/vsts/work/1/s/src/components/AppFrame/Preferences.js");
|
|
200
201
|
reactHotLoader.register(Preferences, "Preferences", "/home/vsts/work/1/s/src/components/AppFrame/Preferences.js");
|
|
@@ -218,7 +219,7 @@ var _default3 = exports.default = _default2;
|
|
|
218
219
|
reactHotLoader.register(PrefForm, "PrefForm", "/home/vsts/work/1/s/src/components/AppFrame/Preferences.js");
|
|
219
220
|
reactHotLoader.register(Footer, "Footer", "/home/vsts/work/1/s/src/components/AppFrame/Preferences.js");
|
|
220
221
|
reactHotLoader.register(PrefButton, "PrefButton", "/home/vsts/work/1/s/src/components/AppFrame/Preferences.js");
|
|
221
|
-
reactHotLoader.register(
|
|
222
|
+
reactHotLoader.register(stateEventUpdater, "stateEventUpdater", "/home/vsts/work/1/s/src/components/AppFrame/Preferences.js");
|
|
222
223
|
reactHotLoader.register(usePreferenceSetup, "usePreferenceSetup", "/home/vsts/work/1/s/src/components/AppFrame/Preferences.js");
|
|
223
224
|
reactHotLoader.register(clickOutsideHandler, "clickOutsideHandler", "/home/vsts/work/1/s/src/components/AppFrame/Preferences.js");
|
|
224
225
|
reactHotLoader.register(Preferences, "Preferences", "/home/vsts/work/1/s/src/components/AppFrame/Preferences.js");
|
|
@@ -78,7 +78,17 @@ var useStyles = (0, _styles.makeStyles)(function (theme) {
|
|
|
78
78
|
animation: false
|
|
79
79
|
},
|
|
80
80
|
root: {
|
|
81
|
-
flexGrow: 1
|
|
81
|
+
flexGrow: 1,
|
|
82
|
+
display: "flex"
|
|
83
|
+
},
|
|
84
|
+
animatePlaceholderImage: {
|
|
85
|
+
animation: "$rotate 4s linear infinite",
|
|
86
|
+
margin: "auto"
|
|
87
|
+
},
|
|
88
|
+
"@keyframes rotate": {
|
|
89
|
+
to: {
|
|
90
|
+
transform: "rotate(1turn)"
|
|
91
|
+
}
|
|
82
92
|
}
|
|
83
93
|
};
|
|
84
94
|
});
|
|
@@ -89,7 +99,9 @@ var Placeholder = function Placeholder(_ref) {
|
|
|
89
99
|
_ref$cellList = _ref.cellList,
|
|
90
100
|
cellList = _ref$cellList === void 0 ? [] : _ref$cellList,
|
|
91
101
|
_ref$error = _ref.error,
|
|
92
|
-
error = _ref$error === void 0 ? false : _ref$error
|
|
102
|
+
error = _ref$error === void 0 ? false : _ref$error,
|
|
103
|
+
_ref$animateIcon = _ref.animateIcon,
|
|
104
|
+
animateIcon = _ref$animateIcon === void 0 ? false : _ref$animateIcon;
|
|
93
105
|
var classes = useStyles();
|
|
94
106
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
95
107
|
className: classes.root
|
|
@@ -126,7 +138,7 @@ var Placeholder = function Placeholder(_ref) {
|
|
|
126
138
|
alignItems: "center",
|
|
127
139
|
className: "".concat(classes.placeholder, " ").concat(error ? classes.placeholderError : "")
|
|
128
140
|
}, icon ? /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
129
|
-
className: classes.placeholderImage,
|
|
141
|
+
className: "".concat(classes.placeholderImage, " ").concat(animateIcon ? classes.animatePlaceholderImage : ""),
|
|
130
142
|
id: icon
|
|
131
143
|
}) : null, title ? /*#__PURE__*/_react.default.createElement(_Typography.default, {
|
|
132
144
|
className: classes.placeholderTitle
|
|
@@ -396,7 +396,7 @@ var FullTableWithSavedScrollbar = _react.default.forwardRef(__signature__(__sign
|
|
|
396
396
|
}), "useViewState{[scrollbarViewState, updateScrollbarViewState]}\nuseState{[scrollbar, setScrollbarPosition](scrollbarViewState.scrollBarPosition)}\nuseEffect{}\nuseEffect{}", function () {
|
|
397
397
|
return [_useViewState3.default];
|
|
398
398
|
}));
|
|
399
|
-
var Table = function
|
|
399
|
+
var Table = _react.default.forwardRef(__signature__(__signature__(function (_ref4, ref) {
|
|
400
400
|
var tableInfo = _ref4.tableInfo,
|
|
401
401
|
headers = _ref4.headers,
|
|
402
402
|
rows = _ref4.rows,
|
|
@@ -430,6 +430,15 @@ var Table = function Table(_ref4) {
|
|
|
430
430
|
customClasses["table"] = (tableProps == null ? void 0 : tableProps.getStyle(_TableProps.default.ruleNames.table)) || null;
|
|
431
431
|
if (selectedRows && !selectedRowsChanged || !selectedRows && selectedRowsChanged) throw new Error("Both 'selectedRows' and 'selectedRowsChanged' need to be defined if one of them is.");
|
|
432
432
|
var refScrolled = (0, _react.useRef)();
|
|
433
|
+
(0, _react.useImperativeHandle)(ref, function () {
|
|
434
|
+
return {
|
|
435
|
+
scrollToTop: function scrollToTop() {
|
|
436
|
+
if (refScrolled.current.scrollTop > 0) {
|
|
437
|
+
refScrolled.current.scrollTop = 0;
|
|
438
|
+
}
|
|
439
|
+
}
|
|
440
|
+
};
|
|
441
|
+
});
|
|
433
442
|
var _useState3 = (0, _react.useState)(0),
|
|
434
443
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
435
444
|
scrolled = _useState4[0],
|
|
@@ -503,13 +512,11 @@ var Table = function Table(_ref4) {
|
|
|
503
512
|
tableName: tableName,
|
|
504
513
|
saveScrollbarPosition: saveScrollbarPosition
|
|
505
514
|
}));
|
|
506
|
-
}
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
return [_useTableSelection3.useTableSelection, useStyles];
|
|
512
|
-
});
|
|
515
|
+
}, "useRef{refScrolled}\nuseImperativeHandle{}\nuseState{[scrolled, setScrolled](0)}\nuseState{[tableSize, setTableSize]({ width: 0, height: 0 })}\nuseTableSelection{[selectedNumber, tableSelectionStatus, selectionMethods]}\nuseStyles{classes}\nuseEffect{}\nuseCallback{onResize}", function () {
|
|
516
|
+
return [_react.useImperativeHandle, _useTableSelection3.useTableSelection, useStyles];
|
|
517
|
+
}), "useRef{refScrolled}\nuseImperativeHandle{}\nuseState{[scrolled, setScrolled](0)}\nuseState{[tableSize, setTableSize]({ width: 0, height: 0 })}\nuseTableSelection{[selectedNumber, tableSelectionStatus, selectionMethods]}\nuseStyles{classes}\nuseEffect{}\nuseCallback{onResize}", function () {
|
|
518
|
+
return [_react.useImperativeHandle, _useTableSelection3.useTableSelection, useStyles];
|
|
519
|
+
}));
|
|
513
520
|
var _default = _react.default.memo(Table, function (prev, next) {
|
|
514
521
|
return readOnlyMode(prev.tableProps, next.tableProps) && rowAreIdentical(prev.rows, next.rows) && headersAreIdentical(prev.headers, next.headers);
|
|
515
522
|
});
|
|
@@ -33,10 +33,14 @@ var useStyles = (0, _styles.makeStyles)({
|
|
|
33
33
|
}
|
|
34
34
|
});
|
|
35
35
|
var withScrollBox = function withScrollBox(WrappedComp) {
|
|
36
|
-
return __signature__(__signature__(function (_ref) {
|
|
36
|
+
return _react.default.forwardRef(__signature__(__signature__(function (_ref, externalRef) {
|
|
37
37
|
var onScroll = _ref.onScroll,
|
|
38
38
|
otherProps = _objectWithoutProperties(_ref, _excluded);
|
|
39
39
|
var classes = useStyles();
|
|
40
|
+
var mergeRef = function mergeRef(node, measureRef) {
|
|
41
|
+
measureRef(node);
|
|
42
|
+
if (externalRef) externalRef.current = node;
|
|
43
|
+
};
|
|
40
44
|
return /*#__PURE__*/_react.default.createElement(_reactMeasure.default, {
|
|
41
45
|
bounds: true
|
|
42
46
|
}, function (_ref2) {
|
|
@@ -45,7 +49,9 @@ var withScrollBox = function withScrollBox(WrappedComp) {
|
|
|
45
49
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
46
50
|
className: classes.scrollbox,
|
|
47
51
|
onScroll: onScroll,
|
|
48
|
-
ref:
|
|
52
|
+
ref: function ref(node) {
|
|
53
|
+
return mergeRef(node, measureRef);
|
|
54
|
+
}
|
|
49
55
|
}, /*#__PURE__*/_react.default.createElement(WrappedComp, _extends({}, otherProps, {
|
|
50
56
|
height: (0, _utils.safeGet)(contentRect, "bounds", "height"),
|
|
51
57
|
width: (0, _utils.safeGet)(contentRect, "bounds", "width")
|
|
@@ -55,7 +61,7 @@ var withScrollBox = function withScrollBox(WrappedComp) {
|
|
|
55
61
|
return [useStyles];
|
|
56
62
|
}), "useStyles{classes}", function () {
|
|
57
63
|
return [useStyles];
|
|
58
|
-
});
|
|
64
|
+
}));
|
|
59
65
|
};
|
|
60
66
|
var _default = withScrollBox;
|
|
61
67
|
var _default2 = _default;
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.default = void 0;
|
|
5
|
+
var _react = require("react");
|
|
6
|
+
var _utils = require("../utils");
|
|
7
|
+
var _useViewState3 = _interopRequireDefault(require("./useViewState"));
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
(function () {
|
|
10
|
+
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
11
|
+
enterModule && enterModule(module);
|
|
12
|
+
})();
|
|
13
|
+
(function () {
|
|
14
|
+
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
15
|
+
enterModule && enterModule(module);
|
|
16
|
+
})();
|
|
17
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
18
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
19
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
20
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
21
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
22
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
23
|
+
var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
24
|
+
return a;
|
|
25
|
+
};
|
|
26
|
+
var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
27
|
+
return a;
|
|
28
|
+
};
|
|
29
|
+
var scrollTableRef = function scrollTableRef(tableRef) {
|
|
30
|
+
if (!(tableRef != null && tableRef.current)) {
|
|
31
|
+
console.error("[useInMemoryPaging]: tableRef was not specified or tableRef.current is null.");
|
|
32
|
+
} else {
|
|
33
|
+
tableRef.current.scrollToTop();
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
var useInMemoryPaging = function useInMemoryPaging(_ref) {
|
|
37
|
+
var _viewState$filters, _viewState$sorting, _viewState$currentPag, _viewState$nextPageTo;
|
|
38
|
+
var viewStateName = _ref.viewStateName,
|
|
39
|
+
tableRef = _ref.tableRef,
|
|
40
|
+
records = _ref.records,
|
|
41
|
+
pageSize = _ref.pageSize,
|
|
42
|
+
_ref$initialSort = _ref.initialSort,
|
|
43
|
+
initialSort = _ref$initialSort === void 0 ? {} : _ref$initialSort,
|
|
44
|
+
_ref$initialFilters = _ref.initialFilters,
|
|
45
|
+
initialFilters = _ref$initialFilters === void 0 ? {} : _ref$initialFilters,
|
|
46
|
+
sortAndFilterFn = _ref.sortAndFilterFn;
|
|
47
|
+
var _useViewState = (0, _useViewState3.default)(viewStateName),
|
|
48
|
+
_useViewState2 = _slicedToArray(_useViewState, 2),
|
|
49
|
+
viewState = _useViewState2[0],
|
|
50
|
+
updateViewState = _useViewState2[1];
|
|
51
|
+
var internalSortAndFilterFn = (0, _react.useRef)(sortAndFilterFn);
|
|
52
|
+
var internalInitialSort = (0, _react.useRef)(initialSort);
|
|
53
|
+
var internalInitialFilters = (0, _react.useRef)(initialFilters);
|
|
54
|
+
var filters = (_viewState$filters = viewState.filters) != null ? _viewState$filters : internalInitialFilters.current;
|
|
55
|
+
var sorting = (_viewState$sorting = viewState.sorting) != null ? _viewState$sorting : internalInitialSort.current;
|
|
56
|
+
var currentPage = (_viewState$currentPag = viewState.currentPage) != null ? _viewState$currentPag : 1;
|
|
57
|
+
var nextPageToLoad = (_viewState$nextPageTo = viewState.nextPageToLoad) != null ? _viewState$nextPageTo : 1;
|
|
58
|
+
if (internalSortAndFilterFn.current !== sortAndFilterFn) {
|
|
59
|
+
console.warn("[useInMemoryPaging]: a different value for sortAndFilterFn was detected between renders, ensure that it never changes (define it outside of your component).");
|
|
60
|
+
}
|
|
61
|
+
var setFilter = function setFilter(filters) {
|
|
62
|
+
scrollTableRef(tableRef);
|
|
63
|
+
updateViewState("filters", filters);
|
|
64
|
+
updateViewState("currentPage", 1);
|
|
65
|
+
updateViewState("nextPageToLoad", 1);
|
|
66
|
+
};
|
|
67
|
+
var setSort = function setSort(sorting) {
|
|
68
|
+
scrollTableRef(tableRef);
|
|
69
|
+
updateViewState("sorting", sorting);
|
|
70
|
+
updateViewState("currentPage", 1);
|
|
71
|
+
updateViewState("nextPageToLoad", 1);
|
|
72
|
+
};
|
|
73
|
+
var scrollLoader = (0, _react.useCallback)(function (page) {
|
|
74
|
+
if (page > nextPageToLoad) {
|
|
75
|
+
updateViewState("currentPage", page);
|
|
76
|
+
updateViewState("nextPageToLoad", page);
|
|
77
|
+
}
|
|
78
|
+
}, [nextPageToLoad, updateViewState]);
|
|
79
|
+
var _useMemo = (0, _react.useMemo)(function () {
|
|
80
|
+
var list = internalSortAndFilterFn.current({
|
|
81
|
+
list: (0, _utils.unwrapImmutable)(records),
|
|
82
|
+
filters: filters,
|
|
83
|
+
sorting: sorting
|
|
84
|
+
});
|
|
85
|
+
return [(0, _utils.unwrapImmutable)(list.slice(0, currentPage * pageSize)), list.length];
|
|
86
|
+
}, [currentPage, pageSize, records, filters, sorting, internalSortAndFilterFn]),
|
|
87
|
+
_useMemo2 = _slicedToArray(_useMemo, 2),
|
|
88
|
+
rows = _useMemo2[0],
|
|
89
|
+
totalCount = _useMemo2[1];
|
|
90
|
+
return {
|
|
91
|
+
rows: rows,
|
|
92
|
+
scrollLoader: scrollLoader,
|
|
93
|
+
currentPage: currentPage,
|
|
94
|
+
filters: filters,
|
|
95
|
+
sorting: sorting,
|
|
96
|
+
setFilter: setFilter,
|
|
97
|
+
setSort: setSort,
|
|
98
|
+
totalCount: totalCount
|
|
99
|
+
};
|
|
100
|
+
};
|
|
101
|
+
__signature__(useInMemoryPaging, "useViewState{[viewState, updateViewState]}\nuseRef{internalSortAndFilterFn}\nuseRef{internalInitialSort}\nuseRef{internalInitialFilters}\nuseCallback{scrollLoader}\nuseMemo{[rows, totalCount]}", function () {
|
|
102
|
+
return [_useViewState3.default];
|
|
103
|
+
});
|
|
104
|
+
__signature__(useInMemoryPaging, "useViewState{[viewState, updateViewState]}\nuseRef{internalSortAndFilterFn}\nuseRef{internalInitialSort}\nuseRef{internalInitialFilters}\nuseCallback{scrollLoader}\nuseMemo{[rows, totalCount]}", function () {
|
|
105
|
+
return [_useViewState3.default];
|
|
106
|
+
});
|
|
107
|
+
var _default = useInMemoryPaging;
|
|
108
|
+
var _default2 = _default;
|
|
109
|
+
var _default3 = exports.default = _default2;
|
|
110
|
+
;
|
|
111
|
+
(function () {
|
|
112
|
+
var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
|
|
113
|
+
if (!reactHotLoader) {
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
reactHotLoader.register(scrollTableRef, "scrollTableRef", "/home/vsts/work/1/s/src/hooks/useInMemoryPaging.js");
|
|
117
|
+
reactHotLoader.register(useInMemoryPaging, "useInMemoryPaging", "/home/vsts/work/1/s/src/hooks/useInMemoryPaging.js");
|
|
118
|
+
reactHotLoader.register(_default, "default", "/home/vsts/work/1/s/src/hooks/useInMemoryPaging.js");
|
|
119
|
+
})();
|
|
120
|
+
;
|
|
121
|
+
(function () {
|
|
122
|
+
var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
|
|
123
|
+
leaveModule && leaveModule(module);
|
|
124
|
+
})();
|
|
125
|
+
;
|
|
126
|
+
(function () {
|
|
127
|
+
var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
|
|
128
|
+
if (!reactHotLoader) {
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
reactHotLoader.register(scrollTableRef, "scrollTableRef", "/home/vsts/work/1/s/src/hooks/useInMemoryPaging.js");
|
|
132
|
+
reactHotLoader.register(useInMemoryPaging, "useInMemoryPaging", "/home/vsts/work/1/s/src/hooks/useInMemoryPaging.js");
|
|
133
|
+
reactHotLoader.register(_default2, "default", "/home/vsts/work/1/s/src/hooks/useInMemoryPaging.js");
|
|
134
|
+
})();
|
|
135
|
+
;
|
|
136
|
+
(function () {
|
|
137
|
+
var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
|
|
138
|
+
leaveModule && leaveModule(module);
|
|
139
|
+
})();
|