@diia-inhouse/validators 1.28.36 → 2.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.
Files changed (50) hide show
  1. package/dist/index.d.ts +6 -0
  2. package/dist/index.js +3 -20
  3. package/dist/interfaces/index.d.ts +3 -0
  4. package/dist/interfaces/rule.d.ts +17 -0
  5. package/dist/interfaces/schema.d.ts +8 -0
  6. package/dist/interfaces/validationSchema.d.ts +90 -0
  7. package/dist/rules/buffer.js +25 -26
  8. package/dist/rules/date.js +44 -40
  9. package/dist/rules/index.js +7 -23
  10. package/dist/rules/internationalPhoneNumber.js +26 -27
  11. package/dist/rules/objectId.js +25 -26
  12. package/dist/rules/phoneNumber.js +30 -32
  13. package/dist/rules/version.js +44 -37
  14. package/dist/schemas/index.d.ts +19 -0
  15. package/dist/schemas/index.js +132 -106
  16. package/dist/validator.d.ts +15 -0
  17. package/dist/validator.js +46 -49
  18. package/package.json +30 -20
  19. package/dist/index.js.map +0 -1
  20. package/dist/interfaces/index.js +0 -20
  21. package/dist/interfaces/index.js.map +0 -1
  22. package/dist/interfaces/rule.js +0 -3
  23. package/dist/interfaces/rule.js.map +0 -1
  24. package/dist/interfaces/schema.js +0 -3
  25. package/dist/interfaces/schema.js.map +0 -1
  26. package/dist/interfaces/validationSchema.js +0 -3
  27. package/dist/interfaces/validationSchema.js.map +0 -1
  28. package/dist/rules/buffer.js.map +0 -1
  29. package/dist/rules/date.js.map +0 -1
  30. package/dist/rules/index.js.map +0 -1
  31. package/dist/rules/internationalPhoneNumber.js.map +0 -1
  32. package/dist/rules/objectId.js.map +0 -1
  33. package/dist/rules/phoneNumber.js.map +0 -1
  34. package/dist/rules/version.js.map +0 -1
  35. package/dist/schemas/index.js.map +0 -1
  36. package/dist/types/index.d.ts +0 -3
  37. package/dist/types/interfaces/index.d.ts +0 -3
  38. package/dist/types/interfaces/rule.d.ts +0 -13
  39. package/dist/types/interfaces/schema.d.ts +0 -5
  40. package/dist/types/interfaces/validationSchema.d.ts +0 -92
  41. package/dist/types/rules/buffer.d.ts +0 -7
  42. package/dist/types/rules/date.d.ts +0 -9
  43. package/dist/types/rules/index.d.ts +0 -6
  44. package/dist/types/rules/internationalPhoneNumber.d.ts +0 -8
  45. package/dist/types/rules/objectId.d.ts +0 -7
  46. package/dist/types/rules/phoneNumber.d.ts +0 -9
  47. package/dist/types/rules/version.d.ts +0 -10
  48. package/dist/types/schemas/index.d.ts +0 -14
  49. package/dist/types/validator.d.ts +0 -11
  50. package/dist/validator.js.map +0 -1
