@bubblelab/bubble-core 0.1.174 → 0.1.176

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 (50) hide show
  1. package/dist/bubble-bundle.d.ts +105 -27
  2. package/dist/bubble-factory.d.ts.map +1 -1
  3. package/dist/bubble-factory.js +8 -0
  4. package/dist/bubble-factory.js.map +1 -1
  5. package/dist/bubbles/service-bubble/attio/attio.d.ts +563 -0
  6. package/dist/bubbles/service-bubble/attio/attio.d.ts.map +1 -0
  7. package/dist/bubbles/service-bubble/attio/attio.js +484 -0
  8. package/dist/bubbles/service-bubble/attio/attio.js.map +1 -0
  9. package/dist/bubbles/service-bubble/attio/attio.schema.d.ts +527 -0
  10. package/dist/bubbles/service-bubble/attio/attio.schema.d.ts.map +1 -0
  11. package/dist/bubbles/service-bubble/attio/attio.schema.js +386 -0
  12. package/dist/bubbles/service-bubble/attio/attio.schema.js.map +1 -0
  13. package/dist/bubbles/service-bubble/attio/attio.utils.d.ts +1 -0
  14. package/dist/bubbles/service-bubble/attio/attio.utils.d.ts.map +1 -0
  15. package/dist/bubbles/service-bubble/attio/attio.utils.js +4 -0
  16. package/dist/bubbles/service-bubble/attio/attio.utils.js.map +1 -0
  17. package/dist/bubbles/service-bubble/attio/index.d.ts +3 -0
  18. package/dist/bubbles/service-bubble/attio/index.d.ts.map +1 -0
  19. package/dist/bubbles/service-bubble/attio/index.js +3 -0
  20. package/dist/bubbles/service-bubble/attio/index.js.map +1 -0
  21. package/dist/bubbles/service-bubble/capability-pipeline.js +2 -2
  22. package/dist/bubbles/service-bubble/capability-pipeline.js.map +1 -1
  23. package/dist/bubbles/service-bubble/hubspot/hubspot.d.ts +388 -0
  24. package/dist/bubbles/service-bubble/hubspot/hubspot.d.ts.map +1 -0
  25. package/dist/bubbles/service-bubble/hubspot/hubspot.js +241 -0
  26. package/dist/bubbles/service-bubble/hubspot/hubspot.js.map +1 -0
  27. package/dist/bubbles/service-bubble/hubspot/hubspot.schema.d.ts +345 -0
  28. package/dist/bubbles/service-bubble/hubspot/hubspot.schema.d.ts.map +1 -0
  29. package/dist/bubbles/service-bubble/hubspot/hubspot.schema.js +180 -0
  30. package/dist/bubbles/service-bubble/hubspot/hubspot.schema.js.map +1 -0
  31. package/dist/bubbles/service-bubble/hubspot/index.d.ts +3 -0
  32. package/dist/bubbles/service-bubble/hubspot/index.d.ts.map +1 -0
  33. package/dist/bubbles/service-bubble/hubspot/index.js +3 -0
  34. package/dist/bubbles/service-bubble/hubspot/index.js.map +1 -0
  35. package/dist/bubbles/tool-bubble/browser-tools/_shared/ai/ai-browser-agent.d.ts +5 -30
  36. package/dist/bubbles/tool-bubble/browser-tools/_shared/ai/ai-browser-agent.d.ts.map +1 -1
  37. package/dist/bubbles/tool-bubble/browser-tools/_shared/ai/ai-browser-agent.js +70 -204
  38. package/dist/bubbles/tool-bubble/browser-tools/_shared/ai/ai-browser-agent.js.map +1 -1
  39. package/dist/bubbles/tool-bubble/browser-tools/_shared/ai/ai-browser-agent.types.d.ts +4 -0
  40. package/dist/bubbles/tool-bubble/browser-tools/_shared/ai/ai-browser-agent.types.d.ts.map +1 -1
  41. package/dist/bubbles/tool-bubble/browser-tools/linkedin-connection/tool.d.ts +31 -0
  42. package/dist/bubbles/tool-bubble/browser-tools/linkedin-connection/tool.d.ts.map +1 -1
  43. package/dist/bubbles/tool-bubble/browser-tools/linkedin-connection/tool.js +202 -39
  44. package/dist/bubbles/tool-bubble/browser-tools/linkedin-connection/tool.js.map +1 -1
  45. package/dist/bubbles.json +1598 -2
  46. package/dist/index.d.ts +4 -0
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +2 -0
  49. package/dist/index.js.map +1 -1
  50. package/package.json +2 -2
