@cool-digital-solutions/interferir-models 1.2.78 → 1.2.79

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.
@@ -7,7 +7,129 @@ const mongoose_1 = require("mongoose");
7
7
  const express_http_context_1 = __importDefault(require("express-http-context"));
8
8
  const _config_1 = require("../config");
9
9
  const aiHrCandidateSchema = new mongoose_1.Schema({
10
- data: { type: Object, required: true },
10
+ firstName: { type: String, required: true },
11
+ middleName: { type: String, default: null },
12
+ lastName: { type: String, required: true },
13
+ publicIdentifier: { type: String, required: true },
14
+ urn: { type: String, required: true },
15
+ url: { type: String, required: true },
16
+ hasPremium: { type: Boolean, required: true },
17
+ isInfluencer: { type: Boolean, required: true },
18
+ isCreator: { type: Boolean, required: true },
19
+ isOpenlink: { type: Boolean, required: true },
20
+ isJobSeeker: { type: Boolean, required: true },
21
+ isHiring: { type: Boolean, required: true },
22
+ isRetired: { type: Boolean, required: true },
23
+ linkedinId: { type: String, required: true },
24
+ creatorInfo: { type: Object, default: null },
25
+ headline: { type: String, required: true },
26
+ connections: { type: Number, required: true },
27
+ followers: { type: Number, required: true },
28
+ location: {
29
+ name: { type: String, required: true },
30
+ urn: { type: String, required: true },
31
+ country: {
32
+ name: { type: String, required: true },
33
+ code: { type: String, required: true },
34
+ urn: { type: String, required: true },
35
+ },
36
+ },
37
+ topPosition: {
38
+ startDate: { type: Number, required: true },
39
+ endDate: { type: Number, default: null },
40
+ companyInfo: {
41
+ name: { type: String, required: true },
42
+ logo: { type: String, required: true },
43
+ universalName: { type: String, required: true },
44
+ url: { type: String, required: true },
45
+ urn: { type: String, required: true },
46
+ },
47
+ urn: { type: String, required: true },
48
+ },
49
+ profilePicture: { type: String, default: null },
50
+ backgroundPicture: { type: String, required: true },
51
+ profilePictureId: { type: String, default: null },
52
+ versionTag: { type: String, required: true },
53
+ isVerified: { type: Boolean, required: true },
54
+ about: { type: String, required: true },
55
+ featured: [
56
+ {
57
+ type: { type: String, required: true },
58
+ title: { type: String, required: true },
59
+ subtitle: { type: String, required: true },
60
+ text: { type: String, default: null },
61
+ image: { type: String, required: true },
62
+ url: { type: String, required: true },
63
+ },
64
+ ],
65
+ languages: [
66
+ {
67
+ language: { type: String, required: true },
68
+ proficiency: { type: String, required: true },
69
+ },
70
+ ],
71
+ licensesAndCertifications: [
72
+ {
73
+ type: mongoose_1.Schema.Types.Mixed,
74
+ },
75
+ ],
76
+ experience: [
77
+ {
78
+ company: {
79
+ name: { type: String, required: true },
80
+ location: { type: String, default: null },
81
+ locationType: { type: String, default: null },
82
+ logoUrl: { type: String, required: true },
83
+ publicIdentifier: { type: String, required: true },
84
+ urn: { type: String, required: true },
85
+ url: { type: String, required: true },
86
+ },
87
+ positions: [
88
+ {
89
+ role: { type: String, required: true },
90
+ employmentType: { type: String, default: null },
91
+ location: { type: String, required: true },
92
+ locationType: { type: String, default: null },
93
+ description: { type: String, required: true },
94
+ skills: [{ type: String }],
95
+ isCurrentPosition: { type: Boolean, required: true },
96
+ startDate: { type: Number, required: true },
97
+ endDate: { type: Number, default: null },
98
+ duration: {
99
+ months: { type: Number, default: null },
100
+ years: { type: Number, default: null },
101
+ },
102
+ },
103
+ ],
104
+ },
105
+ ],
106
+ education: [
107
+ {
108
+ institute: {
109
+ name: { type: String, required: true },
110
+ logo: { type: String, required: true },
111
+ url: { type: String, required: true },
112
+ urn: { type: String, required: true },
113
+ },
114
+ degreeProgram: { type: String, required: true },
115
+ additionalInfo: { type: String, required: true },
116
+ description: { type: String, required: true },
117
+ startDate: { type: Number, required: true },
118
+ endDate: { type: Number, required: true },
119
+ duration: {
120
+ years: { type: Number, required: true },
121
+ months: { type: Number, required: true },
122
+ },
123
+ },
124
+ ],
125
+ skills: [
126
+ {
127
+ name: { type: String, required: true },
128
+ endorserCount: { type: String, default: null },
129
+ endorsers: [{ type: mongoose_1.Schema.Types.Mixed }],
130
+ urn: { type: String, default: null },
131
+ },
132
+ ],
11
133
  createdBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
12
134
  updatedBy: { type: mongoose_1.Schema.Types.ObjectId, ref: 'User', default: null },
13
135
  updatedDate: Number,
@@ -1,6 +1,126 @@
1
1
  import { BaseModel, BaseSchema } from '../config';
2
+ export interface ICountry {
3
+ name: string;
4
+ code: string;
5
+ urn: string;
6
+ }
7
+ export interface ILocation {
8
+ name: string;
9
+ urn: string;
10
+ country: ICountry;
11
+ }
12
+ export interface ICompanyInfo {
13
+ name: string;
14
+ logo: string;
15
+ universalName: string;
16
+ url: string;
17
+ urn: string;
18
+ }
19
+ export interface ITopPosition {
20
+ startDate: number;
21
+ endDate?: number;
22
+ companyInfo: ICompanyInfo;
23
+ urn: string;
24
+ }
25
+ export interface IFeatured {
26
+ type: string;
27
+ title: string;
28
+ subtitle: string;
29
+ text?: string;
30
+ image: string;
31
+ url: string;
32
+ }
33
+ export interface ILanguage {
34
+ language: string;
35
+ proficiency: string;
36
+ }
37
+ export interface IExperiencePositionDuration {
38
+ months?: number;
39
+ years?: number;
40
+ }
41
+ export interface IExperiencePosition {
42
+ role: string;
43
+ employmentType?: string;
44
+ location: string;
45
+ locationType?: string;
46
+ description: string;
47
+ skills: string[];
48
+ isCurrentPosition: boolean;
49
+ startDate: number;
50
+ endDate?: number;
51
+ duration: IExperiencePositionDuration;
52
+ }
53
+ export interface IExperienceCompany {
54
+ name: string;
55
+ location?: string;
56
+ locationType?: string;
57
+ logoUrl: string;
58
+ publicIdentifier: string;
59
+ urn: string;
60
+ url: string;
61
+ }
62
+ export interface IExperience {
63
+ company: IExperienceCompany;
64
+ positions: IExperiencePosition[];
65
+ }
66
+ export interface IEducationInstitute {
67
+ name: string;
68
+ logo: string;
69
+ url: string;
70
+ urn: string;
71
+ }
72
+ export interface IEducationDuration {
73
+ years: number;
74
+ months: number;
75
+ }
76
+ export interface IEducation {
77
+ institute: IEducationInstitute;
78
+ degreeProgram: string;
79
+ additionalInfo: string;
80
+ description: string;
81
+ startDate: number;
82
+ endDate: number;
83
+ duration: IEducationDuration;
84
+ }
85
+ export interface ISkill {
86
+ name: string;
87
+ endorserCount?: string;
88
+ endorsers: object[];
89
+ urn?: string;
90
+ }
2
91
  export interface IAiHrCandidate extends BaseSchema {
3
- data: object;
92
+ firstName: string;
93
+ middleName?: string;
94
+ lastName: string;
95
+ publicIdentifier: string;
96
+ urn: string;
97
+ url: string;
98
+ hasPremium: boolean;
99
+ isInfluencer: boolean;
100
+ isCreator: boolean;
101
+ isOpenlink: boolean;
102
+ isJobSeeker: boolean;
103
+ isHiring: boolean;
104
+ isRetired: boolean;
105
+ linkedinId: string;
106
+ creatorInfo?: object;
107
+ headline: string;
108
+ connections: number;
109
+ followers: number;
110
+ location: ILocation;
111
+ topPosition: ITopPosition;
112
+ profilePicture?: string;
113
+ backgroundPicture: string;
114
+ profilePictureId?: string;
115
+ versionTag: string;
116
+ isVerified: boolean;
117
+ about: string;
118
+ featured: IFeatured[];
119
+ languages: ILanguage[];
120
+ licensesAndCertifications: object[];
121
+ experience: IExperience[];
122
+ education: IEducation[];
123
+ skills: ISkill[];
4
124
  }
5
125
  export interface IAiHrCandidateModel extends BaseModel<IAiHrCandidate> {
6
126
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cool-digital-solutions/interferir-models",
3
- "version": "1.2.78",
3
+ "version": "1.2.79",
4
4
  "main": "./dist/index.js",
5
5
  "files": [
6
6
  "dist/**/*"