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