@@ -116,6 +116,49 @@ let LinkedInConnectionTool = (() => {
116
116
  }
117
117
  return results;
118
118
  }
119
+ `;
120
+ /**
121
+ * JS helper to find the profile card's action button container.
122
+ *
123
+ * LinkedIn renders sidebar recommendation buttons (e.g. "Invite Dr. David P.
124
+ * to connect") inside the same <main><section> as the profile card, so we
125
+ * can't rely on section scoping. Instead, we find a known profile-specific
126
+ * button like "Follow <name>" or "Message <name>" and walk up to the action
127
+ * button row that also contains the "More" button.
128
+ */
129
+ static FIND_ACTION_ROW = `
130
+ function findActionRow() {
131
+ const titleEl = document.querySelector('title');
132
+ const profileName = titleEl ? titleEl.textContent.split('|')[0].trim() : '';
133
+ if (!profileName) return null;
134
+
135
+ // Find a button whose aria-label starts with "Follow/Message" + the profile name
136
+ const allBtns = document.querySelectorAll('button, a, [role="button"]');
137
+ let anchorBtn = null;
138
+ for (const btn of allBtns) {
139
+ const aria = btn.getAttribute('aria-label') || '';
140
+ if (aria.includes(profileName) &&
141
+ (aria.startsWith('Follow') || aria.startsWith('Message'))) {
142
+ anchorBtn = btn;
143
+ break;
144
+ }
145
+ }
146
+ if (!anchorBtn) return null;
147
+
148
+ // Walk up from the anchor to find the container that also holds the More button
149
+ let container = anchorBtn.parentElement;
150
+ for (let i = 0; i < 5; i++) {
151
+ if (!container || !container.parentElement) break;
152
+ // Check if this container has a More button
153
+ if (container.querySelector('[aria-label="More"], [aria-label*="more actions" i]')) {
154
+ return container;
155
+ }
156
+ container = container.parentElement;
157
+ }
158
+
159
+ // Fallback: return the last container we walked up to
160
+ return container || null;
161
+ }
119
162
  `;
120
163
  sessionId = (__runInitializers(this, _instanceExtraInitializers), null);
121
164
  contextId = null;
@@ -173,7 +216,7 @@ let LinkedInConnectionTool = (() => {
173
216
  operation: 'navigate',
174
217
  session_id: this.sessionId,
175
218
  url: this.params.profile_url,
176
- wait_until: 'domcontentloaded',
219
+ wait_until: 'load',
177
220
  timeout: 30000,
178
221
  }, this.context, 'navigate');
179
222
  const result = await browserbase.action();
@@ -233,63 +276,55 @@ let LinkedInConnectionTool = (() => {
233
276
  return info.name ? info : null;
234
277
  }
235
278
  async stepClickConnect() {
236
- // Primary: find <a> with custom-invite href (new LinkedIn design)
237
279
  const directResult = (await this.evaluate(`
