@lhremote/core 0.6.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (356) hide show
  1. package/README.md +39 -0
  2. package/dist/cdp/client.d.ts +5 -1
  3. package/dist/cdp/client.d.ts.map +1 -1
  4. package/dist/cdp/client.js +11 -3
  5. package/dist/cdp/client.js.map +1 -1
  6. package/dist/data/index.d.ts +1 -0
  7. package/dist/data/index.d.ts.map +1 -1
  8. package/dist/data/index.js +1 -0
  9. package/dist/data/index.js.map +1 -1
  10. package/dist/data/linkedin-reference.d.ts +44 -0
  11. package/dist/data/linkedin-reference.d.ts.map +1 -0
  12. package/dist/data/linkedin-reference.js +316 -0
  13. package/dist/data/linkedin-reference.js.map +1 -0
  14. package/dist/data/linkedin-reference.test.d.ts +2 -0
  15. package/dist/data/linkedin-reference.test.d.ts.map +1 -0
  16. package/dist/data/linkedin-reference.test.js +124 -0
  17. package/dist/data/linkedin-reference.test.js.map +1 -0
  18. package/dist/db/index.d.ts +1 -1
  19. package/dist/db/index.d.ts.map +1 -1
  20. package/dist/db/index.js +1 -1
  21. package/dist/db/index.js.map +1 -1
  22. package/dist/db/repositories/action-budget.d.ts +29 -0
  23. package/dist/db/repositories/action-budget.d.ts.map +1 -0
  24. package/dist/db/repositories/action-budget.js +100 -0
  25. package/dist/db/repositories/action-budget.js.map +1 -0
  26. package/dist/db/repositories/action-budget.test.d.ts +2 -0
  27. package/dist/db/repositories/action-budget.test.d.ts.map +1 -0
  28. package/dist/db/repositories/action-budget.test.js +181 -0
  29. package/dist/db/repositories/action-budget.test.js.map +1 -0
  30. package/dist/db/repositories/campaign-hard-delete.integration.test.d.ts +2 -0
  31. package/dist/db/repositories/campaign-hard-delete.integration.test.d.ts.map +1 -0
  32. package/dist/db/repositories/campaign-hard-delete.integration.test.js +78 -0
  33. package/dist/db/repositories/campaign-hard-delete.integration.test.js.map +1 -0
  34. package/dist/db/repositories/campaign.d.ts +14 -0
  35. package/dist/db/repositories/campaign.d.ts.map +1 -1
  36. package/dist/db/repositories/campaign.js +125 -0
  37. package/dist/db/repositories/campaign.js.map +1 -1
  38. package/dist/db/repositories/index.d.ts +1 -0
  39. package/dist/db/repositories/index.d.ts.map +1 -1
  40. package/dist/db/repositories/index.js +1 -0
  41. package/dist/db/repositories/index.js.map +1 -1
  42. package/dist/index.d.ts +6 -5
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +28 -6
  45. package/dist/index.js.map +1 -1
  46. package/dist/linkedin/__tests__/dom-automation.integration.test.d.ts +2 -0
  47. package/dist/linkedin/__tests__/dom-automation.integration.test.d.ts.map +1 -0
  48. package/dist/linkedin/__tests__/dom-automation.integration.test.js +160 -0
  49. package/dist/linkedin/__tests__/dom-automation.integration.test.js.map +1 -0
  50. package/dist/linkedin/__tests__/selectors.integration.test.d.ts +2 -0
  51. package/dist/linkedin/__tests__/selectors.integration.test.d.ts.map +1 -0
  52. package/dist/linkedin/__tests__/selectors.integration.test.js +258 -0
  53. package/dist/linkedin/__tests__/selectors.integration.test.js.map +1 -0
  54. package/dist/linkedin/dom-automation.d.ts +67 -0
  55. package/dist/linkedin/dom-automation.d.ts.map +1 -0
  56. package/dist/linkedin/dom-automation.js +139 -0
  57. package/dist/linkedin/dom-automation.js.map +1 -0
  58. package/dist/linkedin/index.d.ts +3 -0
  59. package/dist/linkedin/index.d.ts.map +1 -0
  60. package/dist/linkedin/index.js +5 -0
  61. package/dist/linkedin/index.js.map +1 -0
  62. package/dist/linkedin/selectors.d.ts +67 -0
  63. package/dist/linkedin/selectors.d.ts.map +1 -0
  64. package/dist/linkedin/selectors.js +74 -0
  65. package/dist/linkedin/selectors.js.map +1 -0
  66. package/dist/operations/build-linkedin-url.d.ts +39 -0
  67. package/dist/operations/build-linkedin-url.d.ts.map +1 -0
  68. package/dist/operations/build-linkedin-url.js +72 -0
  69. package/dist/operations/build-linkedin-url.js.map +1 -0
  70. package/dist/operations/campaign-delete.d.ts +6 -2
  71. package/dist/operations/campaign-delete.d.ts.map +1 -1
  72. package/dist/operations/campaign-delete.js +9 -2
  73. package/dist/operations/campaign-delete.js.map +1 -1
  74. package/dist/operations/campaign-delete.test.js +41 -1
  75. package/dist/operations/campaign-delete.test.js.map +1 -1
  76. package/dist/operations/campaign-erase.d.ts +19 -0
  77. package/dist/operations/campaign-erase.d.ts.map +1 -0
  78. package/dist/operations/campaign-erase.js +22 -0
  79. package/dist/operations/campaign-erase.js.map +1 -0
  80. package/dist/operations/campaign-erase.test.d.ts +2 -0
  81. package/dist/operations/campaign-erase.test.d.ts.map +1 -0
  82. package/dist/operations/campaign-erase.test.js +101 -0
  83. package/dist/operations/campaign-erase.test.js.map +1 -0
  84. package/dist/operations/comment-on-post.d.ts +34 -0
  85. package/dist/operations/comment-on-post.d.ts.map +1 -0
  86. package/dist/operations/comment-on-post.js +108 -0
  87. package/dist/operations/comment-on-post.js.map +1 -0
  88. package/dist/operations/comment-on-post.test.d.ts +2 -0
  89. package/dist/operations/comment-on-post.test.d.ts.map +1 -0
  90. package/dist/operations/comment-on-post.test.js +240 -0
  91. package/dist/operations/comment-on-post.test.js.map +1 -0
  92. package/dist/operations/dismiss-errors.d.ts +22 -0
  93. package/dist/operations/dismiss-errors.d.ts.map +1 -0
  94. package/dist/operations/dismiss-errors.js +55 -0
  95. package/dist/operations/dismiss-errors.js.map +1 -0
  96. package/dist/operations/dismiss-errors.test.d.ts +2 -0
  97. package/dist/operations/dismiss-errors.test.d.ts.map +1 -0
  98. package/dist/operations/dismiss-errors.test.js +136 -0
  99. package/dist/operations/dismiss-errors.test.js.map +1 -0
  100. package/dist/operations/endorse-skills.d.ts +10 -0
  101. package/dist/operations/endorse-skills.d.ts.map +1 -0
  102. package/dist/operations/endorse-skills.js +12 -0
  103. package/dist/operations/endorse-skills.js.map +1 -0
  104. package/dist/operations/enrich-profile.d.ts +18 -0
  105. package/dist/operations/enrich-profile.d.ts.map +1 -0
  106. package/dist/operations/enrich-profile.js +15 -0
  107. package/dist/operations/enrich-profile.js.map +1 -0
  108. package/dist/operations/ephemeral-action.d.ts +22 -0
  109. package/dist/operations/ephemeral-action.d.ts.map +1 -0
  110. package/dist/operations/ephemeral-action.js +31 -0
  111. package/dist/operations/ephemeral-action.js.map +1 -0
  112. package/dist/operations/follow-person.d.ts +9 -0
  113. package/dist/operations/follow-person.d.ts.map +1 -0
  114. package/dist/operations/follow-person.js +11 -0
  115. package/dist/operations/follow-person.js.map +1 -0
  116. package/dist/operations/get-action-budget.d.ts +6 -0
  117. package/dist/operations/get-action-budget.d.ts.map +1 -0
  118. package/dist/operations/get-action-budget.js +22 -0
  119. package/dist/operations/get-action-budget.js.map +1 -0
  120. package/dist/operations/get-action-budget.test.d.ts +2 -0
  121. package/dist/operations/get-action-budget.test.d.ts.map +1 -0
  122. package/dist/operations/get-action-budget.test.js +79 -0
  123. package/dist/operations/get-action-budget.test.js.map +1 -0
  124. package/dist/operations/get-errors.d.ts +9 -3
  125. package/dist/operations/get-errors.d.ts.map +1 -1
  126. package/dist/operations/get-errors.js +41 -4
  127. package/dist/operations/get-errors.js.map +1 -1
  128. package/dist/operations/get-errors.test.js +108 -42
  129. package/dist/operations/get-errors.test.js.map +1 -1
  130. package/dist/operations/get-feed.d.ts +33 -0
  131. package/dist/operations/get-feed.d.ts.map +1 -0
  132. package/dist/operations/get-feed.js +220 -0
  133. package/dist/operations/get-feed.js.map +1 -0
  134. package/dist/operations/get-feed.test.d.ts +2 -0
  135. package/dist/operations/get-feed.test.d.ts.map +1 -0
  136. package/dist/operations/get-feed.test.js +276 -0
  137. package/dist/operations/get-feed.test.js.map +1 -0
  138. package/dist/operations/get-post-engagers.d.ts +40 -0
  139. package/dist/operations/get-post-engagers.d.ts.map +1 -0
  140. package/dist/operations/get-post-engagers.js +128 -0
  141. package/dist/operations/get-post-engagers.js.map +1 -0
  142. package/dist/operations/get-post-engagers.test.d.ts +2 -0
  143. package/dist/operations/get-post-engagers.test.d.ts.map +1 -0
  144. package/dist/operations/get-post-engagers.test.js +19 -0
  145. package/dist/operations/get-post-engagers.test.js.map +1 -0
  146. package/dist/operations/get-post-stats.d.ts +38 -0
  147. package/dist/operations/get-post-stats.d.ts.map +1 -0
  148. package/dist/operations/get-post-stats.js +100 -0
  149. package/dist/operations/get-post-stats.js.map +1 -0
  150. package/dist/operations/get-post-stats.test.d.ts +2 -0
  151. package/dist/operations/get-post-stats.test.d.ts.map +1 -0
  152. package/dist/operations/get-post-stats.test.js +34 -0
  153. package/dist/operations/get-post-stats.test.js.map +1 -0
  154. package/dist/operations/get-post.d.ts +183 -0
  155. package/dist/operations/get-post.d.ts.map +1 -0
  156. package/dist/operations/get-post.js +270 -0
  157. package/dist/operations/get-post.js.map +1 -0
  158. package/dist/operations/get-post.test.d.ts +2 -0
  159. package/dist/operations/get-post.test.d.ts.map +1 -0
  160. package/dist/operations/get-post.test.js +449 -0
  161. package/dist/operations/get-post.test.js.map +1 -0
  162. package/dist/operations/get-profile-activity.d.ts +129 -0
  163. package/dist/operations/get-profile-activity.d.ts.map +1 -0
  164. package/dist/operations/get-profile-activity.js +181 -0
  165. package/dist/operations/get-profile-activity.js.map +1 -0
  166. package/dist/operations/get-profile-activity.test.d.ts +2 -0
  167. package/dist/operations/get-profile-activity.test.d.ts.map +1 -0
  168. package/dist/operations/get-profile-activity.test.js +205 -0
  169. package/dist/operations/get-profile-activity.test.js.map +1 -0
  170. package/dist/operations/get-throttle-status.d.ts +6 -0
  171. package/dist/operations/get-throttle-status.d.ts.map +1 -0
  172. package/dist/operations/get-throttle-status.js +30 -0
  173. package/dist/operations/get-throttle-status.js.map +1 -0
  174. package/dist/operations/get-throttle-status.test.d.ts +2 -0
  175. package/dist/operations/get-throttle-status.test.d.ts.map +1 -0
  176. package/dist/operations/get-throttle-status.test.js +62 -0
  177. package/dist/operations/get-throttle-status.test.js.map +1 -0
  178. package/dist/operations/index.d.ts +24 -0
  179. package/dist/operations/index.d.ts.map +1 -1
  180. package/dist/operations/index.js +35 -0
  181. package/dist/operations/index.js.map +1 -1
  182. package/dist/operations/like-person-posts.d.ts +14 -0
  183. package/dist/operations/like-person-posts.d.ts.map +1 -0
  184. package/dist/operations/like-person-posts.js +28 -0
  185. package/dist/operations/like-person-posts.js.map +1 -0
  186. package/dist/operations/message-person.d.ts +11 -0
  187. package/dist/operations/message-person.d.ts.map +1 -0
  188. package/dist/operations/message-person.js +19 -0
  189. package/dist/operations/message-person.js.map +1 -0
  190. package/dist/operations/react-to-post.d.ts +38 -0
  191. package/dist/operations/react-to-post.d.ts.map +1 -0
  192. package/dist/operations/react-to-post.js +82 -0
  193. package/dist/operations/react-to-post.js.map +1 -0
  194. package/dist/operations/react-to-post.test.d.ts +2 -0
  195. package/dist/operations/react-to-post.test.d.ts.map +1 -0
  196. package/dist/operations/react-to-post.test.js +154 -0
  197. package/dist/operations/react-to-post.test.js.map +1 -0
  198. package/dist/operations/remove-connection.d.ts +6 -0
  199. package/dist/operations/remove-connection.d.ts.map +1 -0
  200. package/dist/operations/remove-connection.js +7 -0
  201. package/dist/operations/remove-connection.js.map +1 -0
  202. package/dist/operations/resolve-linkedin-entity.d.ts +33 -0
  203. package/dist/operations/resolve-linkedin-entity.d.ts.map +1 -0
  204. package/dist/operations/resolve-linkedin-entity.js +198 -0
  205. package/dist/operations/resolve-linkedin-entity.js.map +1 -0
  206. package/dist/operations/search-posts.d.ts +143 -0
  207. package/dist/operations/search-posts.d.ts.map +1 -0
  208. package/dist/operations/search-posts.js +220 -0
  209. package/dist/operations/search-posts.js.map +1 -0
  210. package/dist/operations/search-posts.test.d.ts +2 -0
  211. package/dist/operations/search-posts.test.d.ts.map +1 -0
  212. package/dist/operations/search-posts.test.js +261 -0
  213. package/dist/operations/search-posts.test.js.map +1 -0
  214. package/dist/operations/send-inmail.d.ts +11 -0
  215. package/dist/operations/send-inmail.d.ts.map +1 -0
  216. package/dist/operations/send-inmail.js +19 -0
  217. package/dist/operations/send-inmail.js.map +1 -0
  218. package/dist/operations/send-invite.d.ts +9 -0
  219. package/dist/operations/send-invite.d.ts.map +1 -0
  220. package/dist/operations/send-invite.js +14 -0
  221. package/dist/operations/send-invite.js.map +1 -0
  222. package/dist/operations/visit-profile.d.ts +14 -0
  223. package/dist/operations/visit-profile.d.ts.map +1 -0
  224. package/dist/operations/visit-profile.js +49 -0
  225. package/dist/operations/visit-profile.js.map +1 -0
  226. package/dist/operations/visit-profile.test.d.ts +2 -0
  227. package/dist/operations/visit-profile.test.d.ts.map +1 -0
  228. package/dist/operations/visit-profile.test.js +193 -0
  229. package/dist/operations/visit-profile.test.js.map +1 -0
  230. package/dist/services/app.d.ts.map +1 -1
  231. package/dist/services/app.js +37 -12
  232. package/dist/services/app.js.map +1 -1
  233. package/dist/services/app.test.js +57 -0
  234. package/dist/services/app.test.js.map +1 -1
  235. package/dist/services/boolean-expression.d.ts +29 -0
  236. package/dist/services/boolean-expression.d.ts.map +1 -0
  237. package/dist/services/boolean-expression.js +79 -0
  238. package/dist/services/boolean-expression.js.map +1 -0
  239. package/dist/services/boolean-expression.test.d.ts +2 -0
  240. package/dist/services/boolean-expression.test.d.ts.map +1 -0
  241. package/dist/services/boolean-expression.test.js +64 -0
  242. package/dist/services/boolean-expression.test.js.map +1 -0
  243. package/dist/services/campaign.d.ts +10 -0
  244. package/dist/services/campaign.d.ts.map +1 -1
  245. package/dist/services/campaign.js +16 -0
  246. package/dist/services/campaign.js.map +1 -1
  247. package/dist/services/collection.d.ts +5 -2
  248. package/dist/services/collection.d.ts.map +1 -1
  249. package/dist/services/collection.js +33 -5
  250. package/dist/services/collection.js.map +1 -1
  251. package/dist/services/collection.test.js +64 -6
  252. package/dist/services/collection.test.js.map +1 -1
  253. package/dist/services/ephemeral-campaign.d.ts +64 -0
  254. package/dist/services/ephemeral-campaign.d.ts.map +1 -0
  255. package/dist/services/ephemeral-campaign.js +210 -0
  256. package/dist/services/ephemeral-campaign.js.map +1 -0
  257. package/dist/services/ephemeral-campaign.test.d.ts +2 -0
  258. package/dist/services/ephemeral-campaign.test.d.ts.map +1 -0
  259. package/dist/services/ephemeral-campaign.test.js +333 -0
  260. package/dist/services/ephemeral-campaign.test.js.map +1 -0
  261. package/dist/services/errors.d.ts +21 -0
  262. package/dist/services/errors.d.ts.map +1 -1
  263. package/dist/services/errors.js +35 -0
  264. package/dist/services/errors.js.map +1 -1
  265. package/dist/services/index.d.ts +7 -1
  266. package/dist/services/index.d.ts.map +1 -1
  267. package/dist/services/index.js +7 -1
  268. package/dist/services/index.js.map +1 -1
  269. package/dist/services/instance-context.d.ts.map +1 -1
  270. package/dist/services/instance-context.js +9 -1
  271. package/dist/services/instance-context.js.map +1 -1
  272. package/dist/services/instance-context.test.js +77 -1
  273. package/dist/services/instance-context.test.js.map +1 -1
  274. package/dist/services/instance.d.ts +43 -0
  275. package/dist/services/instance.d.ts.map +1 -1
  276. package/dist/services/instance.js +151 -0
  277. package/dist/services/instance.js.map +1 -1
  278. package/dist/services/instance.test.js +101 -0
  279. package/dist/services/instance.test.js.map +1 -1
  280. package/dist/services/launcher.d.ts +23 -0
  281. package/dist/services/launcher.d.ts.map +1 -1
  282. package/dist/services/launcher.js +81 -11
  283. package/dist/services/launcher.js.map +1 -1
  284. package/dist/services/launcher.test.js +109 -42
  285. package/dist/services/launcher.test.js.map +1 -1
  286. package/dist/services/sn-url-builder.d.ts +21 -0
  287. package/dist/services/sn-url-builder.d.ts.map +1 -0
  288. package/dist/services/sn-url-builder.js +132 -0
  289. package/dist/services/sn-url-builder.js.map +1 -0
  290. package/dist/services/sn-url-builder.test.d.ts +2 -0
  291. package/dist/services/sn-url-builder.test.d.ts.map +1 -0
  292. package/dist/services/sn-url-builder.test.js +130 -0
  293. package/dist/services/sn-url-builder.test.js.map +1 -0
  294. package/dist/services/url-builder.d.ts +12 -0
  295. package/dist/services/url-builder.d.ts.map +1 -0
  296. package/dist/services/url-builder.js +100 -0
  297. package/dist/services/url-builder.js.map +1 -0
  298. package/dist/services/url-builder.test.d.ts +2 -0
  299. package/dist/services/url-builder.test.d.ts.map +1 -0
  300. package/dist/services/url-builder.test.js +79 -0
  301. package/dist/services/url-builder.test.js.map +1 -0
  302. package/dist/services/url-templates.d.ts +41 -0
  303. package/dist/services/url-templates.d.ts.map +1 -0
  304. package/dist/services/url-templates.js +118 -0
  305. package/dist/services/url-templates.js.map +1 -0
  306. package/dist/services/url-templates.test.d.ts +2 -0
  307. package/dist/services/url-templates.test.d.ts.map +1 -0
  308. package/dist/services/url-templates.test.js +159 -0
  309. package/dist/services/url-templates.test.js.map +1 -0
  310. package/dist/types/action-budget.d.ts +52 -0
  311. package/dist/types/action-budget.d.ts.map +1 -0
  312. package/dist/types/action-budget.js +4 -0
  313. package/dist/types/action-budget.js.map +1 -0
  314. package/dist/types/campaign.d.ts +24 -0
  315. package/dist/types/campaign.d.ts.map +1 -1
  316. package/dist/types/feed.d.ts +32 -0
  317. package/dist/types/feed.d.ts.map +1 -0
  318. package/dist/types/feed.js +4 -0
  319. package/dist/types/feed.js.map +1 -0
  320. package/dist/types/index.d.ts +8 -2
  321. package/dist/types/index.d.ts.map +1 -1
  322. package/dist/types/linkedin-url.d.ts +109 -0
  323. package/dist/types/linkedin-url.d.ts.map +1 -0
  324. package/dist/types/linkedin-url.js +4 -0
  325. package/dist/types/linkedin-url.js.map +1 -0
  326. package/dist/types/post-analytics.d.ts +40 -0
  327. package/dist/types/post-analytics.d.ts.map +1 -0
  328. package/dist/types/post-analytics.js +4 -0
  329. package/dist/types/post-analytics.js.map +1 -0
  330. package/dist/types/post.d.ts +43 -0
  331. package/dist/types/post.d.ts.map +1 -0
  332. package/dist/types/post.js +4 -0
  333. package/dist/types/post.js.map +1 -0
  334. package/dist/types/search-posts.d.ts +22 -0
  335. package/dist/types/search-posts.d.ts.map +1 -0
  336. package/dist/types/search-posts.js +4 -0
  337. package/dist/types/search-posts.js.map +1 -0
  338. package/dist/types/ui-health.d.ts +16 -0
  339. package/dist/types/ui-health.d.ts.map +1 -1
  340. package/dist/voyager/index.d.ts +2 -0
  341. package/dist/voyager/index.d.ts.map +1 -0
  342. package/dist/voyager/index.js +4 -0
  343. package/dist/voyager/index.js.map +1 -0
  344. package/dist/voyager/interceptor.d.ts +100 -0
  345. package/dist/voyager/interceptor.d.ts.map +1 -0
  346. package/dist/voyager/interceptor.integration.test.d.ts +2 -0
  347. package/dist/voyager/interceptor.integration.test.d.ts.map +1 -0
  348. package/dist/voyager/interceptor.integration.test.js +89 -0
  349. package/dist/voyager/interceptor.integration.test.js.map +1 -0
  350. package/dist/voyager/interceptor.js +235 -0
  351. package/dist/voyager/interceptor.js.map +1 -0
  352. package/dist/voyager/interceptor.test.d.ts +2 -0
  353. package/dist/voyager/interceptor.test.d.ts.map +1 -0
  354. package/dist/voyager/interceptor.test.js +372 -0
  355. package/dist/voyager/interceptor.test.js.map +1 -0
  356. package/package.json +1 -1
