@cv-tec/validations 0.0.8 → 0.0.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 (73) hide show
  1. package/dist/custom-class-validators/cross-validation.d.ts +2 -0
  2. package/dist/custom-class-validators/cross-validation.js +23 -0
  3. package/dist/custom-class-validators/cross-validation.js.map +1 -0
  4. package/dist/custom-class-validators/is-valid-email-domain/black-list.json +184906 -0
  5. package/dist/custom-class-validators/is-valid-email-domain/disposable-mail-validation.d.ts +12 -0
  6. package/dist/custom-class-validators/is-valid-email-domain/disposable-mail-validation.js +66 -0
  7. package/dist/custom-class-validators/is-valid-email-domain/disposable-mail-validation.js.map +1 -0
  8. package/dist/custom-class-validators/is-valid-email-domain/index.d.ts +6 -0
  9. package/dist/custom-class-validators/{is-validate-email-domain.js → is-valid-email-domain/index.js} +18 -15
  10. package/dist/custom-class-validators/is-valid-email-domain/index.js.map +1 -0
  11. package/dist/custom-class-validators/validate-single-property-sync.d.ts +1 -0
  12. package/dist/custom-class-validators/validate-single-property-sync.js +12 -0
  13. package/dist/custom-class-validators/validate-single-property-sync.js.map +1 -0
  14. package/dist/dto/auth.d.ts +17 -0
  15. package/dist/dto/auth.js +71 -0
  16. package/dist/dto/auth.js.map +1 -0
  17. package/dist/entities/cv-info/coordinates.d.ts +15 -0
  18. package/dist/entities/cv-info/coordinates.js +70 -0
  19. package/dist/entities/cv-info/coordinates.js.map +1 -0
  20. package/dist/entities/cv-info/cv-info.d.ts +45 -0
  21. package/dist/entities/cv-info/cv-info.js +128 -0
  22. package/dist/entities/cv-info/cv-info.js.map +1 -0
  23. package/dist/entities/cv-info/cv-info.mocks.d.ts +24 -0
  24. package/dist/entities/cv-info/cv-info.mocks.js +171 -0
  25. package/dist/entities/cv-info/cv-info.mocks.js.map +1 -0
  26. package/dist/entities/cv-info/experience.d.ts +17 -0
  27. package/dist/entities/cv-info/experience.js +94 -0
  28. package/dist/entities/cv-info/experience.js.map +1 -0
  29. package/dist/entities/cv-info/formation.d.ts +13 -0
  30. package/dist/entities/cv-info/formation.js +60 -0
  31. package/dist/entities/cv-info/formation.js.map +1 -0
  32. package/dist/entities/cv-info/hobby.d.ts +8 -0
  33. package/dist/entities/cv-info/hobby.js +36 -0
  34. package/dist/entities/cv-info/hobby.js.map +1 -0
  35. package/dist/entities/cv-info/index.d.ts +1 -0
  36. package/dist/entities/cv-info/index.js +6 -0
  37. package/dist/entities/cv-info/index.js.map +1 -0
  38. package/dist/entities/cv-info/language.d.ts +6 -0
  39. package/dist/entities/cv-info/language.js +31 -0
  40. package/dist/entities/cv-info/language.js.map +1 -0
  41. package/dist/entities/cv-info/mission.d.ts +13 -0
  42. package/dist/entities/cv-info/mission.js +76 -0
  43. package/dist/entities/cv-info/mission.js.map +1 -0
  44. package/dist/entities/cv-info/profile.d.ts +11 -0
  45. package/dist/entities/cv-info/profile.js +51 -0
  46. package/dist/entities/cv-info/profile.js.map +1 -0
  47. package/dist/entities/cv-info/reference.d.ts +11 -0
  48. package/dist/entities/cv-info/reference.js +51 -0
  49. package/dist/entities/cv-info/reference.js.map +1 -0
  50. package/dist/entities/cv-info/skills.d.ts +46 -0
  51. package/dist/entities/cv-info/skills.js +102 -0
  52. package/dist/entities/cv-info/skills.js.map +1 -0
  53. package/dist/entities/cv-tec-user.d.ts +3 -8
  54. package/dist/entities/cv-tec-user.js +7 -8
  55. package/dist/entities/cv-tec-user.js.map +1 -1
  56. package/dist/index.d.ts +7 -1
  57. package/dist/index.js +12 -3
  58. package/dist/index.js.map +1 -1
  59. package/dist/root-class-validation.d.ts +19 -0
  60. package/dist/root-class-validation.js +51 -0
  61. package/dist/root-class-validation.js.map +1 -0
  62. package/dist/utils/types.d.ts +1 -0
  63. package/dist/utils/types.js +3 -0
  64. package/dist/utils/types.js.map +1 -0
  65. package/dist/validation-messages.d.ts +0 -0
  66. package/dist/validation-messages.js +2 -0
  67. package/dist/validation-messages.js.map +1 -0
  68. package/package.json +7 -3
  69. package/dist/custom-class-validators/is-validate-email-domain.d.ts +0 -5
  70. package/dist/custom-class-validators/is-validate-email-domain.js.map +0 -1
  71. package/dist/entities/entity.d.ts +0 -4
  72. package/dist/entities/entity.js +0 -14
  73. package/dist/entities/entity.js.map +0 -1
