@opendatalabs/connect 0.8.1 → 0.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/README.md +58 -0
  2. package/dist/cli/bin.d.ts +3 -0
  3. package/dist/cli/bin.d.ts.map +1 -0
  4. package/dist/cli/bin.js +15 -0
  5. package/dist/cli/bin.js.map +1 -0
  6. package/dist/cli/index.d.ts +89 -0
  7. package/dist/cli/index.d.ts.map +1 -0
  8. package/dist/cli/index.js +3844 -0
  9. package/dist/cli/index.js.map +1 -0
  10. package/dist/cli/main.d.ts +2 -0
  11. package/dist/cli/main.d.ts.map +1 -0
  12. package/dist/cli/main.js +10 -0
  13. package/dist/cli/main.js.map +1 -0
  14. package/dist/cli/mcp-server.d.ts +15 -0
  15. package/dist/cli/mcp-server.d.ts.map +1 -0
  16. package/dist/cli/mcp-server.js +199 -0
  17. package/dist/cli/mcp-server.js.map +1 -0
  18. package/dist/cli/queries.d.ts +128 -0
  19. package/dist/cli/queries.d.ts.map +1 -0
  20. package/dist/cli/queries.js +415 -0
  21. package/dist/cli/queries.js.map +1 -0
  22. package/dist/cli/render/capabilities.d.ts +9 -0
  23. package/dist/cli/render/capabilities.d.ts.map +1 -0
  24. package/dist/cli/render/capabilities.js +24 -0
  25. package/dist/cli/render/capabilities.js.map +1 -0
  26. package/dist/cli/render/connect-renderer.d.ts +18 -0
  27. package/dist/cli/render/connect-renderer.d.ts.map +1 -0
  28. package/dist/cli/render/connect-renderer.js +255 -0
  29. package/dist/cli/render/connect-renderer.js.map +1 -0
  30. package/dist/cli/render/format.d.ts +27 -0
  31. package/dist/cli/render/format.d.ts.map +1 -0
  32. package/dist/cli/render/format.js +111 -0
  33. package/dist/cli/render/format.js.map +1 -0
  34. package/dist/cli/render/index.d.ts +7 -0
  35. package/dist/cli/render/index.d.ts.map +1 -0
  36. package/dist/cli/render/index.js +7 -0
  37. package/dist/cli/render/index.js.map +1 -0
  38. package/dist/cli/render/progress.d.ts +11 -0
  39. package/dist/cli/render/progress.d.ts.map +1 -0
  40. package/dist/cli/render/progress.js +56 -0
  41. package/dist/cli/render/progress.js.map +1 -0
  42. package/dist/cli/render/symbols.d.ts +11 -0
  43. package/dist/cli/render/symbols.d.ts.map +1 -0
  44. package/dist/cli/render/symbols.js +21 -0
  45. package/dist/cli/render/symbols.js.map +1 -0
  46. package/dist/cli/render/theme.d.ts +15 -0
  47. package/dist/cli/render/theme.d.ts.map +1 -0
  48. package/dist/cli/render/theme.js +41 -0
  49. package/dist/cli/render/theme.js.map +1 -0
  50. package/dist/cli/search-select.d.ts +17 -0
  51. package/dist/cli/search-select.d.ts.map +1 -0
  52. package/dist/cli/search-select.js +29 -0
  53. package/dist/cli/search-select.js.map +1 -0
  54. package/dist/cli/update-check-worker.d.ts +2 -0
  55. package/dist/cli/update-check-worker.d.ts.map +1 -0
  56. package/dist/cli/update-check-worker.js +55 -0
  57. package/dist/cli/update-check-worker.js.map +1 -0
  58. package/dist/cli/update-check.d.ts +21 -0
  59. package/dist/cli/update-check.d.ts.map +1 -0
  60. package/dist/cli/update-check.js +52 -0
  61. package/dist/cli/update-check.js.map +1 -0
  62. package/dist/connectors/index.d.ts +2 -0
  63. package/dist/connectors/index.d.ts.map +1 -0
  64. package/dist/connectors/index.js +2 -0
  65. package/dist/connectors/index.js.map +1 -0
  66. package/dist/connectors/registry.d.ts +55 -0
  67. package/dist/connectors/registry.d.ts.map +1 -0
  68. package/dist/connectors/registry.js +298 -0
  69. package/dist/connectors/registry.js.map +1 -0
  70. package/dist/core/cli-types.d.ts +692 -0
  71. package/dist/core/cli-types.d.ts.map +1 -0
  72. package/dist/core/cli-types.js +322 -0
  73. package/dist/core/cli-types.js.map +1 -0
  74. package/dist/core/index.d.ts +4 -0
  75. package/dist/core/index.d.ts.map +1 -1
  76. package/dist/core/index.js +3 -0
  77. package/dist/core/index.js.map +1 -1
  78. package/dist/core/paths.d.ts +28 -0
  79. package/dist/core/paths.d.ts.map +1 -0
  80. package/dist/core/paths.js +89 -0
  81. package/dist/core/paths.js.map +1 -0
  82. package/dist/core/state-store.d.ts +39 -0
  83. package/dist/core/state-store.d.ts.map +1 -0
  84. package/dist/core/state-store.js +101 -0
  85. package/dist/core/state-store.js.map +1 -0
  86. package/dist/core/types.d.ts +2 -0
  87. package/dist/core/types.d.ts.map +1 -1
  88. package/dist/personal-server/client.d.ts +34 -0
  89. package/dist/personal-server/client.d.ts.map +1 -0
  90. package/dist/personal-server/client.js +94 -0
  91. package/dist/personal-server/client.js.map +1 -0
  92. package/dist/personal-server/index.d.ts +18 -0
  93. package/dist/personal-server/index.d.ts.map +1 -0
  94. package/dist/personal-server/index.js +123 -0
  95. package/dist/personal-server/index.js.map +1 -0
  96. package/dist/personal-server/scope-resolver.d.ts +22 -0
  97. package/dist/personal-server/scope-resolver.d.ts.map +1 -0
  98. package/dist/personal-server/scope-resolver.js +68 -0
  99. package/dist/personal-server/scope-resolver.js.map +1 -0
  100. package/dist/runtime/core/contracts.d.ts +84 -0
  101. package/dist/runtime/core/contracts.d.ts.map +1 -0
  102. package/dist/runtime/core/contracts.js +2 -0
  103. package/dist/runtime/core/contracts.js.map +1 -0
  104. package/dist/runtime/core/index.d.ts +2 -0
  105. package/dist/runtime/core/index.d.ts.map +1 -0
  106. package/dist/runtime/core/index.js +2 -0
  107. package/dist/runtime/core/index.js.map +1 -0
  108. package/dist/runtime/index.d.ts +4 -0
  109. package/dist/runtime/index.d.ts.map +1 -0
  110. package/dist/runtime/index.js +3 -0
  111. package/dist/runtime/index.js.map +1 -0
  112. package/dist/runtime/managed-playwright.d.ts +42 -0
  113. package/dist/runtime/managed-playwright.d.ts.map +1 -0
  114. package/dist/runtime/managed-playwright.js +178 -0
  115. package/dist/runtime/managed-playwright.js.map +1 -0
  116. package/dist/runtime/playwright/browser.d.ts +12 -0
  117. package/dist/runtime/playwright/browser.d.ts.map +1 -0
  118. package/dist/runtime/playwright/browser.js +229 -0
  119. package/dist/runtime/playwright/browser.js.map +1 -0
  120. package/dist/runtime/playwright/in-process-run.d.ts +6 -0
  121. package/dist/runtime/playwright/in-process-run.d.ts.map +1 -0
  122. package/dist/runtime/playwright/in-process-run.js +628 -0
  123. package/dist/runtime/playwright/in-process-run.js.map +1 -0
  124. package/dist/runtime/playwright/index.d.ts +3 -0
  125. package/dist/runtime/playwright/index.d.ts.map +1 -0
  126. package/dist/runtime/playwright/index.js +3 -0
  127. package/dist/runtime/playwright/index.js.map +1 -0
  128. package/dist/runtime/repo-paths.d.ts +2 -0
  129. package/dist/runtime/repo-paths.d.ts.map +1 -0
  130. package/dist/runtime/repo-paths.js +36 -0
  131. package/dist/runtime/repo-paths.js.map +1 -0
  132. package/dist/server/config.d.ts +2 -0
  133. package/dist/server/config.d.ts.map +1 -1
  134. package/dist/server/config.js +1 -0
  135. package/dist/server/config.js.map +1 -1
  136. package/dist/server/connect.d.ts.map +1 -1
  137. package/dist/server/connect.js +4 -0
  138. package/dist/server/connect.js.map +1 -1
  139. package/dist/skills/index.d.ts +4 -0
  140. package/dist/skills/index.d.ts.map +1 -0
  141. package/dist/skills/index.js +3 -0
  142. package/dist/skills/index.js.map +1 -0
  143. package/dist/skills/paths.d.ts +33 -0
  144. package/dist/skills/paths.d.ts.map +1 -0
  145. package/dist/skills/paths.js +81 -0
  146. package/dist/skills/paths.js.map +1 -0
  147. package/dist/skills/registry.d.ts +48 -0
  148. package/dist/skills/registry.d.ts.map +1 -0
  149. package/dist/skills/registry.js +173 -0
  150. package/dist/skills/registry.js.map +1 -0
  151. package/package.json +51 -4
