thesimplevalidation 1.2.0 → 2.1.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.
Files changed (123) hide show
  1. package/README.md +158 -140
  2. package/dist/Validation.d.ts +16 -0
  3. package/dist/Validation.js +99 -0
  4. package/dist/Validation.js.map +1 -0
  5. package/dist/ValidationErrorsModel.js +2 -0
  6. package/dist/ValidationErrorsModel.js.map +1 -0
  7. package/dist/ValidationModel.js +2 -0
  8. package/dist/ValidationModel.js.map +1 -0
  9. package/dist/ValidationPropertyResult.d.ts +4 -0
  10. package/dist/ValidationPropertyResult.js +2 -0
  11. package/dist/ValidationPropertyResult.js.map +1 -0
  12. package/dist/ValidationResult.d.ts +8 -0
  13. package/dist/ValidationResult.js +2 -0
  14. package/dist/ValidationResult.js.map +1 -0
  15. package/dist/ValidationScope.d.ts +15 -0
  16. package/dist/ValidationScope.js +95 -0
  17. package/dist/ValidationScope.js.map +1 -0
  18. package/dist/Validator.d.ts +10 -0
  19. package/dist/Validator.js +28 -0
  20. package/dist/Validator.js.map +1 -0
  21. package/dist/{src/validator-setup.d.ts → ValidatorSetup.d.ts} +2 -2
  22. package/dist/ValidatorSetup.js +2 -0
  23. package/dist/ValidatorSetup.js.map +1 -0
  24. package/dist/index.d.ts +8 -1
  25. package/dist/index.js +5 -17
  26. package/dist/index.js.map +1 -1
  27. package/dist/validators/boolean/BooleanValidator.d.ts +7 -0
  28. package/dist/validators/boolean/BooleanValidator.js +18 -0
  29. package/dist/validators/boolean/BooleanValidator.js.map +1 -0
  30. package/dist/validators/boolean/BooleanValidatorSetup.d.ts +4 -0
  31. package/dist/validators/boolean/BooleanValidatorSetup.js +2 -0
  32. package/dist/validators/boolean/BooleanValidatorSetup.js.map +1 -0
  33. package/dist/validators/index.d.ts +9 -0
  34. package/dist/validators/index.js +6 -0
  35. package/dist/validators/index.js.map +1 -0
  36. package/dist/validators/max/MaxValidator.d.ts +7 -0
  37. package/dist/validators/max/MaxValidator.js +26 -0
  38. package/dist/validators/max/MaxValidator.js.map +1 -0
  39. package/dist/validators/max/MaxValidatorSetup.d.ts +4 -0
  40. package/dist/validators/max/MaxValidatorSetup.js +2 -0
  41. package/dist/validators/max/MaxValidatorSetup.js.map +1 -0
  42. package/dist/validators/min/MinValidator.d.ts +7 -0
  43. package/dist/validators/min/MinValidator.js +27 -0
  44. package/dist/validators/min/MinValidator.js.map +1 -0
  45. package/dist/validators/min/MinValidatorSetup.d.ts +4 -0
  46. package/dist/validators/min/MinValidatorSetup.js +2 -0
  47. package/dist/validators/min/MinValidatorSetup.js.map +1 -0
  48. package/dist/validators/required/RequiredValidator.d.ts +7 -0
  49. package/dist/validators/required/RequiredValidator.js +21 -0
  50. package/dist/validators/required/RequiredValidator.js.map +1 -0
  51. package/dist/validators/simple/SimpleValidator.d.ts +7 -0
  52. package/dist/validators/simple/SimpleValidator.js +14 -0
  53. package/dist/validators/simple/SimpleValidator.js.map +1 -0
  54. package/dist/validators/simple/SimpleValidatorSetup.d.ts +4 -0
  55. package/dist/validators/simple/SimpleValidatorSetup.js +2 -0
  56. package/dist/validators/simple/SimpleValidatorSetup.js.map +1 -0
  57. package/package.json +12 -12
  58. package/.editorconfig +0 -11
  59. package/.travis.yml +0 -7
  60. package/.yo-rc.json +0 -9
  61. package/dist/src/index.d.ts +0 -8
  62. package/dist/src/index.js +0 -23
  63. package/dist/src/index.js.map +0 -1
  64. package/dist/src/validation-errors-model.js +0 -3
  65. package/dist/src/validation-errors-model.js.map +0 -1
  66. package/dist/src/validation-model.js +0 -3
  67. package/dist/src/validation-model.js.map +0 -1
  68. package/dist/src/validation-property-result.d.ts +0 -4
  69. package/dist/src/validation-property-result.js +0 -3
  70. package/dist/src/validation-property-result.js.map +0 -1
  71. package/dist/src/validation-result.d.ts +0 -8
  72. package/dist/src/validation-result.js +0 -3
  73. package/dist/src/validation-result.js.map +0 -1
  74. package/dist/src/validation-scope.d.ts +0 -19
  75. package/dist/src/validation-scope.js +0 -200
  76. package/dist/src/validation-scope.js.map +0 -1
  77. package/dist/src/validator-setup.js +0 -3
  78. package/dist/src/validator-setup.js.map +0 -1
  79. package/dist/src/validator.d.ts +0 -8
  80. package/dist/src/validator.js +0 -69
  81. package/dist/src/validator.js.map +0 -1
  82. package/dist/src/validators/boolean/index.d.ts +0 -10
  83. package/dist/src/validators/boolean/index.js +0 -80
  84. package/dist/src/validators/boolean/index.js.map +0 -1
  85. package/dist/src/validators/index.d.ts +0 -5
  86. package/dist/src/validators/index.js +0 -14
  87. package/dist/src/validators/index.js.map +0 -1
  88. package/dist/src/validators/max/index.d.ts +0 -10
  89. package/dist/src/validators/max/index.js +0 -88
  90. package/dist/src/validators/max/index.js.map +0 -1
  91. package/dist/src/validators/min/index.d.ts +0 -10
  92. package/dist/src/validators/min/index.js +0 -89
  93. package/dist/src/validators/min/index.js.map +0 -1
  94. package/dist/src/validators/required/index.d.ts +0 -7
  95. package/dist/src/validators/required/index.js +0 -84
  96. package/dist/src/validators/required/index.js.map +0 -1
  97. package/dist/src/validators/simple/index.d.ts +0 -10
  98. package/dist/src/validators/simple/index.js +0 -76
  99. package/dist/src/validators/simple/index.js.map +0 -1
  100. package/index.ts +0 -1
  101. package/jest.config.js +0 -192
  102. package/src/index.ts +0 -9
  103. package/src/validation-errors-model.ts +0 -3
  104. package/src/validation-model.ts +0 -3
  105. package/src/validation-property-result.ts +0 -5
  106. package/src/validation-result.ts +0 -11
  107. package/src/validation-scope.ts +0 -119
  108. package/src/validator-setup.ts +0 -4
  109. package/src/validator.ts +0 -25
  110. package/src/validators/boolean/index.ts +0 -27
  111. package/src/validators/index.ts +0 -5
  112. package/src/validators/max/__tests__/index.test.ts +0 -92
  113. package/src/validators/max/index.ts +0 -32
  114. package/src/validators/min/__tests__/index.test.ts +0 -92
  115. package/src/validators/min/index.ts +0 -33
  116. package/src/validators/required/__tests__/index.test.ts +0 -229
  117. package/src/validators/required/index.ts +0 -24
  118. package/src/validators/simple/index.ts +0 -22
  119. package/thesimplevalidation.code-workspace +0 -10
  120. package/tsconfig.json +0 -23
  121. package/tslint.json +0 -18
  122. /package/dist/{src/validation-errors-model.d.ts → ValidationErrorsModel.d.ts} +0 -0
  123. /package/dist/{src/validation-model.d.ts → ValidationModel.d.ts} +0 -0
