lancer-shared 1.2.119 → 1.2.121
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/bundle.cjs.js +986 -323
- package/dist/constants/organization.d.ts +2 -2
- package/dist/constants/proxies.d.ts +4 -0
- package/dist/constants/routes.d.ts +3 -2
- package/dist/constants/routes.js +6 -0
- package/dist/constants/upwork-filters.d.ts +5 -0
- package/dist/constants/upwork-filters.js +75 -0
- package/dist/schemas/account/bidder-account.d.ts +12 -7
- package/dist/schemas/account/exceptions/no-bidder-accounts-available.d.ts +5 -0
- package/dist/schemas/account/scraper-account.d.ts +14 -16
- package/dist/schemas/ai-config/ai-config.d.ts +39 -0
- package/dist/schemas/ai-config/ai-config.js +12 -0
- package/dist/schemas/ai-config/index.d.ts +1 -0
- package/dist/schemas/ai-config/index.js +17 -0
- package/dist/schemas/bid/bid-status.d.ts +30 -0
- package/dist/schemas/bid/bid-status.js +15 -0
- package/dist/schemas/bid/exceptions/base-exception.d.ts +4 -0
- package/dist/schemas/bid/exceptions/evalute-element.exception.d.ts +5 -0
- package/dist/schemas/bid/exceptions/wait-for-function-timeout.d.ts +5 -0
- package/dist/schemas/bidding/proposal-dto.d.ts +26 -0
- package/dist/schemas/bidding/proposal-dto.js +18 -0
- package/dist/schemas/campaign/campaign-integrations.d.ts +0 -5
- package/dist/schemas/job/feed-job.d.ts +842 -0
- package/dist/schemas/job/index.d.ts +3 -0
- package/dist/schemas/job/job-details.d.ts +5711 -305
- package/dist/schemas/job/job-exceptions.d.ts +10 -0
- package/dist/schemas/job/job-pipeline.d.ts +74 -0
- package/dist/schemas/job/job-pipeline.js +29 -0
- package/dist/schemas/job/job-suitability.d.ts +12 -0
- package/dist/schemas/job/job-suitability.js +13 -0
- package/dist/schemas/job/job.d.ts +16 -16
- package/dist/schemas/job/pipeline-job.d.ts +9 -3
- package/dist/schemas/job/pipeline-job.js +1 -0
- package/dist/schemas/knowledge-object/index.d.ts +1 -0
- package/dist/schemas/knowledge-object/index.js +17 -0
- package/dist/schemas/knowledge-object/knowledge-object.d.ts +128 -0
- package/dist/schemas/knowledge-object/knowledge-object.js +47 -0
- package/dist/schemas/logger/log-event.d.ts +290 -36
- package/dist/schemas/proxy/proxy-available-replacements.d.ts +1 -1
- package/dist/schemas/proxy/proxy.d.ts +20 -9
- package/dist/schemas/proxy/proxy.js +3 -1
- package/dist/schemas/scraper/scrape-payload.d.ts +5 -0
- package/dist/schemas/scraper/scrape-response.d.ts +345 -0
- package/dist/schemas/scraper/scrape-response.js +9 -0
- package/dist/schemas/upwork-account/index.d.ts +1 -1
- package/dist/schemas/upwork-account/index.js +1 -1
- package/dist/schemas/upwork-account/upwork-business-manager-account.d.ts +14 -14
- package/dist/schemas/upwork-account/upwork-business-manager-account.js +2 -2
- package/dist/schemas/upwork-account/upwork-scraper-account.d.ts +92 -0
- package/dist/schemas/upwork-account/upwork-scraper-account.js +31 -0
- package/dist/schemas/upwork-account/upwork-scraping-account.d.ts +23 -23
- package/dist/schemas/upwork-account/upwork-scraping-account.js +4 -3
- package/dist/types/ai-config/ai-config.d.ts +6 -0
- package/dist/types/ai-config/ai-config.js +2 -0
- package/dist/types/ai-config/index.d.ts +1 -0
- package/dist/types/ai-config/index.js +17 -0
- package/dist/types/bid/bid-status.d.ts +5 -0
- package/dist/types/bid/bid-status.js +2 -0
- package/dist/types/bidding/proposal-dto.d.ts +3 -0
- package/dist/types/bidding/proposal-dto.js +2 -0
- package/dist/types/job/job-pipeline.d.ts +4 -0
- package/dist/types/job/job-pipeline.js +2 -0
- package/dist/types/job/job-suitability.d.ts +3 -0
- package/dist/types/job/job-suitability.js +2 -0
- package/dist/types/knowledge-object/index.d.ts +1 -0
- package/dist/types/knowledge-object/index.js +17 -0
- package/dist/types/knowledge-object/knowledge-object.d.ts +4 -0
- package/dist/types/knowledge-object/knowledge-object.js +2 -0
- package/dist/types/scraper/scrape-response.d.ts +4 -0
- package/dist/types/scraper/scrape-response.js +2 -0
- package/dist/types/upwork-account/upwork-scraping-account.d.ts +2 -2
- package/package.json +1 -1
- package/dist/schemas/account/bidder-account-rental.d.ts +0 -91
package/dist/bundle.cjs.js
CHANGED
|
@@ -6419,105 +6419,106 @@ var moment = /*@__PURE__*/getDefaultExportFromCjs(momentExports);
|
|
|
6419
6419
|
|
|
6420
6420
|
const ROUTES = {
|
|
6421
6421
|
AUTH: {
|
|
6422
|
-
BASE:
|
|
6423
|
-
REGISTER:
|
|
6422
|
+
BASE: 'auth',
|
|
6423
|
+
REGISTER: 'auth/register',
|
|
6424
6424
|
},
|
|
6425
6425
|
SYSTEM: {
|
|
6426
|
-
BASE:
|
|
6426
|
+
BASE: 'system',
|
|
6427
6427
|
PROMPTS: {
|
|
6428
|
-
BASE:
|
|
6428
|
+
BASE: 'system/prompts',
|
|
6429
6429
|
},
|
|
6430
6430
|
},
|
|
6431
6431
|
EVENTS: {
|
|
6432
|
-
BASE:
|
|
6432
|
+
BASE: 'events',
|
|
6433
6433
|
BY_ID: (id) => `events/${id}`,
|
|
6434
6434
|
},
|
|
6435
6435
|
JOBS: {
|
|
6436
|
-
BASE:
|
|
6436
|
+
BASE: 'jobs',
|
|
6437
6437
|
BY_ID: (id) => `jobs/${id}`,
|
|
6438
6438
|
UPDATE_ACTIVITY: `jobs/update-activity`,
|
|
6439
|
-
IMPORT:
|
|
6440
|
-
FILTER_OPTIONS:
|
|
6441
|
-
TOTAL_JOBS:
|
|
6439
|
+
IMPORT: 'jobs/import',
|
|
6440
|
+
FILTER_OPTIONS: 'jobs/filter-options',
|
|
6441
|
+
TOTAL_JOBS: 'jobs/total-jobs',
|
|
6442
6442
|
GET_JOB_TITLE: (jobId) => `jobs/get-job-title/${jobId}`,
|
|
6443
|
-
GET_JOBS_COUNT:
|
|
6443
|
+
GET_JOBS_COUNT: 'jobs/get-jobs-count',
|
|
6444
6444
|
},
|
|
6445
6445
|
USERS: {
|
|
6446
|
-
BASE:
|
|
6446
|
+
BASE: 'users',
|
|
6447
6447
|
BY_ID: (id) => `users/${id}`,
|
|
6448
6448
|
ORGANIZATIONS: (id) => `users/${id}/organizations`,
|
|
6449
6449
|
},
|
|
6450
6450
|
COOKIES: {
|
|
6451
|
-
BASE:
|
|
6452
|
-
SCRAPE:
|
|
6451
|
+
BASE: 'cookies',
|
|
6452
|
+
SCRAPE: 'cookies/scrape-cookies',
|
|
6453
6453
|
},
|
|
6454
6454
|
SCRAPING: {
|
|
6455
|
-
BASE:
|
|
6456
|
-
START_SCRAPING:
|
|
6457
|
-
START_WORLDWIDE_SCRAPING:
|
|
6458
|
-
START_US_SCRAPING:
|
|
6459
|
-
START_UK_SCRAPING:
|
|
6460
|
-
UPDATE_ACTIVITY_4H_WORLDWIDE:
|
|
6461
|
-
UPDATE_ACTIVITY_4H_UK:
|
|
6462
|
-
UPDATE_ACTIVITY_4H_US:
|
|
6463
|
-
UPDATE_ACTIVITY_24H_WORLDWIDE:
|
|
6464
|
-
UPDATE_ACTIVITY_24H_UK:
|
|
6465
|
-
UPDATE_ACTIVITY_24H_US:
|
|
6466
|
-
SCRAPE_FEED_WORLDWIDE:
|
|
6467
|
-
SCRAPE_FEED_UK:
|
|
6468
|
-
SCRAPE_FEED_US:
|
|
6469
|
-
SCRAPE_JOB:
|
|
6470
|
-
PROCESS_FEED:
|
|
6471
|
-
SCRAPE_JOB_ACTIVITY:
|
|
6472
|
-
USER_PROFILE:
|
|
6473
|
-
CHECK_LEAD_STATUS:
|
|
6455
|
+
BASE: 'scraping',
|
|
6456
|
+
START_SCRAPING: 'scraping/start',
|
|
6457
|
+
START_WORLDWIDE_SCRAPING: 'scraping/start-worldwide',
|
|
6458
|
+
START_US_SCRAPING: 'scraping/start-us',
|
|
6459
|
+
START_UK_SCRAPING: 'scraping/start-uk',
|
|
6460
|
+
UPDATE_ACTIVITY_4H_WORLDWIDE: 'scraping/update-activity/4h',
|
|
6461
|
+
UPDATE_ACTIVITY_4H_UK: 'scraping/update-activity/4h/uk',
|
|
6462
|
+
UPDATE_ACTIVITY_4H_US: 'scraping/update-activity/4h/us',
|
|
6463
|
+
UPDATE_ACTIVITY_24H_WORLDWIDE: 'scraping/update-activity/24h',
|
|
6464
|
+
UPDATE_ACTIVITY_24H_UK: 'scraping/update-activity/24h/uk',
|
|
6465
|
+
UPDATE_ACTIVITY_24H_US: 'scraping/update-activity/24h/us',
|
|
6466
|
+
SCRAPE_FEED_WORLDWIDE: 'scraping/feed-worldwide',
|
|
6467
|
+
SCRAPE_FEED_UK: 'scraping/feed-uk',
|
|
6468
|
+
SCRAPE_FEED_US: 'scraping/feed-us',
|
|
6469
|
+
SCRAPE_JOB: 'scraping/job',
|
|
6470
|
+
PROCESS_FEED: 'scraping/process-feed',
|
|
6471
|
+
SCRAPE_JOB_ACTIVITY: 'scraping/job-activity',
|
|
6472
|
+
USER_PROFILE: 'scraping/user-profile',
|
|
6473
|
+
CHECK_LEAD_STATUS: 'scraping/check-lead-status',
|
|
6474
6474
|
},
|
|
6475
6475
|
ADMIN: {
|
|
6476
|
-
BASE:
|
|
6476
|
+
BASE: 'admin',
|
|
6477
6477
|
BIDDER_ACCOUNTS: {
|
|
6478
|
-
BASE:
|
|
6478
|
+
BASE: 'admin/bidder-accounts',
|
|
6479
6479
|
BY_ID: (id) => `admin/bidder-accounts/${id}`,
|
|
6480
6480
|
BY_PROVIDER: (provider) => `admin/bidder-accounts/${provider}`,
|
|
6481
6481
|
BY_PROVIDER_AND_ID: (provider, id) => `admin/bidder-accounts/${provider}/${id}`,
|
|
6482
6482
|
},
|
|
6483
6483
|
SCRAPER_ACCOUNTS: {
|
|
6484
|
-
BASE:
|
|
6484
|
+
BASE: 'admin/scraper-accounts',
|
|
6485
6485
|
BY_ID: (id) => `admin/scraper-accounts/${id}`,
|
|
6486
6486
|
BY_PROVIDER: (provider) => `admin/scraper-accounts/${provider}`,
|
|
6487
6487
|
BY_PROVIDER_AND_ID: (provider, id) => `admin/scraper-accounts/${provider}/${id}`,
|
|
6488
|
+
REFRESH_ROTATING_PROXIES: (provider) => `admin/scraper-accounts/${provider}/refresh-rotating-proxies`,
|
|
6488
6489
|
},
|
|
6489
6490
|
PROXIES: {
|
|
6490
|
-
BASE:
|
|
6491
|
+
BASE: 'admin/proxies',
|
|
6491
6492
|
BY_ID: (id) => `admin/proxies/${id}`,
|
|
6492
6493
|
REPLACE_PROXY: (id) => `admin/proxies/${id}/replace`,
|
|
6493
|
-
SYNC:
|
|
6494
|
-
AVAILABLE_REPLACEMENTS:
|
|
6495
|
-
AVAILABLE_COUNTRIES:
|
|
6494
|
+
SYNC: 'admin/proxies/sync',
|
|
6495
|
+
AVAILABLE_REPLACEMENTS: 'admin/proxies/available-replacements',
|
|
6496
|
+
AVAILABLE_COUNTRIES: 'admin/proxies/available-countries',
|
|
6496
6497
|
},
|
|
6497
6498
|
DASHBOARD: {
|
|
6498
|
-
CAMPAIGN_STATS:
|
|
6499
|
+
CAMPAIGN_STATS: 'admin/dashboard/campaign-stats',
|
|
6499
6500
|
},
|
|
6500
6501
|
ALERTS: {
|
|
6501
|
-
BASE:
|
|
6502
|
-
SEND_ALERT:
|
|
6502
|
+
BASE: 'admin/alerts',
|
|
6503
|
+
SEND_ALERT: 'admin/alerts/send',
|
|
6503
6504
|
},
|
|
6504
6505
|
AGENT: {
|
|
6505
|
-
BASE:
|
|
6506
|
-
TEST_JOB_QUALITY:
|
|
6507
|
-
TEST_SUITABILITY:
|
|
6508
|
-
TEST_PROPOSAL:
|
|
6506
|
+
BASE: 'admin/agent',
|
|
6507
|
+
TEST_JOB_QUALITY: 'admin/agent/test-job-quality',
|
|
6508
|
+
TEST_SUITABILITY: 'admin/agent/test-suitability',
|
|
6509
|
+
TEST_PROPOSAL: 'admin/agent/test-proposal',
|
|
6509
6510
|
},
|
|
6510
6511
|
},
|
|
6511
6512
|
BID: {
|
|
6512
|
-
BASE:
|
|
6513
|
+
BASE: 'bid',
|
|
6513
6514
|
BID_ON_JOB: (userId, campaignId, leadId) => `bid/${userId}/${campaignId}/${leadId}`,
|
|
6514
6515
|
},
|
|
6515
6516
|
BIDDER_ACCOUNTS: {
|
|
6516
|
-
BASE:
|
|
6517
|
+
BASE: 'bidder-accounts',
|
|
6517
6518
|
BY_ID: (id) => `bidder-accounts/${id}`,
|
|
6518
6519
|
},
|
|
6519
6520
|
ORGANIZATIONS: {
|
|
6520
|
-
BASE:
|
|
6521
|
+
BASE: 'organizations',
|
|
6521
6522
|
BY_ID: (id) => `organizations/${id}`,
|
|
6522
6523
|
ONBOARDING: {
|
|
6523
6524
|
BASE: (id) => `organizations/${id}/onboarding`,
|
|
@@ -6570,8 +6571,8 @@ const ROUTES = {
|
|
|
6570
6571
|
BY_PLATFORM: (organizationId, campaignId, platform) => `organizations/${organizationId}/campaigns/${campaignId}/chat-bots/${platform}`,
|
|
6571
6572
|
OAUTH_URL: (organizationId, campaignId, platform) => `organizations/${organizationId}/campaigns/${campaignId}/chat-bots/${platform}/oauth-url`,
|
|
6572
6573
|
CALLBACK: (platform) => `chat-bots/${platform}/callback`,
|
|
6573
|
-
SEND_NOTIFICATION: () =>
|
|
6574
|
-
REMOVE_SUITABLE_LEAD_MESSAGE_BUTTONS: () =>
|
|
6574
|
+
SEND_NOTIFICATION: () => 'chat-bots/send-notification',
|
|
6575
|
+
REMOVE_SUITABLE_LEAD_MESSAGE_BUTTONS: () => 'chat-bots/remove-suitable-lead-message-buttons',
|
|
6575
6576
|
},
|
|
6576
6577
|
ACTIVITIES: {
|
|
6577
6578
|
BASE: (organizationId, campaignId) => `organizations/${organizationId}/campaigns/${campaignId}/activities`,
|
|
@@ -6582,26 +6583,26 @@ const ROUTES = {
|
|
|
6582
6583
|
USAGE_SUMMARIES: {
|
|
6583
6584
|
DAILY: {
|
|
6584
6585
|
BASE: (organizationId) => `usage-summaries/${organizationId}/daily`,
|
|
6585
|
-
BY_DATE: (organizationId, date) => `usage-summaries/${organizationId}/daily/${moment(date).format(
|
|
6586
|
+
BY_DATE: (organizationId, date) => `usage-summaries/${organizationId}/daily/${moment(date).format('YYYY-MM-DD')}`,
|
|
6586
6587
|
},
|
|
6587
6588
|
WEEKLY: {
|
|
6588
6589
|
BASE: (organizationId) => `usage-summaries/${organizationId}/weekly`,
|
|
6589
|
-
BY_DATE: (organizationId, date) => `usage-summaries/${organizationId}/weekly/${moment(date).format(
|
|
6590
|
+
BY_DATE: (organizationId, date) => `usage-summaries/${organizationId}/weekly/${moment(date).format('YYYY-WW')}`,
|
|
6590
6591
|
},
|
|
6591
6592
|
MONTHLY: {
|
|
6592
6593
|
BASE: (organizationId) => `usage-summaries/${organizationId}/monthly`,
|
|
6593
|
-
BY_DATE: (organizationId, date) => `usage-summaries/${organizationId}/monthly/${moment(date).format(
|
|
6594
|
+
BY_DATE: (organizationId, date) => `usage-summaries/${organizationId}/monthly/${moment(date).format('YYYY-MM')}`,
|
|
6594
6595
|
},
|
|
6595
6596
|
QUARTERLY: {
|
|
6596
6597
|
BASE: (organizationId) => `usage-summaries/${organizationId}/quarterly`,
|
|
6597
6598
|
BY_DATE: (organizationId, date) => {
|
|
6598
6599
|
const parsed = moment(date);
|
|
6599
|
-
return `usage-summaries/${organizationId}/quarterly/${parsed.format(
|
|
6600
|
+
return `usage-summaries/${organizationId}/quarterly/${parsed.format('YYYY')}-Q${parsed.quarter()}`;
|
|
6600
6601
|
},
|
|
6601
6602
|
},
|
|
6602
6603
|
YEARLY: {
|
|
6603
6604
|
BASE: (organizationId) => `usage-summaries/${organizationId}/yearly`,
|
|
6604
|
-
BY_DATE: (organizationId, date) => `usage-summaries/${organizationId}/yearly/${moment(date).format(
|
|
6605
|
+
BY_DATE: (organizationId, date) => `usage-summaries/${organizationId}/yearly/${moment(date).format('YYYY')}`,
|
|
6605
6606
|
},
|
|
6606
6607
|
},
|
|
6607
6608
|
INVOICES: {
|
|
@@ -6615,35 +6616,35 @@ const ROUTES = {
|
|
|
6615
6616
|
INVOICE_PREVIEW: (id) => `organizations/${id}/invoice-preview`,
|
|
6616
6617
|
},
|
|
6617
6618
|
TRANSACTIONS: {
|
|
6618
|
-
BASE:
|
|
6619
|
+
BASE: 'transactions',
|
|
6619
6620
|
BY_ID: (id) => `transactions/${id}`,
|
|
6620
6621
|
},
|
|
6621
6622
|
AGENT: {
|
|
6622
|
-
BASE:
|
|
6623
|
-
SCRAPE_UPWORK_PROFILE:
|
|
6624
|
-
GENERATE_DEFAULT_AI_CONFIG:
|
|
6625
|
-
TEST_JOB_QUALITY:
|
|
6626
|
-
TEST_SUITABILITY:
|
|
6627
|
-
TEST_PROPOSAL:
|
|
6628
|
-
TEST_SYSTEM_PROMPTS:
|
|
6629
|
-
ANALYZE_LEAD:
|
|
6630
|
-
GENERATE_PROPOSAL:
|
|
6631
|
-
BID:
|
|
6623
|
+
BASE: 'agent',
|
|
6624
|
+
SCRAPE_UPWORK_PROFILE: 'agent/scrape-upwork-profile',
|
|
6625
|
+
GENERATE_DEFAULT_AI_CONFIG: 'agent/generate-ai-config',
|
|
6626
|
+
TEST_JOB_QUALITY: 'agent/test-job-quality',
|
|
6627
|
+
TEST_SUITABILITY: 'agent/test-suitability',
|
|
6628
|
+
TEST_PROPOSAL: 'agent/test-proposal',
|
|
6629
|
+
TEST_SYSTEM_PROMPTS: 'agent/test-system-prompts',
|
|
6630
|
+
ANALYZE_LEAD: 'agent/analyze-lead',
|
|
6631
|
+
GENERATE_PROPOSAL: 'agent/generate-proposal',
|
|
6632
|
+
BID: 'agent/bid',
|
|
6632
6633
|
},
|
|
6633
6634
|
PLANS: {
|
|
6634
|
-
BASE:
|
|
6635
|
+
BASE: 'plans',
|
|
6635
6636
|
BY_ID: (id) => `plans/${id}`,
|
|
6636
6637
|
},
|
|
6637
6638
|
NOTIFICATIONS: {
|
|
6638
|
-
BASE:
|
|
6639
|
-
SEND_NOTIFICATION:
|
|
6639
|
+
BASE: 'notifications',
|
|
6640
|
+
SEND_NOTIFICATION: 'notifications/send',
|
|
6640
6641
|
},
|
|
6641
6642
|
USAGE_EVENTS: {
|
|
6642
|
-
BASE:
|
|
6643
|
+
BASE: 'usage-events',
|
|
6643
6644
|
BY_ID: (id) => `usage-events/${id}`,
|
|
6644
6645
|
},
|
|
6645
6646
|
BIDDER_INSTANCES: {
|
|
6646
|
-
BASE:
|
|
6647
|
+
BASE: 'bidder-instances',
|
|
6647
6648
|
BY_ID: (id) => `bidder-instances/${id}`,
|
|
6648
6649
|
},
|
|
6649
6650
|
};
|
|
@@ -6657,7 +6658,7 @@ const buildRoute = (route, params = {}) => {
|
|
|
6657
6658
|
};
|
|
6658
6659
|
// Helper function to get route without admin prefix
|
|
6659
6660
|
const getRouteWithoutAdminPrefix = (route) => {
|
|
6660
|
-
return route.replace(
|
|
6661
|
+
return route.replace('admin/', '');
|
|
6661
6662
|
};
|
|
6662
6663
|
|
|
6663
6664
|
const accountStatusOrder = [
|
|
@@ -11082,6 +11083,92 @@ const accountStatusSchema = z.enum([
|
|
|
11082
11083
|
'invalid_credentials',
|
|
11083
11084
|
]);
|
|
11084
11085
|
|
|
11086
|
+
// Enum definitions for fixed options
|
|
11087
|
+
const projectDurationEnum = z.enum(JOB_FILTER_OPTIONS.PROJECT_DURATION);
|
|
11088
|
+
const engagementTypeEnum = z.enum(JOB_FILTER_OPTIONS.ENGAGEMENT_TYPE);
|
|
11089
|
+
const vendorTypeEnum = z.enum(JOB_FILTER_OPTIONS.VENDOR_TYPE);
|
|
11090
|
+
const paymentTypeEnum = z.enum(JOB_FILTER_OPTIONS.PAYMENT_TYPE);
|
|
11091
|
+
const categoryEnum = z.enum(JOB_FILTER_OPTIONS.CATEGORIES);
|
|
11092
|
+
const clientIndustryEnum = z.enum(JOB_FILTER_OPTIONS.CLIENT_INDUSTRY);
|
|
11093
|
+
const clientSizeEnum = z.enum(JOB_FILTER_OPTIONS.CLIENT_SIZE);
|
|
11094
|
+
const talentTypeEnum = z.enum(JOB_FILTER_OPTIONS.TALENT_TYPE);
|
|
11095
|
+
const englishLevelEnum = z.enum(JOB_FILTER_OPTIONS.ENGLISH_LEVELS);
|
|
11096
|
+
const experienceLevelEnum = z.enum(JOB_FILTER_OPTIONS.EXPERIENCE_LEVELS);
|
|
11097
|
+
const regionEnum = z.enum(["all", "Worldwide", "UKOnly", "USOnly"]);
|
|
11098
|
+
const requiredEarningsEnum = z.union([
|
|
11099
|
+
z.literal(100),
|
|
11100
|
+
z.literal(1000),
|
|
11101
|
+
z.literal(10000),
|
|
11102
|
+
]);
|
|
11103
|
+
const requiredJSSEnum = z.enum(JOB_FILTER_OPTIONS.REQUIRED_JSS);
|
|
11104
|
+
const isPaymentVerifiedEnum = z.enum(["all", "true", "false"]);
|
|
11105
|
+
const isPhoneVerifiedEnum = z.enum(["all", "true", "false"]);
|
|
11106
|
+
const hasQuestionsEnum = z.enum(["all", "yes", "no"]);
|
|
11107
|
+
// Main job filters schema
|
|
11108
|
+
const jobFiltersSchema = z.object({
|
|
11109
|
+
keywords: z
|
|
11110
|
+
.object({
|
|
11111
|
+
includes: z.string().nullable(),
|
|
11112
|
+
excludes: z.string().nullable(),
|
|
11113
|
+
})
|
|
11114
|
+
.nullable(),
|
|
11115
|
+
isFeatured: z.enum(["all", "true", "false"]).nullable(),
|
|
11116
|
+
regions: z.array(regionEnum).nullable(),
|
|
11117
|
+
categories: z
|
|
11118
|
+
.object({
|
|
11119
|
+
includes: z.array(categoryEnum).nullable(),
|
|
11120
|
+
excludes: z.array(categoryEnum).nullable(),
|
|
11121
|
+
})
|
|
11122
|
+
.nullable(),
|
|
11123
|
+
payment: z
|
|
11124
|
+
.object({
|
|
11125
|
+
paymentType: z.array(paymentTypeEnum).nullable(),
|
|
11126
|
+
minFixedPrice: z.number().nullable(),
|
|
11127
|
+
maxFixedPrice: z.number().nullable(),
|
|
11128
|
+
minHourlyRate: z.number().nullable(),
|
|
11129
|
+
maxHourlyRate: z.number().nullable(),
|
|
11130
|
+
})
|
|
11131
|
+
.nullable(),
|
|
11132
|
+
projectDuration: z.array(projectDurationEnum).nullable(),
|
|
11133
|
+
experienceLevel: z.array(experienceLevelEnum).nullable(),
|
|
11134
|
+
questions: z
|
|
11135
|
+
.object({
|
|
11136
|
+
hasQuestions: arrayType(hasQuestionsEnum),
|
|
11137
|
+
})
|
|
11138
|
+
.nullable(),
|
|
11139
|
+
engagementType: z.array(engagementTypeEnum).nullable(),
|
|
11140
|
+
clientInfo: z
|
|
11141
|
+
.object({
|
|
11142
|
+
isPaymentVerified: isPaymentVerifiedEnum.default("all"),
|
|
11143
|
+
isPhoneVerified: isPhoneVerifiedEnum.default("all"),
|
|
11144
|
+
enterpriseClient: z.enum(["all", "true", "false"]).default("all"),
|
|
11145
|
+
clientLocationIncludes: z.array(z.string()).nullable(),
|
|
11146
|
+
clientLocationExcludes: z.array(z.string()).nullable(),
|
|
11147
|
+
minReviewScore: z.number().min(0).max(5).nullable(),
|
|
11148
|
+
minTotalSpent: z.number().nullable(),
|
|
11149
|
+
minHireRate: z.number().min(0).max(100).nullable(),
|
|
11150
|
+
clientIndustry: z.array(clientIndustryEnum).nullable(),
|
|
11151
|
+
companySize: z.array(clientSizeEnum).nullable(),
|
|
11152
|
+
minJobsPosted: z.number().nullable(),
|
|
11153
|
+
minAvgHourlyRate: z.number().nullable(),
|
|
11154
|
+
minNumReviews: z.number().nullable(),
|
|
11155
|
+
memberSinceFrom: z.string().date().nullable(),
|
|
11156
|
+
memberSinceTo: z.string().date().nullable(),
|
|
11157
|
+
})
|
|
11158
|
+
.nullable(),
|
|
11159
|
+
vendorQualifications: z
|
|
11160
|
+
.object({
|
|
11161
|
+
locationIncludes: z.array(z.string()).nullable(),
|
|
11162
|
+
locationExcludes: z.array(z.string()).nullable(),
|
|
11163
|
+
talentTypes: z.array(talentTypeEnum).nullable(),
|
|
11164
|
+
englishLevels: z.array(englishLevelEnum).nullable(),
|
|
11165
|
+
includeRisingTalent: z.string().nullable(),
|
|
11166
|
+
requiredEarnings: requiredEarningsEnum.nullable(),
|
|
11167
|
+
requiredJSS: z.array(requiredJSSEnum).nullable(),
|
|
11168
|
+
})
|
|
11169
|
+
.nullable(),
|
|
11170
|
+
});
|
|
11171
|
+
|
|
11085
11172
|
const proxyCountryEnum = z.enum([
|
|
11086
11173
|
'US',
|
|
11087
11174
|
'CA',
|
|
@@ -11332,11 +11419,16 @@ const proxyCountryEnum = z.enum([
|
|
|
11332
11419
|
]);
|
|
11333
11420
|
|
|
11334
11421
|
const proxyStatusSchema = z.enum([
|
|
11335
|
-
|
|
11336
|
-
|
|
11337
|
-
|
|
11422
|
+
'invalid',
|
|
11423
|
+
'valid',
|
|
11424
|
+
'pending_validation',
|
|
11425
|
+
]);
|
|
11426
|
+
const proxyProviderSchema = z.enum([
|
|
11427
|
+
'webshare',
|
|
11428
|
+
'decodo',
|
|
11429
|
+
'proxy-cheap',
|
|
11338
11430
|
]);
|
|
11339
|
-
const
|
|
11431
|
+
const proxyTypeSchema = z.enum(['rotating', 'static']);
|
|
11340
11432
|
const proxySchema = z.object({
|
|
11341
11433
|
id: z.string(),
|
|
11342
11434
|
externalId: z.string(),
|
|
@@ -11350,6 +11442,7 @@ const proxySchema = z.object({
|
|
|
11350
11442
|
status: proxyStatusSchema.nullable(),
|
|
11351
11443
|
country: proxyCountryEnum.nullable(),
|
|
11352
11444
|
accountId: z.string().nullable(),
|
|
11445
|
+
type: proxyTypeSchema,
|
|
11353
11446
|
});
|
|
11354
11447
|
const externalProxySchema = proxySchema.omit({
|
|
11355
11448
|
id: true,
|
|
@@ -11361,6 +11454,113 @@ const externalProxySchema = proxySchema.omit({
|
|
|
11361
11454
|
|
|
11362
11455
|
const proxyAvailableReplacementsSchema = z.record(proxyProviderSchema, z.number());
|
|
11363
11456
|
|
|
11457
|
+
const bidderAccountProvider = z.enum([
|
|
11458
|
+
'user-provided',
|
|
11459
|
+
'lancer-provided',
|
|
11460
|
+
]);
|
|
11461
|
+
const bidderAccountAgencySchema = z.object({
|
|
11462
|
+
name: z.string(),
|
|
11463
|
+
logoUrl: z.string().nullable(),
|
|
11464
|
+
contractors: z.array(z.string()),
|
|
11465
|
+
organizationId: z.string(),
|
|
11466
|
+
});
|
|
11467
|
+
const bidderAccountSchema = z.object({
|
|
11468
|
+
id: z.string(),
|
|
11469
|
+
provider: bidderAccountProvider,
|
|
11470
|
+
email: z.string().email(),
|
|
11471
|
+
password: z.string(),
|
|
11472
|
+
securityQuestionAnswer: z.string().nullable(),
|
|
11473
|
+
assignedOrganizations: z.array(z.string()),
|
|
11474
|
+
googleOauthTokens: z.any().nullable(),
|
|
11475
|
+
lastUsed: z.number().nullable(),
|
|
11476
|
+
multiLoginProfileId: z.string().nullable(),
|
|
11477
|
+
proxyId: z.string().nullable(),
|
|
11478
|
+
profilePhotoUrl: z.string().nullable(),
|
|
11479
|
+
name: z.string().nullable(),
|
|
11480
|
+
agencies: z.array(bidderAccountAgencySchema).nullable(),
|
|
11481
|
+
instanceId: stringType().nullable(),
|
|
11482
|
+
createdAt: z.number(),
|
|
11483
|
+
updatedAt: z.number(),
|
|
11484
|
+
region: regionEnum,
|
|
11485
|
+
isProtected: z.boolean().optional(),
|
|
11486
|
+
});
|
|
11487
|
+
const createBidderAccountSchema = bidderAccountSchema
|
|
11488
|
+
.pick({
|
|
11489
|
+
email: true,
|
|
11490
|
+
password: true,
|
|
11491
|
+
provider: true,
|
|
11492
|
+
securityQuestionAnswer: true,
|
|
11493
|
+
profilePhotoUrl: true,
|
|
11494
|
+
name: true,
|
|
11495
|
+
agencies: true,
|
|
11496
|
+
assignedOrganizations: true,
|
|
11497
|
+
region: true,
|
|
11498
|
+
})
|
|
11499
|
+
.extend({
|
|
11500
|
+
proxyCountry: proxyCountryEnum.nullable(),
|
|
11501
|
+
});
|
|
11502
|
+
const updateBidderAccountSchema = bidderAccountSchema
|
|
11503
|
+
.omit({
|
|
11504
|
+
id: true,
|
|
11505
|
+
})
|
|
11506
|
+
.partial();
|
|
11507
|
+
const verifyBidderAccountCredentialsSchema = z.object({
|
|
11508
|
+
email: z.string().email(),
|
|
11509
|
+
password: z.string(),
|
|
11510
|
+
securityQuestionAnswer: z.string(),
|
|
11511
|
+
multiloginProfileId: z.string(),
|
|
11512
|
+
proxy: proxySchema,
|
|
11513
|
+
});
|
|
11514
|
+
const verifyBidderAccountCredentialsResponseSchema = z.object({
|
|
11515
|
+
accountName: z.string().nullable(),
|
|
11516
|
+
accountPhotoUrl: z.string().nullable(),
|
|
11517
|
+
agencies: z.array(bidderAccountAgencySchema).nullable(),
|
|
11518
|
+
});
|
|
11519
|
+
const acceptUpworkInvitationSchema = z.object({
|
|
11520
|
+
code: z.string(),
|
|
11521
|
+
});
|
|
11522
|
+
const acceptUpworkInvitationResponseSchema = z.object({
|
|
11523
|
+
agencyName: z.string(),
|
|
11524
|
+
photoUrl: z.string(),
|
|
11525
|
+
contractors: z.array(z.string()),
|
|
11526
|
+
});
|
|
11527
|
+
|
|
11528
|
+
class BidderAccountAlreadyConnectedException extends Error {
|
|
11529
|
+
code = 'BIDDER_ACCOUNT_ALREADY_CONNECTED';
|
|
11530
|
+
email;
|
|
11531
|
+
constructor(email) {
|
|
11532
|
+
super(`Bidder account ${email} is already connected to a scraper account`);
|
|
11533
|
+
this.email = email;
|
|
11534
|
+
}
|
|
11535
|
+
}
|
|
11536
|
+
const bidderAccountAlreadyConnectedException = (email) => new BidderAccountAlreadyConnectedException(email);
|
|
11537
|
+
|
|
11538
|
+
class InvalidGoogleOAuthTokenException extends Error {
|
|
11539
|
+
code = 'INVALID_GOOGLE_OAUTH_TOKEN';
|
|
11540
|
+
constructor(message) {
|
|
11541
|
+
super(message);
|
|
11542
|
+
}
|
|
11543
|
+
}
|
|
11544
|
+
const invalidGoogleOAuthTokenSchema = (message) => new InvalidGoogleOAuthTokenException(message);
|
|
11545
|
+
|
|
11546
|
+
class NoBidderAccountsAvailableException extends Error {
|
|
11547
|
+
code = 'NO_BIDDER_ACCOUNTS_AVAILABLE';
|
|
11548
|
+
constructor(message) {
|
|
11549
|
+
super(message);
|
|
11550
|
+
}
|
|
11551
|
+
}
|
|
11552
|
+
const noBidderAccountsAvailableException = (message) => {
|
|
11553
|
+
return new NoBidderAccountsAvailableException(message);
|
|
11554
|
+
};
|
|
11555
|
+
|
|
11556
|
+
class NoGoogleOAuthTokensFoundException extends Error {
|
|
11557
|
+
code = 'NO_GOOGLE_OAUTH_TOKENS_FOUND';
|
|
11558
|
+
constructor(message) {
|
|
11559
|
+
super(message);
|
|
11560
|
+
}
|
|
11561
|
+
}
|
|
11562
|
+
const noGoogleOAuthTokensFoundException = (message) => new NoGoogleOAuthTokensFoundException(message);
|
|
11563
|
+
|
|
11364
11564
|
const booleanSchema = z
|
|
11365
11565
|
.union([z.boolean(), z.literal("true"), z.literal("false")])
|
|
11366
11566
|
.transform((value) => value === true || value === "true");
|
|
@@ -11380,7 +11580,7 @@ const regionSchema = z.union([
|
|
|
11380
11580
|
z.literal("Worldwide"),
|
|
11381
11581
|
]);
|
|
11382
11582
|
|
|
11383
|
-
const segmentationDataSchema = objectType({
|
|
11583
|
+
const segmentationDataSchema$1 = objectType({
|
|
11384
11584
|
customValue: stringType().nullable(),
|
|
11385
11585
|
label: stringType(),
|
|
11386
11586
|
name: stringType(),
|
|
@@ -11389,7 +11589,7 @@ const segmentationDataSchema = objectType({
|
|
|
11389
11589
|
value: stringType(),
|
|
11390
11590
|
skill: anyType().nullable(),
|
|
11391
11591
|
});
|
|
11392
|
-
const clientActivitySchema = objectType({
|
|
11592
|
+
const clientActivitySchema$1 = objectType({
|
|
11393
11593
|
lastBuyerActivity: stringType(),
|
|
11394
11594
|
totalApplicants: numberType(),
|
|
11395
11595
|
totalHired: numberType(),
|
|
@@ -11398,23 +11598,23 @@ const clientActivitySchema = objectType({
|
|
|
11398
11598
|
invitationsSent: numberType(),
|
|
11399
11599
|
numberOfPositionsToHire: numberType(),
|
|
11400
11600
|
});
|
|
11401
|
-
const annotationsSchema = objectType({
|
|
11601
|
+
const annotationsSchema$1 = objectType({
|
|
11402
11602
|
tags: arrayType(stringType()),
|
|
11403
11603
|
});
|
|
11404
|
-
const budgetSchema = objectType({
|
|
11604
|
+
const budgetSchema$1 = objectType({
|
|
11405
11605
|
amount: numberType(),
|
|
11406
11606
|
currencyCode: stringType(),
|
|
11407
11607
|
});
|
|
11408
|
-
const engagementDurationSchema = objectType({
|
|
11608
|
+
const engagementDurationSchema$1 = objectType({
|
|
11409
11609
|
label: stringType(),
|
|
11410
11610
|
weeks: numberType(),
|
|
11411
11611
|
});
|
|
11412
|
-
const extendedBudgetInfoSchema = objectType({
|
|
11612
|
+
const extendedBudgetInfoSchema$1 = objectType({
|
|
11413
11613
|
hourlyBudgetMin: numberType().nullable(),
|
|
11414
11614
|
hourlyBudgetMax: numberType().nullable(),
|
|
11415
11615
|
hourlyBudgetType: stringType().nullable(),
|
|
11416
11616
|
});
|
|
11417
|
-
const qualificationsSchema = objectType({
|
|
11617
|
+
const qualificationsSchema$1 = objectType({
|
|
11418
11618
|
countries: anyType().nullable(),
|
|
11419
11619
|
earnings: anyType().nullable(),
|
|
11420
11620
|
groupRecno: anyType().nullable(),
|
|
@@ -11448,20 +11648,20 @@ const jobSchema = objectType({
|
|
|
11448
11648
|
name: stringType(),
|
|
11449
11649
|
urlSlug: stringType(),
|
|
11450
11650
|
}),
|
|
11451
|
-
budget: budgetSchema,
|
|
11651
|
+
budget: budgetSchema$1,
|
|
11452
11652
|
postedOn: stringType(),
|
|
11453
11653
|
publishTime: stringType(),
|
|
11454
11654
|
wasRenewed: booleanType(),
|
|
11455
11655
|
startDate: stringType().nullable(),
|
|
11456
11656
|
deliveryDate: stringType().nullable(),
|
|
11457
11657
|
workload: stringType().nullable(),
|
|
11458
|
-
engagementDuration: engagementDurationSchema,
|
|
11459
|
-
extendedBudgetInfo: extendedBudgetInfoSchema,
|
|
11658
|
+
engagementDuration: engagementDurationSchema$1,
|
|
11659
|
+
extendedBudgetInfo: extendedBudgetInfoSchema$1,
|
|
11460
11660
|
contractorTier: numberType(),
|
|
11461
11661
|
description: stringType(),
|
|
11462
|
-
segmentationData: arrayType(segmentationDataSchema),
|
|
11463
|
-
clientActivity: clientActivitySchema,
|
|
11464
|
-
annotations: annotationsSchema,
|
|
11662
|
+
segmentationData: arrayType(segmentationDataSchema$1),
|
|
11663
|
+
clientActivity: clientActivitySchema$1,
|
|
11664
|
+
annotations: annotationsSchema$1,
|
|
11465
11665
|
uid: stringType(),
|
|
11466
11666
|
title: stringType(),
|
|
11467
11667
|
type: numberType(),
|
|
@@ -11476,12 +11676,12 @@ const jobSchema = objectType({
|
|
|
11476
11676
|
isContractToHire: booleanType(),
|
|
11477
11677
|
attachments: arrayType(anyType()),
|
|
11478
11678
|
isPremium: booleanType(),
|
|
11479
|
-
qualifications: qualificationsSchema,
|
|
11679
|
+
qualifications: qualificationsSchema$1,
|
|
11480
11680
|
questions: arrayType(objectType({ question: stringType(), position: numberType() })),
|
|
11481
11681
|
durationIdV3: numberType(),
|
|
11482
11682
|
durationLabel: stringType(),
|
|
11483
11683
|
});
|
|
11484
|
-
const buyerSchema = objectType({
|
|
11684
|
+
const buyerSchema$1 = objectType({
|
|
11485
11685
|
isEnterprise: booleanType(),
|
|
11486
11686
|
isPaymentMethodVerified: booleanType(),
|
|
11487
11687
|
stats: objectType({
|
|
@@ -11518,7 +11718,7 @@ const buyerSchema = objectType({
|
|
|
11518
11718
|
amount: numberType(),
|
|
11519
11719
|
}).nullable(),
|
|
11520
11720
|
});
|
|
11521
|
-
const currentUserInfoSchema = objectType({
|
|
11721
|
+
const currentUserInfoSchema$1 = objectType({
|
|
11522
11722
|
owner: booleanType(),
|
|
11523
11723
|
freelancerInfo: objectType({
|
|
11524
11724
|
profileState: stringType(),
|
|
@@ -11581,7 +11781,7 @@ const workHistorySchema = arrayType(objectType({
|
|
|
11581
11781
|
}),
|
|
11582
11782
|
isEDCPublic: booleanType(),
|
|
11583
11783
|
}));
|
|
11584
|
-
const sandsSchema = objectType({
|
|
11784
|
+
const sandsSchema$1 = objectType({
|
|
11585
11785
|
occupation: objectType({
|
|
11586
11786
|
freeText: stringType().nullable(),
|
|
11587
11787
|
ontologyId: stringType(),
|
|
@@ -11609,7 +11809,7 @@ const connectsSchema = objectType({
|
|
|
11609
11809
|
}),
|
|
11610
11810
|
canSeeApplicantsRates: booleanType(),
|
|
11611
11811
|
});
|
|
11612
|
-
const authSchema = objectType({
|
|
11812
|
+
const authSchema$1 = objectType({
|
|
11613
11813
|
canFlagOpening: booleanType(),
|
|
11614
11814
|
canPostJob: booleanType(),
|
|
11615
11815
|
domestic: objectType({
|
|
@@ -11631,14 +11831,14 @@ const applicationContextSchema = objectType({
|
|
|
11631
11831
|
const nuxtStateJobSchema = objectType({
|
|
11632
11832
|
cache: booleanType(),
|
|
11633
11833
|
job: jobSchema,
|
|
11634
|
-
buyer: buyerSchema,
|
|
11635
|
-
currentUserInfo: currentUserInfoSchema,
|
|
11834
|
+
buyer: buyerSchema$1,
|
|
11835
|
+
currentUserInfo: currentUserInfoSchema$1,
|
|
11636
11836
|
isVisitor: booleanType(),
|
|
11637
11837
|
openJobs: arrayType(anyType()),
|
|
11638
11838
|
workHistory: workHistorySchema,
|
|
11639
11839
|
similarJobs: arrayType(anyType()),
|
|
11640
|
-
sands: sandsSchema,
|
|
11641
|
-
auth: authSchema,
|
|
11840
|
+
sands: sandsSchema$1,
|
|
11841
|
+
auth: authSchema$1,
|
|
11642
11842
|
applicants: objectType({
|
|
11643
11843
|
applicantsBidsStats: anyType().nullable(),
|
|
11644
11844
|
}),
|
|
@@ -11652,119 +11852,683 @@ const nuxtStateJobSchema = objectType({
|
|
|
11652
11852
|
url: stringType(),
|
|
11653
11853
|
}),
|
|
11654
11854
|
teamUid: anyType().nullable(),
|
|
11655
|
-
proposalPermissions: objectType({
|
|
11656
|
-
freelancerAllowed: booleanType(),
|
|
11657
|
-
clientAllowed: booleanType(),
|
|
11658
|
-
}),
|
|
11855
|
+
proposalPermissions: objectType({
|
|
11856
|
+
freelancerAllowed: booleanType(),
|
|
11857
|
+
clientAllowed: booleanType(),
|
|
11858
|
+
}),
|
|
11859
|
+
jobSlug: anyType().nullable(),
|
|
11860
|
+
prefillWith: anyType().nullable(),
|
|
11861
|
+
isGroupOpportunity: booleanType(),
|
|
11862
|
+
workLocation: anyType().nullable(),
|
|
11863
|
+
isPhoneVerified: booleanType(),
|
|
11864
|
+
errorResponse: anyType().nullable(),
|
|
11865
|
+
isApplyBlocked: booleanType(),
|
|
11866
|
+
hasAiInterview: booleanType(),
|
|
11867
|
+
talentFeePromotion: booleanType().nullish(),
|
|
11868
|
+
});
|
|
11869
|
+
|
|
11870
|
+
// Filter Option Schema
|
|
11871
|
+
const filterOptionItemSchema = z.object({
|
|
11872
|
+
key: z.string(),
|
|
11873
|
+
count: z.number(),
|
|
11874
|
+
});
|
|
11875
|
+
// Filter Options Response Schema
|
|
11876
|
+
const filterOptionsResponseSchema = z.object({
|
|
11877
|
+
locations: z.array(filterOptionItemSchema),
|
|
11878
|
+
englishLevels: z.array(filterOptionItemSchema),
|
|
11879
|
+
talentTypes: z.array(filterOptionItemSchema),
|
|
11880
|
+
experienceLevels: z.array(filterOptionItemSchema),
|
|
11881
|
+
});
|
|
11882
|
+
|
|
11883
|
+
const clientSchema = objectType({
|
|
11884
|
+
location: objectType({
|
|
11885
|
+
country: stringType().nullable(),
|
|
11886
|
+
}),
|
|
11887
|
+
isPaymentVerified: booleanType(),
|
|
11888
|
+
totalSpent: stringType().nullable(),
|
|
11889
|
+
totalReviews: numberType(),
|
|
11890
|
+
totalFeedback: numberType(),
|
|
11891
|
+
hasFinancialPrivacy: booleanType(),
|
|
11892
|
+
});
|
|
11893
|
+
const attrsSchema$1 = objectType({
|
|
11894
|
+
uid: stringType(),
|
|
11895
|
+
parentSkillUid: stringType().nullable(),
|
|
11896
|
+
prefLabel: stringType(),
|
|
11897
|
+
prettyName: stringType(),
|
|
11898
|
+
freeText: anyType().nullable(),
|
|
11899
|
+
highlighted: booleanType(),
|
|
11900
|
+
});
|
|
11901
|
+
const amountSchema = objectType({
|
|
11902
|
+
amount: numberType(),
|
|
11903
|
+
});
|
|
11904
|
+
const hourlyBudgetSchema$1 = objectType({
|
|
11905
|
+
min: numberType(),
|
|
11906
|
+
max: numberType(),
|
|
11907
|
+
});
|
|
11908
|
+
const feedJobSchemaV2 = objectType({
|
|
11909
|
+
uid: stringType(),
|
|
11910
|
+
ciphertext: stringType(),
|
|
11911
|
+
title: stringType(),
|
|
11912
|
+
description: stringType(),
|
|
11913
|
+
createdOn: stringType(),
|
|
11914
|
+
publishedOn: stringType(),
|
|
11915
|
+
renewedOn: stringType().nullable(),
|
|
11916
|
+
type: numberType(),
|
|
11917
|
+
durationLabel: stringType().nullable(), // <--- FIX IS HERE
|
|
11918
|
+
engagement: stringType().nullable(),
|
|
11919
|
+
amount: amountSchema,
|
|
11920
|
+
connectPrice: numberType().nullable(),
|
|
11921
|
+
client: clientSchema,
|
|
11922
|
+
clientRelation: anyType().nullable(),
|
|
11923
|
+
freelancersToHire: numberType(),
|
|
11924
|
+
relevanceEncoded: stringType(),
|
|
11925
|
+
enterpriseJob: booleanType(),
|
|
11926
|
+
tierText: stringType(),
|
|
11927
|
+
isApplied: booleanType(),
|
|
11928
|
+
proposalsTier: stringType().nullable(),
|
|
11929
|
+
premium: booleanType(),
|
|
11930
|
+
attrs: arrayType(attrsSchema$1),
|
|
11931
|
+
hourlyBudget: hourlyBudgetSchema$1,
|
|
11932
|
+
weeklyBudget: amountSchema,
|
|
11933
|
+
isSTSVectorSearchResult: booleanType(),
|
|
11934
|
+
});
|
|
11935
|
+
const pagingSchema = objectType({
|
|
11936
|
+
total: numberType(),
|
|
11937
|
+
offset: numberType(),
|
|
11938
|
+
count: numberType(),
|
|
11939
|
+
});
|
|
11940
|
+
const jobsSearchSchema = objectType({
|
|
11941
|
+
status: objectType({
|
|
11942
|
+
loading: booleanType(),
|
|
11943
|
+
loaded: booleanType(),
|
|
11944
|
+
failed: booleanType(),
|
|
11945
|
+
}),
|
|
11946
|
+
jobs: arrayType(feedJobSchemaV2),
|
|
11947
|
+
paging: pagingSchema,
|
|
11948
|
+
abortController: anyType().nullable(),
|
|
11949
|
+
currentPage: numberType(),
|
|
11950
|
+
jobsPerPage: numberType(),
|
|
11951
|
+
searchQueryCache: recordType(stringType()),
|
|
11952
|
+
});
|
|
11953
|
+
const nuxtStateJobsSearchSchema = objectType({
|
|
11954
|
+
state: objectType({
|
|
11955
|
+
jobsSearch: jobsSearchSchema,
|
|
11956
|
+
}),
|
|
11957
|
+
});
|
|
11958
|
+
// import { any, array, boolean, number, object, record, string, z } from 'zod';
|
|
11959
|
+
// import { Region } from '../shared';
|
|
11960
|
+
// // This schema is now more lenient to handle null values for visitor data.
|
|
11961
|
+
// const clientSchema = object({
|
|
11962
|
+
// location: object({
|
|
11963
|
+
// country: string().nullable(),
|
|
11964
|
+
// }),
|
|
11965
|
+
// isPaymentVerified: boolean(),
|
|
11966
|
+
// totalSpent: string().nullable(),
|
|
11967
|
+
// totalReviews: number().nullable(), // Changed from number()
|
|
11968
|
+
// totalFeedback: number().nullable(), // Changed from number()
|
|
11969
|
+
// hasFinancialPrivacy: boolean().nullable(), // Changed from boolean()
|
|
11970
|
+
// });
|
|
11971
|
+
// const attrsSchema = object({
|
|
11972
|
+
// uid: string(),
|
|
11973
|
+
// parentSkillUid: string().nullable(),
|
|
11974
|
+
// prefLabel: string(),
|
|
11975
|
+
// prettyName: string(),
|
|
11976
|
+
// freeText: any().nullable(),
|
|
11977
|
+
// highlighted: boolean(),
|
|
11978
|
+
// });
|
|
11979
|
+
// const amountSchema = object({
|
|
11980
|
+
// amount: number(),
|
|
11981
|
+
// });
|
|
11982
|
+
// const hourlyBudgetSchema = object({
|
|
11983
|
+
// min: number(),
|
|
11984
|
+
// max: number(),
|
|
11985
|
+
// });
|
|
11986
|
+
// export const feedJobSchemaV2 = object({
|
|
11987
|
+
// uid: string(),
|
|
11988
|
+
// ciphertext: string(),
|
|
11989
|
+
// title: string(),
|
|
11990
|
+
// description: string(),
|
|
11991
|
+
// createdOn: string(),
|
|
11992
|
+
// publishedOn: string(),
|
|
11993
|
+
// renewedOn: string().nullable(),
|
|
11994
|
+
// type: number(),
|
|
11995
|
+
// durationLabel: string().nullable(),
|
|
11996
|
+
// engagement: string().nullable(),
|
|
11997
|
+
// amount: amountSchema,
|
|
11998
|
+
// connectPrice: number().nullable(),
|
|
11999
|
+
// client: clientSchema, // Uses the updated clientSchema above
|
|
12000
|
+
// clientRelation: any().nullable(),
|
|
12001
|
+
// freelancersToHire: number().nullable(), // Changed from number()
|
|
12002
|
+
// relevanceEncoded: string(),
|
|
12003
|
+
// enterpriseJob: boolean().nullable(), // Changed from boolean()
|
|
12004
|
+
// tierText: z.string().nullable(),
|
|
12005
|
+
// isApplied: boolean(),
|
|
12006
|
+
// proposalsTier: string().nullable(),
|
|
12007
|
+
// premium: boolean(),
|
|
12008
|
+
// attrs: array(attrsSchema),
|
|
12009
|
+
// hourlyBudget: hourlyBudgetSchema,
|
|
12010
|
+
// weeklyBudget: amountSchema,
|
|
12011
|
+
// isSTSVectorSearchResult: boolean().optional(), // Changed from boolean()
|
|
12012
|
+
// });
|
|
12013
|
+
// const pagingSchema = object({
|
|
12014
|
+
// total: number(),
|
|
12015
|
+
// offset: number(),
|
|
12016
|
+
// count: number(),
|
|
12017
|
+
// });
|
|
12018
|
+
// const jobsSearchSchema = object({
|
|
12019
|
+
// status: object({
|
|
12020
|
+
// loading: boolean(),
|
|
12021
|
+
// loaded: boolean(),
|
|
12022
|
+
// failed: boolean(),
|
|
12023
|
+
// }),
|
|
12024
|
+
// jobs: array(feedJobSchemaV2),
|
|
12025
|
+
// paging: pagingSchema,
|
|
12026
|
+
// abortController: any().nullable(),
|
|
12027
|
+
// currentPage: number(),
|
|
12028
|
+
// jobsPerPage: number(),
|
|
12029
|
+
// searchQueryCache: record(string()),
|
|
12030
|
+
// });
|
|
12031
|
+
// export const nuxtStateJobsSearchSchema = object({
|
|
12032
|
+
// state: object({
|
|
12033
|
+
// jobsSearch: jobsSearchSchema,
|
|
12034
|
+
// }),
|
|
12035
|
+
// });
|
|
12036
|
+
// export interface NuxtStateJobsSearch
|
|
12037
|
+
// extends z.infer<typeof nuxtStateJobsSearchSchema> {}
|
|
12038
|
+
// export interface FeedJobV2 extends z.infer<typeof feedJobSchemaV2> {
|
|
12039
|
+
// jobUrl: string;
|
|
12040
|
+
// region: Region;
|
|
12041
|
+
// }
|
|
12042
|
+
|
|
12043
|
+
// Field mapping from feed-job to job-details for the missing fields that were added
|
|
12044
|
+
const FEED_JOB_TO_JOB_DETAILS_FIELD_MAPPING = {
|
|
12045
|
+
// Fields that were missing in job-details and added from feed-job
|
|
12046
|
+
publishedOn: 'publishedOn',
|
|
12047
|
+
renewedOn: 'renewedOn',
|
|
12048
|
+
engagement: 'engagement',
|
|
12049
|
+
freelancersToHire: 'freelancersToHire',
|
|
12050
|
+
connectPrice: 'connectPrice',
|
|
12051
|
+
clientRelation: 'clientRelation',
|
|
12052
|
+
relevanceEncoded: 'relevanceEncoded',
|
|
12053
|
+
enterpriseJob: 'enterpriseJob',
|
|
12054
|
+
tierText: 'tierText',
|
|
12055
|
+
isApplied: 'isApplied',
|
|
12056
|
+
proposalsTier: 'proposalsTier',
|
|
12057
|
+
premium: 'premium',
|
|
12058
|
+
attrs: 'attrs',
|
|
12059
|
+
hourlyBudget: 'hourlyBudget',
|
|
12060
|
+
weeklyBudget: 'weeklyBudget',
|
|
12061
|
+
isSTSVectorSearchResult: 'isSTSVectorSearchResult',
|
|
12062
|
+
};
|
|
12063
|
+
// Segmentation data schema
|
|
12064
|
+
const segmentationDataSchema = objectType({
|
|
12065
|
+
customValue: stringType().nullable(),
|
|
12066
|
+
label: stringType(),
|
|
12067
|
+
name: stringType(),
|
|
12068
|
+
sortOrder: numberType(),
|
|
12069
|
+
type: stringType(),
|
|
12070
|
+
value: stringType(),
|
|
12071
|
+
skill: anyType().nullable(),
|
|
12072
|
+
});
|
|
12073
|
+
// Client activity schema
|
|
12074
|
+
const clientActivitySchema = objectType({
|
|
12075
|
+
lastBuyerActivity: stringType().nullable(),
|
|
12076
|
+
totalApplicants: numberType().nullable(),
|
|
12077
|
+
totalHired: numberType().nullable(),
|
|
12078
|
+
totalInvitedToInterview: numberType().nullable(),
|
|
12079
|
+
unansweredInvites: numberType().nullable(),
|
|
12080
|
+
invitationsSent: numberType().nullable(),
|
|
12081
|
+
numberOfPositionsToHire: numberType(),
|
|
12082
|
+
});
|
|
12083
|
+
// Annotations schema
|
|
12084
|
+
const annotationsSchema = objectType({
|
|
12085
|
+
tags: arrayType(stringType()),
|
|
12086
|
+
});
|
|
12087
|
+
// Budget schema
|
|
12088
|
+
const budgetSchema = objectType({
|
|
12089
|
+
amount: numberType(),
|
|
12090
|
+
currencyCode: stringType(),
|
|
12091
|
+
});
|
|
12092
|
+
// Engagement duration schema
|
|
12093
|
+
const engagementDurationSchema = objectType({
|
|
12094
|
+
label: stringType(),
|
|
12095
|
+
weeks: numberType(),
|
|
12096
|
+
});
|
|
12097
|
+
// Extended budget info schema
|
|
12098
|
+
const extendedBudgetInfoSchema = objectType({
|
|
12099
|
+
hourlyBudgetMin: numberType().nullable(),
|
|
12100
|
+
hourlyBudgetMax: numberType().nullable(),
|
|
12101
|
+
hourlyBudgetType: stringType().nullable(),
|
|
12102
|
+
});
|
|
12103
|
+
// Qualifications schema
|
|
12104
|
+
const qualificationsSchema = objectType({
|
|
12105
|
+
countries: anyType().nullable(),
|
|
12106
|
+
earnings: anyType().nullable(),
|
|
12107
|
+
groupRecno: anyType().nullable(),
|
|
12108
|
+
languages: anyType().nullable(),
|
|
12109
|
+
localDescription: anyType().nullable(),
|
|
12110
|
+
localFlexibilityDescription: anyType().nullable(),
|
|
12111
|
+
localMarket: booleanType(),
|
|
12112
|
+
minJobSuccessScore: numberType(),
|
|
12113
|
+
minOdeskHours: numberType(),
|
|
12114
|
+
onSiteType: anyType().nullable(),
|
|
12115
|
+
prefEnglishSkill: numberType(),
|
|
12116
|
+
regions: anyType().nullable(),
|
|
12117
|
+
risingTalent: booleanType(),
|
|
12118
|
+
shouldHavePortfolio: booleanType(),
|
|
12119
|
+
states: anyType().nullable(),
|
|
12120
|
+
tests: anyType().nullable(),
|
|
12121
|
+
timezones: anyType().nullable(),
|
|
12122
|
+
type: numberType(),
|
|
12123
|
+
locationCheckRequired: booleanType(),
|
|
12124
|
+
group: anyType().nullable(),
|
|
12125
|
+
location: anyType().nullable(),
|
|
12126
|
+
locations: anyType().nullable(),
|
|
12127
|
+
minHoursWeek: numberType().nullable(),
|
|
12128
|
+
});
|
|
12129
|
+
// Attrs schema (from feed-job.ts)
|
|
12130
|
+
const attrsSchema = objectType({
|
|
12131
|
+
uid: stringType(),
|
|
12132
|
+
parentSkillUid: stringType().nullable(),
|
|
12133
|
+
prefLabel: stringType(),
|
|
12134
|
+
prettyName: stringType(),
|
|
12135
|
+
freeText: anyType().nullable(),
|
|
12136
|
+
highlighted: booleanType(),
|
|
12137
|
+
});
|
|
12138
|
+
// Hourly budget schema (from feed-job.ts)
|
|
12139
|
+
const hourlyBudgetSchema = objectType({
|
|
12140
|
+
min: numberType(),
|
|
12141
|
+
max: numberType(),
|
|
12142
|
+
});
|
|
12143
|
+
// Job details schema
|
|
12144
|
+
const jobDetailsSchema = objectType({
|
|
12145
|
+
status: numberType(),
|
|
12146
|
+
category: objectType({
|
|
12147
|
+
name: stringType(),
|
|
12148
|
+
urlSlug: stringType(),
|
|
12149
|
+
}),
|
|
12150
|
+
categoryGroup: objectType({
|
|
12151
|
+
name: stringType(),
|
|
12152
|
+
urlSlug: stringType(),
|
|
12153
|
+
}),
|
|
12154
|
+
budget: budgetSchema,
|
|
12155
|
+
postedOn: stringType(),
|
|
12156
|
+
publishTime: stringType(),
|
|
12157
|
+
publishedOn: stringType().nullable().optional(),
|
|
12158
|
+
wasRenewed: booleanType(),
|
|
12159
|
+
renewedOn: stringType().nullable().optional(),
|
|
12160
|
+
startDate: stringType().nullable(),
|
|
12161
|
+
deliveryDate: stringType().nullable(),
|
|
12162
|
+
workload: stringType().nullable(),
|
|
12163
|
+
engagement: stringType().nullable().optional(),
|
|
12164
|
+
engagementDuration: engagementDurationSchema,
|
|
12165
|
+
extendedBudgetInfo: extendedBudgetInfoSchema,
|
|
12166
|
+
contractorTier: numberType(),
|
|
12167
|
+
description: stringType(),
|
|
12168
|
+
segmentationData: arrayType(segmentationDataSchema),
|
|
12169
|
+
clientActivity: clientActivitySchema,
|
|
12170
|
+
annotations: annotationsSchema,
|
|
12171
|
+
uid: stringType(),
|
|
12172
|
+
title: stringType(),
|
|
12173
|
+
type: numberType(),
|
|
12174
|
+
ciphertext: stringType(),
|
|
12175
|
+
access: numberType(),
|
|
12176
|
+
createdOn: stringType(),
|
|
12177
|
+
hideBudget: booleanType(),
|
|
12178
|
+
notSureProjectDuration: booleanType(),
|
|
12179
|
+
notSureFreelancersToHire: booleanType(),
|
|
12180
|
+
notSureExperienceLevel: booleanType(),
|
|
12181
|
+
numberOfPositionsToHire: numberType(),
|
|
12182
|
+
freelancersToHire: numberType().nullable().optional(),
|
|
12183
|
+
isContractToHire: booleanType(),
|
|
12184
|
+
deliverables: stringType().nullable(),
|
|
12185
|
+
deadline: stringType().nullable(),
|
|
12186
|
+
tools: arrayType(anyType()),
|
|
12187
|
+
weeklyRetainerBudget: anyType().nullable(),
|
|
12188
|
+
qualifications: qualificationsSchema,
|
|
12189
|
+
durationIdV3: numberType(),
|
|
12190
|
+
durationLabel: stringType(),
|
|
12191
|
+
connectPrice: numberType().nullable().optional(),
|
|
12192
|
+
clientRelation: anyType().nullable().optional(),
|
|
12193
|
+
relevanceEncoded: stringType().nullable().optional(),
|
|
12194
|
+
enterpriseJob: booleanType().nullable().optional(),
|
|
12195
|
+
tierText: stringType().nullable().optional(),
|
|
12196
|
+
isApplied: booleanType().nullable().optional(),
|
|
12197
|
+
proposalsTier: stringType().nullable().optional(),
|
|
12198
|
+
premium: booleanType().nullable().optional(),
|
|
12199
|
+
attrs: arrayType(attrsSchema).nullable().optional(),
|
|
12200
|
+
hourlyBudget: hourlyBudgetSchema.nullable().optional(),
|
|
12201
|
+
weeklyBudget: objectType({
|
|
12202
|
+
amount: numberType(),
|
|
12203
|
+
})
|
|
12204
|
+
.nullable()
|
|
12205
|
+
.optional(),
|
|
12206
|
+
isSTSVectorSearchResult: booleanType().nullable().optional(),
|
|
12207
|
+
});
|
|
12208
|
+
// Buyer schema
|
|
12209
|
+
const buyerSchema = objectType({
|
|
12210
|
+
isEnterprise: booleanType(),
|
|
12211
|
+
isPaymentMethodVerified: booleanType(),
|
|
12212
|
+
stats: objectType({
|
|
12213
|
+
totalAssignments: numberType().nullable(),
|
|
12214
|
+
activeAssignmentsCount: numberType().nullable(),
|
|
12215
|
+
hoursCount: numberType(),
|
|
12216
|
+
feedbackCount: numberType(),
|
|
12217
|
+
score: numberType().nullable(),
|
|
12218
|
+
totalJobsWithHires: numberType(),
|
|
12219
|
+
totalCharges: objectType({
|
|
12220
|
+
amount: numberType(),
|
|
12221
|
+
}).nullable(),
|
|
12222
|
+
}),
|
|
12223
|
+
location: objectType({
|
|
12224
|
+
offsetFromUtcMillis: numberType(),
|
|
12225
|
+
countryTimezone: stringType(),
|
|
12226
|
+
city: stringType().nullable(),
|
|
12227
|
+
country: stringType(),
|
|
12228
|
+
}),
|
|
12229
|
+
company: objectType({
|
|
12230
|
+
isEDCReplicated: anyType().nullable(),
|
|
12231
|
+
contractDate: stringType().nullable(),
|
|
12232
|
+
profile: objectType({
|
|
12233
|
+
industry: stringType().nullable(),
|
|
12234
|
+
size: anyType().nullable(), // Can be string or number
|
|
12235
|
+
}),
|
|
12236
|
+
}),
|
|
12237
|
+
jobs: objectType({
|
|
12238
|
+
postedCount: numberType().nullable(),
|
|
12239
|
+
openCount: numberType(),
|
|
12240
|
+
}),
|
|
12241
|
+
avgHourlyJobsRate: anyType().nullable(),
|
|
12242
|
+
});
|
|
12243
|
+
// Current user info schema
|
|
12244
|
+
const currentUserInfoSchema = objectType({
|
|
12245
|
+
freelancerInfo: objectType({
|
|
12246
|
+
qualificationsMatches: anyType().nullable(),
|
|
12247
|
+
}),
|
|
12248
|
+
});
|
|
12249
|
+
// Open jobs schema
|
|
12250
|
+
const openJobSchema = objectType({
|
|
12251
|
+
id: stringType(),
|
|
12252
|
+
uid: stringType(),
|
|
12253
|
+
isPtcPrivate: booleanType(),
|
|
12254
|
+
ciphertext: stringType(),
|
|
12255
|
+
title: stringType(),
|
|
12256
|
+
type: numberType(),
|
|
12257
|
+
access: numberType().nullable(),
|
|
12258
|
+
});
|
|
12259
|
+
// Similar jobs skill schema
|
|
12260
|
+
const similarJobSkillSchema = objectType({
|
|
12261
|
+
id: stringType().nullable(),
|
|
12262
|
+
prefLabel: stringType(),
|
|
12263
|
+
});
|
|
12264
|
+
// Similar jobs schema
|
|
12265
|
+
const similarJobSchema = objectType({
|
|
12266
|
+
id: stringType().nullable(),
|
|
12267
|
+
ciphertext: stringType(),
|
|
12268
|
+
title: stringType(),
|
|
12269
|
+
description: stringType(),
|
|
12270
|
+
engagement: stringType().nullable(),
|
|
12271
|
+
durationLabel: stringType(),
|
|
12272
|
+
contractorTier: numberType(),
|
|
12273
|
+
type: numberType(),
|
|
12274
|
+
createdOn: stringType(),
|
|
12275
|
+
renewedOn: stringType().nullable(),
|
|
12276
|
+
amount: objectType({
|
|
12277
|
+
amount: numberType(),
|
|
12278
|
+
}),
|
|
12279
|
+
maxAmount: anyType().nullable(),
|
|
12280
|
+
ontologySkills: arrayType(similarJobSkillSchema),
|
|
12281
|
+
hourlyBudgetMin: numberType(),
|
|
12282
|
+
hourlyBudgetMax: numberType(),
|
|
12283
|
+
});
|
|
12284
|
+
// SANDS (Skills and Services) schema
|
|
12285
|
+
const sandsSkillSchema = objectType({
|
|
12286
|
+
uid: stringType().nullable(),
|
|
12287
|
+
name: stringType(),
|
|
12288
|
+
isFreeText: booleanType(),
|
|
12289
|
+
relevance: stringType(),
|
|
12290
|
+
});
|
|
12291
|
+
const sandsSchema = objectType({
|
|
12292
|
+
occupation: objectType({
|
|
12293
|
+
freeText: stringType().nullable(),
|
|
12294
|
+
ontologyId: stringType(),
|
|
12295
|
+
prefLabel: stringType(),
|
|
12296
|
+
id: stringType(),
|
|
12297
|
+
uid: stringType(),
|
|
12298
|
+
}),
|
|
12299
|
+
ontologySkills: arrayType(anyType()),
|
|
12300
|
+
additionalSkills: arrayType(sandsSkillSchema),
|
|
12301
|
+
});
|
|
12302
|
+
// Auth schema
|
|
12303
|
+
const authSchema = objectType({
|
|
12304
|
+
isVisitor: booleanType(),
|
|
12305
|
+
isAgency: booleanType(),
|
|
12306
|
+
isFreelancer: booleanType(),
|
|
12307
|
+
isClient: booleanType(),
|
|
12308
|
+
isUpworkPlusBuyer: booleanType(),
|
|
12309
|
+
domestic: objectType({
|
|
12310
|
+
country: anyType().nullable(),
|
|
12311
|
+
isInfographicTooltipAvailable: booleanType(),
|
|
12312
|
+
}),
|
|
12313
|
+
});
|
|
12314
|
+
// SEO schema
|
|
12315
|
+
const seoSchema = objectType({
|
|
12316
|
+
title: stringType(),
|
|
12317
|
+
description: stringType(),
|
|
12318
|
+
url: stringType(),
|
|
12319
|
+
});
|
|
12320
|
+
// Main job details state schema
|
|
12321
|
+
const jobDetailsStateSchema = objectType({
|
|
12322
|
+
cache: booleanType(),
|
|
12323
|
+
job: jobDetailsSchema,
|
|
12324
|
+
buyer: buyerSchema,
|
|
12325
|
+
currentUserInfo: currentUserInfoSchema,
|
|
12326
|
+
openJobs: arrayType(openJobSchema),
|
|
12327
|
+
workHistory: arrayType(anyType()),
|
|
12328
|
+
similarJobs: arrayType(similarJobSchema),
|
|
12329
|
+
sands: sandsSchema,
|
|
12330
|
+
auth: authSchema,
|
|
12331
|
+
applicants: anyType().nullable(),
|
|
12332
|
+
connects: anyType().nullable(),
|
|
12333
|
+
enterpriseJobAdditionalInfo: recordType(anyType()),
|
|
12334
|
+
applicationContext: anyType().nullable(),
|
|
12335
|
+
profileMatchServiceUid: stringType().nullable(),
|
|
12336
|
+
seo: seoSchema,
|
|
12337
|
+
teamUid: anyType().nullable(),
|
|
12338
|
+
proposalPermissions: anyType().nullable(),
|
|
11659
12339
|
jobSlug: anyType().nullable(),
|
|
11660
12340
|
prefillWith: anyType().nullable(),
|
|
11661
12341
|
isGroupOpportunity: booleanType(),
|
|
11662
|
-
workLocation: anyType().nullable(),
|
|
11663
12342
|
isPhoneVerified: booleanType(),
|
|
11664
12343
|
errorResponse: anyType().nullable(),
|
|
11665
12344
|
isApplyBlocked: booleanType(),
|
|
11666
12345
|
hasAiInterview: booleanType(),
|
|
11667
|
-
talentFeePromotion:
|
|
11668
|
-
|
|
11669
|
-
|
|
11670
|
-
|
|
11671
|
-
|
|
11672
|
-
|
|
11673
|
-
const
|
|
11674
|
-
|
|
11675
|
-
|
|
11676
|
-
|
|
11677
|
-
|
|
11678
|
-
|
|
11679
|
-
|
|
11680
|
-
|
|
11681
|
-
|
|
11682
|
-
|
|
11683
|
-
|
|
11684
|
-
|
|
11685
|
-
|
|
11686
|
-
|
|
11687
|
-
|
|
11688
|
-
|
|
11689
|
-
|
|
11690
|
-
|
|
11691
|
-
|
|
11692
|
-
|
|
11693
|
-
|
|
11694
|
-
|
|
11695
|
-
|
|
11696
|
-
|
|
11697
|
-
|
|
11698
|
-
|
|
11699
|
-
|
|
11700
|
-
|
|
11701
|
-
|
|
11702
|
-
|
|
11703
|
-
|
|
11704
|
-
|
|
11705
|
-
|
|
11706
|
-
|
|
11707
|
-
|
|
11708
|
-
|
|
11709
|
-
|
|
11710
|
-
|
|
11711
|
-
|
|
11712
|
-
|
|
11713
|
-
|
|
11714
|
-
|
|
11715
|
-
|
|
11716
|
-
|
|
11717
|
-
|
|
11718
|
-
|
|
11719
|
-
|
|
11720
|
-
|
|
11721
|
-
|
|
11722
|
-
|
|
11723
|
-
|
|
11724
|
-
|
|
11725
|
-
|
|
11726
|
-
|
|
11727
|
-
|
|
11728
|
-
|
|
11729
|
-
|
|
11730
|
-
|
|
11731
|
-
|
|
11732
|
-
|
|
11733
|
-
|
|
11734
|
-
|
|
11735
|
-
|
|
11736
|
-
|
|
11737
|
-
|
|
11738
|
-
|
|
11739
|
-
|
|
11740
|
-
|
|
11741
|
-
|
|
11742
|
-
|
|
11743
|
-
|
|
11744
|
-
|
|
11745
|
-
|
|
11746
|
-
|
|
11747
|
-
|
|
11748
|
-
|
|
11749
|
-
|
|
11750
|
-
|
|
11751
|
-
|
|
11752
|
-
|
|
11753
|
-
|
|
12346
|
+
talentFeePromotion: anyType().nullable(),
|
|
12347
|
+
aiInterviewRoomId: anyType().nullable(),
|
|
12348
|
+
aiInterviewLinkSent: booleanType(),
|
|
12349
|
+
aiInterviewStatus: anyType().nullable(),
|
|
12350
|
+
aiInterviewJoinLimitReached: booleanType(),
|
|
12351
|
+
});
|
|
12352
|
+
const nuxtStateJobDetailsSchema = objectType({
|
|
12353
|
+
layout: stringType(),
|
|
12354
|
+
data: arrayType(recordType(anyType())),
|
|
12355
|
+
fetch: recordType(anyType()),
|
|
12356
|
+
error: anyType().nullable(),
|
|
12357
|
+
state: objectType({
|
|
12358
|
+
job: objectType({
|
|
12359
|
+
errorResponse: anyType().nullable(),
|
|
12360
|
+
channel: anyType().nullable(),
|
|
12361
|
+
visitedJobs: arrayType(anyType()),
|
|
12362
|
+
}),
|
|
12363
|
+
qt: objectType({
|
|
12364
|
+
isNewVisitorNavV1Enabled: booleanType(),
|
|
12365
|
+
}),
|
|
12366
|
+
tracker: objectType({
|
|
12367
|
+
guids: recordType(anyType()),
|
|
12368
|
+
}),
|
|
12369
|
+
tracing: objectType({
|
|
12370
|
+
native: objectType({
|
|
12371
|
+
span: objectType({
|
|
12372
|
+
id: stringType(),
|
|
12373
|
+
parentId: stringType(),
|
|
12374
|
+
traceId: stringType(),
|
|
12375
|
+
isPopulated: booleanType(),
|
|
12376
|
+
geoIpHeader: stringType(),
|
|
12377
|
+
}),
|
|
12378
|
+
}),
|
|
12379
|
+
}),
|
|
12380
|
+
context: objectType({
|
|
12381
|
+
loaded: booleanType(),
|
|
12382
|
+
loading: booleanType(),
|
|
12383
|
+
error: anyType().nullable(),
|
|
12384
|
+
isLoggedIn: booleanType().nullable(),
|
|
12385
|
+
auth: booleanType(),
|
|
12386
|
+
}),
|
|
12387
|
+
orgs: objectType({
|
|
12388
|
+
current: objectType({
|
|
12389
|
+
id: stringType().nullable(),
|
|
12390
|
+
rid: stringType().nullable(),
|
|
12391
|
+
type: stringType().nullable(),
|
|
12392
|
+
legacyType: stringType().nullable(),
|
|
12393
|
+
enterpriseType: stringType().nullable(),
|
|
12394
|
+
title: stringType().nullable(),
|
|
12395
|
+
typeTitle: stringType().nullable(),
|
|
12396
|
+
photoUrl: stringType().nullable(),
|
|
12397
|
+
flag: objectType({
|
|
12398
|
+
client: booleanType().nullable(),
|
|
12399
|
+
vendor: booleanType().nullable(),
|
|
12400
|
+
agency: booleanType().nullable(),
|
|
12401
|
+
individual: booleanType().nullable(),
|
|
12402
|
+
}),
|
|
12403
|
+
portrait100: stringType().nullable(),
|
|
12404
|
+
}),
|
|
12405
|
+
orgs: arrayType(anyType()),
|
|
12406
|
+
loading: booleanType().nullable(),
|
|
12407
|
+
loaded: booleanType().nullable(),
|
|
12408
|
+
}),
|
|
12409
|
+
user: objectType({
|
|
12410
|
+
id: stringType().nullable(),
|
|
12411
|
+
rid: stringType().nullable(),
|
|
12412
|
+
nid: stringType().nullable(),
|
|
12413
|
+
loading: booleanType().nullable(),
|
|
12414
|
+
loaded: booleanType().nullable(),
|
|
12415
|
+
isSudo: booleanType().nullable(),
|
|
12416
|
+
}),
|
|
12417
|
+
visitor: objectType({
|
|
12418
|
+
id: stringType(),
|
|
12419
|
+
ip: stringType(),
|
|
12420
|
+
}),
|
|
12421
|
+
vpn: objectType({
|
|
12422
|
+
isVpn: booleanType(),
|
|
12423
|
+
loading: booleanType(),
|
|
12424
|
+
loaded: booleanType(),
|
|
12425
|
+
error: anyType().nullable(),
|
|
12426
|
+
}),
|
|
12427
|
+
organizations: objectType({
|
|
12428
|
+
items: arrayType(anyType()),
|
|
12429
|
+
}),
|
|
12430
|
+
currency: objectType({
|
|
12431
|
+
currencyRate: anyType().nullable(),
|
|
12432
|
+
currencyCode: stringType().nullable(),
|
|
12433
|
+
currencyPopupShow: booleanType().nullable(),
|
|
12434
|
+
currencyName: stringType().nullable(),
|
|
12435
|
+
currencySymbol: stringType().nullable(),
|
|
12436
|
+
}),
|
|
12437
|
+
bot: objectType({
|
|
12438
|
+
isBot: booleanType(),
|
|
12439
|
+
loaded: booleanType(),
|
|
12440
|
+
}),
|
|
12441
|
+
flags: objectType({
|
|
12442
|
+
qt: recordType(anyType()),
|
|
12443
|
+
qtAllocationType: recordType(anyType()),
|
|
12444
|
+
ff: recordType(booleanType()),
|
|
12445
|
+
computedName: recordType(anyType()),
|
|
12446
|
+
}),
|
|
12447
|
+
geo: objectType({
|
|
12448
|
+
countryCode: stringType(),
|
|
12449
|
+
promise: anyType().nullable(),
|
|
12450
|
+
}),
|
|
12451
|
+
i18n: objectType({
|
|
12452
|
+
routeParams: recordType(anyType()),
|
|
12453
|
+
}),
|
|
12454
|
+
umq: objectType({
|
|
12455
|
+
width: numberType().nullable(),
|
|
12456
|
+
mobile: booleanType(),
|
|
12457
|
+
desktop: booleanType(),
|
|
12458
|
+
tablet: booleanType(),
|
|
12459
|
+
}),
|
|
12460
|
+
tracking: objectType({
|
|
12461
|
+
location: stringType(),
|
|
12462
|
+
visitorApiKey: stringType().nullable(),
|
|
12463
|
+
loading: booleanType().nullable(),
|
|
12464
|
+
loaded: booleanType().nullable(),
|
|
12465
|
+
promise: anyType().nullable(),
|
|
12466
|
+
error: anyType().nullable(),
|
|
12467
|
+
suit2Enabled: booleanType(),
|
|
12468
|
+
context: objectType({
|
|
12469
|
+
visitor_id: stringType().nullable(),
|
|
12470
|
+
user_uid: stringType().nullable(),
|
|
12471
|
+
user_nid: stringType().nullable(),
|
|
12472
|
+
organization_uid: stringType().nullable(),
|
|
12473
|
+
organization_type_title: stringType().nullable(),
|
|
12474
|
+
user_is_sudo: booleanType().nullable(),
|
|
12475
|
+
is_logged_in: booleanType().nullable(),
|
|
12476
|
+
}),
|
|
12477
|
+
}),
|
|
12478
|
+
theme: objectType({
|
|
12479
|
+
isSystemThemeMode: booleanType().nullable(),
|
|
12480
|
+
}),
|
|
12481
|
+
getfeedback: objectType({
|
|
12482
|
+
disabled: booleanType(),
|
|
12483
|
+
event: anyType().nullable(),
|
|
12484
|
+
}),
|
|
12485
|
+
statsig: objectType({
|
|
12486
|
+
experiments: recordType(objectType({
|
|
12487
|
+
name: stringType(),
|
|
12488
|
+
params: recordType(anyType()),
|
|
12489
|
+
})),
|
|
12490
|
+
}),
|
|
12491
|
+
jobDetails: jobDetailsStateSchema,
|
|
12492
|
+
forter: objectType({
|
|
12493
|
+
core: booleanType(),
|
|
12494
|
+
token: stringType(),
|
|
12495
|
+
}).optional(),
|
|
12496
|
+
}),
|
|
12497
|
+
serverRendered: booleanType(),
|
|
12498
|
+
routePath: stringType(),
|
|
12499
|
+
config: objectType({
|
|
12500
|
+
designSystem: stringType(),
|
|
12501
|
+
_app: objectType({
|
|
12502
|
+
basePath: stringType(),
|
|
12503
|
+
assetsPath: stringType(),
|
|
12504
|
+
cdnURL: stringType(),
|
|
12505
|
+
}),
|
|
12506
|
+
}),
|
|
12507
|
+
isCacheable: booleanType(),
|
|
12508
|
+
__i18n: objectType({
|
|
12509
|
+
langs: recordType(anyType()),
|
|
12510
|
+
}),
|
|
12511
|
+
microAppUtilsOverrides: objectType({
|
|
12512
|
+
userNavOverrides: recordType(anyType()).optional(),
|
|
12513
|
+
userSkinnyNavSkinnyOverrides: recordType(anyType()).optional(),
|
|
12514
|
+
visitorNavSkinnyOverrides: recordType(anyType()).optional(),
|
|
12515
|
+
}),
|
|
11754
12516
|
});
|
|
11755
12517
|
|
|
11756
|
-
|
|
11757
|
-
|
|
11758
|
-
|
|
11759
|
-
|
|
11760
|
-
}
|
|
11761
|
-
|
|
11762
|
-
const
|
|
11763
|
-
|
|
11764
|
-
|
|
11765
|
-
|
|
11766
|
-
|
|
11767
|
-
}
|
|
12518
|
+
class JobIsPrivateException extends Error {
|
|
12519
|
+
code = 'JOB_IS_PRIVATE';
|
|
12520
|
+
constructor(url) {
|
|
12521
|
+
super(`Job is private: ${url}`);
|
|
12522
|
+
}
|
|
12523
|
+
}
|
|
12524
|
+
const jobIsPrivateException = (url) => new JobIsPrivateException(url);
|
|
12525
|
+
class FailedToParseNuxtJobException extends Error {
|
|
12526
|
+
code = 'FAILED_TO_PARSE_NUXT_JOB';
|
|
12527
|
+
constructor(url) {
|
|
12528
|
+
super(`Failed to parse Nuxt job: ${url}`);
|
|
12529
|
+
}
|
|
12530
|
+
}
|
|
12531
|
+
const failedToParseNuxtJobException = (message, url) => new FailedToParseNuxtJobException(`${message}: ${url}`);
|
|
11768
12532
|
|
|
11769
12533
|
const jobSkillsSchema = objectType({
|
|
11770
12534
|
name: stringType(),
|
|
@@ -11903,119 +12667,13 @@ const feedJobSchema = objectType({
|
|
|
11903
12667
|
region: regionSchema.nullable(),
|
|
11904
12668
|
});
|
|
11905
12669
|
|
|
11906
|
-
const bidderAccountProvider = z.enum([
|
|
11907
|
-
"user-provided",
|
|
11908
|
-
"lancer-provided",
|
|
11909
|
-
]);
|
|
11910
|
-
const bidderAccountAgencySchema = z.object({
|
|
11911
|
-
name: z.string(),
|
|
11912
|
-
logoUrl: z.string().nullable(),
|
|
11913
|
-
contractors: z.array(z.string()),
|
|
11914
|
-
organizationId: z.string(),
|
|
11915
|
-
});
|
|
11916
|
-
const bidderAccountSchema = z.object({
|
|
11917
|
-
id: z.string(),
|
|
11918
|
-
provider: bidderAccountProvider,
|
|
11919
|
-
email: z.string().email(),
|
|
11920
|
-
password: z.string(),
|
|
11921
|
-
securityQuestionAnswer: z.string().nullable(),
|
|
11922
|
-
assignedOrganizations: z.array(z.string()),
|
|
11923
|
-
googleOauthTokens: z.any().nullable(),
|
|
11924
|
-
lastUsed: z.number().nullable(),
|
|
11925
|
-
multiLoginProfileId: z.string().nullable(),
|
|
11926
|
-
proxyId: z.string().nullable(),
|
|
11927
|
-
profilePhotoUrl: z.string().nullable(),
|
|
11928
|
-
name: z.string().nullable(),
|
|
11929
|
-
agencies: z.array(bidderAccountAgencySchema).nullable(),
|
|
11930
|
-
instanceId: stringType().nullable(),
|
|
11931
|
-
createdAt: z.number(),
|
|
11932
|
-
updatedAt: z.number(),
|
|
11933
|
-
region: regionEnum,
|
|
11934
|
-
isProtected: z.boolean().optional(),
|
|
11935
|
-
});
|
|
11936
|
-
const createBidderAccountSchema = bidderAccountSchema
|
|
11937
|
-
.pick({
|
|
11938
|
-
email: true,
|
|
11939
|
-
password: true,
|
|
11940
|
-
provider: true,
|
|
11941
|
-
securityQuestionAnswer: true,
|
|
11942
|
-
profilePhotoUrl: true,
|
|
11943
|
-
name: true,
|
|
11944
|
-
agencies: true,
|
|
11945
|
-
assignedOrganizations: true,
|
|
11946
|
-
region: true,
|
|
11947
|
-
})
|
|
11948
|
-
.extend({
|
|
11949
|
-
proxyCountry: proxyCountryEnum.nullable(),
|
|
11950
|
-
});
|
|
11951
|
-
const updateBidderAccountSchema = bidderAccountSchema
|
|
11952
|
-
.omit({
|
|
11953
|
-
id: true,
|
|
11954
|
-
})
|
|
11955
|
-
.partial();
|
|
11956
|
-
const verifyBidderAccountCredentialsSchema = z.object({
|
|
11957
|
-
email: z.string().email(),
|
|
11958
|
-
password: z.string(),
|
|
11959
|
-
securityQuestionAnswer: z.string(),
|
|
11960
|
-
multiloginProfileId: z.string(),
|
|
11961
|
-
proxy: proxySchema,
|
|
11962
|
-
});
|
|
11963
|
-
const verifyBidderAccountCredentialsResponseSchema = z.object({
|
|
11964
|
-
accountName: z.string().nullable(),
|
|
11965
|
-
accountPhotoUrl: z.string().nullable(),
|
|
11966
|
-
agencies: z.array(bidderAccountAgencySchema).nullable(),
|
|
11967
|
-
});
|
|
11968
|
-
const acceptUpworkInvitationSchema = z.object({
|
|
11969
|
-
code: z.string(),
|
|
11970
|
-
});
|
|
11971
|
-
const acceptUpworkInvitationResponseSchema = z.object({
|
|
11972
|
-
agencyName: z.string(),
|
|
11973
|
-
photoUrl: z.string(),
|
|
11974
|
-
contractors: z.array(z.string()),
|
|
11975
|
-
});
|
|
11976
|
-
|
|
11977
|
-
class BidderAccountAlreadyConnectedException extends Error {
|
|
11978
|
-
code = 'BIDDER_ACCOUNT_ALREADY_CONNECTED';
|
|
11979
|
-
email;
|
|
11980
|
-
constructor(email) {
|
|
11981
|
-
super(`Bidder account ${email} is already connected to a scraper account`);
|
|
11982
|
-
this.email = email;
|
|
11983
|
-
}
|
|
11984
|
-
}
|
|
11985
|
-
const bidderAccountAlreadyConnectedException = (email) => new BidderAccountAlreadyConnectedException(email);
|
|
11986
|
-
|
|
11987
|
-
class InvalidGoogleOAuthTokenException extends Error {
|
|
11988
|
-
code = 'INVALID_GOOGLE_OAUTH_TOKEN';
|
|
11989
|
-
constructor(message) {
|
|
11990
|
-
super(message);
|
|
11991
|
-
}
|
|
11992
|
-
}
|
|
11993
|
-
const invalidGoogleOAuthTokenSchema = (message) => new InvalidGoogleOAuthTokenException(message);
|
|
11994
|
-
|
|
11995
|
-
class NoBidderAccountsAvailableException extends Error {
|
|
11996
|
-
code = 'NO_BIDDER_ACCOUNTS_AVAILABLE';
|
|
11997
|
-
constructor(message) {
|
|
11998
|
-
super(message);
|
|
11999
|
-
}
|
|
12000
|
-
}
|
|
12001
|
-
const noBidderAccountsAvailableException = (message) => {
|
|
12002
|
-
return new NoBidderAccountsAvailableException(message);
|
|
12003
|
-
};
|
|
12004
|
-
|
|
12005
|
-
class NoGoogleOAuthTokensFoundException extends Error {
|
|
12006
|
-
code = 'NO_GOOGLE_OAUTH_TOKENS_FOUND';
|
|
12007
|
-
constructor(message) {
|
|
12008
|
-
super(message);
|
|
12009
|
-
}
|
|
12010
|
-
}
|
|
12011
|
-
const noGoogleOAuthTokensFoundException = (message) => new NoGoogleOAuthTokensFoundException(message);
|
|
12012
|
-
|
|
12013
12670
|
const scraperAccountType = z.enum([
|
|
12014
|
-
|
|
12015
|
-
|
|
12016
|
-
|
|
12017
|
-
|
|
12018
|
-
|
|
12671
|
+
'feed',
|
|
12672
|
+
'job',
|
|
12673
|
+
'status',
|
|
12674
|
+
'activity',
|
|
12675
|
+
'profile',
|
|
12676
|
+
'unauthenticated',
|
|
12019
12677
|
]);
|
|
12020
12678
|
const scraperAccountSchema = z.object({
|
|
12021
12679
|
id: z.string(),
|
|
@@ -12032,16 +12690,13 @@ const scraperAccountSchema = z.object({
|
|
|
12032
12690
|
updatedAt: z.number(),
|
|
12033
12691
|
isProtected: z.boolean().optional(),
|
|
12034
12692
|
});
|
|
12035
|
-
const createScraperAccountSchema = scraperAccountSchema
|
|
12036
|
-
.pick({
|
|
12693
|
+
const createScraperAccountSchema = scraperAccountSchema.pick({
|
|
12037
12694
|
region: true,
|
|
12038
12695
|
email: true,
|
|
12039
12696
|
password: true,
|
|
12040
12697
|
securityQuestionAnswer: true,
|
|
12041
12698
|
isActive: true,
|
|
12042
|
-
|
|
12043
|
-
.extend({
|
|
12044
|
-
proxyCountry: proxyCountryEnum.nullable(),
|
|
12699
|
+
type: true,
|
|
12045
12700
|
});
|
|
12046
12701
|
const updateScraperAccountSchema = scraperAccountSchema
|
|
12047
12702
|
.omit({
|
|
@@ -12565,10 +13220,8 @@ const scrapeJobStartedEventMetadata = objectType({
|
|
|
12565
13220
|
accountEmail: stringType(),
|
|
12566
13221
|
});
|
|
12567
13222
|
const scrapeJobFailedEventMetadata = objectType({
|
|
12568
|
-
listing:
|
|
13223
|
+
listing: feedJobSchemaV2,
|
|
12569
13224
|
region: regionSchema,
|
|
12570
|
-
accountId: stringType(),
|
|
12571
|
-
accountEmail: stringType(),
|
|
12572
13225
|
error: stringType(),
|
|
12573
13226
|
});
|
|
12574
13227
|
const jobActivityScrapedEventMetadata = objectType({
|
|
@@ -13863,6 +14516,8 @@ exports.DropdownOptionNotPresentException = DropdownOptionNotPresentException;
|
|
|
13863
14516
|
exports.ElementNotClickableException = ElementNotClickableException;
|
|
13864
14517
|
exports.EvaluateElementException = EvaluateElementException;
|
|
13865
14518
|
exports.EvaluateFunctionException = EvaluateFunctionException;
|
|
14519
|
+
exports.FEED_JOB_TO_JOB_DETAILS_FIELD_MAPPING = FEED_JOB_TO_JOB_DETAILS_FIELD_MAPPING;
|
|
14520
|
+
exports.FailedToParseNuxtJobException = FailedToParseNuxtJobException;
|
|
13866
14521
|
exports.FeedScrapeException = FeedScrapeException;
|
|
13867
14522
|
exports.GetMultiloginBrowserException = GetMultiloginBrowserException;
|
|
13868
14523
|
exports.GoToUrlException = GoToUrlException;
|
|
@@ -13873,6 +14528,7 @@ exports.InvalidCredentialsException = InvalidCredentialsException;
|
|
|
13873
14528
|
exports.InvalidGoogleOAuthTokenException = InvalidGoogleOAuthTokenException;
|
|
13874
14529
|
exports.InvalidJobUrlException = InvalidJobUrlException;
|
|
13875
14530
|
exports.JOB_FILTER_OPTIONS = JOB_FILTER_OPTIONS;
|
|
14531
|
+
exports.JobIsPrivateException = JobIsPrivateException;
|
|
13876
14532
|
exports.LogEventTypeEnum = LogEventTypeEnum;
|
|
13877
14533
|
exports.LoginFailedException = LoginFailedException;
|
|
13878
14534
|
exports.MultiloginAuthenticationException = MultiloginAuthenticationException;
|
|
@@ -13974,7 +14630,9 @@ exports.evaluateFunctionException = evaluateFunctionException;
|
|
|
13974
14630
|
exports.eventLoggerPayloadSchema = eventLoggerPayloadSchema;
|
|
13975
14631
|
exports.experienceLevelEnum = experienceLevelEnum;
|
|
13976
14632
|
exports.externalProxySchema = externalProxySchema;
|
|
14633
|
+
exports.failedToParseNuxtJobException = failedToParseNuxtJobException;
|
|
13977
14634
|
exports.feedJobSchema = feedJobSchema;
|
|
14635
|
+
exports.feedJobSchemaV2 = feedJobSchemaV2;
|
|
13978
14636
|
exports.feedScrapeCompletedEventMetadata = feedScrapeCompletedEventMetadata;
|
|
13979
14637
|
exports.feedScrapeException = feedScrapeException;
|
|
13980
14638
|
exports.feedScrapeStartedEventMetadata = feedScrapeStartedEventMetadata;
|
|
@@ -14018,7 +14676,9 @@ exports.jobActivityScrapeFailedEventMetadata = jobActivityScrapeFailedEventMetad
|
|
|
14018
14676
|
exports.jobActivityScrapedEventMetadata = jobActivityScrapedEventMetadata;
|
|
14019
14677
|
exports.jobActivitySnapshotSchema = jobActivitySnapshotSchema;
|
|
14020
14678
|
exports.jobActivityUpdateSchema = jobActivityUpdateSchema;
|
|
14679
|
+
exports.jobDetailsStateSchema = jobDetailsStateSchema;
|
|
14021
14680
|
exports.jobFiltersSchema = jobFiltersSchema;
|
|
14681
|
+
exports.jobIsPrivateException = jobIsPrivateException;
|
|
14022
14682
|
exports.jobQualityScoreSchema = jobQualityScoreSchema;
|
|
14023
14683
|
exports.jobSkillsSchema = jobSkillsSchema;
|
|
14024
14684
|
exports.jobStatusOrder = jobStatusOrder;
|
|
@@ -14043,7 +14703,9 @@ exports.noBidderAccountsAvailableException = noBidderAccountsAvailableException;
|
|
|
14043
14703
|
exports.noGoogleOAuthTokensFoundException = noGoogleOAuthTokensFoundException;
|
|
14044
14704
|
exports.noScraperAccountAvailableException = noScraperAccountAvailableException;
|
|
14045
14705
|
exports.notificationConfigSchema = notificationConfigSchema;
|
|
14706
|
+
exports.nuxtStateJobDetailsSchema = nuxtStateJobDetailsSchema;
|
|
14046
14707
|
exports.nuxtStateJobSchema = nuxtStateJobSchema;
|
|
14708
|
+
exports.nuxtStateJobsSearchSchema = nuxtStateJobsSearchSchema;
|
|
14047
14709
|
exports.onboardingProgressSchema = onboardingProgressSchema;
|
|
14048
14710
|
exports.openPageException = openPageException;
|
|
14049
14711
|
exports.organizationCampaignStatsSchema = organizationCampaignStatsSchema;
|
|
@@ -14076,6 +14738,7 @@ exports.proxyCountryEnum = proxyCountryEnum;
|
|
|
14076
14738
|
exports.proxyProviderSchema = proxyProviderSchema;
|
|
14077
14739
|
exports.proxySchema = proxySchema;
|
|
14078
14740
|
exports.proxyStatusSchema = proxyStatusSchema;
|
|
14741
|
+
exports.proxyTypeSchema = proxyTypeSchema;
|
|
14079
14742
|
exports.puppeteerConnectionErrorException = puppeteerConnectionErrorException;
|
|
14080
14743
|
exports.questionAnswerPairSchema = questionAnswerPairSchema;
|
|
14081
14744
|
exports.questionPairNotMatchingException = questionPairNotMatchingException;
|