tabwright 1.0.0 → 1.0.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 (562) hide show
  1. package/dist/aria-snapshot.d.ts +0 -1
  2. package/dist/aria-snapshot.js +9 -1
  3. package/dist/assets/cursors/screen-studio/pointer-macos-tahoe-data-url.d.ts +0 -1
  4. package/dist/assets/cursors/screen-studio/pointer-macos-tahoe-data-url.js +0 -1
  5. package/dist/bippy.js +1 -1
  6. package/dist/browser-config.d.ts +0 -1
  7. package/dist/browser-config.js +0 -1
  8. package/dist/browser-install.d.ts +0 -1
  9. package/dist/browser-install.js +0 -1
  10. package/dist/browser-launch.d.ts +0 -1
  11. package/dist/browser-launch.js +0 -1
  12. package/dist/builtin-capabilities.d.ts +0 -1
  13. package/dist/builtin-capabilities.js +0 -1
  14. package/dist/capability-agent-skill.d.ts +0 -1
  15. package/dist/capability-agent-skill.js +0 -1
  16. package/dist/capability-auth-state.d.ts +0 -1
  17. package/dist/capability-auth-state.js +0 -1
  18. package/dist/capability-auth.d.ts +0 -1
  19. package/dist/capability-auth.js +0 -1
  20. package/dist/capability-options.d.ts +0 -1
  21. package/dist/capability-options.js +0 -1
  22. package/dist/capability-package.d.ts +0 -1
  23. package/dist/capability-package.js +0 -1
  24. package/dist/capability-registry.d.ts +0 -1
  25. package/dist/capability-registry.js +0 -1
  26. package/dist/capability-runner.d.ts +0 -1
  27. package/dist/capability-runner.js +0 -1
  28. package/dist/capability-studio.d.ts +0 -1
  29. package/dist/capability-studio.js +0 -1
  30. package/dist/cdp-log.d.ts +0 -1
  31. package/dist/cdp-log.js +0 -1
  32. package/dist/cdp-relay.d.ts +0 -1
  33. package/dist/cdp-relay.js +0 -1
  34. package/dist/cdp-session.d.ts +0 -1
  35. package/dist/cdp-session.js +0 -1
  36. package/dist/cdp-types.d.ts +0 -1
  37. package/dist/cdp-types.js +0 -1
  38. package/dist/chrome-discovery.d.ts +0 -1
  39. package/dist/chrome-discovery.js +0 -1
  40. package/dist/clean-html.d.ts +0 -1
  41. package/dist/clean-html.js +0 -1
  42. package/dist/cli.d.ts +0 -1
  43. package/dist/cli.js +9 -2
  44. package/dist/cloud-client.d.ts +0 -1
  45. package/dist/cloud-client.js +0 -1
  46. package/dist/create-logger.d.ts +0 -1
  47. package/dist/create-logger.js +0 -1
  48. package/dist/debugger-examples-types.d.ts +0 -1
  49. package/dist/debugger-examples-types.js +0 -1
  50. package/dist/debugger-examples.d.ts +0 -1
  51. package/dist/debugger-examples.js +0 -1
  52. package/dist/debugger.d.ts +0 -1
  53. package/dist/debugger.js +0 -1
  54. package/dist/diff-utils.d.ts +0 -1
  55. package/dist/diff-utils.js +0 -1
  56. package/dist/doctor.d.ts +0 -1
  57. package/dist/doctor.js +5 -7
  58. package/dist/editor-examples.d.ts +0 -1
  59. package/dist/editor-examples.js +0 -1
  60. package/dist/editor.d.ts +0 -1
  61. package/dist/editor.js +0 -1
  62. package/dist/env-compat.d.ts +0 -1
  63. package/dist/env-compat.js +0 -1
  64. package/dist/executor.d.ts +0 -1
  65. package/dist/executor.js +1 -2
  66. package/dist/extension/background.js +7 -3
  67. package/dist/extension/manifest.json +1 -1
  68. package/dist/ghost-browser.d.ts +0 -1
  69. package/dist/ghost-browser.js +0 -1
  70. package/dist/ghost-cursor-controller.d.ts +0 -1
  71. package/dist/ghost-cursor-controller.js +0 -1
  72. package/dist/ghost-cursor.d.ts +0 -1
  73. package/dist/ghost-cursor.js +0 -1
  74. package/dist/htmlrewrite.d.ts +0 -1
  75. package/dist/htmlrewrite.js +0 -1
  76. package/dist/index.d.ts +0 -1
  77. package/dist/index.js +0 -1
  78. package/dist/kill-port.d.ts +0 -1
  79. package/dist/kill-port.js +0 -1
  80. package/dist/kitty-graphics.d.ts +0 -1
  81. package/dist/kitty-graphics.js +0 -1
  82. package/dist/mcp.d.ts +0 -1
  83. package/dist/mcp.js +0 -1
  84. package/dist/package-paths.d.ts +0 -1
  85. package/dist/package-paths.js +0 -1
  86. package/dist/page-markdown.d.ts +0 -1
  87. package/dist/page-markdown.js +0 -1
  88. package/dist/performance-examples.d.ts +0 -1
  89. package/dist/performance-examples.js +0 -1
  90. package/dist/playwright-import.d.ts +0 -1
  91. package/dist/playwright-import.js +0 -1
  92. package/dist/product-paths.d.ts +0 -1
  93. package/dist/product-paths.js +0 -1
  94. package/dist/protocol.d.ts +0 -1
  95. package/dist/protocol.js +0 -1
  96. package/dist/react-source.d.ts +0 -1
  97. package/dist/react-source.js +0 -1
  98. package/dist/readability.js +1 -1
  99. package/dist/relay-client.d.ts +0 -1
  100. package/dist/relay-client.js +0 -1
  101. package/dist/relay-state.d.ts +0 -1
  102. package/dist/relay-state.js +0 -1
  103. package/dist/replay-ai-index.d.ts +0 -1
  104. package/dist/replay-ai-index.js +0 -1
  105. package/dist/replay-eval.d.ts +0 -1
  106. package/dist/replay-eval.js +0 -1
  107. package/dist/replay-handoff.d.ts +0 -1
  108. package/dist/replay-handoff.js +0 -1
  109. package/dist/replay-workflow-compiler.d.ts +0 -1
  110. package/dist/replay-workflow-compiler.js +0 -1
  111. package/dist/rrweb-recording-relay.d.ts +0 -1
  112. package/dist/rrweb-recording-relay.js +0 -1
  113. package/dist/rrweb-recording.d.ts +0 -1
  114. package/dist/rrweb-recording.js +0 -1
  115. package/dist/scoped-fs.d.ts +0 -1
  116. package/dist/scoped-fs.js +0 -1
  117. package/dist/selector-generator.js +1 -1
  118. package/dist/start-relay-server.d.ts +0 -1
  119. package/dist/start-relay-server.js +0 -1
  120. package/dist/styles-examples.d.ts +0 -1
  121. package/dist/styles-examples.js +0 -1
  122. package/dist/styles.d.ts +0 -1
  123. package/dist/styles.js +0 -1
  124. package/dist/tabwright-agent-skill.d.ts +0 -1
  125. package/dist/tabwright-agent-skill.js +0 -1
  126. package/dist/test-declarations.d.ts +0 -1
  127. package/dist/test-declarations.js +0 -1
  128. package/dist/utils.d.ts +0 -1
  129. package/dist/utils.js +2 -2
  130. package/dist/wait-for-page-load.d.ts +0 -1
  131. package/dist/wait-for-page-load.js +0 -1
  132. package/dist/workflow-capability.d.ts +0 -1
  133. package/dist/workflow-capability.js +0 -1
  134. package/package.json +9 -4
  135. package/readme.md +35 -0
  136. package/dist/aria-snapshot.d.ts.map +0 -1
  137. package/dist/aria-snapshot.js.map +0 -1
  138. package/dist/aria-snapshot.test.d.ts +0 -2
  139. package/dist/aria-snapshot.test.d.ts.map +0 -1
  140. package/dist/aria-snapshot.test.js +0 -270
  141. package/dist/aria-snapshot.test.js.map +0 -1
  142. package/dist/aria-snapshot.unit.test.d.ts +0 -2
  143. package/dist/aria-snapshot.unit.test.d.ts.map +0 -1
  144. package/dist/aria-snapshot.unit.test.js +0 -542
  145. package/dist/aria-snapshot.unit.test.js.map +0 -1
  146. package/dist/assets/cursors/screen-studio/pointer-macos-tahoe-data-url.d.ts.map +0 -1
  147. package/dist/assets/cursors/screen-studio/pointer-macos-tahoe-data-url.js.map +0 -1
  148. package/dist/browser-config.d.ts.map +0 -1
  149. package/dist/browser-config.js.map +0 -1
  150. package/dist/browser-install.d.ts.map +0 -1
  151. package/dist/browser-install.js.map +0 -1
  152. package/dist/browser-launch.d.ts.map +0 -1
  153. package/dist/browser-launch.js.map +0 -1
  154. package/dist/builtin-capabilities.d.ts.map +0 -1
  155. package/dist/builtin-capabilities.js.map +0 -1
  156. package/dist/capability-agent-skill.d.ts.map +0 -1
  157. package/dist/capability-agent-skill.js.map +0 -1
  158. package/dist/capability-auth-state.d.ts.map +0 -1
  159. package/dist/capability-auth-state.js.map +0 -1
  160. package/dist/capability-auth.d.ts.map +0 -1
  161. package/dist/capability-auth.js.map +0 -1
  162. package/dist/capability-cli-confirmation.test.d.ts +0 -2
  163. package/dist/capability-cli-confirmation.test.d.ts.map +0 -1
  164. package/dist/capability-cli-confirmation.test.js +0 -79
  165. package/dist/capability-cli-confirmation.test.js.map +0 -1
  166. package/dist/capability-options.d.ts.map +0 -1
  167. package/dist/capability-options.js.map +0 -1
  168. package/dist/capability-options.test.d.ts +0 -2
  169. package/dist/capability-options.test.d.ts.map +0 -1
  170. package/dist/capability-options.test.js +0 -81
  171. package/dist/capability-options.test.js.map +0 -1
  172. package/dist/capability-package.d.ts.map +0 -1
  173. package/dist/capability-package.js.map +0 -1
  174. package/dist/capability-package.test.d.ts +0 -2
  175. package/dist/capability-package.test.d.ts.map +0 -1
  176. package/dist/capability-package.test.js +0 -179
  177. package/dist/capability-package.test.js.map +0 -1
  178. package/dist/capability-registry.d.ts.map +0 -1
  179. package/dist/capability-registry.js.map +0 -1
  180. package/dist/capability-registry.test.d.ts +0 -2
  181. package/dist/capability-registry.test.d.ts.map +0 -1
  182. package/dist/capability-registry.test.js +0 -1683
  183. package/dist/capability-registry.test.js.map +0 -1
  184. package/dist/capability-runner.d.ts.map +0 -1
  185. package/dist/capability-runner.js.map +0 -1
  186. package/dist/capability-search-relevance.test.d.ts +0 -2
  187. package/dist/capability-search-relevance.test.d.ts.map +0 -1
  188. package/dist/capability-search-relevance.test.js +0 -67
  189. package/dist/capability-search-relevance.test.js.map +0 -1
  190. package/dist/capability-studio.d.ts.map +0 -1
  191. package/dist/capability-studio.js.map +0 -1
  192. package/dist/capability-studio.test.d.ts +0 -2
  193. package/dist/capability-studio.test.d.ts.map +0 -1
  194. package/dist/capability-studio.test.js +0 -41
  195. package/dist/capability-studio.test.js.map +0 -1
  196. package/dist/cdp-log.d.ts.map +0 -1
  197. package/dist/cdp-log.js.map +0 -1
  198. package/dist/cdp-log.test.d.ts +0 -2
  199. package/dist/cdp-log.test.d.ts.map +0 -1
  200. package/dist/cdp-log.test.js +0 -109
  201. package/dist/cdp-log.test.js.map +0 -1
  202. package/dist/cdp-relay.d.ts.map +0 -1
  203. package/dist/cdp-relay.js.map +0 -1
  204. package/dist/cdp-session.d.ts.map +0 -1
  205. package/dist/cdp-session.js.map +0 -1
  206. package/dist/cdp-types.d.ts.map +0 -1
  207. package/dist/cdp-types.js.map +0 -1
  208. package/dist/channel-owner-inspect.test.d.ts +0 -2
  209. package/dist/channel-owner-inspect.test.d.ts.map +0 -1
  210. package/dist/channel-owner-inspect.test.js +0 -75
  211. package/dist/channel-owner-inspect.test.js.map +0 -1
  212. package/dist/chrome-discovery.d.ts.map +0 -1
  213. package/dist/chrome-discovery.js.map +0 -1
  214. package/dist/chrome-discovery.test.d.ts +0 -2
  215. package/dist/chrome-discovery.test.d.ts.map +0 -1
  216. package/dist/chrome-discovery.test.js +0 -41
  217. package/dist/chrome-discovery.test.js.map +0 -1
  218. package/dist/clean-html.d.ts.map +0 -1
  219. package/dist/clean-html.js.map +0 -1
  220. package/dist/cli-help.test.d.ts +0 -2
  221. package/dist/cli-help.test.d.ts.map +0 -1
  222. package/dist/cli-help.test.js +0 -98
  223. package/dist/cli-help.test.js.map +0 -1
  224. package/dist/cli.d.ts.map +0 -1
  225. package/dist/cli.js.map +0 -1
  226. package/dist/cloud-client.d.ts.map +0 -1
  227. package/dist/cloud-client.js.map +0 -1
  228. package/dist/create-logger.d.ts.map +0 -1
  229. package/dist/create-logger.js.map +0 -1
  230. package/dist/debugger-examples-types.d.ts.map +0 -1
  231. package/dist/debugger-examples-types.js.map +0 -1
  232. package/dist/debugger-examples.d.ts.map +0 -1
  233. package/dist/debugger-examples.js.map +0 -1
  234. package/dist/debugger.d.ts.map +0 -1
  235. package/dist/debugger.js.map +0 -1
  236. package/dist/diff-utils.d.ts.map +0 -1
  237. package/dist/diff-utils.js.map +0 -1
  238. package/dist/diff-utils.test.d.ts +0 -2
  239. package/dist/diff-utils.test.d.ts.map +0 -1
  240. package/dist/diff-utils.test.js +0 -137
  241. package/dist/diff-utils.test.js.map +0 -1
  242. package/dist/doctor.d.ts.map +0 -1
  243. package/dist/doctor.js.map +0 -1
  244. package/dist/doctor.test.d.ts +0 -2
  245. package/dist/doctor.test.d.ts.map +0 -1
  246. package/dist/doctor.test.js +0 -208
  247. package/dist/doctor.test.js.map +0 -1
  248. package/dist/editor-examples.d.ts.map +0 -1
  249. package/dist/editor-examples.js.map +0 -1
  250. package/dist/editor.d.ts.map +0 -1
  251. package/dist/editor.js.map +0 -1
  252. package/dist/env-compat.d.ts.map +0 -1
  253. package/dist/env-compat.js.map +0 -1
  254. package/dist/executor.d.ts.map +0 -1
  255. package/dist/executor.js.map +0 -1
  256. package/dist/executor.unit.test.d.ts +0 -2
  257. package/dist/executor.unit.test.d.ts.map +0 -1
  258. package/dist/executor.unit.test.js +0 -143
  259. package/dist/executor.unit.test.js.map +0 -1
  260. package/dist/extension-connection.test.d.ts +0 -2
  261. package/dist/extension-connection.test.d.ts.map +0 -1
  262. package/dist/extension-connection.test.js +0 -708
  263. package/dist/extension-connection.test.js.map +0 -1
  264. package/dist/extension-icon-warning.test.d.ts +0 -2
  265. package/dist/extension-icon-warning.test.d.ts.map +0 -1
  266. package/dist/extension-icon-warning.test.js +0 -33
  267. package/dist/extension-icon-warning.test.js.map +0 -1
  268. package/dist/ghost-browser.d.ts.map +0 -1
  269. package/dist/ghost-browser.js.map +0 -1
  270. package/dist/ghost-cursor-controller.d.ts.map +0 -1
  271. package/dist/ghost-cursor-controller.js.map +0 -1
  272. package/dist/ghost-cursor.d.ts.map +0 -1
  273. package/dist/ghost-cursor.js.map +0 -1
  274. package/dist/htmlrewrite.d.ts.map +0 -1
  275. package/dist/htmlrewrite.js.map +0 -1
  276. package/dist/htmlrewrite.test.d.ts +0 -2
  277. package/dist/htmlrewrite.test.d.ts.map +0 -1
  278. package/dist/htmlrewrite.test.js +0 -7975
  279. package/dist/htmlrewrite.test.js.map +0 -1
  280. package/dist/index.d.ts.map +0 -1
  281. package/dist/index.js.map +0 -1
  282. package/dist/kill-port.d.ts.map +0 -1
  283. package/dist/kill-port.js.map +0 -1
  284. package/dist/kitty-graphics.d.ts.map +0 -1
  285. package/dist/kitty-graphics.js.map +0 -1
  286. package/dist/kitty-graphics.test.d.ts +0 -2
  287. package/dist/kitty-graphics.test.d.ts.map +0 -1
  288. package/dist/kitty-graphics.test.js +0 -125
  289. package/dist/kitty-graphics.test.js.map +0 -1
  290. package/dist/locator-selector.test.d.ts +0 -2
  291. package/dist/locator-selector.test.d.ts.map +0 -1
  292. package/dist/locator-selector.test.js +0 -98
  293. package/dist/locator-selector.test.js.map +0 -1
  294. package/dist/mcp-client.d.ts +0 -20
  295. package/dist/mcp-client.d.ts.map +0 -1
  296. package/dist/mcp-client.js +0 -56
  297. package/dist/mcp-client.js.map +0 -1
  298. package/dist/mcp.d.ts.map +0 -1
  299. package/dist/mcp.js.map +0 -1
  300. package/dist/on-mouse-action.test.d.ts +0 -2
  301. package/dist/on-mouse-action.test.d.ts.map +0 -1
  302. package/dist/on-mouse-action.test.js +0 -180
  303. package/dist/on-mouse-action.test.js.map +0 -1
  304. package/dist/options-page.test.d.ts +0 -2
  305. package/dist/options-page.test.d.ts.map +0 -1
  306. package/dist/options-page.test.js +0 -773
  307. package/dist/options-page.test.js.map +0 -1
  308. package/dist/package-paths.d.ts.map +0 -1
  309. package/dist/package-paths.js.map +0 -1
  310. package/dist/page-markdown.d.ts.map +0 -1
  311. package/dist/page-markdown.js.map +0 -1
  312. package/dist/performance-examples.d.ts.map +0 -1
  313. package/dist/performance-examples.js.map +0 -1
  314. package/dist/playwright-import.d.ts.map +0 -1
  315. package/dist/playwright-import.js.map +0 -1
  316. package/dist/popup-relocation.test.d.ts +0 -7
  317. package/dist/popup-relocation.test.d.ts.map +0 -1
  318. package/dist/popup-relocation.test.js +0 -139
  319. package/dist/popup-relocation.test.js.map +0 -1
  320. package/dist/product-paths.d.ts.map +0 -1
  321. package/dist/product-paths.js.map +0 -1
  322. package/dist/product-paths.test.d.ts +0 -2
  323. package/dist/product-paths.test.d.ts.map +0 -1
  324. package/dist/product-paths.test.js +0 -39
  325. package/dist/product-paths.test.js.map +0 -1
  326. package/dist/protocol.d.ts.map +0 -1
  327. package/dist/protocol.js.map +0 -1
  328. package/dist/protocol.test.d.ts +0 -2
  329. package/dist/protocol.test.d.ts.map +0 -1
  330. package/dist/protocol.test.js +0 -31
  331. package/dist/protocol.test.js.map +0 -1
  332. package/dist/react-source.d.ts.map +0 -1
  333. package/dist/react-source.js.map +0 -1
  334. package/dist/relay-client.d.ts.map +0 -1
  335. package/dist/relay-client.js.map +0 -1
  336. package/dist/relay-client.test.d.ts +0 -2
  337. package/dist/relay-client.test.d.ts.map +0 -1
  338. package/dist/relay-client.test.js +0 -305
  339. package/dist/relay-client.test.js.map +0 -1
  340. package/dist/relay-core.test.d.ts +0 -2
  341. package/dist/relay-core.test.d.ts.map +0 -1
  342. package/dist/relay-core.test.js +0 -1427
  343. package/dist/relay-core.test.js.map +0 -1
  344. package/dist/relay-navigation.test.d.ts +0 -2
  345. package/dist/relay-navigation.test.d.ts.map +0 -1
  346. package/dist/relay-navigation.test.js +0 -661
  347. package/dist/relay-navigation.test.js.map +0 -1
  348. package/dist/relay-session.test.d.ts +0 -2
  349. package/dist/relay-session.test.d.ts.map +0 -1
  350. package/dist/relay-session.test.js +0 -1121
  351. package/dist/relay-session.test.js.map +0 -1
  352. package/dist/relay-state.d.ts.map +0 -1
  353. package/dist/relay-state.js.map +0 -1
  354. package/dist/relay-state.test.d.ts +0 -2
  355. package/dist/relay-state.test.d.ts.map +0 -1
  356. package/dist/relay-state.test.js +0 -594
  357. package/dist/relay-state.test.js.map +0 -1
  358. package/dist/replay-ai-index.d.ts.map +0 -1
  359. package/dist/replay-ai-index.js.map +0 -1
  360. package/dist/replay-ai-index.test.d.ts +0 -2
  361. package/dist/replay-ai-index.test.d.ts.map +0 -1
  362. package/dist/replay-ai-index.test.js +0 -255
  363. package/dist/replay-ai-index.test.js.map +0 -1
  364. package/dist/replay-cli.test.d.ts +0 -2
  365. package/dist/replay-cli.test.d.ts.map +0 -1
  366. package/dist/replay-cli.test.js +0 -275
  367. package/dist/replay-cli.test.js.map +0 -1
  368. package/dist/replay-eval.d.ts.map +0 -1
  369. package/dist/replay-eval.js.map +0 -1
  370. package/dist/replay-handoff.d.ts.map +0 -1
  371. package/dist/replay-handoff.js.map +0 -1
  372. package/dist/replay-handoff.test.d.ts +0 -2
  373. package/dist/replay-handoff.test.d.ts.map +0 -1
  374. package/dist/replay-handoff.test.js +0 -123
  375. package/dist/replay-handoff.test.js.map +0 -1
  376. package/dist/replay-workflow-compiler.d.ts.map +0 -1
  377. package/dist/replay-workflow-compiler.js.map +0 -1
  378. package/dist/replay-workflow-compiler.test.d.ts +0 -2
  379. package/dist/replay-workflow-compiler.test.d.ts.map +0 -1
  380. package/dist/replay-workflow-compiler.test.js +0 -223
  381. package/dist/replay-workflow-compiler.test.js.map +0 -1
  382. package/dist/rrweb-recording-relay.d.ts.map +0 -1
  383. package/dist/rrweb-recording-relay.js.map +0 -1
  384. package/dist/rrweb-recording-relay.test.d.ts +0 -2
  385. package/dist/rrweb-recording-relay.test.d.ts.map +0 -1
  386. package/dist/rrweb-recording-relay.test.js +0 -85
  387. package/dist/rrweb-recording-relay.test.js.map +0 -1
  388. package/dist/rrweb-recording.d.ts.map +0 -1
  389. package/dist/rrweb-recording.js.map +0 -1
  390. package/dist/scoped-fs.d.ts.map +0 -1
  391. package/dist/scoped-fs.js.map +0 -1
  392. package/dist/scoped-fs.test.d.ts +0 -5
  393. package/dist/scoped-fs.test.d.ts.map +0 -1
  394. package/dist/scoped-fs.test.js +0 -73
  395. package/dist/scoped-fs.test.js.map +0 -1
  396. package/dist/skill-stub.test.d.ts +0 -2
  397. package/dist/skill-stub.test.d.ts.map +0 -1
  398. package/dist/skill-stub.test.js +0 -22
  399. package/dist/skill-stub.test.js.map +0 -1
  400. package/dist/snapshot-tools.test.d.ts +0 -2
  401. package/dist/snapshot-tools.test.d.ts.map +0 -1
  402. package/dist/snapshot-tools.test.js +0 -856
  403. package/dist/snapshot-tools.test.js.map +0 -1
  404. package/dist/start-relay-server.d.ts.map +0 -1
  405. package/dist/start-relay-server.js.map +0 -1
  406. package/dist/styles-examples.d.ts.map +0 -1
  407. package/dist/styles-examples.js.map +0 -1
  408. package/dist/styles.d.ts.map +0 -1
  409. package/dist/styles.js.map +0 -1
  410. package/dist/tabwright-agent-skill.d.ts.map +0 -1
  411. package/dist/tabwright-agent-skill.js.map +0 -1
  412. package/dist/tabwright-agent-skill.test.d.ts +0 -2
  413. package/dist/tabwright-agent-skill.test.d.ts.map +0 -1
  414. package/dist/tabwright-agent-skill.test.js +0 -51
  415. package/dist/tabwright-agent-skill.test.js.map +0 -1
  416. package/dist/test-declarations.d.ts.map +0 -1
  417. package/dist/test-declarations.js.map +0 -1
  418. package/dist/test-utils.d.ts +0 -69
  419. package/dist/test-utils.d.ts.map +0 -1
  420. package/dist/test-utils.js +0 -448
  421. package/dist/test-utils.js.map +0 -1
  422. package/dist/test-utils.test.d.ts +0 -2
  423. package/dist/test-utils.test.d.ts.map +0 -1
  424. package/dist/test-utils.test.js +0 -55
  425. package/dist/test-utils.test.js.map +0 -1
  426. package/dist/utils.d.ts.map +0 -1
  427. package/dist/utils.js.map +0 -1
  428. package/dist/wait-for-page-load.d.ts.map +0 -1
  429. package/dist/wait-for-page-load.js.map +0 -1
  430. package/dist/workflow-capability.d.ts.map +0 -1
  431. package/dist/workflow-capability.js.map +0 -1
  432. package/dist/workflow-script-flow.test.d.ts +0 -2
  433. package/dist/workflow-script-flow.test.d.ts.map +0 -1
  434. package/dist/workflow-script-flow.test.js +0 -285
  435. package/dist/workflow-script-flow.test.js.map +0 -1
  436. package/src/__snapshots__/x.com.processed.html +0 -1003
  437. package/src/__snapshots__/x.com.processed.withStyles.html +0 -2720
  438. package/src/a11y-client.ts +0 -241
  439. package/src/aria-snapshot.test.ts +0 -311
  440. package/src/aria-snapshot.ts +0 -1681
  441. package/src/aria-snapshot.unit.test.ts +0 -615
  442. package/src/aria-snapshots/github-interactive.txt +0 -193
  443. package/src/aria-snapshots/github-raw.txt +0 -309
  444. package/src/aria-snapshots/hackernews-interactive.txt +0 -477
  445. package/src/aria-snapshots/hackernews-raw.txt +0 -428
  446. package/src/aria-snapshots/prosemirror-interactive.txt +0 -66
  447. package/src/aria-snapshots/prosemirror-raw.txt +0 -145
  448. package/src/assets/aria-labels-hacker-news.png +0 -0
  449. package/src/assets/aria-labels-old-reddit.png +0 -0
  450. package/src/assets/cursors/screen-studio/pointer-macos-tahoe-data-url.ts +0 -5
  451. package/src/assets/cursors/screen-studio/pointer-macos-tahoe.svg +0 -18
  452. package/src/assets/x.com.html +0 -32946
  453. package/src/browser-config.ts +0 -179
  454. package/src/browser-install.ts +0 -284
  455. package/src/browser-launch.ts +0 -75
  456. package/src/builtin-capabilities.ts +0 -2765
  457. package/src/capability-agent-skill.ts +0 -305
  458. package/src/capability-auth-state.ts +0 -197
  459. package/src/capability-auth.ts +0 -249
  460. package/src/capability-cli-confirmation.test.ts +0 -90
  461. package/src/capability-options.test.ts +0 -89
  462. package/src/capability-options.ts +0 -57
  463. package/src/capability-package.test.ts +0 -204
  464. package/src/capability-package.ts +0 -555
  465. package/src/capability-registry.test.ts +0 -1905
  466. package/src/capability-registry.ts +0 -1234
  467. package/src/capability-runner.ts +0 -801
  468. package/src/capability-search-relevance.test.ts +0 -73
  469. package/src/capability-studio.test.ts +0 -45
  470. package/src/capability-studio.ts +0 -641
  471. package/src/cdp-log.test.ts +0 -131
  472. package/src/cdp-log.ts +0 -112
  473. package/src/cdp-relay.ts +0 -2944
  474. package/src/cdp-session.ts +0 -77
  475. package/src/cdp-types.ts +0 -158
  476. package/src/channel-owner-inspect.test.ts +0 -94
  477. package/src/chrome-discovery.test.ts +0 -50
  478. package/src/chrome-discovery.ts +0 -220
  479. package/src/clean-html.ts +0 -141
  480. package/src/cli-help.test.ts +0 -123
  481. package/src/cli.ts +0 -3181
  482. package/src/cloud-client.ts +0 -179
  483. package/src/create-logger.ts +0 -38
  484. package/src/debugger-examples-types.ts +0 -16
  485. package/src/debugger-examples.ts +0 -66
  486. package/src/debugger.ts +0 -708
  487. package/src/diff-utils.test.ts +0 -152
  488. package/src/diff-utils.ts +0 -70
  489. package/src/doctor.test.ts +0 -244
  490. package/src/doctor.ts +0 -321
  491. package/src/editor-examples.ts +0 -158
  492. package/src/editor.ts +0 -426
  493. package/src/env-compat.ts +0 -28
  494. package/src/executor.ts +0 -1824
  495. package/src/executor.unit.test.ts +0 -168
  496. package/src/extension-connection.test.ts +0 -855
  497. package/src/extension-icon-warning.test.ts +0 -45
  498. package/src/ghost-browser.ts +0 -149
  499. package/src/ghost-cursor-client.ts +0 -494
  500. package/src/ghost-cursor-controller.ts +0 -129
  501. package/src/ghost-cursor.ts +0 -123
  502. package/src/htmlrewrite.test.ts +0 -8008
  503. package/src/htmlrewrite.ts +0 -390
  504. package/src/index.ts +0 -53
  505. package/src/kill-port.ts +0 -219
  506. package/src/kitty-graphics.test.ts +0 -139
  507. package/src/kitty-graphics.ts +0 -79
  508. package/src/locator-selector.test.ts +0 -119
  509. package/src/mcp-client.ts +0 -78
  510. package/src/mcp.ts +0 -629
  511. package/src/on-mouse-action.test.ts +0 -226
  512. package/src/options-page.test.ts +0 -839
  513. package/src/package-paths.ts +0 -38
  514. package/src/page-markdown.ts +0 -240
  515. package/src/performance-examples.ts +0 -186
  516. package/src/playwright-import.ts +0 -59
  517. package/src/popup-relocation.test.ts +0 -163
  518. package/src/product-paths.test.ts +0 -47
  519. package/src/product-paths.ts +0 -28
  520. package/src/protocol.test.ts +0 -52
  521. package/src/protocol.ts +0 -351
  522. package/src/react-source.ts +0 -379
  523. package/src/relay-client.test.ts +0 -375
  524. package/src/relay-client.ts +0 -572
  525. package/src/relay-core.test.ts +0 -1603
  526. package/src/relay-navigation.test.ts +0 -790
  527. package/src/relay-session.test.ts +0 -1375
  528. package/src/relay-state.test.ts +0 -729
  529. package/src/relay-state.ts +0 -561
  530. package/src/replay-ai-index.test.ts +0 -278
  531. package/src/replay-ai-index.ts +0 -872
  532. package/src/replay-cli.test.ts +0 -325
  533. package/src/replay-eval.ts +0 -1039
  534. package/src/replay-handoff.test.ts +0 -163
  535. package/src/replay-handoff.ts +0 -109
  536. package/src/replay-workflow-compiler.test.ts +0 -250
  537. package/src/replay-workflow-compiler.ts +0 -700
  538. package/src/resource.md +0 -409
  539. package/src/rrweb-recording-relay.test.ts +0 -99
  540. package/src/rrweb-recording-relay.ts +0 -400
  541. package/src/rrweb-recording.ts +0 -322
  542. package/src/scoped-fs.test.ts +0 -80
  543. package/src/scoped-fs.ts +0 -420
  544. package/src/skill-stub.test.ts +0 -24
  545. package/src/snapshot-tools.test.ts +0 -1017
  546. package/src/snapshots/hacker-news-accessibility-full.md +0 -81
  547. package/src/snapshots/hacker-news-accessibility-interactive.md +0 -43
  548. package/src/snapshots/page-markdown-output.txt +0 -16
  549. package/src/snapshots/shadcn-ui-accessibility-full.md +0 -201
  550. package/src/snapshots/shadcn-ui-accessibility-interactive.md +0 -109
  551. package/src/start-relay-server.ts +0 -69
  552. package/src/styles-examples.ts +0 -84
  553. package/src/styles.ts +0 -343
  554. package/src/tabwright-agent-skill.test.ts +0 -61
  555. package/src/tabwright-agent-skill.ts +0 -105
  556. package/src/test-declarations.ts +0 -13
  557. package/src/test-utils.test.ts +0 -70
  558. package/src/test-utils.ts +0 -566
  559. package/src/utils.ts +0 -78
  560. package/src/wait-for-page-load.ts +0 -198
  561. package/src/workflow-capability.ts +0 -417
  562. package/src/workflow-script-flow.test.ts +0 -388
