react-hook-core 0.0.1 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components.js +370 -486
- package/lib/core.js +89 -27
- package/lib/diff.js +3 -0
- package/lib/edit.js +35 -33
- package/lib/formutil.js +5 -2
- package/lib/index.js +7 -0
- package/lib/merge.js +1 -1
- package/lib/state.js +17 -10
- package/lib/update.js +36 -55
- package/lib/useEdit.js +181 -327
- package/lib/useMessage.js +25 -0
- package/lib/useSearch.js +118 -238
- package/lib/useView.js +70 -161
- package/lib/util.js +6 -2
- package/package.json +7 -9
- package/src/components.ts +345 -301
- package/src/core.ts +110 -49
- package/src/diff.ts +4 -1
- package/src/edit.ts +44 -42
- package/src/formutil.ts +7 -4
- package/src/index.ts +8 -0
- package/src/merge.ts +3 -3
- package/src/state.ts +25 -19
- package/src/update.ts +35 -58
- package/src/useEdit.ts +165 -244
- package/src/useMessage.ts +37 -0
- package/src/useSearch.ts +145 -225
- package/src/useView.ts +64 -101
- package/src/util.ts +8 -4
- package/tsconfig.json +1 -0
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var React = require("react");
|
|
4
|
+
exports.useMessage = function (initialState) {
|
|
5
|
+
var _a = React.useState(initialState), msg = _a[0], setMessage = _a[1];
|
|
6
|
+
var hideMessage = function () {
|
|
7
|
+
setMessage({ alertClass: '', message: '' });
|
|
8
|
+
};
|
|
9
|
+
var showMessage = function (ms) {
|
|
10
|
+
setMessage({ alertClass: 'alert alert-info', message: ms });
|
|
11
|
+
};
|
|
12
|
+
var showError = function (ms) {
|
|
13
|
+
if (typeof ms === 'string') {
|
|
14
|
+
setMessage({ alertClass: 'alert alert-error', message: ms });
|
|
15
|
+
}
|
|
16
|
+
else if (Array.isArray(ms) && ms.length > 0) {
|
|
17
|
+
setMessage({ alertClass: 'alert alert-error', message: ms[0].message });
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
var x = JSON.stringify(ms);
|
|
21
|
+
setMessage({ alertClass: 'alert alert-error', message: x });
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
return { msg: msg, showError: showError, showMessage: showMessage, hideMessage: hideMessage };
|
|
25
|
+
};
|
package/lib/useSearch.js
CHANGED
|
@@ -10,239 +10,114 @@ var __assign = (this && this.__assign) || function () {
|
|
|
10
10
|
};
|
|
11
11
|
return __assign.apply(this, arguments);
|
|
12
12
|
};
|
|
13
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
-
});
|
|
21
|
-
};
|
|
22
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
-
var _ = { label: 0, sent: function () { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g;
|
|
25
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
-
function step(op) {
|
|
27
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
-
while (_) try {
|
|
29
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
-
switch (op[0]) {
|
|
32
|
-
case 0: case 1: t = op; break;
|
|
33
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
-
default:
|
|
37
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
-
if (t[2]) _.ops.pop();
|
|
42
|
-
_.trys.pop(); continue;
|
|
43
|
-
}
|
|
44
|
-
op = body.call(thisArg, _);
|
|
45
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
14
|
var react_1 = require("react");
|
|
51
15
|
var react_router_dom_1 = require("react-router-dom");
|
|
52
16
|
var reflectx_1 = require("reflectx");
|
|
53
|
-
var
|
|
17
|
+
var search_core_1 = require("search-core");
|
|
54
18
|
var core_1 = require("./core");
|
|
55
19
|
var merge_1 = require("./merge");
|
|
56
20
|
var route_1 = require("./route");
|
|
21
|
+
var state_1 = require("./state");
|
|
57
22
|
var update_1 = require("./update");
|
|
58
23
|
function prepareData(data) {
|
|
59
24
|
}
|
|
60
25
|
exports.callSearch = function (se, search3, showResults3, searchError3, lc, nextPageToken) {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
return [4, search3(s, limit, next, fields)];
|
|
87
|
-
case 1:
|
|
88
|
-
sr = _a.sent();
|
|
89
|
-
showResults3(s, sr, lc);
|
|
90
|
-
return [3, 3];
|
|
91
|
-
case 2:
|
|
92
|
-
err_1 = _a.sent();
|
|
93
|
-
searchError3(err_1);
|
|
94
|
-
return [3, 3];
|
|
95
|
-
case 3: return [2];
|
|
96
|
-
}
|
|
97
|
-
});
|
|
98
|
-
});
|
|
26
|
+
var s = reflectx_1.clone(se);
|
|
27
|
+
var page = se.page;
|
|
28
|
+
if (!page || page < 1) {
|
|
29
|
+
page = 1;
|
|
30
|
+
}
|
|
31
|
+
var offset;
|
|
32
|
+
if (!se.limit || se.limit <= 0) {
|
|
33
|
+
se.limit = 20;
|
|
34
|
+
}
|
|
35
|
+
if (se.firstLimit && se.firstLimit > 0) {
|
|
36
|
+
offset = se.limit * (page - 2) + se.firstLimit;
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
offset = se.limit * (page - 1);
|
|
40
|
+
}
|
|
41
|
+
var limit = (page <= 1 && se.firstLimit && se.firstLimit > 0 ? se.firstLimit : se.limit);
|
|
42
|
+
var next = (nextPageToken && nextPageToken.length > 0 ? nextPageToken : offset);
|
|
43
|
+
var fields = se.fields;
|
|
44
|
+
delete se['page'];
|
|
45
|
+
delete se['fields'];
|
|
46
|
+
delete se['limit'];
|
|
47
|
+
delete se['firstLimit'];
|
|
48
|
+
search3(s, limit, next, fields).then(function (sr) {
|
|
49
|
+
showResults3(s, sr, lc);
|
|
50
|
+
}).catch(function (err) { return searchError3(err); });
|
|
99
51
|
};
|
|
100
52
|
var appendListOfState = function (results, list, setState2) {
|
|
101
|
-
var arr =
|
|
53
|
+
var arr = search_core_1.append(list, results);
|
|
102
54
|
setState2({ list: arr });
|
|
103
55
|
};
|
|
104
56
|
var setListOfState = function (list, setState2) {
|
|
105
57
|
setState2({ list: list });
|
|
106
58
|
};
|
|
107
59
|
exports.pageSizes = [10, 20, 40, 60, 100, 200, 400, 800];
|
|
108
|
-
function
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
pageSize: p.pageSize,
|
|
113
|
-
initPageSize: p.initPageSize,
|
|
114
|
-
pageSizes: p.pageSizes,
|
|
115
|
-
appendMode: p.appendMode,
|
|
116
|
-
displayFields: p.displayFields,
|
|
117
|
-
pageMaxSize: (p.pageMaxSize && p.pageMaxSize > 0 ? p.pageMaxSize : 7)
|
|
118
|
-
};
|
|
119
|
-
if (p2) {
|
|
120
|
-
p3.viewable = p2.viewable;
|
|
121
|
-
p3.addable = p2.addable;
|
|
122
|
-
p3.editable = p2.editable;
|
|
123
|
-
p3.deletable = p2.deletable;
|
|
124
|
-
p3.approvable = p2.approvable;
|
|
125
|
-
}
|
|
126
|
-
else {
|
|
127
|
-
p3.viewable = true;
|
|
128
|
-
p3.addable = true;
|
|
129
|
-
p3.editable = true;
|
|
130
|
-
}
|
|
131
|
-
return p3;
|
|
132
|
-
}
|
|
133
|
-
function mergeParam(p, ui, loading) {
|
|
134
|
-
if (!p.sequenceNo) {
|
|
135
|
-
p.sequenceNo = 'sequenceNo';
|
|
136
|
-
}
|
|
137
|
-
if (!p.pageIndex || p.pageIndex < 1) {
|
|
138
|
-
p.pageIndex = 1;
|
|
139
|
-
}
|
|
140
|
-
if (!p.pageSize) {
|
|
141
|
-
p.pageSize = 20;
|
|
142
|
-
}
|
|
143
|
-
if (!p.initPageSize) {
|
|
144
|
-
p.initPageSize = p.pageSize;
|
|
145
|
-
}
|
|
146
|
-
if (!p.pageSizes) {
|
|
147
|
-
p.pageSizes = exports.pageSizes;
|
|
148
|
-
}
|
|
149
|
-
if (!p.pageMaxSize) {
|
|
150
|
-
p.pageMaxSize = 7;
|
|
151
|
-
}
|
|
152
|
-
if (ui) {
|
|
153
|
-
if (!p.decodeFromForm) {
|
|
154
|
-
p.decodeFromForm = ui.decodeFromForm;
|
|
155
|
-
}
|
|
156
|
-
if (!p.registerEvents) {
|
|
157
|
-
p.registerEvents = ui.registerEvents;
|
|
60
|
+
function mergeParam(p) {
|
|
61
|
+
if (p) {
|
|
62
|
+
if (!p.sequenceNo) {
|
|
63
|
+
p.sequenceNo = 'sequenceNo';
|
|
158
64
|
}
|
|
159
|
-
if (!p.
|
|
160
|
-
p.
|
|
65
|
+
if (!p.pageSize) {
|
|
66
|
+
p.pageSize = 20;
|
|
161
67
|
}
|
|
162
|
-
if (!p.
|
|
163
|
-
p.
|
|
68
|
+
if (!p.pageSizes) {
|
|
69
|
+
p.pageSizes = exports.pageSizes;
|
|
164
70
|
}
|
|
165
|
-
if (!p.
|
|
166
|
-
p.
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
if (loading) {
|
|
170
|
-
if (!p.showLoading) {
|
|
171
|
-
p.showLoading = loading.showLoading;
|
|
172
|
-
}
|
|
173
|
-
if (!p.hideLoading) {
|
|
174
|
-
p.hideLoading = loading.hideLoading;
|
|
71
|
+
if (!p.pageMaxSize || p.pageMaxSize <= 0) {
|
|
72
|
+
p.pageMaxSize = 7;
|
|
175
73
|
}
|
|
176
74
|
}
|
|
177
75
|
}
|
|
178
|
-
exports.useSearch = function (refForm, initialState, search,
|
|
179
|
-
var baseProps = exports.
|
|
76
|
+
exports.useSearch = function (refForm, initialState, search, p2, p) {
|
|
77
|
+
var baseProps = exports.useCoreSearch(undefined, refForm, initialState, search, p2, p);
|
|
180
78
|
react_1.useEffect(function () {
|
|
181
79
|
var load = baseProps.load, setState = baseProps.setState, component = baseProps.component;
|
|
182
80
|
if (refForm) {
|
|
183
|
-
var registerEvents = (p2.ui ? p2.ui.registerEvents :
|
|
81
|
+
var registerEvents = (p2.ui ? p2.ui.registerEvents : undefined);
|
|
184
82
|
core_1.initForm(refForm.current, registerEvents);
|
|
185
83
|
}
|
|
186
|
-
if (
|
|
187
|
-
p1.initialize(load, setState, component);
|
|
188
|
-
}
|
|
189
|
-
else {
|
|
190
|
-
var se = (p1.createSearchModel ? p1.createSearchModel() : null);
|
|
191
|
-
var s = search_utilities_1.mergeSearchModel(route_1.buildFromUrl(), se, component.pageSizes);
|
|
192
|
-
load(s, p2.auto);
|
|
193
|
-
}
|
|
194
|
-
}, []);
|
|
195
|
-
return __assign({}, baseProps);
|
|
196
|
-
};
|
|
197
|
-
exports.useSearchOneWithProps = function (p) {
|
|
198
|
-
var baseProps = exports.useBaseSearchOne(p);
|
|
199
|
-
react_1.useEffect(function () {
|
|
200
|
-
var load = baseProps.load, setState = baseProps.setState, component = baseProps.component;
|
|
201
|
-
if (p.refForm) {
|
|
202
|
-
core_1.initForm(p.refForm.current, p.registerEvents);
|
|
203
|
-
}
|
|
204
|
-
if (p.initialize) {
|
|
84
|
+
if (p && p.initialize) {
|
|
205
85
|
p.initialize(load, setState, component);
|
|
206
86
|
}
|
|
207
87
|
else {
|
|
208
|
-
var se = (p.
|
|
209
|
-
var s =
|
|
210
|
-
load(s,
|
|
88
|
+
var se = (p && p.createFilter ? p.createFilter() : undefined);
|
|
89
|
+
var s = search_core_1.mergeFilter(route_1.buildFromUrl(), se, component.pageSizes);
|
|
90
|
+
load(s, p2.auto);
|
|
211
91
|
}
|
|
212
92
|
}, []);
|
|
213
93
|
return __assign({}, baseProps);
|
|
214
94
|
};
|
|
215
|
-
exports.
|
|
216
|
-
return exports.
|
|
95
|
+
exports.useSearchOneProps = function (p) {
|
|
96
|
+
return exports.useSearch(p.refForm, p.initialState, p.search, p, p);
|
|
217
97
|
};
|
|
218
|
-
exports.
|
|
219
|
-
return exports.
|
|
98
|
+
exports.useSearchOne = function (p) {
|
|
99
|
+
return exports.useCoreSearch(undefined, p.refForm, p.initialState, p.search, p, p);
|
|
220
100
|
};
|
|
221
|
-
exports.
|
|
222
|
-
mergeParam(p1
|
|
223
|
-
var _a = react_1.useState(
|
|
101
|
+
exports.useCoreSearch = function (props, refForm, initialState, search, p2, p1) {
|
|
102
|
+
mergeParam(p1);
|
|
103
|
+
var _a = react_1.useState(), running = _a[0], setRunning = _a[1];
|
|
224
104
|
var _getModelName = function () {
|
|
225
|
-
|
|
226
|
-
return p1.name;
|
|
227
|
-
}
|
|
228
|
-
else {
|
|
229
|
-
return 'model';
|
|
230
|
-
}
|
|
105
|
+
return core_1.getName('filter', p1 && p1.name ? p1.name : undefined);
|
|
231
106
|
};
|
|
232
|
-
var getModelName = (p1.getModelName ? p1.getModelName : _getModelName);
|
|
233
|
-
var baseProps = (props ? update_1.useUpdateWithProps(props, initialState, p2.getLocale,
|
|
107
|
+
var getModelName = (p1 && p1.getModelName ? p1.getModelName : _getModelName);
|
|
108
|
+
var baseProps = (props ? update_1.useUpdateWithProps(props, initialState, getModelName, p2.getLocale, core_1.getRemoveError(p2), p1 ? p1.prepareCustomData : undefined) : update_1.useUpdate(initialState, getModelName, p2.getLocale, core_1.getRemoveError(p2)));
|
|
234
109
|
var state = baseProps.state, setState = baseProps.setState;
|
|
235
110
|
var _b = [react_router_dom_1.useHistory(), react_router_dom_1.useRouteMatch()], history = _b[0], match = _b[1];
|
|
236
111
|
var _getCurrencyCode = function () {
|
|
237
112
|
return refForm && refForm.current ? refForm.current.getAttribute('currency-code') : null;
|
|
238
113
|
};
|
|
239
|
-
var getCurrencyCode = p1.getCurrencyCode ? p1.getCurrencyCode : _getCurrencyCode;
|
|
240
|
-
var prepareCustomData = (p1.prepareCustomData ? p1.prepareCustomData : prepareData);
|
|
114
|
+
var getCurrencyCode = p1 && p1.getCurrencyCode ? p1.getCurrencyCode : _getCurrencyCode;
|
|
115
|
+
var prepareCustomData = (p1 && p1.prepareCustomData ? p1.prepareCustomData : prepareData);
|
|
241
116
|
var updateDateState = function (name, value) {
|
|
242
117
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
243
118
|
var modelName = getModelName();
|
|
244
119
|
var currentState = state[modelName];
|
|
245
|
-
if (props.setGlobalState) {
|
|
120
|
+
if (props && props.setGlobalState) {
|
|
246
121
|
var data = props.shouldBeCustomized ? prepareCustomData((_a = {}, _a[name] = value, _a)) : (_b = {}, _b[name] = value, _b);
|
|
247
122
|
props.setGlobalState((_c = {}, _c[modelName] = __assign(__assign({}, currentState), data), _c));
|
|
248
123
|
}
|
|
@@ -251,8 +126,7 @@ exports.useBaseSearchWithProps = function (props, refForm, initialState, search,
|
|
|
251
126
|
}
|
|
252
127
|
setState((_f = {}, _f[modelName] = __assign(__assign({}, currentState), (_g = {}, _g[name] = value, _g)), _f));
|
|
253
128
|
};
|
|
254
|
-
var
|
|
255
|
-
var _c = merge_1.useMergeState(p), component = _c[0], setComponent = _c[1];
|
|
129
|
+
var _c = merge_1.useMergeState(p1), component = _c[0], setComponent = _c[1];
|
|
256
130
|
var toggleFilter = function (event) {
|
|
257
131
|
setComponent({ hideFilter: !component.hideFilter });
|
|
258
132
|
};
|
|
@@ -261,42 +135,42 @@ exports.useBaseSearchWithProps = function (props, refForm, initialState, search,
|
|
|
261
135
|
history.push(match.url + '/add');
|
|
262
136
|
};
|
|
263
137
|
var _getFields = function () {
|
|
264
|
-
var
|
|
265
|
-
var fs =
|
|
266
|
-
setComponent({
|
|
138
|
+
var fields = component.fields, initFields = component.initFields;
|
|
139
|
+
var fs = search_core_1.getFieldsFromForm(fields, initFields, refForm.current);
|
|
140
|
+
setComponent({ fields: fs, initFields: true });
|
|
267
141
|
return fs;
|
|
268
142
|
};
|
|
269
|
-
var getFields = p1.getFields ? p1.getFields : _getFields;
|
|
270
|
-
var
|
|
143
|
+
var getFields = p1 && p1.getFields ? p1.getFields : _getFields;
|
|
144
|
+
var getFilter = function (se) {
|
|
271
145
|
if (!se) {
|
|
272
146
|
se = component;
|
|
273
147
|
}
|
|
274
|
-
var keys = p1.keys;
|
|
275
|
-
if (!keys && typeof search !== 'function') {
|
|
148
|
+
var keys = p1 && p1.keys ? p1.keys : undefined;
|
|
149
|
+
if (!keys && typeof search !== 'function' && search.keys) {
|
|
276
150
|
keys = search.keys();
|
|
277
151
|
}
|
|
278
152
|
var n = getModelName();
|
|
279
|
-
var fs = p1.
|
|
153
|
+
var fs = p1 && p1.fields;
|
|
280
154
|
if (!fs || fs.length <= 0) {
|
|
281
155
|
fs = getFields();
|
|
282
156
|
}
|
|
283
|
-
var lc = p2.getLocale();
|
|
157
|
+
var lc = (p2.getLocale ? p2.getLocale() : state_1.enLocale);
|
|
284
158
|
var cc = getCurrencyCode();
|
|
285
|
-
var obj3 =
|
|
159
|
+
var obj3 = search_core_1.getModel(state, n, se, fs, se.excluding, keys, se.list, refForm.current, core_1.getDecodeFromForm(p2), lc, cc);
|
|
286
160
|
return obj3;
|
|
287
161
|
};
|
|
288
|
-
var
|
|
162
|
+
var _setFilter = function (s) {
|
|
289
163
|
var objSet = {};
|
|
290
164
|
var n = getModelName();
|
|
291
165
|
objSet[n] = s;
|
|
292
166
|
setState(objSet);
|
|
293
167
|
};
|
|
294
|
-
var
|
|
168
|
+
var setFilter = p1 && p1.setFilter ? p1.setFilter : _setFilter;
|
|
295
169
|
var _load = function (s, auto) {
|
|
296
170
|
var com = Object.assign({}, component);
|
|
297
|
-
var obj2 =
|
|
171
|
+
var obj2 = search_core_1.initFilter(s, com);
|
|
298
172
|
setComponent(com);
|
|
299
|
-
|
|
173
|
+
setFilter(obj2);
|
|
300
174
|
var runSearch = doSearch;
|
|
301
175
|
if (auto) {
|
|
302
176
|
setTimeout(function () {
|
|
@@ -304,26 +178,21 @@ exports.useBaseSearchWithProps = function (props, refForm, initialState, search,
|
|
|
304
178
|
}, 0);
|
|
305
179
|
}
|
|
306
180
|
};
|
|
307
|
-
var load = p1.load ? p1.load : _load;
|
|
181
|
+
var load = p1 && p1.load ? p1.load : _load;
|
|
308
182
|
var doSearch = function (se, isFirstLoad) {
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
p1.removeFormError(f);
|
|
312
|
-
}
|
|
313
|
-
var s = getSearchModel(se);
|
|
183
|
+
core_1.removeFormError(p2, refForm.current);
|
|
184
|
+
var s = getFilter(se);
|
|
314
185
|
var isStillRunning = running;
|
|
315
186
|
validateSearch(s, function () {
|
|
316
187
|
if (isStillRunning === true) {
|
|
317
188
|
return;
|
|
318
189
|
}
|
|
319
190
|
setRunning(true);
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
if (!p1.ignoreUrlParam) {
|
|
324
|
-
search_utilities_1.addParametersIntoUrl(s, isFirstLoad);
|
|
191
|
+
core_1.showLoading(p2.loading);
|
|
192
|
+
if (p1 && !p1.ignoreUrlParam) {
|
|
193
|
+
search_core_1.addParametersIntoUrl(s, isFirstLoad);
|
|
325
194
|
}
|
|
326
|
-
var lc = p2.getLocale();
|
|
195
|
+
var lc = p2.getLocale ? p2.getLocale() : state_1.enLocale;
|
|
327
196
|
if (typeof search === 'function') {
|
|
328
197
|
exports.callSearch(s, search, showResults, searchError, lc, se.nextPageToken);
|
|
329
198
|
}
|
|
@@ -333,9 +202,9 @@ exports.useBaseSearchWithProps = function (props, refForm, initialState, search,
|
|
|
333
202
|
});
|
|
334
203
|
};
|
|
335
204
|
var _validateSearch = function (se, callback) {
|
|
336
|
-
|
|
205
|
+
search_core_1.validate(se, callback, refForm.current, (p2.getLocale ? p2.getLocale() : undefined), core_1.getValidateForm(p2));
|
|
337
206
|
};
|
|
338
|
-
var validateSearch = p1.validateSearch ? p1.validateSearch : _validateSearch;
|
|
207
|
+
var validateSearch = p1 && p1.validateSearch ? p1.validateSearch : _validateSearch;
|
|
339
208
|
var pageSizeChanged = function (event) {
|
|
340
209
|
var size = parseInt(event.currentTarget.value, 10);
|
|
341
210
|
component.pageSize = size;
|
|
@@ -348,7 +217,7 @@ exports.useBaseSearchWithProps = function (props, refForm, initialState, search,
|
|
|
348
217
|
});
|
|
349
218
|
doSearch(component);
|
|
350
219
|
};
|
|
351
|
-
var
|
|
220
|
+
var clearQ = function (event) {
|
|
352
221
|
var n = getModelName();
|
|
353
222
|
if (n && n.length > 0) {
|
|
354
223
|
var m = state[n];
|
|
@@ -371,7 +240,7 @@ exports.useBaseSearchWithProps = function (props, refForm, initialState, search,
|
|
|
371
240
|
event.preventDefault();
|
|
372
241
|
if (event && event.target) {
|
|
373
242
|
var target = event.target;
|
|
374
|
-
var s =
|
|
243
|
+
var s = search_core_1.handleSort(target, component.sortTarget, component.sortField, component.sortType);
|
|
375
244
|
setComponent({
|
|
376
245
|
sortField: s.field,
|
|
377
246
|
sortType: s.type,
|
|
@@ -388,21 +257,33 @@ exports.useBaseSearchWithProps = function (props, refForm, initialState, search,
|
|
|
388
257
|
resetAndSearch();
|
|
389
258
|
}
|
|
390
259
|
};
|
|
260
|
+
var changeView = function (event, view) {
|
|
261
|
+
if (view && view.length > 0) {
|
|
262
|
+
setComponent({ view: view });
|
|
263
|
+
}
|
|
264
|
+
else if (event && event.target) {
|
|
265
|
+
var target = event.target;
|
|
266
|
+
var v = target.getAttribute('data-view');
|
|
267
|
+
if (v && v.length > 0) {
|
|
268
|
+
setComponent({ view: v });
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
};
|
|
391
272
|
var resetAndSearch = function () {
|
|
392
273
|
if (running === true) {
|
|
393
274
|
setComponent({ pageIndex: 1, triggerSearch: true });
|
|
394
275
|
return;
|
|
395
276
|
}
|
|
396
277
|
setComponent({ pageIndex: 1, tmpPageIndex: 1 });
|
|
397
|
-
|
|
278
|
+
search_core_1.removeSortStatus(component.sortTarget);
|
|
398
279
|
setComponent({
|
|
399
|
-
sortTarget:
|
|
400
|
-
sortField:
|
|
280
|
+
sortTarget: undefined,
|
|
281
|
+
sortField: undefined,
|
|
401
282
|
append: false,
|
|
402
283
|
pageIndex: 1
|
|
403
284
|
});
|
|
404
|
-
component.sortTarget =
|
|
405
|
-
component.sortField =
|
|
285
|
+
component.sortTarget = undefined;
|
|
286
|
+
component.sortField = undefined;
|
|
406
287
|
component.append = false;
|
|
407
288
|
component.pageIndex = 1;
|
|
408
289
|
doSearch(component);
|
|
@@ -411,23 +292,23 @@ exports.useBaseSearchWithProps = function (props, refForm, initialState, search,
|
|
|
411
292
|
setComponent({ pageIndex: component.tmpPageIndex });
|
|
412
293
|
core_1.error(err, p2.resource.value, p2.showError);
|
|
413
294
|
};
|
|
414
|
-
var appendList = (p1.appendList ? p1.appendList : appendListOfState);
|
|
415
|
-
var setList = (p1.setList ? p1.setList : setListOfState);
|
|
295
|
+
var appendList = (p1 && p1.appendList ? p1.appendList : appendListOfState);
|
|
296
|
+
var setList = (p1 && p1.setList ? p1.setList : setListOfState);
|
|
416
297
|
var _showResults = function (s, sr, lc) {
|
|
417
298
|
var results = sr.list;
|
|
418
299
|
if (results && results.length > 0) {
|
|
419
|
-
|
|
300
|
+
search_core_1.formatResults(results, component.pageIndex, component.pageSize, component.initPageSize, p1 ? p1.sequenceNo : undefined, p1 ? p1.format : undefined, lc);
|
|
420
301
|
}
|
|
421
302
|
var am = component.appendMode;
|
|
422
303
|
var pi = (s.page && s.page >= 1 ? s.page : 1);
|
|
423
304
|
setComponent({ itemTotal: sr.total, pageIndex: pi, nextPageToken: sr.nextPageToken });
|
|
424
305
|
if (am) {
|
|
425
306
|
var limit = s.limit;
|
|
426
|
-
if (s.page <= 1 && s.firstLimit && s.firstLimit > 0) {
|
|
307
|
+
if ((!s.page || s.page <= 1) && s.firstLimit && s.firstLimit > 0) {
|
|
427
308
|
limit = s.firstLimit;
|
|
428
309
|
}
|
|
429
|
-
|
|
430
|
-
if (component.append && s.page > 1) {
|
|
310
|
+
search_core_1.handleAppend(component, sr.list, limit, sr.nextPageToken);
|
|
311
|
+
if (component.append && (s.page && s.page > 1)) {
|
|
431
312
|
appendList(results, component.list, setState);
|
|
432
313
|
}
|
|
433
314
|
else {
|
|
@@ -435,25 +316,25 @@ exports.useBaseSearchWithProps = function (props, refForm, initialState, search,
|
|
|
435
316
|
}
|
|
436
317
|
}
|
|
437
318
|
else {
|
|
438
|
-
|
|
319
|
+
search_core_1.showPaging(component, sr.list, s.limit, sr.total);
|
|
439
320
|
setList(results, setState);
|
|
440
321
|
setComponent({ tmpPageIndex: s.page });
|
|
441
|
-
|
|
442
|
-
|
|
322
|
+
if (s.limit) {
|
|
323
|
+
var m1 = search_core_1.buildMessage(p2.resource, s.page, s.limit, sr.list, sr.total);
|
|
324
|
+
p2.showMessage(m1);
|
|
325
|
+
}
|
|
443
326
|
}
|
|
444
327
|
setRunning(false);
|
|
445
|
-
|
|
446
|
-
p1.hideLoading();
|
|
447
|
-
}
|
|
328
|
+
core_1.hideLoading(p2.loading);
|
|
448
329
|
if (component.triggerSearch) {
|
|
449
330
|
setComponent({ triggerSearch: false });
|
|
450
331
|
resetAndSearch();
|
|
451
332
|
}
|
|
452
333
|
};
|
|
453
|
-
var showResults = (p1.showResults ? p1.showResults : _showResults);
|
|
334
|
+
var showResults = (p1 && p1.showResults ? p1.showResults : _showResults);
|
|
454
335
|
var showMore = function (event) {
|
|
455
336
|
event.preventDefault();
|
|
456
|
-
var n = component.pageIndex + 1;
|
|
337
|
+
var n = component.pageIndex ? component.pageIndex + 1 : 2;
|
|
457
338
|
var m = component.pageIndex;
|
|
458
339
|
setComponent({ tmpPageIndex: m, pageIndex: n, append: true });
|
|
459
340
|
component.tmpPageIndex = m;
|
|
@@ -478,14 +359,13 @@ exports.useBaseSearchWithProps = function (props, refForm, initialState, search,
|
|
|
478
359
|
add: add,
|
|
479
360
|
searchOnClick: searchOnClick,
|
|
480
361
|
sort: sort,
|
|
362
|
+
changeView: changeView,
|
|
481
363
|
showMore: showMore,
|
|
482
364
|
toggleFilter: toggleFilter,
|
|
483
365
|
doSearch: doSearch,
|
|
484
366
|
pageChanged: pageChanged,
|
|
485
|
-
pageSizeChanged: pageSizeChanged,
|
|
486
|
-
clearKeyworkOnClick: clearKeyworkOnClick,
|
|
487
|
-
showResults: showResults,
|
|
367
|
+
pageSizeChanged: pageSizeChanged, clearKeyworkOnClick: clearQ, showResults: showResults,
|
|
488
368
|
getFields: getFields,
|
|
489
|
-
getModelName: getModelName, format: p1.format
|
|
369
|
+
getModelName: getModelName, format: p1 ? p1.format : undefined
|
|
490
370
|
});
|
|
491
371
|
};
|