@@ -0,0 +1,95 @@
1
+ import get from "lodash.get";
2
+ import isEqual from "lodash.isequal";
3
+ export class ValidationScope {
4
+ constructor(originalModel) {
5
+ this.useOriginal = (model) => {
6
+ this.originalModel = structuredClone(model);
7
+ return this;
8
+ };
9
+ this.useValidators = (key, ...validators) => {
10
+ this.modelInfo[key] = {
11
+ validators: validators,
12
+ };
13
+ return this;
14
+ };
15
+ this.isPropertyDirty = (model, field, key = null) => {
16
+ const originalField = this.originalModel[field];
17
+ const modelField = model[field];
18
+ if (Array.isArray(originalField) && Array.isArray(modelField)) {
19
+ if (originalField.length !== modelField.length)
20
+ return true;
21
+ for (let index = 0; index < originalField.length; index++) {
22
+ if (originalField[index] === modelField[index])
23
+ continue;
24
+ if (key == null)
25
+ return true;
26
+ if (get(originalField[index], key) !== get(modelField[index], key))
27
+ return true;
28
+ }
29
+ return false;
30
+ }
31
+ if (key == null)
32
+ return !isEqual(this.originalModel[field], model[field]);
33
+ return get(this.originalModel[field], key) !== get(model[field], key);
34
+ };
35
+ this.getOriginalProperty = (field) => {
36
+ return this.originalModel[field];
37
+ };
38
+ this.isDirty = (model, ...fields) => {
39
+ for (const property in this.originalModel) {
40
+ if (!this.originalModel.hasOwnProperty(property))
41
+ continue;
42
+ if (fields && fields.length > 0) {
43
+ if (!fields.some((x) => x === property))
44
+ continue;
45
+ }
46
+ if (this.isPropertyDirty(model, property))
47
+ return true;
48
+ }
49
+ return false;
50
+ };
51
+ this.isPropertyValid = async (model, field) => {
52
+ if (this.modelInfo[field] &&
53
+ this.modelInfo[field].validators &&
54
+ this.modelInfo[field].validators) {
55
+ let isValid = true;
56
+ let errors = [];
57
+ const value = model[field];
58
+ for (const validator of this.modelInfo[field].validators) {
59
+ const validatorResult = await validator.isValid(value, model, field);
60
+ isValid = isValid && validatorResult.isValid;
61
+ if (!validatorResult.isValid)
62
+ errors = [...errors, ...validatorResult.errors];
63
+ }
64
+ return {
65
+ isValid: isValid,
66
+ errors: errors,
67
+ };
68
+ }
69
+ return {
70
+ isValid: true,
71
+ errors: [],
72
+ };
73
+ };
74
+ this.isValid = async (model, ...fields) => {
75
+ model = model ?? {};
76
+ const properties = (fields == null || fields.length === 0 ? Object.keys(model) : fields);
77
+ const result = {
78
+ isValid: true,
79
+ errors: [],
80
+ properties: {},
81
+ };
82
+ for (const property of properties) {
83
+ const propertyValidationResult = await this.isPropertyValid(model, property);
84
+ result.isValid = result.isValid && propertyValidationResult.isValid;
85
+ result.properties[property] = propertyValidationResult;
86
+ if (!propertyValidationResult.isValid)
87
+ result.errors = [...result.errors, ...propertyValidationResult.errors];
88
+ }
89
+ return result;
90
+ };
91
+ this.originalModel = structuredClone(originalModel);
92
+ this.modelInfo = {};
93
+ }
94
+ }
95
+ //# sourceMappingURL=ValidationScope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ValidationScope.js","sourceRoot":"","sources":["../src/ValidationScope.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAKrC,MAAM,OAAO,eAAe;IAQ1B,YAAY,aAAqB;QAK1B,gBAAW,GAAG,CAAC,KAAa,EAA2B,EAAE;YAC9D,IAAI,CAAC,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEK,kBAAa,GAAG,CACrB,GAAM,EACN,GAAG,UAAuC,EACjB,EAAE;YAC3B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG;gBACpB,UAAU,EAAE,UAAU;aACvB,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEK,oBAAe,GAAG,CACvB,KAAa,EACb,KAAmB,EACnB,MAAqB,IAAI,EAChB,EAAE;YACX,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAChD,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9D,IAAI,aAAa,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM;oBAAE,OAAO,IAAI,CAAC;gBAC5D,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;oBAC1D,IAAI,aAAa,CAAC,KAAK,CAAC,KAAK,UAAU,CAAC,KAAK,CAAC;wBAAE,SAAS;oBACzD,IAAI,GAAG,IAAI,IAAI;wBAAE,OAAO,IAAI,CAAC;oBAC7B,IAAI,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC;wBAChE,OAAO,IAAI,CAAC;gBAChB,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,GAAG,IAAI,IAAI;gBAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YAC1E,OAAO,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;QACxE,CAAC,CAAC;QAEK,wBAAmB,GAAG,CAC3B,KAAQ,EACG,EAAE;YACb,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,CAAC;QAEK,YAAO,GAAG,CAAC,KAAa,EAAE,GAAG,MAA2B,EAAW,EAAE;YAC1E,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC1C,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,QAAQ,CAAC;oBAAE,SAAS;gBAE3D,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC;wBAAE,SAAS;gBACpD,CAAC;gBAED,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC;oBAAE,OAAO,IAAI,CAAC;YACzD,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;QAEK,oBAAe,GAAG,KAAK,EAC5B,KAAa,EACb,KAAQ,EAC2B,EAAE;YACrC,IACE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;gBACrB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU;gBAChC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,EAChC,CAAC;gBACD,IAAI,OAAO,GAAY,IAAI,CAAC;gBAC5B,IAAI,MAAM,GAAa,EAAE,CAAC;gBAE1B,MAAM,KAAK,GAAc,KAAK,CAAC,KAAK,CAAC,CAAC;gBAEtC,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC;oBACzD,MAAM,eAAe,GACnB,MAAM,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;oBAC/C,OAAO,GAAG,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC;oBAC7C,IAAI,CAAC,eAAe,CAAC,OAAO;wBAC1B,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;gBACpD,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,OAAO;oBAChB,MAAM,EAAE,MAAM;iBACf,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,EAAE;aACX,CAAC;QACJ,CAAC,CAAC;QAEK,YAAO,GAAG,KAAK,EACpB,KAAa,EACb,GAAG,MAA2B,EACK,EAAE;YACrC,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC;YAEpB,MAAM,UAAU,GAAwB,CACtC,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAC7C,CAAC;YAEzB,MAAM,MAAM,GAA6B;gBACvC,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,EAAE;gBACV,UAAU,EAAE,EAEX;aAC0B,CAAC;YAE9B,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;gBAClC,MAAM,wBAAwB,GAC5B,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;gBAC9C,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,wBAAwB,CAAC,OAAO,CAAC;gBACpE,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,wBAAwB,CAAC;gBACvD,IAAI,CAAC,wBAAwB,CAAC,OAAO;oBACnC,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;YAC3E,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;QA1HA,IAAI,CAAC,aAAa,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;QACpD,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;CAyHF"}
@@ -0,0 +1,10 @@
1
+ import { ValidationPropertyResult } from "./ValidationPropertyResult";
2
+ import { ValidatorSetup } from "./ValidatorSetup";
3
+ export declare abstract class Validator<TModel, K extends keyof TModel, TSetup extends ValidatorSetup<TModel, K> = ValidatorSetup<TModel, K>> {
4
+ protected name: string;
5
+ protected setup: TSetup;
6
+ constructor(name: string, setup: TSetup);
7
+ protected getErrors: (value: TModel[K], model: TModel, field: K) => string[];
8
+ isValid: (value: TModel[K], model: TModel, field: K) => Promise<ValidationPropertyResult>;
9
+ protected abstract isValidInternal(value: TModel[K], model: TModel, field: K): Promise<ValidationPropertyResult>;
10
+ }
@@ -0,0 +1,28 @@
1
+ export class Validator {
2
+ constructor(name, setup) {
3
+ this.name = name;
4
+ this.setup = setup;
5
+ this.getErrors = (value, model, field) => {
6
+ return [`${field.toString()}.${this.name}`];
7
+ };
8
+ this.isValid = async (value, model, field) => {
9
+ if (this.setup.isDisabled != null && this.setup.isDisabled(value)) {
10
+ return {
11
+ isValid: true,
12
+ errors: [],
13
+ };
14
+ }
15
+ const result = await this.isValidInternal(value, model, field);
16
+ if (result.isValid !== true) {
17
+ if (this.setup.getErrors != null) {
18
+ result.errors = this.setup.getErrors(value);
19
+ }
20
+ else {
21
+ result.errors = this.getErrors(value, model, field);
22
+ }
23
+ }
24
+ return result;
25
+ };
26
+ }
27
+ }
28
+ //# sourceMappingURL=Validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Validator.js","sourceRoot":"","sources":["../src/Validator.ts"],"names":[],"mappings":"AAGA,MAAM,OAAgB,SAAS;IAK7B,YAAsB,IAAY,EAAY,KAAa;QAArC,SAAI,GAAJ,IAAI,CAAQ;QAAY,UAAK,GAAL,KAAK,CAAQ;QAEjD,cAAS,GAAG,CACpB,KAAgB,EAChB,KAAa,EACb,KAAQ,EACE,EAAE;YACZ,OAAO,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC;QAEK,YAAO,GAAG,KAAK,EACpB,KAAgB,EAChB,KAAa,EACb,KAAQ,EAC2B,EAAE;YACrC,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClE,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,EAAE;iBACX,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAA6B,MAAM,IAAI,CAAC,eAAe,CACjE,KAAK,EACL,KAAK,EACL,KAAK,CACN,CAAC;YAEF,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;gBAC5B,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC;oBACjC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBAC9C,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;IArC4D,CAAC;CA4ChE"}
@@ -1,4 +1,4 @@
1
- export interface IValidatorSetup<TModel, K extends keyof TModel> {
1
+ export type ValidatorSetup<TModel, K extends keyof TModel> = {
2
2
  isDisabled?: (value: TModel[K]) => boolean;
3
3
  getErrors?: (value: TModel[K]) => string[];
4
- }
4
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ValidatorSetup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ValidatorSetup.js","sourceRoot":"","sources":["../src/ValidatorSetup.ts"],"names":[],"mappings":""}
package/dist/index.d.ts CHANGED
@@ -1 +1,8 @@
1
- export * from "./src";
1
+ import { Validation } from "./Validation";
2
+ export { Validation };
3
+ export { ValidationPropertyResult } from "./ValidationPropertyResult";
4
+ export { ValidationResult } from "./ValidationResult";
5
+ export { Validator } from "./Validator";
6
+ export { ValidatorSetup } from "./ValidatorSetup";
7
+ export * from "./validators";
8
+ export default Validation;
package/dist/index.js CHANGED
@@ -1,18 +1,6 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./src"), exports);
1
+ import { Validation } from "./Validation";
2
+ export { Validation };
3
+ export { Validator } from "./Validator";
4
+ export * from "./validators";
5
+ export default Validation;
18
6
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,CAAC;AAGtB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,cAAc,cAAc,CAAC;AAC7B,eAAe,UAAU,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { ValidationPropertyResult } from "../../ValidationPropertyResult";
2
+ import { Validator } from "../../Validator";
3
+ import { BooleanValidatorSetup } from "./BooleanValidatorSetup";
4
+ export declare class BooleanValidator<TModel, K extends keyof TModel> extends Validator<TModel, K, BooleanValidatorSetup<TModel, K>> {
5
+ constructor(setup: BooleanValidatorSetup<TModel, K>);
6
+ isValidInternal(value: TModel[K]): Promise<ValidationPropertyResult>;
7
+ }
@@ -0,0 +1,18 @@
1
+ import { Validator } from "../../Validator";
2
+ export class BooleanValidator extends Validator {
3
+ constructor(setup) {
4
+ super("BooleanValidator", setup);
5
+ }
6
+ async isValidInternal(value) {
7
+ let isValid = true;
8
+ const targetValue = this.setup.target();
9
+ if (value != null && typeof value === "boolean") {
10
+ isValid = targetValue === value;
11
+ }
12
+ return {
13
+ isValid: isValid,
14
+ errors: [],
15
+ };
16
+ }
17
+ }
18
+ //# sourceMappingURL=BooleanValidator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BooleanValidator.js","sourceRoot":"","sources":["../../../src/validators/boolean/BooleanValidator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,MAAM,OAAO,gBAAiD,SAAQ,SAIrE;IACC,YAAY,KAAuC;QACjD,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;IACnC,CAAC;IAEM,KAAK,CAAC,eAAe,CAC1B,KAAgB;QAEhB,IAAI,OAAO,GAAY,IAAI,CAAC;QAC5B,MAAM,WAAW,GAAY,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAEjD,IAAI,KAAK,IAAI,IAAI,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;YAChD,OAAO,GAAG,WAAW,KAAK,KAAK,CAAC;QAClC,CAAC;QAED,OAAO;YACL,OAAO,EAAE,OAAO;YAChB,MAAM,EAAE,EAAE;SACX,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,4 @@
1
+ import { ValidatorSetup } from "../../ValidatorSetup";
2
+ export type BooleanValidatorSetup<TModel, K extends keyof TModel> = ValidatorSetup<TModel, K> & {
3
+ target: () => boolean;
4
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=BooleanValidatorSetup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BooleanValidatorSetup.js","sourceRoot":"","sources":["../../../src/validators/boolean/BooleanValidatorSetup.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ export { SimpleValidator } from "./simple/SimpleValidator";
2
+ export type { SimpleValidatorSetup } from "./simple/SimpleValidatorSetup";
3
+ export { BooleanValidator } from "./boolean/BooleanValidator";
4
+ export type { BooleanValidatorSetup } from "./boolean/BooleanValidatorSetup";
5
+ export { RequiredValidator } from "./required/RequiredValidator";
6
+ export { MinValidator } from "./min/MinValidator";
7
+ export type { MinValidatorSetup } from "./min/MinValidatorSetup";
8
+ export { MaxValidator } from "./max/MaxValidator";
9
+ export type { MaxValidatorSetup } from "./max/MaxValidatorSetup";
@@ -0,0 +1,6 @@
1
+ export { SimpleValidator } from "./simple/SimpleValidator";
2
+ export { BooleanValidator } from "./boolean/BooleanValidator";
3
+ export { RequiredValidator } from "./required/RequiredValidator";
4
+ export { MinValidator } from "./min/MinValidator";
5
+ export { MaxValidator } from "./max/MaxValidator";
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/validators/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { ValidationPropertyResult } from "../../ValidationPropertyResult";
2
+ import { Validator } from "../../Validator";
3
+ import { MaxValidatorSetup } from "./MaxValidatorSetup";
4
+ export declare class MaxValidator<TModel, K extends keyof TModel> extends Validator<TModel, K, MaxValidatorSetup<TModel, K>> {
5
+ constructor(setup: MaxValidatorSetup<TModel, K>);
6
+ isValidInternal(value: TModel[K]): Promise<ValidationPropertyResult>;
7
+ }
@@ -0,0 +1,26 @@
1
+ import { Validator } from "../../Validator";
2
+ export class MaxValidator extends Validator {
3
+ constructor(setup) {
4
+ super("MaxValidator", setup);
5
+ }
6
+ async isValidInternal(value) {
7
+ let isValid = true;
8
+ if (value != null) {
9
+ const maxValue = this.setup.maxValue();
10
+ if (Array.isArray(value)) {
11
+ isValid = value.length <= maxValue;
12
+ }
13
+ else if (typeof value === "string") {
14
+ isValid = value.length <= maxValue;
15
+ }
16
+ else if (typeof value === "number") {
17
+ isValid = value <= maxValue;
18
+ }
19
+ }
20
+ return {
21
+ isValid: isValid,
22
+ errors: [],
23
+ };
24
+ }
25
+ }
26
+ //# sourceMappingURL=MaxValidator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MaxValidator.js","sourceRoot":"","sources":["../../../src/validators/max/MaxValidator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,MAAM,OAAO,YAA6C,SAAQ,SAIjE;IACC,YAAY,KAAmC;QAC7C,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;IAEM,KAAK,CAAC,eAAe,CAC1B,KAAgB;QAEhB,IAAI,OAAO,GAAY,IAAI,CAAC;QAC5B,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,MAAM,QAAQ,GAAW,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO,GAAG,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC;YACrC,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACrC,OAAO,GAAG,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC;YACrC,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACrC,OAAO,GAAG,KAAK,IAAI,QAAQ,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,OAAO;YACL,OAAO,EAAE,OAAO;YAChB,MAAM,EAAE,EAAE;SACX,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,4 @@
1
+ import { ValidatorSetup } from "../../ValidatorSetup";
2
+ export interface MaxValidatorSetup<TModel, K extends keyof TModel> extends ValidatorSetup<TModel, K> {
3
+ maxValue: () => number;
4
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=MaxValidatorSetup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MaxValidatorSetup.js","sourceRoot":"","sources":["../../../src/validators/max/MaxValidatorSetup.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import { ValidationPropertyResult } from "../../ValidationPropertyResult";
2
+ import { Validator } from "../../Validator";
3
+ import { MinValidatorSetup } from "./MinValidatorSetup";
4
+ export declare class MinValidator<TModel, K extends keyof TModel> extends Validator<TModel, K, MinValidatorSetup<TModel, K>> {
5
+ constructor(setup: MinValidatorSetup<TModel, K>);
6
+ isValidInternal(value: TModel[K]): Promise<ValidationPropertyResult>;
7
+ }
@@ -0,0 +1,27 @@
1
+ import { Validator } from "../../Validator";
2
+ export class MinValidator extends Validator {
3
+ constructor(setup) {
4
+ super("MinValidator", setup);
5
+ }
6
+ async isValidInternal(value) {
7
+ let isValid = true;
8
+ if (value != null) {
9
+ const minValue = this.setup.minValue();
10
+ // tslint:disable-next-line:prefer-conditional-expression
11
+ if (Array.isArray(value)) {
12
+ isValid = value.length >= minValue;
13
+ }
14
+ else if (typeof value === "string") {
15
+ isValid = value.length >= minValue;
16
+ }
17
+ else if (typeof value === "number") {
18
+ isValid = value >= minValue;
19
+ }
20
+ }
21
+ return {
22
+ isValid: isValid,
23
+ errors: [],
24
+ };
25
+ }
26
+ }
27
+ //# sourceMappingURL=MinValidator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MinValidator.js","sourceRoot":"","sources":["../../../src/validators/min/MinValidator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,MAAM,OAAO,YAA6C,SAAQ,SAIjE;IACC,YAAY,KAAmC;QAC7C,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;IAEM,KAAK,CAAC,eAAe,CAC1B,KAAgB;QAEhB,IAAI,OAAO,GAAY,IAAI,CAAC;QAC5B,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,MAAM,QAAQ,GAAW,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC/C,yDAAyD;YACzD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO,GAAG,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC;YACrC,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACrC,OAAO,GAAG,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC;YACrC,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACrC,OAAO,GAAG,KAAK,IAAI,QAAQ,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,OAAO;YACL,OAAO,EAAE,OAAO;YAChB,MAAM,EAAE,EAAE;SACX,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,4 @@
1
+ import { ValidatorSetup } from "../../ValidatorSetup";
2
+ export interface MinValidatorSetup<TModel, K extends keyof TModel> extends ValidatorSetup<TModel, K> {
3
+ minValue: () => number;
4
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=MinValidatorSetup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MinValidatorSetup.js","sourceRoot":"","sources":["../../../src/validators/min/MinValidatorSetup.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import { ValidationPropertyResult } from "../../ValidationPropertyResult";
2
+ import { ValidatorSetup } from "../../ValidatorSetup";
3
+ import { Validator } from "../../Validator";
4
+ export declare class RequiredValidator<TModel, K extends keyof TModel> extends Validator<TModel, K> {
5
+ constructor(setup?: ValidatorSetup<TModel, K>);
6
+ isValidInternal(value: TModel[K]): Promise<ValidationPropertyResult>;
7
+ }
@@ -0,0 +1,21 @@
1
+ import { Validator } from "../../Validator";
2
+ export class RequiredValidator extends Validator {
3
+ constructor(setup = {}) {
4
+ super("RequiredValidator", setup);
5
+ }
6
+ async isValidInternal(value) {
7
+ let isValid = true;
8
+ // tslint:disable-next-line:prefer-conditional-expression
9
+ if (Array.isArray(value)) {
10
+ isValid = value.length > 0;
11
+ }
12
+ else {
13
+ isValid = !!value;
14
+ }
15
+ return {
16
+ isValid: isValid,
17
+ errors: [],
18
+ };
19
+ }
20
+ }
21
+ //# sourceMappingURL=RequiredValidator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequiredValidator.js","sourceRoot":"","sources":["../../../src/validators/required/RequiredValidator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,OAAO,iBAGX,SAAQ,SAAoB;IAC5B,YAAY,QAAmC,EAAE;QAC/C,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IAEM,KAAK,CAAC,eAAe,CAC1B,KAAgB;QAEhB,IAAI,OAAO,GAAY,IAAI,CAAC;QAC5B,yDAAyD;QACzD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC;QACpB,CAAC;QAED,OAAO;YACL,OAAO,EAAE,OAAO;YAChB,MAAM,EAAE,EAAE;SACX,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { ValidationPropertyResult } from "../../ValidationPropertyResult";
2
+ import { Validator } from "../../Validator";
3
+ import { SimpleValidatorSetup } from "./SimpleValidatorSetup";
4
+ export declare class SimpleValidator<TModel, K extends keyof TModel> extends Validator<TModel, K, SimpleValidatorSetup<TModel, K>> {
5
+ constructor(setup: SimpleValidatorSetup<TModel, K>);
6
+ isValidInternal(_value: TModel[K]): Promise<ValidationPropertyResult>;
7
+ }
@@ -0,0 +1,14 @@
1
+ import { Validator } from "../../Validator";
2
+ export class SimpleValidator extends Validator {
3
+ constructor(setup) {
4
+ super("SimpleValidator", setup);
5
+ }
6
+ async isValidInternal(_value) {
7
+ const isValid = this.setup.getValidation();
8
+ return {
9
+ isValid: isValid,
10
+ errors: [],
11
+ };
12
+ }
13
+ }
14
+ //# sourceMappingURL=SimpleValidator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SimpleValidator.js","sourceRoot":"","sources":["../../../src/validators/simple/SimpleValidator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,MAAM,OAAO,eAAgD,SAAQ,SAIpE;IACC,YAAY,KAAsC;QAChD,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;IAClC,CAAC;IAEM,KAAK,CAAC,eAAe,CAC1B,MAAiB;QAEjB,MAAM,OAAO,GAAY,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;QAEpD,OAAO;YACL,OAAO,EAAE,OAAO;YAChB,MAAM,EAAE,EAAE;SACX,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,4 @@
1
+ import { ValidatorSetup } from "../../ValidatorSetup";
2
+ export interface SimpleValidatorSetup<TModel, K extends keyof TModel> extends ValidatorSetup<TModel, K> {
3
+ getValidation: () => boolean;
4
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=SimpleValidatorSetup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SimpleValidatorSetup.js","sourceRoot":"","sources":["../../../src/validators/simple/SimpleValidatorSetup.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,8 +1,12 @@
1
1
  {
2
2
  "name": "thesimplevalidation",
3
3
  "description": "The simple validation",
4
- "version": "1.2.0",
4
+ "version": "2.1.0",
5
5
  "main": "./dist/index.js",
6
+ "types": "./dist/index.d.ts",
7
+ "files": [
8
+ "dist"
9
+ ],
6
10
  "scripts": {
7
11
  "build": "tsc",
8
12
  "test": "jest"
@@ -25,19 +29,15 @@
25
29
  "promise"
26
30
  ],
27
31
  "dependencies": {
28
- "lodash.clonedeep": "4.5.0",
29
32
  "lodash.get": "4.4.2",
30
- "lodash.isequal": "4.5.0",
31
- "lodash.keys": "4.2.0"
33
+ "lodash.isequal": "4.5.0"
32
34
  },
33
35
  "devDependencies": {
34
- "@types/lodash.clonedeep": "4.5.7",
35
- "@types/lodash.get": "4.4.7",
36
- "@types/lodash.isequal": "4.5.6",
37
- "@types/lodash.keys": "4.2.7",
38
- "@types/jest": "29.5.1",
39
- "typescript": "5.0.4",
40
- "jest": "29.5.0",
41
- "ts-jest": "29.1.0"
36
+ "@types/lodash.get": "4.4.9",
37
+ "@types/lodash.isequal": "4.5.8",
38
+ "@types/jest": "30.0.0",
39
+ "typescript": "5.9.3",
40
+ "jest": "30.2.0",
41
+ "ts-jest": "29.4.5"
42
42
  }
43
43
  }
package/.editorconfig DELETED
@@ -1,11 +0,0 @@
1
- root = true
2
-
3
- # Unix-style newlines with a newline ending every file
4
- [*]
5
- end_of_line = lf
6
- insert_final_newline = true
7
-
8
- [*js]
9
- charset = utf-8
10
- indent_style = space
11
- trim_trailing_whitespace = true
package/.travis.yml DELETED
@@ -1,7 +0,0 @@
1
- language: node_js
2
- sudo: false
3
- node_js:
4
- - 6.0
5
- - 8.0
6
- script: npm test; npm run build
7
-
package/.yo-rc.json DELETED
@@ -1,9 +0,0 @@
1
- {
2
- "generator-npm-module": {
3
- "promptValues": {
4
- "authorName": "AlexeyRipenko",
5
- "fullName": "Alexey Ripenko",
6
- "emailAddress": "alexey@ripenko.ru"
7
- }
8
- }
9
- }
@@ -1,8 +0,0 @@
1
- export { ValidationScope } from "./validation-scope";
2
- export { ValidationErrorsModel } from "./validation-errors-model";
3
- export { ValidationModel } from "./validation-model";
4
- export { IValidationPropertyResult } from "./validation-property-result";
5
- export { IValidationResult } from "./validation-result";
6
- export { Validator } from "./validator";
7
- export { IValidatorSetup } from "./validator-setup";
8
- export * from "./validators";
package/dist/src/index.js DELETED
@@ -1,23 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.Validator = exports.ValidationScope = void 0;
18
- var validation_scope_1 = require("./validation-scope");
19
- Object.defineProperty(exports, "ValidationScope", { enumerable: true, get: function () { return validation_scope_1.ValidationScope; } });
20
- var validator_1 = require("./validator");
21
- Object.defineProperty(exports, "Validator", { enumerable: true, get: function () { return validator_1.Validator; } });
22
- __exportStar(require("./validators"), exports);
23
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,uDAAqD;AAA5C,mHAAA,eAAe,OAAA;AAKxB,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAGlB,+CAA6B"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=validation-errors-model.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validation-errors-model.js","sourceRoot":"","sources":["../../src/validation-errors-model.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=validation-model.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validation-model.js","sourceRoot":"","sources":["../../src/validation-model.ts"],"names":[],"mappings":""}
@@ -1,4 +0,0 @@
1
- export interface IValidationPropertyResult {
2
- isValid: boolean;
3
- errors: string[];
4
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=validation-property-result.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validation-property-result.js","sourceRoot":"","sources":["../../src/validation-property-result.ts"],"names":[],"mappings":""}
@@ -1,8 +0,0 @@
1
- import { IValidationPropertyResult } from "./validation-property-result";
2
- export interface IValidationResult<TModel> {
3
- isValid: boolean;
4
- properties: {
5
- [K in keyof TModel]: IValidationPropertyResult;
6
- };
7
- errors: string[];
8
- }