@epsilon-asi/actors 0.0.42 → 0.0.44
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/sites/upwork-com/upwork-com.actor.d.ts +6 -4
- package/dist/sites/upwork-com/upwork-com.actor.d.ts.map +1 -1
- package/dist/sites/upwork-com/upwork-com.actor.js +9 -5
- package/dist/sites/upwork-com/upwork-com.actor.js.map +1 -1
- package/dist/sites/upwork-com/upwork-com.types.d.ts +3 -0
- package/dist/sites/upwork-com/upwork-com.types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/sites/upwork-com/upwork-com.actor.ts +20 -6
- package/src/sites/upwork-com/upwork-com.types.ts +4 -0
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { ScrapeDashboardInput } from "../example/index.js";
|
|
1
|
+
import { UpworkApplyToJobInput, UpworkApplyToJobResult, UpworkJobSearchFields, UpworkJobSelector } from './upwork-com.types.js';
|
|
3
2
|
import { UpworkJobListing } from "./util/scrapeJobListing.js";
|
|
4
3
|
import { UpworkProposalAnswers, UpworkProposalQuestions } from "./util/parseJobApplicationDetails.js";
|
|
4
|
+
import { UpworkJobDetails } from "./util/parseJobDetails.js";
|
|
5
5
|
export declare const upworkComActor: import("../../index.js").Actor<{
|
|
6
6
|
test: (context: import("../../index.js").ActorContext, input: any) => Promise<void>;
|
|
7
7
|
searchJobs: (context: import("../../index.js").ActorContext, input?: UpworkJobSearchFields) => Promise<UpworkJobListing[]>;
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
getJob: (_context: import("../../index.js").ActorContext, input: UpworkJobSelector) => Promise<{
|
|
9
|
+
jobDetails: UpworkJobDetails;
|
|
10
|
+
jobQuestions: UpworkProposalQuestions;
|
|
11
|
+
}>;
|
|
10
12
|
applyToJob: (_context: import("../../index.js").ActorContext, input: UpworkApplyToJobInput & UpworkProposalAnswers) => Promise<UpworkApplyToJobResult>;
|
|
11
13
|
}>;
|
|
12
14
|
//# sourceMappingURL=upwork-com.actor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upwork-com.actor.d.ts","sourceRoot":"","sources":["../../../src/sites/upwork-com/upwork-com.actor.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"upwork-com.actor.d.ts","sourceRoot":"","sources":["../../../src/sites/upwork-com/upwork-com.actor.ts"],"names":[],"mappings":"AAGA,OAAO,EACH,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,EACrB,iBAAiB,EACpB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAA2B,gBAAgB,EAAC,MAAM,4BAA4B,CAAC;AAEtF,OAAO,EAE2B,qBAAqB,EACnD,uBAAuB,EAC1B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAA4B,gBAAgB,EAAC,MAAM,2BAA2B,CAAC;AAEtF,eAAO,MAAM,cAAc;;yEAuDgB,qBAAqB,KAAQ,OAAO,CAAC,gBAAgB,EAAE,CAAC;qEAO3D,iBAAiB,KAAG,OAAO,CAAC;QACxD,UAAU,EAAE,gBAAgB,CAAC;QAC7B,YAAY,EAAE,uBAAuB,CAAA;KACxC,CAAC;yEAakC,qBAAqB,GAAG,qBAAqB,KAAG,OAAO,CAAC,sBAAsB,CAAC;EAsCzH,CAAC"}
|
|
@@ -4,6 +4,7 @@ import { upworkComSelectors } from './upwork-com.selectors.js';
|
|
|
4
4
|
import { parseRate } from "./upwork-com.util.js";
|
|
5
5
|
import { parseUpworkSearchResults } from "./util/scrapeJobListing.js";
|
|
6
6
|
import { fillUpworkProposalQuestions, parseUpworkProposalQuestions } from "./util/parseJobApplicationDetails.js";
|
|
7
|
+
import { parseUpworkJobDetailsPage } from "./util/parseJobDetails.js";
|
|
7
8
|
export const upworkComActor = defineActor({
|
|
8
9
|
id: 'upwork-com',
|
|
9
10
|
baseUrl: 'https://upwork.com',
|
|
@@ -64,12 +65,15 @@ export const upworkComActor = defineActor({
|
|
|
64
65
|
await context.nav.goto(path, {});
|
|
65
66
|
return await parseUpworkSearchResults(context.session.page);
|
|
66
67
|
},
|
|
67
|
-
|
|
68
|
-
await
|
|
69
|
-
|
|
70
|
-
getJobQuestions: async (_context, input) => {
|
|
68
|
+
getJob: async (_context, input) => {
|
|
69
|
+
await _context.nav.goto(`/nx/proposals/job/~${input.jobId}/`);
|
|
70
|
+
const jobDetails = parseUpworkJobDetailsPage(await _context.session.page.content());
|
|
71
71
|
await _context.nav.goto(`/nx/proposals/job/~${input.jobId}/apply/`);
|
|
72
|
-
|
|
72
|
+
const jobQuestions = await parseUpworkProposalQuestions(_context.session.page);
|
|
73
|
+
return {
|
|
74
|
+
jobDetails,
|
|
75
|
+
jobQuestions
|
|
76
|
+
};
|
|
73
77
|
},
|
|
74
78
|
applyToJob: async (_context, input) => {
|
|
75
79
|
await _context.cursor.scrollIntoView(`[data-ev-job-uid="${input.jobId}"]`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upwork-com.actor.js","sourceRoot":"","sources":["../../../src/sites/upwork-com/upwork-com.actor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAC,WAAW,EAAC,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAC,kBAAkB,EAAC,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"upwork-com.actor.js","sourceRoot":"","sources":["../../../src/sites/upwork-com/upwork-com.actor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upwork-com.types.d.ts","sourceRoot":"","sources":["../../../src/sites/upwork-com/upwork-com.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,6BAA6B,EAAC,MAAM,sCAAsC,CAAC;AAEnF,oBAAY,aAAa;IACvB,SAAS,eAAe;CACzB;AAED,oBAAY,cAAc;IACxB,MAAM,YAAY;CACnB;AAED,oBAAY,cAAc;IACxB,UAAU,MAAM;IAChB,YAAY,MAAM;IAClB,MAAM,MAAM;CACb;AAED,oBAAY,OAAO;IACjB,MAAM,WAAW;IACjB,UAAU,gBAAgB;CAC3B;AAED,oBAAY,eAAe;IACzB,WAAW,WAAW;IACtB,YAAY,eAAe;IAC3B,aAAa,gBAAgB;IAC7B,cAAc,iBAAiB;IAC/B,eAAe,aAAa;CAC7B;AAED,oBAAY,aAAa;IACvB,UAAU,QAAQ;IAClB,SAAS,QAAQ;IACjB,UAAU,UAAU;IACpB,UAAU,UAAU;IACpB,UAAU,UAAU;CACrB;AAED,oBAAY,gBAAgB;IAC1B,eAAe,qBAAqB;IACpC,eAAe,qBAAqB;CACrC;AAED,oBAAY,gBAAgB;IAC1B,OAAO,MAAM;IACb,QAAQ,QAAQ;IAChB,OAAO,QAAQ;CAChB;AAED,oBAAY,aAAa;IACvB,gBAAgB,SAAS;IACzB,gBAAgB,UAAU;IAC1B,gBAAgB,aAAa;IAC7B,iBAAiB,YAAY;CAC9B;AAED,oBAAY,YAAY;IACtB,UAAU,cAAc;IACxB,UAAU,cAAc;CACzB;AAED,oBAAY,WAAW;IACrB,cAAc,qBAAqB;CACpC;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,KAAK,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,cAAc,CAAC,EAAE,cAAc,EAAE,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;IACpB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IACrC,gBAAgB,CAAC,EAAE,UAAU,CAAC;IAC9B,SAAS,CAAC,EAAE,aAAa,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAChC,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,aAAa,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,WAAW,EAAE,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,qBAAqB,CAAC;CAChC;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,OAAO,EAAE,6BAA6B,CAAA;CACvC;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd"}
|
|
1
|
+
{"version":3,"file":"upwork-com.types.d.ts","sourceRoot":"","sources":["../../../src/sites/upwork-com/upwork-com.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,6BAA6B,EAAC,MAAM,sCAAsC,CAAC;AAEnF,oBAAY,aAAa;IACvB,SAAS,eAAe;CACzB;AAED,oBAAY,cAAc;IACxB,MAAM,YAAY;CACnB;AAED,oBAAY,cAAc;IACxB,UAAU,MAAM;IAChB,YAAY,MAAM;IAClB,MAAM,MAAM;CACb;AAED,oBAAY,OAAO;IACjB,MAAM,WAAW;IACjB,UAAU,gBAAgB;CAC3B;AAED,oBAAY,eAAe;IACzB,WAAW,WAAW;IACtB,YAAY,eAAe;IAC3B,aAAa,gBAAgB;IAC7B,cAAc,iBAAiB;IAC/B,eAAe,aAAa;CAC7B;AAED,oBAAY,aAAa;IACvB,UAAU,QAAQ;IAClB,SAAS,QAAQ;IACjB,UAAU,UAAU;IACpB,UAAU,UAAU;IACpB,UAAU,UAAU;CACrB;AAED,oBAAY,gBAAgB;IAC1B,eAAe,qBAAqB;IACpC,eAAe,qBAAqB;CACrC;AAED,oBAAY,gBAAgB;IAC1B,OAAO,MAAM;IACb,QAAQ,QAAQ;IAChB,OAAO,QAAQ;CAChB;AAED,oBAAY,aAAa;IACvB,gBAAgB,SAAS;IACzB,gBAAgB,UAAU;IAC1B,gBAAgB,aAAa;IAC7B,iBAAiB,YAAY;CAC9B;AAED,oBAAY,YAAY;IACtB,UAAU,cAAc;IACxB,UAAU,cAAc;CACzB;AAED,oBAAY,WAAW;IACrB,cAAc,qBAAqB;CACpC;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,KAAK,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,cAAc,CAAC,EAAE,cAAc,EAAE,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;IACpB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IACrC,gBAAgB,CAAC,EAAE,UAAU,CAAC;IAC9B,SAAS,CAAC,EAAE,aAAa,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAChC,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,aAAa,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,WAAW,EAAE,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,qBAAqB,CAAC;CAChC;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,OAAO,EAAE,6BAA6B,CAAA;CACvC;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import {defineLoginFlow} from '../../auth/LoginFlow.types.js';
|
|
2
2
|
import {defineActor} from '../../core/defineActor.js';
|
|
3
3
|
import {upworkComSelectors} from './upwork-com.selectors.js';
|
|
4
|
-
import
|
|
4
|
+
import {
|
|
5
|
+
UpworkApplyToJobInput,
|
|
6
|
+
UpworkApplyToJobResult,
|
|
7
|
+
UpworkJobSearchFields,
|
|
8
|
+
UpworkJobSelector
|
|
9
|
+
} from './upwork-com.types.js';
|
|
5
10
|
import {parseRate} from "./upwork-com.util.js";
|
|
6
11
|
import {ScrapeDashboardInput} from "../example/index.js";
|
|
7
12
|
import {parseUpworkSearchResults, UpworkJobListing} from "./util/scrapeJobListing.js";
|
|
@@ -11,6 +16,7 @@ import {
|
|
|
11
16
|
parseUpworkProposalQuestions, UpworkProposalAnswers, UpworkProposalQuestionKind,
|
|
12
17
|
UpworkProposalQuestions
|
|
13
18
|
} from "./util/parseJobApplicationDetails.js";
|
|
19
|
+
import {parseUpworkJobDetailsPage, UpworkJobDetails} from "./util/parseJobDetails.js";
|
|
14
20
|
|
|
15
21
|
export const upworkComActor = defineActor({
|
|
16
22
|
id: 'upwork-com',
|
|
@@ -74,13 +80,21 @@ export const upworkComActor = defineActor({
|
|
|
74
80
|
|
|
75
81
|
return await parseUpworkSearchResults(context.session.page as Page);
|
|
76
82
|
},
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
83
|
+
getJob: async (_context, input: UpworkJobSelector): Promise<{
|
|
84
|
+
jobDetails: UpworkJobDetails,
|
|
85
|
+
jobQuestions: UpworkProposalQuestions
|
|
86
|
+
}> => {
|
|
87
|
+
await _context.nav.goto(`/nx/proposals/job/~${input.jobId}/`);
|
|
88
|
+
|
|
89
|
+
const jobDetails = parseUpworkJobDetailsPage(await _context.session.page.content());
|
|
90
|
+
|
|
81
91
|
await _context.nav.goto(`/nx/proposals/job/~${input.jobId}/apply/`);
|
|
82
92
|
|
|
83
|
-
|
|
93
|
+
const jobQuestions = await parseUpworkProposalQuestions(_context.session.page as Page);
|
|
94
|
+
return {
|
|
95
|
+
jobDetails,
|
|
96
|
+
jobQuestions
|
|
97
|
+
}
|
|
84
98
|
},
|
|
85
99
|
applyToJob: async (_context, input: UpworkApplyToJobInput & UpworkProposalAnswers): Promise<UpworkApplyToJobResult> => {
|
|
86
100
|
await _context.cursor.scrollIntoView(`[data-ev-job-uid="${input.jobId}"]`);
|