@@ -0,0 +1,11 @@
1
+ import { RootClassValidation } from '../../root-class-validation';
2
+ export type IReference = Omit<Reference, keyof RootClassValidation>;
3
+ export declare class Reference extends RootClassValidation {
4
+ constructor(param: IReference);
5
+ $id: string;
6
+ name: string;
7
+ position: string;
8
+ phone?: string;
9
+ email: string;
10
+ linkedIn?: string;
11
+ }
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Reference = void 0;
13
+ const is_valid_email_domain_1 = require("../../custom-class-validators/is-valid-email-domain");
14
+ const root_class_validation_1 = require("../../root-class-validation");
15
+ const class_validator_1 = require("class-validator");
16
+ class Reference extends root_class_validation_1.RootClassValidation {
17
+ constructor(param) {
18
+ super(param);
19
+ }
20
+ }
21
+ exports.Reference = Reference;
22
+ __decorate([
23
+ (0, class_validator_1.IsUUID)('4'),
24
+ __metadata("design:type", String)
25
+ ], Reference.prototype, "$id", void 0);
26
+ __decorate([
27
+ (0, class_validator_1.MinLength)(4),
28
+ (0, class_validator_1.MaxLength)(50),
29
+ __metadata("design:type", String)
30
+ ], Reference.prototype, "name", void 0);
31
+ __decorate([
32
+ (0, class_validator_1.MinLength)(5),
33
+ (0, class_validator_1.MaxLength)(50),
34
+ __metadata("design:type", String)
35
+ ], Reference.prototype, "position", void 0);
36
+ __decorate([
37
+ (0, class_validator_1.IsPhoneNumber)(),
38
+ (0, class_validator_1.IsOptional)(),
39
+ __metadata("design:type", String)
40
+ ], Reference.prototype, "phone", void 0);
41
+ __decorate([
42
+ (0, class_validator_1.IsEmail)({ allow_ip_domain: false }),
43
+ (0, is_valid_email_domain_1.IsValidEmailDomain)(),
44
+ __metadata("design:type", String)
45
+ ], Reference.prototype, "email", void 0);
46
+ __decorate([
47
+ (0, class_validator_1.IsUrl)({ protocols: ['https'] }),
48
+ (0, class_validator_1.IsOptional)(),
49
+ __metadata("design:type", String)
50
+ ], Reference.prototype, "linkedIn", void 0);
51
+ //# sourceMappingURL=reference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reference.js","sourceRoot":"","sources":["../../../src/entities/cv-info/reference.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2FAAoF;AACpF,mEAA6D;AAC7D,qDAQwB;AAIxB,MAAa,SAAU,SAAQ,2CAAmB;IAChD,YAAY,KAAiB;QAC3B,KAAK,CAAC,KAAK,CAAC,CAAA;IACd,CAAC;CAuBF;AA1BD,8BA0BC;AArBC;IADC,IAAA,wBAAM,EAAC,GAAG,CAAC;;sCACA;AAIZ;IAFC,IAAA,2BAAS,EAAC,CAAC,CAAC;IACZ,IAAA,2BAAS,EAAC,EAAE,CAAC;;uCACD;AAIb;IAFC,IAAA,2BAAS,EAAC,CAAC,CAAC;IACZ,IAAA,2BAAS,EAAC,EAAE,CAAC;;2CACG;AAIjB;IAFC,IAAA,+BAAa,GAAE;IACf,IAAA,4BAAU,GAAE;;wCACC;AAId;IAFC,IAAA,yBAAO,EAAC,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;IACnC,IAAA,0CAAkB,GAAE;;wCACP;AAId;IAFC,IAAA,uBAAK,EAAC,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/B,IAAA,4BAAU,GAAE;;2CACI"}
@@ -0,0 +1,46 @@
1
+ import { CATEGORIES_KEY, CATEGORIZED_ITEMS_KEY } from '../../index';
2
+ import { RootClassValidation } from '../../root-class-validation';
3
+ /**
4
+ *
5
+ *
6
+ */
7
+ export type ISkill = Omit<Skill, keyof RootClassValidation>;
8
+ export declare class Skill extends RootClassValidation {
9
+ constructor(params: ISkill);
10
+ $id: string;
11
+ /**
12
+ *
13
+ */
14
+ skillName: string;
15
+ /**
16
+ *
17
+ */
18
+ level?: number;
19
+ $refCategoryId?: string;
20
+ }
21
+ /**
22
+ *
23
+ *
24
+ */
25
+ export type ICategory = Omit<Category, keyof RootClassValidation>;
26
+ export declare class Category extends RootClassValidation {
27
+ constructor(params: ICategory);
28
+ $id: string;
29
+ categoryName: string;
30
+ }
31
+ /**
32
+ *
33
+ *
34
+ */
35
+ export type ISkills = Omit<Skills, keyof RootClassValidation>;
36
+ export declare class Skills extends RootClassValidation {
37
+ constructor(params: ISkills);
38
+ /***
39
+ *
40
+ */
41
+ [CATEGORIES_KEY]?: ICategory[];
42
+ /**
43
+ *
44
+ */
45
+ [CATEGORIZED_ITEMS_KEY]?: ISkill[];
46
+ }
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var _a, _b;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.Skills = exports.Category = exports.Skill = void 0;
14
+ const cross_validation_1 = require("../../custom-class-validators/cross-validation");
15
+ const index_1 = require("../../index");
16
+ const root_class_validation_1 = require("../../root-class-validation");
17
+ const class_transformer_1 = require("class-transformer");
18
+ const class_validator_1 = require("class-validator");
19
+ class Skill extends root_class_validation_1.RootClassValidation {
20
+ constructor(params) {
21
+ super(params);
22
+ }
23
+ }
24
+ exports.Skill = Skill;
25
+ __decorate([
26
+ (0, class_validator_1.IsUUID)('4'),
27
+ __metadata("design:type", String)
28
+ ], Skill.prototype, "$id", void 0);
29
+ __decorate([
30
+ (0, class_validator_1.IsNotEmpty)(),
31
+ (0, class_validator_1.MaxLength)(30),
32
+ __metadata("design:type", String)
33
+ ], Skill.prototype, "skillName", void 0);
34
+ __decorate([
35
+ (0, class_validator_1.IsNumber)(),
36
+ (0, class_validator_1.Min)(1),
37
+ (0, class_validator_1.Max)(100),
38
+ (0, class_validator_1.IsOptional)(),
39
+ __metadata("design:type", Number)
40
+ ], Skill.prototype, "level", void 0);
41
+ __decorate([
42
+ (0, class_validator_1.IsUUID)('4'),
43
+ (0, class_validator_1.IsOptional)(),
44
+ __metadata("design:type", String)
45
+ ], Skill.prototype, "$refCategoryId", void 0);
46
+ class Category extends root_class_validation_1.RootClassValidation {
47
+ constructor(params) {
48
+ super(params);
49
+ }
50
+ }
51
+ exports.Category = Category;
52
+ __decorate([
53
+ (0, class_validator_1.IsUUID)('4'),
54
+ __metadata("design:type", String)
55
+ ], Category.prototype, "$id", void 0);
56
+ __decorate([
57
+ (0, class_validator_1.IsNotEmpty)(),
58
+ (0, class_validator_1.MinLength)(2),
59
+ (0, class_validator_1.MaxLength)(20),
60
+ __metadata("design:type", String)
61
+ ], Category.prototype, "categoryName", void 0);
62
+ class Skills extends root_class_validation_1.RootClassValidation {
63
+ constructor(params) {
64
+ super(params);
65
+ }
66
+ }
67
+ exports.Skills = Skills;
68
+ _a = index_1.CATEGORIES_KEY, _b = index_1.CATEGORIZED_ITEMS_KEY;
69
+ __decorate([
70
+ (0, class_validator_1.IsArray)(),
71
+ (0, class_validator_1.ArrayMaxSize)(20),
72
+ (0, class_validator_1.ArrayUnique)((o) => o.$id),
73
+ (0, class_validator_1.ValidateNested)({ each: true }),
74
+ (0, class_transformer_1.Type)(() => Category),
75
+ (0, class_validator_1.IsOptional)(),
76
+ __metadata("design:type", Array)
77
+ ], Skills.prototype, _a, void 0);
78
+ __decorate([
79
+ (0, class_validator_1.IsArray)(),
80
+ (0, class_validator_1.ArrayMaxSize)(100),
81
+ (0, class_validator_1.ValidateNested)({ each: true }),
82
+ (0, class_transformer_1.Type)(() => Skill),
83
+ (0, cross_validation_1.CrossValidation)((o) => {
84
+ const skills = o;
85
+ const categoriesItem = skills[index_1.CATEGORIZED_ITEMS_KEY];
86
+ const categories = skills[index_1.CATEGORIES_KEY];
87
+ if (!categoriesItem)
88
+ return true;
89
+ if (!categories)
90
+ return true;
91
+ for (const item of categoriesItem) {
92
+ if (!item.$refCategoryId)
93
+ continue;
94
+ if (!categories.some((category) => category.$id === item.$refCategoryId))
95
+ return false;
96
+ }
97
+ return true;
98
+ }),
99
+ (0, class_validator_1.IsOptional)(),
100
+ __metadata("design:type", Array)
101
+ ], Skills.prototype, _b, void 0);
102
+ //# sourceMappingURL=skills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../../src/entities/cv-info/skills.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,iFAA4E;AAC5E,mCAA+D;AAC/D,mEAA6D;AAC7D,yDAAwC;AAExC,qDAawB;AAMxB,MAAa,KAAM,SAAQ,2CAAmB;IAC5C,YAAY,MAAc;QACxB,KAAK,CAAC,MAAM,CAAC,CAAA;IACf,CAAC;CAwBF;AA3BD,sBA2BC;AArBC;IADC,IAAA,wBAAM,EAAC,GAAG,CAAC;;kCACA;AAOZ;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,EAAC,EAAE,CAAC;;wCACI;AASlB;IAJC,IAAA,0BAAQ,GAAE;IACV,IAAA,qBAAG,EAAC,CAAC,CAAC;IACN,IAAA,qBAAG,EAAC,GAAG,CAAC;IACR,IAAA,4BAAU,GAAE;;oCACC;AAId;IAFC,IAAA,wBAAM,EAAC,GAAG,CAAC;IACX,IAAA,4BAAU,GAAE;;6CACU;AAOzB,MAAa,QAAS,SAAQ,2CAAmB;IAC/C,YAAY,MAAiB;QAC3B,KAAK,CAAC,MAAM,CAAC,CAAA;IACf,CAAC;CASF;AAZD,4BAYC;AANC;IADC,IAAA,wBAAM,EAAC,GAAG,CAAC;;qCACA;AAKZ;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,EAAC,CAAC,CAAC;IACZ,IAAA,2BAAS,EAAC,EAAE,CAAC;;8CACO;AAOvB,MAAa,MAAO,SAAQ,2CAAmB;IAC7C,YAAY,MAAe;QACzB,KAAK,CAAC,MAAM,CAAC,CAAA;IACf,CAAC;CAiCF;AApCD,wBAoCC;KAvBE,sBAAc,OAsBd,6BAAqB;AAtBtB;IANC,IAAA,yBAAO,GAAE;IACT,IAAA,8BAAY,EAAC,EAAE,CAAC;IAChB,IAAA,6BAAW,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IACzB,IAAA,gCAAc,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC;IACpB,IAAA,4BAAU,GAAE;;gCACkB;AAsB/B;IAlBC,IAAA,yBAAO,GAAE;IACT,IAAA,8BAAY,EAAC,GAAG,CAAC;IACjB,IAAA,gCAAc,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,KAAK,CAAC;IACjB,IAAA,kCAAe,EAAC,CAAC,CAAC,EAAE,EAAE;QACrB,MAAM,MAAM,GAAY,CAAC,CAAA;QACzB,MAAM,cAAc,GAAG,MAAM,CAAC,6BAAqB,CAAC,CAAA;QACpD,MAAM,UAAU,GAAG,MAAM,CAAC,sBAAc,CAAC,CAAA;QACzC,IAAI,CAAC,cAAc;YAAE,OAAO,IAAI,CAAA;QAChC,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAA;QAC5B,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,cAAc;gBAAE,SAAQ;YAClC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,KAAK,IAAI,CAAC,cAAc,CAAC;gBACtE,OAAO,KAAK,CAAA;QAChB,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC,CAAC;IACD,IAAA,4BAAU,GAAE;;gCACqB"}
@@ -1,11 +1,6 @@
1
- import { Entity } from './entity';
2
- export interface ICvTecUser {
3
- firstname: string;
4
- lastname: string;
5
- email: string;
6
- password: string;
7
- }
8
- export declare class CvTecUser extends Entity {
1
+ import { RootClassValidation } from '../root-class-validation';
2
+ export type ICvTecUser = Omit<CvTecUser, keyof RootClassValidation>;
3
+ export declare class CvTecUser extends RootClassValidation {
9
4
  firstname: string;
10
5
  lastname: string;
11
6
  email: string;
@@ -11,10 +11,10 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.CvTecUser = void 0;
13
13
  const class_validator_1 = require("class-validator");
14
- // import { IsValidEmailDomain } from '../custom-class-validators/is-validate-email-domain'
15
14
  const is_bcrypt_hash_1 = require("../custom-class-validators/is-bcrypt-hash");
16
- const entity_1 = require("./entity");
17
- class CvTecUser extends entity_1.Entity {
15
+ const root_class_validation_1 = require("../root-class-validation");
16
+ const is_valid_email_domain_1 = require("../custom-class-validators/is-valid-email-domain");
17
+ class CvTecUser extends root_class_validation_1.RootClassValidation {
18
18
  constructor(user) {
19
19
  super(user);
20
20
  }
@@ -33,14 +33,13 @@ __decorate([
33
33
  __metadata("design:type", String)
34
34
  ], CvTecUser.prototype, "lastname", void 0);
35
35
  __decorate([
36
- (0, class_validator_1.IsEmail)()
37
- //@IsValidEmailDomain()
38
- ,
36
+ (0, class_validator_1.IsEmail)({ allow_ip_domain: false }),
37
+ (0, is_valid_email_domain_1.IsValidEmailDomain)(),
39
38
  __metadata("design:type", String)
40
39
  ], CvTecUser.prototype, "email", void 0);
41
40
  __decorate([
42
- (0, class_validator_1.IsNotEmpty)(),
43
- (0, is_bcrypt_hash_1.IsBcryptHash)(),
41
+ (0, class_validator_1.IsOptional)(),
42
+ (0, is_bcrypt_hash_1.IsBcryptHash)({}),
44
43
  __metadata("design:type", String)
45
44
  ], CvTecUser.prototype, "password", void 0);
46
45
  //# sourceMappingURL=cv-tec-user.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cv-tec-user.js","sourceRoot":"","sources":["../../src/entities/cv-tec-user.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA2E;AAC3E,2FAA2F;AAC3F,8EAAwE;AACxE,qCAAiC;AAQjC,MAAa,SAAU,SAAQ,eAAM;IAuBnC,YAAY,IAAgB;QAC1B,KAAK,CAAC,IAAI,CAAC,CAAA;IACb,CAAC;CACF;AA1BD,8BA0BC;AAtBC;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,EAAC,CAAC,CAAC;IACZ,IAAA,2BAAS,EAAC,EAAE,CAAC;;4CACI;AAKlB;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,EAAC,CAAC,CAAC;IACZ,IAAA,2BAAS,EAAC,EAAE,CAAC;;2CACG;AAIjB;IAFC,IAAA,yBAAO,GAAE;IACV,uBAAuB;;;wCACT;AAQd;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,6BAAY,GAAE;;2CACE"}
1
+ {"version":3,"file":"cv-tec-user.js","sourceRoot":"","sources":["../../src/entities/cv-tec-user.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAuF;AACvF,6EAAuE;AACvE,mEAA6D;AAC7D,2FAAoF;AAIpF,MAAa,SAAU,SAAQ,2CAAmB;IAmBhD,YAAY,IAAgB;QAC1B,KAAK,CAAC,IAAI,CAAC,CAAA;IACb,CAAC;CACF;AAtBD,8BAsBC;AAlBC;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,EAAC,CAAC,CAAC;IACZ,IAAA,2BAAS,EAAC,EAAE,CAAC;;4CACI;AAKlB;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,EAAC,CAAC,CAAC;IACZ,IAAA,2BAAS,EAAC,EAAE,CAAC;;2CACG;AAIjB;IAFC,IAAA,yBAAO,EAAC,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;IACnC,IAAA,0CAAkB,GAAE;;wCACP;AAId;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,6BAAY,EAAC,EAAE,CAAC;;2CACA"}
package/dist/index.d.ts CHANGED
@@ -1,2 +1,8 @@
1
+ import 'reflect-metadata';
1
2
  export { CvTecUser, ICvTecUser } from './entities/cv-tec-user';
2
- export { Entity } from './entities/entity';
3
+ export { CvInfo } from './entities/cv-info';
4
+ export { RootClassValidation } from './root-class-validation';
5
+ export { SignInDto, SignUpDto } from './dto/auth';
6
+ export declare const CATEGORIES_KEY = "$categories";
7
+ export declare const CATEGORIZED_ITEMS_KEY = "$list";
8
+ export declare const MULTI_VALUE_KEY = "$array";
package/dist/index.js CHANGED
@@ -1,8 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Entity = exports.CvTecUser = void 0;
3
+ exports.MULTI_VALUE_KEY = exports.CATEGORIZED_ITEMS_KEY = exports.CATEGORIES_KEY = exports.SignUpDto = exports.SignInDto = exports.RootClassValidation = exports.CvInfo = exports.CvTecUser = void 0;
4
+ require("reflect-metadata");
4
5
  var cv_tec_user_1 = require("./entities/cv-tec-user");
5
6
  Object.defineProperty(exports, "CvTecUser", { enumerable: true, get: function () { return cv_tec_user_1.CvTecUser; } });
6
- var entity_1 = require("./entities/entity");
7
- Object.defineProperty(exports, "Entity", { enumerable: true, get: function () { return entity_1.Entity; } });
7
+ var cv_info_1 = require("./entities/cv-info");
8
+ Object.defineProperty(exports, "CvInfo", { enumerable: true, get: function () { return cv_info_1.CvInfo; } });
9
+ var root_class_validation_1 = require("./root-class-validation");
10
+ Object.defineProperty(exports, "RootClassValidation", { enumerable: true, get: function () { return root_class_validation_1.RootClassValidation; } });
11
+ var auth_1 = require("./dto/auth");
12
+ Object.defineProperty(exports, "SignInDto", { enumerable: true, get: function () { return auth_1.SignInDto; } });
13
+ Object.defineProperty(exports, "SignUpDto", { enumerable: true, get: function () { return auth_1.SignUpDto; } });
14
+ exports.CATEGORIES_KEY = '$categories';
15
+ exports.CATEGORIZED_ITEMS_KEY = '$list';
16
+ exports.MULTI_VALUE_KEY = '$array';
8
17
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,sDAA8D;AAArD,wGAAA,SAAS,OAAA;AAClB,4CAA0C;AAAjC,gGAAA,MAAM,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,4BAAyB;AACzB,sDAA8D;AAArD,wGAAA,SAAS,OAAA;AAClB,8CAA2C;AAAlC,iGAAA,MAAM,OAAA;AACf,iEAA6D;AAApD,4HAAA,mBAAmB,OAAA;AAC5B,mCAAiD;AAAxC,iGAAA,SAAS,OAAA;AAAE,iGAAA,SAAS,OAAA;AAEhB,QAAA,cAAc,GAAG,aAAa,CAAA;AAC9B,QAAA,qBAAqB,GAAG,OAAO,CAAA;AAC/B,QAAA,eAAe,GAAG,QAAQ,CAAA"}
@@ -0,0 +1,19 @@
1
+ import { ValidationError } from 'class-validator';
2
+ export declare abstract class RootClassValidation {
3
+ /**
4
+ *
5
+ * @param obj
6
+ */
7
+ constructor(obj?: object);
8
+ /**
9
+ *
10
+ * @returns
11
+ */
12
+ validate(parse?: boolean): Promise<ValidationError[] | string[]>;
13
+ /**
14
+ *
15
+ * @param validationError
16
+ * @returns
17
+ */
18
+ private parseValidationError;
19
+ }
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RootClassValidation = void 0;
4
+ const class_transformer_1 = require("class-transformer");
5
+ const class_validator_1 = require("class-validator");
6
+ class RootClassValidation {
7
+ /**
8
+ *
9
+ * @param obj
10
+ */
11
+ constructor(obj) {
12
+ if (obj)
13
+ Object.assign(this, (0, class_transformer_1.plainToInstance)(this.constructor, obj));
14
+ }
15
+ /**
16
+ *
17
+ * @returns
18
+ */
19
+ async validate(parse = true) {
20
+ const errors = await (0, class_validator_1.validate)(this, {
21
+ whitelist: true,
22
+ forbidNonWhitelisted: true,
23
+ });
24
+ if (!parse) {
25
+ return errors;
26
+ }
27
+ return errors.map((err) => this.parseValidationError('', err)).flat();
28
+ }
29
+ /**
30
+ *
31
+ * @param validationError
32
+ * @returns
33
+ */
34
+ parseValidationError(parent, validationError) {
35
+ const { constraints, children, property } = validationError;
36
+ const allError = [];
37
+ if (children) {
38
+ allError.push(...children
39
+ .map((child) => this.parseValidationError(parent ? `${parent}.${property}` : property, child).flat())
40
+ .flat());
41
+ }
42
+ if (constraints) {
43
+ allError.push(...Object.keys(constraints).map((c) => {
44
+ return parent ? `${parent}.${property}.${c}` : `${property}.${c}`;
45
+ }));
46
+ }
47
+ return allError;
48
+ }
49
+ }
50
+ exports.RootClassValidation = RootClassValidation;
51
+ //# sourceMappingURL=root-class-validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"root-class-validation.js","sourceRoot":"","sources":["../src/root-class-validation.ts"],"names":[],"mappings":";;;AAAA,yDAAqE;AACrE,qDAA2D;AAE3D,MAAsB,mBAAmB;IACvC;;;OAGG;IACH,YAAY,GAAY;QACtB,IAAI,GAAG;YACL,MAAM,CAAC,MAAM,CACX,IAAI,EACJ,IAAA,mCAAe,EAAC,IAAI,CAAC,WAAqC,EAAE,GAAG,CAAC,CACjE,CAAA;IACL,CAAC;IACD;;;OAGG;IACH,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI;QACzB,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAQ,EAAC,IAAI,EAAE;YAClC,SAAS,EAAE,IAAI;YACf,oBAAoB,EAAE,IAAI;SAC3B,CAAC,CAAA;QACF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,MAAM,CAAA;QACf,CAAC;QAED,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IACvE,CAAC;IAED;;;;OAIG;IACK,oBAAoB,CAC1B,MAAc,EACd,eAAgC;QAEhC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,eAAe,CAAA;QAC3D,MAAM,QAAQ,GAAa,EAAE,CAAA;QAC7B,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CACX,GAAG,QAAQ;iBACR,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACb,IAAI,CAAC,oBAAoB,CACvB,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,EAC3C,KAAK,CACN,CAAC,IAAI,EAAE,CACT;iBACA,IAAI,EAAE,CACV,CAAA;QACH,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,QAAQ,CAAC,IAAI,CACX,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACpC,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,CAAC,EAAE,CAAA;YACnE,CAAC,CAAC,CACH,CAAA;QACH,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;CACF;AA7DD,kDA6DC"}
@@ -0,0 +1 @@
1
+ export type OwnKeys<T, Base> = Exclude<keyof T, keyof Base>;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/utils/types.ts"],"names":[],"mappings":""}
File without changes
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=validation-messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation-messages.js","sourceRoot":"","sources":["../src/validation-messages.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cv-tec/validations",
3
- "version": "0.0.8",
3
+ "version": "0.0.10",
4
4
  "private": false,
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -14,6 +14,9 @@
14
14
  "dev": "nodemon",
15
15
  "build": "tsc --project tsconfig.build.json && tsc-alias -p tsconfig.build.json",
16
16
  "build:dev": "nodemon --config nodemon.dev.json",
17
+ "test": "jest",
18
+ "test:dev": "jest --watch",
19
+ "test:coverage": "jest --coverage",
17
20
  "publish:patch": "npm version patch && npm run build && npm publish",
18
21
  "publish:minor": "npm version minor && npm run build && npm publish",
19
22
  "publish:major": "npm version major && npm run build && npm publish"
@@ -28,16 +31,17 @@
28
31
  "nodemon": "^3.1.7",
29
32
  "ts-node": "^10.9.2",
30
33
  "ts-patch": "^3.3.0",
31
- "tsc-alias": "^1.8.10",
34
+ "tsc-alias": "^1.8.11",
32
35
  "tsconfig-paths": "^4.2.0",
33
36
  "typescript": "^5.6.3",
34
37
  "typescript-transform-paths": "^3.5.2"
35
38
  },
36
39
  "dependencies": {
37
40
  "ajv": "^8.17.1",
41
+ "class-transformer": "^0.5.1",
38
42
  "class-validator": "^0.14.1",
39
- "disposable-email-detector": "^3.0.0",
40
43
  "lodash": "^4.17.21",
44
+ "reflect-metadata": "^0.2.2",
41
45
  "uuid": "^11.0.5"
42
46
  }
43
47
  }
@@ -1,5 +0,0 @@
1
- import { ValidatorConstraintInterface, ValidationArguments } from 'class-validator';
2
- export declare class IsValidEmailDomainContrain implements ValidatorConstraintInterface {
3
- validate(text: string, args: ValidationArguments): Promise<boolean>;
4
- defaultMessage(args: ValidationArguments): string;
5
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"is-validate-email-domain.js","sourceRoot":"","sources":["../../src/custom-class-validators/is-validate-email-domain.ts"],"names":[],"mappings":";;;;;;;;;AAAA,qDAIwB;AACxB,iEAAiE;AAG1D,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IACrC,KAAK,CAAC,QAAQ,CAAC,IAAY,EAAE,IAAyB;QACpD,wDAAwD;QACxD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,cAAc,CAAC,IAAyB;QACtC,kEAAkE;QAClE,OAAO,eAAe,CAAA;IACxB,CAAC;CACF,CAAA;AAVY,gEAA0B;qCAA1B,0BAA0B;IADtC,IAAA,qCAAmB,EAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;GACvD,0BAA0B,CAUtC;AAED,8EAA8E;AAC9E,6DAA6D;AAC7D,0BAA0B;AAC1B,oCAAoC;AACpC,oCAAoC;AACpC,oCAAoC;AACpC,yBAAyB;AACzB,+CAA+C;AAC/C,SAAS;AACT,MAAM;AACN,IAAI"}
@@ -1,4 +0,0 @@
1
- export declare abstract class Entity {
2
- constructor(props: object);
3
- validate(): Promise<import("class-validator").ValidationError[]>;
4
- }
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Entity = void 0;
4
- const class_validator_1 = require("class-validator");
5
- class Entity {
6
- constructor(props) {
7
- Object.entries(props).forEach((e) => (this[e[0]] = e[1]));
8
- }
9
- async validate() {
10
- return (0, class_validator_1.validate)(this);
11
- }
12
- }
13
- exports.Entity = Entity;
14
- //# sourceMappingURL=entity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../src/entities/entity.ts"],"names":[],"mappings":";;;AAAA,qDAA0C;AAE1C,MAAsB,MAAM;IAC1B,YAAY,KAAa;QACvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,OAAO,IAAA,0BAAQ,EAAC,IAAI,CAAC,CAAA;IACvB,CAAC;CACF;AARD,wBAQC"}