@thejob/schema 1.0.97 → 1.0.98

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 (49) hide show
  1. package/dist/cjs/constants/user/user.d.ts +7 -0
  2. package/dist/cjs/constants/user/user.d.ts.map +1 -1
  3. package/dist/cjs/constants/user/user.js +9 -1
  4. package/dist/cjs/index.d.ts +1 -0
  5. package/dist/cjs/index.d.ts.map +1 -1
  6. package/dist/cjs/index.js +1 -0
  7. package/dist/cjs/interfaces.index.d.ts +26 -0
  8. package/dist/cjs/interfaces.index.d.ts.map +1 -1
  9. package/dist/cjs/job-application/job-application.schema.d.ts +10 -0
  10. package/dist/cjs/job-application/job-application.schema.d.ts.map +1 -1
  11. package/dist/cjs/recruiter-job-description/index.d.ts +2 -0
  12. package/dist/cjs/recruiter-job-description/index.d.ts.map +1 -0
  13. package/dist/cjs/recruiter-job-description/index.js +17 -0
  14. package/dist/cjs/recruiter-job-description/recruiter-job-description.schema.d.ts +28 -0
  15. package/dist/cjs/recruiter-job-description/recruiter-job-description.schema.d.ts.map +1 -0
  16. package/dist/cjs/recruiter-job-description/recruiter-job-description.schema.js +38 -0
  17. package/dist/cjs/resume/resume.schema.d.ts +18 -0
  18. package/dist/cjs/resume/resume.schema.d.ts.map +1 -1
  19. package/dist/cjs/user/general-detail/general-detail.schema.d.ts +3 -0
  20. package/dist/cjs/user/general-detail/general-detail.schema.d.ts.map +1 -1
  21. package/dist/cjs/user/general-detail/general-detail.schema.js +4 -0
  22. package/dist/cjs/user/user.schema.d.ts +10 -0
  23. package/dist/cjs/user/user.schema.d.ts.map +1 -1
  24. package/dist/cjs/user/user.schema.js +12 -0
  25. package/dist/esm/constants/user/user.d.ts +7 -0
  26. package/dist/esm/constants/user/user.d.ts.map +1 -1
  27. package/dist/esm/constants/user/user.js +8 -0
  28. package/dist/esm/index.d.ts +1 -0
  29. package/dist/esm/index.d.ts.map +1 -1
  30. package/dist/esm/index.js +1 -0
  31. package/dist/esm/interfaces.index.d.ts +26 -0
  32. package/dist/esm/interfaces.index.d.ts.map +1 -1
  33. package/dist/esm/job-application/job-application.schema.d.ts +10 -0
  34. package/dist/esm/job-application/job-application.schema.d.ts.map +1 -1
  35. package/dist/esm/recruiter-job-description/index.d.ts +2 -0
  36. package/dist/esm/recruiter-job-description/index.d.ts.map +1 -0
  37. package/dist/esm/recruiter-job-description/index.js +1 -0
  38. package/dist/esm/recruiter-job-description/recruiter-job-description.schema.d.ts +28 -0
  39. package/dist/esm/recruiter-job-description/recruiter-job-description.schema.d.ts.map +1 -0
  40. package/dist/esm/recruiter-job-description/recruiter-job-description.schema.js +35 -0
  41. package/dist/esm/resume/resume.schema.d.ts +18 -0
  42. package/dist/esm/resume/resume.schema.d.ts.map +1 -1
  43. package/dist/esm/user/general-detail/general-detail.schema.d.ts +3 -0
  44. package/dist/esm/user/general-detail/general-detail.schema.d.ts.map +1 -1
  45. package/dist/esm/user/general-detail/general-detail.schema.js +6 -2
  46. package/dist/esm/user/user.schema.d.ts +10 -0
  47. package/dist/esm/user/user.schema.d.ts.map +1 -1
  48. package/dist/esm/user/user.schema.js +13 -1
  49. package/package.json +1 -1
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RecruiterJobDescriptionSchema = void 0;
4
+ const yup_extended_1 = require("../yup-extended");
5
+ exports.RecruiterJobDescriptionSchema = (0, yup_extended_1.object)({
6
+ shortId: (0, yup_extended_1.string)().required().label("Short ID"),
7
+ /**
8
+ * Recruiter-assigned title for this JD (e.g. "Senior Backend Engineer - Q2 2025").
9
+ * Not the same as the job headline — purely for the recruiter's own organisation.
10
+ */
11
+ title: (0, yup_extended_1.string)().trim().max(200).required().label("Title"),
12
+ /**
13
+ * Raw job description text pasted or uploaded by the recruiter.
14
+ */
15
+ text: (0, yup_extended_1.string)().trim().max(20000).required().label("Job Description Text"),
16
+ /**
17
+ * shortId of the recruiter (user) who created this JD.
18
+ */
19
+ recruiterId: (0, yup_extended_1.string)().required().label("Recruiter ID"),
20
+ /**
21
+ * Optional link to an existing job in the platform.
22
+ * When set, candidate search results are scoped to that job's requirements.
23
+ */
24
+ jobId: (0, yup_extended_1.string)().optional().nullable().label("Linked Job ID"),
25
+ /**
26
+ * Vector embedding of the JD text for semantic/hybrid candidate search.
27
+ * Generated automatically after the JD is saved.
28
+ */
29
+ embedding: (0, yup_extended_1.object)({
30
+ vector: (0, yup_extended_1.array)((0, yup_extended_1.number)().required()).optional().label("Embedding vector"),
31
+ model: (0, yup_extended_1.string)().optional().label("Embedding model"),
32
+ })
33
+ .nullable()
34
+ .optional()
35
+ .label("Embedding"),
36
+ createdAt: (0, yup_extended_1.number)().required().label("Created At"),
37
+ updatedAt: (0, yup_extended_1.number)().optional().label("Updated At"),
38
+ });
@@ -31,6 +31,7 @@ declare const ResumeGeneralInfoSectionSchema: import("yup").ObjectSchema<{
31
31
  country: string;
32
32
  lang: string;
33
33
  } | undefined;
