@geometra/proxy 1.19.16 → 1.19.18

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.
@@ -11,6 +11,8 @@ export declare function startGeometryWebSocket(options: {
11
11
  page: Page;
12
12
  /** DOM mutation debounce (ms). */
13
13
  debounceMs?: number;
14
+ /** Optional promise that must resolve before extracts or input actions run. */
15
+ beforeInput?: Promise<unknown>;
14
16
  onListening?: (port: number) => void;
15
17
  onError?: (err: unknown) => void;
16
18
  }): GeometryWsHub;
@@ -1 +1 @@
1
- {"version":3,"file":"geometry-ws.d.ts","sourceRoot":"","sources":["../src/geometry-ws.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAqStC,MAAM,WAAW,aAAa;IAC5B,oEAAoE;IACpE,eAAe,EAAE,MAAM,IAAI,CAAA;IAC3B,6DAA6D;IAC7D,YAAY,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACjC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC3B;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE;IAC9C,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,IAAI,CAAA;IACV,kCAAkC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACpC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAA;CACjC,GAAG,aAAa,CA4NhB;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAwB/F"}
1
+ {"version":3,"file":"geometry-ws.d.ts","sourceRoot":"","sources":["../src/geometry-ws.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAwStC,MAAM,WAAW,aAAa;IAC5B,oEAAoE;IACpE,eAAe,EAAE,MAAM,IAAI,CAAA;IAC3B,6DAA6D;IAC7D,YAAY,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACjC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC3B;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE;IAC9C,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,IAAI,CAAA;IACV,kCAAkC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,+EAA+E;IAC/E,WAAW,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;IAC9B,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACpC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAA;CACjC,GAAG,aAAa,CAoOhB;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAwB/F"}
@@ -66,7 +66,7 @@ async function applyKeyPhase(page, msg) {
66
66
  if (msg.shiftKey)
67
67
  await page.keyboard.up('Shift');
68
68
  }
69
- async function handleClientMessage(page, ws, raw, fieldLookupCache, onViewportOrInput, onHandlerError) {
69
+ async function handleClientMessage(page, ws, raw, fieldLookupCache, waitForBeforeInput, onViewportOrInput, onHandlerError) {
70
70
  let msg;
71
71
  try {
72
72
  msg = JSON.parse(String(raw));
@@ -105,6 +105,7 @@ async function handleClientMessage(page, ws, raw, fieldLookupCache, onViewportOr
105
105
  onViewportOrInput('resize', requestId);
106
106
  return;
107
107
  }
108
+ await waitForBeforeInput();
108
109
  if (isNavigateMessage(msg)) {
109
110
  clearFillLookupCache(fieldLookupCache);
110
111
  await page.goto(msg.url, { waitUntil: 'domcontentloaded', timeout: 60_000 });
@@ -251,6 +252,12 @@ export function startGeometryWebSocket(options) {
251
252
  let actionQueue = Promise.resolve();
252
253
  let pendingInputAcks = [];
253
254
  const fieldLookupCache = createFillLookupCache();
255
+ const beforeInput = options.beforeInput?.then(() => undefined);
256
+ async function waitForBeforeInput() {
257
+ if (!beforeInput)
258
+ return;
259
+ await beforeInput;
260
+ }
254
261
  options.page.on('framenavigated', frame => {
255
262
  if (frame === options.page.mainFrame()) {
256
263
  clearFillLookupCache(fieldLookupCache);
@@ -337,6 +344,7 @@ export function startGeometryWebSocket(options) {
337
344
  }
338
345
  async function runExtract() {
339
346
  try {
347
+ await waitForBeforeInput();
340
348
  const snap = await extractGeometryWithRecovery(options.page);
341
349
  return broadcastSnapshot(snap);
342
350
  }
@@ -404,7 +412,7 @@ export function startGeometryWebSocket(options) {
404
412
  }
405
413
  ws.on('message', (raw) => {
406
414
  actionQueue = actionQueue
407
- .then(() => handleClientMessage(options.page, ws, raw, fieldLookupCache, (kind, requestId, result) => {
415
+ .then(() => handleClientMessage(options.page, ws, raw, fieldLookupCache, waitForBeforeInput, (kind, requestId, result) => {
408
416
  if (kind === 'resize') {
409
417
  void runExtractQueued();
410
418
  }
@@ -1 +1 @@
1
- {"version":3,"file":"geometry-ws.js","sourceRoot":"","sources":["../src/geometry-ws.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"geometry-ws.js","sourceRoot":"","sources":["../src/geometry-ws.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,6 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { chromium } from 'playwright';
3
- import { installDomObserver, startGeometryWebSocket } from './geometry-ws.js';
2
+ import { formatProxyFatalError, launchProxyRuntime, parseHttpPageUrl } from './runtime.js';
4
3
  const READY_SIGNAL_TYPE = 'geometra-proxy-ready';
5
4
  function printUsage() {
6
5
  console.error(`Usage: geometra-proxy <url> [--port <n>] [--width <n>] [--height <n>] [--headless] [--headed] [--slow-mo <ms>]
@@ -27,19 +26,6 @@ function envRequestsReadyJson() {
27
26
  const v = (process.env.GEOMETRA_PROXY_READY_JSON ?? '').toLowerCase();
28
27
  return v === '1' || v === 'true' || v === 'yes';
29
28
  }
30
- function parseHttpPageUrl(raw) {
31
- let parsed;
32
- try {
33
- parsed = new URL(raw);
34
- }
35
- catch {
36
- throw new Error(`Invalid URL: ${raw}`);
37
- }
38
- if (parsed.protocol !== 'http:' && parsed.protocol !== 'https:') {
39
- throw new Error(`Unsupported URL protocol: ${parsed.protocol}. geometra-proxy only opens http:// or https:// pages.`);
40
- }
41
- return parsed.toString();
42
- }
43
29
  function parsePortArg(raw) {
44
30
  const n = Number(raw ?? '');
45
31
  if (Number.isInteger(n) && n >= 0 && n <= 65535)
@@ -59,13 +45,6 @@ function emitReadySignal(wsUrl, pageUrl) {
59
45
  return;
60
46
  process.stdout.write(`${JSON.stringify({ type: READY_SIGNAL_TYPE, wsUrl, pageUrl })}\n`);
61
47
  }
62
- function formatProxyFatalError(err) {
63
- const base = err instanceof Error ? err.message : String(err);
64
- if (/Executable doesn't exist|playwright install chromium|browserType\.launch/i.test(base)) {
65
- return `${base}\nInstall Chromium with: npx playwright install chromium`;
66
- }
67
- return base;
68
- }
69
48
  function parseArgs(argv) {
70
49
  let url = '';
71
50
  let port = 3200;
@@ -119,72 +98,35 @@ async function main() {
119
98
  process.exit(1);
120
99
  }
121
100
  const url = parseHttpPageUrl(rawUrl);
122
- const launchOpts = { headless: !headed };
123
- if (slowMo > 0)
124
- launchOpts.slowMo = slowMo;
125
- const browser = await chromium.launch(launchOpts);
126
- const page = await browser.newPage({ viewport: { width, height } });
127
- let listeningWsUrl = port === 0 ? '' : `ws://127.0.0.1:${port}`;
128
- let resolveListening;
129
- let rejectListening;
130
- const listeningPromise = new Promise((resolve, reject) => {
131
- resolveListening = resolve;
132
- rejectListening = reject;
133
- });
134
101
  const mode = headed ? 'headed (visible window)' : 'headless';
135
102
  const pace = slowMo > 0 ? `, slowMo ${slowMo}ms` : '';
136
103
  console.error(`[geometra-proxy] Chromium ${mode}${pace}`);
137
104
  console.error(`[geometra-proxy] Loading ${url} …`);
138
- const hub = startGeometryWebSocket({
105
+ const runtime = await launchProxyRuntime({
106
+ url,
139
107
  port,
140
- page,
108
+ width,
109
+ height,
110
+ headed,
111
+ slowMo,
141
112
  debounceMs: 50,
142
- onListening(p) {
143
- listeningWsUrl = `ws://127.0.0.1:${p}`;
144
- resolveListening?.(listeningWsUrl);
145
- resolveListening = undefined;
146
- rejectListening = undefined;
147
- console.error(`[geometra-proxy] WebSocket listening on ${listeningWsUrl}`);
113
+ onListening(wsUrl) {
114
+ console.error(`[geometra-proxy] WebSocket listening on ${wsUrl}`);
148
115
  },
149
116
  onError(err) {
150
117
  const message = formatProxyFatalError(err);
151
118
  console.error('[geometra-proxy] error:', message);
152
- if (!listeningWsUrl) {
153
- rejectListening?.(new Error(message));
154
- rejectListening = undefined;
155
- resolveListening = undefined;
156
- }
157
119
  },
158
120
  });
159
- const navigation = page.goto(url, { waitUntil: 'domcontentloaded' });
160
- const wsUrl = await listeningPromise;
161
- await navigation;
121
+ const wsUrl = runtime.wsUrl;
162
122
  console.error(`[geometra-proxy] Ready. Connect MCP with geometra_connect({ url: "${wsUrl}" })`);
163
123
  emitReadySignal(wsUrl, url);
164
- await hub.flushExtract();
165
- await installDomObserver(page, hub.scheduleExtract);
166
- page.on('domcontentloaded', () => {
167
- void installDomObserver(page, hub.scheduleExtract)
168
- .then(() => {
169
- hub.scheduleExtract();
170
- })
171
- .catch(err => {
172
- const message = formatProxyFatalError(err);
173
- console.error('[geometra-proxy] observer reinstall failed:', message);
174
- });
175
- });
176
124
  let shuttingDown = false;
177
125
  const shutdown = async () => {
178
126
  if (shuttingDown)
179
127
  return;
180
128
  shuttingDown = true;
181
- try {
182
- await hub.close();
183
- }
184
- catch {
185
- /* ignore */
186
- }
187
- await browser.close();
129
+ await runtime.close();
188
130
  process.exit(0);
189
131
  };
190
132
  process.on('SIGINT', () => void shutdown());
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { type Browser, type Page } from 'playwright';
2
+ import { type GeometryWsHub } from './geometry-ws.js';
3
+ export interface ProxyRuntimeHandle {
4
+ browser: Browser;
5
+ page: Page;
6
+ hub: GeometryWsHub;
7
+ pageUrl: string;
8
+ wsUrl: string;
9
+ closed: boolean;
10
+ close: () => Promise<void>;
11
+ }
12
+ export interface LaunchProxyRuntimeOptions {
13
+ url: string;
14
+ port: number;
15
+ width?: number;
16
+ height?: number;
17
+ headed?: boolean;
18
+ slowMo?: number;
19
+ debounceMs?: number;
20
+ onListening?: (wsUrl: string) => void;
21
+ onError?: (err: unknown) => void;
22
+ }
23
+ export declare function parseHttpPageUrl(raw: string): string;
24
+ export declare function formatProxyFatalError(err: unknown): string;
25
+ export declare function launchProxyRuntime(options: LaunchProxyRuntimeOptions): Promise<ProxyRuntimeHandle>;
26
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,YAAY,CAAA;AAC9D,OAAO,EAA8C,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEjG,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,IAAI,CAAA;IACV,GAAG,EAAE,aAAa,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,OAAO,CAAA;IACf,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC3B;AAED,MAAM,WAAW,yBAAyB;IACxC,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACrC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAA;CACjC;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAapD;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAM1D;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA6HxG"}
@@ -0,0 +1,139 @@
1
+ import { chromium } from 'playwright';
2
+ import { installDomObserver, startGeometryWebSocket } from './geometry-ws.js';
3
+ export function parseHttpPageUrl(raw) {
4
+ let parsed;
5
+ try {
6
+ parsed = new URL(raw);
7
+ }
8
+ catch {
9
+ throw new Error(`Invalid URL: ${raw}`);
10
+ }
11
+ if (parsed.protocol !== 'http:' && parsed.protocol !== 'https:') {
12
+ throw new Error(`Unsupported URL protocol: ${parsed.protocol}. geometra-proxy only opens http:// or https:// pages.`);
13
+ }
14
+ return parsed.toString();
15
+ }
16
+ export function formatProxyFatalError(err) {
17
+ const base = err instanceof Error ? err.message : String(err);
18
+ if (/Executable doesn't exist|playwright install chromium|browserType\.launch/i.test(base)) {
19
+ return `${base}\nInstall Chromium with: npx playwright install chromium`;
20
+ }
21
+ return base;
22
+ }
23
+ export async function launchProxyRuntime(options) {
24
+ const pageUrl = parseHttpPageUrl(options.url);
25
+ const launchOpts = { headless: options.headed !== true };
26
+ if (options.slowMo && options.slowMo > 0)
27
+ launchOpts.slowMo = options.slowMo;
28
+ const browser = await chromium.launch(launchOpts);
29
+ const page = await browser.newPage({
30
+ viewport: {
31
+ width: options.width ?? 1280,
32
+ height: options.height ?? 720,
33
+ },
34
+ });
35
+ let resolveListening;
36
+ let rejectListening;
37
+ const listeningPromise = new Promise((resolve, reject) => {
38
+ resolveListening = resolve;
39
+ rejectListening = reject;
40
+ });
41
+ let resolveBeforeInput;
42
+ let rejectBeforeInput;
43
+ const beforeInput = new Promise((resolve, reject) => {
44
+ resolveBeforeInput = resolve;
45
+ rejectBeforeInput = reject;
46
+ });
47
+ let wsUrl = options.port === 0 ? '' : `ws://127.0.0.1:${options.port}`;
48
+ let closed = false;
49
+ let closing = false;
50
+ const reportError = (err) => {
51
+ options.onError?.(err);
52
+ if (!wsUrl) {
53
+ rejectListening(new Error(formatProxyFatalError(err)));
54
+ }
55
+ };
56
+ const hub = startGeometryWebSocket({
57
+ port: options.port,
58
+ page,
59
+ debounceMs: options.debounceMs ?? 50,
60
+ beforeInput,
61
+ onListening(port) {
62
+ wsUrl = `ws://127.0.0.1:${port}`;
63
+ resolveListening(wsUrl);
64
+ options.onListening?.(wsUrl);
65
+ },
66
+ onError: reportError,
67
+ });
68
+ const handleUnexpectedClosure = (source) => {
69
+ if (closed || closing)
70
+ return;
71
+ closed = true;
72
+ const message = source === 'browser'
73
+ ? 'Playwright browser was closed while geometra-proxy was still expected to serve MCP actions.'
74
+ : 'Playwright page or context was closed while geometra-proxy was still expected to serve MCP actions.';
75
+ const error = new Error(message);
76
+ rejectBeforeInput(error);
77
+ rejectListening(error);
78
+ options.onError?.(error);
79
+ void hub.close().catch(() => { });
80
+ };
81
+ page.on('close', () => {
82
+ handleUnexpectedClosure('page');
83
+ });
84
+ browser.on('disconnected', () => {
85
+ handleUnexpectedClosure('browser');
86
+ });
87
+ const refreshObservers = () => {
88
+ void installDomObserver(page, hub.scheduleExtract)
89
+ .then(() => {
90
+ hub.scheduleExtract();
91
+ })
92
+ .catch(reportError);
93
+ };
94
+ page.on('domcontentloaded', refreshObservers);
95
+ const initialNavigation = page.goto(pageUrl, { waitUntil: 'domcontentloaded', timeout: 60_000 });
96
+ void initialNavigation
97
+ .then(async () => {
98
+ resolveBeforeInput();
99
+ await hub.flushExtract();
100
+ })
101
+ .catch(err => {
102
+ rejectBeforeInput(err);
103
+ reportError(err);
104
+ });
105
+ const listeningWsUrl = await listeningPromise;
106
+ const close = async () => {
107
+ if (closed || closing)
108
+ return;
109
+ closing = true;
110
+ try {
111
+ await hub.close();
112
+ }
113
+ catch {
114
+ /* ignore */
115
+ }
116
+ try {
117
+ if (browser.isConnected()) {
118
+ await browser.close();
119
+ }
120
+ }
121
+ catch {
122
+ /* ignore */
123
+ }
124
+ closed = true;
125
+ closing = false;
126
+ };
127
+ return {
128
+ browser,
129
+ page,
130
+ hub,
131
+ pageUrl,
132
+ wsUrl: listeningWsUrl,
133
+ get closed() {
134
+ return closed;
135
+ },
136
+ close,
137
+ };
138
+ }
139
+ //# sourceMappingURL=runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@geometra/proxy",
3
- "version": "1.19.16",
3
+ "version": "1.19.18",
4
4
  "description": "Chromium proxy (headed by default) — stream live DOM geometry as Geometra WebSocket frames for MCP and clients",
5
5
  "license": "MIT",
6
6
  "type": "module",