238
280
  (() => {
239
- // New LinkedIn design: Connect is an <a> with /custom-invite/ href
240
- const connectLink = document.querySelector('a[href*="/custom-invite/"]');
281
+ ${LinkedInConnectionTool.FIND_ACTION_ROW}
282
+ const actionRow = findActionRow();
283
+ if (!actionRow) return { clicked: false, openedMore: false, reason: 'could not find profile action row' };
284
+
285
+ // 1. Check for <a> with /custom-invite/ href in action row
286
+ const connectLink = actionRow.querySelector('a[href*="/custom-invite/"]');
241
287
  if (connectLink) {
242
288
  connectLink.click();
243
289
  return { clicked: true, element: 'A - ' + (connectLink.getAttribute('aria-label') || 'custom-invite') };
244
290
  }
245
291
 
246
- // Fallback: search all clickable elements by aria-label or text
247
- const elements = document.querySelectorAll('button, a, [role="button"]');
248
- for (const el of elements) {
249
- const ariaLabel = (el.getAttribute('aria-label') || '').toLowerCase();
292
+ // 2. Look for a button with exact text "Connect" in action row
293
+ const buttons = actionRow.querySelectorAll('button, a, [role="button"]');
294
+ for (const el of buttons) {
250
295
  const text = (el.innerText || el.textContent || '').trim().toLowerCase();
251
- if ((ariaLabel.includes('invite') && ariaLabel.includes('connect')) ||
252
- text === 'connect') {
296
+ if (text === 'connect') {
253
297
  const rect = el.getBoundingClientRect();
254
298
  if (rect.width > 0 && rect.height > 0) {
255
299
  el.click();
256
- return { clicked: true, element: el.tagName + ' - ' + (ariaLabel || text) };
300
+ return { clicked: true, element: el.tagName + ' - connect' };
257
301
  }
258
302
  }
259
303
  }
260
- return { clicked: false };
304
+
305
+ // 3. Click the "More" (...) button in action row
306
+ const moreBtn = actionRow.querySelector('[aria-label="More"], [aria-label*="more actions" i]');
307
+ if (moreBtn) {
308
+ moreBtn.click();
309
+ return { clicked: false, openedMore: true, element: moreBtn.getAttribute('aria-label') };
310
+ }
311
+
312
+ return { clicked: false, openedMore: false, reason: 'no connect or more button in action row' };
261
313
  })()
262
314
  `));
263
315
  if (directResult.clicked)
264
316
  return true;
265
- // More dropdown fallback
266
- const moreResult = (await this.evaluate(`
267
- (() => {
268
- const elements = document.querySelectorAll('button, a, [role="button"]');
269
- for (const el of elements) {
270
- const ariaLabel = (el.getAttribute('aria-label') || '').toLowerCase();
271
- const text = (el.innerText || el.textContent || '').trim().toLowerCase();
272
- if (ariaLabel === 'more' || ariaLabel.includes('more actions') || text === 'more') {
273
- el.click();
274
- return { clicked: true, element: ariaLabel || text };
275
- }
276
- }
277
- return { clicked: false };
278
- })()
279
- `));
280
- if (moreResult.clicked) {
317
+ if (directResult.openedMore) {
281
318
  await new Promise((r) => setTimeout(r, 1000));
319
+ // Search the dropdown (rendered at document level, outside the action row)
282
320
  const dropdownResult = (await this.evaluate(`
283
321
  (() => {
284
- // Search dropdown items, menu items, and list items for Connect
285
- const items = document.querySelectorAll('[role="button"], [role="menuitem"], [role="option"], li a, li button');
322
+ const items = document.querySelectorAll('[role="menuitem"], [role="option"], .artdeco-dropdown__content-inner li');
286
323
  for (const item of items) {
287
- const ariaLabel = (item.getAttribute('aria-label') || '').toLowerCase();
288
324
  const text = (item.innerText || item.textContent || '').trim().toLowerCase();
289
- if ((ariaLabel.includes('invite') && ariaLabel.includes('connect')) ||
290
- ariaLabel.includes('connect') || text === 'connect') {
325
+ if (text.includes('connect')) {
291
326
  item.click();
292
- return { clicked: true, element: ariaLabel || text };
327
+ return { clicked: true, element: text };
293
328
  }
294
329
  }
295
330
  return { clicked: false, itemCount: items.length };
@@ -299,8 +334,13 @@ let LinkedInConnectionTool = (() => {
299
334
  return true;
300
335
  throw new Error(`Could not find Connect option in More dropdown (found ${dropdownResult.itemCount} items)`);
301
336
  }
302
- throw new Error('Could not find Connect button or More dropdown');
337
+ throw new Error(`Could not find Connect button or More dropdown: ${directResult.reason || 'unknown'}`);
303
338
  }
339
+ /**
340
+ * Wait for the connection modal OR detect that the connection was sent
341
+ * directly (no modal). Returns 'modal' if modal appeared, 'pending' if
342
+ * connection was sent directly, or throws if neither happened.
343
+ */
304
344
  async stepWaitForModal() {
305
345
  const checkScript = `
306
346
  (() => {
@@ -313,13 +353,22 @@ let LinkedInConnectionTool = (() => {
313
353
  return false;
314
354
  })()
315
355
  `;
316
- for (let attempt = 1; attempt <= 8; attempt++) {
356
+ for (let attempt = 1; attempt <= 12; attempt++) {
357
+ // Check for the modal FIRST — before dismissing popups, because
358
+ // dismissPopupsOnce could accidentally close the connection modal
317
359
  const found = await this.evaluate(checkScript);
318
360
  if (found)
319
- return true;
361
+ return 'modal';
362
+ // Check if connection was sent directly (button changed to Pending)
363
+ // This can happen with a delay after clicking Connect
364
+ const pending = await this.checkIfConnectionPending();
365
+ if (pending)
366
+ return 'pending';
367
+ // Only dismiss popups (Premium upsell, etc.) if modal isn't showing
368
+ await this.dismissPopupsOnce();
320
369
  await new Promise((r) => setTimeout(r, 1000));
321
370
  }
322
- throw new Error('Connection modal did not appear within 8 seconds');
371
+ throw new Error('Connection modal did not appear within 12 seconds');
323
372
  }
324
373
  async stepAddNote(message) {
325
374
  await this.evaluate(`
@@ -405,6 +454,88 @@ let LinkedInConnectionTool = (() => {
405
454
  console.log(`[RecordableLinkedIn] Session ended: ${this.sessionId}`);
406
455
  this.sessionId = null;
407
456
  }
457
+ /**
458
+ * Check if the connection was already sent directly (no modal).
459
+ * LinkedIn sometimes sends connections immediately when clicking Connect
460
+ * from the More dropdown, skipping the "Add a note" / "Send without a note" modal.
461
+ * In that case the button changes to "Pending".
462
+ *
463
+ * Scoped to the profile card (via h1 ancestor) to avoid matching Pending
464
+ * buttons on sidebar recommendation profiles.
465
+ */
466
+ async checkIfConnectionPending() {
467
+ const pending = (await this.evaluate(`
468
+ (() => {
469
+ ${LinkedInConnectionTool.FIND_ACTION_ROW}
470
+ const actionRow = findActionRow();
471
+ if (!actionRow) return false;
472
+ const elements = actionRow.querySelectorAll('button, a, [role="button"]');
473
+ for (const el of elements) {
474
+ const text = (el.innerText || el.textContent || '').trim().toLowerCase();
475
+ if (text === 'pending') return true;
476
+ }
477
+ return false;
478
+ })()
479
+ `));
480
+ return pending;
481
+ }
482
+ /**
483
+ * Dismiss visible LinkedIn overlay popups (Premium upsell, Sales Navigator,
484
+ * cookie consent, etc.). Called from inside polling loops so it runs on
485
+ * every iteration rather than as a one-shot step.
486
+ */
487
+ async dismissPopupsOnce() {
488
+ const dismissed = (await this.evaluate(`
489
+ (() => {
490
+ let count = 0;
491
+
492
+ // Helper: check if an element is inside the connection modal
493
+ // (we must NOT dismiss the connection modal itself)
494
+ function isInsideConnectionModal(el) {
495
+ const modal = el.closest('[role="dialog"], .artdeco-modal, .artdeco-modal-overlay');
496
+ if (!modal) return false;
497
+ const modalText = (modal.innerText || '').toLowerCase();
498
+ return modalText.includes('add a note') ||
499
+ modalText.includes('send without') ||
500
+ modalText.includes('how would you like to connect');
501
+ }
502
+
503
+ // 1. Dismiss buttons with aria-label="Dismiss" that are visible
504
+ // (LinkedIn Premium popup, upsell modals, etc.)
505
+ // Skip any Dismiss button inside the connection modal.
506
+ const dismissButtons = document.querySelectorAll('button[aria-label="Dismiss"]');
507
+ for (const btn of dismissButtons) {
508
+ const rect = btn.getBoundingClientRect();
509
+ if (rect.width > 0 && rect.height > 0 && !isInsideConnectionModal(btn)) {
510
+ btn.click();
511
+ count++;
512
+ }
513
+ }
514
+
515
+ // 2. "Not now" / "No thanks" links/buttons (common on upsell modals)
516
+ // Also skip if inside connection modal.
517
+ const allButtons = document.querySelectorAll('button, a, [role="button"]');
518
+ for (const el of allButtons) {
519
+ const text = (el.innerText || el.textContent || '').trim().toLowerCase();
520
+ if (text === 'not now' || text === 'no thanks' || text === 'maybe later') {
521
+ const rect = el.getBoundingClientRect();
522
+ if (rect.width > 0 && rect.height > 0 && !isInsideConnectionModal(el)) {
523
+ el.click();
524
+ count++;
525
+ }
526
+ }
527
+ }
528
+
529
+ return count;
530
+ })()
531
+ `));
532
+ if (dismissed > 0) {
533
+ console.log(`[RecordableLinkedIn] Dismissed ${dismissed} popup(s)`);
534
+ // Wait for popup close animation
535
+ await new Promise((r) => setTimeout(r, 500));
536
+ }
537
+ return dismissed;
538
+ }
408
539
  async evaluate(script) {
409
540
  if (!this.sessionId)
410
541
  throw new Error('No active session');
@@ -444,16 +575,48 @@ let LinkedInConnectionTool = (() => {
444
575
  try {
445
576
  await this.stepStartBrowserSession();
446
577
  await this.stepNavigateToProfile();
578
+ // Let LinkedIn SPA render after navigation — recording overhead
579
+ // previously masked this with ~1-2s of screenshot capture time
580
+ await new Promise((r) => setTimeout(r, 2000));
447
581
  const pageReady = await this.stepWaitForProfilePage();
448
582
  if (!pageReady) {
449
583
  console.log('[RecordableLinkedIn] Profile page slow to load, continuing anyway');
450
584
  }
451
585
  const profileInfo = await this.stepExtractProfileInfo();
452
586
  await this.stepClickConnect();
453
- await this.stepWaitForModal();
587
+ // Let the connection modal (or popup) animate in
588
+ await new Promise((r) => setTimeout(r, 1000));
589
+ // LinkedIn sometimes sends the connection directly (no modal) —
590
+ // check if the button already shows "Pending"
591
+ const alreadySent = await this.checkIfConnectionPending();
592
+ if (alreadySent) {
593
+ console.log('[RecordableLinkedIn] Connection sent directly (no modal) — button shows Pending');
594
+ return {
595
+ operation: 'send_connection',
596
+ success: true,
597
+ message: `Connection request sent to ${profileInfo?.name || 'profile'} (direct, no modal)`,
598
+ profile: profileInfo || undefined,
599
+ error: '',
600
+ };
601
+ }
602
+ // Wait for modal or detect late pending state (connection sent
603
+ // directly but Pending button appeared with a delay)
604
+ const modalResult = await this.stepWaitForModal();
605
+ if (modalResult === 'pending') {
606
+ console.log('[RecordableLinkedIn] Connection sent directly (detected during modal wait) — button shows Pending');
607
+ return {
608
+ operation: 'send_connection',
609
+ success: true,
610
+ message: `Connection request sent to ${profileInfo?.name || 'profile'} (direct, no modal)`,
611
+ profile: profileInfo || undefined,
612
+ error: '',
613
+ };
614
+ }
454
615
  const { message } = this.params;
455
616
  if (message) {
456
617
  await this.stepAddNote(message);
618
+ // Let LinkedIn process the note input before looking for Send
619
+ await new Promise((r) => setTimeout(r, 500));
457
620
  }
458
621
  await this.stepSendRequest(!!message);
459
622
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../../../src/bubbles/tool-bubble/browser-tools/linkedin-connection/tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../../../src/bubbles/tool-bubble/browser-tools/linkedin-connection/tool.ts"],"names":[],"mappings":"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"}