@vforsh/argus-watcher 0.1.10 → 0.1.12

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 (346) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/buffer/RealtimeNetBuffer.d.ts +31 -0
  3. package/dist/buffer/RealtimeNetBuffer.d.ts.map +1 -0
  4. package/dist/buffer/RealtimeNetBuffer.js +190 -0
  5. package/dist/buffer/RealtimeNetBuffer.js.map +1 -0
  6. package/dist/cdp/editor.d.ts +5 -1
  7. package/dist/cdp/editor.d.ts.map +1 -1
  8. package/dist/cdp/editor.js +44 -0
  9. package/dist/cdp/editor.js.map +1 -1
  10. package/dist/cdp/eval.d.ts +1 -0
  11. package/dist/cdp/eval.d.ts.map +1 -1
  12. package/dist/cdp/eval.js +77 -29
  13. package/dist/cdp/eval.js.map +1 -1
  14. package/dist/cdp/mouse.d.ts +1 -1
  15. package/dist/cdp/mouse.d.ts.map +1 -1
  16. package/dist/cdp/mouse.js +1 -1
  17. package/dist/cdp/mouse.js.map +1 -1
  18. package/dist/cdp/networkCapture.d.ts +2 -0
  19. package/dist/cdp/networkCapture.d.ts.map +1 -1
  20. package/dist/cdp/networkCapture.js +8 -0
  21. package/dist/cdp/networkCapture.js.map +1 -1
  22. package/dist/cdp/networkRealtimeCapture.d.ts +23 -0
  23. package/dist/cdp/networkRealtimeCapture.d.ts.map +1 -0
  24. package/dist/cdp/networkRealtimeCapture.js +161 -0
  25. package/dist/cdp/networkRealtimeCapture.js.map +1 -0
  26. package/dist/cdp/pageIndicator.d.ts.map +1 -1
  27. package/dist/cdp/pageIndicator.js +1 -249
  28. package/dist/cdp/pageIndicator.js.map +1 -1
  29. package/dist/cdp/pageIndicatorScript.d.ts +19 -0
  30. package/dist/cdp/pageIndicatorScript.d.ts.map +1 -0
  31. package/dist/cdp/pageIndicatorScript.js +351 -0
  32. package/dist/cdp/pageIndicatorScript.js.map +1 -0
  33. package/dist/cdp/screenshot.d.ts.map +1 -1
  34. package/dist/cdp/screenshot.js +67 -19
  35. package/dist/cdp/screenshot.js.map +1 -1
  36. package/dist/events.d.ts +17 -2
  37. package/dist/events.d.ts.map +1 -1
  38. package/dist/http/routes/authCookies.d.ts +5 -10
  39. package/dist/http/routes/authCookies.d.ts.map +1 -1
  40. package/dist/http/routes/authCookies.js +17 -30
  41. package/dist/http/routes/authCookies.js.map +1 -1
  42. package/dist/http/routes/defineDomTargetRoute.d.ts +59 -0
  43. package/dist/http/routes/defineDomTargetRoute.d.ts.map +1 -0
  44. package/dist/http/routes/defineDomTargetRoute.js +39 -0
  45. package/dist/http/routes/defineDomTargetRoute.js.map +1 -0
  46. package/dist/http/routes/defineRoute.d.ts +39 -0
  47. package/dist/http/routes/defineRoute.d.ts.map +1 -0
  48. package/dist/http/routes/defineRoute.js +41 -0
  49. package/dist/http/routes/defineRoute.js.map +1 -0
  50. package/dist/http/routes/domSelectorRoute.d.ts +4 -11
  51. package/dist/http/routes/domSelectorRoute.d.ts.map +1 -1
  52. package/dist/http/routes/domSelectorRoute.js +9 -17
  53. package/dist/http/routes/domSelectorRoute.js.map +1 -1
  54. package/dist/http/routes/getAuthCookies.d.ts +1 -2
  55. package/dist/http/routes/getAuthCookies.d.ts.map +1 -1
  56. package/dist/http/routes/getAuthCookies.js +14 -14
  57. package/dist/http/routes/getAuthCookies.js.map +1 -1
  58. package/dist/http/routes/getAuthState.d.ts +1 -2
  59. package/dist/http/routes/getAuthState.d.ts.map +1 -1
  60. package/dist/http/routes/getAuthState.js +13 -13
  61. package/dist/http/routes/getAuthState.js.map +1 -1
  62. package/dist/http/routes/getDialog.d.ts +1 -2
  63. package/dist/http/routes/getDialog.d.ts.map +1 -1
  64. package/dist/http/routes/getDialog.js +7 -10
  65. package/dist/http/routes/getDialog.js.map +1 -1
  66. package/dist/http/routes/getEmulation.d.ts +1 -2
  67. package/dist/http/routes/getEmulation.d.ts.map +1 -1
  68. package/dist/http/routes/getEmulation.js +7 -7
  69. package/dist/http/routes/getEmulation.js.map +1 -1
  70. package/dist/http/routes/getExtensionTabs.d.ts +2 -0
  71. package/dist/http/routes/getExtensionTabs.d.ts.map +1 -0
  72. package/dist/http/routes/getExtensionTabs.js +24 -0
  73. package/dist/http/routes/getExtensionTabs.js.map +1 -0
  74. package/dist/http/routes/getLogs.d.ts +1 -2
  75. package/dist/http/routes/getLogs.d.ts.map +1 -1
  76. package/dist/http/routes/getLogs.js +31 -26
  77. package/dist/http/routes/getLogs.js.map +1 -1
  78. package/dist/http/routes/getNet.d.ts +1 -2
  79. package/dist/http/routes/getNet.d.ts.map +1 -1
  80. package/dist/http/routes/getNet.js +19 -21
  81. package/dist/http/routes/getNet.js.map +1 -1
  82. package/dist/http/routes/getNetRequest.d.ts +1 -2
  83. package/dist/http/routes/getNetRequest.d.ts.map +1 -1
  84. package/dist/http/routes/getNetRequest.js +22 -20
  85. package/dist/http/routes/getNetRequest.js.map +1 -1
  86. package/dist/http/routes/getNetRequestBody.d.ts +1 -2
  87. package/dist/http/routes/getNetRequestBody.d.ts.map +1 -1
  88. package/dist/http/routes/getNetRequestBody.js +53 -51
  89. package/dist/http/routes/getNetRequestBody.js.map +1 -1
  90. package/dist/http/routes/getNetRequests.d.ts +1 -2
  91. package/dist/http/routes/getNetRequests.d.ts.map +1 -1
  92. package/dist/http/routes/getNetRequests.js +19 -21
  93. package/dist/http/routes/getNetRequests.js.map +1 -1
  94. package/dist/http/routes/getNetSse.d.ts +2 -0
  95. package/dist/http/routes/getNetSse.d.ts.map +1 -0
  96. package/dist/http/routes/getNetSse.js +21 -0
  97. package/dist/http/routes/getNetSse.js.map +1 -0
  98. package/dist/http/routes/getNetTail.d.ts +1 -2
  99. package/dist/http/routes/getNetTail.d.ts.map +1 -1
  100. package/dist/http/routes/getNetTail.js +21 -30
  101. package/dist/http/routes/getNetTail.js.map +1 -1
  102. package/dist/http/routes/getNetWebSocketConnection.d.ts +2 -0
  103. package/dist/http/routes/getNetWebSocketConnection.d.ts.map +1 -0
  104. package/dist/http/routes/getNetWebSocketConnection.js +25 -0
  105. package/dist/http/routes/getNetWebSocketConnection.js.map +1 -0
  106. package/dist/http/routes/getNetWebSockets.d.ts +2 -0
  107. package/dist/http/routes/getNetWebSockets.d.ts.map +1 -0
  108. package/dist/http/routes/getNetWebSockets.js +21 -0
  109. package/dist/http/routes/getNetWebSockets.js.map +1 -0
  110. package/dist/http/routes/getStatus.d.ts +1 -2
  111. package/dist/http/routes/getStatus.d.ts.map +1 -1
  112. package/dist/http/routes/getStatus.js +7 -4
  113. package/dist/http/routes/getStatus.js.map +1 -1
  114. package/dist/http/routes/getTail.d.ts +1 -2
  115. package/dist/http/routes/getTail.d.ts.map +1 -1
  116. package/dist/http/routes/getTail.js +31 -26
  117. package/dist/http/routes/getTail.js.map +1 -1
  118. package/dist/http/routes/getTargets.d.ts +1 -2
  119. package/dist/http/routes/getTargets.d.ts.map +1 -1
  120. package/dist/http/routes/getTargets.js +14 -13
  121. package/dist/http/routes/getTargets.js.map +1 -1
  122. package/dist/http/routes/getThrottle.d.ts +1 -2
  123. package/dist/http/routes/getThrottle.d.ts.map +1 -1
  124. package/dist/http/routes/getThrottle.js +7 -7
  125. package/dist/http/routes/getThrottle.js.map +1 -1
  126. package/dist/http/routes/index.d.ts +6 -8
  127. package/dist/http/routes/index.d.ts.map +1 -1
  128. package/dist/http/routes/index.js +115 -102
  129. package/dist/http/routes/index.js.map +1 -1
  130. package/dist/http/routes/netFilters.d.ts +10 -0
  131. package/dist/http/routes/netFilters.d.ts.map +1 -1
  132. package/dist/http/routes/netFilters.js +26 -3
  133. package/dist/http/routes/netFilters.js.map +1 -1
  134. package/dist/http/routes/netMock.d.ts +3 -0
  135. package/dist/http/routes/netMock.d.ts.map +1 -0
  136. package/dist/http/routes/netMock.js +141 -0
  137. package/dist/http/routes/netMock.js.map +1 -0
  138. package/dist/http/routes/postAttach.d.ts +1 -2
  139. package/dist/http/routes/postAttach.d.ts.map +1 -1
  140. package/dist/http/routes/postAttach.js +19 -21
  141. package/dist/http/routes/postAttach.js.map +1 -1
  142. package/dist/http/routes/postAuthStateLoad.d.ts +1 -2
  143. package/dist/http/routes/postAuthStateLoad.d.ts.map +1 -1
  144. package/dist/http/routes/postAuthStateLoad.js +29 -34
  145. package/dist/http/routes/postAuthStateLoad.js.map +1 -1
  146. package/dist/http/routes/postCodeEdit.d.ts +2 -0
  147. package/dist/http/routes/postCodeEdit.d.ts.map +1 -0
  148. package/dist/http/routes/postCodeEdit.js +21 -0
  149. package/dist/http/routes/postCodeEdit.js.map +1 -0
  150. package/dist/http/routes/postCodeGrep.d.ts +1 -2
  151. package/dist/http/routes/postCodeGrep.d.ts.map +1 -1
  152. package/dist/http/routes/postCodeGrep.js +20 -25
  153. package/dist/http/routes/postCodeGrep.js.map +1 -1
  154. package/dist/http/routes/postCodeList.d.ts +1 -2
  155. package/dist/http/routes/postCodeList.d.ts.map +1 -1
  156. package/dist/http/routes/postCodeList.js +14 -19
  157. package/dist/http/routes/postCodeList.js.map +1 -1
  158. package/dist/http/routes/postCodeRead.d.ts +1 -2
  159. package/dist/http/routes/postCodeRead.d.ts.map +1 -1
  160. package/dist/http/routes/postCodeRead.js +24 -29
  161. package/dist/http/routes/postCodeRead.js.map +1 -1
  162. package/dist/http/routes/postDetach.d.ts +1 -2
  163. package/dist/http/routes/postDetach.d.ts.map +1 -1
  164. package/dist/http/routes/postDetach.js +19 -21
  165. package/dist/http/routes/postDetach.js.map +1 -1
  166. package/dist/http/routes/postDialog.d.ts +1 -2
  167. package/dist/http/routes/postDialog.d.ts.map +1 -1
  168. package/dist/http/routes/postDialog.js +30 -29
  169. package/dist/http/routes/postDialog.js.map +1 -1
  170. package/dist/http/routes/postDomAdd.d.ts +1 -2
  171. package/dist/http/routes/postDomAdd.d.ts.map +1 -1
  172. package/dist/http/routes/postDomAdd.js +44 -48
  173. package/dist/http/routes/postDomAdd.js.map +1 -1
  174. package/dist/http/routes/postDomClick.d.ts +1 -2
  175. package/dist/http/routes/postDomClick.d.ts.map +1 -1
  176. package/dist/http/routes/postDomClick.js +25 -57
  177. package/dist/http/routes/postDomClick.js.map +1 -1
  178. package/dist/http/routes/postDomFill.d.ts +1 -2
  179. package/dist/http/routes/postDomFill.d.ts.map +1 -1
  180. package/dist/http/routes/postDomFill.js +17 -49
  181. package/dist/http/routes/postDomFill.js.map +1 -1
  182. package/dist/http/routes/postDomFocus.d.ts +1 -2
  183. package/dist/http/routes/postDomFocus.d.ts.map +1 -1
  184. package/dist/http/routes/postDomFocus.js +9 -39
  185. package/dist/http/routes/postDomFocus.js.map +1 -1
  186. package/dist/http/routes/postDomHover.d.ts +1 -2
  187. package/dist/http/routes/postDomHover.d.ts.map +1 -1
  188. package/dist/http/routes/postDomHover.js +9 -39
  189. package/dist/http/routes/postDomHover.js.map +1 -1
  190. package/dist/http/routes/postDomInfo.d.ts +1 -2
  191. package/dist/http/routes/postDomInfo.d.ts.map +1 -1
  192. package/dist/http/routes/postDomInfo.js +14 -20
  193. package/dist/http/routes/postDomInfo.js.map +1 -1
  194. package/dist/http/routes/postDomKeydown.d.ts +1 -2
  195. package/dist/http/routes/postDomKeydown.d.ts.map +1 -1
  196. package/dist/http/routes/postDomKeydown.js +26 -30
  197. package/dist/http/routes/postDomKeydown.js.map +1 -1
  198. package/dist/http/routes/postDomModify.d.ts +1 -2
  199. package/dist/http/routes/postDomModify.d.ts.map +1 -1
  200. package/dist/http/routes/postDomModify.js +30 -41
  201. package/dist/http/routes/postDomModify.js.map +1 -1
  202. package/dist/http/routes/postDomRemove.d.ts +1 -2
  203. package/dist/http/routes/postDomRemove.d.ts.map +1 -1
  204. package/dist/http/routes/postDomRemove.js +13 -18
  205. package/dist/http/routes/postDomRemove.js.map +1 -1
  206. package/dist/http/routes/postDomScroll.d.ts +1 -2
  207. package/dist/http/routes/postDomScroll.d.ts.map +1 -1
  208. package/dist/http/routes/postDomScroll.js +37 -42
  209. package/dist/http/routes/postDomScroll.js.map +1 -1
  210. package/dist/http/routes/postDomScrollTo.d.ts +1 -2
  211. package/dist/http/routes/postDomScrollTo.d.ts.map +1 -1
  212. package/dist/http/routes/postDomScrollTo.js +42 -48
  213. package/dist/http/routes/postDomScrollTo.js.map +1 -1
  214. package/dist/http/routes/postDomSetFile.d.ts +1 -2
  215. package/dist/http/routes/postDomSetFile.d.ts.map +1 -1
  216. package/dist/http/routes/postDomSetFile.js +29 -32
  217. package/dist/http/routes/postDomSetFile.js.map +1 -1
  218. package/dist/http/routes/postDomTree.d.ts +1 -2
  219. package/dist/http/routes/postDomTree.d.ts.map +1 -1
  220. package/dist/http/routes/postDomTree.js +13 -17
  221. package/dist/http/routes/postDomTree.js.map +1 -1
  222. package/dist/http/routes/postEmulation.d.ts +1 -2
  223. package/dist/http/routes/postEmulation.d.ts.map +1 -1
  224. package/dist/http/routes/postEmulation.js +29 -39
  225. package/dist/http/routes/postEmulation.js.map +1 -1
  226. package/dist/http/routes/postEval.d.ts +1 -2
  227. package/dist/http/routes/postEval.d.ts.map +1 -1
  228. package/dist/http/routes/postEval.js +31 -22
  229. package/dist/http/routes/postEval.js.map +1 -1
  230. package/dist/http/routes/postLocate.d.ts +2 -4
  231. package/dist/http/routes/postLocate.d.ts.map +1 -1
  232. package/dist/http/routes/postLocate.js +40 -60
  233. package/dist/http/routes/postLocate.js.map +1 -1
  234. package/dist/http/routes/postNetClear.d.ts +1 -2
  235. package/dist/http/routes/postNetClear.d.ts.map +1 -1
  236. package/dist/http/routes/postNetClear.js +14 -12
  237. package/dist/http/routes/postNetClear.js.map +1 -1
  238. package/dist/http/routes/postReload.d.ts +1 -2
  239. package/dist/http/routes/postReload.d.ts.map +1 -1
  240. package/dist/http/routes/postReload.js +10 -16
  241. package/dist/http/routes/postReload.js.map +1 -1
  242. package/dist/http/routes/postScreenshot.d.ts +1 -2
  243. package/dist/http/routes/postScreenshot.d.ts.map +1 -1
  244. package/dist/http/routes/postScreenshot.js +35 -12
  245. package/dist/http/routes/postScreenshot.js.map +1 -1
  246. package/dist/http/routes/postShutdown.d.ts +1 -2
  247. package/dist/http/routes/postShutdown.d.ts.map +1 -1
  248. package/dist/http/routes/postShutdown.js +15 -11
  249. package/dist/http/routes/postShutdown.js.map +1 -1
  250. package/dist/http/routes/postSnapshot.d.ts +1 -2
  251. package/dist/http/routes/postSnapshot.d.ts.map +1 -1
  252. package/dist/http/routes/postSnapshot.js +21 -26
  253. package/dist/http/routes/postSnapshot.js.map +1 -1
  254. package/dist/http/routes/postThrottle.d.ts +1 -2
  255. package/dist/http/routes/postThrottle.d.ts.map +1 -1
  256. package/dist/http/routes/postThrottle.js +26 -35
  257. package/dist/http/routes/postThrottle.js.map +1 -1
  258. package/dist/http/routes/postTraceStart.d.ts +1 -2
  259. package/dist/http/routes/postTraceStart.d.ts.map +1 -1
  260. package/dist/http/routes/postTraceStart.js +8 -16
  261. package/dist/http/routes/postTraceStart.js.map +1 -1
  262. package/dist/http/routes/postTraceStop.d.ts +1 -2
  263. package/dist/http/routes/postTraceStop.d.ts.map +1 -1
  264. package/dist/http/routes/postTraceStop.js +8 -16
  265. package/dist/http/routes/postTraceStop.js.map +1 -1
  266. package/dist/http/routes/postVisibility.d.ts +2 -0
  267. package/dist/http/routes/postVisibility.d.ts.map +1 -0
  268. package/dist/http/routes/postVisibility.js +23 -0
  269. package/dist/http/routes/postVisibility.js.map +1 -0
  270. package/dist/http/routes/storage.d.ts +2 -4
  271. package/dist/http/routes/storage.d.ts.map +1 -1
  272. package/dist/http/routes/storage.js +13 -25
  273. package/dist/http/routes/storage.js.map +1 -1
  274. package/dist/http/server.d.ts +14 -9
  275. package/dist/http/server.d.ts.map +1 -1
  276. package/dist/http/server.js.map +1 -1
  277. package/dist/index.d.ts +5 -5
  278. package/dist/index.d.ts.map +1 -1
  279. package/dist/index.js.map +1 -1
  280. package/dist/native-messaging/control-session-manager.d.ts +16 -0
  281. package/dist/native-messaging/control-session-manager.d.ts.map +1 -0
  282. package/dist/native-messaging/control-session-manager.js +50 -0
  283. package/dist/native-messaging/control-session-manager.js.map +1 -0
  284. package/dist/native-messaging/messaging.d.ts +4 -4
  285. package/dist/native-messaging/messaging.d.ts.map +1 -1
  286. package/dist/native-messaging/messaging.js.map +1 -1
  287. package/dist/native-messaging/session-manager.d.ts +2 -15
  288. package/dist/native-messaging/session-manager.d.ts.map +1 -1
  289. package/dist/native-messaging/session-manager.js +0 -34
  290. package/dist/native-messaging/session-manager.js.map +1 -1
  291. package/dist/native-messaging/types.d.ts +19 -2
  292. package/dist/native-messaging/types.d.ts.map +1 -1
  293. package/dist/net/NetMockController.d.ts +26 -0
  294. package/dist/net/NetMockController.d.ts.map +1 -0
  295. package/dist/net/NetMockController.js +264 -0
  296. package/dist/net/NetMockController.js.map +1 -0
  297. package/dist/runtime/watcherServices.d.ts.map +1 -1
  298. package/dist/runtime/watcherServices.js +12 -3
  299. package/dist/runtime/watcherServices.js.map +1 -1
  300. package/dist/runtime/watcherSetup.d.ts +7 -0
  301. package/dist/runtime/watcherSetup.d.ts.map +1 -1
  302. package/dist/runtime/watcherSetup.js +9 -0
  303. package/dist/runtime/watcherSetup.js.map +1 -1
  304. package/dist/scripts/install-host.js +58 -54
  305. package/dist/scripts/install-host.js.map +1 -1
  306. package/dist/sources/extension-control-source.d.ts +9 -0
  307. package/dist/sources/extension-control-source.d.ts.map +1 -0
  308. package/dist/sources/extension-control-source.js +88 -0
  309. package/dist/sources/extension-control-source.js.map +1 -0
  310. package/dist/sources/extension-delegating-session.d.ts +15 -2
  311. package/dist/sources/extension-delegating-session.d.ts.map +1 -1
  312. package/dist/sources/extension-delegating-session.js +16 -4
  313. package/dist/sources/extension-delegating-session.js.map +1 -1
  314. package/dist/sources/extension-frame-runtime.d.ts.map +1 -1
  315. package/dist/sources/extension-frame-runtime.js +10 -2
  316. package/dist/sources/extension-frame-runtime.js.map +1 -1
  317. package/dist/sources/extension-frame-state.d.ts +23 -0
  318. package/dist/sources/extension-frame-state.d.ts.map +1 -1
  319. package/dist/sources/extension-frame-state.js +41 -0
  320. package/dist/sources/extension-frame-state.js.map +1 -1
  321. package/dist/sources/extension-source.d.ts +3 -1
  322. package/dist/sources/extension-source.d.ts.map +1 -1
  323. package/dist/sources/extension-source.js +51 -96
  324. package/dist/sources/extension-source.js.map +1 -1
  325. package/dist/sources/extension-target-recovery.d.ts +32 -0
  326. package/dist/sources/extension-target-recovery.d.ts.map +1 -0
  327. package/dist/sources/extension-target-recovery.js +114 -0
  328. package/dist/sources/extension-target-recovery.js.map +1 -0
  329. package/dist/sources/types.d.ts +15 -0
  330. package/dist/sources/types.d.ts.map +1 -1
  331. package/dist/startWatcherRuntime.d.ts.map +1 -1
  332. package/dist/startWatcherRuntime.js +11 -1
  333. package/dist/startWatcherRuntime.js.map +1 -1
  334. package/dist/visibility/VisibilityController.d.ts +27 -0
  335. package/dist/visibility/VisibilityController.d.ts.map +1 -0
  336. package/dist/visibility/VisibilityController.js +48 -0
  337. package/dist/visibility/VisibilityController.js.map +1 -0
  338. package/package.json +2 -2
  339. package/dist/http/routes/postStorageLocal.d.ts +0 -2
  340. package/dist/http/routes/postStorageLocal.d.ts.map +0 -1
  341. package/dist/http/routes/postStorageLocal.js +0 -3
  342. package/dist/http/routes/postStorageLocal.js.map +0 -1
  343. package/dist/http/routes/postStorageSession.d.ts +0 -2
  344. package/dist/http/routes/postStorageSession.d.ts.map +0 -1
  345. package/dist/http/routes/postStorageSession.js +0 -3
  346. package/dist/http/routes/postStorageSession.js.map +0 -1
