cvitool 1.0.764 → 1.0.765

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.
@@ -32,7 +32,10 @@ interface validateParams {
32
32
  subValidate?: {
33
33
  [key: string]: validateParams;
34
34
  };
35
- func?: (value: any) => boolean;
35
+ func?: (value: any) => {
36
+ pass: boolean;
37
+ message?: string;
38
+ };
36
39
  }
37
40
  declare const RegStr: {
38
41
  zzs: string;
@@ -149,7 +152,10 @@ declare function validate(value: {
149
152
  [key: string]: any;
150
153
  }, rule: {
151
154
  [key: string]: validateParams;
152
- }, finalFunc?: (value: any) => boolean): {
155
+ }, finalFunc?: (value: any) => {
156
+ pass: boolean;
157
+ message?: string;
158
+ }): {
153
159
  message: string;
154
160
  field: string;
155
161
  pass: boolean;
@@ -553,8 +553,9 @@ function validate(value, rule, finalFunc) {
553
553
  if (funcs.length) {
554
554
  for (const funcReg of funcs) {
555
555
  const { fieldName, fieldValue, func } = funcReg;
556
- if (!func(fieldValue)) {
557
- result.message = 'field value not pass validate';
556
+ const execFuncRes = func(fieldValue);
557
+ if (!execFuncRes.pass) {
558
+ result.message = execFuncRes.message || 'field value not pass validate';
558
559
  result.field = fieldName;
559
560
  result.pass = false;
560
561
  return result;
@@ -562,8 +563,9 @@ function validate(value, rule, finalFunc) {
562
563
  }
563
564
  }
564
565
  if (finalFunc) {
565
- if (!finalFunc(value)) {
566
- result.message = 'params not pass validate';
566
+ const execFuncRes = finalFunc(value);
567
+ if (!execFuncRes.pass) {
568
+ result.message = execFuncRes.message || 'params not pass validate';
567
569
  result.field = '';
568
570
  result.pass = false;
569
571
  return result;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cvitool",
3
- "version": "1.0.764",
3
+ "version": "1.0.765",
4
4
  "description": "cvitool",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/src/cutil.ts CHANGED
@@ -47,7 +47,7 @@ interface validateParams {
47
47
  subRange?: [number, number],
48
48
  subLength?: number,
49
49
  subValidate?: { [key: string]: validateParams },
50
- func?: (value: any) => boolean
50
+ func?: (value: any) => { pass: boolean, message?: string }
51
51
  }
52
52
 
53
53
  const RegStr = {
@@ -428,13 +428,13 @@ function uuid() {
428
428
  * @param rule
429
429
  * @returns
430
430
  */
431
- function validate(value: { [key: string]: any }, rule: { [key: string]: validateParams }, finalFunc?: (value: any) => boolean): { message: string, field: string, pass: boolean } {
431
+ function validate(value: { [key: string]: any }, rule: { [key: string]: validateParams }, finalFunc?: (value: any) => { pass: boolean, message?: string }): { message: string, field: string, pass: boolean } {
432
432
  const result = {
433
433
  message: '',
434
434
  field: '',
435
435
  pass: true
436
436
  };
437
- const funcs: { fieldName: string, fieldValue: any, func: (value: any) => boolean }[] = [];
437
+ const funcs: { fieldName: string, fieldValue: any, func: (value: any) => { pass: boolean, message?: string } }[] = [];
438
438
  for (const fieldName in rule) {
439
439
  const fieldValidate = rule[fieldName];
440
440
  const fieldValue = value[fieldName];
@@ -579,8 +579,9 @@ function validate(value: { [key: string]: any }, rule: { [key: string]: validate
579
579
  if (funcs.length) {
580
580
  for (const funcReg of funcs) {
581
581
  const { fieldName, fieldValue, func } = funcReg;
582
- if (!func(fieldValue)) {
583
- result.message = 'field value not pass validate';
582
+ const execFuncRes = func(fieldValue);
583
+ if (!execFuncRes.pass) {
584
+ result.message = execFuncRes.message || 'field value not pass validate';
584
585
  result.field = fieldName;
585
586
  result.pass = false;
586
587
  return result;
@@ -588,8 +589,9 @@ function validate(value: { [key: string]: any }, rule: { [key: string]: validate
588
589
  }
589
590
  }
590
591
  if (finalFunc) {
591
- if (!finalFunc(value)) {
592
- result.message = 'params not pass validate';
592
+ const execFuncRes = finalFunc(value);
593
+ if (!execFuncRes.pass) {
594
+ result.message = execFuncRes.message || 'params not pass validate';
593
595
  result.field = '';
594
596
  result.pass = false;
595
597
  return result;