lancer-shared 1.2.19 → 1.2.21

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 (160) hide show
  1. package/dist/bundle.cjs.js +134 -23
  2. package/dist/constants/account-status.d.ts +3 -0
  3. package/dist/constants/account-status.js +17 -0
  4. package/dist/constants/collections.js +16 -0
  5. package/dist/constants/common-questions.js +60 -0
  6. package/dist/constants/index.d.ts +1 -1
  7. package/dist/constants/index.js +40 -0
  8. package/dist/constants/invoice.d.ts +2 -0
  9. package/dist/constants/job-filter-options.js +268 -0
  10. package/dist/constants/job-status.js +26 -0
  11. package/dist/constants/mappings/countryMapping.js +122 -0
  12. package/dist/constants/mappings/regionMapping.js +242 -0
  13. package/dist/constants/routes.js +108 -0
  14. package/dist/constants/upwork-accounts.js +21 -0
  15. package/dist/index.js +20 -0
  16. package/dist/schemas/account/account-status.js +11 -0
  17. package/dist/schemas/account/bidder-account.js +37 -0
  18. package/dist/schemas/account/index.js +19 -0
  19. package/dist/schemas/account/manager-account.d.ts +116 -0
  20. package/dist/schemas/account/manager-account.js +38 -0
  21. package/dist/schemas/account/scraper-account.js +37 -0
  22. package/dist/schemas/ai/ai-config.d.ts +36 -0
  23. package/dist/schemas/ai/ai-config.js +12 -0
  24. package/dist/schemas/ai/index.d.ts +3 -0
  25. package/dist/schemas/ai/index.js +19 -0
  26. package/dist/schemas/ai/proposal.d.ts +82 -0
  27. package/dist/schemas/ai/proposal.js +16 -0
  28. package/dist/schemas/ai/suitability.d.ts +37 -0
  29. package/dist/schemas/ai/suitability.js +17 -0
  30. package/dist/schemas/bid/bid-result.js +15 -0
  31. package/dist/schemas/bid/bid.js +36 -0
  32. package/dist/schemas/bid/index.js +18 -0
  33. package/dist/schemas/bidding/index.d.ts +1 -0
  34. package/dist/schemas/bidding/index.js +17 -0
  35. package/dist/schemas/bidding/proposal-bidding-status.d.ts +26 -0
  36. package/dist/schemas/bidding/proposal-bidding-status.js +18 -0
  37. package/dist/schemas/campaign/campaign-ai-metrics.js +9 -0
  38. package/dist/schemas/campaign/campaign-analytics.d.ts +2621 -38
  39. package/dist/schemas/campaign/campaign-analytics.js +41 -0
  40. package/dist/schemas/campaign/campaign-expenses.js +9 -0
  41. package/dist/schemas/campaign/campaign-insights.js +31 -0
  42. package/dist/schemas/campaign/campaign-integrations.js +16 -0
  43. package/dist/schemas/campaign/campaign-job-count.js +6 -0
  44. package/dist/schemas/campaign/campaign.js +44 -0
  45. package/dist/schemas/campaign/index.js +23 -0
  46. package/dist/schemas/chat-message/chat-message.js +13 -0
  47. package/dist/schemas/chat-message/index.js +17 -0
  48. package/dist/schemas/config/agency-config.js +10 -0
  49. package/dist/schemas/config/index.js +17 -0
  50. package/dist/schemas/index.js +32 -0
  51. package/dist/schemas/invoice/index.d.ts +8 -0
  52. package/dist/schemas/job/index.js +19 -0
  53. package/dist/schemas/job/job-details.d.ts +335 -0
  54. package/dist/schemas/job/job-details.js +29 -0
  55. package/dist/schemas/job/job-note.d.ts +83 -0
  56. package/dist/schemas/job/job-note.js +30 -0
  57. package/dist/schemas/job/job-status.d.ts +3 -0
  58. package/dist/schemas/job/job-status.js +27 -0
  59. package/dist/schemas/job/job.d.ts +1160 -0
  60. package/dist/schemas/job/job.js +90 -0
  61. package/dist/schemas/job/pipeline-job.d.ts +602 -0
  62. package/dist/schemas/job/pipeline-job.js +42 -0
  63. package/dist/schemas/job/upwork-job.d.ts +334 -0
  64. package/dist/schemas/job/upwork-job.js +60 -0
  65. package/dist/schemas/job-filters/index.js +17 -0
  66. package/dist/schemas/job-filters/job-filters.js +87 -0
  67. package/dist/schemas/lead/index.js +19 -0
  68. package/dist/schemas/lead/lead-note.js +30 -0
  69. package/dist/schemas/lead/lead-status.d.ts +23 -0
  70. package/dist/schemas/lead/lead-status.js +26 -0
  71. package/dist/schemas/lead/lead.d.ts +1897 -0
  72. package/dist/schemas/lead/lead.js +143 -0
  73. package/dist/schemas/logger/index.js +17 -0
  74. package/dist/schemas/logger/log-event.d.ts +13 -10
  75. package/dist/schemas/logger/log-event.js +66 -0
  76. package/dist/schemas/organization/index.d.ts +68 -1
  77. package/dist/schemas/organization/index.js +17 -0
  78. package/dist/schemas/organization/organization.d.ts +13 -87
  79. package/dist/schemas/organization/organization.js +19 -0
  80. package/dist/schemas/organization/subscription.d.ts +47 -0
  81. package/dist/schemas/plan/index.d.ts +36 -3
  82. package/dist/schemas/proxy/index.js +17 -0
  83. package/dist/schemas/proxy/proxy.js +21 -0
  84. package/dist/schemas/saved-search/index.js +12 -0
  85. package/dist/schemas/scraper/index.js +18 -0
  86. package/dist/schemas/scraper/scrape-payload.d.ts +49 -0
  87. package/dist/schemas/scraper/scrape-payload.js +16 -0
  88. package/dist/schemas/scraper/scrape-result.js +23 -0
  89. package/dist/schemas/shared.js +16 -0
  90. package/dist/schemas/time-filter/index.js +9 -0
  91. package/dist/schemas/upwork-account/index.d.ts +3 -0
  92. package/dist/schemas/upwork-account/index.js +19 -0
  93. package/dist/schemas/upwork-account/upwork-account-status.d.ts +2 -0
  94. package/dist/schemas/upwork-account/upwork-account-status.js +11 -0
  95. package/dist/schemas/upwork-account/upwork-business-manager-account.d.ts +95 -0
  96. package/dist/schemas/upwork-account/upwork-business-manager-account.js +35 -0
  97. package/dist/schemas/upwork-account/upwork-scraping-account.d.ts +90 -0
  98. package/dist/schemas/upwork-account/upwork-scraping-account.js +29 -0
  99. package/dist/schemas/user/index.js +55 -0
  100. package/dist/types/account/account-status.js +2 -0
  101. package/dist/types/account/bidder-account.js +2 -0
  102. package/dist/types/account/index.js +19 -0
  103. package/dist/types/account/manager-account.d.ts +7 -0
  104. package/dist/types/account/manager-account.js +2 -0
  105. package/dist/types/account/scraper-account.js +2 -0
  106. package/dist/types/ai/ai-config.d.ts +6 -0
  107. package/dist/types/ai/ai-config.js +2 -0
  108. package/dist/types/ai/index.d.ts +3 -0
  109. package/dist/types/ai/index.js +19 -0
  110. package/dist/types/ai/proposal.d.ts +10 -0
  111. package/dist/types/ai/proposal.js +2 -0
  112. package/dist/types/ai/suitability.d.ts +6 -0
  113. package/dist/types/ai/suitability.js +2 -0
  114. package/dist/types/bid/bid-result.js +2 -0
  115. package/dist/types/bid/bid.js +2 -0
  116. package/dist/types/bid/index.js +18 -0
  117. package/dist/types/bidding/index.d.ts +1 -0
  118. package/dist/types/bidding/index.js +17 -0
  119. package/dist/types/bidding/proposal-bidding-status.d.ts +3 -0
  120. package/dist/types/bidding/proposal-bidding-status.js +2 -0
  121. package/dist/types/campaign/campaign-analytics.js +2 -0
  122. package/dist/types/campaign/campaign-expenses.js +2 -0
  123. package/dist/types/campaign/campaign-insights.js +2 -0
  124. package/dist/types/campaign/campaign-integrations.js +2 -0
  125. package/dist/types/campaign/campaign-job-count.js +2 -0
  126. package/dist/types/campaign/campaign.js +2 -0
  127. package/dist/types/campaign/index.js +22 -0
  128. package/dist/types/chat-message/chat-message.js +2 -0
  129. package/dist/types/chat-message/index.js +17 -0
  130. package/dist/types/config/agency-config.js +2 -0
  131. package/dist/types/config/index.js +17 -0
  132. package/dist/types/index.js +29 -0
  133. package/dist/types/job/index.js +19 -0
  134. package/dist/types/job/job-details.d.ts +36 -0
  135. package/dist/types/job/job-details.js +2 -0
  136. package/dist/types/job/job-note.js +2 -0
  137. package/dist/types/job/job-status.js +12 -0
  138. package/dist/types/job/job.d.ts +36 -0
  139. package/dist/types/job/job.js +2 -0
  140. package/dist/types/job-filters/index.js +17 -0
  141. package/dist/types/job-filters/job-filters.js +2 -0
  142. package/dist/types/logger/index.js +17 -0
  143. package/dist/types/logger/log-event.js +2 -0
  144. package/dist/types/saved-search/index.js +2 -0
  145. package/dist/types/scraper/index.js +18 -0
  146. package/dist/types/scraper/scrape-payload.js +2 -0
  147. package/dist/types/scraper/scrape-result.js +2 -0
  148. package/dist/types/time-filter/index.js +2 -0
  149. package/dist/types/upwork-account/index.d.ts +3 -0
  150. package/dist/types/upwork-account/index.js +19 -0
  151. package/dist/types/upwork-account/upwork-account-status.d.ts +3 -0
  152. package/dist/types/upwork-account/upwork-account-status.js +2 -0
  153. package/dist/types/upwork-account/upwork-business-manager-account.d.ts +7 -0
  154. package/dist/types/upwork-account/upwork-business-manager-account.js +2 -0
  155. package/dist/types/upwork-account/upwork-scraping-account.d.ts +5 -0
  156. package/dist/types/upwork-account/upwork-scraping-account.js +2 -0
  157. package/dist/types/user/index.js +2 -0
  158. package/dist/utils/index.js +17 -0
  159. package/dist/utils/try-catch.js +25 -0
  160. package/package.json +1 -1
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.jobPipelineResponseSchema = exports.jobPipelineDetailsSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const upwork_job_1 = require("./upwork-job");
6
+ const upwork_job_2 = require("./upwork-job");
7
+ const job_details_1 = require("./job-details");
8
+ exports.jobPipelineDetailsSchema = job_details_1.jobDetailsSchema
9
+ .extend({
10
+ clientInfo: upwork_job_1.ClientInfoSchema.pick({
11
+ country: true,
12
+ }),
13
+ metadata: upwork_job_2.JobMetadataSchema.pick({
14
+ hourlyRate: true,
15
+ fixedPrice: true,
16
+ }),
17
+ biddingAmount: (0, zod_1.number)().optional(),
18
+ boosted: (0, zod_1.boolean)().optional(),
19
+ boostingAmount: (0, zod_1.number)().optional(),
20
+ })
21
+ .pick({
22
+ jobId: true,
23
+ addedAt: true,
24
+ updatedAt: true,
25
+ title: true,
26
+ description: true,
27
+ status: true,
28
+ suitabilityStatus: true,
29
+ suitabilityRating: true,
30
+ suitabilityReason: true,
31
+ clientInfo: true,
32
+ metadata: true,
33
+ biddingAmount: true,
34
+ boostingAmount: true,
35
+ boosted: true,
36
+ });
37
+ exports.jobPipelineResponseSchema = zod_1.z.object({
38
+ jobs: zod_1.z.array(exports.jobPipelineDetailsSchema),
39
+ nextCursor: zod_1.z.string().nullable(),
40
+ hasMore: zod_1.z.boolean(),
41
+ jobCounts: zod_1.z.number().nullable(),
42
+ });
@@ -0,0 +1,334 @@
1
+ import { z } from "zod";
2
+ export declare const VendorQualificationsSchema: z.ZodObject<{
3
+ location: z.ZodNullable<z.ZodString>;
4
+ talentType: z.ZodNullable<z.ZodEnum<["Agency", "Independent", "unspecified"]>>;
5
+ englishLevel: z.ZodNullable<z.ZodString>;
6
+ minimumEarnings: z.ZodNullable<z.ZodNumber>;
7
+ jobSuccessScore: z.ZodNullable<z.ZodString>;
8
+ }, "strip", z.ZodTypeAny, {
9
+ location: string | null;
10
+ talentType: "unspecified" | "Agency" | "Independent" | null;
11
+ englishLevel: string | null;
12
+ minimumEarnings: number | null;
13
+ jobSuccessScore: string | null;
14
+ }, {
15
+ location: string | null;
16
+ talentType: "unspecified" | "Agency" | "Independent" | null;
17
+ englishLevel: string | null;
18
+ minimumEarnings: number | null;
19
+ jobSuccessScore: string | null;
20
+ }>;
21
+ export declare const ClientInfoSchema: z.ZodObject<{
22
+ isPaymentVerified: z.ZodNullable<z.ZodBoolean>;
23
+ numberOfReviews: z.ZodNullable<z.ZodNumber>;
24
+ rating: z.ZodNullable<z.ZodNumber>;
25
+ country: z.ZodNullable<z.ZodString>;
26
+ region: z.ZodNullable<z.ZodString>;
27
+ jobsPosted: z.ZodNullable<z.ZodNumber>;
28
+ totalSpent: z.ZodNullable<z.ZodNumber>;
29
+ numberOfHires: z.ZodNullable<z.ZodNumber>;
30
+ activeEngagements: z.ZodNullable<z.ZodNumber>;
31
+ openJobs: z.ZodNullable<z.ZodNumber>;
32
+ hireRate: z.ZodNullable<z.ZodNumber>;
33
+ memberSince: z.ZodNullable<z.ZodString>;
34
+ companyIndustry: z.ZodNullable<z.ZodString>;
35
+ companySize: z.ZodNullable<z.ZodString>;
36
+ enterpriseClient: z.ZodNullable<z.ZodBoolean>;
37
+ }, "strip", z.ZodTypeAny, {
38
+ country: string | null;
39
+ region: string | null;
40
+ rating: number | null;
41
+ isPaymentVerified: boolean | null;
42
+ numberOfReviews: number | null;
43
+ jobsPosted: number | null;
44
+ totalSpent: number | null;
45
+ numberOfHires: number | null;
46
+ activeEngagements: number | null;
47
+ openJobs: number | null;
48
+ hireRate: number | null;
49
+ memberSince: string | null;
50
+ companyIndustry: string | null;
51
+ companySize: string | null;
52
+ enterpriseClient: boolean | null;
53
+ }, {
54
+ country: string | null;
55
+ region: string | null;
56
+ rating: number | null;
57
+ isPaymentVerified: boolean | null;
58
+ numberOfReviews: number | null;
59
+ jobsPosted: number | null;
60
+ totalSpent: number | null;
61
+ numberOfHires: number | null;
62
+ activeEngagements: number | null;
63
+ openJobs: number | null;
64
+ hireRate: number | null;
65
+ memberSince: string | null;
66
+ companyIndustry: string | null;
67
+ companySize: string | null;
68
+ enterpriseClient: boolean | null;
69
+ }>;
70
+ export declare const JobMetadataSchema: z.ZodObject<{
71
+ hours: z.ZodNullable<z.ZodString>;
72
+ duration: z.ZodNullable<z.ZodString>;
73
+ experienceLevel: z.ZodNullable<z.ZodString>;
74
+ hourlyRate: z.ZodNullable<z.ZodObject<{
75
+ min: z.ZodNullable<z.ZodNumber>;
76
+ max: z.ZodNullable<z.ZodNumber>;
77
+ }, "strip", z.ZodTypeAny, {
78
+ max: number | null;
79
+ min: number | null;
80
+ }, {
81
+ max: number | null;
82
+ min: number | null;
83
+ }>>;
84
+ paymentType: z.ZodNullable<z.ZodString>;
85
+ fixedPrice: z.ZodNullable<z.ZodNumber>;
86
+ }, "strip", z.ZodTypeAny, {
87
+ hours: string | null;
88
+ duration: string | null;
89
+ experienceLevel: string | null;
90
+ hourlyRate: {
91
+ max: number | null;
92
+ min: number | null;
93
+ } | null;
94
+ paymentType: string | null;
95
+ fixedPrice: number | null;
96
+ }, {
97
+ hours: string | null;
98
+ duration: string | null;
99
+ experienceLevel: string | null;
100
+ hourlyRate: {
101
+ max: number | null;
102
+ min: number | null;
103
+ } | null;
104
+ paymentType: string | null;
105
+ fixedPrice: number | null;
106
+ }>;
107
+ export declare const upworkJobDetailsSchema: z.ZodObject<{
108
+ id: z.ZodNullable<z.ZodString>;
109
+ createdAt: z.ZodNullable<z.ZodNumber>;
110
+ title: z.ZodNullable<z.ZodString>;
111
+ category: z.ZodNullable<z.ZodString>;
112
+ skills: z.ZodNullable<z.ZodArray<z.ZodObject<{
113
+ name: z.ZodString;
114
+ }, "strip", z.ZodTypeAny, {
115
+ name: string;
116
+ }, {
117
+ name: string;
118
+ }>, "many">>;
119
+ datetime: z.ZodNullable<z.ZodNumber>;
120
+ description: z.ZodNullable<z.ZodString>;
121
+ descriptionLength: z.ZodNullable<z.ZodNumber>;
122
+ connectsRequired: z.ZodNullable<z.ZodNumber>;
123
+ projectType: z.ZodNullable<z.ZodString>;
124
+ projectDuration: z.ZodNullable<z.ZodString>;
125
+ questions: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
126
+ jobUrl: z.ZodNullable<z.ZodString>;
127
+ metadata: z.ZodNullable<z.ZodObject<{
128
+ hours: z.ZodNullable<z.ZodString>;
129
+ duration: z.ZodNullable<z.ZodString>;
130
+ experienceLevel: z.ZodNullable<z.ZodString>;
131
+ hourlyRate: z.ZodNullable<z.ZodObject<{
132
+ min: z.ZodNullable<z.ZodNumber>;
133
+ max: z.ZodNullable<z.ZodNumber>;
134
+ }, "strip", z.ZodTypeAny, {
135
+ max: number | null;
136
+ min: number | null;
137
+ }, {
138
+ max: number | null;
139
+ min: number | null;
140
+ }>>;
141
+ paymentType: z.ZodNullable<z.ZodString>;
142
+ fixedPrice: z.ZodNullable<z.ZodNumber>;
143
+ }, "strip", z.ZodTypeAny, {
144
+ hours: string | null;
145
+ duration: string | null;
146
+ experienceLevel: string | null;
147
+ hourlyRate: {
148
+ max: number | null;
149
+ min: number | null;
150
+ } | null;
151
+ paymentType: string | null;
152
+ fixedPrice: number | null;
153
+ }, {
154
+ hours: string | null;
155
+ duration: string | null;
156
+ experienceLevel: string | null;
157
+ hourlyRate: {
158
+ max: number | null;
159
+ min: number | null;
160
+ } | null;
161
+ paymentType: string | null;
162
+ fixedPrice: number | null;
163
+ }>>;
164
+ clientInfo: z.ZodNullable<z.ZodObject<{
165
+ isPaymentVerified: z.ZodNullable<z.ZodBoolean>;
166
+ numberOfReviews: z.ZodNullable<z.ZodNumber>;
167
+ rating: z.ZodNullable<z.ZodNumber>;
168
+ country: z.ZodNullable<z.ZodString>;
169
+ region: z.ZodNullable<z.ZodString>;
170
+ jobsPosted: z.ZodNullable<z.ZodNumber>;
171
+ totalSpent: z.ZodNullable<z.ZodNumber>;
172
+ numberOfHires: z.ZodNullable<z.ZodNumber>;
173
+ activeEngagements: z.ZodNullable<z.ZodNumber>;
174
+ openJobs: z.ZodNullable<z.ZodNumber>;
175
+ hireRate: z.ZodNullable<z.ZodNumber>;
176
+ memberSince: z.ZodNullable<z.ZodString>;
177
+ companyIndustry: z.ZodNullable<z.ZodString>;
178
+ companySize: z.ZodNullable<z.ZodString>;
179
+ enterpriseClient: z.ZodNullable<z.ZodBoolean>;
180
+ }, "strip", z.ZodTypeAny, {
181
+ country: string | null;
182
+ region: string | null;
183
+ rating: number | null;
184
+ isPaymentVerified: boolean | null;
185
+ numberOfReviews: number | null;
186
+ jobsPosted: number | null;
187
+ totalSpent: number | null;
188
+ numberOfHires: number | null;
189
+ activeEngagements: number | null;
190
+ openJobs: number | null;
191
+ hireRate: number | null;
192
+ memberSince: string | null;
193
+ companyIndustry: string | null;
194
+ companySize: string | null;
195
+ enterpriseClient: boolean | null;
196
+ }, {
197
+ country: string | null;
198
+ region: string | null;
199
+ rating: number | null;
200
+ isPaymentVerified: boolean | null;
201
+ numberOfReviews: number | null;
202
+ jobsPosted: number | null;
203
+ totalSpent: number | null;
204
+ numberOfHires: number | null;
205
+ activeEngagements: number | null;
206
+ openJobs: number | null;
207
+ hireRate: number | null;
208
+ memberSince: string | null;
209
+ companyIndustry: string | null;
210
+ companySize: string | null;
211
+ enterpriseClient: boolean | null;
212
+ }>>;
213
+ vendorQualifications: z.ZodNullable<z.ZodObject<{
214
+ location: z.ZodNullable<z.ZodString>;
215
+ talentType: z.ZodNullable<z.ZodEnum<["Agency", "Independent", "unspecified"]>>;
216
+ englishLevel: z.ZodNullable<z.ZodString>;
217
+ minimumEarnings: z.ZodNullable<z.ZodNumber>;
218
+ jobSuccessScore: z.ZodNullable<z.ZodString>;
219
+ }, "strip", z.ZodTypeAny, {
220
+ location: string | null;
221
+ talentType: "unspecified" | "Agency" | "Independent" | null;
222
+ englishLevel: string | null;
223
+ minimumEarnings: number | null;
224
+ jobSuccessScore: string | null;
225
+ }, {
226
+ location: string | null;
227
+ talentType: "unspecified" | "Agency" | "Independent" | null;
228
+ englishLevel: string | null;
229
+ minimumEarnings: number | null;
230
+ jobSuccessScore: string | null;
231
+ }>>;
232
+ }, "strip", z.ZodTypeAny, {
233
+ id: string | null;
234
+ title: string | null;
235
+ metadata: {
236
+ hours: string | null;
237
+ duration: string | null;
238
+ experienceLevel: string | null;
239
+ hourlyRate: {
240
+ max: number | null;
241
+ min: number | null;
242
+ } | null;
243
+ paymentType: string | null;
244
+ fixedPrice: number | null;
245
+ } | null;
246
+ description: string | null;
247
+ datetime: number | null;
248
+ createdAt: number | null;
249
+ category: string | null;
250
+ skills: {
251
+ name: string;
252
+ }[] | null;
253
+ descriptionLength: number | null;
254
+ connectsRequired: number | null;
255
+ projectType: string | null;
256
+ projectDuration: string | null;
257
+ questions: string[] | null;
258
+ jobUrl: string | null;
259
+ clientInfo: {
260
+ country: string | null;
261
+ region: string | null;
262
+ rating: number | null;
263
+ isPaymentVerified: boolean | null;
264
+ numberOfReviews: number | null;
265
+ jobsPosted: number | null;
266
+ totalSpent: number | null;
267
+ numberOfHires: number | null;
268
+ activeEngagements: number | null;
269
+ openJobs: number | null;
270
+ hireRate: number | null;
271
+ memberSince: string | null;
272
+ companyIndustry: string | null;
273
+ companySize: string | null;
274
+ enterpriseClient: boolean | null;
275
+ } | null;
276
+ vendorQualifications: {
277
+ location: string | null;
278
+ talentType: "unspecified" | "Agency" | "Independent" | null;
279
+ englishLevel: string | null;
280
+ minimumEarnings: number | null;
281
+ jobSuccessScore: string | null;
282
+ } | null;
283
+ }, {
284
+ id: string | null;
285
+ title: string | null;
286
+ metadata: {
287
+ hours: string | null;
288
+ duration: string | null;
289
+ experienceLevel: string | null;
290
+ hourlyRate: {
291
+ max: number | null;
292
+ min: number | null;
293
+ } | null;
294
+ paymentType: string | null;
295
+ fixedPrice: number | null;
296
+ } | null;
297
+ description: string | null;
298
+ datetime: number | null;
299
+ createdAt: number | null;
300
+ category: string | null;
301
+ skills: {
302
+ name: string;
303
+ }[] | null;
304
+ descriptionLength: number | null;
305
+ connectsRequired: number | null;
306
+ projectType: string | null;
307
+ projectDuration: string | null;
308
+ questions: string[] | null;
309
+ jobUrl: string | null;
310
+ clientInfo: {
311
+ country: string | null;
312
+ region: string | null;
313
+ rating: number | null;
314
+ isPaymentVerified: boolean | null;
315
+ numberOfReviews: number | null;
316
+ jobsPosted: number | null;
317
+ totalSpent: number | null;
318
+ numberOfHires: number | null;
319
+ activeEngagements: number | null;
320
+ openJobs: number | null;
321
+ hireRate: number | null;
322
+ memberSince: string | null;
323
+ companyIndustry: string | null;
324
+ companySize: string | null;
325
+ enterpriseClient: boolean | null;
326
+ } | null;
327
+ vendorQualifications: {
328
+ location: string | null;
329
+ talentType: "unspecified" | "Agency" | "Independent" | null;
330
+ englishLevel: string | null;
331
+ minimumEarnings: number | null;
332
+ jobSuccessScore: string | null;
333
+ } | null;
334
+ }>;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.upworkJobDetailsSchema = exports.JobMetadataSchema = exports.ClientInfoSchema = exports.VendorQualificationsSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const job_details_1 = require("./job-details");
6
+ exports.VendorQualificationsSchema = zod_1.z.object({
7
+ location: zod_1.z.string().nullable(),
8
+ talentType: zod_1.z.enum(["Agency", "Independent", "unspecified"]).nullable(),
9
+ englishLevel: zod_1.z.string().nullable(),
10
+ minimumEarnings: zod_1.z.number().nullable(),
11
+ jobSuccessScore: zod_1.z.string().nullable(),
12
+ });
13
+ exports.ClientInfoSchema = zod_1.z.object({
14
+ isPaymentVerified: zod_1.z.boolean().nullable(),
15
+ numberOfReviews: zod_1.z.number().nullable(),
16
+ rating: zod_1.z.number().nullable(),
17
+ country: zod_1.z.string().nullable(),
18
+ region: zod_1.z.string().nullable(),
19
+ jobsPosted: zod_1.z.number().nullable(),
20
+ totalSpent: zod_1.z.number().nullable(),
21
+ numberOfHires: zod_1.z.number().nullable(),
22
+ activeEngagements: zod_1.z.number().nullable(),
23
+ openJobs: zod_1.z.number().nullable(),
24
+ hireRate: zod_1.z.number().nullable(),
25
+ memberSince: zod_1.z.string().nullable(),
26
+ companyIndustry: zod_1.z.string().nullable(),
27
+ companySize: zod_1.z.string().nullable(),
28
+ enterpriseClient: zod_1.z.boolean().nullable(),
29
+ });
30
+ exports.JobMetadataSchema = zod_1.z.object({
31
+ hours: zod_1.z.string().nullable(),
32
+ duration: zod_1.z.string().nullable(),
33
+ experienceLevel: zod_1.z.string().nullable(),
34
+ hourlyRate: zod_1.z
35
+ .object({
36
+ min: zod_1.z.number().nullable(),
37
+ max: zod_1.z.number().nullable(),
38
+ })
39
+ .nullable(),
40
+ paymentType: zod_1.z.string().nullable(),
41
+ fixedPrice: zod_1.z.number().nullable(),
42
+ });
43
+ exports.upworkJobDetailsSchema = zod_1.z.object({
44
+ id: zod_1.z.string().nullable(),
45
+ createdAt: zod_1.z.number().nullable(),
46
+ title: zod_1.z.string().nullable(),
47
+ category: zod_1.z.string().nullable(),
48
+ skills: zod_1.z.array(job_details_1.JobSkillsSchema).nullable(),
49
+ datetime: zod_1.z.number().nullable(),
50
+ description: zod_1.z.string().nullable(),
51
+ descriptionLength: zod_1.z.number().nullable(),
52
+ connectsRequired: zod_1.z.number().nullable(),
53
+ projectType: zod_1.z.string().nullable(),
54
+ projectDuration: zod_1.z.string().nullable(),
55
+ questions: zod_1.z.array(zod_1.z.string()).nullable(),
56
+ jobUrl: zod_1.z.string().nullable(),
57
+ metadata: exports.JobMetadataSchema.nullable(),
58
+ clientInfo: exports.ClientInfoSchema.nullable(),
59
+ vendorQualifications: exports.VendorQualificationsSchema.nullable(),
60
+ });
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./job-filters"), exports);
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.jobFiltersSchema = exports.requiredJSSEnum = exports.requiredEarningsEnum = exports.regionEnum = exports.experienceLevelEnum = exports.englishLevelEnum = exports.talentTypeEnum = exports.clientSizeEnum = exports.clientIndustryEnum = exports.categoryEnum = exports.paymentTypeEnum = exports.vendorTypeEnum = exports.engagementTypeEnum = exports.projectDurationEnum = void 0;
4
+ const zod_1 = require("zod");
5
+ const job_filter_options_1 = require("../../constants/job-filter-options");
6
+ // Enum definitions for fixed options
7
+ exports.projectDurationEnum = zod_1.z.enum(job_filter_options_1.JOB_FILTER_OPTIONS.PROJECT_DURATION);
8
+ exports.engagementTypeEnum = zod_1.z.enum(job_filter_options_1.JOB_FILTER_OPTIONS.ENGAGEMENT_TYPE);
9
+ exports.vendorTypeEnum = zod_1.z.enum(job_filter_options_1.JOB_FILTER_OPTIONS.VENDOR_TYPE);
10
+ exports.paymentTypeEnum = zod_1.z.enum(job_filter_options_1.JOB_FILTER_OPTIONS.PAYMENT_TYPE);
11
+ exports.categoryEnum = zod_1.z.enum(job_filter_options_1.JOB_FILTER_OPTIONS.CATEGORIES);
12
+ exports.clientIndustryEnum = zod_1.z.enum(job_filter_options_1.JOB_FILTER_OPTIONS.CLIENT_INDUSTRY);
13
+ exports.clientSizeEnum = zod_1.z.enum(job_filter_options_1.JOB_FILTER_OPTIONS.CLIENT_SIZE);
14
+ exports.talentTypeEnum = zod_1.z.enum(job_filter_options_1.JOB_FILTER_OPTIONS.TALENT_TYPE);
15
+ exports.englishLevelEnum = zod_1.z.enum(job_filter_options_1.JOB_FILTER_OPTIONS.ENGLISH_LEVELS);
16
+ exports.experienceLevelEnum = zod_1.z.enum(job_filter_options_1.JOB_FILTER_OPTIONS.EXPERIENCE_LEVELS);
17
+ exports.regionEnum = zod_1.z.enum(["all", "Worldwide", "UKOnly", "USOnly"]);
18
+ exports.requiredEarningsEnum = zod_1.z.union([
19
+ zod_1.z.literal(100),
20
+ zod_1.z.literal(1000),
21
+ zod_1.z.literal(10000),
22
+ ]);
23
+ exports.requiredJSSEnum = zod_1.z.enum(job_filter_options_1.JOB_FILTER_OPTIONS.REQUIRED_JSS);
24
+ // Main job filters schema
25
+ exports.jobFiltersSchema = zod_1.z.object({
26
+ keywords: zod_1.z
27
+ .object({
28
+ includes: zod_1.z.string().nullable(),
29
+ excludes: zod_1.z.string().nullable(),
30
+ })
31
+ .nullable(),
32
+ isFeatured: zod_1.z.enum(["all", "true", "false"]).nullable(),
33
+ regions: zod_1.z.array(exports.regionEnum).nullable(),
34
+ categories: zod_1.z
35
+ .object({
36
+ includes: zod_1.z.array(exports.categoryEnum).nullable(),
37
+ excludes: zod_1.z.array(exports.categoryEnum).nullable(),
38
+ })
39
+ .nullable(),
40
+ payment: zod_1.z
41
+ .object({
42
+ paymentType: zod_1.z.array(exports.paymentTypeEnum).nullable(),
43
+ minFixedPrice: zod_1.z.number().nullable(),
44
+ maxFixedPrice: zod_1.z.number().nullable(),
45
+ minHourlyRate: zod_1.z.number().nullable(),
46
+ maxHourlyRate: zod_1.z.number().nullable(),
47
+ })
48
+ .nullable(),
49
+ projectDuration: zod_1.z.array(exports.projectDurationEnum).nullable(),
50
+ experienceLevel: zod_1.z.array(exports.experienceLevelEnum).nullable(),
51
+ questions: zod_1.z
52
+ .object({
53
+ hasQuestions: zod_1.z.enum(["all", "yes", "no"]).default("all"),
54
+ })
55
+ .nullable(),
56
+ engagementType: zod_1.z.array(exports.engagementTypeEnum).nullable(),
57
+ clientInfo: zod_1.z
58
+ .object({
59
+ isPaymentVerified: zod_1.z.enum(["all", "true", "false"]).default("all"),
60
+ isPhoneVerified: zod_1.z.enum(["all", "true", "false"]).default("all"),
61
+ enterpriseClient: zod_1.z.enum(["all", "true", "false"]).default("all"),
62
+ clientLocationIncludes: zod_1.z.array(zod_1.z.string()).nullable(),
63
+ clientLocationExcludes: zod_1.z.array(zod_1.z.string()).nullable(),
64
+ minReviewScore: zod_1.z.number().min(0).max(5).nullable(),
65
+ minTotalSpent: zod_1.z.number().nullable(),
66
+ minHireRate: zod_1.z.number().min(0).max(100).nullable(),
67
+ clientIndustry: zod_1.z.array(exports.clientIndustryEnum).nullable(),
68
+ companySize: zod_1.z.array(exports.clientSizeEnum).nullable(),
69
+ minJobsPosted: zod_1.z.number().nullable(),
70
+ minAvgHourlyRate: zod_1.z.number().nullable(),
71
+ minNumReviews: zod_1.z.number().nullable(),
72
+ memberSinceFrom: zod_1.z.string().date().nullable(),
73
+ memberSinceTo: zod_1.z.string().date().nullable(),
74
+ })
75
+ .nullable(),
76
+ vendorQualifications: zod_1.z
77
+ .object({
78
+ locationIncludes: zod_1.z.array(zod_1.z.string()).nullable(),
79
+ locationExcludes: zod_1.z.array(zod_1.z.string()).nullable(),
80
+ talentTypes: zod_1.z.array(exports.talentTypeEnum).nullable(),
81
+ englishLevels: zod_1.z.array(exports.englishLevelEnum).nullable(),
82
+ includeRisingTalent: zod_1.z.string().nullable(),
83
+ requiredEarnings: exports.requiredEarningsEnum.nullable(),
84
+ requiredJSS: zod_1.z.array(exports.requiredJSSEnum).nullable(),
85
+ })
86
+ .nullable(),
87
+ });
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./lead"), exports);
18
+ __exportStar(require("./lead-note"), exports);
19
+ __exportStar(require("./lead-status"), exports);
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateLeadNotesOrderSchema = exports.updateLeadNoteSchema = exports.createLeadNoteSchema = exports.leadNoteSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.leadNoteSchema = zod_1.z.object({
6
+ id: zod_1.z.string(),
7
+ jobId: zod_1.z.string(),
8
+ content: zod_1.z.string(),
9
+ order: zod_1.z.number(),
10
+ bgColor: zod_1.z.string(),
11
+ createdAt: zod_1.z.number(),
12
+ updatedAt: zod_1.z.number(),
13
+ });
14
+ exports.createLeadNoteSchema = exports.leadNoteSchema.pick({
15
+ id: true,
16
+ content: true,
17
+ order: true,
18
+ bgColor: true,
19
+ });
20
+ exports.updateLeadNoteSchema = exports.leadNoteSchema
21
+ .pick({
22
+ id: true,
23
+ content: true,
24
+ order: true,
25
+ bgColor: true,
26
+ })
27
+ .partial({ content: true, order: true, bgColor: true });
28
+ exports.updateLeadNotesOrderSchema = zod_1.z.object({
29
+ order: zod_1.z.array(zod_1.z.object({ id: zod_1.z.string(), order: zod_1.z.number() })),
30
+ });
@@ -1,5 +1,28 @@
1
1
  import { z } from "zod";