@@ -18,7 +18,7 @@ import { discoverInstancePort } from "../cdp/index.js";
18
18
  import { DatabaseClient, discoverDatabase } from "../db/index.js";
19
19
  import { InstanceService } from "./instance.js";
20
20
  import { LauncherService } from "./launcher.js";
21
- import { InstanceNotRunningError } from "./errors.js";
21
+ import { InstanceNotRunningError, UIBlockedError } from "./errors.js";
22
22
  import { withDatabase, withInstanceDatabase } from "./instance-context.js";
23
23
  const mockedDiscoverInstancePort = vi.mocked(discoverInstancePort);
24
24
  const mockedDiscoverDatabase = vi.mocked(discoverDatabase);
@@ -40,6 +40,7 @@ function createMockInstance(overrides = {}) {
40
40
  connect: vi.fn().mockResolvedValue(undefined),
41
41
  disconnect: vi.fn(),
42
42
  setHealthChecker: vi.fn(),
43
+ getInstancePopups: vi.fn().mockResolvedValue([]),
43
44
  ...overrides,
44
45
  };
45
46
  mockedInstanceService.mockImplementation(function () {
@@ -55,6 +56,7 @@ function createMockLauncher() {
55
56
  healthy: true,
56
57
  issues: [],
57
58
  popup: null,
59
+ instancePopups: [],
58
60
  }),
59
61
  };
