react-hook-core 0.0.1 → 0.1.3
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 +404 -511
- package/lib/core.js +90 -27
- package/lib/diff.js +3 -0
- package/lib/edit.js +35 -33
- package/lib/formutil.js +5 -2
- package/lib/index.js +22 -0
- package/lib/merge.js +1 -1
- package/lib/state.js +17 -10
- package/lib/update.js +36 -55
- package/lib/useEdit.js +186 -333
- package/lib/useMessage.js +25 -0
- package/lib/useSearch.js +140 -253
- package/lib/useView.js +70 -161
- package/lib/util.js +6 -2
- package/package.json +7 -9
- package/src/components.ts +430 -376
- package/src/core.ts +115 -59
- package/src/diff.ts +4 -1
- package/src/edit.ts +44 -42
- package/src/formutil.ts +7 -4
- package/src/index.ts +33 -0
- package/src/merge.ts +3 -3
- package/src/state.ts +25 -19
- package/src/update.ts +36 -59
- package/src/useEdit.ts +171 -250
- package/src/useMessage.ts +37 -0
- package/src/useSearch.ts +173 -244
- package/src/useView.ts +64 -101
- package/src/util.ts +8 -4
- package/tsconfig.json +1 -0
package/lib/useEdit.js
CHANGED
|
@@ -10,42 +10,6 @@ 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 reflectx_1 = require("reflectx");
|
|
@@ -54,135 +18,53 @@ var edit_1 = require("./edit");
|
|
|
54
18
|
var formutil_1 = require("./formutil");
|
|
55
19
|
var merge_1 = require("./merge");
|
|
56
20
|
var router_1 = require("./router");
|
|
21
|
+
var state_1 = require("./state");
|
|
57
22
|
var update_1 = require("./update");
|
|
58
23
|
function prepareData(data) {
|
|
59
24
|
}
|
|
60
|
-
exports.
|
|
61
|
-
return exports.
|
|
62
|
-
};
|
|
63
|
-
exports.useBaseEditWithProps = function (props, refForm, initialState, service, p1, p2, p3) {
|
|
64
|
-
var p4 = (p2 ? p2 : {});
|
|
65
|
-
var p = {
|
|
66
|
-
props: props,
|
|
67
|
-
refForm: refForm,
|
|
68
|
-
initialState: initialState,
|
|
69
|
-
service: service,
|
|
70
|
-
status: p1.status,
|
|
71
|
-
resourceService: p1.resource,
|
|
72
|
-
showMessage: p1.showMessage,
|
|
73
|
-
showError: p1.showError,
|
|
74
|
-
confirm: p1.confirm,
|
|
75
|
-
ui: p1.ui,
|
|
76
|
-
getLocale: p1.getLocale,
|
|
77
|
-
loading: p1.loading,
|
|
78
|
-
backOnSuccess: p4.backOnSuccess,
|
|
79
|
-
metadata: p4.metadata,
|
|
80
|
-
keys: p4.keys,
|
|
81
|
-
version: p4.version,
|
|
82
|
-
setBack: p4.setBack,
|
|
83
|
-
patchable: p4.patchable,
|
|
84
|
-
addable: p4.addable,
|
|
85
|
-
readOnly: p4.readOnly,
|
|
86
|
-
handleNotFound: p4.handleNotFound,
|
|
87
|
-
getModelName: p4.getModelName,
|
|
88
|
-
getModel: p4.getModel,
|
|
89
|
-
showModel: p4.showModel,
|
|
90
|
-
createModel: p4.createModel,
|
|
91
|
-
onSave: p4.onSave,
|
|
92
|
-
validate: p4.validate,
|
|
93
|
-
succeed: p4.succeed,
|
|
94
|
-
fail: p4.fail,
|
|
95
|
-
postSave: p4.postSave,
|
|
96
|
-
handleDuplicateKey: p4.handleDuplicateKey,
|
|
97
|
-
load: p4.load,
|
|
98
|
-
save: p4.save
|
|
99
|
-
};
|
|
100
|
-
var per = (p3 ? p3 : p2);
|
|
101
|
-
if (per) {
|
|
102
|
-
p.addable = per.addable;
|
|
103
|
-
p.readOnly = per.readOnly;
|
|
104
|
-
p.deletable = per.deletable;
|
|
105
|
-
}
|
|
106
|
-
return exports.useBaseEditOneWithProps(p);
|
|
25
|
+
exports.useEdit = function (refForm, initialState, service, p1, p2) {
|
|
26
|
+
return exports.useCoreEdit(undefined, refForm, initialState, service, p1, p2);
|
|
107
27
|
};
|
|
108
|
-
exports.
|
|
109
|
-
var
|
|
110
|
-
var p = {
|
|
111
|
-
props: props,
|
|
112
|
-
refForm: refForm,
|
|
113
|
-
initialize: p4.initialize,
|
|
114
|
-
callback: p4.callback,
|
|
115
|
-
initialState: initialState,
|
|
116
|
-
service: service,
|
|
117
|
-
status: p2.status,
|
|
118
|
-
resourceService: p2.resource,
|
|
119
|
-
showMessage: p2.showMessage,
|
|
120
|
-
showError: p2.showError,
|
|
121
|
-
confirm: p2.confirm,
|
|
122
|
-
ui: p2.ui,
|
|
123
|
-
getLocale: p2.getLocale,
|
|
124
|
-
loading: p2.loading,
|
|
125
|
-
backOnSuccess: p4.backOnSuccess,
|
|
126
|
-
metadata: p4.metadata,
|
|
127
|
-
keys: p4.keys,
|
|
128
|
-
version: p4.version,
|
|
129
|
-
setBack: p4.setBack,
|
|
130
|
-
patchable: p4.patchable,
|
|
131
|
-
addable: p4.addable,
|
|
132
|
-
readOnly: p4.readOnly,
|
|
133
|
-
handleNotFound: p4.handleNotFound,
|
|
134
|
-
getModelName: p4.getModelName,
|
|
135
|
-
getModel: p4.getModel,
|
|
136
|
-
showModel: p4.showModel,
|
|
137
|
-
createModel: p4.createModel,
|
|
138
|
-
onSave: p4.onSave,
|
|
139
|
-
validate: p4.validate,
|
|
140
|
-
succeed: p4.succeed,
|
|
141
|
-
fail: p4.fail,
|
|
142
|
-
postSave: p4.postSave,
|
|
143
|
-
handleDuplicateKey: p4.handleDuplicateKey,
|
|
144
|
-
load: p4.load,
|
|
145
|
-
save: p4.save
|
|
146
|
-
};
|
|
147
|
-
var per = (p3 ? p3 : p1);
|
|
148
|
-
if (per) {
|
|
149
|
-
p.addable = per.addable;
|
|
150
|
-
p.readOnly = per.readOnly;
|
|
151
|
-
p.deletable = per.deletable;
|
|
152
|
-
}
|
|
153
|
-
return exports.useEditOne(p);
|
|
154
|
-
};
|
|
155
|
-
exports.useEditOne = function (p) {
|
|
156
|
-
var baseProps = exports.useBaseEditOneWithProps(p);
|
|
28
|
+
exports.useEditProps = function (props, refForm, initialState, service, p2, p) {
|
|
29
|
+
var baseProps = exports.useCoreEdit(props, refForm, initialState, service, p2, p);
|
|
157
30
|
react_1.useEffect(function () {
|
|
158
|
-
if (
|
|
159
|
-
var registerEvents = (
|
|
31
|
+
if (refForm) {
|
|
32
|
+
var registerEvents = (p2.ui ? p2.ui.registerEvents : undefined);
|
|
160
33
|
core_1.initForm(baseProps.refForm.current, registerEvents);
|
|
161
34
|
}
|
|
162
|
-
var n = baseProps.getModelName(
|
|
35
|
+
var n = baseProps.getModelName(refForm.current);
|
|
163
36
|
var obj = {};
|
|
164
37
|
obj[n] = baseProps.createNewModel();
|
|
165
38
|
baseProps.setState(obj);
|
|
166
|
-
|
|
167
|
-
|
|
39
|
+
var keys;
|
|
40
|
+
if (p && !p.keys && service && service.metadata) {
|
|
41
|
+
var metadata = (p.metadata ? p.metadata : service.metadata());
|
|
168
42
|
var meta = edit_1.build(metadata);
|
|
169
|
-
|
|
170
|
-
var version = (p.version ? p.version : (meta ? meta.version :
|
|
43
|
+
keys = (p.keys ? p.keys : (meta ? meta.keys : undefined));
|
|
44
|
+
var version = (p.version ? p.version : (meta ? meta.version : undefined));
|
|
171
45
|
p.keys = keys;
|
|
172
46
|
p.version = version;
|
|
173
47
|
}
|
|
174
|
-
var id = core_1.buildId(
|
|
175
|
-
if (
|
|
176
|
-
p
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
48
|
+
var id = core_1.buildId(props, keys);
|
|
49
|
+
if (id) {
|
|
50
|
+
if (p && p.initialize) {
|
|
51
|
+
p.initialize(id, baseProps.load, baseProps.setState, p.callback);
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
baseProps.load(id, p ? p.callback : undefined);
|
|
55
|
+
}
|
|
180
56
|
}
|
|
181
57
|
}, []);
|
|
182
58
|
return __assign({}, baseProps);
|
|
183
59
|
};
|
|
184
|
-
exports.
|
|
185
|
-
|
|
60
|
+
exports.useEditOneProps = function (p) {
|
|
61
|
+
return exports.useEditProps(p.props, p.refForm, p.initialState, p.service, p, p);
|
|
62
|
+
};
|
|
63
|
+
exports.useEditOne = function (p) {
|
|
64
|
+
return exports.useEdit(p.refForm, p.initialState, p.service, p, p);
|
|
65
|
+
};
|
|
66
|
+
exports.useCoreEdit = function (props, refForm, initialState, service, p1, p) {
|
|
67
|
+
var addable = (p && p.patchable !== false ? true : undefined);
|
|
186
68
|
var goBack = router_1.useRouter().goBack;
|
|
187
69
|
var back = function (event) {
|
|
188
70
|
if (event) {
|
|
@@ -190,42 +72,42 @@ exports.useBaseEditOneWithProps = function (p) {
|
|
|
190
72
|
}
|
|
191
73
|
goBack();
|
|
192
74
|
};
|
|
193
|
-
var
|
|
194
|
-
var baseProps = update_1.useUpdate(p.initialState, p.getLocale);
|
|
75
|
+
var _a = react_1.useState(), running = _a[0], setRunning = _a[1];
|
|
195
76
|
var getModelName = function (f) {
|
|
196
|
-
if (p.name && p.name.length > 0) {
|
|
77
|
+
if (p && p.name && p.name.length > 0) {
|
|
197
78
|
return p.name;
|
|
198
79
|
}
|
|
199
80
|
return core_1.getModelName(f);
|
|
200
81
|
};
|
|
201
|
-
var
|
|
82
|
+
var baseProps = update_1.useUpdate(initialState, getModelName, p1.getLocale);
|
|
83
|
+
var prepareCustomData = (p && p.prepareCustomData ? p.prepareCustomData : prepareData);
|
|
202
84
|
var updateDateState = function (name, value) {
|
|
203
85
|
var _a, _b, _c, _d, _e;
|
|
204
|
-
var modelName = getModelName(
|
|
86
|
+
var modelName = getModelName(refForm.current);
|
|
205
87
|
var currentState = state[modelName];
|
|
206
|
-
if (
|
|
207
|
-
var data =
|
|
208
|
-
|
|
88
|
+
if (props && props.setGlobalState) {
|
|
89
|
+
var data = props.shouldBeCustomized ? prepareCustomData((_a = {}, _a[name] = value, _a)) : (_b = {}, _b[name] = value, _b);
|
|
90
|
+
props.setGlobalState((_c = {}, _c[modelName] = __assign(__assign({}, currentState), data), _c));
|
|
209
91
|
}
|
|
210
92
|
else {
|
|
211
93
|
setState((_d = {}, _d[modelName] = __assign(__assign({}, currentState), (_e = {}, _e[name] = value, _e)), _d));
|
|
212
94
|
}
|
|
213
95
|
};
|
|
214
96
|
var state = baseProps.state, setState = baseProps.setState;
|
|
215
|
-
var
|
|
97
|
+
var _b = merge_1.useMergeState({
|
|
216
98
|
newMode: false,
|
|
217
99
|
setBack: false,
|
|
218
100
|
addable: addable,
|
|
219
|
-
readOnly:
|
|
101
|
+
readOnly: p ? p.readOnly : undefined,
|
|
220
102
|
originalModel: undefined
|
|
221
|
-
}), flag =
|
|
103
|
+
}), flag = _b[0], setFlag = _b[1];
|
|
222
104
|
var showModel = function (model) {
|
|
223
|
-
var n = getModelName(
|
|
105
|
+
var n = getModelName(refForm.current);
|
|
224
106
|
var objSet = {};
|
|
225
107
|
objSet[n] = model;
|
|
226
108
|
setState(objSet);
|
|
227
|
-
if (p.readOnly) {
|
|
228
|
-
var f =
|
|
109
|
+
if (p && p.readOnly) {
|
|
110
|
+
var f = refForm.current;
|
|
229
111
|
formutil_1.readOnly(f);
|
|
230
112
|
}
|
|
231
113
|
};
|
|
@@ -234,25 +116,25 @@ exports.useBaseEditOneWithProps = function (p) {
|
|
|
234
116
|
showModel(model);
|
|
235
117
|
};
|
|
236
118
|
var _handleNotFound = function (form) {
|
|
237
|
-
var msg = core_1.message(
|
|
119
|
+
var msg = core_1.message(p1.resource.value, 'error_not_found', 'error');
|
|
238
120
|
if (form) {
|
|
239
121
|
formutil_1.readOnly(form);
|
|
240
122
|
}
|
|
241
|
-
|
|
123
|
+
p1.showError(msg.message, msg.title);
|
|
242
124
|
};
|
|
243
|
-
var handleNotFound = (p.handleNotFound ? p.handleNotFound : _handleNotFound);
|
|
125
|
+
var handleNotFound = (p && p.handleNotFound ? p.handleNotFound : _handleNotFound);
|
|
244
126
|
var _getModel = function () {
|
|
245
|
-
var n = getModelName(
|
|
246
|
-
if (
|
|
247
|
-
return
|
|
127
|
+
var n = getModelName(refForm.current);
|
|
128
|
+
if (props) {
|
|
129
|
+
return props[n] || state[n];
|
|
248
130
|
}
|
|
249
131
|
else {
|
|
250
132
|
return state[n];
|
|
251
133
|
}
|
|
252
134
|
};
|
|
253
|
-
var getModel = (p.getModel ? p.getModel : _getModel);
|
|
135
|
+
var getModel = (p && p.getModel ? p.getModel : _getModel);
|
|
254
136
|
var _createModel = function () {
|
|
255
|
-
var metadata = (p.metadata ? p.metadata :
|
|
137
|
+
var metadata = (p && p.metadata ? p.metadata : (service.metadata ? service.metadata() : undefined));
|
|
256
138
|
if (metadata) {
|
|
257
139
|
var obj = edit_1.createModel(metadata);
|
|
258
140
|
return obj;
|
|
@@ -262,26 +144,27 @@ exports.useBaseEditOneWithProps = function (p) {
|
|
|
262
144
|
return obj;
|
|
263
145
|
}
|
|
264
146
|
};
|
|
265
|
-
var createModel = (p.createModel ? p.createModel : _createModel);
|
|
266
|
-
var
|
|
147
|
+
var createModel = (p && p.createModel ? p.createModel : _createModel);
|
|
148
|
+
var create = function (event) {
|
|
267
149
|
event.preventDefault();
|
|
268
150
|
var obj = createModel();
|
|
269
|
-
resetState(true, obj,
|
|
270
|
-
|
|
151
|
+
resetState(true, obj, undefined);
|
|
152
|
+
var u = p1.ui;
|
|
153
|
+
if (u) {
|
|
271
154
|
setTimeout(function () {
|
|
272
|
-
|
|
155
|
+
u.removeFormError(refForm.current);
|
|
273
156
|
}, 100);
|
|
274
157
|
}
|
|
275
158
|
};
|
|
276
159
|
var _onSave = function (isBack) {
|
|
277
160
|
if (flag.newMode === true && flag.addable === false) {
|
|
278
|
-
var m = core_1.message(
|
|
279
|
-
|
|
161
|
+
var m = core_1.message(p1.resource.value, 'error_permission_add', 'error_permission');
|
|
162
|
+
p1.showError(m.message, m.title);
|
|
280
163
|
return;
|
|
281
164
|
}
|
|
282
|
-
else if (flag.newMode === false && p.readOnly) {
|
|
283
|
-
var msg = core_1.message(
|
|
284
|
-
|
|
165
|
+
else if (p && flag.newMode === false && p.readOnly) {
|
|
166
|
+
var msg = core_1.message(p1.resource.value, 'error_permission_edit', 'error_permission');
|
|
167
|
+
p1.showError(msg.message, msg.title);
|
|
285
168
|
return;
|
|
286
169
|
}
|
|
287
170
|
else {
|
|
@@ -289,48 +172,48 @@ exports.useBaseEditOneWithProps = function (p) {
|
|
|
289
172
|
return;
|
|
290
173
|
}
|
|
291
174
|
var obj_1 = getModel();
|
|
292
|
-
var metadata = (p.metadata ? p.metadata :
|
|
293
|
-
|
|
175
|
+
var metadata = (p && p.metadata ? p.metadata : (service.metadata ? service.metadata() : undefined));
|
|
176
|
+
var keys = void 0;
|
|
177
|
+
var version_1;
|
|
178
|
+
if (p && metadata && (!p.keys || !p.version)) {
|
|
294
179
|
var meta = edit_1.build(metadata);
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
p.keys = keys;
|
|
298
|
-
p.version = version;
|
|
180
|
+
keys = (p.keys ? p.keys : (meta ? meta.keys : undefined));
|
|
181
|
+
version_1 = (p.version ? p.version : (meta ? meta.version : undefined));
|
|
299
182
|
}
|
|
300
183
|
if (flag.newMode) {
|
|
301
184
|
validate(obj_1, function () {
|
|
302
|
-
var msg = core_1.message(
|
|
303
|
-
|
|
304
|
-
|
|
185
|
+
var msg = core_1.message(p1.resource.value, 'msg_confirm_save', 'confirm', 'yes', 'no');
|
|
186
|
+
p1.confirm(msg.message, msg.title, function () {
|
|
187
|
+
doSave(obj_1, undefined, version_1, isBack);
|
|
305
188
|
}, msg.no, msg.yes);
|
|
306
189
|
});
|
|
307
190
|
}
|
|
308
191
|
else {
|
|
309
|
-
var diffObj_1 = reflectx_1.makeDiff(edit_1.initPropertyNullInModel(flag.originalModel, metadata), obj_1,
|
|
192
|
+
var diffObj_1 = reflectx_1.makeDiff(edit_1.initPropertyNullInModel(flag.originalModel, metadata), obj_1, keys, version_1);
|
|
310
193
|
var objKeys = Object.keys(diffObj_1);
|
|
311
194
|
if (objKeys.length === 0) {
|
|
312
|
-
|
|
195
|
+
p1.showMessage(p1.resource.value('msg_no_change'));
|
|
313
196
|
}
|
|
314
197
|
else {
|
|
315
198
|
validate(obj_1, function () {
|
|
316
|
-
var msg = core_1.message(
|
|
317
|
-
|
|
318
|
-
|
|
199
|
+
var msg = core_1.message(p1.resource.value, 'msg_confirm_save', 'confirm', 'yes', 'no');
|
|
200
|
+
p1.confirm(msg.message, msg.title, function () {
|
|
201
|
+
doSave(obj_1, diffObj_1, version_1, isBack);
|
|
319
202
|
}, msg.no, msg.yes);
|
|
320
203
|
});
|
|
321
204
|
}
|
|
322
205
|
}
|
|
323
206
|
}
|
|
324
207
|
};
|
|
325
|
-
var onSave = (p.onSave ? p.onSave : _onSave);
|
|
326
|
-
var
|
|
208
|
+
var onSave = (p && p.onSave ? p.onSave : _onSave);
|
|
209
|
+
var save = function (event) {
|
|
327
210
|
event.preventDefault();
|
|
328
211
|
event.persist();
|
|
329
|
-
onSave(
|
|
212
|
+
onSave();
|
|
330
213
|
};
|
|
331
214
|
var _validate = function (obj, callback) {
|
|
332
|
-
if (
|
|
333
|
-
var valid =
|
|
215
|
+
if (p1.ui) {
|
|
216
|
+
var valid = p1.ui.validateForm(refForm.current, state_1.localeOf(undefined, p1.getLocale));
|
|
334
217
|
if (valid) {
|
|
335
218
|
callback(obj);
|
|
336
219
|
}
|
|
@@ -339,7 +222,7 @@ exports.useBaseEditOneWithProps = function (p) {
|
|
|
339
222
|
callback(obj);
|
|
340
223
|
}
|
|
341
224
|
};
|
|
342
|
-
var validate = (p.validate ? p.validate : _validate);
|
|
225
|
+
var validate = (p && p.validate ? p.validate : _validate);
|
|
343
226
|
var _succeed = function (obj, msg, version, isBack, result) {
|
|
344
227
|
if (result) {
|
|
345
228
|
var model = result.value;
|
|
@@ -354,44 +237,46 @@ exports.useBaseEditOneWithProps = function (p) {
|
|
|
354
237
|
else {
|
|
355
238
|
edit_1.handleVersion(obj, version);
|
|
356
239
|
}
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
back(null);
|
|
240
|
+
p1.showMessage(msg);
|
|
241
|
+
if (isBack) {
|
|
242
|
+
back(undefined);
|
|
361
243
|
}
|
|
362
244
|
};
|
|
363
|
-
var succeed = (p.succeed ? p.succeed : _succeed);
|
|
245
|
+
var succeed = (p && p.succeed ? p.succeed : _succeed);
|
|
364
246
|
var _fail = function (result) {
|
|
365
247
|
var errors = result.errors;
|
|
366
|
-
var f =
|
|
367
|
-
var
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
if (p.ui && p.ui.buildErrorMessage) {
|
|
375
|
-
result.message = p.ui.buildErrorMessage(unmappedErrors);
|
|
248
|
+
var f = refForm.current;
|
|
249
|
+
var u = p1.ui;
|
|
250
|
+
if (errors && u) {
|
|
251
|
+
var unmappedErrors = u.showFormError(f, errors);
|
|
252
|
+
formutil_1.focusFirstError(f);
|
|
253
|
+
if (!result.message) {
|
|
254
|
+
if (errors && errors.length === 1) {
|
|
255
|
+
result.message = errors[0].message;
|
|
376
256
|
}
|
|
377
257
|
else {
|
|
378
|
-
|
|
258
|
+
if (p1.ui && p1.ui.buildErrorMessage) {
|
|
259
|
+
result.message = p1.ui.buildErrorMessage(unmappedErrors);
|
|
260
|
+
}
|
|
261
|
+
else {
|
|
262
|
+
result.message = errors[0].message;
|
|
263
|
+
}
|
|
379
264
|
}
|
|
380
265
|
}
|
|
266
|
+
if (result.message) {
|
|
267
|
+
var t = p1.resource.value('error');
|
|
268
|
+
p1.showError(result.message, t);
|
|
269
|
+
}
|
|
381
270
|
}
|
|
382
|
-
var t = p.resourceService.value('error');
|
|
383
|
-
p.showError(result.message, t);
|
|
384
271
|
};
|
|
385
|
-
var fail = (p.fail ? p.fail : _fail);
|
|
272
|
+
var fail = (p && p.fail ? p.fail : _fail);
|
|
386
273
|
var _postSave = function (obj, res, version, backOnSave) {
|
|
387
274
|
setRunning(false);
|
|
388
|
-
|
|
389
|
-
p.loading.hideLoading();
|
|
390
|
-
}
|
|
275
|
+
core_1.hideLoading(p1.loading);
|
|
391
276
|
var x = res;
|
|
392
|
-
var successMsg =
|
|
277
|
+
var successMsg = p1.resource.value('msg_save_success');
|
|
393
278
|
var newMod = flag.newMode;
|
|
394
|
-
var st = core_1.createEditStatus(p.status);
|
|
279
|
+
var st = core_1.createEditStatus(p ? p.status : undefined);
|
|
395
280
|
if (!isNaN(x)) {
|
|
396
281
|
if (x === st.success) {
|
|
397
282
|
succeed(obj, successMsg, version, backOnSave);
|
|
@@ -404,7 +289,7 @@ exports.useBaseEditOneWithProps = function (p) {
|
|
|
404
289
|
handleNotFound();
|
|
405
290
|
}
|
|
406
291
|
else {
|
|
407
|
-
edit_1.handleStatus(x, st,
|
|
292
|
+
edit_1.handleStatus(x, st, p1.resource.value, p1.showError);
|
|
408
293
|
}
|
|
409
294
|
}
|
|
410
295
|
}
|
|
@@ -412,7 +297,7 @@ exports.useBaseEditOneWithProps = function (p) {
|
|
|
412
297
|
var result = x;
|
|
413
298
|
if (result.status === st.success) {
|
|
414
299
|
succeed(obj, successMsg, version, backOnSave, result);
|
|
415
|
-
|
|
300
|
+
p1.showMessage(successMsg);
|
|
416
301
|
}
|
|
417
302
|
else if (result.errors && result.errors.length > 0) {
|
|
418
303
|
fail(result);
|
|
@@ -424,121 +309,90 @@ exports.useBaseEditOneWithProps = function (p) {
|
|
|
424
309
|
handleNotFound();
|
|
425
310
|
}
|
|
426
311
|
else {
|
|
427
|
-
edit_1.handleStatus(result.status, st,
|
|
312
|
+
edit_1.handleStatus(result.status, st, p1.resource.value, p1.showError);
|
|
428
313
|
}
|
|
429
314
|
}
|
|
430
315
|
};
|
|
431
|
-
var postSave = (p.postSave ? p.postSave : _postSave);
|
|
316
|
+
var postSave = (p && p.postSave ? p.postSave : _postSave);
|
|
432
317
|
var _handleDuplicateKey = function (result) {
|
|
433
|
-
var msg = core_1.message(
|
|
434
|
-
|
|
318
|
+
var msg = core_1.message(p1.resource.value, 'error_duplicate_key', 'error');
|
|
319
|
+
p1.showError(msg.message, msg.title);
|
|
435
320
|
};
|
|
436
|
-
var handleDuplicateKey = (p.handleDuplicateKey ? p.handleDuplicateKey : _handleDuplicateKey);
|
|
437
|
-
var
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
case 2: return [4, p.service.update(obj)];
|
|
454
|
-
case 3:
|
|
455
|
-
result = _a.sent();
|
|
456
|
-
postSave(obj, result, version, isBackO);
|
|
457
|
-
_a.label = 4;
|
|
458
|
-
case 4: return [3, 7];
|
|
459
|
-
case 5: return [4, p.service.insert(obj)];
|
|
460
|
-
case 6:
|
|
461
|
-
result = _a.sent();
|
|
462
|
-
postSave(obj, result, version, isBackO);
|
|
463
|
-
_a.label = 7;
|
|
464
|
-
case 7: return [2];
|
|
465
|
-
}
|
|
466
|
-
});
|
|
467
|
-
});
|
|
321
|
+
var handleDuplicateKey = (p && p.handleDuplicateKey ? p.handleDuplicateKey : _handleDuplicateKey);
|
|
322
|
+
var _doSave = function (obj, body, version, isBack) {
|
|
323
|
+
setRunning(true);
|
|
324
|
+
core_1.showLoading(p1.loading);
|
|
325
|
+
var isBackO = (isBack == null || isBack === undefined ? true : isBack);
|
|
326
|
+
var patchable = (p ? p.patchable : true);
|
|
327
|
+
if (flag.newMode === false) {
|
|
328
|
+
if (service.patch && patchable !== false && body && Object.keys(body).length > 0) {
|
|
329
|
+
service.patch(body).then(function (result) { return postSave(obj, result, version, isBackO); });
|
|
330
|
+
}
|
|
331
|
+
else {
|
|
332
|
+
service.update(obj).then(function (result) { return postSave(obj, result, version, isBackO); });
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
else {
|
|
336
|
+
service.insert(obj).then(function (result) { return postSave(obj, result, version, isBackO); });
|
|
337
|
+
}
|
|
468
338
|
};
|
|
469
|
-
var
|
|
339
|
+
var doSave = (p && p.doSave ? p.doSave : _doSave);
|
|
470
340
|
var _load = function (_id, callback) {
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
if (!(id != null && id !== '')) return [3, 6];
|
|
479
|
-
_a.label = 1;
|
|
480
|
-
case 1:
|
|
481
|
-
_a.trys.push([1, 3, 4, 5]);
|
|
482
|
-
return [4, p.service.load(id)];
|
|
483
|
-
case 2:
|
|
484
|
-
obj = _a.sent();
|
|
485
|
-
if (!obj) {
|
|
486
|
-
handleNotFound(p.refForm.current);
|
|
487
|
-
}
|
|
488
|
-
else {
|
|
489
|
-
setFlag({ newMode: false, originalModel: reflectx_1.clone(obj) });
|
|
490
|
-
if (callback) {
|
|
491
|
-
callback(obj, showModel);
|
|
492
|
-
}
|
|
493
|
-
else {
|
|
494
|
-
showModel(obj);
|
|
495
|
-
}
|
|
496
|
-
}
|
|
497
|
-
return [3, 5];
|
|
498
|
-
case 3:
|
|
499
|
-
err_1 = _a.sent();
|
|
500
|
-
data = (err_1 && err_1.response) ? err_1.response : err_1;
|
|
501
|
-
r = p.resourceService;
|
|
502
|
-
title = r.value('error');
|
|
503
|
-
msg = r.value('error_internal');
|
|
504
|
-
if (data && data.status === 404) {
|
|
505
|
-
handleNotFound(p.refForm.current);
|
|
506
|
-
}
|
|
507
|
-
else {
|
|
508
|
-
if (data.status && !isNaN(data.status)) {
|
|
509
|
-
msg = core_1.messageByHttpStatus(data.status, r.value);
|
|
510
|
-
}
|
|
511
|
-
if (data && (data.status === 401 || data.status === 403)) {
|
|
512
|
-
formutil_1.readOnly(p.refForm.current);
|
|
513
|
-
}
|
|
514
|
-
p.showError(msg, title);
|
|
515
|
-
}
|
|
516
|
-
return [3, 5];
|
|
517
|
-
case 4:
|
|
518
|
-
setRunning(false);
|
|
519
|
-
if (p.loading) {
|
|
520
|
-
p.loading.hideLoading();
|
|
521
|
-
}
|
|
522
|
-
return [7];
|
|
523
|
-
case 5: return [3, 7];
|
|
524
|
-
case 6:
|
|
525
|
-
obj = createModel();
|
|
526
|
-
setFlag({ newMode: true, originalModel: null });
|
|
527
|
-
if (callback) {
|
|
528
|
-
callback(obj, showModel);
|
|
529
|
-
}
|
|
530
|
-
else {
|
|
531
|
-
showModel(obj);
|
|
532
|
-
}
|
|
533
|
-
_a.label = 7;
|
|
534
|
-
case 7: return [2];
|
|
341
|
+
var id = _id;
|
|
342
|
+
if (id != null && id !== '') {
|
|
343
|
+
setRunning(true);
|
|
344
|
+
core_1.showLoading(p1.loading);
|
|
345
|
+
service.load(id).then(function (obj) {
|
|
346
|
+
if (!obj) {
|
|
347
|
+
handleNotFound(refForm.current);
|
|
535
348
|
}
|
|
349
|
+
else {
|
|
350
|
+
setFlag({ newMode: false, originalModel: reflectx_1.clone(obj) });
|
|
351
|
+
if (callback) {
|
|
352
|
+
callback(obj, showModel);
|
|
353
|
+
}
|
|
354
|
+
else {
|
|
355
|
+
showModel(obj);
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
setRunning(false);
|
|
359
|
+
core_1.hideLoading(p1.loading);
|
|
360
|
+
}).catch(function (err) {
|
|
361
|
+
var data = (err && err.response) ? err.response : err;
|
|
362
|
+
var r = p1.resource;
|
|
363
|
+
var title = r.value('error');
|
|
364
|
+
var msg = r.value('error_internal');
|
|
365
|
+
if (data && data.status === 404) {
|
|
366
|
+
handleNotFound(refForm.current);
|
|
367
|
+
}
|
|
368
|
+
else {
|
|
369
|
+
if (data.status && !isNaN(data.status)) {
|
|
370
|
+
msg = core_1.messageByHttpStatus(data.status, r.value);
|
|
371
|
+
}
|
|
372
|
+
if (data && (data.status === 401 || data.status === 403)) {
|
|
373
|
+
formutil_1.readOnly(refForm.current);
|
|
374
|
+
}
|
|
375
|
+
p1.showError(msg, title);
|
|
376
|
+
}
|
|
377
|
+
setRunning(false);
|
|
378
|
+
core_1.hideLoading(p1.loading);
|
|
536
379
|
});
|
|
537
|
-
}
|
|
380
|
+
}
|
|
381
|
+
else {
|
|
382
|
+
var obj = createModel();
|
|
383
|
+
setFlag({ newMode: true, originalModel: undefined });
|
|
384
|
+
if (callback) {
|
|
385
|
+
callback(obj, showModel);
|
|
386
|
+
}
|
|
387
|
+
else {
|
|
388
|
+
showModel(obj);
|
|
389
|
+
}
|
|
390
|
+
}
|
|
538
391
|
};
|
|
539
|
-
var load = (p.load ? p.load : _load);
|
|
392
|
+
var load = (p && p.load ? p.load : _load);
|
|
540
393
|
return __assign(__assign({}, baseProps), {
|
|
541
|
-
back: back,
|
|
394
|
+
back: back,
|
|
395
|
+
refForm: refForm, ui: p1.ui, resource: p1.resource.resource(), flag: flag,
|
|
542
396
|
running: running,
|
|
543
397
|
setRunning: setRunning,
|
|
544
398
|
updateDateState: updateDateState,
|
|
@@ -546,15 +400,14 @@ exports.useBaseEditOneWithProps = function (p) {
|
|
|
546
400
|
getModelName: getModelName,
|
|
547
401
|
resetState: resetState,
|
|
548
402
|
handleNotFound: handleNotFound,
|
|
549
|
-
getModel: getModel, createNewModel: createModel, newOnClick:
|
|
550
|
-
saveOnClick: saveOnClick,
|
|
403
|
+
getModel: getModel, createNewModel: createModel, newOnClick: create, save: save,
|
|
551
404
|
onSave: onSave,
|
|
552
405
|
confirm: confirm,
|
|
553
|
-
validate: validate, showMessage:
|
|
406
|
+
validate: validate, showMessage: p1.showMessage, succeed: succeed,
|
|
554
407
|
fail: fail,
|
|
555
408
|
postSave: postSave,
|
|
556
409
|
handleDuplicateKey: handleDuplicateKey,
|
|
557
410
|
load: load,
|
|
558
|
-
|
|
411
|
+
doSave: doSave
|
|
559
412
|
});
|
|
560
413
|
};
|