@webiny/validation 0.0.0-unstable.78f581c1d2 → 0.0.0-unstable.7be00a75a9

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 (61) hide show
  1. package/README.md +7 -405
  2. package/index.d.ts +4 -4
  3. package/index.js +52 -96
  4. package/index.js.map +1 -1
  5. package/package.json +17 -25
  6. package/types.d.ts +6 -3
  7. package/types.js +0 -5
  8. package/validation.d.ts +2 -2
  9. package/validation.js +66 -184
  10. package/validation.js.map +1 -1
  11. package/validationError.js +9 -26
  12. package/validationError.js.map +1 -1
  13. package/validators/creditCard.js +24 -66
  14. package/validators/creditCard.js.map +1 -1
  15. package/validators/dateGte.js +11 -35
  16. package/validators/dateGte.js.map +1 -1
  17. package/validators/dateLte.js +11 -35
  18. package/validators/dateLte.js.map +1 -1
  19. package/validators/email.js +9 -39
  20. package/validators/email.js.map +1 -1
  21. package/validators/eq.js +8 -39
  22. package/validators/eq.js.map +1 -1
  23. package/validators/gt.js +8 -36
  24. package/validators/gt.js.map +1 -1
  25. package/validators/gte.js +8 -36
  26. package/validators/gte.js.map +1 -1
  27. package/validators/in.js +8 -25
  28. package/validators/in.js.map +1 -1
  29. package/validators/integer.js +8 -24
  30. package/validators/integer.js.map +1 -1
  31. package/validators/json.js +10 -22
  32. package/validators/json.js.map +1 -1
  33. package/validators/lt.js +8 -24
  34. package/validators/lt.js.map +1 -1
  35. package/validators/lte.js +8 -24
  36. package/validators/lte.js.map +1 -1
  37. package/validators/maxLength.js +15 -42
  38. package/validators/maxLength.js.map +1 -1
  39. package/validators/minLength.js +15 -42
  40. package/validators/minLength.js.map +1 -1
  41. package/validators/number.js +9 -32
  42. package/validators/number.js.map +1 -1
  43. package/validators/numeric.js +9 -40
  44. package/validators/numeric.js.map +1 -1
  45. package/validators/password.js +9 -24
  46. package/validators/password.js.map +1 -1
  47. package/validators/phone.js +8 -24
  48. package/validators/phone.js.map +1 -1
  49. package/validators/required.js +7 -19
  50. package/validators/required.js.map +1 -1
  51. package/validators/slug.js +8 -24
  52. package/validators/slug.js.map +1 -1
  53. package/validators/time/index.js +29 -75
  54. package/validators/time/index.js.map +1 -1
  55. package/validators/timeGte.js +11 -36
  56. package/validators/timeGte.js.map +1 -1
  57. package/validators/timeLte.js +11 -36
  58. package/validators/timeLte.js.map +1 -1
  59. package/validators/url.js +19 -52
  60. package/validators/url.js.map +1 -1
  61. package/types.js.map +0 -1
