react-hook-core 0.1.24 → 0.2.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/com.js CHANGED
@@ -6,7 +6,7 @@ function PageSizeSelect(p) {
6
6
  var g = p.sizes;
7
7
  var s = (!g || g.length === 0 ? core_1.pageSizes : g);
8
8
  var opts = s.map(function (pgSize) { return React.createElement('option', { key: pgSize, value: pgSize }, pgSize); });
9
- return React.createElement('select', { id: p.id, name: p.name, value: p.size, defaultValue: p.size, onChange: p.onChange }, opts);
9
+ return React.createElement('select', { id: p.id, name: p.name, defaultValue: p.size, onChange: p.onChange }, opts);
10
10
  }
11
11
  exports.PageSizeSelect = PageSizeSelect;
12
12
  function Search(p) {
package/lib/components.js CHANGED
@@ -635,7 +635,7 @@ var SearchComponent = (function (_super) {
635
635
  exports.SearchComponent = SearchComponent;
636
636
  var BaseEditComponent = (function (_super) {
637
637
  __extends(BaseEditComponent, _super);
638
- function BaseEditComponent(props, resourceService, showMessage, showError, confirm, getLocale, ui, loading, status, patchable, backOnSaveSuccess) {
638
+ function BaseEditComponent(props, resourceService, showMessage, showError, confirm, getLocale, ui, loading, patchable, backOnSaveSuccess) {
639
639
  var _this = _super.call(this, props, getLocale, (ui ? ui.removeError : undefined)) || this;
640
640
  _this.resourceService = resourceService;
641
641
  _this.showMessage = showMessage;
@@ -672,7 +672,6 @@ var BaseEditComponent = (function (_super) {
672
672
  _this.onSave(_this.backOnSuccess);
673
673
  };
674
674
  _this.resource = resourceService.resource();
675
- _this.status = core_1.createEditStatus(status);
676
675
  if (patchable === false) {
677
676
  _this.patchable = patchable;
678
677
  }
@@ -857,7 +856,6 @@ var BaseEditComponent = (function (_super) {
857
856
  BaseEditComponent.prototype.postSave = function (res, origin, isPatch, backOnSave) {
858
857
  this.running = false;
859
858
  core_1.hideLoading(this.loading);
860
- var st = this.status;
861
859
  var newMod = this.newMode;
862
860
  var successMsg = (newMod ? this.insertSuccessMsg : this.updateSuccessMsg);
863
861
  var x = res;
@@ -866,18 +864,18 @@ var BaseEditComponent = (function (_super) {
866
864
  this.fail(x);
867
865
  }
868
866
  else if (!isNaN(x)) {
869
- if (x === st.success) {
867
+ if (x > 0) {
870
868
  this.succeed(successMsg, origin, backOnSave);
871
869
  }
872
870
  else {
873
- if (newMod && x === st.duplicate_key) {
871
+ if (newMod && x <= 0) {
874
872
  this.handleDuplicateKey();
875
873
  }
876
- else if (!newMod && x === st.not_found) {
874
+ else if (!newMod && x === 0) {
877
875
  this.handleNotFound();
878
876
  }
879
877
  else {
880
- edit_1.handleStatus(x, st, r.value, this.showError);
878
+ this.showError(r.value('error_version'), r.value('error'));
881
879
  }
882
880
  }
883
881
  }
@@ -907,8 +905,8 @@ var BaseEditComponent = (function (_super) {
907
905
  exports.BaseEditComponent = BaseEditComponent;
908
906
  var EditComponent = (function (_super) {
909
907
  __extends(EditComponent, _super);
910
- function EditComponent(props, service, param, showMessage, showError, confirm, getLocale, uis, loading, status, patchable, backOnSaveSuccess) {
911
- var _this = _super.call(this, props, input_1.getResource(param), input_1.getMsgFunc(param, showMessage), input_1.getErrorFunc(param, showError), input_1.getConfirmFunc(param, confirm), input_1.getLocaleFunc(param, getLocale), input_1.getUIService(param, uis), input_1.getLoadingFunc(param, loading), input_1.getEditStatusFunc(param, status), patchable, backOnSaveSuccess) || this;
908
+ function EditComponent(props, service, param, showMessage, showError, confirm, getLocale, uis, loading, patchable, backOnSaveSuccess) {
909
+ var _this = _super.call(this, props, input_1.getResource(param), input_1.getMsgFunc(param, showMessage), input_1.getErrorFunc(param, showError), input_1.getConfirmFunc(param, confirm), input_1.getLocaleFunc(param, getLocale), input_1.getUIService(param, uis), input_1.getLoadingFunc(param, loading), patchable, backOnSaveSuccess) || this;
912
910
  _this.service = service;
913
911
  if (service.metadata) {
914
912
  var metadata = service.metadata();
@@ -1020,7 +1018,7 @@ var EditComponent = (function (_super) {
1020
1018
  exports.EditComponent = EditComponent;
1021
1019
  var BaseDiffApprComponent = (function (_super) {
1022
1020
  __extends(BaseDiffApprComponent, _super);
1023
- function BaseDiffApprComponent(props, keys, resourceService, showMessage, showError, loading, status) {
1021
+ function BaseDiffApprComponent(props, keys, resourceService, showMessage, showError, loading) {
1024
1022
  var _this = _super.call(this, props) || this;
1025
1023
  _this.keys = keys;
1026
1024
  _this.resourceService = resourceService;
@@ -1035,7 +1033,6 @@ var BaseDiffApprComponent = (function (_super) {
1035
1033
  _this.postReject = _this.postReject.bind(_this);
1036
1034
  _this.format = _this.format.bind(_this);
1037
1035
  _this.handleNotFound = _this.handleNotFound.bind(_this);
1038
- _this.status = core_1.createDiffStatus(status);
1039
1036
  _this.state = {
1040
1037
  disabled: false
1041
1038
  };
@@ -1048,37 +1045,29 @@ var BaseDiffApprComponent = (function (_super) {
1048
1045
  BaseDiffApprComponent.prototype.postApprove = function (s, err) {
1049
1046
  this.setState({ disabled: true });
1050
1047
  var r = this.resourceService;
1051
- var st = this.status;
1052
- if (s === st.success) {
1048
+ if (s > 0) {
1053
1049
  this.showMessage(r.value('msg_approve_success'));
1054
1050
  }
1055
- else if (s === st.version_error) {
1056
- var msg = core_2.message(r.value, 'msg_approve_version_error', 'error');
1057
- this.showError(msg.message, msg.title);
1058
- }
1059
- else if (s === st.not_found) {
1051
+ else if (s === 0) {
1060
1052
  this.handleNotFound();
1061
1053
  }
1062
1054
  else {
1063
- core_2.error(err, r.value, this.showError);
1055
+ var msg = core_2.message(r.value, 'msg_approve_version_error', 'error');
1056
+ this.showError(msg.message, msg.title);
1064
1057
  }
1065
1058
  };
1066
1059
  BaseDiffApprComponent.prototype.postReject = function (status, err) {
1067
1060
  this.setState({ disabled: true });
1068
1061
  var r = this.resourceService;
1069
- var st = this.status;
1070
- if (status === st.success) {
1062
+ if (status > 0) {
1071
1063
  this.showMessage(r.value('msg_reject_success'));
1072
1064
  }
1073
- else if (status === st.version_error) {
1074
- var msg = core_2.message(r.value, 'msg_approve_version_error', 'error');
1075
- this.showError(msg.message, msg.title);
1076
- }
1077
- else if (status === st.not_found) {
1065
+ else if (status === 0) {
1078
1066
  this.handleNotFound();
1079
1067
  }
1080
1068
  else {
1081
- core_2.error(err, r.value, this.showError);
1069
+ var msg = core_2.message(r.value, 'msg_approve_version_error', 'error');
1070
+ this.showError(msg.message, msg.title);
1082
1071
  }
1083
1072
  };
1084
1073
  BaseDiffApprComponent.prototype.format = function () {
@@ -1132,8 +1121,8 @@ var BaseDiffApprComponent = (function (_super) {
1132
1121
  exports.BaseDiffApprComponent = BaseDiffApprComponent;
1133
1122
  var DiffApprComponent = (function (_super) {
1134
1123
  __extends(DiffApprComponent, _super);
1135
- function DiffApprComponent(props, service, param, showMessage, showError, loading, status) {
1136
- var _this = _super.call(this, props, service.keys(), input_1.getResource(param), input_1.getMsgFunc(param, showMessage), input_1.getErrorFunc(param, showError), input_1.getLoadingFunc(param, loading), input_1.getDiffStatusFunc(param, status)) || this;
1124
+ function DiffApprComponent(props, service, param, showMessage, showError, loading) {
1125
+ var _this = _super.call(this, props, service.keys(), input_1.getResource(param), input_1.getMsgFunc(param, showMessage), input_1.getErrorFunc(param, showError), input_1.getLoadingFunc(param, loading)) || this;
1137
1126
  _this.service = service;
1138
1127
  _this.approve = _this.approve.bind(_this);
1139
1128
  _this.reject = _this.reject.bind(_this);
package/lib/core.js CHANGED
@@ -3,34 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  var formutil_1 = require("./formutil");
4
4
  exports.pageSizes = [12, 24, 60, 100, 120, 180, 300, 600];
5
5
  exports.size = exports.pageSizes;
6
- function createEditStatus(status) {
7
- if (status) {
8
- return status;
9
- }
10
- var s = {
11
- duplicate_key: 0,
12
- not_found: 0,
13
- success: 1,
14
- version_error: -1,
15
- error: 2,
16
- data_corrupt: 4
17
- };
18
- return s;
19
- }
20
- exports.createEditStatus = createEditStatus;
21
- function createDiffStatus(status) {
22
- if (status) {
23
- return status;
24
- }
25
- var s = {
26
- not_found: 0,
27
- success: 1,
28
- version_error: 2,
29
- error: 4
30
- };
31
- return s;
32
- }
33
- exports.createDiffStatus = createDiffStatus;
34
6
  var resource = (function () {
35
7
  function resource() {
36
8
  }
package/lib/edit.js CHANGED
@@ -105,19 +105,6 @@ function initPropertyNullInModel(obj, m) {
105
105
  return obj;
106
106
  }
107
107
  exports.initPropertyNullInModel = initPropertyNullInModel;
108
- function handleStatus(x, st, gv, se) {
109
- var title = gv('error');
110
- if (x === st.version_error) {
111
- se(gv('error_version'), title);
112
- }
113
- else if (x === st.data_corrupt) {
114
- se(gv('error_data_corrupt'), title);
115
- }
116
- else {
117
- se(gv('error_internal'), title);
118
- }
119
- }
120
- exports.handleStatus = handleStatus;
121
108
  function handleVersion(obj, version) {
122
109
  if (obj && version && version.length > 0) {
123
110
  var v = obj[version];
package/lib/index.js CHANGED
@@ -53,8 +53,7 @@ exports.Loading = function (props) {
53
53
  }
54
54
  };
55
55
  exports.CurrencyInput = function (props) {
56
- var _a;
57
- var _b = react_1.useState(undefined), state = _b[0], setState = _b[1];
56
+ var _a = react_1.useState(undefined), state = _a[0], setState = _a[1];
58
57
  react_1.useEffect(function () {
59
58
  setState(props.value);
60
59
  }, [props.value]);
@@ -68,33 +67,29 @@ exports.CurrencyInput = function (props) {
68
67
  props.onChangeNumber(parseFloat(v1));
69
68
  }
70
69
  };
71
- var ip = (_a = {
72
- value: state,
73
- className: props === null || props === void 0 ? void 0 : props.className,
74
- name: props === null || props === void 0 ? void 0 : props.name,
75
- onChange: onChange,
76
- disabled: props === null || props === void 0 ? void 0 : props.disabled
77
- },
78
- _a['data-field'] = props['data-field'],
79
- _a.min = props === null || props === void 0 ? void 0 : props.min,
80
- _a.max = props === null || props === void 0 ? void 0 : props.max,
81
- _a.type = props === null || props === void 0 ? void 0 : props.type,
82
- _a.onBlur = function (e) {
83
- if (props.allowZero && e.target.value === '0') {
84
- setState('0');
85
- return;
86
- }
87
- if (props.locale && props.currencyOnBlur) {
88
- props.currencyOnBlur(e, props.locale, props.currencyCode, props.symbol);
89
- }
90
- setTimeout(function () {
91
- var v2 = e.target.value;
92
- setState(v2);
93
- }, 50);
94
- },
95
- _a);
96
- return React.createElement("input", { className: ip.className, onBlur: ip.onBlur, type: ip.type, name: ip.name, onChange: ip.onChange, disabled: ip.disabled, "data-field": ip['data-field'], min: ip.min, max: ip.max, value: state });
70
+ var onBlur = function (e) {
71
+ if (props.allowZero && e.target.value === '0') {
72
+ setState('0');
73
+ return;
74
+ }
75
+ if (props.locale && props.currencyOnBlur) {
76
+ props.currencyOnBlur(e, props.locale, props.currencyCode, props.symbol);
77
+ }
78
+ setTimeout(function () {
79
+ var v2 = e.target.value;
80
+ setState(v2);
81
+ }, 50);
82
+ };
83
+ return React.createElement("input", { className: props.className, onBlur: onBlur, type: props.type, name: props.name, onChange: props.onChange ? props.onChange : onChange, disabled: props.disabled, "data-field": props['data-field'], min: props.min, max: props.max, value: state });
97
84
  };
85
+ function getParam(url, i) {
86
+ var ps = url.split('/');
87
+ if (!i || i < 0) {
88
+ i = 0;
89
+ }
90
+ return ps[ps.length - 1 - i];
91
+ }
92
+ exports.getParam = getParam;
98
93
  function formatDate(date, format) {
99
94
  if (!date) {
100
95
  return '';
package/lib/input.js CHANGED
@@ -60,17 +60,3 @@ function getErrorFunc(p, showErr) {
60
60
  return p.showError;
61
61
  }
62
62
  exports.getErrorFunc = getErrorFunc;
63
- function getEditStatusFunc(p, status) {
64
- if (status) {
65
- return status;
66
- }
67
- return p.status;
68
- }
69
- exports.getEditStatusFunc = getEditStatusFunc;
70
- function getDiffStatusFunc(p, status) {
71
- if (status) {
72
- return status;
73
- }
74
- return p.status;
75
- }
76
- exports.getDiffStatusFunc = getDiffStatusFunc;
package/lib/useEdit.js CHANGED
@@ -100,7 +100,6 @@ exports.useEditOne = function (p) {
100
100
  };
101
101
  exports.useCoreEdit = function (refForm, initialState, service, p1, p, props) {
102
102
  var navigate = react_router_1.useNavigate();
103
- var addable = (p && p.patchable !== false ? true : undefined);
104
103
  var back = function (event) {
105
104
  if (event) {
106
105
  event.preventDefault();
@@ -119,7 +118,6 @@ exports.useCoreEdit = function (refForm, initialState, service, p1, p, props) {
119
118
  var _b = merge_1.useMergeState({
120
119
  newMode: false,
121
120
  setBack: false,
122
- addable: addable,
123
121
  readOnly: p ? p.readOnly : undefined,
124
122
  originalModel: undefined
125
123
  }), flag = _b[0], setFlag = _b[1];
@@ -179,7 +177,7 @@ exports.useCoreEdit = function (refForm, initialState, service, p1, p, props) {
179
177
  }
180
178
  };
181
179
  var _onSave = function (isBack) {
182
- if (flag.newMode === true && flag.addable === false) {
180
+ if (flag.newMode === true) {
183
181
  var m = core_1.message(p1.resource.value, 'error_permission_add', 'error_permission');
184
182
  p1.showError(m.message, m.title);
185
183
  return;
@@ -245,7 +243,7 @@ exports.useCoreEdit = function (refForm, initialState, service, p1, p, props) {
245
243
  }
246
244
  };
247
245
  var validate = (p && p.validate ? p.validate : _validate);
248
- var _succeed = function (origin, msg, version, isBack, model) {
246
+ var _succeed = function (msg, origin, version, isBack, model) {
249
247
  if (model) {
250
248
  setFlag({ newMode: false });
251
249
  if (model && flag.setBack === true) {
@@ -314,29 +312,25 @@ exports.useCoreEdit = function (refForm, initialState, service, p1, p, props) {
314
312
  var x = r;
315
313
  var successMsg = p1.resource.value('msg_save_success');
316
314
  var newMod = flag.newMode;
317
- var st = core_1.createEditStatus(p ? p.status : undefined);
318
315
  if (Array.isArray(x)) {
319
316
  fail(x);
320
317
  }
321
318
  else if (!isNaN(x)) {
322
- if (x === st.success) {
323
- succeed(origin, successMsg, version, backOnSave);
319
+ if (x > 0) {
320
+ succeed(successMsg, origin, version, backOnSave);
324
321
  }
325
322
  else {
326
- if (newMod && x === st.duplicate_key) {
323
+ if (newMod && x <= 0) {
327
324
  handleDuplicateKey();
328
325
  }
329
- else if (!newMod && x === st.not_found) {
326
+ else if (!newMod && x === 0) {
330
327
  handleNotFound();
331
328
  }
332
- else if (!newMod && x === st.version_error) {
329
+ else {
333
330
  var title = p1.resource.value('error');
334
331
  var err = p1.resource.value('error_version');
335
332
  p1.showError(err, title);
336
333
  }
337
- else {
338
- edit_1.handleStatus(x, st, p1.resource.value, p1.showError);
339
- }
340
334
  }
341
335
  }
342
336
  else {
@@ -348,10 +342,10 @@ exports.useCoreEdit = function (refForm, initialState, service, p1, p, props) {
348
342
  var k = keys_1[_i];
349
343
  a[k] = result[k];
350
344
  }
351
- succeed(a, successMsg, undefined, backOnSave);
345
+ succeed(successMsg, a, undefined, backOnSave, a);
352
346
  }
353
347
  else {
354
- succeed(origin, successMsg, version, backOnSave, r);
348
+ succeed(successMsg, origin, version, backOnSave, r);
355
349
  }
356
350
  p1.showMessage(successMsg);
357
351
  }
package/lib/useSearch.js CHANGED
@@ -70,18 +70,6 @@ function mergeParam(p) {
70
70
  if (p.hideFilter === undefined) {
71
71
  p.hideFilter = true;
72
72
  }
73
- if (p.addable === undefined) {
74
- p.addable = true;
75
- }
76
- if (p.editable === undefined) {
77
- p.editable = true;
78
- }
79
- if (p.approvable === undefined) {
80
- p.approvable = true;
81
- }
82
- if (p.deletable === undefined) {
83
- p.deletable = true;
84
- }
85
73
  return p;
86
74
  }
87
75
  else {
@@ -91,10 +79,6 @@ function mergeParam(p) {
91
79
  pageSizes: core_1.pageSizes,
92
80
  pageMaxSize: 7,
93
81
  hideFilter: true,
94
- addable: true,
95
- editable: true,
96
- approvable: true,
97
- deletable: true
98
82
  };
99
83
  }
100
84
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-hook-core",
3
- "version": "0.1.24",
3
+ "version": "0.2.0",
4
4
  "description": "react",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./src/index.ts",
package/src/com.ts CHANGED
@@ -12,7 +12,7 @@ export function PageSizeSelect(p: PageSizeProps) {
12
12
  const g = p.sizes;
13
13
  const s = (!g || g.length === 0 ? pageSizes : g);
14
14
  const opts = s.map(pgSize => React.createElement('option', { key: pgSize, value: pgSize }, pgSize));
15
- return React.createElement('select', { id: p.id, name: p.name, value: p.size, defaultValue: p.size, onChange: p.onChange }, opts);
15
+ return React.createElement('select', { id: p.id, name: p.name, defaultValue: p.size, onChange: p.onChange }, opts);
16
16
  }
17
17
  export interface Props {
18
18
  id?: string;
package/src/components.ts CHANGED
@@ -1,10 +1,10 @@
1
1
  import * as React from 'react';
2
- import {BaseDiffState, createDiffStatus, createEditStatus, DiffApprService, DiffParameter, DiffState, DiffStatusConfig, handleToggle, hideLoading, showLoading} from './core';
3
- import {Attributes, EditStatusConfig, error, ErrorMessage, Filter, getCurrencyCode, getModelName as getModelName2, initForm, LoadingService, Locale, message, messageByHttpStatus, PageChange, pageSizes, removePhoneFormat, ResourceService, SearchParameter, SearchResult, SearchService, SearchState, StringMap, UIService, ViewParameter, ViewService} from './core';
2
+ import {BaseDiffState, DiffApprService, DiffParameter, DiffState, handleToggle, hideLoading, showLoading} from './core';
3
+ import {Attributes, error, ErrorMessage, Filter, getCurrencyCode, getModelName as getModelName2, initForm, LoadingService, Locale, message, messageByHttpStatus, PageChange, pageSizes, removePhoneFormat, ResourceService, SearchParameter, SearchResult, SearchService, SearchState, StringMap, UIService, ViewParameter, ViewService} from './core';
4
4
  import {formatDiffModel, getDataFields} from './diff';
5
- import {build, createModel as createModel2, EditParameter, GenericService, handleStatus, handleVersion, initPropertyNullInModel} from './edit';
5
+ import {build, createModel as createModel2, EditParameter, GenericService, handleVersion, initPropertyNullInModel} from './edit';
6
6
  import {focusFirstError, readOnly} from './formutil';
7
- import {getAutoSearch, getConfirmFunc, getDiffStatusFunc, getEditStatusFunc, getErrorFunc, getLoadingFunc, getLocaleFunc, getMsgFunc, getResource, getUIService} from './input';
7
+ import {getAutoSearch, getConfirmFunc, getErrorFunc, getLoadingFunc, getLocaleFunc, getMsgFunc, getResource, getUIService} from './input';
8
8
  import {clone, diff, makeDiff} from './reflect';
9
9
  import {buildFromUrl} from './route';
10
10
  import {addParametersIntoUrl, append, buildMessage, changePage, changePageSize, formatResults, getFieldsFromForm, getModel, handleAppend, handleSortEvent, initFilter, mergeFilter as mergeFilter2, more, Pagination, reset, showPaging, Sortable, validate} from './search';
@@ -702,11 +702,11 @@ export abstract class BaseEditComponent<T, P, S> extends BaseComponent<P, S> {
702
702
  getLocale?: () => Locale,
703
703
  protected ui?: UIService,
704
704
  protected loading?: LoadingService,
705
- status?: EditStatusConfig,
705
+ // status?: EditStatusConfig,
706
706
  patchable?: boolean, backOnSaveSuccess?: boolean) {
707
707
  super(props, getLocale, (ui ? ui.removeError : undefined));
708
708
  this.resource = resourceService.resource();
709
- this.status = createEditStatus(status);
709
+ // this.status = createEditStatus(status);
710
710
  if (patchable === false) {
711
711
  this.patchable = patchable;
712
712
  }
@@ -739,7 +739,7 @@ export abstract class BaseEditComponent<T, P, S> extends BaseComponent<P, S> {
739
739
  this.postSave = this.postSave.bind(this);
740
740
  this.handleDuplicateKey = this.handleDuplicateKey.bind(this);
741
741
  }
742
- status: EditStatusConfig;
742
+ // status: EditStatusConfig;
743
743
  protected name?: string;
744
744
  protected backOnSuccess = true;
745
745
  protected resource: StringMap;
@@ -930,7 +930,7 @@ export abstract class BaseEditComponent<T, P, S> extends BaseComponent<P, S> {
930
930
  postSave(res: number|string|T|ErrorMessage[], origin: T, isPatch: boolean, backOnSave?: boolean) {
931
931
  this.running = false;
932
932
  hideLoading(this.loading);
933
- const st = this.status;
933
+ // const st = this.status;
934
934
  const newMod = this.newMode;
935
935
  const successMsg = (newMod ? this.insertSuccessMsg : this.updateSuccessMsg);
936
936
  const x: any = res;
@@ -938,15 +938,15 @@ export abstract class BaseEditComponent<T, P, S> extends BaseComponent<P, S> {
938
938
  if (Array.isArray(x)) {
939
939
  this.fail(x);
940
940
  } else if (!isNaN(x)) {
941
- if (x === st.success) {
941
+ if (x > 0) {
942
942
  this.succeed(successMsg, origin, backOnSave);
943
943
  } else {
944
- if (newMod && x === st.duplicate_key) {
944
+ if (newMod && x <= 0) {
945
945
  this.handleDuplicateKey();
946
- } else if (!newMod && x === st.not_found) {
946
+ } else if (!newMod && x === 0) {
947
947
  this.handleNotFound();
948
948
  } else {
949
- handleStatus(x as number, st, r.value, this.showError);
949
+ this.showError(r.value('error_version'), r.value('error'));
950
950
  }
951
951
  }
952
952
  } else {
@@ -977,8 +977,8 @@ export class EditComponent<T, ID, P, S> extends BaseEditComponent<T, P, S> {
977
977
  confirm?: (m2: string, header: string, yesCallback?: () => void, btnLeftText?: string, btnRightText?: string, noCallback?: () => void) => void,
978
978
  getLocale?: (profile?: string) => Locale,
979
979
  uis?: UIService,
980
- loading?: LoadingService, status?: EditStatusConfig, patchable?: boolean, backOnSaveSuccess?: boolean) {
981
- super(props, getResource(param), getMsgFunc(param, showMessage), getErrorFunc(param, showError), getConfirmFunc(param, confirm), getLocaleFunc(param, getLocale), getUIService(param, uis), getLoadingFunc(param, loading), getEditStatusFunc(param, status), patchable, backOnSaveSuccess);
980
+ loading?: LoadingService, patchable?: boolean, backOnSaveSuccess?: boolean) {
981
+ super(props, getResource(param), getMsgFunc(param, showMessage), getErrorFunc(param, showError), getConfirmFunc(param, confirm), getLocaleFunc(param, getLocale), getUIService(param, uis), getLoadingFunc(param, loading), patchable, backOnSaveSuccess);
982
982
  if (service.metadata) {
983
983
  const metadata = service.metadata();
984
984
  if (metadata) {
@@ -1086,7 +1086,7 @@ export class BaseDiffApprComponent<T, ID, P, S extends BaseDiffState> extends Re
1086
1086
  protected showMessage: (msg: string, option?: string) => void,
1087
1087
  protected showError: (m: string, title?: string, detail?: string, callback?: () => void) => void,
1088
1088
  protected loading?: LoadingService,
1089
- status?: DiffStatusConfig,
1089
+ // status?: DiffStatusConfig,
1090
1090
  ) {
1091
1091
  super(props);
1092
1092
  // this._id = props['props'].match.params.id || props['props'].match.params.cId || props.match.params.cId;
@@ -1099,12 +1099,12 @@ export class BaseDiffApprComponent<T, ID, P, S extends BaseDiffState> extends Re
1099
1099
  this.postReject = this.postReject.bind(this);
1100
1100
  this.format = this.format.bind(this);
1101
1101
  this.handleNotFound = this.handleNotFound.bind(this);
1102
- this.status = createDiffStatus(status);
1102
+ // this.status = createDiffStatus(status);
1103
1103
  this.state = {
1104
1104
  disabled: false
1105
1105
  };
1106
1106
  }
1107
- status: DiffStatusConfig;
1107
+ // status: DiffStatusConfig;
1108
1108
  id?: ID;
1109
1109
  form?: HTMLFormElement;
1110
1110
  running?: boolean;
@@ -1118,32 +1118,28 @@ export class BaseDiffApprComponent<T, ID, P, S extends BaseDiffState> extends Re
1118
1118
  postApprove(s: number|string, err?: any) {
1119
1119
  this.setState({ disabled: true });
1120
1120
  const r = this.resourceService;
1121
- const st = this.status;
1122
- if (s === st.success) {
1121
+ // const st = this.status;
1122
+ if (s > 0) {
1123
1123
  this.showMessage(r.value('msg_approve_success'));
1124
- } else if (s === st.version_error) {
1125
- const msg = message(r.value, 'msg_approve_version_error', 'error');
1126
- this.showError(msg.message, msg.title);
1127
- } else if (s === st.not_found) {
1124
+ } else if (s === 0) {
1128
1125
  this.handleNotFound();
1129
1126
  } else {
1130
- error(err, r.value, this.showError);
1127
+ const msg = message(r.value, 'msg_approve_version_error', 'error');
1128
+ this.showError(msg.message, msg.title);
1131
1129
  }
1132
1130
  }
1133
1131
 
1134
1132
  postReject(status: number|string, err?: any) {
1135
1133
  this.setState({ disabled: true });
1136
1134
  const r = this.resourceService;
1137
- const st = this.status;
1138
- if (status === st.success) {
1135
+ // const st = this.status;
1136
+ if (status > 0) {
1139
1137
  this.showMessage(r.value('msg_reject_success'));
1140
- } else if (status === st.version_error) {
1141
- const msg = message(r.value, 'msg_approve_version_error', 'error');
1142
- this.showError(msg.message, msg.title);
1143
- } else if (status === st.not_found) {
1138
+ } else if (status === 0) {
1144
1139
  this.handleNotFound();
1145
1140
  } else {
1146
- error(err, r.value, this.showError);
1141
+ const msg = message(r.value, 'msg_approve_version_error', 'error');
1142
+ this.showError(msg.message, msg.title);
1147
1143
  }
1148
1144
  }
1149
1145
 
@@ -1197,9 +1193,8 @@ export class DiffApprComponent<T, ID, P, S extends DiffState<T>> extends BaseDif
1197
1193
  param: ResourceService|DiffParameter,
1198
1194
  showMessage?: (msg: string, option?: string) => void,
1199
1195
  showError?: (m: string, title?: string, detail?: string, callback?: () => void) => void,
1200
- loading?: LoadingService,
1201
- status?: DiffStatusConfig) {
1202
- super(props, service.keys(), getResource(param), getMsgFunc(param, showMessage), getErrorFunc(param, showError), getLoadingFunc(param, loading), getDiffStatusFunc(param, status));
1196
+ loading?: LoadingService) {
1197
+ super(props, service.keys(), getResource(param), getMsgFunc(param, showMessage), getErrorFunc(param, showError), getLoadingFunc(param, loading));
1203
1198
  this.approve = this.approve.bind(this);
1204
1199
  this.reject = this.reject.bind(this);
1205
1200
  this.formatFields = this.formatFields.bind(this);
package/src/core.ts CHANGED
@@ -35,6 +35,7 @@ export interface SearchParameter {
35
35
  loading?: LoadingService;
36
36
  auto?: boolean;
37
37
  }
38
+ /*
38
39
  export interface EditStatusConfig {
39
40
  duplicate_key: number | string;
40
41
  not_found: number | string;
@@ -75,7 +76,7 @@ export function createDiffStatus(status?: DiffStatusConfig): DiffStatusConfig {
75
76
  };
76
77
  return s;
77
78
  }
78
-
79
+ */
79
80
  export interface Filter {
80
81
  q?: string;
81
82
  page?: number;
@@ -116,7 +117,7 @@ export interface DiffParameter {
116
117
  showMessage: (msg: string, option?: string) => void;
117
118
  showError: (m: string, header?: string, detail?: string, callback?: () => void) => void;
118
119
  loading?: LoadingService;
119
- status?: DiffStatusConfig;
120
+ // status?: DiffStatusConfig;
120
121
  }
121
122
  export interface BaseDiffState {
122
123
  disabled: boolean;
package/src/edit.ts CHANGED
@@ -1,4 +1,4 @@
1
- import {Attribute, Attributes, EditStatusConfig, ErrorMessage, LoadingService, Locale, resource, ResourceService, UIService, ViewService} from './core';
1
+ import {Attribute, Attributes, ErrorMessage, LoadingService, Locale, resource, ResourceService, UIService, ViewService} from './core';
2
2
 
3
3
  export interface ResultInfo<T> {
4
4
  status: number|string;
@@ -14,7 +14,7 @@ export interface EditParameter {
14
14
  ui?: UIService;
15
15
  getLocale?: (profile?: string) => Locale;
16
16
  loading?: LoadingService;
17
- status?: EditStatusConfig;
17
+ // status?: EditStatusConfig;
18
18
  }
19
19
  export interface GenericService<T, ID, R> extends ViewService<T, ID> {
20
20
  patch?(obj: Partial<T>, ctx?: any): Promise<R>;
@@ -130,6 +130,7 @@ export function initPropertyNullInModel<T>(obj: T, m?: Attributes): T {
130
130
  }
131
131
  return obj;
132
132
  }
133
+ /*
133
134
  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 {
134
135
  const title = gv('error');
135
136
  if (x === st.version_error) {
@@ -140,6 +141,7 @@ export function handleStatus(x: number|string, st: EditStatusConfig, gv: (k: str
140
141
  se(gv('error_internal'), title);
141
142
  }
142
143
  }
144
+ */
143
145
  export function handleVersion<T>(obj: T, version?: string): void {
144
146
  if (obj && version && version.length > 0) {
145
147
  const v = (obj as any)[version];
package/src/index.ts CHANGED
@@ -120,34 +120,30 @@ export const CurrencyInput = (props: InputProps) => {
120
120
  props.onChangeNumber(parseFloat(v1));
121
121
  }
122
122
  };
123
- const ip = {
124
- value: state,
125
- className: props?.className,
126
- name: props?.name,
127
- onChange,
128
- disabled: props?.disabled,
129
- ['data-field']: props['data-field'],
130
- min: props?.min,
131
- max: props?.max,
132
- type: props?.type,
133
- onBlur: (e: FocusEvent<HTMLInputElement>) => {
134
- if (props.allowZero && e.target.value === '0') {
135
- setState('0');
136
- return;
137
- }
138
- if (props.locale && props.currencyOnBlur) {
139
- props.currencyOnBlur(e, props.locale, props.currencyCode, props.symbol);
140
- }
141
- setTimeout(() => {
142
- const v2 = e.target.value;
143
- setState(v2);
144
- }, 50);
145
- },
146
- };
147
- // return <input className={ip.className} type={ip.type} name={ip.name} onChange={ip.onChange} disabled={ip.disabled} data-field={ip['data-field']} min={ip.min} max={ip.max} value={state} />;
148
- return React.createElement("input", { className: ip.className, onBlur: ip.onBlur, type: ip.type, name: ip.name, onChange: ip.onChange, disabled: ip.disabled, "data-field": ip['data-field'], min: ip.min, max: ip.max, value: state });
123
+ const onBlur = (e: FocusEvent<HTMLInputElement>) => {
124
+ if (props.allowZero && e.target.value === '0') {
125
+ setState('0');
126
+ return;
127
+ }
128
+ if (props.locale && props.currencyOnBlur) {
129
+ props.currencyOnBlur(e, props.locale, props.currencyCode, props.symbol);
130
+ }
131
+ setTimeout(() => {
132
+ const v2 = e.target.value;
133
+ setState(v2);
134
+ }, 50);
135
+ }
136
+ // return <input className={props.className} onBlur={onBlur} type={props.type} name={props.name} onChange={props.onChange ? props.onChange : onChange} disabled={props.disabled} data-field={props['data-field']} min={props.min} max={props.max} value={state} />;
137
+ return React.createElement("input", { className: props.className, onBlur: onBlur, type: props.type, name: props.name, onChange: props.onChange ? props.onChange : onChange , disabled: props.disabled, "data-field": props['data-field'], min: props.min, max: props.max, value: state });
149
138
  };
150
139
  export type OnClick = React.MouseEvent<HTMLElement, MouseEvent>;
140
+ export function getParam(url: string, i?: number): string {
141
+ const ps = url.split('/');
142
+ if (!i || i < 0) {
143
+ i = 0;
144
+ }
145
+ return ps[ps.length - 1 - i];
146
+ }
151
147
  export function formatDate(date: Date | null | undefined, format: string): string {
152
148
  if (!date) {
153
149
  return '';
package/src/input.ts CHANGED
@@ -1,4 +1,4 @@
1
- import {DiffStatusConfig, EditStatusConfig, LoadingService, Locale, ResourceService, UIService} from './core';
1
+ import {LoadingService, Locale, ResourceService, UIService} from './core';
2
2
 
3
3
  interface ResourceInput {
4
4
  resource: ResourceService;
@@ -75,6 +75,7 @@ export function getErrorFunc(p: ResourceService|ShowErrorInput, showErr?: (m: st
75
75
  }
76
76
  return (p as any).showError;
77
77
  }
78
+ /*
78
79
  export interface EditStatusParameter {
79
80
  status?: EditStatusConfig;
80
81
  }
@@ -93,3 +94,4 @@ export function getDiffStatusFunc(p: ResourceService|DiffStatusParameter, status
93
94
  }
94
95
  return (p as any).status;
95
96
  }
97
+ */
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
- import {Attributes, buildId, createEditStatus, EditStatusConfig, ErrorMessage, getModelName as getModelName2, hideLoading, initForm, LoadingService, Locale, message, messageByHttpStatus, ResourceService, showLoading, UIService} from './core';
4
- import {build, createModel as createModel2, EditParameter, GenericService, handleStatus, handleVersion, initPropertyNullInModel} from './edit';
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';
5
5
  import {focusFirstError, readOnly as setReadOnly} from './formutil';
6
6
  import {DispatchWithCallback, useMergeState} from './merge';
7
7
  import {clone, makeDiff} from './reflect';
@@ -9,7 +9,7 @@ import {localeOf} from './state';
9
9
  import {useUpdate} from './update';
10
10
 
11
11
  export interface BaseEditComponentParam<T, ID> {
12
- status?: EditStatusConfig;
12
+ // status?: EditStatusConfig;
13
13
  backOnSuccess?: boolean;
14
14
  name?: string;
15
15
  metadata?: Attributes;
@@ -18,9 +18,9 @@ export interface BaseEditComponentParam<T, ID> {
18
18
  setBack?: boolean;
19
19
  patchable?: boolean;
20
20
 
21
- addable?: boolean;
21
+ // addable?: boolean;
22
22
  readOnly?: boolean;
23
- deletable?: boolean;
23
+ // deletable?: boolean;
24
24
 
25
25
  insertSuccessMsg?: string;
26
26
  updateSuccessMsg?: string;
@@ -171,7 +171,7 @@ export const useCoreEdit = <T, ID, S, P>(
171
171
  addable = true
172
172
  } = p; */
173
173
  const navigate = useNavigate();
174
- const addable = (p && p.patchable !== false ? true : undefined);
174
+ // const addable = (p && p.patchable !== false ? true : undefined);
175
175
  const back = (event?: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {
176
176
  if (event) {
177
177
  event.preventDefault();
@@ -193,7 +193,7 @@ export const useCoreEdit = <T, ID, S, P>(
193
193
  const [flag, setFlag] = useMergeState({
194
194
  newMode: false,
195
195
  setBack: false,
196
- addable,
196
+ // addable,
197
197
  readOnly: p ? p.readOnly : undefined,
198
198
  originalModel: undefined
199
199
  });
@@ -258,7 +258,7 @@ export const useCoreEdit = <T, ID, S, P>(
258
258
  };
259
259
 
260
260
  const _onSave = (isBack?: boolean) => {
261
- if (flag.newMode === true && flag.addable === false) {
261
+ if (flag.newMode === true) {
262
262
  const m = message(p1.resource.value, 'error_permission_add', 'error_permission');
263
263
  p1.showError(m.message, m.title);
264
264
  return;
@@ -388,23 +388,21 @@ export const useCoreEdit = <T, ID, S, P>(
388
388
  const x: any = r;
389
389
  const successMsg = p1.resource.value('msg_save_success');
390
390
  const newMod = flag.newMode;
391
- const st = createEditStatus(p ? p.status : undefined);
391
+ // const st = createEditStatus(p ? p.status : undefined);
392
392
  if (Array.isArray(x)) {
393
393
  fail(x);
394
394
  } else if (!isNaN(x)) {
395
- if (x === st.success) {
395
+ if (x > 0) {
396
396
  succeed(successMsg, origin, version, backOnSave);
397
397
  } else {
398
- if (newMod && x === st.duplicate_key) {
398
+ if (newMod && x <= 0) {
399
399
  handleDuplicateKey();
400
- } else if (!newMod && x === st.not_found) {
400
+ } else if (!newMod && x === 0) {
401
401
  handleNotFound();
402
- } else if (!newMod && x === st.version_error) {
402
+ } else {
403
403
  const title = p1.resource.value('error');
404
404
  const err = p1.resource.value('error_version');
405
405
  p1.showError(err, title);
406
- } else {
407
- handleStatus(x as number, st, p1.resource.value, p1.showError);
408
406
  }
409
407
  }
410
408
  } else {
package/src/useSearch.ts CHANGED
@@ -61,10 +61,10 @@ export interface HookPropsSearchParameter<T, S extends Filter, ST extends Search
61
61
  initialize?: (ld: (s: S, auto?: boolean) => void, setState2: DispatchWithCallback<Partial<ST>>, com?: SearchComponentState<T, S>) => void;
62
62
  }
63
63
  export interface SearchComponentParam<T, M extends Filter> {
64
- addable?: boolean;
65
- editable?: boolean;
66
- approvable?: boolean;
67
- deletable?: boolean;
64
+ // addable?: boolean;
65
+ // editable?: boolean;
66
+ // approvable?: boolean;
67
+ // deletable?: boolean;
68
68
 
69
69
  keys?: string[];
70
70
  sequenceNo?: string;
@@ -134,11 +134,11 @@ export interface SearchComponentState<T, S> extends Pagination, Sortable {
134
134
  hideFilter?: boolean;
135
135
 
136
136
  ignoreUrlParam?: boolean;
137
- viewable?: boolean;
138
- addable?: boolean;
139
- editable?: boolean;
140
- approvable?: boolean;
141
- deletable?: boolean;
137
+ // viewable?: boolean;
138
+ // addable?: boolean;
139
+ // editable?: boolean;
140
+ // approvable?: boolean;
141
+ // deletable?: boolean;
142
142
  }
143
143
 
144
144
  export function mergeParam<T, S extends Filter>(p?: SearchComponentParam<T, S>): SearchComponentParam<T, S> {
@@ -158,6 +158,7 @@ export function mergeParam<T, S extends Filter>(p?: SearchComponentParam<T, S>):
158
158
  if (p.hideFilter === undefined) {
159
159
  p.hideFilter = true;
160
160
  }
161
+ /*
161
162
  if (p.addable === undefined) {
162
163
  p.addable = true;
163
164
  }
@@ -170,6 +171,7 @@ export function mergeParam<T, S extends Filter>(p?: SearchComponentParam<T, S>):
170
171
  if (p.deletable === undefined) {
171
172
  p.deletable = true;
172
173
  }
174
+ */
173
175
  return p;
174
176
  } else {
175
177
  return {
@@ -178,10 +180,10 @@ export function mergeParam<T, S extends Filter>(p?: SearchComponentParam<T, S>):
178
180
  pageSizes,
179
181
  pageMaxSize: 7,
180
182
  hideFilter: true,
181
- addable: true,
182
- editable: true,
183
- approvable: true,
184
- deletable: true
183
+ // addable: true,
184
+ // editable: true,
185
+ // approvable: true,
186
+ // deletable: true
185
187
  };
186
188
  }
187
189
  }