@tsed/ajv 7.83.3 → 8.0.0-alpha.10

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 (46) hide show
  1. package/lib/esm/services/Ajv.js +5 -1
  2. package/lib/esm/services/Ajv.js.map +1 -1
  3. package/lib/esm/services/AjvService.js +3 -3
  4. package/lib/esm/services/AjvService.js.map +1 -1
  5. package/lib/esm/utils/defaultErrorFormatter.js.map +1 -1
  6. package/lib/esm/utils/getPath.js.map +1 -1
  7. package/lib/types/services/AjvService.d.ts +2 -2
  8. package/package.json +23 -21
  9. package/lib/cjs/decorators/formats.js +0 -22
  10. package/lib/cjs/decorators/formats.js.map +0 -1
  11. package/lib/cjs/decorators/keyword.js +0 -21
  12. package/lib/cjs/decorators/keyword.js.map +0 -1
  13. package/lib/cjs/errors/AjvValidationError.js +0 -13
  14. package/lib/cjs/errors/AjvValidationError.js.map +0 -1
  15. package/lib/cjs/index.js +0 -18
  16. package/lib/cjs/index.js.map +0 -1
  17. package/lib/cjs/interfaces/FormatsMethods.js +0 -3
  18. package/lib/cjs/interfaces/FormatsMethods.js.map +0 -1
  19. package/lib/cjs/interfaces/IAjvSettings.js +0 -3
  20. package/lib/cjs/interfaces/IAjvSettings.js.map +0 -1
  21. package/lib/cjs/interfaces/KeywordMethods.js +0 -3
  22. package/lib/cjs/interfaces/KeywordMethods.js.map +0 -1
  23. package/lib/cjs/interfaces/interfaces.js +0 -3
  24. package/lib/cjs/interfaces/interfaces.js.map +0 -1
  25. package/lib/cjs/package.json +0 -3
  26. package/lib/cjs/services/Ajv.js +0 -73
  27. package/lib/cjs/services/Ajv.js.map +0 -1
  28. package/lib/cjs/services/AjvService.js +0 -102
  29. package/lib/cjs/services/AjvService.js.map +0 -1
  30. package/lib/cjs/utils/defaultErrorFormatter.js +0 -31
  31. package/lib/cjs/utils/defaultErrorFormatter.js.map +0 -1
  32. package/lib/cjs/utils/getPath.js +0 -16
  33. package/lib/cjs/utils/getPath.js.map +0 -1
  34. package/lib/esm/package.json +0 -3
  35. package/lib/types-esm/decorators/formats.d.ts +0 -10
  36. package/lib/types-esm/decorators/keyword.d.ts +0 -12
  37. package/lib/types-esm/errors/AjvValidationError.d.ts +0 -6
  38. package/lib/types-esm/index.d.ts +0 -14
  39. package/lib/types-esm/interfaces/FormatsMethods.d.ts +0 -4
  40. package/lib/types-esm/interfaces/IAjvSettings.d.ts +0 -20
  41. package/lib/types-esm/interfaces/KeywordMethods.d.ts +0 -23
  42. package/lib/types-esm/interfaces/interfaces.d.ts +0 -8
  43. package/lib/types-esm/services/Ajv.d.ts +0 -1
  44. package/lib/types-esm/services/AjvService.d.ts +0 -20
  45. package/lib/types-esm/utils/defaultErrorFormatter.d.ts +0 -4
  46. package/lib/types-esm/utils/getPath.d.ts +0 -2
@@ -1,6 +1,6 @@
1
1
  import { cleanObject } from "@tsed/core";
2
2
  import { Configuration, InjectorService, ProviderScope, registerProvider } from "@tsed/di";
3
- import Ajv from "ajv";
3
+ import { Ajv } from "ajv";
4
4
  import AjvErrors from "ajv-errors";
5
5
  import AjvFormats from "ajv-formats";
6
6
  function getHandler(key, service) {
@@ -43,6 +43,7 @@ function getFormats(injector) {
43
43
  });
44
44
  }
