@intuned/runtime 1.3.8 → 1.3.10
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/InterfaceTemplate/index.playwright.ts +1 -0
- package/bin/intuned +2 -0
- package/bin/intuned-api-run +2 -0
- package/bin/intuned-auth-session-check +2 -0
- package/bin/intuned-auth-session-create +2 -0
- package/bin/intuned-auth-session-load +2 -0
- package/dist/commands/common/utils/settings.js +3 -0
- package/dist/commands/intuned-cli/commands/run_authsession.command.d.ts +3 -0
- package/dist/commands/intuned-cli/commands/types.d.ts +4 -0
- package/dist/commands/intuned-cli/commands/types.js +5 -3
- package/dist/commands/intuned-cli/controller/api.d.ts +1 -1
- package/dist/commands/intuned-cli/controller/api.js +4 -2
- package/dist/commands/intuned-cli/controller/authSession.d.ts +2 -2
- package/dist/commands/intuned-cli/controller/authSession.js +8 -4
- package/dist/commands/intuned-cli/helpers/__test__/browser.test.js +11 -0
- package/dist/commands/intuned-cli/helpers/browser.d.ts +2 -1
- package/dist/commands/intuned-cli/helpers/browser.js +8 -1
- package/dist/commands/intuned-cli/helpers/wrapper.js +2 -1
- package/dist/commands/intuned-cli/main.js +1 -0
- package/dist/common/binStartupScript.d.ts +1 -0
- package/dist/common/binStartupScript.js +34 -0
- package/dist/common/settingsSchema.d.ts +13 -0
- package/dist/common/settingsSchema.js +6 -0
- package/package/dist/commands/api/run.d.ts +6 -0
- package/package/dist/commands/api/run.js +123 -0
- package/package/dist/commands/auth-sessions/load.d.ts +2 -0
- package/package/dist/commands/auth-sessions/load.js +35 -0
- package/package/dist/commands/auth-sessions/run-check.d.ts +2 -0
- package/package/dist/commands/auth-sessions/run-check.js +74 -0
- package/package/dist/commands/auth-sessions/run-create.d.ts +2 -0
- package/package/dist/commands/auth-sessions/run-create.js +78 -0
- package/package/dist/commands/browser/save-state.d.ts +2 -0
- package/package/dist/commands/browser/save-state.js +17 -0
- package/package/dist/commands/browser/start-browser.d.ts +2 -0
- package/package/dist/commands/browser/start-browser.js +14 -0
- package/package/dist/commands/build.d.ts +1 -0
- package/package/dist/commands/build.js +84 -0
- package/package/dist/commands/common/browserUtils.d.ts +14 -0
- package/package/dist/commands/common/browserUtils.js +58 -0
- package/package/dist/commands/common/getFirstLineNumber.d.ts +9 -0
- package/package/dist/commands/common/getFirstLineNumber.js +101 -0
- package/package/dist/commands/common/getFirstLineNumber.test.js +228 -0
- package/package/dist/commands/common/projectExclusions.d.ts +2 -0
- package/package/dist/commands/common/projectExclusions.js +8 -0
- package/package/dist/commands/common/sendMessageToClient.d.ts +1 -0
- package/package/dist/commands/common/sendMessageToClient.js +10 -0
- package/package/dist/commands/common/tsNodeImport.d.ts +2 -0
- package/package/dist/commands/common/tsNodeImport.js +34 -0
- package/package/dist/commands/common/utils/fileUtils.d.ts +6 -0
- package/package/dist/commands/common/utils/fileUtils.js +33 -0
- package/package/dist/commands/common/utils/settings.d.ts +2 -0
- package/package/dist/commands/common/utils/settings.js +31 -0
- package/package/dist/commands/common/utils/template.d.ts +2 -0
- package/package/dist/commands/common/utils/template.js +31 -0
- package/package/dist/commands/common/utils/unixSocket.d.ts +9 -0
- package/package/dist/commands/common/utils/unixSocket.js +44 -0
- package/package/dist/commands/interface/run.d.ts +1 -0
- package/package/dist/commands/interface/run.js +216 -0
- package/package/dist/commands/intuned-cli/commands/attempt.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/attempt.command.js +8 -0
- package/package/dist/commands/intuned-cli/commands/attempt_api.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/attempt_api.command.js +30 -0
- package/package/dist/commands/intuned-cli/commands/attempt_authsession.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/attempt_authsession.command.js +8 -0
- package/package/dist/commands/intuned-cli/commands/attempt_authsession_check.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/attempt_authsession_check.command.js +19 -0
- package/package/dist/commands/intuned-cli/commands/attempt_authsession_create.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/attempt_authsession_create.command.js +24 -0
- package/package/dist/commands/intuned-cli/commands/authsession.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/authsession.command.js +8 -0
- package/package/dist/commands/intuned-cli/commands/authsession_record.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/authsession_record.command.js +31 -0
- package/package/dist/commands/intuned-cli/commands/build.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/build.command.js +12 -0
- package/package/dist/commands/intuned-cli/commands/command.d.ts +2 -0
- package/package/dist/commands/intuned-cli/commands/command.js +9 -0
- package/package/dist/commands/intuned-cli/commands/deploy.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/deploy.command.js +38 -0
- package/package/dist/commands/intuned-cli/commands/index.d.ts +18 -0
- package/package/dist/commands/intuned-cli/commands/index.js +203 -0
- package/package/dist/commands/intuned-cli/commands/init.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/init.command.js +13 -0
- package/package/dist/commands/intuned-cli/commands/run.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/run.command.js +8 -0
- package/package/dist/commands/intuned-cli/commands/run_api.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/run_api.command.js +46 -0
- package/package/dist/commands/intuned-cli/commands/run_authsession.command.d.ts +28 -0
- package/package/dist/commands/intuned-cli/commands/run_authsession.command.js +17 -0
- package/package/dist/commands/intuned-cli/commands/run_authsession_create.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/run_authsession_create.command.js +35 -0
- package/package/dist/commands/intuned-cli/commands/run_authsession_update.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/run_authsession_update.command.js +35 -0
- package/package/dist/commands/intuned-cli/commands/run_authsession_validate.command.d.ts +1 -0
- package/package/dist/commands/intuned-cli/commands/run_authsession_validate.command.js +33 -0
- package/package/dist/commands/intuned-cli/commands/save.command.d.ts +13 -0
- package/package/dist/commands/intuned-cli/commands/save.command.js +42 -0
- package/package/dist/commands/intuned-cli/commands/types.d.ts +31 -0
- package/package/dist/commands/intuned-cli/commands/types.js +29 -0
- package/package/dist/commands/intuned-cli/constants/index.d.ts +17 -0
- package/package/dist/commands/intuned-cli/constants/index.js +25 -0
- package/package/dist/commands/intuned-cli/controller/__test__/api.test.js +397 -0
- package/package/dist/commands/intuned-cli/controller/__test__/authSession.test.js +1059 -0
- package/package/dist/commands/intuned-cli/controller/api.d.ts +42 -0
- package/package/dist/commands/intuned-cli/controller/api.js +189 -0
- package/package/dist/commands/intuned-cli/controller/authSession.d.ts +209 -0
- package/package/dist/commands/intuned-cli/controller/authSession.js +420 -0
- package/package/dist/commands/intuned-cli/controller/build.d.ts +1 -0
- package/package/dist/commands/intuned-cli/controller/build.js +36 -0
- package/package/dist/commands/intuned-cli/controller/deploy.d.ts +4 -0
- package/package/dist/commands/intuned-cli/controller/deploy.js +139 -0
- package/package/dist/commands/intuned-cli/controller/index.d.ts +1 -0
- package/package/dist/commands/intuned-cli/controller/index.js +46 -0
- package/package/dist/commands/intuned-cli/controller/save.d.ts +14 -0
- package/package/dist/commands/intuned-cli/controller/save.js +345 -0
- package/package/dist/commands/intuned-cli/helpers/__test__/browser.test.js +103 -0
- package/package/dist/commands/intuned-cli/helpers/__test__/tracing.test.js +40 -0
- package/package/dist/commands/intuned-cli/helpers/api.d.ts +3 -0
- package/package/dist/commands/intuned-cli/helpers/api.js +19 -0
- package/package/dist/commands/intuned-cli/helpers/auth.d.ts +46 -0
- package/package/dist/commands/intuned-cli/helpers/auth.js +144 -0
- package/package/dist/commands/intuned-cli/helpers/backend.d.ts +8 -0
- package/package/dist/commands/intuned-cli/helpers/backend.js +27 -0
- package/package/dist/commands/intuned-cli/helpers/browser.d.ts +14 -0
- package/package/dist/commands/intuned-cli/helpers/browser.js +57 -0
- package/package/dist/commands/intuned-cli/helpers/context.d.ts +3 -0
- package/package/dist/commands/intuned-cli/helpers/context.js +33 -0
- package/package/dist/commands/intuned-cli/helpers/errors.d.ts +13 -0
- package/package/dist/commands/intuned-cli/helpers/errors.js +37 -0
- package/package/dist/commands/intuned-cli/helpers/index.d.ts +12 -0
- package/package/dist/commands/intuned-cli/helpers/index.js +137 -0
- package/package/dist/commands/intuned-cli/helpers/intunedJson.d.ts +69 -0
- package/package/dist/commands/intuned-cli/helpers/intunedJson.js +71 -0
- package/package/dist/commands/intuned-cli/helpers/proxy.d.ts +5 -0
- package/package/dist/commands/intuned-cli/helpers/proxy.js +23 -0
- package/package/dist/commands/intuned-cli/helpers/terminal.d.ts +5 -0
- package/package/dist/commands/intuned-cli/helpers/terminal.js +13 -0
- package/package/dist/commands/intuned-cli/helpers/timeout.d.ts +1 -0
- package/package/dist/commands/intuned-cli/helpers/timeout.js +23 -0
- package/package/dist/commands/intuned-cli/helpers/traces.d.ts +2 -0
- package/package/dist/commands/intuned-cli/helpers/traces.js +32 -0
- package/package/dist/commands/intuned-cli/helpers/validation.d.ts +2 -0
- package/package/dist/commands/intuned-cli/helpers/validation.js +14 -0
- package/package/dist/commands/intuned-cli/helpers/wrapper.d.ts +2 -0
- package/package/dist/commands/intuned-cli/helpers/wrapper.js +60 -0
- package/package/dist/commands/intuned-cli/index.d.ts +1 -0
- package/package/dist/commands/intuned-cli/index.js +16 -0
- package/package/dist/commands/intuned-cli/main.d.ts +1 -0
- package/package/dist/commands/intuned-cli/main.js +22 -0
- package/package/dist/commands/intuned-cli/types.d.ts +41 -0
- package/package/dist/commands/intuned-cli/types.js +12 -0
- package/package/dist/commands/ts-check.d.ts +2 -0
- package/package/dist/commands/ts-check.js +56 -0
- package/package/dist/common/Logger/Logger/index.d.ts +12 -0
- package/package/dist/common/Logger/Logger/index.js +60 -0
- package/package/dist/common/Logger/Logger/types.d.ts +8 -0
- package/package/dist/common/Logger/Logger/types.js +5 -0
- package/package/dist/common/Logger/index.d.ts +12 -0
- package/package/dist/common/Logger/index.js +60 -0
- package/package/dist/common/Logger/types.d.ts +8 -0
- package/package/dist/common/Logger/types.js +5 -0
- package/package/dist/common/assets/browser_scripts.js +2580 -0
- package/package/dist/common/asyncLocalStorage/index.d.ts +16 -0
- package/package/dist/common/asyncLocalStorage/index.js +17 -0
- package/package/dist/common/backendFunctions/getAuthSessionParameters.d.ts +1 -0
- package/package/dist/common/backendFunctions/getAuthSessionParameters.js +38 -0
- package/package/dist/common/cleanEnvironmentVariables.d.ts +1 -0
- package/package/dist/common/cleanEnvironmentVariables.js +16 -0
- package/package/dist/common/constants.d.ts +10 -0
- package/package/dist/common/constants.js +16 -0
- package/package/dist/common/contextStorageStateHelpers.d.ts +21 -0
- package/package/dist/common/contextStorageStateHelpers.js +81 -0
- package/package/dist/common/extensionsHelpers.d.ts +8 -0
- package/package/dist/common/extensionsHelpers.js +80 -0
- package/package/dist/common/formatZodError.d.ts +2 -0
- package/package/dist/common/formatZodError.js +18 -0
- package/package/dist/common/jwtTokenManager.d.ts +17 -0
- package/package/dist/common/jwtTokenManager.js +109 -0
- package/package/dist/common/launchBrowser.d.ts +25 -0
- package/package/dist/common/launchBrowser.js +172 -0
- package/package/dist/common/playwrightContext.d.ts +31 -0
- package/package/dist/common/playwrightContext.js +144 -0
- package/package/dist/common/runApi/errors.d.ts +72 -0
- package/package/dist/common/runApi/errors.js +169 -0
- package/package/dist/common/runApi/importUsingImportFunction.d.ts +9 -0
- package/package/dist/common/runApi/importUsingImportFunction.js +46 -0
- package/package/dist/common/runApi/index.d.ts +11 -0
- package/package/dist/common/runApi/index.js +199 -0
- package/package/dist/common/runApi/types.d.ts +830 -0
- package/package/dist/common/runApi/types.js +73 -0
- package/package/dist/common/settingsSchema.d.ts +518 -0
- package/package/dist/common/settingsSchema.js +57 -0
- package/package/dist/common/setupContextHook.d.ts +17 -0
- package/package/dist/common/setupContextHook.js +22 -0
- package/package/dist/common/telemetry.d.ts +3 -0
- package/package/dist/common/telemetry.js +32 -0
- package/package/dist/index.d.ts +4 -0
- package/package/dist/index.js +69 -0
- package/package/dist/runtime/RunError.d.ts +5 -0
- package/package/dist/runtime/RunError.js +19 -0
- package/package/dist/runtime/attemptStore.d.ts +2 -0
- package/package/dist/runtime/attemptStore.js +23 -0
- package/package/dist/runtime/downloadDirectory.d.ts +1 -0
- package/package/dist/runtime/downloadDirectory.js +19 -0
- package/package/dist/runtime/enums.d.js +5 -0
- package/package/dist/runtime/enums.d.ts +11 -0
- package/package/dist/runtime/enums.js +18 -0
- package/package/dist/runtime/executionHelpers.test.js +52 -0
- package/package/dist/runtime/export.d.js +5 -0
- package/package/dist/runtime/export.d.ts +228 -0
- package/package/dist/runtime/extendPayload.d.ts +2 -0
- package/package/dist/runtime/extendPayload.js +21 -0
- package/package/dist/runtime/extendTimeout.d.ts +1 -0
- package/package/dist/runtime/extendTimeout.js +23 -0
- package/package/dist/runtime/getAuthSessionParameters.d.ts +1 -0
- package/package/dist/runtime/getAuthSessionParameters.js +20 -0
- package/package/dist/runtime/index.d.ts +7 -0
- package/package/dist/runtime/index.js +54 -0
- package/package/dist/runtime/runInfo.d.ts +2 -0
- package/package/dist/runtime/runInfo.js +21 -0
- package/package.json +3 -2
- package/WebTemplate.zip +0 -0
- package/bin/intuned-auth-session-refresh +0 -2
package/bin/intuned
CHANGED
package/bin/intuned-api-run
CHANGED
|
@@ -4,6 +4,7 @@ export declare const baseRunAuthSessionCommandOptionsSchema: import("zod").ZodOb
|
|
|
4
4
|
headless: import("zod").ZodDefault<import("zod").ZodBoolean>;
|
|
5
5
|
timeout: import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodDefault<import("zod").ZodString>, import("ms").StringValue, string | undefined>, number, string | undefined>;
|
|
6
6
|
keepBrowserOpen: import("zod").ZodDefault<import("zod").ZodBoolean>;
|
|
7
|
+
cdpUrl: import("zod").ZodOptional<import("zod").ZodString>;
|
|
7
8
|
trace: import("zod").ZodDefault<import("zod").ZodBoolean>;
|
|
8
9
|
checkAttempts: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
9
10
|
createAttempts: import("zod").ZodDefault<import("zod").ZodNumber>;
|
|
@@ -15,11 +16,13 @@ export declare const baseRunAuthSessionCommandOptionsSchema: import("zod").ZodOb
|
|
|
15
16
|
checkAttempts: number;
|
|
16
17
|
createAttempts: number;
|
|
17
18
|
proxy?: string | undefined;
|
|
19
|
+
cdpUrl?: string | undefined;
|
|
18
20
|
}, {
|
|
19
21
|
proxy?: string | undefined;
|
|
20
22
|
headless?: boolean | undefined;
|
|
21
23
|
timeout?: string | undefined;
|
|
22
24
|
keepBrowserOpen?: boolean | undefined;
|
|
25
|
+
cdpUrl?: string | undefined;
|
|
23
26
|
trace?: boolean | undefined;
|
|
24
27
|
checkAttempts?: number | undefined;
|
|
25
28
|
createAttempts?: number | undefined;
|
|
@@ -8,24 +8,28 @@ export declare const timeoutSchema: z.ZodEffects<z.ZodEffects<z.ZodDefault<z.Zod
|
|
|
8
8
|
export declare const headlessSchema: z.ZodDefault<z.ZodBoolean>;
|
|
9
9
|
export declare const traceSchema: z.ZodDefault<z.ZodBoolean>;
|
|
10
10
|
export declare const keepBrowserOpenSchema: z.ZodDefault<z.ZodBoolean>;
|
|
11
|
+
export declare const cdpUrlSchema: z.ZodOptional<z.ZodString>;
|
|
11
12
|
export declare const baseCommandOptionsSchema: z.ZodObject<{
|
|
12
13
|
proxy: z.ZodOptional<z.ZodString>;
|
|
13
14
|
timeout: z.ZodEffects<z.ZodEffects<z.ZodDefault<z.ZodString>, ms.StringValue, string | undefined>, number, string | undefined>;
|
|
14
15
|
headless: z.ZodDefault<z.ZodBoolean>;
|
|
15
16
|
trace: z.ZodDefault<z.ZodBoolean>;
|
|
16
17
|
keepBrowserOpen: z.ZodDefault<z.ZodBoolean>;
|
|
18
|
+
cdpUrl: z.ZodOptional<z.ZodString>;
|
|
17
19
|
}, "strip", z.ZodTypeAny, {
|
|
18
20
|
headless: boolean;
|
|
19
21
|
timeout: number;
|
|
20
22
|
keepBrowserOpen: boolean;
|
|
21
23
|
trace: boolean;
|
|
22
24
|
proxy?: string | undefined;
|
|
25
|
+
cdpUrl?: string | undefined;
|
|
23
26
|
}, {
|
|
24
27
|
proxy?: string | undefined;
|
|
25
28
|
timeout?: string | undefined;
|
|
26
29
|
headless?: boolean | undefined;
|
|
27
30
|
trace?: boolean | undefined;
|
|
28
31
|
keepBrowserOpen?: boolean | undefined;
|
|
32
|
+
cdpUrl?: string | undefined;
|
|
29
33
|
}>;
|
|
30
34
|
export type BaseCommandOptions = z.infer<typeof baseCommandOptionsSchema>;
|
|
31
35
|
export declare function withBaseOptions(command: Command): Command;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.traceSchema = exports.timeoutSchema = exports.proxySchema = exports.keepBrowserOpenSchema = exports.headlessSchema = exports.baseCommandOptionsSchema = exports.authSessionCreateAttemptsSchema = exports.authSessionCheckAttemptsSchema = void 0;
|
|
6
|
+
exports.traceSchema = exports.timeoutSchema = exports.proxySchema = exports.keepBrowserOpenSchema = exports.headlessSchema = exports.cdpUrlSchema = exports.baseCommandOptionsSchema = exports.authSessionCreateAttemptsSchema = exports.authSessionCheckAttemptsSchema = void 0;
|
|
7
7
|
exports.withBaseOptions = withBaseOptions;
|
|
8
8
|
var _ms = _interopRequireDefault(require("ms"));
|
|
9
9
|
var _zod = require("zod");
|
|
@@ -17,13 +17,15 @@ const timeoutSchema = exports.timeoutSchema = _zod.z.string().default("10 mins")
|
|
|
17
17
|
const headlessSchema = exports.headlessSchema = _zod.z.boolean().default(false);
|
|
18
18
|
const traceSchema = exports.traceSchema = _zod.z.boolean().default(false);
|
|
19
19
|
const keepBrowserOpenSchema = exports.keepBrowserOpenSchema = _zod.z.boolean().default(false);
|
|
20
|
+
const cdpUrlSchema = exports.cdpUrlSchema = _zod.z.string().url().optional();
|
|
20
21
|
const baseCommandOptionsSchema = exports.baseCommandOptionsSchema = _zod.z.object({
|
|
21
22
|
proxy: proxySchema,
|
|
22
23
|
timeout: timeoutSchema,
|
|
23
24
|
headless: headlessSchema,
|
|
24
25
|
trace: traceSchema,
|
|
25
|
-
keepBrowserOpen: keepBrowserOpenSchema
|
|
26
|
+
keepBrowserOpen: keepBrowserOpenSchema,
|
|
27
|
+
cdpUrl: cdpUrlSchema
|
|
26
28
|
});
|
|
27
29
|
function withBaseOptions(command) {
|
|
28
|
-
return command.option("--proxy <url>", "Proxy URL to use for browser").option("--timeout <time>", "Timeout for each attempt - milliseconds or ms-formatted string", "10 mins").option("--headless", "Run the attempts in a headless browser (default: false). This will not open a browser window.").option("--trace", "Capture a trace of each attempt, useful for debugging.").option("--keep-browser-open", "Keep the last browser open after the command completes, useful for debugging.");
|
|
30
|
+
return command.option("--proxy <url>", "Proxy URL to use for browser").option("--timeout <time>", "Timeout for each attempt - milliseconds or ms-formatted string", "10 mins").option("--headless", "Run the attempts in a headless browser (default: false). This will not open a browser window.").option("--trace", "Capture a trace of each attempt, useful for debugging.").option("--keep-browser-open", "Keep the last browser open after the command completes, useful for debugging.").option("--cdp-url <url>", "[Experimental] Chrome DevTools Protocol URL to connect to an existing browser instance. Disables proxy, headless, keep_browser_open options.");
|
|
29
31
|
}
|
|
@@ -29,7 +29,7 @@ declare function handleApiResult({ apiResult, outputFile, }: {
|
|
|
29
29
|
export declare const _handleApiResult: typeof handleApiResult;
|
|
30
30
|
declare function writeResultToFile(outputFile: string, result: any, payloadToAppend?: Payload[]): Promise<void>;
|
|
31
31
|
export declare const _writeResultToFile: typeof writeResultToFile;
|
|
32
|
-
declare function attemptApi({ apiName, inputData, auth, proxy, headless, timeout, traceId, keepBrowserOpen, }: {
|
|
32
|
+
declare function attemptApi({ apiName, inputData, auth, proxy, headless, timeout, traceId, keepBrowserOpen, cdpUrl, }: {
|
|
33
33
|
apiName: string;
|
|
34
34
|
inputData: object | null | undefined;
|
|
35
35
|
auth?: RunApiStorageState;
|
|
@@ -150,7 +150,8 @@ async function attemptApi({
|
|
|
150
150
|
headless,
|
|
151
151
|
timeout,
|
|
152
152
|
traceId,
|
|
153
|
-
keepBrowserOpen
|
|
153
|
+
keepBrowserOpen,
|
|
154
|
+
cdpUrl
|
|
154
155
|
}) {
|
|
155
156
|
return await (0, _helpers.withTimeout)(async abortSignal => (0, _helpers.withCLITrace)(async tracing => {
|
|
156
157
|
const runApiResult = await (0, _runApi.runApi)({
|
|
@@ -161,7 +162,8 @@ async function attemptApi({
|
|
|
161
162
|
runOptions: await (0, _browser.getCLIRunOptions)({
|
|
162
163
|
headless,
|
|
163
164
|
proxy,
|
|
164
|
-
keepBrowserOpen
|
|
165
|
+
keepBrowserOpen,
|
|
166
|
+
cdpUrl
|
|
165
167
|
}),
|
|
166
168
|
auth: auth ? {
|
|
167
169
|
session: {
|
|
@@ -128,12 +128,12 @@ export declare function executeAttemptCheckAuthSessionCLI({ id, ...rest }: {
|
|
|
128
128
|
origin: string;
|
|
129
129
|
}[] | undefined;
|
|
130
130
|
}>;
|
|
131
|
-
declare function runCheck({ auth, proxy, headless, timeout, traceId, keepBrowserOpen, }: {
|
|
131
|
+
declare function runCheck({ auth, proxy, headless, timeout, traceId, keepBrowserOpen, cdpUrl, }: {
|
|
132
132
|
auth: RunApiStorageState;
|
|
133
133
|
traceId?: string;
|
|
134
134
|
} & Omit<BaseCommandOptions, "trace">): Promise<boolean>;
|
|
135
135
|
export declare const _runCheck: typeof runCheck;
|
|
136
|
-
declare function runCreate({ authSessionInput, proxy, headless, timeout, traceId, keepBrowserOpen, }: {
|
|
136
|
+
declare function runCreate({ authSessionInput, proxy, headless, timeout, traceId, keepBrowserOpen, cdpUrl, }: {
|
|
137
137
|
authSessionInput: Record<string, any>;
|
|
138
138
|
traceId?: string;
|
|
139
139
|
} & Omit<BaseCommandOptions, "trace">): Promise<{
|
|
@@ -171,7 +171,8 @@ async function runCheck({
|
|
|
171
171
|
headless,
|
|
172
172
|
timeout,
|
|
173
173
|
traceId,
|
|
174
|
-
keepBrowserOpen
|
|
174
|
+
keepBrowserOpen,
|
|
175
|
+
cdpUrl
|
|
175
176
|
}) {
|
|
176
177
|
return await (0, _helpers.withTimeout)(async abortSignal => (0, _helpers.withCLITrace)(async tracing => {
|
|
177
178
|
const runApiResult = await (0, _runApi.runApi)({
|
|
@@ -181,7 +182,8 @@ async function runCheck({
|
|
|
181
182
|
runOptions: await (0, _browser.getCLIRunOptions)({
|
|
182
183
|
headless,
|
|
183
184
|
proxy,
|
|
184
|
-
keepBrowserOpen
|
|
185
|
+
keepBrowserOpen,
|
|
186
|
+
cdpUrl
|
|
185
187
|
}),
|
|
186
188
|
auth: {
|
|
187
189
|
session: {
|
|
@@ -210,7 +212,8 @@ async function runCreate({
|
|
|
210
212
|
headless,
|
|
211
213
|
timeout,
|
|
212
214
|
traceId,
|
|
213
|
-
keepBrowserOpen
|
|
215
|
+
keepBrowserOpen,
|
|
216
|
+
cdpUrl
|
|
214
217
|
}) {
|
|
215
218
|
return await (0, _helpers.withTimeout)(async abortSignal => (0, _helpers.withCLITrace)(async tracing => {
|
|
216
219
|
const result = await (0, _runApi.runApi)({
|
|
@@ -221,7 +224,8 @@ async function runCreate({
|
|
|
221
224
|
runOptions: await (0, _browser.getCLIRunOptions)({
|
|
222
225
|
headless,
|
|
223
226
|
proxy,
|
|
224
|
-
keepBrowserOpen
|
|
227
|
+
keepBrowserOpen,
|
|
228
|
+
cdpUrl
|
|
225
229
|
}),
|
|
226
230
|
retrieveSession: true,
|
|
227
231
|
tracing,
|
|
@@ -39,6 +39,17 @@ _vitest.vi.mock("../../helpers", async importOriginal => {
|
|
|
39
39
|
};
|
|
40
40
|
});
|
|
41
41
|
(0, _vitest.describe)("Browser CLI options", () => {
|
|
42
|
+
(0, _vitest.it)("returns cdp options if cdpUrl is set", async () => {
|
|
43
|
+
const options = await (0, _browser.getCLIRunOptions)({
|
|
44
|
+
keepBrowserOpen: true,
|
|
45
|
+
headless: true,
|
|
46
|
+
cdpUrl: "cdp_url"
|
|
47
|
+
});
|
|
48
|
+
(0, _vitest.expect)(options).toEqual(_vitest.expect.objectContaining({
|
|
49
|
+
environment: "cdp",
|
|
50
|
+
cdpAddress: "cdp_url"
|
|
51
|
+
}));
|
|
52
|
+
});
|
|
42
53
|
(0, _vitest.it)("returns standalone options if keepBrowserOpen is not set", async () => {
|
|
43
54
|
const options = await (0, _browser.getCLIRunOptions)({
|
|
44
55
|
keepBrowserOpen: false,
|
|
@@ -4,10 +4,11 @@ import { z } from "zod";
|
|
|
4
4
|
declare let context: BrowserContext | null;
|
|
5
5
|
export declare function _getContextForTest(): typeof context;
|
|
6
6
|
type RunApiRunOptions = z.infer<typeof runApiParametersSchema>["runOptions"];
|
|
7
|
-
export declare function getCLIRunOptions({ headless, proxy, keepBrowserOpen, }: {
|
|
7
|
+
export declare function getCLIRunOptions({ headless, proxy, keepBrowserOpen, cdpUrl, }: {
|
|
8
8
|
headless: boolean;
|
|
9
9
|
proxy?: string;
|
|
10
10
|
keepBrowserOpen: boolean;
|
|
11
|
+
cdpUrl?: string;
|
|
11
12
|
}): Promise<RunApiRunOptions>;
|
|
12
13
|
export declare function isCliBrowserLaunched(): boolean;
|
|
13
14
|
export declare function closeCliBrowser(): Promise<void>;
|
|
@@ -20,11 +20,18 @@ function _getContextForTest() {
|
|
|
20
20
|
async function getCLIRunOptions({
|
|
21
21
|
headless,
|
|
22
22
|
proxy,
|
|
23
|
-
keepBrowserOpen
|
|
23
|
+
keepBrowserOpen,
|
|
24
|
+
cdpUrl
|
|
24
25
|
}) {
|
|
25
26
|
if (context) {
|
|
26
27
|
await closeCliBrowser();
|
|
27
28
|
}
|
|
29
|
+
if (cdpUrl) {
|
|
30
|
+
return {
|
|
31
|
+
environment: "cdp",
|
|
32
|
+
cdpAddress: cdpUrl
|
|
33
|
+
};
|
|
34
|
+
}
|
|
28
35
|
if (!keepBrowserOpen) {
|
|
29
36
|
return {
|
|
30
37
|
environment: "standalone",
|
|
@@ -22,7 +22,8 @@ function cliCommandWrapper(argsSchema, optionsSchema, fn) {
|
|
|
22
22
|
return (0, _validation.logInvalidInput)(parseResult);
|
|
23
23
|
}
|
|
24
24
|
const [_, parsedOptions] = parseResult.data;
|
|
25
|
-
|
|
25
|
+
const cdpUrl = "cdpUrl" in parsedOptions ? parsedOptions.cdpUrl : undefined;
|
|
26
|
+
keepBrowserOpen = !cdpUrl && "keepBrowserOpen" in parsedOptions && parsedOptions.keepBrowserOpen === true;
|
|
26
27
|
if (keepBrowserOpen) {
|
|
27
28
|
(0, _terminal.terminal)(`^+--keep-open is set, the CLI will not close the last browser after the command completes^:\n`);
|
|
28
29
|
}
|
|
@@ -6,6 +6,7 @@ var _backend = require("./helpers/backend");
|
|
|
6
6
|
var _commands = require("./commands");
|
|
7
7
|
var _helpers = require("./helpers");
|
|
8
8
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
require("../../common/binStartupScript");
|
|
9
10
|
_dotenv.default.config({
|
|
10
11
|
path: `.env`
|
|
11
12
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _dotenv = _interopRequireDefault(require("dotenv"));
|
|
4
|
+
var fs = _interopRequireWildcard(require("fs"));
|
|
5
|
+
var path = _interopRequireWildcard(require("path"));
|
|
6
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
7
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
_dotenv.default.config({
|
|
10
|
+
path: `.env`
|
|
11
|
+
});
|
|
12
|
+
function isStealthModeEnabled() {
|
|
13
|
+
try {
|
|
14
|
+
const intunedConfigPath = path.resolve(process.cwd(), process.env.ROOT || "./", "Intuned.json");
|
|
15
|
+
const configContent = fs.readFileSync(intunedConfigPath, "utf8");
|
|
16
|
+
const config = JSON.parse(configContent);
|
|
17
|
+
return config.stealthMode?.enabled === true;
|
|
18
|
+
} catch (error) {
|
|
19
|
+
console.error("Error reading Intuned.json:", error.message);
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
try {
|
|
24
|
+
if (isStealthModeEnabled()) {
|
|
25
|
+
const currentNodeModules = path.resolve(process.cwd(), "node_modules");
|
|
26
|
+
process.env.NODE_PATH = process.env.NODE_PATH ? `${process.env.NODE_PATH}:${currentNodeModules}` : currentNodeModules;
|
|
27
|
+
require("module").Module._initPaths();
|
|
28
|
+
if (process.env.PLAYWRIGHT_PATCH_SCRIPT_PATH) {
|
|
29
|
+
require(process.env.PLAYWRIGHT_PATCH_SCRIPT_PATH);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
} catch (e) {
|
|
33
|
+
console.error("Failed to apply stealth mode");
|
|
34
|
+
}
|
|
@@ -208,6 +208,13 @@ export declare const settingsSchema: z.ZodObject<{
|
|
|
208
208
|
}, {
|
|
209
209
|
enabled: boolean;
|
|
210
210
|
}>>>;
|
|
211
|
+
stealthMode: z.ZodDefault<z.ZodOptional<z.ZodObject<{
|
|
212
|
+
enabled: z.ZodBoolean;
|
|
213
|
+
}, "strip", z.ZodTypeAny, {
|
|
214
|
+
enabled: boolean;
|
|
215
|
+
}, {
|
|
216
|
+
enabled: boolean;
|
|
217
|
+
}>>>;
|
|
211
218
|
captchaSolver: z.ZodOptional<z.ZodDefault<z.ZodObject<{
|
|
212
219
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
213
220
|
cloudflare: z.ZodOptional<z.ZodObject<{
|
|
@@ -407,6 +414,9 @@ export declare const settingsSchema: z.ZodObject<{
|
|
|
407
414
|
authSessions: {
|
|
408
415
|
enabled: boolean;
|
|
409
416
|
};
|
|
417
|
+
stealthMode: {
|
|
418
|
+
enabled: boolean;
|
|
419
|
+
};
|
|
410
420
|
captchaSolver?: {
|
|
411
421
|
enabled: boolean;
|
|
412
422
|
settings: {
|
|
@@ -456,6 +466,9 @@ export declare const settingsSchema: z.ZodObject<{
|
|
|
456
466
|
authSessions?: {
|
|
457
467
|
enabled: boolean;
|
|
458
468
|
} | undefined;
|
|
469
|
+
stealthMode?: {
|
|
470
|
+
enabled: boolean;
|
|
471
|
+
} | undefined;
|
|
459
472
|
captchaSolver?: {
|
|
460
473
|
enabled?: boolean | undefined;
|
|
461
474
|
cloudflare?: {
|
|
@@ -45,7 +45,13 @@ const authSessionsSchema = z.object({
|
|
|
45
45
|
}).optional().default({
|
|
46
46
|
enabled: false
|
|
47
47
|
});
|
|
48
|
+
const stealthModeSchema = z.object({
|
|
49
|
+
enabled: z.boolean()
|
|
50
|
+
}).optional().default({
|
|
51
|
+
enabled: false
|
|
52
|
+
});
|
|
48
53
|
const settingsSchema = exports.settingsSchema = z.object({
|
|
49
54
|
authSessions: authSessionsSchema,
|
|
55
|
+
stealthMode: stealthModeSchema,
|
|
50
56
|
captchaSolver: captchaSolverSettingsSchema.optional()
|
|
51
57
|
});
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
export declare function executeCLI(apiName: string, mode: "vanilla" | "playwright" | "playwright-standalone" | "playwright-headless", inputData: object | null | undefined, options: {
|
|
3
|
+
cdpAddress: string;
|
|
4
|
+
authSessionPath: undefined | string;
|
|
5
|
+
outputFileId: string | undefined;
|
|
6
|
+
}): Promise<void>;
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.executeCLI = executeCLI;
|
|
8
|
+
var _commander = require("commander");
|
|
9
|
+
var fs = _interopRequireWildcard(require("fs-extra"));
|
|
10
|
+
var _settings = require("../common/utils/settings");
|
|
11
|
+
var _dotenv = _interopRequireDefault(require("dotenv"));
|
|
12
|
+
var _asyncLocalStorage = require("../../common/asyncLocalStorage");
|
|
13
|
+
var _enums = require("../../runtime/enums");
|
|
14
|
+
var _cleanEnvironmentVariables = require("../../common/cleanEnvironmentVariables");
|
|
15
|
+
var _Logger = require("../../common/Logger");
|
|
16
|
+
var _nanoid = require("nanoid");
|
|
17
|
+
var _chalk = _interopRequireDefault(require("chalk"));
|
|
18
|
+
var _runApi = require("../../common/runApi");
|
|
19
|
+
var _tsNodeImport = require("../common/tsNodeImport");
|
|
20
|
+
var _isNil = _interopRequireDefault(require("lodash/isNil"));
|
|
21
|
+
var _constants = require("../../common/constants");
|
|
22
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
23
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
24
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
25
|
+
_dotenv.default.config({
|
|
26
|
+
path: `.env`
|
|
27
|
+
});
|
|
28
|
+
async function executeCLI(apiName, mode, inputData, options) {
|
|
29
|
+
(0, _cleanEnvironmentVariables.cleanEnvironmentVariables)();
|
|
30
|
+
let authSessionPathToUse = null;
|
|
31
|
+
const settings = await (0, _settings.getSettings)();
|
|
32
|
+
if (settings.authSessions.enabled) {
|
|
33
|
+
if (!options.authSessionPath) {
|
|
34
|
+
throw new Error("Auth session is enabled but no auth session provided");
|
|
35
|
+
}
|
|
36
|
+
authSessionPathToUse = options.authSessionPath;
|
|
37
|
+
} else {
|
|
38
|
+
if (options.authSessionPath) {
|
|
39
|
+
throw new Error("Auth session is not enabled but auth session provided. To use auth session please enable it in Intuned.json");
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
const runApiResult = await (0, _runApi.runApi)({
|
|
43
|
+
automationFunction: {
|
|
44
|
+
name: `${_constants.API_FOLDER_NAME}/${apiName}`,
|
|
45
|
+
params: inputData
|
|
46
|
+
},
|
|
47
|
+
auth: authSessionPathToUse ? {
|
|
48
|
+
session: {
|
|
49
|
+
type: "file",
|
|
50
|
+
path: authSessionPathToUse
|
|
51
|
+
}
|
|
52
|
+
} : undefined,
|
|
53
|
+
runOptions: {
|
|
54
|
+
environment: "cdp",
|
|
55
|
+
cdpAddress: options.cdpAddress
|
|
56
|
+
},
|
|
57
|
+
importFunction: _tsNodeImport.tsNodeImport
|
|
58
|
+
});
|
|
59
|
+
if (runApiResult.isErr()) {
|
|
60
|
+
if (runApiResult.error instanceof _runApi.AutomationError) {
|
|
61
|
+
throw runApiResult.error.error;
|
|
62
|
+
}
|
|
63
|
+
console.error(runApiResult.error);
|
|
64
|
+
throw new Error("An error occurred while running the API");
|
|
65
|
+
}
|
|
66
|
+
const {
|
|
67
|
+
result,
|
|
68
|
+
extendedPayloads: payloadToAppend
|
|
69
|
+
} = runApiResult.value;
|
|
70
|
+
const isResponseObject = typeof result === "object" && result !== null;
|
|
71
|
+
const hasMoreThank5Keys = isResponseObject && Object.keys(result).length > 5;
|
|
72
|
+
const hasNestedObjects = isResponseObject && Object.values(result).some(value => typeof value === "object");
|
|
73
|
+
const shouldWriteToFile = isResponseObject && (hasMoreThank5Keys || hasNestedObjects);
|
|
74
|
+
const resultsDir = "/tmp/run-results";
|
|
75
|
+
if (options.outputFileId && shouldWriteToFile) {
|
|
76
|
+
_Logger.logger.info(_chalk.default.underline.bgBlue.white(`Click to Open: Results saved (Run: ${options.outputFileId})`));
|
|
77
|
+
fs.ensureDirSync(resultsDir);
|
|
78
|
+
const path = `${resultsDir}/${options.outputFileId}.json`;
|
|
79
|
+
await fs.writeJson(path, {
|
|
80
|
+
input: inputData,
|
|
81
|
+
output: result
|
|
82
|
+
}, {
|
|
83
|
+
spaces: 2
|
|
84
|
+
});
|
|
85
|
+
} else {
|
|
86
|
+
console.log("result:", result);
|
|
87
|
+
}
|
|
88
|
+
const hasPayloadToAppend = payloadToAppend && payloadToAppend.length > 0;
|
|
89
|
+
if (hasPayloadToAppend && options.outputFileId) {
|
|
90
|
+
_Logger.logger.info(_chalk.default.underline.bgBlue.white(`Click to Open: payloads to append (Run: ${options.outputFileId})`));
|
|
91
|
+
fs.ensureDirSync(resultsDir);
|
|
92
|
+
const path = `${resultsDir}/${options.outputFileId}-payloads-to-append.json`;
|
|
93
|
+
await fs.writeJson(path, payloadToAppend, {
|
|
94
|
+
spaces: 2
|
|
95
|
+
});
|
|
96
|
+
} else if (hasPayloadToAppend) {
|
|
97
|
+
_Logger.logger.info("payload to append:", payloadToAppend);
|
|
98
|
+
_Logger.logger.info("This will only take an effect if this API run was part of a job.");
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
_commander.program.description("run the user function in the cli for testing purposes").option("-i, --input [file]", "input json file").option("-j, --json [json]", "input json string").option("--cdpAddress <cdpAddress>", "CDP address", "http://localhost:9222").option("--authSessionPath <authSession>", "auth session to use when executing the api").option("--outputFileId <outputFileId>", "the output file id to save the result in").option("--proxy <proxy>", "proxy to use").option("--authSessionParameters <authSessionParameters>", "parameters used to create the used auth session").argument("[apiName]", "name of the api", "default").allowUnknownOption().addArgument(new _commander.Argument("<mode>", "mode of execution").choices(["vanilla", "playwright", "playwright-standalone", "playwright-headless"]).default("playwright-standalone").argOptional()).action(async (apiName, mode, options) => {
|
|
102
|
+
let inputData = null;
|
|
103
|
+
if (options.input) {
|
|
104
|
+
inputData = await fs.readJSON(options.input);
|
|
105
|
+
} else if (options.json) {
|
|
106
|
+
inputData = JSON.parse(options.json);
|
|
107
|
+
} else {
|
|
108
|
+
inputData = {};
|
|
109
|
+
}
|
|
110
|
+
let authSessionParametersJson = undefined;
|
|
111
|
+
if (!(0, _isNil.default)(options?.authSessionParameters)) {
|
|
112
|
+
authSessionParametersJson = JSON.parse(options.authSessionParameters);
|
|
113
|
+
}
|
|
114
|
+
await (0, _asyncLocalStorage.runWithContext)({
|
|
115
|
+
runEnvironment: _enums.RunEnvironment.IDE,
|
|
116
|
+
extendedPayloads: [],
|
|
117
|
+
runId: (0, _nanoid.nanoid)(),
|
|
118
|
+
proxy: options.proxy,
|
|
119
|
+
getAuthSessionParameters: authSessionParametersJson !== undefined ? async () => authSessionParametersJson : undefined
|
|
120
|
+
}, () => executeCLI(apiName, mode, inputData, options));
|
|
121
|
+
process.exit(0);
|
|
122
|
+
});
|
|
123
|
+
_commander.program.parse(process.argv);
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
|
|
4
|
+
var _commander = require("commander");
|
|
5
|
+
var _playwrightContext = require("../../common/playwrightContext");
|
|
6
|
+
var _settings = require("../common/utils/settings");
|
|
7
|
+
var _dotenv = _interopRequireDefault(require("dotenv"));
|
|
8
|
+
var _neverthrow = require("neverthrow");
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
+
_dotenv.default.config({
|
|
11
|
+
path: `.env`
|
|
12
|
+
});
|
|
13
|
+
_commander.program.description("load auth session to browser").option("--cdpAddress <cdpAddress>", "CDP address", "http://localhost:9222").option("--authSessionPath <authSession>", "auth session to use when executing the api").allowUnknownOption().action(async ({
|
|
14
|
+
cdpAddress,
|
|
15
|
+
authSessionPath
|
|
16
|
+
}) => {
|
|
17
|
+
const setting = await (0, _settings.getSettings)();
|
|
18
|
+
if (!setting.authSessions.enabled) {
|
|
19
|
+
throw new Error("Auth session is not enabled");
|
|
20
|
+
}
|
|
21
|
+
await (0, _playwrightContext.withPlaywrightContext)({
|
|
22
|
+
cdpAddress
|
|
23
|
+
}, async context => {
|
|
24
|
+
await (0, _playwrightContext.loadSessionToContext)({
|
|
25
|
+
context,
|
|
26
|
+
session: {
|
|
27
|
+
type: "file",
|
|
28
|
+
path: authSessionPath
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
return (0, _neverthrow.ok)({});
|
|
32
|
+
});
|
|
33
|
+
process.exit(0);
|
|
34
|
+
});
|
|
35
|
+
_commander.program.parse(process.argv);
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
|
|
4
|
+
var _commander = require("commander");
|
|
5
|
+
var fs = _interopRequireWildcard(require("fs-extra"));
|
|
6
|
+
var _fileUtils = require("../common/utils/fileUtils");
|
|
7
|
+
var _settings = require("../common/utils/settings");
|
|
8
|
+
var _dotenv = _interopRequireDefault(require("dotenv"));
|
|
9
|
+
var _constants = require("../../common/constants");
|
|
10
|
+
var _runApi = require("../../common/runApi");
|
|
11
|
+
var _tsNodeImport = require("../common/tsNodeImport");
|
|
12
|
+
var _enums = require("../../runtime/enums");
|
|
13
|
+
var _nanoid = require("nanoid");
|
|
14
|
+
var _asyncLocalStorage = require("../../common/asyncLocalStorage");
|
|
15
|
+
var _isNil = _interopRequireDefault(require("lodash/isNil"));
|
|
16
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
17
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
18
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
19
|
+
_dotenv.default.config({
|
|
20
|
+
path: `.env`
|
|
21
|
+
});
|
|
22
|
+
_commander.program.description("run auth session check").option("--cdpAddress <cdpAddress>", "CDP address", "http://localhost:9222").option("--authSessionPath <authSession>", "auth session to use when executing the check").option("--authSessionParameters <authSessionParameters>", "parameters used to create the used auth session").allowUnknownOption().addArgument(new _commander.Argument("<mode>", "mode of execution").choices(["vanilla", "playwright", "playwright-standalone"]).default("playwright-standalone").argOptional()).action(async (mode, {
|
|
23
|
+
cdpAddress,
|
|
24
|
+
authSessionPath,
|
|
25
|
+
authSessionParameters
|
|
26
|
+
}) => {
|
|
27
|
+
const setting = await (0, _settings.getSettings)();
|
|
28
|
+
if (!setting.authSessions.enabled) {
|
|
29
|
+
throw new Error("auth session is not enabled");
|
|
30
|
+
}
|
|
31
|
+
const checkFilePath = (0, _fileUtils.getFullPathInProject)(_constants.AUTH_SESSIONS_FOLDER_NAME, "check");
|
|
32
|
+
if (!fs.exists(checkFilePath)) {
|
|
33
|
+
throw new Error("auth session check file not found");
|
|
34
|
+
}
|
|
35
|
+
let authSessionParametersJson = undefined;
|
|
36
|
+
if (!(0, _isNil.default)(authSessionParameters)) {
|
|
37
|
+
authSessionParametersJson = JSON.parse(authSessionParameters);
|
|
38
|
+
}
|
|
39
|
+
const runApiResult = await (0, _asyncLocalStorage.runWithContext)({
|
|
40
|
+
runEnvironment: _enums.RunEnvironment.IDE,
|
|
41
|
+
extendedPayloads: [],
|
|
42
|
+
runId: (0, _nanoid.nanoid)(),
|
|
43
|
+
getAuthSessionParameters: authSessionParametersJson !== undefined ? async () => authSessionParametersJson : undefined
|
|
44
|
+
}, async () => await (0, _runApi.runApi)({
|
|
45
|
+
automationFunction: {
|
|
46
|
+
name: `${_constants.AUTH_SESSIONS_FOLDER_NAME}/check`
|
|
47
|
+
},
|
|
48
|
+
runOptions: {
|
|
49
|
+
environment: "cdp",
|
|
50
|
+
cdpAddress
|
|
51
|
+
},
|
|
52
|
+
auth: {
|
|
53
|
+
session: {
|
|
54
|
+
type: "file",
|
|
55
|
+
path: authSessionPath
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
importFunction: _tsNodeImport.tsNodeImport
|
|
59
|
+
}));
|
|
60
|
+
if (runApiResult.isErr()) {
|
|
61
|
+
if (runApiResult.error instanceof _runApi.AutomationError) {
|
|
62
|
+
throw runApiResult.error.error;
|
|
63
|
+
}
|
|
64
|
+
console.error(runApiResult.error);
|
|
65
|
+
throw new Error("Error running auth session check");
|
|
66
|
+
}
|
|
67
|
+
const result = runApiResult.value.result;
|
|
68
|
+
console.log("check result", result);
|
|
69
|
+
if (!result) {
|
|
70
|
+
throw new Error("auth session check failed");
|
|
71
|
+
}
|
|
72
|
+
process.exit(0);
|
|
73
|
+
});
|
|
74
|
+
_commander.program.parse(process.argv);
|