60
62
  mockedLauncherService.mockImplementation(function () {
@@ -62,6 +64,13 @@ function createMockLauncher() {
62
64
  });
63
65
  return launcher;
64
66
  }
67
+ function extractHealthChecker(mockInstance) {
68
+ const calls = vi.mocked(mockInstance.setHealthChecker).mock.calls;
69
+ const firstCall = calls[0];
70
+ if (!firstCall)
71
+ throw new Error("setHealthChecker was not called");
72
+ return firstCall[0];
73
+ }
65
74
  describe("withDatabase", () => {
66
75
  beforeEach(() => {
67
76
  vi.clearAllMocks();
@@ -221,5 +230,72 @@ describe("withInstanceDatabase", () => {
221
230
  await withInstanceDatabase(9222, 42, () => undefined);
222
231
  expect(mockedInstanceService).toHaveBeenCalledWith(55123, undefined);
223
232
  });
233
+ it("health checker calls getInstancePopups alongside launcher health", async () => {
234
+ const mockInstance = createMockInstance();
235
+ const mockLauncher = createMockLauncher();
236
+ createMockDb();
237
+ mockedDiscoverInstancePort.mockResolvedValue(55123);
238
+ mockedDiscoverDatabase.mockReturnValue("/path/to/db.db");
239
+ await withInstanceDatabase(9222, 42, () => undefined);
240
+ // Extract and invoke the registered health checker
241
+ const healthChecker = extractHealthChecker(mockInstance);
242
+ await healthChecker();
243
+ expect(vi.mocked(mockLauncher.checkUIHealth)).toHaveBeenCalledWith(42);
244
+ expect(vi.mocked(mockInstance.getInstancePopups)).toHaveBeenCalledOnce();
245
+ });
246
+ it("health checker throws UIBlockedError when instance popups detected", async () => {
247
+ const mockInstance = createMockInstance({
248
+ getInstancePopups: vi.fn().mockResolvedValue([
249
+ { title: "Failed to initialize UI", description: "Error details", closable: false },
250
+ ]),
251
+ });
252
+ createMockLauncher();
253
+ createMockDb();
254
+ mockedDiscoverInstancePort.mockResolvedValue(55123);
255
+ mockedDiscoverDatabase.mockReturnValue("/path/to/db.db");
256
+ await withInstanceDatabase(9222, 42, () => undefined);
257
+ const healthChecker = extractHealthChecker(mockInstance);
258
+ await expect(healthChecker()).rejects.toThrow(UIBlockedError);
259
+ await expect(healthChecker()).rejects.toThrow("Instance popup: Failed to initialize UI");
260
+ });
261
+ it("health checker throws UIBlockedError with both launcher issues and instance popups", async () => {
262
+ const mockInstance = createMockInstance({
263
+ getInstancePopups: vi.fn().mockResolvedValue([
264
+ { title: "Error popup", closable: true },
265
+ ]),
266
+ });
267
+ const mockLauncher = createMockLauncher();
268
+ vi.mocked(mockLauncher.checkUIHealth).mockResolvedValue({
269
+ healthy: false,
270
+ issues: [
271
+ {
272
+ type: "dialog",
273
+ id: "d1",
274
+ data: { id: "d1", options: { message: "Dialog message", controls: [] } },
275
+ },
276
+ ],
277
+ popup: null,
278
+ instancePopups: [],
279
+ });
280
+ createMockDb();
281
+ mockedDiscoverInstancePort.mockResolvedValue(55123);
282
+ mockedDiscoverDatabase.mockReturnValue("/path/to/db.db");
283
+ await withInstanceDatabase(9222, 42, () => undefined);
284
+ const healthChecker = extractHealthChecker(mockInstance);
285
+ const error = await healthChecker().catch((e) => e);
286
+ expect(error).toBeInstanceOf(UIBlockedError);
287
+ expect(error.message).toContain("Dialog: Dialog message");
288
+ expect(error.message).toContain("Instance popup: Error popup");
289
+ });
290
+ it("health checker passes when no launcher issues and no instance popups", async () => {
291
+ const mockInstance = createMockInstance();
292
+ createMockLauncher();
293
+ createMockDb();
294
+ mockedDiscoverInstancePort.mockResolvedValue(55123);
295
+ mockedDiscoverDatabase.mockReturnValue("/path/to/db.db");
296
+ await withInstanceDatabase(9222, 42, () => undefined);
297
+ const healthChecker = extractHealthChecker(mockInstance);
298
+ await expect(healthChecker()).resolves.toBeUndefined();
299
+ });
224
300
  });
225
301
  //# sourceMappingURL=instance-context.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"instance-context.test.js","sourceRoot":"","sources":["../../src/services/instance-context.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instance-context.test.js","sourceRoot":"","sources":["../../src/services/instance-context.test.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import type { InstancePopup } from "../types/index.js";
2
+ import { VoyagerInterceptor } from "../voyager/index.js";
1
3
  /**
2
4
  * Result of a LinkedHelper action execution.
3
5
  */
@@ -33,6 +35,7 @@ export declare class InstanceService {
33
35
  private linkedInClient;
34
36
  private uiClient;
35
37
  private healthChecker;
38
+ private voyagerInterceptor;
36
39
  constructor(port: number, options?: {
37
40
  host?: string;
38
41
  timeout?: number;
@@ -83,8 +86,48 @@ export declare class InstanceService {
83
86
  * @param awaitPromise Whether to await a Promise result (default `true`).
84
87
  */
85
88
  evaluateUI<T = unknown>(expression: string, awaitPromise?: boolean): Promise<T>;
89
+ /**
90
+ * Navigate the LinkedIn webview to the given URL.
91
+ *
92
+ * Enables the CDP Page domain so that `Page.loadEventFired` events
93
+ * are delivered, navigates, and waits for the load event before
94
+ * returning. This ensures the webview is on the expected page
95
+ * before downstream operations like `canCollect` are called.
96
+ *
97
+ * @throws {ServiceError} if the client is not connected.
98
+ */
99
+ navigateLinkedIn(url: string): Promise<void>;
100
+ /**
101
+ * Detect error/popup elements in the instance UI DOM.
102
+ *
103
+ * The instance UI can show error popups (e.g., "Failed to initialize UI",
104
+ * "AsyncHandlerError: liAccount not initialized") that render behind the
105
+ * LinkedIn webview and are invisible to the user. This method queries
106
+ * the DOM using multiple selector strategies to find them.
107
+ *
108
+ * @returns An array of detected popups, or an empty array if none are visible.
109
+ */
110
+ getInstancePopups(): Promise<InstancePopup[]>;
111
+ /**
112
+ * Dismiss closable popups in the instance UI by clicking their buttons.
113
+ *
114
+ * @returns The number of popups that were dismissed.
115
+ */
116
+ dismissInstancePopups(): Promise<{
117
+ dismissed: number;
118
+ nonDismissable: number;
119
+ }>;
120
+ /**
121
+ * Create a {@link VoyagerInterceptor} attached to the LinkedIn WebView.
122
+ *
123
+ * Returns a cached instance — only one interceptor exists per
124
+ * InstanceService connection. The interceptor is invalidated on
125
+ * {@link disconnect}.
126
+ */
127
+ createVoyagerInterceptor(): VoyagerInterceptor;
86
128
  /** Whether both clients are currently connected. */
87
129
  get isConnected(): boolean;
130
+ private ensureLinkedInClient;
88
131
  private ensureUiClient;
89
132
  /**
90
133
  * Run the health checker if one is configured.
@@ -1 +1 @@
1
- {"version":3,"file":"instance.d.ts","sourceRoot":"","sources":["../../src/services/instance.ts"],"names":[],"mappings":"AASA;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,iDAAiD;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAQD;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;AAEhD;;;;;;;;;GASG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAU;IACtC,OAAO,CAAC,cAAc,CAA0B;IAChD,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,aAAa,CAA8B;gBAEvC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE;IAO9F;;;;;;;OAOG;IACH,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,GAAG,IAAI;IAIrD;;;;;;;OAOG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA+C9B;;OAEG;IACH,UAAU,IAAI,IAAI;IAOlB;;;;;;;;;;OAUG;IACG,aAAa,CACjB,UAAU,EAAE,MAAM,EAClB,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACnC,OAAO,CAAC,YAAY,CAAC;IAwBxB;;;;;;;;;OASG;IACG,UAAU,CAAC,CAAC,GAAG,OAAO,EAC1B,UAAU,EAAE,MAAM,EAClB,YAAY,UAAO,GAClB,OAAO,CAAC,CAAC,CAAC;IAcb,oDAAoD;IACpD,IAAI,WAAW,IAAI,OAAO,CAOzB;IAED,OAAO,CAAC,cAAc;IAOtB;;;;;;OAMG;YACW,cAAc;CAS7B"}
1
+ {"version":3,"file":"instance.d.ts","sourceRoot":"","sources":["../../src/services/instance.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGzD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,iDAAiD;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAQD;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;AAEhD;;;;;;;;;GASG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAU;IACtC,OAAO,CAAC,cAAc,CAA0B;IAChD,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,kBAAkB,CAAmC;gBAEjD,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE;IAO9F;;;;;;;OAOG;IACH,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,GAAG,IAAI;IAIrD;;;;;;;OAOG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA+C9B;;OAEG;IACH,UAAU,IAAI,IAAI;IAQlB;;;;;;;;;;OAUG;IACG,aAAa,CACjB,UAAU,EAAE,MAAM,EAClB,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACnC,OAAO,CAAC,YAAY,CAAC;IAwBxB;;;;;;;;;OASG;IACG,UAAU,CAAC,CAAC,GAAG,OAAO,EAC1B,UAAU,EAAE,MAAM,EAClB,YAAY,UAAO,GAClB,OAAO,CAAC,CAAC,CAAC;IAcb;;;;;;;;;OASG;IACG,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYlD;;;;;;;;;OASG;IACG,iBAAiB,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IA2DnD;;;;OAIG;IACG,qBAAqB,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC;IAyCrF;;;;;;OAMG;IACH,wBAAwB,IAAI,kBAAkB;IAS9C,oDAAoD;IACpD,IAAI,WAAW,IAAI,OAAO,CAOzB;IAED,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,cAAc;IAOtB;;;;;;OAMG;YACW,cAAc;CAS7B"}
@@ -3,6 +3,7 @@
3
3
  import { CDPClient, CDPTimeoutError, discoverTargets } from "../cdp/index.js";
4
4
  import { delay } from "../utils/delay.js";
5
5
  import { errorMessage } from "../utils/error-message.js";
6
+ import { VoyagerInterceptor } from "../voyager/index.js";
6
7
  import { ActionExecutionError, InstanceNotRunningError, ServiceError, UIBlockedError } from "./errors.js";
7
8
  /** Maximum time to wait for both CDP targets to appear (ms). */
8
9
  const CONNECT_TIMEOUT = 30_000;
@@ -26,6 +27,7 @@ export class InstanceService {
26
27
  linkedInClient = null;
27
28
  uiClient = null;
28
29
  healthChecker = null;
30
+ voyagerInterceptor = null;
29
31
  constructor(port, options) {
30
32
  this.port = port;
31
33
  this.host = options?.host ?? "127.0.0.1";
@@ -87,6 +89,7 @@ export class InstanceService {
87
89
  * Disconnect from both targets.
88
90
  */
89
91
  disconnect() {
92
+ this.voyagerInterceptor = null;
90
93
  this.linkedInClient?.disconnect();
91
94
  this.linkedInClient = null;
92
95
  this.uiClient?.disconnect();
@@ -146,6 +149,148 @@ export class InstanceService {
146
149
  throw error;
147
150
  }
148
151
  }
152
+ /**
153
+ * Navigate the LinkedIn webview to the given URL.
154
+ *
155
+ * Enables the CDP Page domain so that `Page.loadEventFired` events
156
+ * are delivered, navigates, and waits for the load event before
157
+ * returning. This ensures the webview is on the expected page
158
+ * before downstream operations like `canCollect` are called.
159
+ *
160
+ * @throws {ServiceError} if the client is not connected.
161
+ */
162
+ async navigateLinkedIn(url) {
163
+ const client = this.ensureLinkedInClient();
164
+ await client.send("Page.enable");
165
+ try {
166
+ const loadPromise = client.waitForEvent("Page.loadEventFired");
167
+ await client.navigate(url);
168
+ await loadPromise;
169
+ }
170
+ finally {
171
+ await client.send("Page.disable").catch(() => { });
172
+ }
173
+ }
174
+ /**
175
+ * Detect error/popup elements in the instance UI DOM.
176
+ *
177
+ * The instance UI can show error popups (e.g., "Failed to initialize UI",
178
+ * "AsyncHandlerError: liAccount not initialized") that render behind the
179
+ * LinkedIn webview and are invisible to the user. This method queries
180
+ * the DOM using multiple selector strategies to find them.
181
+ *
182
+ * @returns An array of detected popups, or an empty array if none are visible.
183
+ */
184
+ async getInstancePopups() {
185
+ return this.evaluateUI(`(() => {
186
+ const popups = [];
187
+ const seen = new WeakSet();
188
+
189
+ const seenTitles = new Set();
190
+
191
+ function isVisible(el) {
192
+ const style = getComputedStyle(el);
193
+ const opacity = Number.parseFloat(style.opacity);
194
+ if (style.display === 'none' || style.visibility === 'hidden' || (!Number.isNaN(opacity) && opacity <= 0)) return false;
195
+ const rect = el.getBoundingClientRect();
196
+ return rect.width > 0 && rect.height > 0;
197
+ }
198
+
199
+ // Strategy 1: class-based selectors for known popup components
200
+ for (const header of document.querySelectorAll('[class*="Popup_Header_"], [class*="ErrorAndAlert_Title_"]')) {
201
+ const container = header.closest('[class*="Popup_Container_"], [class*="Popup_Wrapper_"], [class*="ErrorAndAlert_"]') || header.parentElement;
202
+ if (!container || seen.has(container) || !isVisible(container)) continue;
203
+ seen.add(container);
204
+ const title = header.textContent?.trim() || '';
205
+ if (!title) continue;
206
+ const description = container.querySelector('[class*="Popup_Body_"], [class*="ErrorAndAlert_Description_"]')?.textContent?.trim() || undefined;
207
+ const key = title + '\\0' + (description || '');
208
+ if (seenTitles.has(key)) continue;
209
+ seenTitles.add(key);
210
+ const controls = container.querySelector('[class*="Popup_Controls_"], [class*="Popup_Buttons_"]');
211
+ popups.push({
212
+ title,
213
+ description,
214
+ closable: controls ? controls.querySelectorAll('button').length > 0 : false,
215
+ });
216
+ }
217
+
218
+ // Strategy 2: role-based fallback for dialogs not caught above
219
+ for (const dialog of document.querySelectorAll('[role="dialog"]')) {
220
+ if (seen.has(dialog) || !isVisible(dialog)) continue;
221
+ seen.add(dialog);
222
+ const heading = dialog.querySelector('h1, h2, h3, [class*="Header"], [class*="Title"]');
223
+ const title = heading?.textContent?.trim() || dialog.firstElementChild?.textContent?.trim() || '';
224
+ if (!title) continue;
225
+ const description = dialog.querySelector('[class*="Body"], [class*="Description"], [class*="Content"]')?.textContent?.trim() || undefined;
226
+ const key = title + '\\0' + (description || '');
227
+ if (seenTitles.has(key)) continue;
228
+ seenTitles.add(key);
229
+ popups.push({
230
+ title,
231
+ description,
232
+ closable: dialog.querySelectorAll('button').length > 0,
233
+ });
234
+ }
235
+
236
+ return popups;
237
+ })()`, false);
238
+ }
239
+ /**
240
+ * Dismiss closable popups in the instance UI by clicking their buttons.
241
+ *
242
+ * @returns The number of popups that were dismissed.
243
+ */
244
+ async dismissInstancePopups() {
245
+ return this.evaluateUI(`(() => {
246
+ let dismissed = 0;
247
+ let nonDismissable = 0;
248
+ const seen = new WeakSet();
249
+
250
+ // Strategy 1: class-based selectors for known popup components
251
+ for (const header of document.querySelectorAll('[class*="Popup_Header_"], [class*="ErrorAndAlert_Title_"]')) {
252
+ const container = header.closest('[class*="Popup_Container_"], [class*="Popup_Wrapper_"], [class*="ErrorAndAlert_"]') || header.parentElement;
253
+ if (!container || seen.has(container)) continue;
254
+ seen.add(container);
255
+ const controls = container.querySelector('[class*="Popup_Controls_"], [class*="Popup_Buttons_"]');
256
+ const button = controls?.querySelector('button');
257
+ if (button) {
258
+ button.click();
259
+ dismissed++;
260
+ } else {
261
+ nonDismissable++;
262
+ }
263
+ }
264
+
265
+ // Strategy 2: role-based fallback for dialogs not caught above
266
+ for (const dialog of document.querySelectorAll('[role="dialog"]')) {
267
+ if (seen.has(dialog)) continue;
268
+ seen.add(dialog);
269
+ const button = dialog.querySelector('button');
270
+ if (button) {
271
+ button.click();
272
+ dismissed++;
273
+ } else {
274
+ nonDismissable++;
275
+ }
276
+ }
277
+
278
+ return { dismissed, nonDismissable };
279
+ })()`, false);
280
+ }
281
+ /**
282
+ * Create a {@link VoyagerInterceptor} attached to the LinkedIn WebView.
283
+ *
284
+ * Returns a cached instance — only one interceptor exists per
285
+ * InstanceService connection. The interceptor is invalidated on
286
+ * {@link disconnect}.
287
+ */
288
+ createVoyagerInterceptor() {
289
+ if (!this.voyagerInterceptor) {
290
+ this.voyagerInterceptor = new VoyagerInterceptor(this.ensureLinkedInClient());
291
+ }
292
+ return this.voyagerInterceptor;
293
+ }
149
294
  /** Whether both clients are currently connected. */
150
295
  get isConnected() {
151
296
  return (this.linkedInClient !== null &&
@@ -153,6 +298,12 @@ export class InstanceService {
153
298
  this.uiClient !== null &&
154
299
  this.uiClient.isConnected);
155
300
  }
301
+ ensureLinkedInClient() {
302
+ if (!this.linkedInClient) {
303
+ throw new ServiceError("InstanceService is not connected (LinkedIn target)");
304
+ }
305
+ return this.linkedInClient;
306
+ }
156
307
  ensureUiClient() {
157
308
  if (!this.uiClient) {
158
309
  throw new ServiceError("InstanceService is not connected (UI target)");
@@ -1 +1 @@
1
- {"version":3,"file":"instance.js","sourceRoot":"","sources":["../../src/services/instance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instance.js","sourceRoot":"","sources":["../../src/services/instance.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAG9E,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAc1G,gEAAgE;AAChE,MAAM,eAAe,GAAG,MAAM,CAAC;AAE/B,oDAAoD;AACpD,MAAM,qBAAqB,GAAG,KAAK,CAAC;AASpC;;;;;;;;;GASG;AACH,MAAM,OAAO,eAAe;IACT,IAAI,CAAS;IACb,IAAI,CAAS;IACb,OAAO,CAAqB;IAC5B,WAAW,CAAU;IAC9B,cAAc,GAAqB,IAAI,CAAC;IACxC,QAAQ,GAAqB,IAAI,CAAC;IAClC,aAAa,GAAyB,IAAI,CAAC;IAC3C,kBAAkB,GAA8B,IAAI,CAAC;IAE7D,YAAY,IAAY,EAAE,OAAoE;QAC5F,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,WAAW,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,OAAO,EAAE,OAAO,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,KAAK,CAAC;IACnD,CAAC;IAED;;;;;;;OAOG;IACH,gBAAgB,CAAC,OAA6B;QAC5C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;IAC/B,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,eAAe,CAAC;QAE9C,IAAI,OAAO,GAAgB,EAAE,CAAC;QAC9B,IAAI,cAAqC,CAAC;QAC1C,IAAI,QAA+B,CAAC;QAEpC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;YAC7B,OAAO,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAEtD,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAChD,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAEpC,IAAI,cAAc,IAAI,QAAQ,EAAE,CAAC;gBAC/B,MAAM;YACR,CAAC;YAED,MAAM,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACrC,CAAC;QAED,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,uBAAuB,CAC/B,2CAA2C,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,0BAA0B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC/G,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,uBAAuB,CAC/B,sCAAsC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,0BAA0B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC1G,CAAC;QACJ,CAAC;QAED,MAAM,aAAa,GAAG;YACpB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;YAC5D,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC;QAEF,MAAM,QAAQ,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QACzD,MAAM,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QAE1C,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QACnD,MAAM,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAE9B,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC/B,IAAI,CAAC,cAAc,EAAE,UAAU,EAAE,CAAC;QAClC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,aAAa,CACjB,UAAkB,EAClB,SAAkC,EAAE;QAEpC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAErC,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,QAAQ,CACnB;;;uDAG+C,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;WACjG,EACH,IAAI,CACL,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;gBACrC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9B,CAAC;YACD,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;YACpC,MAAM,IAAI,oBAAoB,CAAC,UAAU,EAAE,WAAW,UAAU,aAAa,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5G,CAAC;QAED,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;IACnD,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,UAAU,CACd,UAAkB,EAClB,YAAY,GAAG,IAAI;QAEnB,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAI,UAAU,EAAE,YAAY,CAAC,CAAC;YAClE,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5B,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;gBACrC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9B,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,gBAAgB,CAAC,GAAW;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC3C,MAAM,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;YAC/D,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC3B,MAAM,WAAW,CAAC;QACpB,CAAC;gBAAS,CAAC;YACT,MAAM,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,iBAAiB;QACrB,OAAO,IAAI,CAAC,UAAU,CACpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAoDK,EACL,KAAK,CACN,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,qBAAqB;QACzB,OAAO,IAAI,CAAC,UAAU,CACpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAkCK,EACL,KAAK,CACN,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,wBAAwB;QACtB,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7B,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,CAC9C,IAAI,CAAC,oBAAoB,EAAE,CAC5B,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,oDAAoD;IACpD,IAAI,WAAW;QACb,OAAO,CACL,IAAI,CAAC,cAAc,KAAK,IAAI;YAC5B,IAAI,CAAC,cAAc,CAAC,WAAW;YAC/B,IAAI,CAAC,QAAQ,KAAK,IAAI;YACtB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAC1B,CAAC;IACJ,CAAC;IAEO,oBAAoB;QAC1B,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,MAAM,IAAI,YAAY,CAAC,oDAAoD,CAAC,CAAC;QAC/E,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAEO,cAAc;QACpB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,YAAY,CAAC,8CAA8C,CAAC,CAAC;QACzE,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,cAAc;QAC1B,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAChC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,cAAc;gBAAE,MAAM,KAAK,CAAC;YACjD,yEAAyE;QAC3E,CAAC;IACH,CAAC;CACF;AAED,SAAS,gBAAgB,CAAC,MAAiB;IACzC,OAAO,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,UAAU,CAAC,MAAiB;IACnC,OAAO,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;AACrE,CAAC"}
@@ -194,6 +194,107 @@ describe("InstanceService", () => {
194
194
  await expect(service.executeAction("SomeAction")).rejects.toThrow(ServiceError);
195
195
  });
196
196
  });
197
+ describe("navigateLinkedIn", () => {
198
+ it("enables Page domain, navigates, waits for load, then disables", async () => {
199
+ mockedDiscoverTargets.mockResolvedValue([LINKEDIN_TARGET, UI_TARGET]);
200
+ await service.connect();
201
+ const liClient = getClientMocks("LI1");
202
+ await service.navigateLinkedIn("https://www.linkedin.com/search/results/people/");
203
+ expect(liClient.send).toHaveBeenCalledWith("Page.enable");
204
+ expect(liClient.navigate).toHaveBeenCalledWith("https://www.linkedin.com/search/results/people/");
205
+ expect(liClient.waitForEvent).toHaveBeenCalledWith("Page.loadEventFired");
206
+ expect(liClient.send).toHaveBeenCalledWith("Page.disable");
207
+ });
208
+ it("disables Page domain even when navigation fails", async () => {
209
+ mockedDiscoverTargets.mockResolvedValue([LINKEDIN_TARGET, UI_TARGET]);
210
+ await service.connect();
211
+ const liClient = getClientMocks("LI1");
212
+ liClient.navigate.mockRejectedValueOnce(new Error("navigation failed"));
213
+ await expect(service.navigateLinkedIn("https://www.linkedin.com/search/results/people/")).rejects.toThrow("navigation failed");
214
+ expect(liClient.send).toHaveBeenCalledWith("Page.disable");
215
+ });
216
+ it("does not use the UI client", async () => {
217
+ mockedDiscoverTargets.mockResolvedValue([LINKEDIN_TARGET, UI_TARGET]);
218
+ await service.connect();
219
+ await service.navigateLinkedIn("https://www.linkedin.com/search/results/people/");
220
+ const uiClient = getClientMocks("UI1");
221
+ expect(uiClient.navigate).not.toHaveBeenCalled();
222
+ expect(uiClient.send).not.toHaveBeenCalled();
223
+ });
224
+ it("throws ServiceError when not connected", async () => {
225
+ await expect(service.navigateLinkedIn("https://www.linkedin.com/search/results/people/")).rejects.toThrow(ServiceError);
226
+ });
227
+ });
228
+ describe("getInstancePopups", () => {
229
+ it("returns empty array when no popups found", async () => {
230
+ mockedDiscoverTargets.mockResolvedValue([LINKEDIN_TARGET, UI_TARGET]);
231
+ await service.connect();
232
+ const uiClient = getClientMocks("UI1");
233
+ uiClient.evaluate.mockResolvedValueOnce([]);
234
+ const result = await service.getInstancePopups();
235
+ expect(result).toEqual([]);
236
+ expect(uiClient.evaluate).toHaveBeenCalledTimes(1);
237
+ const call = uiClient.evaluate.mock.calls[0];
238
+ expect(call).toBeDefined();
239
+ expect(call?.[0]).toContain("Popup_Header_");
240
+ expect(call?.[0]).toContain('[role="dialog"]');
241
+ expect(call?.[1]).toBe(false);
242
+ });
243
+ it("returns detected popups with title and description", async () => {
244
+ mockedDiscoverTargets.mockResolvedValue([LINKEDIN_TARGET, UI_TARGET]);
245
+ await service.connect();
246
+ const uiClient = getClientMocks("UI1");
247
+ uiClient.evaluate.mockResolvedValueOnce([
248
+ {
249
+ title: "Failed to initialize UI",
250
+ description: "AsyncHandlerError: liAccount not initialized",
251
+ closable: true,
252
+ },
253
+ ]);
254
+ const result = await service.getInstancePopups();
255
+ expect(result).toEqual([
256
+ {
257
+ title: "Failed to initialize UI",
258
+ description: "AsyncHandlerError: liAccount not initialized",
259
+ closable: true,
260
+ },
261
+ ]);
262
+ });
263
+ it("returns multiple popups", async () => {
264
+ mockedDiscoverTargets.mockResolvedValue([LINKEDIN_TARGET, UI_TARGET]);
265
+ await service.connect();
266
+ const uiClient = getClientMocks("UI1");
267
+ uiClient.evaluate.mockResolvedValueOnce([
268
+ { title: "Error 1", description: "Details 1", closable: true },
269
+ { title: "Error 2", closable: false },
270
+ ]);
271
+ const result = await service.getInstancePopups();
272
+ expect(result).toHaveLength(2);
273
+ expect(result[0]?.title).toBe("Error 1");
274
+ expect(result[1]?.title).toBe("Error 2");
275
+ expect(result[1]?.description).toBeUndefined();
276
+ expect(result[1]?.closable).toBe(false);
277
+ });
278
+ it("throws ServiceError when not connected", async () => {
279
+ await expect(service.getInstancePopups()).rejects.toThrow(ServiceError);
280
+ });
281
+ it("propagates errors from CDP client", async () => {
282
+ mockedDiscoverTargets.mockResolvedValue([LINKEDIN_TARGET, UI_TARGET]);
283
+ await service.connect();
284
+ const uiClient = getClientMocks("UI1");
285
+ uiClient.evaluate.mockRejectedValueOnce(new Error("CDP evaluation failed"));
286
+ await expect(service.getInstancePopups()).rejects.toThrow("CDP evaluation failed");
287
+ });
288
+ it("evaluates on the UI client only", async () => {
289
+ mockedDiscoverTargets.mockResolvedValue([LINKEDIN_TARGET, UI_TARGET]);
290
+ await service.connect();
291
+ const uiClient = getClientMocks("UI1");
292
+ uiClient.evaluate.mockResolvedValueOnce([]);
293
+ await service.getInstancePopups();
294
+ const liClient = getClientMocks("LI1");
295
+ expect(liClient.evaluate).not.toHaveBeenCalled();
296
+ });
297
+ });
197
298
  describe("evaluateUI", () => {
198
299
  it("evaluates expression on the UI client only", async () => {
199
300
  mockedDiscoverTargets.mockResolvedValue([LINKEDIN_TARGET, UI_TARGET]);
@@ -1 +1 @@
1
- {"version":3,"file":"instance.test.js","sourceRoot":"","sources":["../../src/services/instance.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instance.test.js","sourceRoot":"","sources":["../../src/services/instance.test.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ export declare class LauncherService {
11
11
  private readonly host;
12
12
  private readonly allowRemote;
13
13
  private client;
14
+ private nodeContextId;
14
15
  constructor(port?: number, options?: {
15
16
  host?: string;
16
17
  allowRemote?: boolean;
@@ -62,6 +63,13 @@ export declare class LauncherService {
62
63
  * the UI is blocked.
63
64
  */
64
65
  getPopupState(): Promise<PopupState | null>;
66
+ /**
67
+ * Dismiss the blocking launcher popup by clicking its first button.
68
+ *
69
+ * Returns `true` if a popup was found and dismissed, `false` if no
70
+ * dismissable popup was present.
71
+ */
72
+ dismissPopup(): Promise<boolean>;
65
73
  /**
66
74
  * Check the overall UI health of a LinkedHelper instance.
67
75
  *
@@ -73,5 +81,20 @@ export declare class LauncherService {
73
81
  get isConnected(): boolean;
74
82
  private ensureConnected;
75
83
  private launcherEvaluate;
84
+ /**
85
+ * Discover which CDP execution context provides `require()`.
86
+ *
87
+ * With `nodeIntegration` enabled, the default (main world) context
88
+ * has `require()`. When `nodeIntegration` is disabled (newer Electron
89
+ * configurations), the Electron preload script still runs with Node.js
90
+ * access in a separate isolated context. This method probes all
91
+ * available contexts to find one where `require()` is available.
92
+ *
93
+ * @returns The `contextId` for the Node.js-capable context, or
94
+ * `undefined` when the default context already has `require()`.
95
+ * @throws {NodeIntegrationUnavailableError} if no context provides
96
+ * `require()`.
97
+ */
98
+ private resolveNodeContextId;
76
99
  }
77
100
  //# sourceMappingURL=launcher.d.ts.map