34
+ profileVisibility: import("..").UserProfileVisibility;
34
35
  }, import("yup").AnyObject, {
35
36
  id: undefined;
36
37
  name: {
@@ -47,6 +48,7 @@ declare const ResumeGeneralInfoSectionSchema: import("yup").ObjectSchema<{
47
48
  experienceLevel: undefined;
48
49
  location: any;
49
50
  region: undefined;
51
+ profileVisibility: import("..").UserProfileVisibility.Public;
50
52
  }, "">;
51
53
  export type TResumeGeneralInfoSectionSchema = InferType<typeof ResumeGeneralInfoSectionSchema>;
52
54
  declare const ResumeWorkExperienceSectionSchema: ArraySchema<TUserSchema["workExperiences"], object>;
@@ -121,6 +123,7 @@ export declare const ResumeSchemaV2: import("yup").ObjectSchema<{
121
123
  first: string;
122
124
  };
123
125
  experienceLevel: NonNullable<import("..").ExperienceLevel | undefined>;
126
+ profileVisibility: import("..").UserProfileVisibility;
124
127
  } | {
125
128
  description?: string | undefined;
126
129
  location: {
@@ -293,6 +296,10 @@ export declare const ResumeSchema: import("yup").ObjectSchema<{
293
296
  additionalInfo: never[];
294
297
  status: undefined;
295
298
  roles: import("..").UserRole[];
299
+ embedding: {
300
+ vector: undefined;
301
+ model: undefined;
302
+ };
296
303
  id: undefined;
297
304
  name: {
298
305
  first: undefined;
@@ -308,6 +315,7 @@ export declare const ResumeSchema: import("yup").ObjectSchema<{
308
315
  experienceLevel: undefined;
309
316
  location: any;
310
317
  region: undefined;
318
+ profileVisibility: import("..").UserProfileVisibility.Public;
311
319
  };
312
320
  isOwner: undefined;
313
321
  id: undefined;
@@ -331,6 +339,10 @@ export declare const NewResumePromptSchema: (host?: string) => import("yup").Obj
331
339
  country: string;
332
340
  lang: string;
333
341
  } | undefined;
342
+ embedding?: {
343
+ vector?: number[] | undefined;
344
+ model?: string | undefined;
345
+ } | null | undefined;
334
346
  location: {
335
347
  state?: string | null | undefined;
336
348
  stateCode?: string | null | undefined;
@@ -467,6 +479,7 @@ export declare const NewResumePromptSchema: (host?: string) => import("yup").Obj
467
479
  first: string;
468
480
  };
469
481
  experienceLevel: NonNullable<import("..").ExperienceLevel | undefined>;
482
+ profileVisibility: import("..").UserProfileVisibility;
470
483
  };
471
484
  title: string;
472
485
  jobUrl: string | undefined;
@@ -484,6 +497,10 @@ export declare const NewResumePromptSchema: (host?: string) => import("yup").Obj
484
497
  additionalInfo: never[];
485
498
  status: undefined;
486
499
  roles: import("..").UserRole[];
500
+ embedding: {
501
+ vector: undefined;
502
+ model: undefined;
503
+ };
487
504
  id: undefined;
488
505
  name: {
489
506
  first: undefined;
@@ -499,6 +516,7 @@ export declare const NewResumePromptSchema: (host?: string) => import("yup").Obj
499
516
  experienceLevel: undefined;
500
517
  location: any;
501
518
  region: undefined;
519
+ profileVisibility: import("..").UserProfileVisibility.Public;
502
520
  };
503
521
  title: undefined;
504
522
  jobUrl: undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"resume.schema.d.ts","sourceRoot":"","sources":["../../../src/resume/resume.schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAuC,MAAM,SAAS,CAAC;AAC3E,OAAO,EAEL,WAAW,EAEX,SAAS,EAMV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EAIb,MAAM,mBAAmB,CAAC;AAO3B,QAAA,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAA0B,CAAC;AAE/D,MAAM,MAAM,+BAA+B,GAAG,SAAS,CACrD,OAAO,8BAA8B,CACtC,CAAC;AAOF,QAAA,MAAM,iCAAiC,EACrC,WAAW,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,MAAM,CACf,CAAC;AAEtC,MAAM,MAAM,kCAAkC,GAAG,SAAS,CACxD,OAAO,iCAAiC,CACzC,CAAC;AAOF,QAAA,MAAM,4BAA4B,EAChC,WAAW,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,MAAM,CACf,CAAC;AAEjC,MAAM,MAAM,6BAA6B,GAAG,SAAS,CACnD,OAAO,4BAA4B,CACpC,CAAC;AAOF,QAAA,MAAM,wBAAwB,EAAI,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,CAE1E,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,SAAS,CAC/C,OAAO,wBAAwB,CAChC,CAAC;AAOF,QAAA,MAAM,0BAA0B,EAC9B,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,MAAM,CACf,CAAC;AAE/B,MAAM,MAAM,2BAA2B,GAAG,SAAS,CACjD,OAAO,0BAA0B,CAClC,CAAC;AAOF,QAAA,MAAM,gCAAgC,EACpC,WAAW,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,MAAM,CACf,CAAC;AAErC,MAAM,MAAM,iCAAiC,GAAG,SAAS,CACvD,OAAO,gCAAgC,CACxC,CAAC;AAOF,QAAA,MAAM,2BAA2B,EAC/B,WAAW,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,MAAM,CACf,CAAC;AAEhC,MAAM,MAAM,4BAA4B,GAAG,SAAS,CAClD,OAAO,2BAA2B,CACnC,CAAC;AAOF,QAAA,MAAM,2BAA2B,EAC/B,WAAW,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,MAAM,CACf,CAAC;AAEhC,MAAM,MAAM,4BAA4B,GAAG,SAAS,CAClD,OAAO,2BAA2B,CACnC,CAAC;AAEF,eAAO,MAAM,gCAAgC,EAC3C,WAAW,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,MAAM,CACf,CAAC;AAErC,MAAM,MAAM,iCAAiC,GAAG,SAAS,CACvD,OAAO,gCAAgC,CACxC,CAAC;AA2CF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAiEC,CAAC;AAC7B,MAAM,MAAM,eAAe,GAAG,SAAS,CAAC,OAAO,cAAc,CAAC,CAAC;AAoB/D,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA+BA,CAAC;AAE1B,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC,OAAO,YAAY,CAAC,CAAC;AAE3D,eAAO,MAAM,qBAAqB,GAAI,OAAO,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAuBb,CAAC;AAEvC,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,GAAG,QAAQ,CAAC,CAAC;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC"}
1
+ {"version":3,"file":"resume.schema.d.ts","sourceRoot":"","sources":["../../../src/resume/resume.schema.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { UserProfileVisibility } from "../../constants";
1
2
  import { InferType, ObjectSchema } from "../../yup-extended";
2
3
  export declare const UserGeneralDetailSchema: ObjectSchema<{
3
4
  id: string | undefined;
@@ -29,6 +30,7 @@ export declare const UserGeneralDetailSchema: ObjectSchema<{
29
30
  country: string;
30
31
  lang: string;
31
32
  } | undefined;
33
+ profileVisibility: UserProfileVisibility;
32
34
  }, import("yup").AnyObject, {
33
35
  id: undefined;
34
36
  name: {
@@ -45,6 +47,7 @@ export declare const UserGeneralDetailSchema: ObjectSchema<{
45
47
  experienceLevel: undefined;
46
48
  location: any;
47
49
  region: undefined;
50
+ profileVisibility: UserProfileVisibility.Public;
48
51
  }, "">;
49
52
  export type TUserGeneralDetailSchema = InferType<typeof UserGeneralDetailSchema>;
50
53
  //# sourceMappingURL=general-detail.schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"general-detail.schema.d.ts","sourceRoot":"","sources":["../../../../src/user/general-detail/general-detail.schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAU,YAAY,EAAU,MAAM,oBAAoB,CAAC;AAE7E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAmCV,CAAC;AAE3B,MAAM,MAAM,wBAAwB,GAAG,SAAS,CAC9C,OAAO,uBAAuB,CAC/B,CAAC"}
1
+ {"version":3,"file":"general-detail.schema.d.ts","sourceRoot":"","sources":["../../../../src/user/general-detail/general-detail.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,qBAAqB,EACtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,SAAS,EAAiB,YAAY,EAAU,MAAM,oBAAoB,CAAC;AAEpF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAuCV,CAAC;AAE3B,MAAM,MAAM,wBAAwB,GAAG,SAAS,CAC9C,OAAO,uBAAuB,CAC/B,CAAC"}
@@ -34,6 +34,10 @@ exports.UserGeneralDetailSchema = (0, yup_extended_1.object)()
34
34
  .optional()
35
35
  .default(undefined)
36
36
  .label("Region"),
37
+ profileVisibility: (0, yup_extended_1.mixed)()
38
+ .oneOf(constants_1.SupportedUserProfileVisibilities)
39
+ .default(constants_1.UserProfileVisibility.Public)
40
+ .label("Profile Visibility"),
37
41
  })
38
42
  .noUnknown()
39
43
  .strict()
@@ -120,6 +120,10 @@ export declare const UserSchema: import("yup").ObjectSchema<{
120
120
  }[];
121
121
  status: NonNullable<import("../constants").UserStatus | undefined>;
122
122
  roles: (import("../constants").UserRole | undefined)[];
123
+ embedding: {
124
+ vector?: number[] | undefined;
125
+ model?: string | undefined;
126
+ } | null | undefined;
123
127
  } & {
124
128
  id: string | undefined;
125
129
  name: {
@@ -150,6 +154,7 @@ export declare const UserSchema: import("yup").ObjectSchema<{
150
154
  country: string;
151
155
  lang: string;
152
156
  } | undefined;
157
+ profileVisibility: import("../constants").UserProfileVisibility;
153
158
  }, import("yup").AnyObject, {
154
159
  socialAccounts: never[];
155
160
  workExperiences: never[];
@@ -162,6 +167,10 @@ export declare const UserSchema: import("yup").ObjectSchema<{
162
167
  additionalInfo: never[];
163
168
  status: undefined;
164
169
  roles: import("../constants").UserRole[];
170
+ embedding: {
171
+ vector: undefined;
172
+ model: undefined;
173
+ };
165
174
  id: undefined;
166
175
  name: {
167
176
  first: undefined;
@@ -177,6 +186,7 @@ export declare const UserSchema: import("yup").ObjectSchema<{
177
186
  experienceLevel: undefined;
178
187
  location: any;
179
188
  region: undefined;
189
+ profileVisibility: import("../constants").UserProfileVisibility.Public;
180
190
  }, "">;
181
191
  export type TUserSchema = InferType<typeof UserSchema>;
182
192
  //# sourceMappingURL=user.schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"user.schema.d.ts","sourceRoot":"","sources":["../../../src/user/user.schema.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAyB,MAAM,iBAAiB,CAAC;AAWnE,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAyFA,CAAC;AAExB,MAAM,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,UAAU,CAAC,CAAC"}
1
+ {"version":3,"file":"user.schema.d.ts","sourceRoot":"","sources":["../../../src/user/user.schema.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAiC,MAAM,iBAAiB,CAAC;AAW3E,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAsGA,CAAC;AAExB,MAAM,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,UAAU,CAAC,CAAC"}
@@ -88,6 +88,18 @@ exports.UserSchema = (0, yup_extended_1.object)()
88
88
  .required()
89
89
  .default(constants_1.DefaultUserRoles)
90
90
  .label("Roles"),
91
+ /**
92
+ * Vector embedding of the user's profile for semantic/hybrid search.
93
+ * Generated from a structured summary of skills, experience, education, etc.
94
+ * Only generated for public profiles with sufficient completeness (≥60%).
95
+ */
96
+ embedding: (0, yup_extended_1.object)({
97
+ vector: (0, yup_extended_1.array)((0, yup_extended_1.number)().required()).optional().label("Embedding vector"),
98
+ model: (0, yup_extended_1.string)().optional().label("Embedding model"),
99
+ })
100
+ .nullable()
101
+ .optional()
102
+ .label("Embedding"),
91
103
  })
92
104
  .concat(general_detail_schema_1.UserGeneralDetailSchema)
93
105
  .noUnknown()
@@ -2,6 +2,7 @@ export declare enum UserRole {
2
2
  Admin = "admin",
3
3
  Moderator = "moderator",
4
4
  Manager = "manager",
5
+ Recruiter = "recruiter",
5
6
  System = "system",
6
7
  Normal = "normal"
7
8
  }
@@ -15,6 +16,12 @@ export declare enum UserStatus {
15
16
  }
16
17
  export declare const SupportedUserStatuses: UserStatus[];
17
18
  export declare const DefaultUserRoles: UserRole[];
19
+ export declare enum UserProfileVisibility {
20
+ Public = "public",
21
+ Private = "private",
22
+ Hidden = "hidden"
23
+ }
24
+ export declare const SupportedUserProfileVisibilities: UserProfileVisibility[];
18
25
  export declare enum UserDetailType {
19
26
  Overview = "overview",
20
27
  AdditionalInfo = "additionalInfo",
@@ -1 +1 @@
1
- {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../../src/constants/user/user.ts"],"names":[],"mappings":"AACA,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED,eAAO,MAAM,kBAAkB,YAA0B,CAAC;AAE1D,oBAAY,UAAU;IACpB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,iBAAiB,wBAAwB;CAC1C;AAED,eAAO,MAAM,qBAAqB,cAA4B,CAAC;AAE/D,eAAO,MAAM,gBAAgB,YAAoB,CAAC;AAElD,oBAAY,cAAc;IACxB,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,OAAO,YAAY;IACnB,cAAc,mBAAmB;IACjC,eAAe,oBAAoB;IACnC,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,cAAc,mBAAmB;IACjC,SAAS,cAAc;IACvB,QAAQ,aAAa;CACtB;AAED,oBAAY,gBAAgB;IAC1B,cAAc,oBAAoB;IAClC,QAAQ,aAAa;IACrB,YAAY,iBAAiB;IAC7B,QAAQ,aAAa;IACrB,MAAM,WAAW;CAClB;AAED,eAAO,MAAM,0BAA0B,oBAAkC,CAAC;AAE1E,oBAAY,aAAa;IACvB,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,aAAa,kBAAkB;IAC/B,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,KAAK,UAAU;CAChB;AAED,eAAO,MAAM,uBAAuB,iBAA+B,CAAC"}
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../../src/constants/user/user.ts"],"names":[],"mappings":"AACA,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED,eAAO,MAAM,kBAAkB,YAA0B,CAAC;AAE1D,oBAAY,UAAU;IACpB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,iBAAiB,wBAAwB;CAC1C;AAED,eAAO,MAAM,qBAAqB,cAA4B,CAAC;AAE/D,eAAO,MAAM,gBAAgB,YAAoB,CAAC;AAElD,oBAAY,qBAAqB;IAC/B,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB;AAED,eAAO,MAAM,gCAAgC,yBAE5C,CAAC;AAEF,oBAAY,cAAc;IACxB,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,OAAO,YAAY;IACnB,cAAc,mBAAmB;IACjC,eAAe,oBAAoB;IACnC,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,cAAc,mBAAmB;IACjC,SAAS,cAAc;IACvB,QAAQ,aAAa;CACtB;AAED,oBAAY,gBAAgB;IAC1B,cAAc,oBAAoB;IAClC,QAAQ,aAAa;IACrB,YAAY,iBAAiB;IAC7B,QAAQ,aAAa;IACrB,MAAM,WAAW;CAClB;AAED,eAAO,MAAM,0BAA0B,oBAAkC,CAAC;AAE1E,oBAAY,aAAa;IACvB,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,aAAa,kBAAkB;IAC/B,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,KAAK,UAAU;CAChB;AAED,eAAO,MAAM,uBAAuB,iBAA+B,CAAC"}
@@ -4,6 +4,7 @@ export var UserRole;
4
4
  UserRole["Admin"] = "admin";
5
5
  UserRole["Moderator"] = "moderator";
6
6
  UserRole["Manager"] = "manager";
7
+ UserRole["Recruiter"] = "recruiter";
7
8
  UserRole["System"] = "system";
8
9
  UserRole["Normal"] = "normal";
9
10
  })(UserRole || (UserRole = {}));
@@ -18,6 +19,13 @@ export var UserStatus;
18
19
  })(UserStatus || (UserStatus = {}));
19
20
  export const SupportedUserStatuses = Object.values(UserStatus);
20
21
  export const DefaultUserRoles = [UserRole.Normal];
22
+ export var UserProfileVisibility;
23
+ (function (UserProfileVisibility) {
24
+ UserProfileVisibility["Public"] = "public";
25
+ UserProfileVisibility["Private"] = "private";
26
+ UserProfileVisibility["Hidden"] = "hidden";
27
+ })(UserProfileVisibility || (UserProfileVisibility = {}));
28
+ export const SupportedUserProfileVisibilities = Object.values(UserProfileVisibility);
21
29
  export var UserDetailType;
22
30
  (function (UserDetailType) {
23
31
  UserDetailType["Overview"] = "overview";
@@ -22,6 +22,7 @@ export * from "./ai";
22
22
  export * from "./group";
23
23
  export * from "./social-account";
24
24
  export * from "./subscription";
25
+ export * from "./recruiter-job-description";
25
26
  export * from "./design-and-font";
26
27
  export * from "./yup-extended";
27
28
  export * from "./constants";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC;AACpC,cAAc,MAAM,CAAC;AACrB,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC;AACpC,cAAc,MAAM,CAAC;AACrB,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC"}
package/dist/esm/index.js CHANGED
@@ -22,6 +22,7 @@ export * from "./ai";
22
22
  export * from "./group";
23
23
  export * from "./social-account";
24
24
  export * from "./subscription";
25
+ export * from "./recruiter-job-description";
25
26
  export * from "./design-and-font";
26
27
  export * from "./yup-extended";
27
28
  export * from "./constants";
@@ -1280,6 +1280,19 @@ export interface IReadAndAcknowledgeQuestionSchema {
1280
1280
  preferredAnswer: NonNullable<import("/Users/nadeem.ahmad/Documents/GitHub/thejob-yup-schema/src/constants/common/common").Common.Yes | import("/Users/nadeem.ahmad/Documents/GitHub/thejob-yup-schema/src/constants/common/common").Common.No | undefined>;
1281
1281
  answers: NonNullable<import("/Users/nadeem.ahmad/Documents/GitHub/thejob-yup-schema/src/constants/common/common").Common.Yes | import("/Users/nadeem.ahmad/Documents/GitHub/thejob-yup-schema/src/constants/common/common").Common.No | undefined>;
1282
1282
  }
1283
+ export interface IRecruiterJobDescriptionSchema {
1284
+ updatedAt?: number | undefined;
1285
+ embedding?: {
1286
+ vector?: number[] | undefined;
1287
+ model?: string | undefined;
1288
+ } | null | undefined;
1289
+ jobId?: string | null | undefined;
1290
+ shortId: string;
1291
+ createdAt: number;
1292
+ title: string;
1293
+ text: string;
1294
+ recruiterId: string;
1295
+ }
1283
1296
  export interface IResumeGeneralInfoSectionSchema {
1284
1297
  headline?: string | undefined;
1285
1298
  id?: string | undefined;
@@ -1310,6 +1323,7 @@ export interface IResumeGeneralInfoSectionSchema {
1310
1323
  coordinates: number[];
1311
1324
  };
1312
1325
  };
1326
+ profileVisibility: import("/Users/nadeem.ahmad/Documents/GitHub/thejob-yup-schema/src/constants/user/user").UserProfileVisibility;
1313
1327
  }
1314
1328
  export interface IResumeWorkExperienceSectionSchema {
1315
1329
  }
@@ -1490,6 +1504,7 @@ export interface IResumeSchemaV2 {
1490
1504
  coordinates: number[];
1491
1505
  };
1492
1506
  };
1507
+ profileVisibility: import("/Users/nadeem.ahmad/Documents/GitHub/thejob-yup-schema/src/constants/user/user").UserProfileVisibility;
1493
1508
  } | null;
1494
1509
  }[];
1495
1510
  }
@@ -1520,6 +1535,10 @@ export interface INewResumePromptSchema {
1520
1535
  profile: Omit<{
1521
1536
  headline?: string | undefined;
1522
1537
  id?: string | undefined;
1538
+ embedding?: {
1539
+ vector?: number[] | undefined;
1540
+ model?: string | undefined;
1541
+ } | null | undefined;
1523
1542
  emailVerified?: string | null | undefined;
1524
1543
  image?: string | undefined;
1525
1544
  aboutMe?: string | undefined;
@@ -1667,6 +1686,7 @@ export interface INewResumePromptSchema {
1667
1686
  title: string;
1668
1687
  }[];
1669
1688
  roles: (import("/Users/nadeem.ahmad/Documents/GitHub/thejob-yup-schema/src/constants/user/user").UserRole | undefined)[];
1689
+ profileVisibility: import("/Users/nadeem.ahmad/Documents/GitHub/thejob-yup-schema/src/constants/user/user").UserProfileVisibility;
1670
1690
  }, "status" | "roles">;
1671
1691
  jobUrl?: string | undefined;
1672
1692
  instructions?: string | undefined;
@@ -1927,6 +1947,10 @@ export interface IUserCompletenessSchema {
1927
1947
  export interface IUserSchema {
1928
1948
  headline?: string | undefined;
1929
1949
  id?: string | undefined;
1950
+ embedding?: {
1951
+ vector?: number[] | undefined;
1952
+ model?: string | undefined;
1953
+ } | null | undefined;
1930
1954
  emailVerified?: string | null | undefined;
1931
1955
  image?: string | undefined;
1932
1956
  aboutMe?: string | undefined;
@@ -2074,6 +2098,7 @@ export interface IUserSchema {
2074
2098
  title: string;
2075
2099
  }[];
2076
2100
  roles: (import("/Users/nadeem.ahmad/Documents/GitHub/thejob-yup-schema/src/constants/user/user").UserRole | undefined)[];
2101
+ profileVisibility: import("/Users/nadeem.ahmad/Documents/GitHub/thejob-yup-schema/src/constants/user/user").UserProfileVisibility;
2077
2102
  }
2078
2103
  export interface IUserProfileOverview {
2079
2104
  name: {
@@ -2262,6 +2287,7 @@ export interface IUserGeneralDetailSchema {
2262
2287
  coordinates: number[];
2263
2288
  };
2264
2289
  };
2290
+ profileVisibility: import("/Users/nadeem.ahmad/Documents/GitHub/thejob-yup-schema/src/constants/user/user").UserProfileVisibility;
2265
2291
  }
2266
2292
  export interface IUserProjectSchema {
2267
2293
  url?: string | undefined;