react-hook-core 0.2.1 → 0.2.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-hook-core",
3
- "version": "0.2.1",
3
+ "version": "0.2.3",
4
4
  "description": "react",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./src/index.ts",
package/src/edit.ts CHANGED
@@ -116,7 +116,7 @@ export function createModel<T>(attributes?: Attributes): T {
116
116
  }
117
117
  return obj;
118
118
  }
119
-
119
+ /*
120
120
  export function initPropertyNullInModel<T>(obj: T, m?: Attributes): T {
121
121
  if (!m) {
122
122
  const x: any = {};
@@ -130,7 +130,6 @@ export function initPropertyNullInModel<T>(obj: T, m?: Attributes): T {
130
130
  }
131
131
  return obj;
132
132
  }
133
- /*
134
133
  export function handleStatus(x: number|string, st: EditStatusConfig, gv: (k: string, p?: any) => string, se: (m: string, title?: string, detail?: string, callback?: () => void) => void): void {
135
134
  const title = gv('error');
136
135
  if (x === st.version_error) {
package/src/index.ts CHANGED
@@ -12,7 +12,6 @@ export * from './update';
12
12
  export * from './useSearch';
13
13
  export * from './useMessage';
14
14
  export * from './useEdit';
15
- export * from './components';
16
15
  export * from './search';
17
16
  export * from './reflect';
18
17
  export * from './com';
package/src/useEdit.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import {useEffect, useState} from 'react';
2
2
  import {useNavigate, useParams} from 'react-router';
3
3
  import {Attributes, buildId, ErrorMessage, getModelName as getModelName2, hideLoading, initForm, LoadingService, Locale, message, messageByHttpStatus, ResourceService, showLoading, UIService} from './core';
4
- import {build, createModel as createModel2, EditParameter, GenericService, handleVersion, initPropertyNullInModel} from './edit';
4
+ import {build, createModel as createModel2, EditParameter, GenericService, handleVersion} from './edit';
5
5
  import {focusFirstError, setReadOnly} from './formutil';
6
6
  import {DispatchWithCallback, useMergeState} from './merge';
7
7
  import {clone, makeDiff} from './reflect';
@@ -172,12 +172,6 @@ export const useCoreEdit = <T, ID, S, P>(
172
172
  } = p; */
173
173
  const navigate = useNavigate();
174
174
  // const addable = (p && p.patchable !== false ? true : undefined);
175
- const back = (event?: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {
176
- if (event) {
177
- event.preventDefault();
178
- }
179
- navigate(-1);
180
- };
181
175
 
182
176
  const [running, setRunning] = useState<boolean>();
183
177
 
@@ -233,6 +227,26 @@ export const useCoreEdit = <T, ID, S, P>(
233
227
  };
234
228
  const getModel = (p && p.getModel ? p.getModel : _getModel);
235
229
 
230
+ const back = (event?: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {
231
+ if (event) {
232
+ event.preventDefault();
233
+ }
234
+ if (flag.newMode === true) {
235
+ navigate(-1);
236
+ } else {
237
+ const obj = getModel();
238
+ const diffObj = makeDiff(flag.originalModel, obj);
239
+ const objKeys = Object.keys(diffObj);
240
+ if (objKeys.length === 0) {
241
+ navigate(-1);
242
+ } else {
243
+ const msg = message(p1.resource.value, 'msg_confirm_back', 'confirm', 'yes', 'no');
244
+ p1.confirm(msg.message, msg.title, () => {
245
+ navigate(-1);
246
+ }, msg.no, msg.yes);
247
+ }
248
+ }
249
+ };
236
250
  const _createModel = (): T => {
237
251
  const metadata = (p && p.metadata ? p.metadata : (service.metadata ? service.metadata() : undefined));
238
252
  if (metadata) {
@@ -287,7 +301,7 @@ export const useCoreEdit = <T, ID, S, P>(
287
301
  }, msg.no, msg.yes);
288
302
  });
289
303
  } else {
290
- const diffObj = makeDiff(initPropertyNullInModel(flag.originalModel, metadata), obj, keys, version);
304
+ const diffObj = makeDiff(flag.originalModel, obj, keys, version);
291
305
  const objKeys = Object.keys(diffObj);
292
306
  if (objKeys.length === 0) {
293
307
  p1.showMessage(p1.resource.value('msg_no_change'));
@@ -435,14 +449,14 @@ export const useCoreEdit = <T, ID, S, P>(
435
449
  const patchable = (p ? p.patchable : true);
436
450
  if (flag.newMode === false) {
437
451
  if (service.patch && patchable !== false && body && Object.keys(body).length > 0) {
438
- service.patch(body).then(result => {
439
- postSave(result, obj, version, true, isBackO);
452
+ service.patch(body).then((res: number|T|ErrorMessage[]) => {
453
+ postSave(res, obj, version, true, isBackO);
440
454
  }).catch(handleError);
441
455
  } else {
442
- service.update(obj).then(result => postSave(result, obj, version, false, isBackO)).catch(handleError);
456
+ service.update(obj).then((res: number|T|ErrorMessage[]) => postSave(res, obj, version, false, isBackO)).catch(handleError);
443
457
  }
444
458
  } else {
445
- service.insert(obj).then(result => postSave(result, obj, version, false, isBackO)).catch(handleError);
459
+ service.insert(obj).then((res: number|T|ErrorMessage[]) => postSave(res, obj, version, false, isBackO)).catch(handleError);
446
460
  }
447
461
  };
448
462
 
@@ -453,7 +467,7 @@ export const useCoreEdit = <T, ID, S, P>(
453
467
  if (id != null && id !== '') {
454
468
  setRunning(true);
455
469
  showLoading(p1.loading);
456
- service.load(id).then(obj => {
470
+ service.load(id).then((obj: T|null) => {
457
471
  if (!obj) {
458
472
  handleNotFound(refForm.current);
459
473
  } else {
@@ -466,7 +480,7 @@ export const useCoreEdit = <T, ID, S, P>(
466
480
  }
467
481
  setRunning(false);
468
482
  hideLoading(p1.loading);
469
- }).catch(err => {
483
+ }).catch((err: any) => {
470
484
  const data = (err && err.response) ? err.response : err;
471
485
  const r = p1.resource;
472
486
  const title = r.value('error');