@sonisoft/now-sdk-ext-cli 5.5.0 → 5.7.0

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.
@@ -0,0 +1,13 @@
1
+ import { Command } from '@oclif/core';
2
+ export default class BrowserSessionCommand extends Command {
3
+ static description: string;
4
+ static enableJsonFlag: boolean;
5
+ static flags: {
6
+ auth: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
7
+ 'cred-store': import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
8
+ force: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
9
+ output: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
10
+ };
11
+ run(): Promise<unknown>;
12
+ }
13
+ //# sourceMappingURL=browser-session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-session.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/browser-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAQ,MAAM,aAAa,CAAA;AAM1C,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,OAAO;IACxD,MAAM,CAAC,WAAW,SAA0E;IAC5F,MAAM,CAAC,cAAc,UAAO;IAC5B,MAAM,CAAC,KAAK;;;;;MAKX;IAEK,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC;CAgB9B"}
@@ -0,0 +1,31 @@
1
+ import { Command, Flags } from '@oclif/core';
2
+ import { createBrowserSession } from '@sonisoft/now-sdk-ext-core';
3
+ import { silenceSdkLoggers } from '../../common/sdk-logger.js';
4
+ import { writeBrowserSession } from '../../services/browser-session-writer.js';
5
+ export default class BrowserSessionCommand extends Command {
6
+ static description = 'Create a verified Playwright cookie session using a stored SDK alias.';
7
+ static enableJsonFlag = true;
8
+ static flags = {
9
+ auth: Flags.string({ char: 'a', description: 'Stored SDK credential alias.', required: true }),
10
+ 'cred-store': Flags.boolean({ description: 'Use the headless credential store.' }),
11
+ force: Flags.boolean({ description: 'Replace an existing regular output file.' }),
12
+ output: Flags.string({ description: 'Owner-only Playwright storage-state file.', required: true }),
13
+ };
14
+ async run() {
15
+ const { flags } = await this.parse(BrowserSessionCommand);
16
+ silenceSdkLoggers();
17
+ if ((flags['cred-store'] || process.env.SN_CRED_STORE_ENABLE) && process.env.NOW_SDK_KEYCHAIN_PATCHED !== '1') {
18
+ this.error('The requested credential store is inactive. Unset SN_CRED_STORE_DISABLE and check nex auth doctor.');
19
+ }
20
+ const session = await createBrowserSession({ alias: flags.auth });
21
+ const path = await writeBrowserSession(session, flags.output, flags.force);
22
+ const metadata = {
23
+ alias: session.alias, createdAt: session.createdAt, instanceUrl: session.instanceUrl,
24
+ oauthExpiresAt: session.oauthExpiresAt, path,
25
+ };
26
+ if (!this.jsonEnabled())
27
+ this.log(path);
28
+ return metadata;
29
+ }
30
+ }
31
+ //# sourceMappingURL=browser-session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-session.js","sourceRoot":"","sources":["../../../src/commands/auth/browser-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,KAAK,EAAC,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAC,oBAAoB,EAAC,MAAM,4BAA4B,CAAA;AAE/D,OAAO,EAAC,iBAAiB,EAAC,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAC,mBAAmB,EAAC,MAAM,0CAA0C,CAAA;AAE5E,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,OAAO;IACxD,MAAM,CAAC,WAAW,GAAG,uEAAuE,CAAA;IAC5F,MAAM,CAAC,cAAc,GAAG,IAAI,CAAA;IAC5B,MAAM,CAAC,KAAK,GAAG;QACb,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,8BAA8B,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC;QAC5F,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,EAAC,WAAW,EAAE,oCAAoC,EAAC,CAAC;QAChF,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,EAAC,WAAW,EAAE,0CAA0C,EAAC,CAAC;QAC/E,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,EAAC,WAAW,EAAE,2CAA2C,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC;KACjG,CAAA;IAED,KAAK,CAAC,GAAG;QACP,MAAM,EAAC,KAAK,EAAC,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAA;QACvD,iBAAiB,EAAE,CAAA;QACnB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,GAAG,EAAE,CAAC;YAC9G,IAAI,CAAC,KAAK,CAAC,oGAAoG,CAAC,CAAA;QAClH,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,EAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAC,CAAC,CAAA;QAC/D,MAAM,IAAI,GAAG,MAAM,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;QAC1E,MAAM,QAAQ,GAAG;YACf,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW;YACpF,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,IAAI;SAC7C,CAAA;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACvC,OAAO,QAAQ,CAAA;IACjB,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { Command } from '@oclif/core';
2
+ export default class AuthOpen extends Command {
3
+ static description: string;
4
+ static enableJsonFlag: boolean;
5
+ static examples: {
6
+ command: string;
7
+ description: string;
8
+ }[];
9
+ static flags: {
10
+ auth: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
11
+ browser: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<"brave" | "chrome" | "edge", import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
12
+ cdp: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
13
+ 'cred-store': import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
14
+ force: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
15
+ output: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
16
+ };
17
+ run(): Promise<unknown>;
18
+ }
19
+ //# sourceMappingURL=open.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"open.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/open.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAQ,MAAM,aAAa,CAAA;AAwB1C,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IAC3C,MAAM,CAAC,WAAW,SAAwF;IAC1G,MAAM,CAAC,cAAc,UAAO;IAC5B,MAAM,CAAC,QAAQ;;;QAId;IACD,MAAM,CAAC,KAAK;;;;;;;MAWX;IAEK,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC;CAmD9B"}
@@ -0,0 +1,88 @@
1
+ import { Command, Flags } from '@oclif/core';
2
+ import { createBrowserSession, injectBrowserSessionCdp } from '@sonisoft/now-sdk-ext-core';
3
+ import { mkdir } from 'node:fs/promises';
4
+ import { silenceSdkLoggers } from '../../common/sdk-logger.js';
5
+ import { writeBrowserSession } from '../../services/browser-session-writer.js';
6
+ import { allocateLoopbackPort, BROWSER_LABELS, isWindowsBrowserBinary, isWsl, profileDirectory, resolveBrowserBinary, spawnDedicatedBrowser, startWslWindowsCdpBridge, } from '../../services/desktop-browser.service.js';
7
+ function remediationOf(error) {
8
+ if (!error || typeof error !== 'object')
9
+ return;
10
+ const value = error;
11
+ return typeof value.remediation === 'string' ? value.remediation : undefined;
12
+ }
13
+ export default class AuthOpen extends Command {
14
+ static description = 'Open a verified UI session in a dedicated desktop browser using a stored SDK alias.';
15
+ static enableJsonFlag = true;
16
+ static examples = [
17
+ { command: '<%= config.bin %> <%= command.id %> -a bcbsscdev --cred-store', description: 'Open the alias in Edge' },
18
+ { command: '<%= config.bin %> <%= command.id %> -a dev206299 --browser chrome', description: 'Open in Chrome' },
19
+ { command: '<%= config.bin %> <%= command.id %> -a dev206299 --cdp http://127.0.0.1:9222', description: 'Inject into an already-debuggable browser' },
20
+ ];
21
+ static flags = {
22
+ auth: Flags.string({ char: 'a', description: 'Stored SDK credential alias.', required: true }),
23
+ browser: Flags.option({
24
+ default: 'edge',
25
+ description: 'Desktop browser to launch. Ignored when --cdp is set.',
26
+ options: ['edge', 'chrome', 'brave'],
27
+ })(),
28
+ cdp: Flags.string({ description: 'Existing DevTools URL. Skips launching a browser.' }),
29
+ 'cred-store': Flags.boolean({ description: 'Use the headless credential store.' }),
30
+ force: Flags.boolean({ description: 'Replace an existing regular output file.' }),
31
+ output: Flags.string({ description: 'Optional owner-only Playwright storage-state file.' }),
32
+ };
33
+ async run() {
34
+ const { flags } = await this.parse(AuthOpen);
35
+ silenceSdkLoggers();
36
+ if ((flags['cred-store'] || process.env.SN_CRED_STORE_ENABLE) && process.env.NOW_SDK_KEYCHAIN_PATCHED !== '1') {
37
+ this.error('The requested credential store is inactive. Unset SN_CRED_STORE_DISABLE and check nex auth doctor.');
38
+ }
39
+ const browser = flags.browser;
40
+ let disposeBridge;
41
+ try {
42
+ const session = await createBrowserSession({ alias: flags.auth });
43
+ const path = flags.output ? await writeBrowserSession(session, flags.output, flags.force) : undefined;
44
+ let cdpUrl = flags.cdp;
45
+ if (!cdpUrl) {
46
+ const binary = await resolveBrowserBinary(browser);
47
+ if (isWsl() && isWindowsBrowserBinary(binary)) {
48
+ const bridge = await startWslWindowsCdpBridge(flags.auth, binary);
49
+ cdpUrl = bridge.cdpUrl;
50
+ disposeBridge = bridge.dispose;
51
+ }
52
+ else {
53
+ const port = await allocateLoopbackPort();
54
+ const userDataDir = profileDirectory(flags.auth);
55
+ await mkdir(userDataDir, { mode: 0o700, recursive: true });
56
+ spawnDedicatedBrowser({ binary, port, userDataDir });
57
+ cdpUrl = `http://127.0.0.1:${port}`;
58
+ }
59
+ }
60
+ await injectBrowserSessionCdp({
61
+ cdpUrl,
62
+ session,
63
+ ...(disposeBridge ? { timeoutMs: 30_000 } : {}),
64
+ });
65
+ const metadata = {
66
+ alias: session.alias,
67
+ browser,
68
+ cdpUrl,
69
+ instanceUrl: session.instanceUrl,
70
+ ...(path ? { path } : {}),
71
+ ...(session.oauthExpiresAt ? { oauthExpiresAt: session.oauthExpiresAt } : {}),
72
+ };
73
+ if (!this.jsonEnabled())
74
+ this.log(`Opened ${session.instanceUrl} in ${BROWSER_LABELS[browser]}`);
75
+ return metadata;
76
+ }
77
+ catch (error) {
78
+ const remediation = remediationOf(error);
79
+ if (remediation)
80
+ this.error(remediation);
81
+ throw error;
82
+ }
83
+ finally {
84
+ disposeBridge?.();
85
+ }
86
+ }
87
+ }
88
+ //# sourceMappingURL=open.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"open.js","sourceRoot":"","sources":["../../../src/commands/auth/open.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"authenticated-command.d.ts","sourceRoot":"","sources":["../../src/common/authenticated-command.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAS,UAAU,EAAE,MAAM,aAAa,CAAA;AAGxD,OAAO,EAAgD,MAAM,EAAe,kBAAkB,EAA8B,MAAM,4BAA4B,CAAC;AAO/J,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,OAAO,OAAO,IAAI,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,OAAO,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAA;AAC7H,MAAM,MAAM,IAAI,CAAC,CAAC,SAAS,OAAO,OAAO,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;AAE/E,8BAAsB,oBAAoB,CAAC,CAAC,SAAS,OAAO,OAAO,CAAE,SAAQ,OAAO;IAElF,MAAM,CAAC,SAAS;;;;;;;;;MA4Df;IAEC,MAAM,CAAC,cAAc,UAAO;IAChC,SAAS,CAAC,OAAO,EAAG,MAAM,CAAC;IACvB,SAAS,CAAC,IAAI,EAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,KAAK,EAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC/B,SAAS,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IAEnC,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,IAAW,MAAM,CAAC,MAAM,EAAE,MAAM,EAE/B;cAEa,KAAK,CAAC,GAAG,EAAE,KAAK,GAAG;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAC,GAAG,OAAO,CAAC,GAAG,CAAC;cA8BrD,OAAO,CAAC,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;IAO9C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA+FlC;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAIvB;;;;;;;OAOG;IACH,OAAO,CAAC,QAAQ;CA0BjB"}
1
+ {"version":3,"file":"authenticated-command.d.ts","sourceRoot":"","sources":["../../src/common/authenticated-command.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAS,UAAU,EAAE,MAAM,aAAa,CAAA;AAExD,OAAO,EAAgD,MAAM,EAA0C,kBAAkB,EAA8B,MAAM,4BAA4B,CAAC;AAO1L,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,OAAO,OAAO,IAAI,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,OAAO,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAA;AAC7H,MAAM,MAAM,IAAI,CAAC,CAAC,SAAS,OAAO,OAAO,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;AAE/E,8BAAsB,oBAAoB,CAAC,CAAC,SAAS,OAAO,OAAO,CAAE,SAAQ,OAAO;IAElF,MAAM,CAAC,SAAS;;;;;;;;;MA4Df;IAEC,MAAM,CAAC,cAAc,UAAO;IAChC,SAAS,CAAC,OAAO,EAAG,MAAM,CAAC;IACvB,SAAS,CAAC,IAAI,EAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,KAAK,EAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC/B,SAAS,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IAEnC,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,IAAW,MAAM,CAAC,MAAM,EAAE,MAAM,EAE/B;cAEa,KAAK,CAAC,GAAG,EAAE,KAAK,GAAG;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAC,GAAG,OAAO,CAAC,GAAG,CAAC;cA8BrD,OAAO,CAAC,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;IAO9C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgGlC;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAIvB;;;;;;;OAOG;IACH,OAAO,CAAC,QAAQ;CA0BjB"}
@@ -1,7 +1,6 @@
1
1
  import { Command, Flags } from '@oclif/core';
2
- import { getCredentials } from "@servicenow/sdk-cli/dist/auth/index.js";
3
2
  import { logger as sdkLogger } from '@servicenow/sdk-cli/dist/logger/index.js';
4
- import { configureLogging, flushLogs, isPolicyRefusal, redactValue, ServiceNowInstance } from '@sonisoft/now-sdk-ext-core';
3
+ import { configureLogging, flushLogs, isPolicyRefusal, redactValue, resolveSessionCredentials, ServiceNowInstance } from '@sonisoft/now-sdk-ext-core';
5
4
  import { LogFactory } from '../util/log-factory.js';
6
5
  import { installCliPolicy } from './policy.js';
7
6
  export class AuthenticatedCommand extends Command {
@@ -176,7 +175,7 @@ export class AuthenticatedCommand extends Command {
176
175
  const alias = flags.auth || "fluent-default";
177
176
  let credential;
178
177
  try {
179
- credential = await getCredentials(alias);
178
+ credential = await resolveSessionCredentials(alias);
180
179
  }
181
180
  catch (error) {
182
181
  // getCredentials throws for an unknown alias, but it also throws when the
@@ -197,7 +196,8 @@ export class AuthenticatedCommand extends Command {
197
196
  }
198
197
  const snSettings = {
199
198
  alias: flags.auth,
200
- credential
199
+ credential,
200
+ credentialProvider: () => resolveSessionCredentials(alias),
201
201
  };
202
202
  this.instance = new ServiceNowInstance(snSettings);
203
203
  }
@@ -1 +1 @@
1
- {"version":3,"file":"authenticated-command.js","sourceRoot":"","sources":["../../src/common/authenticated-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authenticated-command.js","sourceRoot":"","sources":["../../src/common/authenticated-command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Silence every installed SDK logger copy.
3
+ *
4
+ * Core 6.6.0 may nest `@servicenow/sdk-cli` 4.12 beside the CLI's own copy.
5
+ * `createBrowserSession` logs through that nested logger, so silencing only
6
+ * the top-level import leaks `[now-sdk]` refresh lines onto stdout.
7
+ */
8
+ export declare function silenceSdkLoggers(): void;
9
+ //# sourceMappingURL=sdk-logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk-logger.d.ts","sourceRoot":"","sources":["../../src/common/sdk-logger.ts"],"names":[],"mappings":"AAKA;;;;;;GAMG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAQxC"}
@@ -0,0 +1,21 @@
1
+ import { logger as sdkLogger } from '@servicenow/sdk-cli/dist/logger/index.js';
2
+ import { createRequire } from 'node:module';
3
+ const require = createRequire(import.meta.url);
4
+ /**
5
+ * Silence every installed SDK logger copy.
6
+ *
7
+ * Core 6.6.0 may nest `@servicenow/sdk-cli` 4.12 beside the CLI's own copy.
8
+ * `createBrowserSession` logs through that nested logger, so silencing only
9
+ * the top-level import leaks `[now-sdk]` refresh lines onto stdout.
10
+ */
11
+ export function silenceSdkLoggers() {
12
+ sdkLogger.setLevel('silent');
13
+ try {
14
+ const coreRequire = createRequire(require.resolve('@sonisoft/now-sdk-ext-core/package.json'));
15
+ coreRequire('@servicenow/sdk-cli/dist/logger/index.js').logger.setLevel('silent');
16
+ }
17
+ catch {
18
+ // A single sdk-cli copy is enough.
19
+ }
20
+ }
21
+ //# sourceMappingURL=sdk-logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk-logger.js","sourceRoot":"","sources":["../../src/common/sdk-logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,IAAI,SAAS,EAAC,MAAM,0CAA0C,CAAA;AAC5E,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAA;AAEzC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAE9C;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB;IAC/B,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAC5B,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC,CAAA;QAC7F,WAAW,CAAC,0CAA0C,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACnF,CAAC;IAAC,MAAM,CAAC;QACP,mCAAmC;IACrC,CAAC;AACH,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { BrowserSession } from '@sonisoft/now-sdk-ext-core';
2
+ /** Persist browser state without exposing credentials through command output. */
3
+ export declare function writeBrowserSession(session: BrowserSession, output: string, force?: boolean): Promise<string>;
4
+ //# sourceMappingURL=browser-session-writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-session-writer.d.ts","sourceRoot":"","sources":["../../src/services/browser-session-writer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,4BAA4B,CAAA;AAM9D,iFAAiF;AACjF,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAqCjH"}
@@ -0,0 +1,52 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { link, lstat, mkdir, open, rename, unlink } from 'node:fs/promises';
3
+ import { dirname, resolve } from 'node:path';
4
+ /** Persist browser state without exposing credentials through command output. */
5
+ export async function writeBrowserSession(session, output, force = false) {
6
+ const path = resolve(output);
7
+ const parent = dirname(path);
8
+ await mkdir(parent, { mode: 0o700, recursive: true });
9
+ try {
10
+ const existing = await lstat(path);
11
+ if (existing.isSymbolicLink() || !existing.isFile())
12
+ throw new Error('Auth output must be a regular file.');
13
+ if (!force)
14
+ throw new Error('Auth output exists. Use --force to replace it.');
15
+ }
16
+ catch (error) {
17
+ if (error.code !== 'ENOENT')
18
+ throw error;
19
+ }
20
+ const temporary = resolve(parent, '.auth-' + randomUUID());
21
+ try {
22
+ const handle = await open(temporary, 'wx', 0o600);
23
+ try {
24
+ await handle.writeFile(JSON.stringify(session.storageState));
25
+ await handle.sync();
26
+ }
27
+ finally {
28
+ await handle.close();
29
+ }
30
+ if (force) {
31
+ const current = await lstat(path).catch((error) => {
32
+ if (error.code === 'ENOENT')
33
+ return;
34
+ throw error;
35
+ });
36
+ if (current && (!current.isFile() || current.isSymbolicLink()))
37
+ throw new Error('Auth output must be a regular file.');
38
+ await rename(temporary, path);
39
+ }
40
+ else {
41
+ await link(temporary, path);
42
+ }
43
+ return path;
44
+ }
45
+ finally {
46
+ await unlink(temporary).catch((error) => {
47
+ if (error.code !== 'ENOENT')
48
+ throw error;
49
+ });
50
+ }
51
+ }
52
+ //# sourceMappingURL=browser-session-writer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-session-writer.js","sourceRoot":"","sources":["../../src/services/browser-session-writer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,UAAU,EAAC,MAAM,aAAa,CAAA;AACtC,OAAO,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAC,MAAM,kBAAkB,CAAA;AACzE,OAAO,EAAC,OAAO,EAAE,OAAO,EAAC,MAAM,WAAW,CAAA;AAE1C,iFAAiF;AACjF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAAuB,EAAE,MAAc,EAAE,KAAK,GAAG,KAAK;IAC9F,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5B,MAAM,KAAK,CAAC,MAAM,EAAE,EAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAC,CAAC,CAAA;IACnD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,CAAA;QAClC,IAAI,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QAC3G,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;IAC/E,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,MAAM,KAAK,CAAA;IACrE,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,QAAQ,GAAG,UAAU,EAAE,CAAC,CAAA;IAC1D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QACjD,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAA;YAC5D,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;QACrB,CAAC;gBAAS,CAAC;YAAC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;QAAC,CAAC;QAElC,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBACzD,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;oBAAE,OAAM;gBAC9D,MAAM,KAAK,CAAA;YACb,CAAC,CAAC,CAAA;YACF,IAAI,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;YACtH,MAAM,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QAC/B,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QAC7B,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAC/C,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAA;QACrE,CAAC,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
@@ -0,0 +1,56 @@
1
+ import { type ChildProcess, execFile, spawn } from 'node:child_process';
2
+ import { mkdir, writeFile } from 'node:fs/promises';
3
+ export type DesktopBrowserName = 'brave' | 'chrome' | 'edge';
4
+ export declare const BROWSER_LABELS: Record<DesktopBrowserName, string>;
5
+ declare const execFileAsync: typeof execFile.__promisify__;
6
+ /** User-mode TCP pipe so WSL can reach a Windows-loopback DevTools port. */
7
+ export declare const CDP_RELAY_SOURCE = "'use strict';\nconst net = require('net');\nconst listenHost = process.argv[2];\nconst port = Number(process.argv[3]);\nif (!listenHost || !Number.isInteger(port)) process.exit(2);\nconst server = net.createServer((client) => {\n const upstream = net.connect(port, '127.0.0.1');\n const close = () => { client.destroy(); upstream.destroy(); };\n client.pipe(upstream);\n upstream.pipe(client);\n client.on('error', close);\n upstream.on('error', close);\n});\nserver.on('error', () => process.exit(1));\nserver.listen(port, listenHost);\n";
8
+ export declare function isWsl(env?: NodeJS.ProcessEnv): boolean;
9
+ export declare function isWindowsBrowserBinary(binary: string): boolean;
10
+ export declare function profileDirectory(alias: string, env?: NodeJS.ProcessEnv): string;
11
+ export declare function toWslPath(windowsPath: string): string;
12
+ export declare function browserCandidates(name: DesktopBrowserName, options?: {
13
+ env?: NodeJS.ProcessEnv;
14
+ platform?: NodeJS.Platform;
15
+ }): string[];
16
+ export declare function resolveBrowserBinary(name: DesktopBrowserName, options?: {
17
+ env?: NodeJS.ProcessEnv;
18
+ exists?: (path: string) => Promise<boolean>;
19
+ platform?: NodeJS.Platform;
20
+ }): Promise<string>;
21
+ export declare function allocateLoopbackPort(): Promise<number>;
22
+ export declare function browserLaunchArgs(port: number, userDataDir: string): string[];
23
+ export declare function spawnDedicatedBrowser(options: {
24
+ binary: string;
25
+ port: number;
26
+ spawn?: typeof spawn;
27
+ userDataDir: string;
28
+ }): ChildProcess;
29
+ export declare function parseDedicatedBrowserPort(commandLine: string, alias: string): number | undefined;
30
+ export declare function findDedicatedWindowsBrowserPort(alias: string, options?: {
31
+ commandLines?: string[];
32
+ execFile?: typeof execFileAsync;
33
+ }): Promise<number | undefined>;
34
+ export declare function windowsProfileDirectory(alias: string, localAppData: string): string;
35
+ export declare function parseProcNetRouteGateway(table: string): string | undefined;
36
+ export declare function wslWindowsHost(env?: NodeJS.ProcessEnv, routeTable?: string): string | undefined;
37
+ export declare function resolveWindowsLocalAppData(env?: NodeJS.ProcessEnv): Promise<string>;
38
+ export declare function readWslWindowsHost(env?: NodeJS.ProcessEnv): Promise<string>;
39
+ export declare function startWslWindowsCdpBridge(alias: string, binary: string, options?: {
40
+ env?: NodeJS.ProcessEnv;
41
+ existingPort?: number;
42
+ exists?: (path: string) => Promise<boolean>;
43
+ host?: string;
44
+ localAppData?: string;
45
+ mkdir?: typeof mkdir;
46
+ nodeBinary?: string;
47
+ port?: number;
48
+ spawn?: typeof spawn;
49
+ writeFile?: typeof writeFile;
50
+ }): Promise<{
51
+ cdpUrl: string;
52
+ dispose: () => void;
53
+ userDataDir: string;
54
+ }>;
55
+ export {};
56
+ //# sourceMappingURL=desktop-browser.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"desktop-browser.service.d.ts","sourceRoot":"","sources":["../../src/services/desktop-browser.service.ts"],"names":[],"mappings":"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"}