@@ -1,34 +1,11 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _isNumber2 = _interopRequireDefault(require("lodash/isNumber"));
11
-
12
- var _isNaN2 = _interopRequireDefault(require("lodash/isNaN"));
13
-
14
- var _validationError = _interopRequireDefault(require("../validationError"));
15
-
16
- /**
17
- * @function number
18
- * @description This validator checks of the given value is a number
19
- * @param {any} value
20
- * @return {boolean}
21
- */
22
- var _default = value => {
23
- if (!value && !(0, _isNaN2.default)(value)) {
24
- return;
25
- }
26
-
27
- if ((0, _isNumber2.default)(value) && !(0, _isNaN2.default)(value)) {
28
- return;
29
- }
30
-
31
- throw new _validationError.default("Value needs to be a number.");
1
+ import lodash_isNaN from "lodash/isNaN.js";
2
+ import isNumber from "lodash/isNumber.js";
3
+ import validationError from "../validationError.js";
4
+ const number = (value)=>{
5
+ if (!value && !lodash_isNaN(value)) return;
6
+ if (isNumber(value) && !lodash_isNaN(value)) return;
7
+ throw new validationError("Value needs to be a number.");
32
8
  };
9
+ export default number;
33
10
 
34
- exports.default = _default;
11
+ //# sourceMappingURL=number.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["value","ValidationError"],"sources":["number.ts"],"sourcesContent":["import _ from \"lodash\";\nimport ValidationError from \"~/validationError\";\n\n/**\n * @function number\n * @description This validator checks of the given value is a number\n * @param {any} value\n * @return {boolean}\n */\nexport default (value: any) => {\n if (!value && !_.isNaN(value)) {\n return;\n }\n\n if (_.isNumber(value) && !_.isNaN(value)) {\n return;\n }\n\n throw new ValidationError(\"Value needs to be a number.\");\n};\n"],"mappings":";;;;;;;;;;;;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;eACgBA,KAAD,IAAgB;EAC3B,IAAI,CAACA,KAAD,IAAU,CAAC,qBAAQA,KAAR,CAAf,EAA+B;IAC3B;EACH;;EAED,IAAI,wBAAWA,KAAX,KAAqB,CAAC,qBAAQA,KAAR,CAA1B,EAA0C;IACtC;EACH;;EAED,MAAM,IAAIC,wBAAJ,CAAoB,6BAApB,CAAN;AACH,C"}
1
+ {"version":3,"file":"validators/number.js","sources":["../../src/validators/number.ts"],"sourcesContent":["import isNaN from \"lodash/isNaN.js\";\nimport isNumber from \"lodash/isNumber.js\";\nimport ValidationError from \"~/validationError.js\";\n\n/**\n * @function number\n * @description This validator checks of the given value is a number\n * @param {any} value\n * @return {boolean}\n */\nexport default (value: any) => {\n if (!value && !isNaN(value)) {\n return;\n }\n\n if (isNumber(value) && !isNaN(value)) {\n return;\n }\n\n throw new ValidationError(\"Value needs to be a number.\");\n};\n"],"names":["value","isNaN","isNumber","ValidationError"],"mappings":";;;AAUA,eAAgB,CAAAA;IACZ,IAAI,CAACA,SAAS,CAACC,aAAMD,QACjB;IAGJ,IAAIE,SAASF,UAAU,CAACC,aAAMD,QAC1B;IAGJ,MAAM,IAAIG,gBAAgB;AAC9B"}
@@ -1,42 +1,11 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _validationError = _interopRequireDefault(require("../validationError"));
11
-
12
- var _isnumeric = _interopRequireDefault(require("isnumeric"));
13
-
14
- /**
15
- * Package isnumeric does not have types so we ignore it.
16
- */
17
- // @ts-ignore
18
-
19
- /**
20
- * @function number
21
- * @description This validator checks if the given value is numeric
22
- * @param {any} value
23
- * @return {boolean}
24
- */
25
- var _default = value => {
26
- // Eliminate edge cases
27
- if (typeof value === "undefined" || value === 0 || value === "0") {
28
- return;
29
- }
30
-
31
- if (!value && !isNaN(value)) {
32
- return;
33
- }
34
-
35
- if ((0, _isnumeric.default)(value)) {
36
- return;
37
- }
38
-
39
- throw new _validationError.default("Value needs to be numeric.");
1
+ import validationError from "../validationError.js";
2
+ const isNumeric = (value)=>!isNaN(parseFloat(String(value))) && isFinite(Number(value));
3
+ const numeric = (value)=>{
4
+ if (void 0 === value || 0 === value || "0" === value) return;
5
+ if (!value && !isNaN(value)) return;
6
+ if (isNumeric(value)) return;
7
+ throw new validationError("Value needs to be numeric.");
40
8
  };
9
+ export default numeric;
41
10
 
42
- exports.default = _default;
11
+ //# sourceMappingURL=numeric.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["value","isNaN","isNumeric","ValidationError"],"sources":["numeric.ts"],"sourcesContent":["import ValidationError from \"~/validationError\";\n/**\n * Package isnumeric does not have types so we ignore it.\n */\n// @ts-ignore\nimport isNumeric from \"isnumeric\";\n\n/**\n * @function number\n * @description This validator checks if the given value is numeric\n * @param {any} value\n * @return {boolean}\n */\nexport default (value: any) => {\n // Eliminate edge cases\n if (typeof value === \"undefined\" || value === 0 || value === \"0\") {\n return;\n }\n\n if (!value && !isNaN(value)) {\n return;\n }\n\n if (isNumeric(value)) {\n return;\n }\n\n throw new ValidationError(\"Value needs to be numeric.\");\n};\n"],"mappings":";;;;;;;;;AAAA;;AAKA;;AAJA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;eACgBA,KAAD,IAAgB;EAC3B;EACA,IAAI,OAAOA,KAAP,KAAiB,WAAjB,IAAgCA,KAAK,KAAK,CAA1C,IAA+CA,KAAK,KAAK,GAA7D,EAAkE;IAC9D;EACH;;EAED,IAAI,CAACA,KAAD,IAAU,CAACC,KAAK,CAACD,KAAD,CAApB,EAA6B;IACzB;EACH;;EAED,IAAI,IAAAE,kBAAA,EAAUF,KAAV,CAAJ,EAAsB;IAClB;EACH;;EAED,MAAM,IAAIG,wBAAJ,CAAoB,4BAApB,CAAN;AACH,C"}
1
+ {"version":3,"file":"validators/numeric.js","sources":["../../src/validators/numeric.ts"],"sourcesContent":["import ValidationError from \"~/validationError.js\";\nconst isNumeric = (value: unknown): boolean => {\n return !isNaN(parseFloat(String(value))) && isFinite(Number(value));\n};\n\n/**\n * @function number\n * @description This validator checks if the given value is numeric\n * @param {any} value\n * @return {boolean}\n */\nexport default (value: any) => {\n // Eliminate edge cases\n if (typeof value === \"undefined\" || value === 0 || value === \"0\") {\n return;\n }\n\n if (!value && !isNaN(value)) {\n return;\n }\n\n if (isNumeric(value)) {\n return;\n }\n\n throw new ValidationError(\"Value needs to be numeric.\");\n};\n"],"names":["isNumeric","value","isNaN","parseFloat","String","isFinite","Number","ValidationError"],"mappings":";AACA,MAAMA,YAAY,CAACC,QACR,CAACC,MAAMC,WAAWC,OAAOH,YAAYI,SAASC,OAAOL;AAShE,gBAAgB,CAAAA;IAEZ,IAAI,AAAiB,WAAVA,SAAyBA,AAAU,MAAVA,SAAeA,AAAU,QAAVA,OAC/C;IAGJ,IAAI,CAACA,SAAS,CAACC,MAAMD,QACjB;IAGJ,IAAID,UAAUC,QACV;IAGJ,MAAM,IAAIM,gBAAgB;AAC9B"}
@@ -1,26 +1,11 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _validationError = _interopRequireDefault(require("../validationError"));
11
-
12
- var _default = (value, params) => {
13
- if (!value) {
14
- return;
15
- }
16
-
17
- value = value + "";
18
- const length = params ? params[0] || 6 : 6;
19
- const test = value.match(new RegExp(`^.{${length},}$`));
20
-
21
- if (test === null) {
22
- throw new _validationError.default(`Password must contain at least ${length} characters`);
23
- }
1
+ import validationError from "../validationError.js";
2
+ const validators_password = (value, params)=>{
3
+ if (!value) return;
4
+ value += "";
5
+ const length = params ? params[0] || 6 : 6;
6
+ const test = value.match(new RegExp(`^.{${length},}$`));
7
+ if (null === test) throw new validationError(`Password must contain at least ${length} characters`);
24
8
  };
9
+ export default validators_password;
25
10
 
26
- exports.default = _default;
11
+ //# sourceMappingURL=password.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["value","params","length","test","match","RegExp","ValidationError"],"sources":["password.ts"],"sourcesContent":["import ValidationError from \"~/validationError\";\n\nexport default (value: any, params?: string[]) => {\n if (!value) {\n return;\n }\n value = value + \"\";\n\n const length = params ? params[0] || 6 : 6;\n const test = value.match(new RegExp(`^.{${length},}$`));\n if (test === null) {\n throw new ValidationError(`Password must contain at least ${length} characters`);\n }\n};\n"],"mappings":";;;;;;;;;AAAA;;eAEe,CAACA,KAAD,EAAaC,MAAb,KAAmC;EAC9C,IAAI,CAACD,KAAL,EAAY;IACR;EACH;;EACDA,KAAK,GAAGA,KAAK,GAAG,EAAhB;EAEA,MAAME,MAAM,GAAGD,MAAM,GAAGA,MAAM,CAAC,CAAD,CAAN,IAAa,CAAhB,GAAoB,CAAzC;EACA,MAAME,IAAI,GAAGH,KAAK,CAACI,KAAN,CAAY,IAAIC,MAAJ,CAAY,MAAKH,MAAO,KAAxB,CAAZ,CAAb;;EACA,IAAIC,IAAI,KAAK,IAAb,EAAmB;IACf,MAAM,IAAIG,wBAAJ,CAAqB,kCAAiCJ,MAAO,aAA7D,CAAN;EACH;AACJ,C"}
1
+ {"version":3,"file":"validators/password.js","sources":["../../src/validators/password.ts"],"sourcesContent":["import ValidationError from \"~/validationError.js\";\n\nexport default (value: any, params?: string[]) => {\n if (!value) {\n return;\n }\n value = value + \"\";\n\n const length = params ? params[0] || 6 : 6;\n const test = value.match(new RegExp(`^.{${length},}$`));\n if (test === null) {\n throw new ValidationError(`Password must contain at least ${length} characters`);\n }\n};\n"],"names":["value","params","length","test","RegExp","ValidationError"],"mappings":";AAEA,4BAAgB,CAAAA,OAAYC;IACxB,IAAI,CAACD,OACD;IAEJA,SAAgB;IAEhB,MAAME,SAASD,SAASA,MAAM,CAAC,EAAE,IAAI,IAAI;IACzC,MAAME,OAAOH,MAAM,KAAK,CAAC,IAAII,OAAO,CAAC,GAAG,EAAEF,OAAO,GAAG,CAAC;IACrD,IAAIC,AAAS,SAATA,MACA,MAAM,IAAIE,gBAAgB,CAAC,+BAA+B,EAAEH,OAAO,WAAW,CAAC;AAEvF"}
@@ -1,26 +1,10 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _validationError = _interopRequireDefault(require("../validationError"));
11
-
12
- var _default = value => {
13
- if (!value) {
14
- return;
15
- }
16
-
17
- value = value + "";
18
-
19
- if (value.match(/^[-+0-9()/\s]+$/)) {
20
- return;
21
- }
22
-
23
- throw new _validationError.default("Value must be a valid phone number.");
1
+ import validationError from "../validationError.js";
2
+ const phone = (value)=>{
3
+ if (!value) return;
4
+ value += "";
5
+ if (value.match(/^[-+0-9()/\s]+$/)) return;
6
+ throw new validationError("Value must be a valid phone number.");
24
7
  };
8
+ export default phone;
25
9
 
26
- exports.default = _default;
10
+ //# sourceMappingURL=phone.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["value","match","ValidationError"],"sources":["phone.ts"],"sourcesContent":["import ValidationError from \"~/validationError\";\n\nexport default (value: any) => {\n if (!value) {\n return;\n }\n value = value + \"\";\n\n if (value.match(/^[-+0-9()/\\s]+$/)) {\n return;\n }\n throw new ValidationError(\"Value must be a valid phone number.\");\n};\n"],"mappings":";;;;;;;;;AAAA;;eAEgBA,KAAD,IAAgB;EAC3B,IAAI,CAACA,KAAL,EAAY;IACR;EACH;;EACDA,KAAK,GAAGA,KAAK,GAAG,EAAhB;;EAEA,IAAIA,KAAK,CAACC,KAAN,CAAY,iBAAZ,CAAJ,EAAoC;IAChC;EACH;;EACD,MAAM,IAAIC,wBAAJ,CAAoB,qCAApB,CAAN;AACH,C"}
1
+ {"version":3,"file":"validators/phone.js","sources":["../../src/validators/phone.ts"],"sourcesContent":["import ValidationError from \"~/validationError.js\";\n\nexport default (value: any) => {\n if (!value) {\n return;\n }\n value = value + \"\";\n\n if (value.match(/^[-+0-9()/\\s]+$/)) {\n return;\n }\n throw new ValidationError(\"Value must be a valid phone number.\");\n};\n"],"names":["value","ValidationError"],"mappings":";AAEA,cAAgB,CAAAA;IACZ,IAAI,CAACA,OACD;IAEJA,SAAgB;IAEhB,IAAIA,MAAM,KAAK,CAAC,oBACZ;IAEJ,MAAM,IAAIC,gBAAgB;AAC9B"}
@@ -1,22 +1,10 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _validationError = _interopRequireDefault(require("../validationError"));
11
-
12
- const throwError = () => {
13
- throw new _validationError.default("Value is required.");
1
+ import validationError from "../validationError.js";
2
+ const throwError = ()=>{
3
+ throw new validationError("Value is required.");
14
4
  };
15
-
16
- var _default = value => {
17
- if (value === "" || value === null || value === undefined) {
18
- throwError();
19
- }
5
+ const required = (value)=>{
6
+ if ("" === value || null == value) throwError();
20
7
  };
8
+ export default required;
21
9
 
22
- exports.default = _default;
10
+ //# sourceMappingURL=required.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["throwError","ValidationError","value","undefined"],"sources":["required.ts"],"sourcesContent":["import ValidationError from \"~/validationError\";\n\nconst throwError = () => {\n throw new ValidationError(\"Value is required.\");\n};\n\nexport default (value: any) => {\n if (value === \"\" || value === null || value === undefined) {\n throwError();\n }\n};\n"],"mappings":";;;;;;;;;AAAA;;AAEA,MAAMA,UAAU,GAAG,MAAM;EACrB,MAAM,IAAIC,wBAAJ,CAAoB,oBAApB,CAAN;AACH,CAFD;;eAIgBC,KAAD,IAAgB;EAC3B,IAAIA,KAAK,KAAK,EAAV,IAAgBA,KAAK,KAAK,IAA1B,IAAkCA,KAAK,KAAKC,SAAhD,EAA2D;IACvDH,UAAU;EACb;AACJ,C"}
1
+ {"version":3,"file":"validators/required.js","sources":["../../src/validators/required.ts"],"sourcesContent":["import ValidationError from \"~/validationError.js\";\n\nconst throwError = () => {\n throw new ValidationError(\"Value is required.\");\n};\n\nexport default (value: any) => {\n if (value === \"\" || value === null || value === undefined) {\n throwError();\n }\n};\n"],"names":["throwError","ValidationError","value"],"mappings":";AAEA,MAAMA,aAAa;IACf,MAAM,IAAIC,gBAAgB;AAC9B;AAEA,iBAAgB,CAAAC;IACZ,IAAIA,AAAU,OAAVA,SAAkCA,QAAlBA,OAChBF;AAER"}
@@ -1,26 +1,10 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _validationError = _interopRequireDefault(require("../validationError"));
11
-
12
- var _default = value => {
13
- if (!value) {
14
- return;
15
- }
16
-
17
- value = value + "";
18
-
19
- if (value.match(/^[a-z0-9]+(-[a-z0-9]+)*$/) && value.length <= 100) {
20
- return;
21
- }
22
-
23
- throw new _validationError.default("Slug must consist of only 'a-z', '0-9' and '-' and be max 100 characters long (for example: 'some-slug' or 'some-slug-2')");
1
+ import validationError from "../validationError.js";
2
+ const slug = (value)=>{
3
+ if (!value) return;
4
+ value += "";
5
+ if (value.match(/^[a-z0-9]+(-[a-z0-9]+)*$/)) return;
6
+ throw new validationError("Slug must consist of only 'a-z', '0-9' and '-' (for example: 'some-slug' or 'some-slug-2')");
24
7
  };
8
+ export default slug;
25
9
 
26
- exports.default = _default;
10
+ //# sourceMappingURL=slug.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["value","match","length","ValidationError"],"sources":["slug.ts"],"sourcesContent":["import ValidationError from \"~/validationError\";\n\nexport default (value: any) => {\n if (!value) {\n return;\n }\n value = value + \"\";\n\n if (value.match(/^[a-z0-9]+(-[a-z0-9]+)*$/) && value.length <= 100) {\n return;\n }\n\n throw new ValidationError(\n \"Slug must consist of only 'a-z', '0-9' and '-' and be max 100 characters long (for example: 'some-slug' or 'some-slug-2')\"\n );\n};\n"],"mappings":";;;;;;;;;AAAA;;eAEgBA,KAAD,IAAgB;EAC3B,IAAI,CAACA,KAAL,EAAY;IACR;EACH;;EACDA,KAAK,GAAGA,KAAK,GAAG,EAAhB;;EAEA,IAAIA,KAAK,CAACC,KAAN,CAAY,0BAAZ,KAA2CD,KAAK,CAACE,MAAN,IAAgB,GAA/D,EAAoE;IAChE;EACH;;EAED,MAAM,IAAIC,wBAAJ,CACF,2HADE,CAAN;AAGH,C"}
1
+ {"version":3,"file":"validators/slug.js","sources":["../../src/validators/slug.ts"],"sourcesContent":["import ValidationError from \"~/validationError.js\";\n\nexport default (value: any) => {\n if (!value) {\n return;\n }\n value = value + \"\";\n\n if (value.match(/^[a-z0-9]+(-[a-z0-9]+)*$/)) {\n return;\n }\n\n throw new ValidationError(\n \"Slug must consist of only 'a-z', '0-9' and '-' (for example: 'some-slug' or 'some-slug-2')\"\n );\n};\n"],"names":["value","ValidationError"],"mappings":";AAEA,aAAgB,CAAAA;IACZ,IAAI,CAACA,OACD;IAEJA,SAAgB;IAEhB,IAAIA,MAAM,KAAK,CAAC,6BACZ;IAGJ,MAAM,IAAIC,gBACN;AAER"}
@@ -1,79 +1,33 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.compareTime = void 0;
9
-
10
- var _validationError = _interopRequireDefault(require("../../validationError"));
11
-
12
- const parseTime = value => {
13
- const parsed = value.split(":").map(Number);
14
-
15
- if (parsed.length < 2) {
16
- throw new _validationError.default(`Value "${value}" does not look like time.`);
17
- }
18
-
19
- const [hours, minutes, seconds = 0] = parsed;
20
-
21
- if (hours >= 24) {
22
- throw new _validationError.default(`There cannot be more than 24 hours. Value parsed is "${value}".`);
23
- } else if (hours < 0) {
24
- throw new _validationError.default(`Hours cannot go into negative. Value parsed is "${value}".`);
25
- } else if (minutes >= 60) {
26
- throw new _validationError.default(`There cannot be more than 59 minutes. Value parsed is "${value}".`);
27
- } else if (minutes < 0) {
28
- throw new _validationError.default(`Minutes cannot go into negative. Value parsed is "${value}".`);
29
- } else if (seconds >= 60) {
30
- throw new _validationError.default(`There cannot be more than 59 seconds. Value parsed is "${value}".`);
31
- } else if (seconds < 0) {
32
- throw new _validationError.default(`Seconds cannot go into negative. Value parsed is "${value}".`);
33
- }
34
-
35
- return {
36
- hours,
37
- minutes,
38
- seconds
39
- };
1
+ import validationError from "../../validationError.js";
2
+ const parseTime = (value)=>{
3
+ const parsed = value.split(":").map(Number);
4
+ if (parsed.length < 2) throw new validationError(`Value "${value}" does not look like time.`);
5
+ const [hours, minutes, seconds = 0] = parsed;
6
+ if (hours >= 24) throw new validationError(`There cannot be more than 24 hours. Value parsed is "${value}".`);
7
+ if (hours < 0) throw new validationError(`Hours cannot go into negative. Value parsed is "${value}".`);
8
+ if (minutes >= 60) throw new validationError(`There cannot be more than 59 minutes. Value parsed is "${value}".`);
9
+ if (minutes < 0) throw new validationError(`Minutes cannot go into negative. Value parsed is "${value}".`);
10
+ if (seconds >= 60) throw new validationError(`There cannot be more than 59 seconds. Value parsed is "${value}".`);
11
+ else if (seconds < 0) throw new validationError(`Seconds cannot go into negative. Value parsed is "${value}".`);
12
+ return {
13
+ hours,
14
+ minutes,
15
+ seconds
16
+ };
40
17
  };
41
- /**
42
- * returns 1 if time is greater than compareTo
43
- * returns 0 if they are equal
44
- * returns -1 if compareTo is greater than time
45
- */
46
-
47
-
48
- const compareTime = (time, compareTo) => {
49
- const {
50
- hours: timeHours,
51
- minutes: timeMinutes,
52
- seconds: timeSeconds
53
- } = parseTime(time);
54
- const {
55
- hours: compareToHours,
56
- minutes: compareToMinutes,
57
- seconds: compareToSeconds
58
- } = parseTime(compareTo);
59
-
60
- if (timeHours > compareToHours) {
61
- return 1;
62
- }
63
-
64
- if (timeHours === compareToHours) {
65
- if (timeMinutes > compareToMinutes) {
66
- return 1;
67
- } else if (timeMinutes === compareToMinutes) {
68
- if (timeSeconds > compareToSeconds) {
69
- return 1;
70
- } else if (timeSeconds === compareToSeconds) {
71
- return 0;
72
- }
18
+ const compareTime = (time, compareTo)=>{
19
+ const { hours: timeHours, minutes: timeMinutes, seconds: timeSeconds } = parseTime(time);
20
+ const { hours: compareToHours, minutes: compareToMinutes, seconds: compareToSeconds } = parseTime(compareTo);
21
+ if (timeHours > compareToHours) return 1;
22
+ if (timeHours === compareToHours) {
23
+ if (timeMinutes > compareToMinutes) return 1;
24
+ else if (timeMinutes === compareToMinutes) {
25
+ if (timeSeconds > compareToSeconds) return 1;
26
+ else if (timeSeconds === compareToSeconds) return 0;
27
+ }
73
28
  }
74
- }
75
-
76
- return -1;
29
+ return -1;
77
30
  };
31
+ export { compareTime };
78
32
 
79
- exports.compareTime = compareTime;
33
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["parseTime","value","parsed","split","map","Number","length","ValidationError","hours","minutes","seconds","compareTime","time","compareTo","timeHours","timeMinutes","timeSeconds","compareToHours","compareToMinutes","compareToSeconds"],"sources":["index.ts"],"sourcesContent":["import ValidationError from \"~/validationError\";\n\ninterface ParsedTimeResult {\n hours: number;\n minutes: number;\n seconds: number;\n}\nconst parseTime = (value: string): ParsedTimeResult => {\n const parsed = value.split(\":\").map(Number);\n if (parsed.length < 2) {\n throw new ValidationError(`Value \"${value}\" does not look like time.`);\n }\n const [hours, minutes, seconds = 0] = parsed;\n if (hours >= 24) {\n throw new ValidationError(\n `There cannot be more than 24 hours. Value parsed is \"${value}\".`\n );\n } else if (hours < 0) {\n throw new ValidationError(`Hours cannot go into negative. Value parsed is \"${value}\".`);\n } else if (minutes >= 60) {\n throw new ValidationError(\n `There cannot be more than 59 minutes. Value parsed is \"${value}\".`\n );\n } else if (minutes < 0) {\n throw new ValidationError(`Minutes cannot go into negative. Value parsed is \"${value}\".`);\n } else if (seconds >= 60) {\n throw new ValidationError(\n `There cannot be more than 59 seconds. Value parsed is \"${value}\".`\n );\n } else if (seconds < 0) {\n throw new ValidationError(`Seconds cannot go into negative. Value parsed is \"${value}\".`);\n }\n return {\n hours,\n minutes,\n seconds\n };\n};\n/**\n * returns 1 if time is greater than compareTo\n * returns 0 if they are equal\n * returns -1 if compareTo is greater than time\n */\nexport const compareTime = (time: string, compareTo: string): number => {\n const { hours: timeHours, minutes: timeMinutes, seconds: timeSeconds } = parseTime(time);\n const {\n hours: compareToHours,\n minutes: compareToMinutes,\n seconds: compareToSeconds\n } = parseTime(compareTo);\n if (timeHours > compareToHours) {\n return 1;\n }\n if (timeHours === compareToHours) {\n if (timeMinutes > compareToMinutes) {\n return 1;\n } else if (timeMinutes === compareToMinutes) {\n if (timeSeconds > compareToSeconds) {\n return 1;\n } else if (timeSeconds === compareToSeconds) {\n return 0;\n }\n }\n }\n return -1;\n};\n"],"mappings":";;;;;;;;;AAAA;;AAOA,MAAMA,SAAS,GAAIC,KAAD,IAAqC;EACnD,MAAMC,MAAM,GAAGD,KAAK,CAACE,KAAN,CAAY,GAAZ,EAAiBC,GAAjB,CAAqBC,MAArB,CAAf;;EACA,IAAIH,MAAM,CAACI,MAAP,GAAgB,CAApB,EAAuB;IACnB,MAAM,IAAIC,wBAAJ,CAAqB,UAASN,KAAM,4BAApC,CAAN;EACH;;EACD,MAAM,CAACO,KAAD,EAAQC,OAAR,EAAiBC,OAAO,GAAG,CAA3B,IAAgCR,MAAtC;;EACA,IAAIM,KAAK,IAAI,EAAb,EAAiB;IACb,MAAM,IAAID,wBAAJ,CACD,wDAAuDN,KAAM,IAD5D,CAAN;EAGH,CAJD,MAIO,IAAIO,KAAK,GAAG,CAAZ,EAAe;IAClB,MAAM,IAAID,wBAAJ,CAAqB,mDAAkDN,KAAM,IAA7E,CAAN;EACH,CAFM,MAEA,IAAIQ,OAAO,IAAI,EAAf,EAAmB;IACtB,MAAM,IAAIF,wBAAJ,CACD,0DAAyDN,KAAM,IAD9D,CAAN;EAGH,CAJM,MAIA,IAAIQ,OAAO,GAAG,CAAd,EAAiB;IACpB,MAAM,IAAIF,wBAAJ,CAAqB,qDAAoDN,KAAM,IAA/E,CAAN;EACH,CAFM,MAEA,IAAIS,OAAO,IAAI,EAAf,EAAmB;IACtB,MAAM,IAAIH,wBAAJ,CACD,0DAAyDN,KAAM,IAD9D,CAAN;EAGH,CAJM,MAIA,IAAIS,OAAO,GAAG,CAAd,EAAiB;IACpB,MAAM,IAAIH,wBAAJ,CAAqB,qDAAoDN,KAAM,IAA/E,CAAN;EACH;;EACD,OAAO;IACHO,KADG;IAEHC,OAFG;IAGHC;EAHG,CAAP;AAKH,CA9BD;AA+BA;AACA;AACA;AACA;AACA;;;AACO,MAAMC,WAAW,GAAG,CAACC,IAAD,EAAeC,SAAf,KAA6C;EACpE,MAAM;IAAEL,KAAK,EAAEM,SAAT;IAAoBL,OAAO,EAAEM,WAA7B;IAA0CL,OAAO,EAAEM;EAAnD,IAAmEhB,SAAS,CAACY,IAAD,CAAlF;EACA,MAAM;IACFJ,KAAK,EAAES,cADL;IAEFR,OAAO,EAAES,gBAFP;IAGFR,OAAO,EAAES;EAHP,IAIFnB,SAAS,CAACa,SAAD,CAJb;;EAKA,IAAIC,SAAS,GAAGG,cAAhB,EAAgC;IAC5B,OAAO,CAAP;EACH;;EACD,IAAIH,SAAS,KAAKG,cAAlB,EAAkC;IAC9B,IAAIF,WAAW,GAAGG,gBAAlB,EAAoC;MAChC,OAAO,CAAP;IACH,CAFD,MAEO,IAAIH,WAAW,KAAKG,gBAApB,EAAsC;MACzC,IAAIF,WAAW,GAAGG,gBAAlB,EAAoC;QAChC,OAAO,CAAP;MACH,CAFD,MAEO,IAAIH,WAAW,KAAKG,gBAApB,EAAsC;QACzC,OAAO,CAAP;MACH;IACJ;EACJ;;EACD,OAAO,CAAC,CAAR;AACH,CAtBM"}
1
+ {"version":3,"file":"validators/time/index.js","sources":["../../../src/validators/time/index.ts"],"sourcesContent":["import ValidationError from \"~/validationError.js\";\n\ninterface ParsedTimeResult {\n hours: number;\n minutes: number;\n seconds: number;\n}\nconst parseTime = (value: string): ParsedTimeResult => {\n const parsed = value.split(\":\").map(Number);\n if (parsed.length < 2) {\n throw new ValidationError(`Value \"${value}\" does not look like time.`);\n }\n const [hours, minutes, seconds = 0] = parsed;\n if (hours >= 24) {\n throw new ValidationError(\n `There cannot be more than 24 hours. Value parsed is \"${value}\".`\n );\n } else if (hours < 0) {\n throw new ValidationError(`Hours cannot go into negative. Value parsed is \"${value}\".`);\n } else if (minutes >= 60) {\n throw new ValidationError(\n `There cannot be more than 59 minutes. Value parsed is \"${value}\".`\n );\n } else if (minutes < 0) {\n throw new ValidationError(`Minutes cannot go into negative. Value parsed is \"${value}\".`);\n } else if (seconds >= 60) {\n throw new ValidationError(\n `There cannot be more than 59 seconds. Value parsed is \"${value}\".`\n );\n } else if (seconds < 0) {\n throw new ValidationError(`Seconds cannot go into negative. Value parsed is \"${value}\".`);\n }\n return {\n hours,\n minutes,\n seconds\n };\n};\n/**\n * returns 1 if time is greater than compareTo\n * returns 0 if they are equal\n * returns -1 if compareTo is greater than time\n */\nexport const compareTime = (time: string, compareTo: string): number => {\n const { hours: timeHours, minutes: timeMinutes, seconds: timeSeconds } = parseTime(time);\n const {\n hours: compareToHours,\n minutes: compareToMinutes,\n seconds: compareToSeconds\n } = parseTime(compareTo);\n if (timeHours > compareToHours) {\n return 1;\n }\n if (timeHours === compareToHours) {\n if (timeMinutes > compareToMinutes) {\n return 1;\n } else if (timeMinutes === compareToMinutes) {\n if (timeSeconds > compareToSeconds) {\n return 1;\n } else if (timeSeconds === compareToSeconds) {\n return 0;\n }\n }\n }\n return -1;\n};\n"],"names":["parseTime","value","parsed","Number","ValidationError","hours","minutes","seconds","compareTime","time","compareTo","timeHours","timeMinutes","timeSeconds","compareToHours","compareToMinutes","compareToSeconds"],"mappings":";AAOA,MAAMA,YAAY,CAACC;IACf,MAAMC,SAASD,MAAM,KAAK,CAAC,KAAK,GAAG,CAACE;IACpC,IAAID,OAAO,MAAM,GAAG,GAChB,MAAM,IAAIE,gBAAgB,CAAC,OAAO,EAAEH,MAAM,0BAA0B,CAAC;IAEzE,MAAM,CAACI,OAAOC,SAASC,UAAU,CAAC,CAAC,GAAGL;IACtC,IAAIG,SAAS,IACT,MAAM,IAAID,gBACN,CAAC,qDAAqD,EAAEH,MAAM,EAAE,CAAC;IAElE,IAAII,QAAQ,GACf,MAAM,IAAID,gBAAgB,CAAC,gDAAgD,EAAEH,MAAM,EAAE,CAAC;IACnF,IAAIK,WAAW,IAClB,MAAM,IAAIF,gBACN,CAAC,uDAAuD,EAAEH,MAAM,EAAE,CAAC;IAEpE,IAAIK,UAAU,GACjB,MAAM,IAAIF,gBAAgB,CAAC,kDAAkD,EAAEH,MAAM,EAAE,CAAC;IACrF,IAAIM,WAAW,IAClB,MAAM,IAAIH,gBACN,CAAC,uDAAuD,EAAEH,MAAM,EAAE,CAAC;SAEpE,IAAIM,UAAU,GACjB,MAAM,IAAIH,gBAAgB,CAAC,kDAAkD,EAAEH,MAAM,EAAE,CAAC;IAE5F,OAAO;QACHI;QACAC;QACAC;IACJ;AACJ;AAMO,MAAMC,cAAc,CAACC,MAAcC;IACtC,MAAM,EAAE,OAAOC,SAAS,EAAE,SAASC,WAAW,EAAE,SAASC,WAAW,EAAE,GAAGb,UAAUS;IACnF,MAAM,EACF,OAAOK,cAAc,EACrB,SAASC,gBAAgB,EACzB,SAASC,gBAAgB,EAC5B,GAAGhB,UAAUU;IACd,IAAIC,YAAYG,gBACZ,OAAO;IAEX,IAAIH,cAAcG,gBACd;QAAA,IAAIF,cAAcG,kBACd,OAAO;aACJ,IAAIH,gBAAgBG,kBACvB;YAAA,IAAIF,cAAcG,kBACd,OAAO;iBACJ,IAAIH,gBAAgBG,kBACvB,OAAO;QACX;IACJ;IAEJ,OAAO;AACX"}
@@ -1,38 +1,13 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _validationError = _interopRequireDefault(require("../validationError"));
11
-
12
- var _time = require("./time");
13
-
14
- /**
15
- * Validates that given value is a greater or equal to a gteValue
16
- */
17
- var _default = (value, params) => {
18
- if (!value || !params) {
19
- return;
20
- } // we need to join because validation params are being split by :
21
-
22
-
23
- const gteValue = params.join(":");
24
-
25
- if (!gteValue) {
26
- return;
27
- }
28
-
29
- const compare = (0, _time.compareTime)(value, gteValue);
30
-
31
- if (compare >= 0) {
32
- return;
33
- }
34
-
35
- throw new _validationError.default(`Value needs to be greater than or equal to "${gteValue}".`);
1
+ import validationError from "../validationError.js";
2
+ import { compareTime } from "./time/index.js";
3
+ const timeGte = (value, params)=>{
4
+ if (!value || !params) return;
5
+ const gteValue = params.join(":");
6
+ if (!gteValue) return;
7
+ const compare = compareTime(value, gteValue);
8
+ if (compare >= 0) return;
9
+ throw new validationError(`Value needs to be greater than or equal to "${gteValue}".`);
36
10
  };
11
+ export default timeGte;
37
12
 
38
- exports.default = _default;
13
+ //# sourceMappingURL=timeGte.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["value","params","gteValue","join","compare","compareTime","ValidationError"],"sources":["timeGte.ts"],"sourcesContent":["import ValidationError from \"~/validationError\";\nimport { compareTime } from \"./time\";\n\n/**\n * Validates that given value is a greater or equal to a gteValue\n */\nexport default (value: string, params?: string[]) => {\n if (!value || !params) {\n return;\n }\n // we need to join because validation params are being split by :\n const gteValue = params.join(\":\");\n if (!gteValue) {\n return;\n }\n\n const compare = compareTime(value, gteValue);\n\n if (compare >= 0) {\n return;\n }\n throw new ValidationError(`Value needs to be greater than or equal to \"${gteValue}\".`);\n};\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA;AACA;eACe,CAACA,KAAD,EAAgBC,MAAhB,KAAsC;EACjD,IAAI,CAACD,KAAD,IAAU,CAACC,MAAf,EAAuB;IACnB;EACH,CAHgD,CAIjD;;;EACA,MAAMC,QAAQ,GAAGD,MAAM,CAACE,IAAP,CAAY,GAAZ,CAAjB;;EACA,IAAI,CAACD,QAAL,EAAe;IACX;EACH;;EAED,MAAME,OAAO,GAAG,IAAAC,iBAAA,EAAYL,KAAZ,EAAmBE,QAAnB,CAAhB;;EAEA,IAAIE,OAAO,IAAI,CAAf,EAAkB;IACd;EACH;;EACD,MAAM,IAAIE,wBAAJ,CAAqB,+CAA8CJ,QAAS,IAA5E,CAAN;AACH,C"}
1
+ {"version":3,"file":"validators/timeGte.js","sources":["../../src/validators/timeGte.ts"],"sourcesContent":["import ValidationError from \"~/validationError.js\";\nimport { compareTime } from \"./time/index.js\";\n\n/**\n * Validates that given value is a greater or equal to a gteValue\n */\nexport default (value: string, params?: string[]) => {\n if (!value || !params) {\n return;\n }\n // we need to join because validation params are being split by :\n const gteValue = params.join(\":\");\n if (!gteValue) {\n return;\n }\n\n const compare = compareTime(value, gteValue);\n\n if (compare >= 0) {\n return;\n }\n throw new ValidationError(`Value needs to be greater than or equal to \"${gteValue}\".`);\n};\n"],"names":["value","params","gteValue","compare","compareTime","ValidationError"],"mappings":";;AAMA,gBAAgB,CAAAA,OAAeC;IAC3B,IAAI,CAACD,SAAS,CAACC,QACX;IAGJ,MAAMC,WAAWD,OAAO,IAAI,CAAC;IAC7B,IAAI,CAACC,UACD;IAGJ,MAAMC,UAAUC,YAAYJ,OAAOE;IAEnC,IAAIC,WAAW,GACX;IAEJ,MAAM,IAAIE,gBAAgB,CAAC,4CAA4C,EAAEH,SAAS,EAAE,CAAC;AACzF"}
@@ -1,38 +1,13 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _validationError = _interopRequireDefault(require("../validationError"));
11
-
12
- var _time = require("./time");
13
-
14
- /**
15
- * Validates that given value is a leaser or equal to a lteValue
16
- */
17
- var _default = (value, params) => {
18
- if (!value || !params) {
19
- return;
20
- } // we need to join because validation params are being split by :
21
-
22
-
23
- const lteValue = params.join(":");
24
-
25
- if (!lteValue) {
26
- return;
27
- }
28
-
29
- const compare = (0, _time.compareTime)(value, lteValue);
30
-
31
- if (compare <= 0) {
32
- return;
33
- }
34
-
35
- throw new _validationError.default(`Value needs to be lesser than or equal to "${lteValue}".`);
1
+ import validationError from "../validationError.js";
2
+ import { compareTime } from "./time/index.js";
3
+ const timeLte = (value, params)=>{
4
+ if (!value || !params) return;
5
+ const lteValue = params.join(":");
6
+ if (!lteValue) return;
7
+ const compare = compareTime(value, lteValue);
8
+ if (compare <= 0) return;
9
+ throw new validationError(`Value needs to be lesser than or equal to "${lteValue}".`);
36
10
  };
11
+ export default timeLte;
37
12
 
38
- exports.default = _default;
13
+ //# sourceMappingURL=timeLte.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["value","params","lteValue","join","compare","compareTime","ValidationError"],"sources":["timeLte.ts"],"sourcesContent":["import ValidationError from \"~/validationError\";\nimport { compareTime } from \"./time\";\n\n/**\n * Validates that given value is a leaser or equal to a lteValue\n */\nexport default (value: string, params?: string[]) => {\n if (!value || !params) {\n return;\n }\n // we need to join because validation params are being split by :\n const lteValue = params.join(\":\");\n if (!lteValue) {\n return;\n }\n\n const compare = compareTime(value, lteValue);\n if (compare <= 0) {\n return;\n }\n throw new ValidationError(`Value needs to be lesser than or equal to \"${lteValue}\".`);\n};\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA;AACA;eACe,CAACA,KAAD,EAAgBC,MAAhB,KAAsC;EACjD,IAAI,CAACD,KAAD,IAAU,CAACC,MAAf,EAAuB;IACnB;EACH,CAHgD,CAIjD;;;EACA,MAAMC,QAAQ,GAAGD,MAAM,CAACE,IAAP,CAAY,GAAZ,CAAjB;;EACA,IAAI,CAACD,QAAL,EAAe;IACX;EACH;;EAED,MAAME,OAAO,GAAG,IAAAC,iBAAA,EAAYL,KAAZ,EAAmBE,QAAnB,CAAhB;;EACA,IAAIE,OAAO,IAAI,CAAf,EAAkB;IACd;EACH;;EACD,MAAM,IAAIE,wBAAJ,CAAqB,8CAA6CJ,QAAS,IAA3E,CAAN;AACH,C"}
1
+ {"version":3,"file":"validators/timeLte.js","sources":["../../src/validators/timeLte.ts"],"sourcesContent":["import ValidationError from \"~/validationError.js\";\nimport { compareTime } from \"./time/index.js\";\n\n/**\n * Validates that given value is a leaser or equal to a lteValue\n */\nexport default (value: string, params?: string[]) => {\n if (!value || !params) {\n return;\n }\n // we need to join because validation params are being split by :\n const lteValue = params.join(\":\");\n if (!lteValue) {\n return;\n }\n\n const compare = compareTime(value, lteValue);\n if (compare <= 0) {\n return;\n }\n throw new ValidationError(`Value needs to be lesser than or equal to \"${lteValue}\".`);\n};\n"],"names":["value","params","lteValue","compare","compareTime","ValidationError"],"mappings":";;AAMA,gBAAgB,CAAAA,OAAeC;IAC3B,IAAI,CAACD,SAAS,CAACC,QACX;IAGJ,MAAMC,WAAWD,OAAO,IAAI,CAAC;IAC7B,IAAI,CAACC,UACD;IAGJ,MAAMC,UAAUC,YAAYJ,OAAOE;IACnC,IAAIC,WAAW,GACX;IAEJ,MAAM,IAAIE,gBAAgB,CAAC,2CAA2C,EAAEH,SAAS,EAAE,CAAC;AACxF"}
package/validators/url.js CHANGED
@@ -1,59 +1,26 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _validationError = _interopRequireDefault(require("../validationError"));
11
-
1
+ import validationError from "../validationError.js";
12
2
  const regex = {
13
- base: new RegExp( // eslint-disable-next-line
14
- /^(https?:\/\/)((([a-z\d]([a-z\d-]*[a-z\d])*)\.)+[a-z]{2,}|((\d{1,3}\.){3}\d{1,3}))(\:\d+)?(\/[-a-z\d%_.~+]*)*(\?[;&a-z\d%_.~+=!-]*)?(\#[-a-z\d_]*)?$/i),
15
- ip: new RegExp( // eslint-disable-next-line
16
- /^(https?:\/\/)(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/),
17
- relative: new RegExp( // eslint-disable-next-line
18
- /^\/.*$/),
19
- href: new RegExp( // eslint-disable-next-line
20
- /^(#|mailto:|tel:)\S*$/)
3
+ base: new RegExp(/^(https?:\/\/)((([a-z\d]([a-z\d-]*[a-z\d])*)\.)+[a-z]{2,}|((\d{1,3}\.){3}\d{1,3}))(:\d+)?(\/[-a-z\d%_.~+]*)*(\?[;&a-z\d%_.~+=!-]*)?(#[-a-z\d_]*)?$/i),
4
+ ip: new RegExp(/^(https?:\/\/)(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/),
5
+ relative: new RegExp(/^\/.*$/),
6
+ href: new RegExp(/^(#|mailto:|tel:)\S*$/)
21
7
  };
22
-
23
- var _default = (value, params) => {
24
- if (!value || !params) {
25
- return;
26
- }
27
-
28
- value = value + "";
29
-
30
- if (value.startsWith("http://localhost") || value.startsWith("https://localhost")) {
31
- value = value.replace("//localhost", "//localhost.com");
32
- }
33
-
34
- if (regex.base.test(value)) {
35
- if (!params.includes("noIp")) {
36
- return;
37
- }
38
-
39
- if (!regex.ip.test(value)) {
40
- return;
8
+ const url = (value, params)=>{
9
+ if (!value || !params) return;
10
+ value += "";
11
+ if (value.startsWith("http://localhost") || value.startsWith("https://localhost")) value = value.replace("//localhost", "//localhost.com");
12
+ if (regex.base.test(value)) {
13
+ if (!params.includes("noIp")) return;
14
+ if (!regex.ip.test(value)) return;
41
15
  }
42
- }
43
-
44
- if (params.includes("allowRelative")) {
45
- if (regex.relative.test(value)) {
46
- return;
16
+ if (params.includes("allowRelative")) {
17
+ if (regex.relative.test(value)) return;
47
18
  }
48
- }
49
-
50
- if (params.includes("allowHref")) {
51
- if (regex.href.test(value)) {
52
- return;
19
+ if (params.includes("allowHref")) {
20
+ if (regex.href.test(value)) return;
53
21
  }
54
- }
55
-
56
- throw new _validationError.default("Value must be a valid URL.");
22
+ throw new validationError("Value must be a valid URL.");
57
23
  };
24
+ export default url;
58
25
 
59
- exports.default = _default;
26
+ //# sourceMappingURL=url.js.map