@@ -1,47 +0,0 @@
1
- import fs from 'node:fs'
2
- import path from 'node:path'
3
- import { afterEach, describe, expect, test } from 'vitest'
4
- import { getTabwrightProjectDataDir, getTabwrightUserDataDir } from './product-paths.js'
5
-
6
- const testDirs: string[] = []
7
-
8
- function createTestDir(name: string): string {
9
- const root = path.join(process.cwd(), 'tmp')
10
- fs.mkdirSync(root, { recursive: true })
11
- const dir = fs.mkdtempSync(path.join(root, `${name}-`))
12
- testDirs.push(dir)
13
- return dir
14
- }
15
-
16
- afterEach(() => {
17
- testDirs.map((dir) => {
18
- fs.rmSync(dir, { recursive: true, force: true })
19
- return dir
20
- })
21
- })
22
-
23
- describe('Tabwright data paths', () => {
24
- test('uses the Tabwright user and project directories by default', () => {
25
- const root = createTestDir('tabwright-paths')
26
-
27
- expect(getTabwrightUserDataDir({ homeDir: root })).toBe(path.join(root, '.tabwright'))
28
- expect(getTabwrightProjectDataDir({ cwd: root })).toBe(path.join(root, '.tabwright'))
29
- })
30
-
31
- test('continues using legacy data when it is the only existing directory', () => {
32
- const root = createTestDir('tabwright-legacy-paths')
33
- fs.mkdirSync(path.join(root, '.playwriter'))
34
-
35
- expect(getTabwrightUserDataDir({ homeDir: root })).toBe(path.join(root, '.playwriter'))
36
- expect(getTabwrightProjectDataDir({ cwd: root })).toBe(path.join(root, '.playwriter'))
37
- })
38
-
39
- test('prefers the Tabwright directory when both directories exist', () => {
40
- const root = createTestDir('tabwright-current-paths')
41
- fs.mkdirSync(path.join(root, '.playwriter'))
42
- fs.mkdirSync(path.join(root, '.tabwright'))
43
-
44
- expect(getTabwrightUserDataDir({ homeDir: root })).toBe(path.join(root, '.tabwright'))
45
- expect(getTabwrightProjectDataDir({ cwd: root })).toBe(path.join(root, '.tabwright'))
46
- })
47
- })
@@ -1,28 +0,0 @@
1
- import fs from 'node:fs'
2
- import os from 'node:os'
3
- import path from 'node:path'
4
-
5
- export const TABWRIGHT_DATA_DIR_NAME = '.tabwright'
6
- export const LEGACY_PLAYWRITER_DATA_DIR_NAME = '.playwriter'
7
-
8
- export function getTabwrightUserDataDir(options: { homeDir?: string } = {}): string {
9
- const homeDir = options.homeDir || os.homedir()
10
- const currentDir = path.join(homeDir, TABWRIGHT_DATA_DIR_NAME)
11
- const legacyDir = path.join(homeDir, LEGACY_PLAYWRITER_DATA_DIR_NAME)
12
-
13
- if (!fs.existsSync(currentDir) && fs.existsSync(legacyDir)) {
14
- return legacyDir
15
- }
16
- return currentDir
17
- }
18
-
19
- export function getTabwrightProjectDataDir(options: { cwd?: string } = {}): string {
20
- const cwd = options.cwd || process.cwd()
21
- const currentDir = path.join(cwd, TABWRIGHT_DATA_DIR_NAME)
22
- const legacyDir = path.join(cwd, LEGACY_PLAYWRITER_DATA_DIR_NAME)
23
-
24
- if (!fs.existsSync(currentDir) && fs.existsSync(legacyDir)) {
25
- return legacyDir
26
- }
27
- return currentDir
28
- }
@@ -1,52 +0,0 @@
1
- import { describe, expect, test } from 'vitest'
2
- import {
3
- CURRENT_EXTENSION_FEATURES,
4
- EXTENSION_FEATURE,
5
- allowsExtensionFeature,
6
- parseExtensionFeatures,
7
- requiredExtensionFeatureForMethod,
8
- supportsExtensionFeature,
9
- } from './protocol.js'
10
-
11
- describe('extension feature negotiation', () => {
12
- test('treats a missing feature query as a legacy handshake', () => {
13
- expect(parseExtensionFeatures(undefined)).toBeUndefined()
14
- expect(
15
- supportsExtensionFeature({
16
- features: undefined,
17
- feature: EXTENSION_FEATURE.heartbeat,
18
- }),
19
- ).toBe(false)
20
- expect(
21
- allowsExtensionFeature({
22
- features: undefined,
23
- feature: EXTENSION_FEATURE.heartbeat,
24
- }),
25
- ).toBe(true)
26
- expect(
27
- allowsExtensionFeature({
28
- features: [],
29
- feature: EXTENSION_FEATURE.heartbeat,
30
- }),
31
- ).toBe(false)
32
- })
33
-
34
- test('deduplicates advertised features and ignores unknown values safely', () => {
35
- const features = parseExtensionFeatures(
36
- `${EXTENSION_FEATURE.heartbeat},future-feature-v9,${EXTENSION_FEATURE.heartbeat}`,
37
- )
38
-
39
- expect(features).toEqual([EXTENSION_FEATURE.heartbeat, 'future-feature-v9'])
40
- expect(
41
- supportsExtensionFeature({
42
- features,
43
- feature: EXTENSION_FEATURE.heartbeat,
44
- }),
45
- ).toBe(true)
46
- expect(CURRENT_EXTENSION_FEATURES).toContain(EXTENSION_FEATURE.rrwebRecording)
47
- expect(requiredExtensionFeatureForMethod('startRrwebRecording')).toBe(
48
- EXTENSION_FEATURE.rrwebRecording,
49
- )
50
- expect(requiredExtensionFeatureForMethod('forwardCDPCommand')).toBeUndefined()
51
- })
52
- })
package/src/protocol.ts DELETED
@@ -1,351 +0,0 @@
1
- import { CDPEventFor, ProtocolMapping } from './cdp-types.js'
2
-
3
- export const VERSION = 1
4
-
5
- export const EXTENSION_FEATURE = {
6
- heartbeat: 'heartbeat-v1',
7
- createInitialTab: 'create-initial-tab-v1',
8
- rrwebRecording: 'rrweb-recording-v1',
9
- toolbarRecording: 'toolbar-recording-v1',
10
- multiExtension: 'multi-extension-v1',
11
- } as const
12
-
13
- export type ExtensionFeature = (typeof EXTENSION_FEATURE)[keyof typeof EXTENSION_FEATURE]
14
-
15
- export const CURRENT_EXTENSION_FEATURES: ExtensionFeature[] = Object.values(EXTENSION_FEATURE)
16
-
17
- export const RELAY_FEATURE = {
18
- extensionFeatureNegotiation: 'extension-feature-negotiation-v1',
19
- capabilityOptions: 'capability-options-v1',
20
- capabilityAuth: 'capability-auth-v1',
21
- capabilityAuthAutoTab: 'capability-auth-auto-tab-v1',
22
- rrwebRecording: 'rrweb-recording-v1',
23
- multiExtension: 'multi-extension-v1',
24
- } as const
25
-
26
- export type RelayFeature = (typeof RELAY_FEATURE)[keyof typeof RELAY_FEATURE]
27
-
28
- export const RELAY_FEATURES: RelayFeature[] = Object.values(RELAY_FEATURE)
29
- export const RELAY_REVIEW_FEATURES: RelayFeature[] = [
30
- RELAY_FEATURE.capabilityOptions,
31
- RELAY_FEATURE.capabilityAuth,
32
- RELAY_FEATURE.capabilityAuthAutoTab,
33
- RELAY_FEATURE.rrwebRecording,
34
- ]
35
-
36
- export function supportsExtensionFeature(options: {
37
- features: readonly string[] | undefined
38
- feature: ExtensionFeature
39
- }): boolean {
40
- return options.features?.includes(options.feature) || false
41
- }
42
-
43
- export function allowsExtensionFeature(options: {
44
- features: readonly string[] | undefined
45
- feature: ExtensionFeature
46
- }): boolean {
47
- if (options.features === undefined) {
48
- return true
49
- }
50
- return supportsExtensionFeature(options)
51
- }
52
-
53
- export function parseExtensionFeatures(value: string | undefined): string[] | undefined {
54
- if (!value) {
55
- return undefined
56
- }
57
- return [
58
- ...new Set(
59
- value
60
- .split(',')
61
- .map((feature) => feature.trim())
62
- .filter((feature) => {
63
- return feature.length > 0
64
- }),
65
- ),
66
- ]
67
- }
68
-
69
- export function requiredExtensionFeatureForMethod(method: string): ExtensionFeature | undefined {
70
- if (method === 'createInitialTab') {
71
- return EXTENSION_FEATURE.createInitialTab
72
- }
73
- if (
74
- method === 'startRrwebRecording' ||
75
- method === 'stopRrwebRecording' ||
76
- method === 'isRrwebRecording' ||
77
- method === 'cancelRrwebRecording'
78
- ) {
79
- return EXTENSION_FEATURE.rrwebRecording
80
- }
81
- return undefined
82
- }
83
-
84
- type ForwardCDPCommand = {
85
- [K in keyof ProtocolMapping.Commands]: {
86
- id: number
87
- method: 'forwardCDPCommand'
88
- params: {
89
- method: K
90
- sessionId?: string
91
- params?: ProtocolMapping.Commands[K]['paramsType'][0]
92
- source?: 'playwriter'
93
- }
94
- }
95
- }[keyof ProtocolMapping.Commands]
96
-
97
- export type ExtensionCommandMessage = ForwardCDPCommand
98
-
99
- export type ExtensionResponseMessage = {
100
- id: number
101
- method?: undefined
102
- result?: any
103
- error?: string
104
- }
105
-
106
- /**
107
- * This produces a discriminated union for narrowing, similar to ForwardCDPCommand,
108
- * but for forwarded CDP events. Uses CDPEvent to maintain proper type extraction.
109
- */
110
- export type ExtensionEventMessage = {
111
- [K in keyof ProtocolMapping.Events]: {
112
- id?: undefined
113
- method: 'forwardCDPEvent'
114
- params: {
115
- method: CDPEventFor<K>['method']
116
- sessionId?: string
117
- params?: CDPEventFor<K>['params']
118
- }
119
- }
120
- }[keyof ProtocolMapping.Events]
121
-
122
- export type ExtensionLogMessage = {
123
- id?: undefined
124
- method: 'log'
125
- params: {
126
- level: 'log' | 'debug' | 'info' | 'warn' | 'error'
127
- args: string[]
128
- }
129
- }
130
-
131
- export type ExtensionPongMessage = {
132
- id?: undefined
133
- method: 'pong'
134
- }
135
-
136
- export type ServerPingMessage = {
137
- method: 'ping'
138
- id?: undefined
139
- }
140
-
141
- export type RrwebEvent = Record<string, unknown>
142
-
143
- export type RrwebRecordingDataMessage = {
144
- id?: undefined
145
- method: 'rrwebRecordingData'
146
- params: {
147
- tabId: number
148
- events: RrwebEvent[]
149
- final?: boolean
150
- }
151
- }
152
-
153
- export type RrwebRecordingCancelledMessage = {
154
- id?: undefined
155
- method: 'rrwebRecordingCancelled'
156
- params: {
157
- tabId: number
158
- }
159
- }
160
-
161
- export type ToolbarRecordingAction = 'status' | 'toggle'
162
-
163
- export type ToolbarRecordingResult =
164
- | {
165
- success: true
166
- isRecording: boolean
167
- startedAt?: number
168
- tabId?: number
169
- id?: string
170
- path?: string
171
- duration?: number
172
- size?: number
173
- replayId?: string
174
- replayPath?: string
175
- replayDuration?: number
176
- replaySize?: number
177
- replayEventCount?: number
178
- warning?: string
179
- }
180
- | {
181
- success: false
182
- isRecording?: boolean
183
- error: string
184
- }
185
-
186
- export type ToolbarRecordingRequestMessage = {
187
- id?: undefined
188
- method: 'toolbarRecordingRequest'
189
- params: {
190
- requestId: string
191
- action: ToolbarRecordingAction
192
- sessionId?: string
193
- }
194
- }
195
-
196
- export type ToolbarRecordingResponseMessage = {
197
- id?: undefined
198
- method: 'toolbarRecordingResponse'
199
- params: {
200
- requestId: string
201
- result: ToolbarRecordingResult
202
- }
203
- }
204
-
205
- export type ExtensionMessage =
206
- | ExtensionResponseMessage
207
- | ExtensionEventMessage
208
- | ExtensionLogMessage
209
- | ExtensionPongMessage
210
- | RrwebRecordingDataMessage
211
- | RrwebRecordingCancelledMessage
212
- | ToolbarRecordingRequestMessage
213
-
214
- // rrweb DOM replay command messages (MCP -> Extension via relay)
215
- export type StartRrwebRecordingParams = {
216
- /** CDP tab session ID (pw-tab-*) to identify which tab to record. */
217
- sessionId?: string
218
- /** Milliseconds between full snapshot checkouts. Use 0 to disable periodic checkouts. */
219
- checkoutEveryNms?: number
220
- maskAllInputs?: boolean
221
- recordCanvas?: boolean
222
- inlineImages?: boolean
223
- collectFonts?: boolean
224
- mousemoveWait?: number
225
- }
226
-
227
- /** HTTP body for /rrweb-recording/start endpoint */
228
- export type StartRrwebRecordingBody = StartRrwebRecordingParams & {
229
- outputPath?: string
230
- }
231
-
232
- export type StopRrwebRecordingParams = {
233
- /** CDP tab session ID (pw-tab-*) to identify which tab to stop recording. */
234
- sessionId?: string
235
- }
236
-
237
- export type IsRrwebRecordingParams = {
238
- /** CDP tab session ID (pw-tab-*) to identify which tab to check. */
239
- sessionId?: string
240
- }
241
-
242
- export type CancelRrwebRecordingParams = {
243
- /** CDP tab session ID (pw-tab-*) to identify which tab to cancel. */
244
- sessionId?: string
245
- }
246
-
247
- export type StartRrwebRecordingMessage = {
248
- id: number
249
- method: 'startRrwebRecording'
250
- params: StartRrwebRecordingParams
251
- }
252
-
253
- export type StopRrwebRecordingMessage = {
254
- id: number
255
- method: 'stopRrwebRecording'
256
- params: StopRrwebRecordingParams
257
- }
258
-
259
- export type IsRrwebRecordingMessage = {
260
- id: number
261
- method: 'isRrwebRecording'
262
- params: IsRrwebRecordingParams
263
- }
264
-
265
- export type CancelRrwebRecordingMessage = {
266
- id: number
267
- method: 'cancelRrwebRecording'
268
- params: CancelRrwebRecordingParams
269
- }
270
-
271
- export type RrwebRecordingCommandMessage =
272
- | StartRrwebRecordingMessage
273
- | StopRrwebRecordingMessage
274
- | IsRrwebRecordingMessage
275
- | CancelRrwebRecordingMessage
276
-
277
- export type StartRrwebRecordingResult =
278
- | {
279
- success: true
280
- tabId: number
281
- startedAt: number
282
- url?: string
283
- }
284
- | {
285
- success: false
286
- error: string
287
- }
288
-
289
- /** Result from extension - doesn't include path/size since relay writes the file */
290
- export type ExtensionStopRrwebRecordingResult =
291
- | {
292
- success: true
293
- tabId: number
294
- duration: number
295
- }
296
- | {
297
- success: false
298
- error: string
299
- }
300
-
301
- /** Final result from relay - includes path/size after file is written */
302
- export type StopRrwebRecordingResult =
303
- | {
304
- success: true
305
- id?: string
306
- tabId: number
307
- duration: number
308
- path: string
309
- size: number
310
- eventCount: number
311
- }
312
- | {
313
- success: false
314
- error: string
315
- }
316
-
317
- export type IsRrwebRecordingResult = {
318
- isRecording: boolean
319
- tabId?: number
320
- startedAt?: number
321
- url?: string
322
- }
323
-
324
- export type CancelRrwebRecordingResult = {
325
- success: boolean
326
- error?: string
327
- }
328
-
329
- // Ghost Browser API command message (for Ghost Browser integration)
330
- export type GhostBrowserCommandMessage = {
331
- id: number
332
- method: 'ghost-browser'
333
- params: {
334
- /** API namespace: 'ghostPublicAPI' | 'ghostProxies' | 'projects' */
335
- namespace: 'ghostPublicAPI' | 'ghostProxies' | 'projects'
336
- /** Method name within the namespace */
337
- method: string
338
- /** Arguments to pass to the method */
339
- args: unknown[]
340
- }
341
- }
342
-
343
- export type GhostBrowserCommandResult =
344
- | {
345
- success: true
346
- result: unknown
347
- }
348
- | {
349
- success: false
350
- error: string
351
- }