@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.
- package/dist/custom-class-validators/cross-validation.d.ts +2 -0
- package/dist/custom-class-validators/cross-validation.js +23 -0
- package/dist/custom-class-validators/cross-validation.js.map +1 -0
- package/dist/custom-class-validators/is-valid-email-domain/black-list.json +184906 -0
- package/dist/custom-class-validators/is-valid-email-domain/disposable-mail-validation.d.ts +12 -0
- package/dist/custom-class-validators/is-valid-email-domain/disposable-mail-validation.js +66 -0
- package/dist/custom-class-validators/is-valid-email-domain/disposable-mail-validation.js.map +1 -0
- package/dist/custom-class-validators/is-valid-email-domain/index.d.ts +6 -0
- package/dist/custom-class-validators/{is-validate-email-domain.js → is-valid-email-domain/index.js} +18 -15
- package/dist/custom-class-validators/is-valid-email-domain/index.js.map +1 -0
- package/dist/custom-class-validators/validate-single-property-sync.d.ts +1 -0
- package/dist/custom-class-validators/validate-single-property-sync.js +12 -0
- package/dist/custom-class-validators/validate-single-property-sync.js.map +1 -0
- package/dist/dto/auth.d.ts +17 -0
- package/dist/dto/auth.js +71 -0
- package/dist/dto/auth.js.map +1 -0
- package/dist/entities/cv-info/coordinates.d.ts +15 -0
- package/dist/entities/cv-info/coordinates.js +70 -0
- package/dist/entities/cv-info/coordinates.js.map +1 -0
- package/dist/entities/cv-info/cv-info.d.ts +45 -0
- package/dist/entities/cv-info/cv-info.js +128 -0
- package/dist/entities/cv-info/cv-info.js.map +1 -0
- package/dist/entities/cv-info/cv-info.mocks.d.ts +24 -0
- package/dist/entities/cv-info/cv-info.mocks.js +171 -0
- package/dist/entities/cv-info/cv-info.mocks.js.map +1 -0
- package/dist/entities/cv-info/experience.d.ts +17 -0
- package/dist/entities/cv-info/experience.js +94 -0
- package/dist/entities/cv-info/experience.js.map +1 -0
- package/dist/entities/cv-info/formation.d.ts +13 -0
- package/dist/entities/cv-info/formation.js +60 -0
- package/dist/entities/cv-info/formation.js.map +1 -0
- package/dist/entities/cv-info/hobby.d.ts +8 -0
- package/dist/entities/cv-info/hobby.js +36 -0
- package/dist/entities/cv-info/hobby.js.map +1 -0
- package/dist/entities/cv-info/index.d.ts +1 -0
- package/dist/entities/cv-info/index.js +6 -0
- package/dist/entities/cv-info/index.js.map +1 -0
- package/dist/entities/cv-info/language.d.ts +6 -0
- package/dist/entities/cv-info/language.js +31 -0
- package/dist/entities/cv-info/language.js.map +1 -0
- package/dist/entities/cv-info/mission.d.ts +13 -0
- package/dist/entities/cv-info/mission.js +76 -0
- package/dist/entities/cv-info/mission.js.map +1 -0
- package/dist/entities/cv-info/profile.d.ts +11 -0
- package/dist/entities/cv-info/profile.js +51 -0
- package/dist/entities/cv-info/profile.js.map +1 -0
- package/dist/entities/cv-info/reference.d.ts +11 -0
- package/dist/entities/cv-info/reference.js +51 -0
- package/dist/entities/cv-info/reference.js.map +1 -0
- package/dist/entities/cv-info/skills.d.ts +46 -0
- package/dist/entities/cv-info/skills.js +102 -0
- package/dist/entities/cv-info/skills.js.map +1 -0
- package/dist/entities/cv-tec-user.d.ts +3 -8
- package/dist/entities/cv-tec-user.js +7 -8
- package/dist/entities/cv-tec-user.js.map +1 -1
- package/dist/index.d.ts +7 -1
- package/dist/index.js +12 -3
- package/dist/index.js.map +1 -1
- package/dist/root-class-validation.d.ts +19 -0
- package/dist/root-class-validation.js +51 -0
- package/dist/root-class-validation.js.map +1 -0
- package/dist/utils/types.d.ts +1 -0
- package/dist/utils/types.js +3 -0
- package/dist/utils/types.js.map +1 -0
- package/dist/validation-messages.d.ts +0 -0
- package/dist/validation-messages.js +2 -0
- package/dist/validation-messages.js.map +1 -0
- package/package.json +7 -3
- package/dist/custom-class-validators/is-validate-email-domain.d.ts +0 -5
- package/dist/custom-class-validators/is-validate-email-domain.js.map +0 -1
- package/dist/entities/entity.d.ts +0 -4
- package/dist/entities/entity.js +0 -14
- 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 {
|
2
|
-
export
|
3
|
-
|
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
|
17
|
-
|
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
|
-
|
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.
|
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,
|
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 {
|
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.
|
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
|
7
|
-
Object.defineProperty(exports, "
|
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,
|
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 @@
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/utils/types.ts"],"names":[],"mappings":""}
|
File without changes
|
@@ -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.
|
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.
|
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"}
|
package/dist/entities/entity.js
DELETED
@@ -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"}
|