2
2
  export declare const agentStatusSchema: z.ZodEnum<["suitabilityPending", "suitabilityProcessing", "suitabilityComplete", "suitabilityFailed", "proposalProcessing", "proposalComplete", "proposalFailed", "biddingProcessing", "biddingComplete", "biddingFailed", "jobArchived"]>;
3
3
  export declare const leadStatusSchema: z.ZodEnum<["leads", "contacted", "viewed", "replied", "interview", "won", "lost"]>;
4
+ export declare const updateLeadStatusSchema: z.ZodObject<{
5
+ leadId: z.ZodString;
6
+ organizationId: z.ZodString;
7
+ campaignId: z.ZodString;
8
+ status: z.ZodEnum<["leads", "contacted", "viewed", "replied", "interview", "won", "lost"]>;
9
+ proposalId: z.ZodOptional<z.ZodString>;
10
+ userId: z.ZodString;
11
+ }, "strip", z.ZodTypeAny, {
12
+ leadId: string;
13
+ organizationId: string;
14
+ campaignId: string;
15
+ status: "leads" | "contacted" | "viewed" | "replied" | "interview" | "won" | "lost";
16
+ userId: string;
17
+ proposalId?: string | undefined;
18
+ }, {
19
+ leadId: string;
20
+ organizationId: string;
21
+ campaignId: string;
22
+ status: "leads" | "contacted" | "viewed" | "replied" | "interview" | "won" | "lost";
23
+ userId: string;
24
+ proposalId?: string | undefined;
25
+ }>;
4
26
  export type LeadStatus = z.infer<typeof leadStatusSchema>;
5
27
  export type LeadAgentStatus = z.infer<typeof agentStatusSchema>;
28
+ export type UpdateLeadStatus = z.infer<typeof updateLeadStatusSchema>;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.leadStatusSchema = exports.agentStatusSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.agentStatusSchema = zod_1.z.enum([
6
+ "suitabilityPending",
7
+ "suitabilityProcessing",
8
+ "suitabilityComplete",
9
+ "suitabilityFailed",
10
+ "proposalProcessing",
11
+ "proposalComplete",
12
+ "proposalFailed",
13
+ "biddingProcessing",
14
+ "biddingComplete",
15
+ "biddingFailed",
16
+ "jobArchived",
17
+ ]);
18
+ exports.leadStatusSchema = zod_1.z.enum([
19
+ "leads",
20
+ "contacted",
21
+ "viewed",
22
+ "replied",
23
+ "negotiations",
24
+ "won",
25
+ "lost",
26
+ ]);