rps-jsonvalidator 1.0.7 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
package/README.md CHANGED
@@ -1,11 +1,11 @@
1
- # general-libs-json-object-validator
2
-
3
- This library was generated with [Nx](https://nx.dev).
4
-
5
- ## Running unit tests
6
-
7
- Run `nx test general-libs-json-object-validator` to execute the unit tests via [Jest](https://jestjs.io).
8
-
9
- ## Running lint
10
-
11
- Run `nx lint general-libs-json-object-validator` to execute the lint via [ESLint](https://eslint.org/).
1
+ # general-libs-json-object-validator
2
+
3
+ This library was generated with [Nx](https://nx.dev).
4
+
5
+ ## Running unit tests
6
+
7
+ Run `nx test general-libs-json-object-validator` to execute the unit tests via [Jest](https://jestjs.io).
8
+
9
+ ## Running lint
10
+
11
+ Run `nx lint general-libs-json-object-validator` to execute the lint via [ESLint](https://eslint.org/).
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "rps-jsonvalidator",
3
- "version": "1.0.7",
3
+ "version": "1.1.0",
4
4
  "main": "./src/index.js",
5
- "typings": "./src/index.d.ts",
5
+ "types": "./src/index.d.ts",
6
6
  "dependencies": {},
7
7
  "peerDependencies": {
8
- "tslib": "^2.3.0"
8
+ "tslib": "2.4.0"
9
9
  }
10
10
  }
@@ -1,5 +1,6 @@
1
- export interface JSONObjectKeyAndTypeValidator {
2
- key: string;
1
+ declare type variabletypes = string | number | boolean | null | bigint | object;
2
+ export interface JSONObjectKeyAndTypeValidator<T = string> {
3
+ key: T;
3
4
  required: boolean;
4
5
  default?: variabletypes | (() => variabletypes);
5
6
  trim?: boolean;
@@ -14,6 +15,5 @@ export interface JSONObjectKeyAndTypeValidator {
14
15
  error?: any;
15
16
  Extra?: JSONObjectKeyAndTypeValidator[];
16
17
  }
17
- declare type variabletypes = string | number | boolean | null | bigint | object;
18
- export declare function ValidateJSONObject(data: any, Validator: JSONObjectKeyAndTypeValidator[], strip_data?: boolean): boolean | any;
18
+ export declare function ValidateJSONObject<R = any>(data: any, Validator: JSONObjectKeyAndTypeValidator[], strip_data: boolean): R | true;
19
19
  export {};
@@ -1,15 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ValidateJSONObject = void 0;
4
- function ValidateJSONObject(data, Validator, strip_data = false) {
4
+ function ValidateJSONObject(data, Validator, strip_data) {
5
5
  const temp = {};
6
6
  Validator.forEach((a) => {
7
+ const key = a.key.toString();
7
8
  a.error;
8
9
  if (a.required ||
9
10
  (typeof data[a.key] !== 'undefined' && data[a.key] !== null)) {
10
11
  try {
11
12
  if (typeof data[a.key] === 'undefined') {
12
- throw a.error ? `${a.error} In Value Undefined` : `Please Enter Valid Value For Key ${a.key}`;
13
+ throw a.error
14
+ ? `${a.error} In Value Undefined`
15
+ : `Please Enter Valid Value For Key ${a.key}`;
13
16
  }
14
17
  if (a.type === 'number' && isNaN(+data[a.key]) === true) {
15
18
  throw a.error || 'Type Mismatch';
@@ -39,13 +42,13 @@ function ValidateJSONObject(data, Validator, strip_data = false) {
39
42
  }
40
43
  if (a.lengths) {
41
44
  if (a.lengths.max_len && a.lengths.max_len < dataCC.length) {
42
- throw a.error || `${a.key} Min Length Does Not Meet`;
45
+ throw a.error || `${key} Min Length Does Not Meet`;
43
46
  }
44
47
  if (a.lengths.min_len && a.lengths.min_len > dataCC.length) {
45
- throw a.error || `${a.key} Min Length Does Not Meet`;
48
+ throw a.error || `${key} Min Length Does Not Meet`;
46
49
  }
47
50
  if (a.lengths.len && a.lengths.len !== dataCC.length) {
48
- throw a.error || `${a.key} Length Does Not Meet`;
51
+ throw a.error || `${key} Length Does Not Meet`;
49
52
  }
50
53
  }
51
54
  if (a.regex) {
@@ -60,7 +63,9 @@ function ValidateJSONObject(data, Validator, strip_data = false) {
60
63
  throw a.error || 'Custom Validator Error';
61
64
  }
62
65
  }
63
- if (a.Extra && Array.isArray(a.Extra)) {
66
+ if (typeof data[a.key] === 'object' &&
67
+ a.Extra &&
68
+ Array.isArray(a.Extra)) {
64
69
  temp[a.key] = ValidateJSONObject(data[a.key], a.Extra, strip_data);
65
70
  }
66
71
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"general-libs-json-object-validator.js","sourceRoot":"","sources":["../../../../../../packages/general-libs/json-object-validator/src/lib/general-libs-json-object-validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"general-libs-json-object-validator.js","sourceRoot":"","sources":["../../../../../../packages/general-libs/json-object-validator/src/lib/general-libs-json-object-validator.ts"],"names":[],"mappings":"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"}