@@ -0,0 +1,178 @@
1
+ import fsp from "node:fs/promises";
2
+ import path from "node:path";
3
+ import { createRequire } from "node:module";
4
+ import { execFile } from "node:child_process";
5
+ import { promisify } from "node:util";
6
+ import { ensureParentDir, getBrowserProfilesDir, getConnectorCacheDir, getVanaHome, getLogsDir, getTimestampedLogPath, } from "../core/index.js";
7
+ import { fetchConnectorToCache } from "../connectors/registry.js";
8
+ import { getBrowserCacheDir, resolveBrowserPath, startInProcessConnectorRun, } from "./playwright/index.js";
9
+ import { findDataConnectorsDir } from "./repo-paths.js";
10
+ const require = createRequire(import.meta.url);
11
+ const execFileAsync = promisify(execFile);
12
+ export class ManagedPlaywrightRuntime {
13
+ get capabilities() {
14
+ return {
15
+ supportsHeaded: process.platform !== "linux" ||
16
+ Boolean(process.env.DISPLAY) ||
17
+ Boolean(process.env.WAYLAND_DISPLAY),
18
+ supportsManagedProfiles: true,
19
+ supportsScreenshots: true,
20
+ };
21
+ }
22
+ get runtimePath() {
23
+ return getResolvedRuntimePath();
24
+ }
25
+ get state() {
26
+ return this.runtimePath ? "installed" : "missing";
27
+ }
28
+ async ensureInstalled(_autoApprove) {
29
+ const runtime = this.state;
30
+ if (runtime === "installed") {
31
+ return { runtime, runtimePath: this.runtimePath };
32
+ }
33
+ const logPath = getTimestampedLogPath("setup");
34
+ await ensureParentDir(logPath);
35
+ const homeDir = getVanaHome();
36
+ await fsp.mkdir(homeDir, { recursive: true });
37
+ await fsp.mkdir(getConnectorCacheDir(), { recursive: true });
38
+ await fsp.mkdir(getBrowserProfilesDir(), { recursive: true });
39
+ await fsp.mkdir(getBrowserCacheDir(), { recursive: true });
40
+ await installChromium(logPath);
41
+ return {
42
+ runtime: this.state,
43
+ runtimePath: this.runtimePath,
44
+ logPath,
45
+ };
46
+ }
47
+ async fetchConnector(source, currentVersion) {
48
+ const dataConnectorsDir = findDataConnectorsDir();
49
+ const logPath = getTimestampedLogPath(`fetch-${source}`);
50
+ await ensureParentDir(logPath);
51
+ try {
52
+ const resolution = await fetchConnectorToCache(source, getConnectorCacheDir(), dataConnectorsDir ?? undefined, currentVersion);
53
+ await fsp.writeFile(logPath, `${JSON.stringify({
54
+ type: "connector-resolved",
55
+ source: resolution.source,
56
+ connectorPath: resolution.connectorPath,
57
+ }, null, 2)}\n`, "utf8");
58
+ return {
59
+ connectorPath: resolution.connectorPath,
60
+ logPath,
61
+ version: resolution.version,
62
+ updated: resolution.updated,
63
+ previousVersion: resolution.previousVersion,
64
+ };
65
+ }
66
+ catch (error) {
67
+ await fsp.writeFile(logPath, `${error instanceof Error ? (error.stack ?? error.message) : String(error)}\n`, "utf8");
68
+ if (error && typeof error === "object") {
69
+ Object.assign(error, { logPath });
70
+ }
71
+ throw error;
72
+ }
73
+ }
74
+ async *runConnector(options) {
75
+ await fsp.mkdir(getLogsDir(), { recursive: true });
76
+ const logPath = getTimestampedLogPath(`run-${options.source}`);
77
+ const handle = startInProcessConnectorRun({
78
+ request: options,
79
+ logPath,
80
+ });
81
+ for await (const event of handle.events()) {
82
+ yield event;
83
+ }
84
+ }
85
+ }
86
+ export async function installChromium(logPath) {
87
+ const browserCacheDir = getBrowserCacheDir();
88
+ const previousBrowserPath = process.env.PLAYWRIGHT_BROWSERS_PATH;
89
+ const previousSkipGc = process.env.PLAYWRIGHT_SKIP_BROWSER_GC;
90
+ try {
91
+ process.env.PLAYWRIGHT_BROWSERS_PATH = browserCacheDir;
92
+ process.env.PLAYWRIGHT_SKIP_BROWSER_GC = "1";
93
+ await ensureParentDir(logPath);
94
+ await fsp.writeFile(logPath, `Installing Chromium into ${browserCacheDir}\n`, "utf8");
95
+ const cliInstalled = await installChromiumViaPackagedCli(logPath, browserCacheDir);
96
+ if (!cliInstalled) {
97
+ await fsp.appendFile(logPath, "Falling back to Playwright internal registry install.\n", "utf8");
98
+ const { registry } = require(require.resolve("playwright-core/lib/server/registry/index", {
99
+ paths: [path.dirname(require.resolve("playwright/package.json"))],
100
+ }));
101
+ const executables = [];
102
+ if (process.platform === "win32") {
103
+ executables.push(registry.findExecutable("winldd"));
104
+ }
105
+ executables.push(registry.findExecutable("chromium"));
106
+ await registry.install(executables);
107
+ }
108
+ await fsp.appendFile(logPath, "Chromium installation complete.\n", "utf8");
109
+ }
110
+ catch (error) {
111
+ await ensureParentDir(logPath);
112
+ await fsp.appendFile(logPath, `${error instanceof Error ? (error.stack ?? error.message) : String(error)}\n`, "utf8");
113
+ throw error;
114
+ }
115
+ finally {
116
+ if (previousBrowserPath === undefined) {
117
+ delete process.env.PLAYWRIGHT_BROWSERS_PATH;
118
+ }
119
+ else {
120
+ process.env.PLAYWRIGHT_BROWSERS_PATH = previousBrowserPath;
121
+ }
122
+ if (previousSkipGc === undefined) {
123
+ delete process.env.PLAYWRIGHT_SKIP_BROWSER_GC;
124
+ }
125
+ else {
126
+ process.env.PLAYWRIGHT_SKIP_BROWSER_GC = previousSkipGc;
127
+ }
128
+ }
129
+ }
130
+ export async function installChromiumViaPackagedCli(logPath, browserCacheDir) {
131
+ const playwrightCliPath = getPlaywrightCliPath();
132
+ if (!playwrightCliPath) {
133
+ await fsp.appendFile(logPath, "Playwright packaged CLI not found. Skipping CLI install path.\n", "utf8");
134
+ return false;
135
+ }
136
+ try {
137
+ const { stdout, stderr } = await execFileAsync(process.execPath, [playwrightCliPath, "install", "chromium"], {
138
+ env: {
139
+ ...process.env,
140
+ PLAYWRIGHT_BROWSERS_PATH: browserCacheDir,
141
+ PLAYWRIGHT_SKIP_BROWSER_GC: "1",
142
+ },
143
+ windowsHide: true,
144
+ });
145
+ if (stdout) {
146
+ await fsp.appendFile(logPath, stdout, "utf8");
147
+ }
148
+ if (stderr) {
149
+ await fsp.appendFile(logPath, stderr, "utf8");
150
+ }
151
+ return true;
152
+ }
153
+ catch (error) {
154
+ const details = error instanceof Error ? (error.stack ?? error.message) : String(error);
155
+ await fsp.appendFile(logPath, `Playwright packaged CLI install failed.\n${details}\n`, "utf8");
156
+ return false;
157
+ }
158
+ }
159
+ export function getPlaywrightCliPath() {
160
+ try {
161
+ const playwrightPackagePath = require.resolve("playwright/package.json");
162
+ const playwrightRoot = path.dirname(playwrightPackagePath);
163
+ const cliPath = path.join(playwrightRoot, "cli.js");
164
+ return cliPath;
165
+ }
166
+ catch {
167
+ return null;
168
+ }
169
+ }
170
+ function getResolvedRuntimePath() {
171
+ try {
172
+ return resolveBrowserPath();
173
+ }
174
+ catch {
175
+ return null;
176
+ }
177
+ }
178
+ //# sourceMappingURL=managed-playwright.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managed-playwright.js","sourceRoot":"","sources":["../../src/runtime/managed-playwright.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { type BrowserContext } from "playwright";
2
+ export declare function getBrowserCacheDir(): string;
3
+ export declare function getSystemChromePath(): string | null;
4
+ export declare function getDownloadedChromiumPath(): string | null;
5
+ export declare function isSystemChrome(browserPath: string | null): boolean;
6
+ export declare function getChromeProfileDir(chromeRoot: string): string | null;
7
+ export declare function supportsSystemChromeCookieImport(): boolean;
8
+ export declare function importChromeCookies(userDataDir: string, browserPath: string | null): void;
9
+ export declare function resolveBrowserPath(): string;
10
+ export declare function launchPersistentContext(userDataDir: string, headless: boolean, browserPath: string | null): Promise<BrowserContext>;
11
+ export declare function getDefaultUserDataDir(slug: string): string;
12
+ //# sourceMappingURL=browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../src/runtime/playwright/browser.ts"],"names":[],"mappings":"AAKA,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAyC3D,wBAAgB,kBAAkB,IAAI,MAAM,CAe3C;AAED,wBAAgB,mBAAmB,IAAI,MAAM,GAAG,IAAI,CAuBnD;AAED,wBAAgB,yBAAyB,IAAI,MAAM,GAAG,IAAI,CAqEzD;AAED,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAelE;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAuBrE;AAED,wBAAgB,gCAAgC,IAAI,OAAO,CAQ1D;AAED,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,GAAG,IAAI,GACzB,IAAI,CAkDN;AAED,wBAAgB,kBAAkB,IAAI,MAAM,CAkB3C;AAED,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,OAAO,EACjB,WAAW,EAAE,MAAM,GAAG,IAAI,GACzB,OAAO,CAAC,cAAc,CAAC,CAmCzB;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE1D"}
@@ -0,0 +1,229 @@
1
+ import fs from "node:fs";
2
+ import path from "node:path";
3
+ import os from "node:os";
4
+ import { execFileSync } from "node:child_process";
5
+ import { chromium } from "playwright";
6
+ const CHROME_PATHS = {
7
+ darwin: "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome",
8
+ win32: "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe",
9
+ linux: "/usr/bin/google-chrome",
10
+ aix: undefined,
11
+ android: undefined,
12
+ freebsd: undefined,
13
+ haiku: undefined,
14
+ openbsd: undefined,
15
+ cygwin: undefined,
16
+ netbsd: undefined,
17
+ sunos: undefined,
18
+ };
19
+ const CHROME_PROFILE_DIRS = {
20
+ darwin: path.join(process.env.HOME || "", "Library", "Application Support", "Google", "Chrome"),
21
+ win32: path.join(process.env.LOCALAPPDATA || "", "Google", "Chrome", "User Data"),
22
+ linux: path.join(process.env.HOME || "", ".config", "google-chrome"),
23
+ aix: undefined,
24
+ android: undefined,
25
+ freebsd: undefined,
26
+ haiku: undefined,
27
+ openbsd: undefined,
28
+ cygwin: undefined,
29
+ netbsd: undefined,
30
+ sunos: undefined,
31
+ };
32
+ export function getBrowserCacheDir() {
33
+ if (process.env.PLAYWRIGHT_BROWSERS_PATH) {
34
+ return process.env.PLAYWRIGHT_BROWSERS_PATH;
35
+ }
36
+ const home = process.env.HOME || process.env.USERPROFILE || "";
37
+ const candidates = [path.join(home, ".vana", "browsers")];
38
+ for (const dir of candidates) {
39
+ if (fs.existsSync(dir)) {
40
+ return dir;
41
+ }
42
+ }
43
+ return candidates[0];
44
+ }
45
+ export function getSystemChromePath() {
46
+ const chromePath = CHROME_PATHS[process.platform];
47
+ if (chromePath && fs.existsSync(chromePath)) {
48
+ return chromePath;
49
+ }
50
+ if (process.platform === "win32") {
51
+ const altPaths = [
52
+ "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe",
53
+ path.join(process.env.LOCALAPPDATA || "", "Google\\Chrome\\Application\\chrome.exe"),
54
+ "C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe",
55
+ ];
56
+ for (const candidate of altPaths) {
57
+ if (fs.existsSync(candidate)) {
58
+ return candidate;
59
+ }
60
+ }
61
+ }
62
+ return null;
63
+ }
64
+ export function getDownloadedChromiumPath() {
65
+ const cacheDir = getBrowserCacheDir();
66
+ if (!fs.existsSync(cacheDir)) {
67
+ return null;
68
+ }
69
+ const chromiumDir = fs
70
+ .readdirSync(cacheDir)
71
+ .find((entry) => entry.startsWith("chromium-") && !entry.includes("headless"));
72
+ if (!chromiumDir) {
73
+ return null;
74
+ }
75
+ const chromiumPath = path.join(cacheDir, chromiumDir);
76
+ const candidates = process.platform === "darwin"
77
+ ? [
78
+ path.join(chromiumPath, "chrome-mac-arm64", "Google Chrome for Testing.app", "Contents", "MacOS", "Google Chrome for Testing"),
79
+ path.join(chromiumPath, "chrome-mac", "Google Chrome for Testing.app", "Contents", "MacOS", "Google Chrome for Testing"),
80
+ path.join(chromiumPath, "chrome-mac-arm64", "Chromium.app", "Contents", "MacOS", "Chromium"),
81
+ path.join(chromiumPath, "chrome-mac", "Chromium.app", "Contents", "MacOS", "Chromium"),
82
+ ]
83
+ : process.platform === "win32"
84
+ ? [
85
+ path.join(chromiumPath, "chrome-win", "chrome.exe"),
86
+ path.join(chromiumPath, "chrome-win64", "chrome.exe"),
87
+ ]
88
+ : [
89
+ path.join(chromiumPath, "chrome-linux", "chrome"),
90
+ path.join(chromiumPath, "chrome-linux64", "chrome"),
91
+ ];
92
+ for (const candidate of candidates) {
93
+ if (fs.existsSync(candidate)) {
94
+ return candidate;
95
+ }
96
+ }
97
+ return null;
98
+ }
99
+ export function isSystemChrome(browserPath) {
100
+ if (!browserPath) {
101
+ return false;
102
+ }
103
+ const lower = browserPath.toLowerCase();
104
+ if (lower.includes(".databridge") ||
105
+ lower.includes("chromium") ||
106
+ lower.includes("chrome for testing")) {
107
+ return false;
108
+ }
109
+ return true;
110
+ }
111
+ export function getChromeProfileDir(chromeRoot) {
112
+ const localStatePath = path.join(chromeRoot, "Local State");
113
+ if (fs.existsSync(localStatePath)) {
114
+ try {
115
+ const localState = JSON.parse(fs.readFileSync(localStatePath, "utf8"));
116
+ const lastUsed = localState.profile?.last_used;
117
+ if (lastUsed) {
118
+ const profileDir = path.join(chromeRoot, lastUsed);
119
+ if (fs.existsSync(profileDir)) {
120
+ return profileDir;
121
+ }
122
+ }
123
+ }
124
+ catch {
125
+ // Ignore malformed local state and fall back to Default.
126
+ }
127
+ }
128
+ const defaultDir = path.join(chromeRoot, "Default");
129
+ return fs.existsSync(defaultDir) ? defaultDir : null;
130
+ }
131
+ export function supportsSystemChromeCookieImport() {
132
+ if (process.env.VANA_ENABLE_SYSTEM_COOKIE_IMPORT === "1") {
133
+ return true;
134
+ }
135
+ // Treat this as a macOS-only enhancement until we have explicit
136
+ // validation for other platforms. The core CLI path should not depend on it.
137
+ return process.platform === "darwin";
138
+ }
139
+ export function importChromeCookies(userDataDir, browserPath) {
140
+ if (!supportsSystemChromeCookieImport()) {
141
+ return;
142
+ }
143
+ if (!isSystemChrome(browserPath)) {
144
+ return;
145
+ }
146
+ const markerFile = path.join(userDataDir, ".cookies-imported");
147
+ if (fs.existsSync(markerFile)) {
148
+ return;
149
+ }
150
+ const chromeRoot = CHROME_PROFILE_DIRS[process.platform];
151
+ if (!chromeRoot || !fs.existsSync(chromeRoot)) {
152
+ return;
153
+ }
154
+ const sourceProfileDir = getChromeProfileDir(chromeRoot);
155
+ if (!sourceProfileDir) {
156
+ return;
157
+ }
158
+ const sourceCookies = path.join(sourceProfileDir, "Cookies");
159
+ if (!fs.existsSync(sourceCookies)) {
160
+ return;
161
+ }
162
+ const targetCookies = path.join(userDataDir, "Default", "Cookies");
163
+ if (!fs.existsSync(targetCookies)) {
164
+ return;
165
+ }
166
+ const sourceDb = sourceCookies.replace(/'/g, "''");
167
+ const sql = `
168
+ ATTACH DATABASE '${sourceDb}' AS src;
169
+ INSERT OR REPLACE INTO main.cookies
170
+ SELECT * FROM src.cookies;
171
+ DETACH DATABASE src;
172
+ `;
173
+ try {
174
+ execFileSync("sqlite3", [targetCookies, sql.replace(/\n/g, " ")], {
175
+ stdio: "ignore",
176
+ });
177
+ fs.writeFileSync(markerFile, `${new Date().toISOString()}\n`, "utf8");
178
+ }
179
+ catch {
180
+ // Cookie import is opportunistic; continue if sqlite3 is unavailable.
181
+ }
182
+ }
183
+ export function resolveBrowserPath() {
184
+ let browserPath = null;
185
+ if (!process.env.DATACONNECT_SIMULATE_NO_CHROME) {
186
+ browserPath = getSystemChromePath();
187
+ }
188
+ if (!browserPath) {
189
+ browserPath = getDownloadedChromiumPath();
190
+ }
191
+ if (!browserPath) {
192
+ throw new Error("No browser available. Run `vana setup` to install Chromium before connecting a source.");
193
+ }
194
+ return browserPath;
195
+ }
196
+ export async function launchPersistentContext(userDataDir, headless, browserPath) {
197
+ fs.mkdirSync(userDataDir, { recursive: true });
198
+ // Remove stale SingletonLock left by a previous crashed browser.
199
+ // Chromium creates this file to prevent multiple instances on the same
200
+ // profile. If the process was interrupted, the lock is never cleaned up
201
+ // and subsequent launches fail with "Failed to create a ProcessSingleton."
202
+ const lockPath = path.join(userDataDir, "SingletonLock");
203
+ try {
204
+ fs.rmSync(lockPath, { force: true });
205
+ }
206
+ catch {
207
+ // Ignore — file might not exist or be unremovable.
208
+ }
209
+ const launchOptions = {
210
+ headless,
211
+ args: [
212
+ "--disable-blink-features=AutomationControlled",
213
+ "--disable-features=MediaRouter,DialMediaRouteProvider",
214
+ ],
215
+ viewport: { width: 1280, height: 800 },
216
+ userAgent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
217
+ };
218
+ if (browserPath) {
219
+ launchOptions.executablePath = browserPath;
220
+ }
221
+ if (isSystemChrome(browserPath)) {
222
+ launchOptions.ignoreDefaultArgs = ["--use-mock-keychain"];
223
+ }
224
+ return chromium.launchPersistentContext(userDataDir, launchOptions);
225
+ }
226
+ export function getDefaultUserDataDir(slug) {
227
+ return path.join(os.homedir(), ".vana", "browser-profiles", slug);
228
+ }
229
+ //# sourceMappingURL=browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/runtime/playwright/browser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { ConnectorRunHandle, ConnectorRunRequest } from "../core/index.js";
2
+ export declare function startInProcessConnectorRun({ request, logPath, }: {
3
+ request: ConnectorRunRequest;
4
+ logPath: string;
5
+ }): ConnectorRunHandle;
6
+ //# sourceMappingURL=in-process-run.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-process-run.d.ts","sourceRoot":"","sources":["../../../src/runtime/playwright/in-process-run.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EAGpB,MAAM,kBAAkB,CAAC;AAiN1B,wBAAgB,0BAA0B,CAAC,EACzC,OAAO,EACP,OAAO,GACR,EAAE;IACD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,kBAAkB,CA6MrB"}