@@ -1,120 +1,146 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.appVersionsValidationSchema = exports.listValidationSchema = exports.zipValidation = exports.shortTextValidation = exports.emailRuValidation = exports.emailValidation = exports.phoneNumberWithoutPlusValidation = exports.phoneNumberValidation = exports.availableMobileCodes = void 0;
7
- exports.getListValidationSchema = getListValidationSchema;
8
- exports.getStringDateSchema = getStringDateSchema;
9
- const lodash_frompairs_1 = __importDefault(require("lodash.frompairs"));
10
- const luxon_1 = require("luxon");
11
- const types_1 = require("@diia-inhouse/types");
12
- exports.availableMobileCodes = [
13
- '39',
14
- '50',
15
- '63',
16
- '66',
17
- '67',
18
- '68',
19
- '73',
20
- '77',
21
- '91',
22
- '92',
23
- '93',
24
- '94',
25
- '95',
26
- '96',
27
- '97',
28
- '98',
29
- '99',
30
- '75',
31
- '77,',
1
+ import fromPairs from "lodash.frompairs";
2
+ import { DateTime } from "luxon";
3
+ import { PlatformType } from "@diia-inhouse/types";
4
+ //#region src/schemas/index.ts
5
+ const availableMobileCodes = [
6
+ "39",
7
+ "50",
8
+ "63",
9
+ "66",
10
+ "67",
11
+ "68",
12
+ "73",
13
+ "77",
14
+ "91",
15
+ "92",
16
+ "93",
17
+ "94",
18
+ "95",
19
+ "96",
20
+ "97",
21
+ "98",
22
+ "99",
23
+ "75",
24
+ "77,"
32
25
  ];
33
- exports.phoneNumberValidation = {
34
- regexp: String.raw `^\+380(${exports.availableMobileCodes.join('|')})\d{7}$`,
35
- flags: ['i', 'g'],
36
- errorMessage: 'Упс, ви ввели неправильний номер телефону. Використовуйте формат + 38 (0ХХ) ХХХ ХХ ХХ.',
26
+ const phoneNumberValidation = {
27
+ regexp: String.raw`^\+380(${availableMobileCodes.join("|")})\d{7}$`,
28
+ flags: ["i", "g"],
29
+ errorMessage: "Упс, ви ввели неправильний номер телефону. Використовуйте формат + 38 (0ХХ) ХХХ ХХ ХХ."
37
30
  };
38
- exports.phoneNumberWithoutPlusValidation = {
39
- regexp: String.raw `^380(${exports.availableMobileCodes.join('|')})\d{7}$`,
40
- flags: ['i', 'g'],
41
- errorMessage: 'Упс, ви ввели неправильний номер телефону. Використовуйте формат 38 (0ХХ) ХХХ ХХ ХХ.',
31
+ const phoneNumberWithoutPlusValidation = {
32
+ regexp: String.raw`^380(${availableMobileCodes.join("|")})\d{7}$`,
33
+ flags: ["i", "g"],
34
+ errorMessage: "Упс, ви ввели неправильний номер телефону. Використовуйте формат 38 (0ХХ) ХХХ ХХ ХХ."
42
35
  };
43
- exports.emailValidation = {
44
- regexp: String.raw `^([a-zA-Z0-9_%+-]{1,}\.){0,}[a-zA-Z0-9_%+-]{1,}@([a-zA-Z0-9_%+-]{1,}\.){1,}[A-Za-z]{2,64}$`,
45
- flags: ['i'],
46
- errorMessage: 'Упс, ви ввели неправильний email. Виправте дані або спробуйте іншу пошту.',
36
+ const emailValidation = {
37
+ regexp: String.raw`^([a-zA-Z0-9_%+-]{1,}\.){0,}[a-zA-Z0-9_%+-]{1,}@([a-zA-Z0-9_%+-]{1,}\.){1,}[A-Za-z]{2,64}$`,
38
+ flags: ["i"],
39
+ errorMessage: "Упс, ви ввели неправильний email. Виправте дані або спробуйте іншу пошту."
47
40
  };
48
- exports.emailRuValidation = {
49
- regexp: String.raw `^([a-zA-Z0-9_%+-]{1,}\.){0,}[a-zA-Z0-9_%+-]{1,}@([a-zA-Z0-9_%+-]{1,}\.){1,}(?!ru|su)[A-Za-z]{2,64}$`,
50
- flags: ['i'],
51
- errorMessage: 'Йой, це ж електронна адреса з російським доменом. Ми не можемо її прийняти. Спробуйте іншу скриньку, будь ласка.',
41
+ const emailRuValidation = {
42
+ regexp: String.raw`^([a-zA-Z0-9_%+-]{1,}\.){0,}[a-zA-Z0-9_%+-]{1,}@([a-zA-Z0-9_%+-]{1,}\.){1,}(?!ru|su)[A-Za-z]{2,64}$`,
43
+ flags: ["i"],
44
+ errorMessage: "Йой, це ж електронна адреса з російським доменом. Ми не можемо її прийняти. Спробуйте іншу скриньку, будь ласка."
52
45
  };
53
- exports.shortTextValidation = {
54
- regexp: String.raw `^([a-z]|[а-яґєії]|\d|-|—|/|\s){1,10}$`,
55
- flags: ['i'],
56
- errorMessage: 'Введіть номер до 10 знаків, не використовуйте спецсимволи, окрім «-, /»',
46
+ const shortTextValidation = {
47
+ regexp: String.raw`^([a-z]|[а-яґєії]|\d|-|—|/|\s){1,10}$`,
48
+ flags: ["i"],
49
+ errorMessage: "Введіть номер до 10 знаків, не використовуйте спецсимволи, окрім «-, /»"
57
50
  };
58
- exports.zipValidation = {
59
- regexp: String.raw `^\d{5}$`,
60
- flags: [],
61
- errorMessage: 'Введіть індекс з 5 цифр',
51
+ const zipValidation = {
52
+ regexp: String.raw`^\d{5}$`,
53
+ flags: [],
54
+ errorMessage: "Введіть індекс з 5 цифр"
62
55
  };
63
56
  /** @deprecated use getListValidationSchema function instead */
64
- exports.listValidationSchema = {
65
- skip: { type: 'number', convert: true, min: 0, optional: true },
66
- limit: { type: 'number', convert: true, min: 0, max: 100, optional: true },
57
+ const listValidationSchema = {
58
+ skip: {
59
+ type: "number",
60
+ convert: true,
61
+ min: 0,
62
+ optional: true
63
+ },
64
+ limit: {
65
+ type: "number",
66
+ convert: true,
67
+ min: 0,
68
+ max: 100,
69
+ optional: true
70
+ }
67
71
  };
68
72
  function getListValidationSchema(min = 0, max = 100) {
69
- return {
70
- skip: { type: 'number', convert: true, min, optional: true },
71
- limit: { type: 'number', convert: true, min, max, optional: true },
72
- };
73
+ return {
74
+ skip: {
75
+ type: "number",
76
+ convert: true,
77
+ min,
78
+ optional: true
79
+ },
80
+ limit: {
81
+ type: "number",
82
+ convert: true,
83
+ min,
84
+ max,
85
+ optional: true
86
+ }
87
+ };
73
88
  }
74
- exports.appVersionsValidationSchema = {
75
- type: 'object',
76
- props: {
77
- versions: {
78
- type: 'object',
79
- optional: true,
80
- props: (0, lodash_frompairs_1.default)(Object.values(types_1.PlatformType).map((platformType) => [
81
- platformType,
82
- { type: 'array', items: { type: 'string' }, optional: true },
83
- ])),
84
- },
85
- minVersion: {
86
- type: 'object',
87
- optional: true,
88
- props: (0, lodash_frompairs_1.default)(Object.values(types_1.PlatformType).map((platformType) => [platformType, { type: 'string', optional: true }])),
89
- },
90
- maxVersion: {
91
- type: 'object',
92
- optional: true,
93
- props: (0, lodash_frompairs_1.default)(Object.values(types_1.PlatformType).map((platformType) => [platformType, { type: 'string', optional: true }])),
94
- },
95
- },
96
- optional: true,
89
+ const appVersionsValidationSchema = {
90
+ type: "object",
91
+ props: {
92
+ versions: {
93
+ type: "object",
94
+ optional: true,
95
+ props: fromPairs(Object.values(PlatformType).map((platformType) => [platformType, {
96
+ type: "array",
97
+ items: { type: "string" },
98
+ optional: true
99
+ }]))
100
+ },
101
+ minVersion: {
102
+ type: "object",
103
+ optional: true,
104
+ props: fromPairs(Object.values(PlatformType).map((platformType) => [platformType, {
105
+ type: "string",
106
+ optional: true
107
+ }]))
108
+ },
109
+ maxVersion: {
110
+ type: "object",
111
+ optional: true,
112
+ props: fromPairs(Object.values(PlatformType).map((platformType) => [platformType, {
113
+ type: "string",
114
+ optional: true
115
+ }]))
116
+ }
117
+ },
118
+ optional: true
97
119
  };
98
120
  function getStringDateSchema(format = `yyyy-MM-dd'T'HH:mm:ss.SSS'Z'`, optional = false) {
99
- return {
100
- type: 'string',
101
- empty: false,
102
- custom: (value, errors) => {
103
- if (optional && !value) {
104
- return value;
105
- }
106
- if (!optional && !value) {
107
- errors.push({ type: 'string', messages: `The date is required in the ${format} format!` });
108
- return value;
109
- }
110
- const isValid = luxon_1.DateTime.fromFormat(value, format).isValid;
111
- if (!isValid) {
112
- errors.push({ type: 'string', messages: `The date must be a valid date string ${format} format!` });
113
- return value;
114
- }
115
- return value;
116
- },
117
- optional,
118
- };
121
+ return {
122
+ type: "string",
123
+ empty: false,
124
+ custom: (value, errors) => {
125
+ if (optional && !value) return value;
126
+ if (!optional && !value) {
127
+ errors.push({
128
+ type: "string",
129
+ messages: `The date is required in the ${format} format!`
130
+ });
131
+ return value;
132
+ }
133
+ if (!DateTime.fromFormat(value, format).isValid) {
134
+ errors.push({
135
+ type: "string",
136
+ messages: `The date must be a valid date string ${format} format!`
137
+ });
138
+ return value;
139
+ }
140
+ return value;
141
+ },
142
+ optional
143
+ };
119
144
  }
120
- //# sourceMappingURL=index.js.map
145
+ //#endregion
146
+ export { appVersionsValidationSchema, availableMobileCodes, emailRuValidation, emailValidation, getListValidationSchema, getStringDateSchema, listValidationSchema, phoneNumberValidation, phoneNumberWithoutPlusValidation, shortTextValidation, zipValidation };
@@ -0,0 +1,15 @@
1
+ import { ValidationSchema } from "fastest-validator";
2
+ import { ErrorType } from "@diia-inhouse/errors";
3
+
4
+ //#region src/validator.d.ts
5
+ declare class AppValidator {
6
+ private readonly validator;
7
+ private customRules;
8
+ constructor();
9
+ compile(schema: ValidationSchema): (params: unknown) => boolean;
10
+ validate(params: unknown, schema: ValidationSchema, errorType?: ErrorType): boolean;
11
+ private getCustomValidatorsMessages;
12
+ private addCustomValidationRules;
13
+ }
14
+ //#endregion
15
+ export { AppValidator };
package/dist/validator.js CHANGED
@@ -1,50 +1,47 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
1
+ import { BufferValidationRule } from "./rules/buffer.js";
2
+ import { DateValidationRule } from "./rules/date.js";
3
+ import { ObjectIdValidationRule } from "./rules/objectId.js";
4
+ import { PhoneNumberValidationRule } from "./rules/phoneNumber.js";
5
+ import { VersionValidationRule } from "./rules/version.js";
6
+ import { InternationalPhoneNumberValidationRule } from "./rules/internationalPhoneNumber.js";
7
+ import "./rules/index.js";
8
+ import FastestValidator from "fastest-validator";
9
+ import { ErrorCode, ValidationError } from "@diia-inhouse/errors";
10
+ //#region src/validator.ts
11
+ var AppValidator = class {
12
+ validator;
13
+ customRules;
14
+ constructor() {
15
+ this.customRules = [
16
+ new BufferValidationRule(),
17
+ new DateValidationRule(),
18
+ new ObjectIdValidationRule(),
19
+ new PhoneNumberValidationRule(),
20
+ new InternationalPhoneNumberValidationRule(),
21
+ new VersionValidationRule()
22
+ ];
23
+ this.validator = new FastestValidator({
24
+ messages: this.getCustomValidatorsMessages(),
25
+ useNewCustomCheckerFunction: true
26
+ });
27
+ this.addCustomValidationRules();
28
+ }
29
+ compile(schema) {
30
+ return (params) => this.validate(params, schema);
31
+ }
32
+ validate(params, schema, errorType) {
33
+ const res = this.validator.validate(params, schema);
34
+ if (res !== true) throw new ValidationError(res, ErrorCode.ValidationError, errorType);
35
+ return true;
36
+ }
37
+ getCustomValidatorsMessages() {
38
+ const res = {};
39
+ for (const rule of this.customRules) res[rule.getName()] = rule.getMessage();
40
+ return res;
41
+ }
42
+ addCustomValidationRules() {
43
+ for (const rule of this.customRules) this.validator.add(rule.getName(), rule.getRule(this.validator));
44
+ }
4
45
  };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.AppValidator = void 0;
7
- const fastest_validator_1 = __importDefault(require("fastest-validator"));
8
- const errors_1 = require("@diia-inhouse/errors");
9
- const rules_1 = require("./rules");
10
- const internationalPhoneNumber_1 = require("./rules/internationalPhoneNumber");
11
- class AppValidator {
12
- validator;
13
- customRules;
14
- constructor() {
15
- this.customRules = [
16
- new rules_1.BufferValidationRule(),
17
- new rules_1.DateValidationRule(),
18
- new rules_1.ObjectIdValidationRule(),
19
- new rules_1.PhoneNumberValidationRule(),
20
- new internationalPhoneNumber_1.InternationalPhoneNumberValidationRule(),
21
- new rules_1.VersionValidationRule(),
22
- ];
23
- this.validator = new fastest_validator_1.default({ messages: this.getCustomValidatorsMessages(), useNewCustomCheckerFunction: true });
24
- this.addCustomValidationRules();
25
- }
26
- compile(schema) {
27
- return (params) => this.validate(params, schema);
28
- }
29
- validate(params, schema, errorType) {
30
- const res = this.validator.validate(params, schema);
31
- if (res !== true) {
32
- throw new errors_1.ValidationError(res, errors_1.ErrorCode.ValidationError, errorType);
33
- }
34
- return true;
35
- }
36
- getCustomValidatorsMessages() {
37
- const res = {};
38
- for (const rule of this.customRules) {
39
- res[rule.getName()] = rule.getMessage();
40
- }
41
- return res;
42
- }
43
- addCustomValidationRules() {
44
- for (const rule of this.customRules) {
45
- this.validator.add(rule.getName(), rule.getRule(this.validator));
46
- }
47
- }
48
- }
49
- exports.AppValidator = AppValidator;
50
- //# sourceMappingURL=validator.js.map
46
+ //#endregion
47
+ export { AppValidator };
package/package.json CHANGED
@@ -1,9 +1,17 @@
1
1
  {
2
2
  "name": "@diia-inhouse/validators",
3
- "version": "1.28.36",
3
+ "version": "2.2.0",
4
+ "type": "module",
4
5
  "description": "Data validators package",
5
6
  "main": "dist/index.js",
6
- "types": "dist/types/index.d.ts",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "default": "./dist/index.js"
12
+ },
13
+ "./package.json": "./package.json"
14
+ },
7
15
  "repository": "https://github.com/diia-open-source/be-pkg-validators",
8
16
  "author": "Diia",
9
17
  "license": "SEE LICENCE IN LICENCE.md",
@@ -15,10 +23,10 @@
15
23
  },
16
24
  "scripts": {
17
25
  "prebuild": "rimraf dist",
18
- "build": "tsc",
26
+ "build": "tsdown",
19
27
  "semantic-release": "semantic-release -e @diia-inhouse/configs/dist/semantic-release/service-stage ",
20
- "lint": "eslint . && prettier --check .",
21
- "lint-fix": "eslint . --fix && prettier --write .",
28
+ "lint": "oxlint && oxfmt --check .",
29
+ "lint-fix": "oxlint --fix && oxfmt .",
22
30
  "lint:lockfile": "lockfile-lint --path package-lock.json --allowed-hosts registry.npmjs.org --validate-https",
23
31
  "prepare": "npm run build",
24
32
  "test": "vitest run",
@@ -32,28 +40,31 @@
32
40
  "luxon": "3.7.2"
33
41
  },
34
42
  "peerDependencies": {
35
- "@diia-inhouse/errors": ">=1.0.0",
36
- "@diia-inhouse/types": ">=2.5.0"
43
+ "@diia-inhouse/errors": ">=2.0.0",
44
+ "@diia-inhouse/types": ">=13.1.0"
37
45
  },
38
46
  "devDependencies": {
39
- "@diia-inhouse/configs": "6.1.1",
40
- "@diia-inhouse/errors": "1.18.24",
41
- "@diia-inhouse/eslint-config": "8.8.2",
42
- "@diia-inhouse/test": "7.3.24",
43
- "@diia-inhouse/types": "11.7.0",
47
+ "@diia-inhouse/configs": "7.0.0",
48
+ "@diia-inhouse/errors": "2.1.0",
49
+ "@diia-inhouse/oxc-config": "1.10.0",
50
+ "@diia-inhouse/test": "8.2.0",
51
+ "@diia-inhouse/types": "13.1.3",
44
52
  "@types/lodash.frompairs": "4.0.9",
45
53
  "@types/luxon": "3.7.1",
46
- "@types/node": "25.3.2",
47
- "@vitest/coverage-v8": "4.0.18",
48
- "@vitest/ui": "4.0.18",
49
- "eslint": "9.30.1",
50
- "lockfile-lint": "4.14.1",
54
+ "@types/node": "25.6.2",
55
+ "@vitest/coverage-v8": "4.1.5",
56
+ "@vitest/ui": "4.1.5",
57
+ "lockfile-lint": "5.0.0",
51
58
  "madge": "8.0.0",
59
+ "oxfmt": "0.48.0",
60
+ "oxlint": "1.63.0",
61
+ "oxlint-tsgolint": "0.22.1",
52
62
  "rimraf": "6.1.3",
53
- "semantic-release": "24.2.1",
63
+ "semantic-release": "25.0.3",
64
+ "tsdown": "0.22.0",
54
65
  "typescript": "5.9.3",
55
66
  "vite-tsconfig-paths": "6.1.1",
56
- "vitest": "4.0.18"
67
+ "vitest": "4.1.5"
57
68
  },
58
69
  "release": {
59
70
  "extends": "@diia-inhouse/configs/dist/semantic-release/package",
@@ -64,7 +75,6 @@
64
75
  "commitlint": {
65
76
  "extends": "@diia-inhouse/configs/dist/commitlint"
66
77
  },
67
- "prettier": "@diia-inhouse/eslint-config/prettier",
68
78
  "madge": {
69
79
  "tsConfig": "./tsconfig.json"
70
80
  }
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAE5B,8CAA2B;AAE3B,4CAAyB"}
@@ -1,20 +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
- __exportStar(require("./rule"), exports);
18
- __exportStar(require("./schema"), exports);
19
- __exportStar(require("./validationSchema"), exports);
20
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAsB;AAEtB,2CAAwB;AAExB,qDAAkC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=rule.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rule.js","sourceRoot":"","sources":["../../src/interfaces/rule.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=schema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/interfaces/schema.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=validationSchema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validationSchema.js","sourceRoot":"","sources":["../../src/interfaces/validationSchema.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"buffer.js","sourceRoot":"","sources":["../../src/rules/buffer.ts"],"names":[],"mappings":";;;AAIA,MAAa,oBAAoB;IAC7B,OAAO;QACH,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,UAAU;QACN,OAAO,+CAA+C,CAAA;IAC1D,CAAC;IAED,OAAO,CAAC,SAAkB;QACtB;;WAEG;QACH,OAAO,CAAC,EAAE,QAAQ,EAA8B,EAAsB,EAAE;YACpE,MAAM,MAAM,GAAG;;sBAEL,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;;;;;aAK3E,CAAA;YAED,OAAO;gBACH,MAAM;aACT,CAAA;QACL,CAAC,CAAA;IACL,CAAC;CACJ;AA5BD,oDA4BC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"date.js","sourceRoot":"","sources":["../../src/rules/date.ts"],"names":[],"mappings":";;;AAIA,MAAa,kBAAkB;IACE;IAA7B,YAA6B,eAAe,qBAAqB;QAApC,iBAAY,GAAZ,YAAY,CAAwB;IAAG,CAAC;IAErE,OAAO;QACH,OAAO,YAAY,CAAA;IACvB,CAAC;IAED,UAAU;QACN,OAAO,sEAAsE,CAAA;IACjF,CAAC;IAED,OAAO,CAAC,SAAkB;QACtB;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAA0C,EAAE;YACpE,IAAI,SAAS,GAAG,KAAK,CAAA;YACrB,MAAM,GAAG,GAAa;gBAClB;oDACoC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;sBAC1D,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;;aAE/E;aACA,CAAA;YAED,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;gBAC1B,SAAS,GAAG,IAAI,CAAA;gBAChB,GAAG,CAAC,IAAI,CAAC;;;;;;8BAMK,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;;;iBAGvF,CAAC,CAAA;YACN,CAAC;YAED,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;YAEzB,OAAO;gBACH,SAAS;gBACT,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;aACzB,CAAA;QACL,CAAC,CAAA;IACL,CAAC;CACJ;AA/CD,gDA+CC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AAExB,yCAAsB;AAEtB,6CAA0B;AAE1B,gDAA6B;AAE7B,4CAAyB;AAEzB,6DAA0C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"internationalPhoneNumber.js","sourceRoot":"","sources":["../../src/rules/internationalPhoneNumber.ts"],"names":[],"mappings":";;;AAIA,MAAa,sCAAsC;IACvC,YAAY,GAAG,wEAAwE,CAAA;IAE/F,OAAO;QACH,OAAO,0BAA0B,CAAA;IACrC,CAAC;IAED,UAAU;QACN,OAAO,4EAA4E,CAAA;IACvF,CAAC;IAED,OAAO,CAAC,SAAkB;QACtB;;WAEG;QACH,OAAO,CAAC,EAAE,QAAQ,EAAE,EAAsB,EAAE;YACxC,MAAM,MAAM,GAAG;oDACyB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;sBAC1D,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;;;;aAI7F,CAAA;YAED,OAAO;gBACH,MAAM;aACT,CAAA;QACL,CAAC,CAAA;IACL,CAAC;CACJ;AA7BD,wFA6BC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"objectId.js","sourceRoot":"","sources":["../../src/rules/objectId.ts"],"names":[],"mappings":";;;AAIA,MAAM,OAAO,GAAG,gBAAgB,CAAA;AAEhC,MAAa,sBAAsB;IAC/B,OAAO;QACH,OAAO,UAAU,CAAA;IACrB,CAAC;IAED,UAAU;QACN,OAAO,iDAAiD,CAAA;IAC5D,CAAC;IAED,OAAO,CAAC,SAAkB;QACtB;;WAEG;QACH,OAAO,CAAC,EAAE,QAAQ,EAA8B,EAAsB,EAAE;YACpE,MAAM,MAAM,GAAG;oDACyB,OAAO,CAAC,QAAQ,EAAE;sBAChD,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;;;;aAI7E,CAAA;YAED,OAAO;gBACH,MAAM;aACT,CAAA;QACL,CAAC,CAAA;IACL,CAAC;CACJ;AA3BD,wDA2BC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"phoneNumber.js","sourceRoot":"","sources":["../../src/rules/phoneNumber.ts"],"names":[],"mappings":";;;AAGA,wCAAiD;AAEjD,MAAa,yBAAyB;IAC1B,YAAY,CAAQ;IAE5B;QACI,8DAA8D;QAC9D,IAAI,CAAC,YAAY,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,OAAO,8BAAoB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA,CAAC,8CAA8C;IACrK,CAAC;IAED,OAAO;QACH,OAAO,aAAa,CAAA;IACxB,CAAC;IAED,UAAU;QACN,OAAO,+EAA+E,CAAA;IAC1F,CAAC;IAED,OAAO,CAAC,SAAkB;QACtB;;WAEG;QACH,OAAO,CAAC,EAAE,QAAQ,EAAE,EAAsB,EAAE;YACxC,MAAM,MAAM,GAAG;oDACyB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;sBAC1D,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;;;;aAIhF,CAAA;YAED,OAAO;gBACH,MAAM;aACT,CAAA;QACL,CAAC,CAAA;IACL,CAAC;CACJ;AAlCD,8DAkCC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/rules/version.ts"],"names":[],"mappings":";;;AAIA,MAAM,OAAO,GAAG,QAAQ,CAAA;AAExB;;GAEG;AACH,MAAa,qBAAqB;IAC9B,OAAO;QACH,OAAO,SAAS,CAAA;IACpB,CAAC;IAED,UAAU;QACN,OAAO,+DAA+D,CAAA;IAC1E,CAAC;IAED,OAAO,CAAC,SAAkB;QACtB;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAwD,EAAsB,EAAE;YACtG,MAAM,GAAG,GAAa;gBAClB;;sBAEM,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;;;aAG3E;aACA,CAAA;YAED,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/D,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAA;gBAE3B,GAAG,CAAC,IAAI,CAAC;2BACE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;0BACzB,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;;;iBAGlH,CAAC,CAAA;YACN,CAAC;YAED,GAAG,CAAC,IAAI,CAAC;uBACE,OAAO,CAAC,QAAQ,EAAE;sBACnB,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;;;;aAI5E,CAAC,CAAA;YAEF,OAAO;gBACH,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;aACzB,CAAA;QACL,CAAC,CAAA;IACL,CAAC;CACJ;AA/CD,sDA+CC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export * from './interfaces';
2
- export * from './validator';
3
- export * from './schemas';
@@ -1,3 +0,0 @@
1
- export * from './rule';
2
- export * from './schema';
3
- export * from './validationSchema';
@@ -1,13 +0,0 @@
1
- import Fastest, { MessagesType, ValidationSchema } from 'fastest-validator';
2
- export type RuleValidator = (param: {
3
- messages: MessagesType;
4
- schema: ValidationSchema;
5
- }) => {
6
- source: string;
7
- sanitized?: boolean;
8
- };
9
- export interface Rule {
10
- getName(): string;
11
- getMessage(): string;
12
- getRule(validator: Fastest): RuleValidator;
13
- }
@@ -1,5 +0,0 @@
1
- export interface ParameterValidation {
2
- regexp: string;
3
- flags: string[];
4
- errorMessage: string;
5
- }