@@ -11,7 +11,10 @@ import path from 'node:path';
11
11
  import os from 'node:os';
12
12
  import { execSync } from 'node:child_process';
13
13
  const __dirname = import.meta.dirname;
14
- const HOST_NAME = 'com.vforsh.argus.bridge';
14
+ const BRIDGE_HOST_NAME = 'com.vforsh.argus.bridge';
15
+ const CONTROL_HOST_NAME = 'com.vforsh.argus.control';
16
+ const CONTROL_WATCHER_ID = 'extension-control';
17
+ const HOST_NAMES = [BRIDGE_HOST_NAME, CONTROL_HOST_NAME];
15
18
  const getManifestDir = (platform) => {
16
19
  switch (platform) {
17
20
  case 'darwin':
@@ -24,8 +27,12 @@ const getManifestDir = (platform) => {
24
27
  throw new Error(`Unsupported platform: ${platform}`);
25
28
  }
26
29
  };
27
- const getManifestPath = (platform) => {
28
- return path.join(getManifestDir(platform), `${HOST_NAME}.json`);
30
+ const getManifestPath = (platform, hostName) => {
31
+ return path.join(getManifestDir(platform), `${hostName}.json`);
32
+ };
33
+ const getWrapperPath = (platform, hostName) => {
34
+ const filename = hostName === CONTROL_HOST_NAME ? 'argus-native-control-host.sh' : 'argus-native-host.sh';
35
+ return path.join(getManifestDir(platform), filename);
29
36
  };
30
37
  const findArgusExecutable = () => {
31
38
  // Try to find the argus CLI executable
@@ -57,10 +64,10 @@ const findArgusExecutable = () => {
57
64
  }
58
65
  throw new Error('Could not find argus executable. Please install argus globally (npm install -g @vforsh/argus) or run from the development directory.');
59
66
  };
60
- const createManifest = (extensionId, executablePath) => {
67
+ const createManifest = (extensionId, executablePath, hostName) => {
61
68
  return {
62
- name: HOST_NAME,
63
- description: 'Argus Watcher Native Messaging Host',
69
+ name: hostName,
70
+ description: hostName === CONTROL_HOST_NAME ? 'Argus Extension Control Native Messaging Host' : 'Argus Watcher Native Messaging Host',
64
71
  path: executablePath,
65
72
  type: 'stdio',
66
73
  allowed_origins: [`chrome-extension://${extensionId}/`],
@@ -71,14 +78,14 @@ const findNodePath = () => {
71
78
  // This is important for fnm/nvm which use symlinks in temporary directories
72
79
  return fs.realpathSync(process.execPath);
73
80
  };
74
- const createWrapperScript = (platform, executablePath) => {
75
- const wrapperDir = getManifestDir(platform);
76
- const wrapperPath = path.join(wrapperDir, 'argus-native-host.sh');
81
+ const createWrapperScript = (platform, executablePath, hostName) => {
82
+ const wrapperPath = getWrapperPath(platform, hostName);
77
83
  const nodePath = findNodePath();
84
+ const args = hostName === CONTROL_HOST_NAME ? `watcher native-host --role control --id ${CONTROL_WATCHER_ID}` : 'watcher native-host --role tab';
78
85
  // Create a wrapper script that launches argus in native-host mode
79
86
  // Use absolute path to node since Chrome spawns without shell profile
80
87
  const script = `#!/bin/bash
81
- exec "${nodePath}" "${executablePath}" watcher native-host
88
+ exec "${nodePath}" "${executablePath}" ${args}
82
89
  `;
83
90
  fs.writeFileSync(wrapperPath, script, { mode: 0o755 });
84
91
  return wrapperPath;
@@ -90,7 +97,6 @@ const install = (extensionId) => {
90
97
  process.exit(1);
91
98
  }
92
99
  const manifestDir = getManifestDir(platform);
93
- const manifestPath = getManifestPath(platform);
94
100
  // Ensure directory exists
95
101
  fs.mkdirSync(manifestDir, { recursive: true });
96
102
  // Find argus executable
@@ -102,27 +108,26 @@ const install = (extensionId) => {
102
108
  console.error(err.message);
103
109
  process.exit(1);
104
110
  }
105
- // Create wrapper script (Native Messaging requires a native executable, not node)
106
- const wrapperPath = createWrapperScript(platform, executablePath);
107
- console.log(`Created wrapper script: ${wrapperPath}`);
108
- // Create manifest
109
- const manifest = createManifest(extensionId, wrapperPath);
110
- fs.writeFileSync(manifestPath, JSON.stringify(manifest, null, 2));
111
- console.log(`Created manifest: ${manifestPath}`);
112
- // Windows: Add registry key
113
- if (platform === 'win32') {
114
- const regKey = `HKCU\\Software\\Google\\Chrome\\NativeMessagingHosts\\${HOST_NAME}`;
115
- try {
116
- execSync(`reg add "${regKey}" /ve /t REG_SZ /d "${manifestPath}" /f`, { stdio: 'inherit' });
117
- console.log(`Added registry key: ${regKey}`);
118
- }
119
- catch (err) {
120
- console.error('Failed to add registry key:', err);
121
- process.exit(1);
111
+ for (const hostName of HOST_NAMES) {
112
+ const wrapperPath = createWrapperScript(platform, executablePath, hostName);
113
+ console.log(`Created wrapper script: ${wrapperPath}`);
114
+ const manifestPath = getManifestPath(platform, hostName);
115
+ const manifest = createManifest(extensionId, wrapperPath, hostName);
116
+ fs.writeFileSync(manifestPath, JSON.stringify(manifest, null, 2));
117
+ console.log(`Created manifest: ${manifestPath}`);
118
+ if (platform === 'win32') {
119
+ const regKey = `HKCU\\Software\\Google\\Chrome\\NativeMessagingHosts\\${hostName}`;
120
+ try {
121
+ execSync(`reg add "${regKey}" /ve /t REG_SZ /d "${manifestPath}" /f`, { stdio: 'inherit' });
122
+ console.log(`Added registry key: ${regKey}`);
123
+ }
124
+ catch (err) {
125
+ console.error('Failed to add registry key:', err);
126
+ process.exit(1);
127
+ }
122
128
  }
123
129
  }
124
- console.log('\nNative Messaging host installed successfully!');
125
- console.log(`Host name: ${HOST_NAME}`);
130
+ console.log('\nNative Messaging hosts installed successfully!');
126
131
  console.log(`Extension ID: ${extensionId}`);
127
132
  };
128
133
  const uninstall = () => {
@@ -131,33 +136,32 @@ const uninstall = () => {
131
136
  console.error(`Unsupported platform: ${platform}`);
132
137
  process.exit(1);
133
138
  }
134
- const manifestPath = getManifestPath(platform);
135
- const wrapperPath = path.join(getManifestDir(platform), 'argus-native-host.sh');
136
- // Remove manifest
137
- if (fs.existsSync(manifestPath)) {
138
- fs.unlinkSync(manifestPath);
139
- console.log(`Removed manifest: ${manifestPath}`);
140
- }
141
- else {
142
- console.log(`Manifest not found: ${manifestPath}`);
143
- }
144
- // Remove wrapper script
145
- if (fs.existsSync(wrapperPath)) {
146
- fs.unlinkSync(wrapperPath);
147
- console.log(`Removed wrapper script: ${wrapperPath}`);
148
- }
149
- // Windows: Remove registry key
150
- if (platform === 'win32') {
151
- const regKey = `HKCU\\Software\\Google\\Chrome\\NativeMessagingHosts\\${HOST_NAME}`;
152
- try {
153
- execSync(`reg delete "${regKey}" /f`, { stdio: 'inherit' });
154
- console.log(`Removed registry key: ${regKey}`);
139
+ for (const hostName of HOST_NAMES) {
140
+ const manifestPath = getManifestPath(platform, hostName);
141
+ const wrapperPath = getWrapperPath(platform, hostName);
142
+ if (fs.existsSync(manifestPath)) {
143
+ fs.unlinkSync(manifestPath);
144
+ console.log(`Removed manifest: ${manifestPath}`);
145
+ }
146
+ else {
147
+ console.log(`Manifest not found: ${manifestPath}`);
148
+ }
149
+ if (fs.existsSync(wrapperPath)) {
150
+ fs.unlinkSync(wrapperPath);
151
+ console.log(`Removed wrapper script: ${wrapperPath}`);
155
152
  }
156
- catch {
157
- // Key might not exist
153
+ if (platform === 'win32') {
154
+ const regKey = `HKCU\\Software\\Google\\Chrome\\NativeMessagingHosts\\${hostName}`;
155
+ try {
156
+ execSync(`reg delete "${regKey}" /f`, { stdio: 'inherit' });
157
+ console.log(`Removed registry key: ${regKey}`);
158
+ }
159
+ catch {
160
+ // Key might not exist
161
+ }
158
162
  }
159
163
  }
160
- console.log('\nNative Messaging host uninstalled.');
164
+ console.log('\nNative Messaging hosts uninstalled.');
161
165
  };
162
166
  const main = () => {
163
167
  const args = process.argv.slice(2);
@@ -1 +1 @@
1
- {"version":3,"file":"install-host.js","sourceRoot":"","sources":["../../src/scripts/install-host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install-host.js","sourceRoot":"","sources":["../../src/scripts/install-host.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { CdpSourceHandle, CdpSourceBaseOptions } from './types.js';
2
+ /**
3
+ * Create the extension-control source: a tab-less watcher that brokers
4
+ * attach/detach requests and tab listings for the whole extension. It never
5
+ * exposes a real CDP session; commands that need one fail with
6
+ * `cdp_not_attached`.
7
+ */
8
+ export declare const createControlExtensionSource: (options: CdpSourceBaseOptions) => CdpSourceHandle;
9
+ //# sourceMappingURL=extension-control-source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension-control-source.d.ts","sourceRoot":"","sources":["../../src/sources/extension-control-source.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAIvE;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,GAAI,SAAS,oBAAoB,KAAG,eA4D5E,CAAA"}
@@ -0,0 +1,88 @@
1
+ import { createNativeMessaging } from '../native-messaging/messaging.js';
2
+ import { ControlSessionManager } from '../native-messaging/control-session-manager.js';
3
+ import { parseExtensionTargetId } from './extension-frame-state.js';
4
+ /**
5
+ * Create the extension-control source: a tab-less watcher that brokers
6
+ * attach/detach requests and tab listings for the whole extension. It never
7
+ * exposes a real CDP session; commands that need one fail with
8
+ * `cdp_not_attached`.
9
+ */
10
+ export const createControlExtensionSource = (options) => {
11
+ const { events, watcherId, watcherHost, watcherPort } = options;
12
+ const messaging = createNativeMessaging();
13
+ const controlSession = new ControlSessionManager(messaging);
14
+ const hostInfo = {
15
+ watcherId: watcherId ?? 'extension-control',
16
+ watcherHost: watcherHost ?? '127.0.0.1',
17
+ watcherPort: watcherPort ?? 0,
18
+ watcherPid: process.pid,
19
+ };
20
+ let stopping = false;
21
+ messaging.start();
22
+ messaging.send({ type: 'host_ready' });
23
+ sendHostInfo();
24
+ events.onStatus({
25
+ attached: false,
26
+ target: null,
27
+ reason: 'control_watcher',
28
+ });
29
+ messaging.onDisconnect(() => {
30
+ console.error('[ExtensionControlSource] Extension disconnected');
31
+ if (!stopping) {
32
+ events.onStatus({ attached: false, target: null, reason: 'extension_disconnected' });
33
+ events.onDetach?.('extension_disconnected');
34
+ }
35
+ });
36
+ return {
37
+ session: createDetachedSession('Extension control watcher does not expose a CDP tab session'),
38
+ syncWatcherInfo: (info) => {
39
+ hostInfo.watcherId = info.watcherId;
40
+ hostInfo.watcherHost = info.watcherHost;
41
+ hostInfo.watcherPort = info.watcherPort;
42
+ hostInfo.watcherPid = info.watcherPid;
43
+ sendHostInfo();
44
+ },
45
+ stop: async () => {
46
+ stopping = true;
47
+ messaging.stop();
48
+ },
49
+ listTargets: async () => [],
50
+ listTabs: async (filter) => await controlSession.listTabs(filter),
51
+ attachTarget: (targetId) => {
52
+ controlSession.attachTabWatcher(parseControlTabTarget(targetId, 'attach'));
53
+ },
54
+ detachTarget: (targetId) => {
55
+ controlSession.detachTabWatcher(parseControlTabTarget(targetId, 'detach'));
56
+ },
57
+ };
58
+ function sendHostInfo() {
59
+ messaging.send({
60
+ type: 'host_info',
61
+ watcherId: hostInfo.watcherId,
62
+ watcherHost: hostInfo.watcherHost,
63
+ watcherPort: hostInfo.watcherPort,
64
+ pid: hostInfo.watcherPid,
65
+ });
66
+ }
67
+ };
68
+ const createDetachedSession = (message) => ({
69
+ isAttached: () => false,
70
+ sendAndWait: async () => {
71
+ const error = new Error(message);
72
+ error.code = 'cdp_not_attached';
73
+ throw error;
74
+ },
75
+ onEvent: () => () => { },
76
+ });
77
+ /** Control watchers operate on whole tabs; iframe target ids are rejected with actionable errors. */
78
+ const parseControlTabTarget = (targetId, action) => {
79
+ const target = parseExtensionTargetId(targetId);
80
+ if (!target.frameId) {
81
+ return target.tabId;
82
+ }
83
+ if (action === 'attach') {
84
+ throw new Error(`Cannot attach iframe ${target.frameId} from extension-control before tab ${target.tabId} has a tab watcher`);
85
+ }
86
+ throw new Error(`Cannot detach iframe ${target.frameId} from extension-control. Detach tab ${target.tabId} instead.`);
87
+ };
88
+ //# sourceMappingURL=extension-control-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension-control-source.js","sourceRoot":"","sources":["../../src/sources/extension-control-source.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { ExtensionSession } from '../native-messaging/session-manager.js';
2
- import type { CdpSessionHandle, CdpTargetContext } from '../cdp/connection.js';
2
+ import type { CdpSendOptions, CdpSessionHandle, CdpTargetContext } from '../cdp/connection.js';
3
3
  export type DelegatingSessionController = {
4
4
  rebind: () => void;
5
5
  dispose: () => void;
@@ -8,7 +8,20 @@ type CreateDelegatingSessionOptions = {
8
8
  getCurrentSession: () => ExtensionSession | null;
9
9
  requireCurrentSession: () => ExtensionSession;
10
10
  getTargetContext: () => CdpTargetContext;
11
- mapParams?: (method: string, params?: Record<string, unknown>) => Record<string, unknown> | undefined;
11
+ prepareCommand?: (command: {
12
+ method: string;
13
+ params?: Record<string, unknown>;
14
+ commandOptions?: CdpSendOptions;
15
+ targetContext: CdpTargetContext;
16
+ }) => {
17
+ params?: Record<string, unknown>;
18
+ commandOptions?: CdpSendOptions;
19
+ targetContext?: CdpTargetContext;
20
+ } | Promise<{
21
+ params?: Record<string, unknown>;
22
+ commandOptions?: CdpSendOptions;
23
+ targetContext?: CdpTargetContext;
24
+ } | void> | void;
12
25
  };
13
26
  /**
14
27
  * Keep a stable session handle while the underlying extension tab attachment changes over time.
@@ -1 +1 @@
1
- {"version":3,"file":"extension-delegating-session.d.ts","sourceRoot":"","sources":["../../src/sources/extension-delegating-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAC9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAS9E,MAAM,MAAM,2BAA2B,GAAG;IACzC,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,OAAO,EAAE,MAAM,IAAI,CAAA;CACnB,CAAA;AAED,KAAK,8BAA8B,GAAG;IACrC,iBAAiB,EAAE,MAAM,gBAAgB,GAAG,IAAI,CAAA;IAChD,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;IAC7C,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;IACxC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;CACrG,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,GACnC,SAAS,8BAA8B,KACrC;IAAE,OAAO,EAAE,gBAAgB,CAAC;IAAC,UAAU,EAAE,2BAA2B,CAAA;CAsDtE,CAAA"}
1
+ {"version":3,"file":"extension-delegating-session.d.ts","sourceRoot":"","sources":["../../src/sources/extension-delegating-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAS9F,MAAM,MAAM,2BAA2B,GAAG;IACzC,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,OAAO,EAAE,MAAM,IAAI,CAAA;CACnB,CAAA;AAED,KAAK,8BAA8B,GAAG;IACrC,iBAAiB,EAAE,MAAM,gBAAgB,GAAG,IAAI,CAAA;IAChD,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;IAC7C,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;IACxC,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE;QAC1B,MAAM,EAAE,MAAM,CAAA;QACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAChC,cAAc,CAAC,EAAE,cAAc,CAAA;QAC/B,aAAa,EAAE,gBAAgB,CAAA;KAC/B,KACE;QACA,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAChC,cAAc,CAAC,EAAE,cAAc,CAAA;QAC/B,aAAa,CAAC,EAAE,gBAAgB,CAAA;KAC/B,GACD,OAAO,CAAC;QACR,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAChC,cAAc,CAAC,EAAE,cAAc,CAAA;QAC/B,aAAa,CAAC,EAAE,gBAAgB,CAAA;KAC/B,GAAG,IAAI,CAAC,GACT,IAAI,CAAA;CACP,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,GACnC,SAAS,8BAA8B,KACrC;IAAE,OAAO,EAAE,gBAAgB,CAAC;IAAC,UAAU,EAAE,2BAA2B,CAAA;CAkEtE,CAAA"}
@@ -29,11 +29,23 @@ export const createDelegatingSession = (options) => {
29
29
  isAttached: () => options.getCurrentSession()?.handle.isAttached() ?? false,
30
30
  sendAndWait: async (method, params, commandOptions) => {
31
31
  const currentSession = options.requireCurrentSession();
32
- const targetContext = options.getTargetContext();
33
- const nextParams = options.mapParams ? options.mapParams(method, params) : params;
32
+ let targetContext = options.getTargetContext();
33
+ let nextParams = params;
34
+ let nextCommandOptions = commandOptions;
35
+ if (options.prepareCommand) {
36
+ const prepared = await options.prepareCommand({
37
+ method,
38
+ params,
39
+ commandOptions,
40
+ targetContext,
41
+ });
42
+ nextParams = prepared?.params ?? params;
43
+ nextCommandOptions = prepared?.commandOptions ?? commandOptions;
44
+ targetContext = prepared?.targetContext ?? targetContext;
45
+ }
34
46
  const nextOptions = targetContext.kind === 'frame' && targetContext.sessionId
35
- ? { ...(commandOptions ?? {}), sessionId: targetContext.sessionId }
36
- : commandOptions;
47
+ ? { ...(nextCommandOptions ?? {}), sessionId: targetContext.sessionId }
48
+ : nextCommandOptions;
37
49
  return currentSession.handle.sendAndWait(method, nextParams, nextOptions);
38
50
  },
39
51
  onEvent: (method, handler) => {
@@ -1 +1 @@
1
- {"version":3,"file":"extension-delegating-session.js","sourceRoot":"","sources":["../../src/sources/extension-delegating-session.ts"],"names":[],"mappings":"AAsBA;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACtC,OAAuC,EACkC,EAAE;IAC3E,MAAM,aAAa,GAAG,IAAI,GAAG,EAA+B,CAAA;IAC5D,MAAM,mBAAmB,GAAG,GAAS,EAAE;QACtC,mFAAmF;QACnF,oFAAoF;QACpF,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YAC1C,YAAY,CAAC,MAAM,EAAE,CAAA;YACrB,MAAM,cAAc,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAA;YAClD,IAAI,CAAC,cAAc,EAAE,CAAC;gBACrB,SAAQ;YACT,CAAC;YACD,YAAY,CAAC,GAAG,GAAG,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,CAAA;QAC5F,CAAC;IACF,CAAC,CAAA;IAED,MAAM,oBAAoB,GAAG,GAAS,EAAE;QACvC,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YAC1C,YAAY,CAAC,MAAM,EAAE,CAAA;QACtB,CAAC;QACD,aAAa,CAAC,KAAK,EAAE,CAAA;IACtB,CAAC,CAAA;IAED,MAAM,UAAU,GAAgC;QAC/C,MAAM,EAAE,mBAAmB;QAC3B,OAAO,EAAE,oBAAoB;KAC7B,CAAA;IAED,MAAM,OAAO,GAAqB;QACjC,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,KAAK;QAC3E,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE;YACrD,MAAM,cAAc,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAA;YACtD,MAAM,aAAa,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAA;YAChD,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;YACjF,MAAM,WAAW,GAChB,aAAa,CAAC,IAAI,KAAK,OAAO,IAAI,aAAa,CAAC,SAAS;gBACxD,CAAC,CAAC,EAAE,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,SAAS,EAAE;gBACnE,CAAC,CAAC,cAAc,CAAA;YAClB,OAAO,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,CAAA;QAC1E,CAAC;QACD,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;YAC5B,MAAM,YAAY,GAAG,iCAAiC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;YACvE,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;YAC/B,UAAU,CAAC,MAAM,EAAE,CAAA;YAEnB,OAAO,GAAG,EAAE;gBACX,YAAY,CAAC,MAAM,EAAE,CAAA;gBACrB,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;YACnC,CAAC,CAAA;QACF,CAAC;QACD,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;KAC1C,CAAA;IAED,UAAU,CAAC,MAAM,EAAE,CAAA;IACnB,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAA;AAC/B,CAAC,CAAA;AAED,MAAM,iCAAiC,GAAG,CAAC,MAAc,EAAE,OAAmD,EAA+B,EAAE,CAAC,CAAC;IAChJ,MAAM;IACN,OAAO;IACP,GAAG,EAAE,IAAI;IACT,MAAM;QACL,IAAI,CAAC,GAAG,EAAE,EAAE,CAAA;QACZ,IAAI,CAAC,GAAG,GAAG,IAAI,CAAA;IAChB,CAAC;CACD,CAAC,CAAA"}
1
+ {"version":3,"file":"extension-delegating-session.js","sourceRoot":"","sources":["../../src/sources/extension-delegating-session.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"extension-frame-runtime.d.ts","sourceRoot":"","sources":["../../src/sources/extension-frame-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,EASN,KAAK,mBAAmB,EACxB,MAAM,4BAA4B,CAAA;AAEnC,eAAO,MAAM,uBAAuB,GAAI,SAAS,gBAAgB,EAAE,OAAO,mBAAmB,KAAG,mBAiB/F,CAAA;AAED,eAAO,MAAM,0BAA0B,GAAI,SAAS,gBAAgB,EAAE,OAAO,mBAAmB,GAAG,SAAS,KAAG,eAW9G,CAAA;AAED,eAAO,MAAM,2BAA2B,GAAI,OAAO,mBAAmB,EAAE,SAAS,MAAM,GAAG,IAAI,KAAG,IAKhG,CAAA;AAED,eAAO,MAAM,iCAAiC,GAAI,SAAS,gBAAgB,EAAE,OAAO,mBAAmB,EAAE,iBAAiB,MAAM,IAAI,KAAG,OAkBtI,CAAA;AAED,eAAO,MAAM,yBAAyB,GACrC,SAAS,gBAAgB,EACzB,OAAO,mBAAmB,EAC1B,mBAAmB,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,KACnD,OAAO,CAAC,IAAI,CAId,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,OAAO,mBAAmB,EAAE,SAAS,MAAM,KAAG,IAmBlF,CAAA;AAED,eAAO,MAAM,0BAA0B,GACtC,SAAS,gBAAgB,EACzB,OAAO,mBAAmB,EAC1B,SAAS,MAAM,EACf,sBAAsB,MAAM,IAAI,EAChC,YAAY,MAAM,KAChB,OAAO,CAAC,IAAI,CA2Cd,CAAA"}
1
+ {"version":3,"file":"extension-frame-runtime.d.ts","sourceRoot":"","sources":["../../src/sources/extension-frame-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,EASN,KAAK,mBAAmB,EACxB,MAAM,4BAA4B,CAAA;AAEnC,eAAO,MAAM,uBAAuB,GAAI,SAAS,gBAAgB,EAAE,OAAO,mBAAmB,KAAG,mBAiB/F,CAAA;AAED,eAAO,MAAM,0BAA0B,GAAI,SAAS,gBAAgB,EAAE,OAAO,mBAAmB,GAAG,SAAS,KAAG,eAW9G,CAAA;AAED,eAAO,MAAM,2BAA2B,GAAI,OAAO,mBAAmB,EAAE,SAAS,MAAM,GAAG,IAAI,KAAG,IAIhG,CAAA;AAED,eAAO,MAAM,iCAAiC,GAAI,SAAS,gBAAgB,EAAE,OAAO,mBAAmB,EAAE,iBAAiB,MAAM,IAAI,KAAG,OAmBtI,CAAA;AAED,eAAO,MAAM,yBAAyB,GACrC,SAAS,gBAAgB,EACzB,OAAO,mBAAmB,EAC1B,mBAAmB,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,KACnD,OAAO,CAAC,IAAI,CAId,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,OAAO,mBAAmB,EAAE,SAAS,MAAM,KAAG,IAmBlF,CAAA;AAED,eAAO,MAAM,0BAA0B,GACtC,SAAS,gBAAgB,EACzB,OAAO,mBAAmB,EAC1B,SAAS,MAAM,EACf,sBAAsB,MAAM,IAAI,EAChC,YAAY,MAAM,KAChB,OAAO,CAAC,IAAI,CA2Cd,CAAA"}
@@ -26,9 +26,8 @@ export const getSelectedExtensionTarget = (session, state) => {
26
26
  return buildSelectedIframeFallbackTarget(session, state);
27
27
  };
28
28
  export const setRequestedTargetSelection = (state, frameId) => {
29
- const frame = frameId ? state.frames.get(frameId) : null;
30
29
  state.requestedFrameId = frameId;
31
- state.requestedFrameHint = createRequestedFrameHint(frame);
30
+ state.requestedFrameHint = frameId ? createRequestedFrameHint(state.frames.get(frameId)) : null;
32
31
  state.requestedFrameDetached = false;
33
32
  };
34
33
  export const reconcileExtensionTargetSelection = (session, state, onTargetChanged) => {
@@ -40,6 +39,7 @@ export const reconcileExtensionTargetSelection = (session, state, onTargetChange
40
39
  if (resolution.kind === 'pending') {
41
40
  return false;
42
41
  }
42
+ syncRequestedFrameSelection(state, resolution.frameId);
43
43
  state.requestedFrameDetached = false;
44
44
  if (state.activeFrameId === resolution.frameId) {
45
45
  return false;
@@ -126,6 +126,14 @@ const activateFrameTarget = (state, frameId, onTargetChanged) => {
126
126
  onTargetChanged();
127
127
  return true;
128
128
  };
129
+ const syncRequestedFrameSelection = (state, frameId) => {
130
+ const frame = state.frames.get(frameId);
131
+ if (!frame) {
132
+ return;
133
+ }
134
+ state.requestedFrameId = frameId;
135
+ state.requestedFrameHint = createRequestedFrameHint(frame);
136
+ };
129
137
  /**
130
138
  * Extension events can briefly leave us with a selected iframe context before the matching frame
131
139
  * metadata arrives. Keep status/indicator aligned with the selected iframe hint instead of
@@ -1 +1 @@
1
- {"version":3,"file":"extension-frame-runtime.js","sourceRoot":"","sources":["../../src/sources/extension-frame-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extension-frame-runtime.js","sourceRoot":"","sources":["../../src/sources/extension-frame-runtime.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { CdpSourceTarget } from './types.js';
2
+ import type { CdpTargetContext } from '../cdp/connection.js';
2
3
  type SessionSummary = {
3
4
  tabId: number;
4
5
  url: string;
@@ -42,6 +43,18 @@ export type RequestedTargetResolution = {
42
43
  kind: 'frame';
43
44
  frameId: string;
44
45
  };
46
+ export type SelectedFrameCommandState = {
47
+ kind: 'page';
48
+ } | {
49
+ kind: 'pending';
50
+ frameId: string | null;
51
+ reason: 'frame_missing' | 'frame_not_ready';
52
+ } | {
53
+ kind: 'frame';
54
+ frameId: string;
55
+ sessionId: string | null;
56
+ executionContextId: number | null;
57
+ };
45
58
  export type CdpFrameTreeNode = {
46
59
  frame?: {
47
60
  id?: string;
@@ -88,5 +101,15 @@ export declare const resolveRequestedFrameId: (state: ExtensionFrameState, reque
88
101
  * - `page`: the iframe was active and then disappeared, so report the page while we wait for a safe rematch.
89
102
  */
90
103
  export declare const resolveRequestedTarget: (state: ExtensionFrameState) => RequestedTargetResolution;
104
+ /**
105
+ * Selection stays sticky across reloads, but frame-scoped commands must not silently fall back to
106
+ * the page while the requested iframe is still rematching or booting a fresh execution context.
107
+ */
108
+ export declare const resolveSelectedFrameCommandState: (state: ExtensionFrameState) => SelectedFrameCommandState;
109
+ export declare const isSelectedTargetReady: (state: ExtensionFrameState) => boolean;
110
+ /** Build the frame-scoped CDP target context for a frame tracked in `state`. */
111
+ export declare const buildFrameTargetContext: (state: ExtensionFrameState, frameId: string) => Extract<CdpTargetContext, {
112
+ kind: "frame";
113
+ }>;
91
114
  export {};
92
115
  //# sourceMappingURL=extension-frame-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extension-frame-state.d.ts","sourceRoot":"","sources":["../../src/sources/extension-frame-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extension-frame-state.d.ts","sourceRoot":"","sources":["../../src/sources/extension-frame-state.ts"],"names":[],"mappings":"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"}
@@ -148,6 +148,47 @@ export const resolveRequestedTarget = (state) => {
148
148
  }
149
149
  return state.requestedFrameDetached ? { kind: 'page' } : { kind: 'pending' };
150
150
  };
151
+ /**
152
+ * Selection stays sticky across reloads, but frame-scoped commands must not silently fall back to
153
+ * the page while the requested iframe is still rematching or booting a fresh execution context.
154
+ */
155
+ export const resolveSelectedFrameCommandState = (state) => {
156
+ if (state.requestedFrameId == null) {
157
+ return { kind: 'page' };
158
+ }
159
+ const resolution = resolveRequestedTarget(state);
160
+ if (resolution.kind !== 'frame') {
161
+ return {
162
+ kind: 'pending',
163
+ frameId: null,
164
+ reason: 'frame_missing',
165
+ };
166
+ }
167
+ const frame = state.frames.get(resolution.frameId);
168
+ const sessionId = frame?.sessionId ?? null;
169
+ const executionContextId = state.executionContexts.get(resolution.frameId) ?? null;
170
+ if (sessionId == null && executionContextId == null) {
171
+ return {
172
+ kind: 'pending',
173
+ frameId: resolution.frameId,
174
+ reason: 'frame_not_ready',
175
+ };
176
+ }
177
+ return {
178
+ kind: 'frame',
179
+ frameId: resolution.frameId,
180
+ sessionId,
181
+ executionContextId,
182
+ };
183
+ };
184
+ export const isSelectedTargetReady = (state) => resolveSelectedFrameCommandState(state).kind !== 'pending';
185
+ /** Build the frame-scoped CDP target context for a frame tracked in `state`. */
186
+ export const buildFrameTargetContext = (state, frameId) => ({
187
+ kind: 'frame',
188
+ frameId,
189
+ executionContextId: state.executionContexts.get(frameId) ?? null,
190
+ sessionId: state.frames.get(frameId)?.sessionId ?? null,
191
+ });
151
192
  const findSingleMatchingFrameId = (state, predicate) => {
152
193
  let matchId = null;
153
194
  for (const frame of state.frames.values()) {
@@ -1 +1 @@
1
- {"version":3,"file":"extension-frame-state.js","sourceRoot":"","sources":["../../src/sources/extension-frame-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extension-frame-state.js","sourceRoot":"","sources":["../../src/sources/extension-frame-state.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  import type { CdpSourceHandle, CdpSourceBaseOptions } from './types.js';
2
- export type ExtensionSourceOptions = CdpSourceBaseOptions;
2
+ export type ExtensionSourceOptions = CdpSourceBaseOptions & {
3
+ role?: 'tab' | 'control';
4
+ };
3
5
  /**
4
6
  * Create an extension source that connects to Chrome via Native Messaging.
5
7
  * Returns a handle that can be used to control the source and access CDP session.