45
45
  registerProvider({
46
+ // @ts-ignore
46
47
  provide: Ajv,
47
48
  deps: [Configuration, InjectorService],
48
49
  scope: ProviderScope.SINGLETON,
@@ -57,9 +58,12 @@ registerProvider({
57
58
  allErrors: true,
58
59
  ...props
59
60
  };
61
+ // @ts-ignore
60
62
  const ajv = new Ajv(options);
61
63
  // add support for custom error messages
64
+ // @ts-ignore
62
65
  AjvErrors(ajv);
66
+ // @ts-ignore
63
67
  AjvFormats(ajv);
64
68
  getFormats(injector).forEach(({ name, options }) => {
65
69
  ajv.addFormat(name, options);
@@ -1 +1 @@
1
- {"version":3,"file":"Ajv.js","sourceRoot":"","sources":["../../../src/services/Ajv.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Ajv.js","sourceRoot":"","sources":["../../../src/services/Ajv.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
+ import "./Ajv.js";
2
3
  import { deepClone, getValue, nameOf, prototypeOf, setValue } from "@tsed/core";
3
4
  import { Constant, Inject, Injectable } from "@tsed/di";
4
5
  import { getJsonSchema, JsonEntityStore, JsonSchema } from "@tsed/schema";
5
- import Ajv from "ajv";
6
+ import { Ajv } from "ajv";
6
7
  import { AjvValidationError } from "../errors/AjvValidationError.js";
7
8
  import { defaultErrorFormatter } from "../utils/defaultErrorFormatter.js";
8
9
  import { getPath } from "../utils/getPath.js";
9
- import "./Ajv.js";
10
10
  let AjvService = class AjvService {
11
11
  async validate(value, options) {
12
12
  let { schema: defaultSchema, type, collectionType, ...additionalOptions } = this.mapOptions(options);
@@ -87,7 +87,7 @@ __decorate([
87
87
  __metadata("design:type", Boolean)
88
88
  ], AjvService.prototype, "returnsCoercedValues", void 0);
89
89
  __decorate([
90
- Inject(),
90
+ Inject(Ajv),
91
91
  __metadata("design:type", Ajv)
92
92
  ], AjvService.prototype, "ajv", void 0);
93
93
  AjvService = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"AjvService.js","sourceRoot":"","sources":["../../../src/services/AjvService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AjvService.js","sourceRoot":"","sources":["../../../src/services/AjvService.ts"],"names":[],"mappings":";AAAA,OAAO,UAAU,CAAC;AAElB,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAO,MAAM,YAAY,CAAC;AACpF,OAAO,EAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAC,MAAM,UAAU,CAAC;AACtD,OAAO,EAAC,aAAa,EAAE,eAAe,EAAE,UAAU,EAAmB,MAAM,cAAc,CAAC;AAC1F,OAAO,EAAC,GAAG,EAAc,MAAM,KAAK,CAAC;AAErC,OAAO,EAAC,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAC,qBAAqB,EAAC,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAC,OAAO,EAAC,MAAM,qBAAqB,CAAC;AAWrC,IAAM,UAAU,GAAhB,MAAM,UAAU;IAUrB,KAAK,CAAC,QAAQ,CAAC,KAAU,EAAE,OAAwC;QACjE,IAAI,EAAC,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,iBAAiB,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAEnG,MAAM,MAAM,GAAG,aAAa,IAAI,aAAa,CAAC,IAAI,EAAE,EAAC,GAAG,iBAAiB,EAAE,UAAU,EAAE,IAAI,EAAC,CAAC,CAAC;QAE9F,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAE1C,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC;YACzC,MAAM,EAAC,MAAM,EAAC,GAAG,QAAQ,CAAC;YAE1B,IAAI,CAAC,KAAK,IAAI,MAAM,EAAE,CAAC;gBACrB,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;oBAC3B,IAAI;oBACJ,cAAc;oBACd,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,UAAU;iBAClB,CAAC,CAAC;YACL,CAAC;YAED,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC9B,OAAO,UAAU,CAAC;YACpB,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAES,UAAU,CAAC,OAAwC;QAC3D,IAAI,OAAO,YAAY,UAAU,EAAE,CAAC;YAClC,OAAO;gBACL,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,EAAC,UAAU,EAAE,IAAI,EAAC,CAAC;aAC3C,CAAC;QACJ,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAES,SAAS,CAAC,MAAqB,EAAE,OAAY;QACrD,MAAM,EAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAC,GAAG,OAAO,CAAC;QAE9C,MAAM,OAAO,GAAG,MAAM;aACnB,GAAG,CAAC,CAAC,KAAqB,EAAE,EAAE;YAC7B,IAAI,cAAc,EAAE,CAAC;gBACnB,KAAK,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;YAChD,CAAC;YAED,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YAEhC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBAChB,IAAI,QAAQ,EAAE,CAAC;oBACb,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;gBAC5D,CAAC;qBAAM,IAAI,KAAK,CAAC,UAAU,KAAK,YAAY,EAAE,CAAC;oBAC7C,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC;gBACrB,CAAC;YACH,CAAC;YAED,IAAI,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,yBAAyB,CAAC,EAAE,CAAC;gBAC1D,KAAK,CAAC,IAAI,GAAG,YAAY,CAAC;YAC5B,CAAC;YAED,IAAI,IAAI,EAAE,CAAC;gBACT,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC/B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAClD,CAAC;YAED,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACnD,CAAC,CAAC;aACD,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,OAAO,IAAI,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACjD,CAAC;IAES,aAAa,CAAC,KAAqB,EAAE,UAAqB;QAClE,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC;QAE9D,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAkB,WAAW,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,CAAC;YAE1F,IAAI,KAAK,EAAE,CAAC;gBACV,QAAQ,CAAC,KAAK,EAAE,wBAAwB,EAAE,KAAK,CAAC,IAAI,IAAI,WAAW,CAAC,CAAC;gBAErE,OAAO,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,WAAW,GAAG,EAAE,IAAI,KAAK,CAAC,IAAI,IAAI,WAAW,GAAG,CAAC,CAAC;YACtF,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC,OAAO,CAAC;IACvB,CAAC;CACF,CAAA;AAjGW;IADT,QAAQ,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;;kDACb;AAG/B;IADT,QAAQ,CAAC,0BAA0B,CAAC;;wDACG;AAG9B;IADT,MAAM,CAAC,GAAG,CAAC;8BACG,GAAG;uCAAC;AARR,UAAU;IAHtB,UAAU,CAAC;QACV,IAAI,EAAE,mBAAmB;KAC1B,CAAC;GACW,UAAU,CAmGtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"defaultErrorFormatter.js","sourceRoot":"","sources":["../../../src/utils/defaultErrorFormatter.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAE,OAAO,EAAC,MAAM,cAAc,CAAC;AAEtD,MAAM,UAAU,qBAAqB,CAAC,KAA0C;IAC9E,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClF,MAAM,IAAI,GAAG,CAAC,IAAW,EAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAE3E,MAAM,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE5D,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAEhC,IAAI,KAAK,CAAC,cAAc,EAAE;QACxB,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QAExC,QAAQ,KAAK,CAAC,cAAc,EAAE;YAC5B,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,CAAC,GAAG,SAAS,IAAI,SAAS,IAAI,SAAS,EAAE,EAAE,IAAI,KAAK,CAAC,OAAO,kBAAkB,KAAK,EAAE,CAAC,CAAC,CAAC;YACtG,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,CAAC,OAAO,SAAS,KAAK,SAAS,IAAI,SAAS,EAAE,EAAE,IAAI,KAAK,CAAC,OAAO,kBAAkB,KAAK,EAAE,CAAC,CAAC,CAAC;YAC3G,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,CAAC,OAAO,SAAS,KAAK,SAAS,IAAI,SAAS,EAAE,EAAE,IAAI,KAAK,CAAC,OAAO,kBAAkB,KAAK,EAAE,CAAC,CAAC,CAAC;SAC5G;KACF;IAED,OAAO,IAAI,CAAC;QACV,CAAC,KAAK,CAAC,SAAS,IAAI,OAAO;QAC3B,GAAG,KAAK,CAAC,SAAS,IAAI,EAAE,EAAE;QAC1B,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe,IAAI,KAAK,CAAC,QAAQ,CAAC;YACjD,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACpF,IAAI,KAAK,CAAC,OAAO,kBAAkB,KAAK,EAAE;KAC3C,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"defaultErrorFormatter.js","sourceRoot":"","sources":["../../../src/utils/defaultErrorFormatter.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAE,OAAO,EAAC,MAAM,cAAc,CAAC;AAEtD,MAAM,UAAU,qBAAqB,CAAC,KAA0C;IAC9E,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClF,MAAM,IAAI,GAAG,CAAC,IAAW,EAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAE3E,MAAM,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE5D,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAEhC,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QAExC,QAAQ,KAAK,CAAC,cAAc,EAAE,CAAC;YAC7B,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,CAAC,GAAG,SAAS,IAAI,SAAS,IAAI,SAAS,EAAE,EAAE,IAAI,KAAK,CAAC,OAAO,kBAAkB,KAAK,EAAE,CAAC,CAAC,CAAC;YACtG,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,CAAC,OAAO,SAAS,KAAK,SAAS,IAAI,SAAS,EAAE,EAAE,IAAI,KAAK,CAAC,OAAO,kBAAkB,KAAK,EAAE,CAAC,CAAC,CAAC;YAC3G,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,CAAC,OAAO,SAAS,KAAK,SAAS,IAAI,SAAS,EAAE,EAAE,IAAI,KAAK,CAAC,OAAO,kBAAkB,KAAK,EAAE,CAAC,CAAC,CAAC;QAC7G,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;QACV,CAAC,KAAK,CAAC,SAAS,IAAI,OAAO;QAC3B,GAAG,KAAK,CAAC,SAAS,IAAI,EAAE,EAAE;QAC1B,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe,IAAI,KAAK,CAAC,QAAQ,CAAC;YACjD,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACpF,IAAI,KAAK,CAAC,OAAO,kBAAkB,KAAK,EAAE;KAC3C,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"getPath.js","sourceRoot":"","sources":["../../../src/utils/getPath.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AAEpC,MAAM,UAAU,OAAO,CAAC,KAAU;IAChC,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE;QAChD,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;KAC3C;IAED,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAU;IACxC,OAAO,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC/F,CAAC"}
1
+ {"version":3,"file":"getPath.js","sourceRoot":"","sources":["../../../src/utils/getPath.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AAEpC,MAAM,UAAU,OAAO,CAAC,KAAU;IAChC,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;QACjD,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;IAC5C,CAAC;IAED,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAU;IACxC,OAAO,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC/F,CAAC"}
@@ -1,9 +1,9 @@
1
+ import "./Ajv.js";
1
2
  import { Type } from "@tsed/core";
2
3
  import { JsonSchema, JsonSchemaObject } from "@tsed/schema";
3
- import Ajv, { ErrorObject } from "ajv";
4
+ import { Ajv, ErrorObject } from "ajv";
4
5
  import { AjvValidationError } from "../errors/AjvValidationError.js";
5
6
  import { AjvErrorObject, ErrorFormatter } from "../interfaces/IAjvSettings.js";
6
- import "./Ajv";
7
7
  export interface AjvValidateOptions extends Record<string, any> {
8
8
  schema?: JsonSchema | Partial<JsonSchemaObject>;
9
9
  type?: Type<any> | any;
package/package.json CHANGED
@@ -1,18 +1,17 @@
1
1
  {
2
2
  "name": "@tsed/ajv",
3
3
  "description": "AJV package for Ts.ED framework",
4
- "type": "commonjs",
5
- "version": "7.83.3",
4
+ "type": "module",
5
+ "version": "8.0.0-alpha.10",
6
6
  "source": "./src/index.ts",
7
- "main": "./lib/cjs/index.js",
7
+ "main": "./lib/esm/index.js",
8
8
  "module": "./lib/esm/index.js",
9
9
  "typings": "./lib/types/index.d.ts",
10
10
  "exports": {
11
11
  ".": {
12
12
  "types": "./lib/types/index.d.ts",
13
13
  "import": "./lib/esm/index.js",
14
- "require": "./lib/cjs/index.js",
15
- "default": "./lib/cjs/index.js"
14
+ "default": "./lib/esm/index.js"
16
15
  }
17
16
  },
18
17
  "scripts": {
@@ -25,25 +24,25 @@
25
24
  "dependencies": {
26
25
  "ajv-errors": "3.0.0",
27
26
  "ajv-formats": "2.1.1",
28
- "tslib": "2.6.1"
27
+ "tslib": "2.7.0"
29
28
  },
30
29
  "devDependencies": {
31
- "@tsed/barrels": "7.83.3",
32
- "@tsed/core": "7.83.3",
33
- "@tsed/di": "7.83.3",
34
- "@tsed/exceptions": "7.83.3",
35
- "@tsed/schema": "7.83.3",
36
- "@tsed/typescript": "7.83.3",
37
- "ajv": "8.12.0",
38
- "eslint": "^8.57.0",
39
- "typescript": "4.9.5",
40
- "vitest": "2.0.4"
30
+ "@tsed/barrels": "8.0.0-alpha.10",
31
+ "@tsed/core": "8.0.0-alpha.10",
32
+ "@tsed/di": "8.0.0-alpha.10",
33
+ "@tsed/exceptions": "8.0.0-alpha.10",
34
+ "@tsed/schema": "8.0.0-alpha.10",
35
+ "@tsed/typescript": "8.0.0-alpha.10",
36
+ "ajv": "^8.17.1",
37
+ "eslint": "9.12.0",
38
+ "typescript": "5.4.5",
39
+ "vitest": "2.1.2"
41
40
  },
42
41
  "peerDependencies": {
43
- "@tsed/core": "7.83.3",
44
- "@tsed/di": "7.83.3",
45
- "@tsed/exceptions": "7.83.3",
46
- "@tsed/schema": "7.83.3",
42
+ "@tsed/core": "8.0.0-alpha.10",
43
+ "@tsed/di": "8.0.0-alpha.10",
44
+ "@tsed/exceptions": "8.0.0-alpha.10",
45
+ "@tsed/schema": "8.0.0-alpha.10",
47
46
  "ajv": ">=8.9.0",
48
47
  "ajv-errors": ">=3.0.0"
49
48
  },
@@ -67,5 +66,8 @@
67
66
  },
68
67
  "homepage": "https://github.com/tsedio/tsed/tree/production/packages/specs/ajv",
69
68
  "author": "Romain Lenzotti",
70
- "license": "MIT"
69
+ "license": "MIT",
70
+ "publishConfig": {
71
+ "tag": "alpha"
72
+ }
71
73
  }
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Formats = void 0;
4
- const core_1 = require("@tsed/core");
5
- const di_1 = require("@tsed/di");
6
- /**
7
- * Create a new custom formats validator
8
- * @param name
9
- * @param options
10
- * @decorator
11
- * @ajv
12
- */
13
- function Formats(name, options = {}) {
14
- return (0, core_1.useDecorators)((0, di_1.Injectable)({
15
- type: "ajv:formats"
16
- }), (0, core_1.StoreSet)("ajv:formats", {
17
- name,
18
- options
19
- }));
20
- }
21
- exports.Formats = Formats;
22
- //# sourceMappingURL=formats.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formats.js","sourceRoot":"","sources":["../../../src/decorators/formats.ts"],"names":[],"mappings":";;;AAAA,qCAAmD;AACnD,iCAAoC;AAKpC;;;;;;GAMG;AACH,SAAgB,OAAO,CAAC,IAAY,EAAE,UAA0B,EAAE;IAChE,OAAO,IAAA,oBAAa,EAClB,IAAA,eAAU,EAAC;QACT,IAAI,EAAE,aAAa;KACpB,CAAC,EACF,IAAA,eAAQ,EAAC,aAAa,EAAE;QACtB,IAAI;QACJ,OAAO;KACR,CAAC,CACH,CAAC;AACJ,CAAC;AAVD,0BAUC"}
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Keyword = void 0;
4
- const core_1 = require("@tsed/core");
5
- const di_1 = require("@tsed/di");
6
- /**
7
- * Create new keyword custom validator
8
- * @param options
9
- * @decorator
10
- * @ajv
11
- */
12
- function Keyword(options) {
13
- return (0, core_1.useDecorators)((0, di_1.Injectable)({
14
- type: "ajv:keyword"
15
- }), (0, core_1.StoreSet)("ajv:keyword", {
16
- ...options,
17
- metaSchema: options.metaSchema && options.metaSchema.toJSON ? options.metaSchema.toJSON() : options.metaSchema
18
- }));
19
- }
20
- exports.Keyword = Keyword;
21
- //# sourceMappingURL=keyword.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"keyword.js","sourceRoot":"","sources":["../../../src/decorators/keyword.ts"],"names":[],"mappings":";;;AAAA,qCAAmD;AACnD,iCAAoC;AAQpC;;;;;GAKG;AACH,SAAgB,OAAO,CAAC,OAAuB;IAC7C,OAAO,IAAA,oBAAa,EAClB,IAAA,eAAU,EAAC;QACT,IAAI,EAAE,aAAa;KACpB,CAAC,EACF,IAAA,eAAQ,EAAC,aAAa,EAAE;QACtB,GAAG,OAAO;QACV,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU;KAC/G,CAAC,CACH,CAAC;AACJ,CAAC;AAVD,0BAUC"}
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AjvValidationError = void 0;
4
- const exceptions_1 = require("@tsed/exceptions");
5
- class AjvValidationError extends exceptions_1.BadRequest {
6
- constructor(message, errors = []) {
7
- super(message);
8
- this.name = "AJV_VALIDATION_ERROR";
9
- this.errors = errors;
10
- }
11
- }
12
- exports.AjvValidationError = AjvValidationError;
13
- //# sourceMappingURL=AjvValidationError.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AjvValidationError.js","sourceRoot":"","sources":["../../../src/errors/AjvValidationError.ts"],"names":[],"mappings":";;;AAAA,iDAA4C;AAE5C,MAAa,kBAAmB,SAAQ,uBAAU;IAIhD,YAAY,OAAe,EAAE,SAAgB,EAAE;QAC7C,KAAK,CAAC,OAAO,CAAC,CAAC;QAJV,SAAI,GAAW,sBAAsB,CAAC;QAK3C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF;AARD,gDAQC"}
package/lib/cjs/index.js DELETED
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- /**
5
- * @file Automatically generated by @tsed/barrels.
6
- */
7
- tslib_1.__exportStar(require("./decorators/formats.js"), exports);
8
- tslib_1.__exportStar(require("./decorators/keyword.js"), exports);
9
- tslib_1.__exportStar(require("./errors/AjvValidationError.js"), exports);
10
- tslib_1.__exportStar(require("./interfaces/FormatsMethods.js"), exports);
11
- tslib_1.__exportStar(require("./interfaces/IAjvSettings.js"), exports);
12
- tslib_1.__exportStar(require("./interfaces/interfaces.js"), exports);
13
- tslib_1.__exportStar(require("./interfaces/KeywordMethods.js"), exports);
14
- tslib_1.__exportStar(require("./services/Ajv.js"), exports);
15
- tslib_1.__exportStar(require("./services/AjvService.js"), exports);
16
- tslib_1.__exportStar(require("./utils/defaultErrorFormatter.js"), exports);
17
- tslib_1.__exportStar(require("./utils/getPath.js"), exports);
18
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,kEAAwC;AACxC,kEAAwC;AACxC,yEAA+C;AAC/C,yEAA+C;AAC/C,uEAA6C;AAC7C,qEAA2C;AAC3C,yEAA+C;AAC/C,4DAAkC;AAClC,mEAAyC;AACzC,2EAAiD;AACjD,6DAAmC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=FormatsMethods.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FormatsMethods.js","sourceRoot":"","sources":["../../../src/interfaces/FormatsMethods.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=IAjvSettings.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IAjvSettings.js","sourceRoot":"","sources":["../../../src/interfaces/IAjvSettings.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=KeywordMethods.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"KeywordMethods.js","sourceRoot":"","sources":["../../../src/interfaces/KeywordMethods.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=interfaces.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/interfaces/interfaces.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- {
2
- "type": "commonjs"
3
- }
@@ -1,73 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const core_1 = require("@tsed/core");
5
- const di_1 = require("@tsed/di");
6
- const ajv_1 = tslib_1.__importDefault(require("ajv"));
7
- const ajv_errors_1 = tslib_1.__importDefault(require("ajv-errors"));
8
- const ajv_formats_1 = tslib_1.__importDefault(require("ajv-formats"));
9
- function getHandler(key, service) {
10
- if (service[key]) {
11
- return service[key].bind(service);
12
- }
13
- }
14
- function getKeywordProviders(injector) {
15
- return injector.getProviders("ajv:keyword");
16
- }
17
- function bindKeywords(injector) {
18
- return getKeywordProviders(injector).map((provider) => {
19
- const options = provider.store.get("ajv:keyword", {});
20
- const service = injector.invoke(provider.token);
21
- return (0, core_1.cleanObject)({
22
- coerceTypes: "array",
23
- ...options,
24
- validate: getHandler("validate", service),
25
- compile: getHandler("compile", service),
26
- code: getHandler("code", service),
27
- macro: getHandler("macro", service)
28
- });
29
- });
30
- }
31
- function getFormatsProviders(injector) {
32
- return injector.getProviders("ajv:formats");
33
- }
34
- function getFormats(injector) {
35
- return getFormatsProviders(injector).map((provider) => {
36
- const { name, options } = provider.store.get("ajv:formats", {});
37
- const service = injector.invoke(provider.token);
38
- return {
39
- name,
40
- options: {
41
- ...options,
42
- validate: service.validate.bind(service),
43
- compare: service.compare?.bind(service)
44
- }
45
- };
46
- });
47
- }
48
- (0, di_1.registerProvider)({
49
- provide: ajv_1.default,
50
- deps: [di_1.Configuration, di_1.InjectorService],
51
- scope: di_1.ProviderScope.SINGLETON,
52
- useFactory(configuration, injector) {
53
- const { errorFormatter, keywords = [], ...props } = configuration.get("ajv") || {};
54
- const options = {
55
- verbose: false,
56
- coerceTypes: true,
57
- strict: false,
58
- keywords: [...keywords, ...bindKeywords(injector)],
59
- discriminator: true,
60
- allErrors: true,
61
- ...props
62
- };
63
- const ajv = new ajv_1.default(options);
64
- // add support for custom error messages
65
- (0, ajv_errors_1.default)(ajv);
66
- (0, ajv_formats_1.default)(ajv);
67
- getFormats(injector).forEach(({ name, options }) => {
68
- ajv.addFormat(name, options);
69
- });
70
- return ajv;
71
- }
72
- });
73
- //# sourceMappingURL=Ajv.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Ajv.js","sourceRoot":"","sources":["../../../src/services/Ajv.ts"],"names":[],"mappings":"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"}
@@ -1,102 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AjvService = void 0;
4
- const tslib_1 = require("tslib");
5
- const core_1 = require("@tsed/core");
6
- const di_1 = require("@tsed/di");
7
- const schema_1 = require("@tsed/schema");
8
- const ajv_1 = tslib_1.__importDefault(require("ajv"));
9
- const AjvValidationError_js_1 = require("../errors/AjvValidationError.js");
10
- const defaultErrorFormatter_js_1 = require("../utils/defaultErrorFormatter.js");
11
- const getPath_js_1 = require("../utils/getPath.js");
12
- require("./Ajv");
13
- let AjvService = class AjvService {
14
- async validate(value, options) {
15
- let { schema: defaultSchema, type, collectionType, ...additionalOptions } = this.mapOptions(options);
16
- const schema = defaultSchema || (0, schema_1.getJsonSchema)(type, { ...additionalOptions, customKeys: true });
17
- if (schema) {
18
- const localValue = this.returnsCoercedValues ? value : (0, core_1.deepClone)(value);
19
- const validate = this.ajv.compile(schema);
20
- const valid = await validate(localValue);
21
- const { errors } = validate;
22
- if (!valid && errors) {
23
- throw this.mapErrors(errors, {
24
- type,
25
- collectionType,
26
- async: true,
27
- value: localValue
28
- });
29
- }
30
- if (this.returnsCoercedValues) {
31
- return localValue;
32
- }
33
- }
34
- return value;
35
- }
36
- mapOptions(options) {
37
- if (options instanceof schema_1.JsonSchema) {
38
- return {
39
- schema: options.toJSON({ customKeys: true })
40
- };
41
- }
42
- return options;
43
- }
44
- mapErrors(errors, options) {
45
- const { type, collectionType, value } = options;
46
- const message = errors
47
- .map((error) => {
48
- if (collectionType) {
49
- error.collectionName = (0, core_1.nameOf)(collectionType);
50
- }
51
- const dataPath = (0, getPath_js_1.getPath)(error);
52
- if (!error.data) {
53
- if (dataPath) {
54
- error.data = (0, core_1.getValue)(value, dataPath.replace(/^\./, ""));
55
- }
56
- else if (error.schemaPath !== "#/required") {
57
- error.data = value;
58
- }
59
- }
60
- if (dataPath && dataPath.match(/pwd|password|mdp|secret/)) {
61
- error.data = "[REDACTED]";
62
- }
63
- if (type) {
64
- error.modelName = (0, core_1.nameOf)(type);
65
- error.message = this.mapClassError(error, type);
66
- }
67
- return this.errorFormatter.call(this, error, {});
68
- })
69
- .join("\n");
70
- return new AjvValidationError_js_1.AjvValidationError(message, errors);
71
- }
72
- mapClassError(error, targetType) {
73
- const propertyKey = (0, core_1.getValue)(error, "params.missingProperty");
74
- if (propertyKey) {
75
- const store = schema_1.JsonEntityStore.from((0, core_1.prototypeOf)(targetType), propertyKey);
76
- if (store) {
77
- (0, core_1.setValue)(error, "params.missingProperty", store.name || propertyKey);
78
- return error.message?.replace(`'${propertyKey}'`, `'${store.name || propertyKey}'`);
79
- }
80
- }
81
- return error.message;
82
- }
83
- };
84
- tslib_1.__decorate([
85
- (0, di_1.Constant)("ajv.errorFormatter", defaultErrorFormatter_js_1.defaultErrorFormatter),
86
- tslib_1.__metadata("design:type", Function)
87
- ], AjvService.prototype, "errorFormatter", void 0);
88
- tslib_1.__decorate([
89
- (0, di_1.Constant)("ajv.returnsCoercedValues"),
90
- tslib_1.__metadata("design:type", Boolean)
91
- ], AjvService.prototype, "returnsCoercedValues", void 0);
92
- tslib_1.__decorate([
93
- (0, di_1.Inject)(),
94
- tslib_1.__metadata("design:type", ajv_1.default)
95
- ], AjvService.prototype, "ajv", void 0);
96
- AjvService = tslib_1.__decorate([
97
- (0, di_1.Injectable)({
98
- type: "validator:service"
99
- })
100
- ], AjvService);
101
- exports.AjvService = AjvService;
102
- //# sourceMappingURL=AjvService.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AjvService.js","sourceRoot":"","sources":["../../../src/services/AjvService.ts"],"names":[],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.defaultErrorFormatter = void 0;
4
- const getPath_js_1 = require("./getPath.js");
5
- function defaultErrorFormatter(error) {
6
- const value = JSON.stringify(error.data === undefined ? "undefined" : error.data);
7
- const join = (list) => list.filter(Boolean).join("").trim();
8
- const [, indexPath, ...paths] = (0, getPath_js_1.getInstancePath)(error).split(".");
9
- const deepPaths = paths.length ? "." + paths.join(".") : "";
10
- error.dataPath = (0, getPath_js_1.getPath)(error);
11
- if (error.collectionName) {
12
- const modelName = error.modelName || "";
13
- switch (error.collectionName) {
14
- case "Array":
15
- return join([`${modelName}[${indexPath}]${deepPaths}`, ` ${error.message}. Given value: ${value}`]);
16
- case "Map":
17
- return join([`Map<${indexPath}, ${modelName}>${deepPaths}`, ` ${error.message}. Given value: ${value}`]);
18
- case "Set":
19
- return join([`Set<${indexPath}, ${modelName}>${deepPaths}`, ` ${error.message}. Given value: ${value}`]);
20
- }
21
- }
22
- return join([
23
- !error.modelName && "Value",
24
- `${error.modelName || ""}`,
25
- (!error?.params?.missingProperty && error.dataPath) ||
26
- (error?.params?.missingProperty && (error.instancePath || "").replace(/\//g, ".")),
27
- ` ${error.message}. Given value: ${value}`
28
- ]);
29
- }
30
- exports.defaultErrorFormatter = defaultErrorFormatter;
31
- //# sourceMappingURL=defaultErrorFormatter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"defaultErrorFormatter.js","sourceRoot":"","sources":["../../../src/utils/defaultErrorFormatter.ts"],"names":[],"mappings":";;;AACA,6CAAsD;AAEtD,SAAgB,qBAAqB,CAAC,KAA0C;IAC9E,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClF,MAAM,IAAI,GAAG,CAAC,IAAW,EAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAE3E,MAAM,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,IAAA,4BAAe,EAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE5D,KAAK,CAAC,QAAQ,GAAG,IAAA,oBAAO,EAAC,KAAK,CAAC,CAAC;IAEhC,IAAI,KAAK,CAAC,cAAc,EAAE;QACxB,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QAExC,QAAQ,KAAK,CAAC,cAAc,EAAE;YAC5B,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,CAAC,GAAG,SAAS,IAAI,SAAS,IAAI,SAAS,EAAE,EAAE,IAAI,KAAK,CAAC,OAAO,kBAAkB,KAAK,EAAE,CAAC,CAAC,CAAC;YACtG,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,CAAC,OAAO,SAAS,KAAK,SAAS,IAAI,SAAS,EAAE,EAAE,IAAI,KAAK,CAAC,OAAO,kBAAkB,KAAK,EAAE,CAAC,CAAC,CAAC;YAC3G,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,CAAC,OAAO,SAAS,KAAK,SAAS,IAAI,SAAS,EAAE,EAAE,IAAI,KAAK,CAAC,OAAO,kBAAkB,KAAK,EAAE,CAAC,CAAC,CAAC;SAC5G;KACF;IAED,OAAO,IAAI,CAAC;QACV,CAAC,KAAK,CAAC,SAAS,IAAI,OAAO;QAC3B,GAAG,KAAK,CAAC,SAAS,IAAI,EAAE,EAAE;QAC1B,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe,IAAI,KAAK,CAAC,QAAQ,CAAC;YACjD,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACpF,IAAI,KAAK,CAAC,OAAO,kBAAkB,KAAK,EAAE;KAC3C,CAAC,CAAC;AACL,CAAC;AA7BD,sDA6BC"}
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getInstancePath = exports.getPath = void 0;
4
- const core_1 = require("@tsed/core");
5
- function getPath(error) {
6
- if (error.params && error.params.missingProperty) {
7
- return `.${error.params.missingProperty}`;
8
- }
9
- return getInstancePath(error);
10
- }
11
- exports.getPath = getPath;
12
- function getInstancePath(error) {
13
- return (0, core_1.getValue)(error, "dataPath", (0, core_1.getValue)(error, "instancePath", "")).replace(/\//gi, ".");
14
- }
15
- exports.getInstancePath = getInstancePath;
16
- //# sourceMappingURL=getPath.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getPath.js","sourceRoot":"","sources":["../../../src/utils/getPath.ts"],"names":[],"mappings":";;;AAAA,qCAAoC;AAEpC,SAAgB,OAAO,CAAC,KAAU;IAChC,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE;QAChD,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;KAC3C;IAED,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAND,0BAMC;AAED,SAAgB,eAAe,CAAC,KAAU;IACxC,OAAO,IAAA,eAAQ,EAAC,KAAK,EAAE,UAAU,EAAE,IAAA,eAAQ,EAAC,KAAK,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC/F,CAAC;AAFD,0CAEC"}
@@ -1,3 +0,0 @@
1
- {
2
- "type": "module"
3
- }
@@ -1,10 +0,0 @@
1
- import { AsyncFormatDefinition, FormatDefinition } from "ajv";
2
- export type FormatsOptions = Omit<FormatDefinition<any>, "validate" | "compare"> | Omit<AsyncFormatDefinition<any>, "validate" | "compare">;
3
- /**
4
- * Create a new custom formats validator
5
- * @param name
6
- * @param options
7
- * @decorator
8
- * @ajv
9
- */
10
- export declare function Formats(name: string, options?: FormatsOptions): ClassDecorator;
@@ -1,12 +0,0 @@
1
- import { JsonSchema } from "@tsed/schema";
2
- import { AnySchemaObject, KeywordDefinition } from "ajv";
3
- export type KeywordOptions = Partial<Omit<KeywordDefinition, "metaSchema">> & {
4
- metaSchema?: AnySchemaObject | JsonSchema;
5
- };
6
- /**
7
- * Create new keyword custom validator
8
- * @param options
9
- * @decorator
10
- * @ajv
11
- */
12
- export declare function Keyword(options: KeywordOptions): ClassDecorator;
@@ -1,6 +0,0 @@
1
- import { BadRequest } from "@tsed/exceptions";
2
- export declare class AjvValidationError extends BadRequest {
3
- name: string;
4
- errors: any[];
5
- constructor(message: string, errors?: any[]);
6
- }
@@ -1,14 +0,0 @@
1
- /**
2
- * @file Automatically generated by @tsed/barrels.
3
- */
4
- export * from "./decorators/formats.js";
5
- export * from "./decorators/keyword.js";
6
- export * from "./errors/AjvValidationError.js";
7
- export * from "./interfaces/FormatsMethods.js";
8
- export * from "./interfaces/IAjvSettings.js";
9
- export * from "./interfaces/interfaces.js";
10
- export * from "./interfaces/KeywordMethods.js";
11
- export * from "./services/Ajv.js";
12
- export * from "./services/AjvService.js";
13
- export * from "./utils/defaultErrorFormatter.js";
14
- export * from "./utils/getPath.js";
@@ -1,4 +0,0 @@
1
- export interface FormatsMethods<T extends string | number> {
2
- compare?: (data1: T, data2: T) => number | undefined;
3
- validate(data: T): boolean;
4
- }
@@ -1,20 +0,0 @@
1
- import { ErrorObject, Options } from "ajv";
2
- /**
3
- *
4
- */
5
- export interface AjvErrorObject extends ErrorObject {
6
- modelName: string;
7
- collectionName?: string;
8
- }
9
- /**
10
- *
11
- */
12
- export type ErrorFormatter = (error: AjvErrorObject) => string;
13
- /**
14
- *
15
- */
16
- export interface IAjvSettings extends Options {
17
- Ajv?: any;
18
- errorFormatter?: ErrorFormatter;
19
- returnsCoercedValues?: boolean;
20
- }
@@ -1,23 +0,0 @@
1
- import { AnySchemaObject, KeywordCxt, SchemaObjCxt, ValidateFunction } from "ajv";
2
- export interface AjvDataValidationCtx<T extends string | number = string | number> {
3
- dataPath: string;
4
- parentData: {
5
- [K in T]: any;
6
- };
7
- parentDataProperty: T;
8
- rootData: Record<string, any> | any[];
9
- dynamicAnchors: {
10
- [Ref in string]?: ValidateFunction;
11
- };
12
- }
13
- export interface AjvDataValidateFunction {
14
- (...args: Parameters<ValidateFunction>): boolean | Promise<any>;
15
- }
16
- export interface AjvSchemaValidateFunction {
17
- (schema: any, data: any, parentSchema?: AnySchemaObject, dataCxt?: AjvDataValidationCtx): boolean | Promise<any>;
18
- }
19
- export interface KeywordMethods {
20
- code?: (cxt: KeywordCxt, ruleType?: string) => void;
21
- compile?: (schema: any, parentSchema: AnySchemaObject, it: SchemaObjCxt) => AjvDataValidateFunction;
22
- validate?: AjvSchemaValidateFunction | AjvDataValidateFunction;
23
- }
@@ -1,8 +0,0 @@
1
- import { IAjvSettings } from "./IAjvSettings.js";
2
- declare global {
3
- namespace TsED {
4
- interface Configuration {
5
- ajv?: IAjvSettings;
6
- }
7
- }
8
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,20 +0,0 @@
1
- import { Type } from "@tsed/core";
2
- import { JsonSchema, JsonSchemaObject } from "@tsed/schema";
3
- import Ajv, { ErrorObject } from "ajv";
4
- import { AjvValidationError } from "../errors/AjvValidationError.js";
5
- import { AjvErrorObject, ErrorFormatter } from "../interfaces/IAjvSettings.js";
6
- import "./Ajv";
7
- export interface AjvValidateOptions extends Record<string, any> {
8
- schema?: JsonSchema | Partial<JsonSchemaObject>;
9
- type?: Type<any> | any;
10
- collectionType?: Type<any> | any;
11
- }
12
- export declare class AjvService {
13
- protected errorFormatter: ErrorFormatter;
14
- protected returnsCoercedValues: boolean;
15
- protected ajv: Ajv;
16
- validate(value: any, options: AjvValidateOptions | JsonSchema): Promise<any>;
17
- protected mapOptions(options: AjvValidateOptions | JsonSchema): AjvValidateOptions;
18
- protected mapErrors(errors: ErrorObject[], options: any): AjvValidationError;
19
- protected mapClassError(error: AjvErrorObject, targetType: Type<any>): string | undefined;
20
- }
@@ -1,4 +0,0 @@
1
- import { AjvErrorObject } from "../interfaces/IAjvSettings.js";
2
- export declare function defaultErrorFormatter(error: AjvErrorObject & {
3
- dataPath: string;
4
- }): string;
@@ -1,2 +0,0 @@
1
- export declare function getPath(error: any): string;
2
- export declare function getInstancePath(error: any): string;