donobu 2.18.4 → 2.19.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 (215) hide show
  1. package/dist/apis/FlowsApi.d.ts +4 -0
  2. package/dist/apis/FlowsApi.d.ts.map +1 -1
  3. package/dist/apis/FlowsApi.js +15 -1
  4. package/dist/apis/FlowsApi.js.map +1 -1
  5. package/dist/apis/SpecialFlowsApi.d.ts.map +1 -1
  6. package/dist/apis/SpecialFlowsApi.js +11 -9
  7. package/dist/apis/SpecialFlowsApi.js.map +1 -1
  8. package/dist/assets/control-panel.js +7 -1
  9. package/dist/assets/generated/parameter-schemas.json +44 -0
  10. package/dist/assets/generated/version +1 -1
  11. package/dist/assets/page-interactions-tracker.js +27 -30
  12. package/dist/bindings/PageInteractionTracker.d.ts.map +1 -1
  13. package/dist/bindings/PageInteractionTracker.js +1 -1
  14. package/dist/bindings/PageInteractionTracker.js.map +1 -1
  15. package/dist/esm/apis/FlowsApi.d.ts +4 -0
  16. package/dist/esm/apis/FlowsApi.d.ts.map +1 -1
  17. package/dist/esm/apis/FlowsApi.js +15 -1
  18. package/dist/esm/apis/FlowsApi.js.map +1 -1
  19. package/dist/esm/apis/SpecialFlowsApi.d.ts.map +1 -1
  20. package/dist/esm/apis/SpecialFlowsApi.js +11 -9
  21. package/dist/esm/apis/SpecialFlowsApi.js.map +1 -1
  22. package/dist/esm/assets/control-panel.js +7 -1
  23. package/dist/esm/assets/generated/parameter-schemas.json +44 -0
  24. package/dist/esm/assets/generated/version +1 -1
  25. package/dist/esm/assets/page-interactions-tracker.js +27 -30
  26. package/dist/esm/bindings/PageInteractionTracker.d.ts.map +1 -1
  27. package/dist/esm/bindings/PageInteractionTracker.js +1 -1
  28. package/dist/esm/bindings/PageInteractionTracker.js.map +1 -1
  29. package/dist/esm/lib/testExtension.d.ts.map +1 -1
  30. package/dist/esm/lib/testExtension.js +20 -19
  31. package/dist/esm/lib/testExtension.js.map +1 -1
  32. package/dist/esm/managers/AdminApiController.d.ts.map +1 -1
  33. package/dist/esm/managers/AdminApiController.js +1 -0
  34. package/dist/esm/managers/AdminApiController.js.map +1 -1
  35. package/dist/esm/managers/CodeGenerator.d.ts +47 -1
  36. package/dist/esm/managers/CodeGenerator.d.ts.map +1 -1
  37. package/dist/esm/managers/CodeGenerator.js +211 -19
  38. package/dist/esm/managers/CodeGenerator.js.map +1 -1
  39. package/dist/esm/managers/ControlPanel.d.ts.map +1 -1
  40. package/dist/esm/managers/ControlPanel.js +7 -5
  41. package/dist/esm/managers/ControlPanel.js.map +1 -1
  42. package/dist/esm/managers/DonobuFlow.d.ts +3 -4
  43. package/dist/esm/managers/DonobuFlow.d.ts.map +1 -1
  44. package/dist/esm/managers/DonobuFlow.js +57 -44
  45. package/dist/esm/managers/DonobuFlow.js.map +1 -1
  46. package/dist/esm/managers/DonobuFlowsManager.d.ts +58 -34
  47. package/dist/esm/managers/DonobuFlowsManager.d.ts.map +1 -1
  48. package/dist/esm/managers/DonobuFlowsManager.js +217 -64
  49. package/dist/esm/managers/DonobuFlowsManager.js.map +1 -1
  50. package/dist/esm/managers/FlowDependencyAnalyzer.d.ts +40 -0
  51. package/dist/esm/managers/FlowDependencyAnalyzer.d.ts.map +1 -0
  52. package/dist/esm/managers/FlowDependencyAnalyzer.js +236 -0
  53. package/dist/esm/managers/FlowDependencyAnalyzer.js.map +1 -0
  54. package/dist/esm/managers/ProjectStructureGenerator.d.ts +62 -0
  55. package/dist/esm/managers/ProjectStructureGenerator.d.ts.map +1 -0
  56. package/dist/esm/managers/ProjectStructureGenerator.js +234 -0
  57. package/dist/esm/managers/ProjectStructureGenerator.js.map +1 -0
  58. package/dist/esm/managers/ToolManager.d.ts.map +1 -1
  59. package/dist/esm/managers/ToolManager.js +4 -2
  60. package/dist/esm/managers/ToolManager.js.map +1 -1
  61. package/dist/esm/models/FlowMetadata.d.ts +52 -0
  62. package/dist/esm/models/FlowMetadata.d.ts.map +1 -1
  63. package/dist/esm/persistence/flows/FlowsPersistence.d.ts +11 -9
  64. package/dist/esm/persistence/flows/FlowsPersistence.d.ts.map +1 -1
  65. package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.d.ts +4 -5
  66. package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.d.ts.map +1 -1
  67. package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.js +76 -77
  68. package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.js.map +1 -1
  69. package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.js +2 -2
  70. package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.js.map +1 -1
  71. package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.d.ts +7 -7
  72. package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.d.ts.map +1 -1
  73. package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.js +51 -60
  74. package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.js.map +1 -1
  75. package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts +4 -5
  76. package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -1
  77. package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.js +40 -41
  78. package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.js.map +1 -1
  79. package/dist/esm/persistence/flows/FlowsPersistenceSqlite.d.ts +4 -4
  80. package/dist/esm/persistence/flows/FlowsPersistenceSqlite.d.ts.map +1 -1
  81. package/dist/esm/persistence/flows/FlowsPersistenceSqlite.js +40 -40
  82. package/dist/esm/persistence/flows/FlowsPersistenceSqlite.js.map +1 -1
  83. package/dist/esm/persistence/flows/FlowsPersistenceSupabase.d.ts +4 -5
  84. package/dist/esm/persistence/flows/FlowsPersistenceSupabase.d.ts.map +1 -1
  85. package/dist/esm/persistence/flows/FlowsPersistenceSupabase.js +37 -37
  86. package/dist/esm/persistence/flows/FlowsPersistenceSupabase.js.map +1 -1
  87. package/dist/esm/persistence/flows/FlowsPersistenceVolatile.d.ts +7 -7
  88. package/dist/esm/persistence/flows/FlowsPersistenceVolatile.d.ts.map +1 -1
  89. package/dist/esm/persistence/flows/FlowsPersistenceVolatile.js +35 -33
  90. package/dist/esm/persistence/flows/FlowsPersistenceVolatile.js.map +1 -1
  91. package/dist/esm/tools/AssertPageTool.d.ts +34 -0
  92. package/dist/esm/tools/AssertPageTool.d.ts.map +1 -0
  93. package/dist/esm/tools/AssertPageTool.js +156 -0
  94. package/dist/esm/tools/AssertPageTool.js.map +1 -0
  95. package/dist/esm/tools/AssertTool.js +1 -1
  96. package/dist/esm/tools/AssertTool.js.map +1 -1
  97. package/dist/esm/tools/ClickTool.d.ts.map +1 -1
  98. package/dist/esm/tools/ClickTool.js +3 -0
  99. package/dist/esm/tools/ClickTool.js.map +1 -1
  100. package/dist/esm/tools/DetectBrokenLinksTool.js +1 -1
  101. package/dist/esm/tools/DetectBrokenLinksTool.js.map +1 -1
  102. package/dist/esm/tools/ExtractGoogleStreetviewEntityDataTool.js +1 -1
  103. package/dist/esm/tools/ExtractGoogleStreetviewEntityDataTool.js.map +1 -1
  104. package/dist/esm/tools/ExtractPaymentProviderKeyTool.d.ts +47 -1
  105. package/dist/esm/tools/ExtractPaymentProviderKeyTool.d.ts.map +1 -1
  106. package/dist/esm/tools/ExtractPaymentProviderKeyTool.js +160 -25
  107. package/dist/esm/tools/ExtractPaymentProviderKeyTool.js.map +1 -1
  108. package/dist/esm/tools/SolveMfaChallenge.d.ts.map +1 -1
  109. package/dist/esm/tools/SolveMfaChallenge.js.map +1 -1
  110. package/dist/esm/utils/BrowserUtils.d.ts +52 -0
  111. package/dist/esm/utils/BrowserUtils.d.ts.map +1 -0
  112. package/dist/esm/utils/BrowserUtils.js +340 -0
  113. package/dist/esm/utils/BrowserUtils.js.map +1 -0
  114. package/dist/esm/utils/PlaywrightUtils.d.ts +15 -11
  115. package/dist/esm/utils/PlaywrightUtils.d.ts.map +1 -1
  116. package/dist/esm/utils/PlaywrightUtils.js +110 -122
  117. package/dist/esm/utils/PlaywrightUtils.js.map +1 -1
  118. package/dist/lib/autoTest.d.ts +2 -0
  119. package/dist/lib/autoTest.d.ts.map +1 -0
  120. package/dist/lib/autoTest.js +17 -0
  121. package/dist/lib/autoTest.js.map +1 -0
  122. package/dist/lib/testExtension.d.ts.map +1 -1
  123. package/dist/lib/testExtension.js +20 -19
  124. package/dist/lib/testExtension.js.map +1 -1
  125. package/dist/managers/AdminApiController.d.ts.map +1 -1
  126. package/dist/managers/AdminApiController.js +1 -0
  127. package/dist/managers/AdminApiController.js.map +1 -1
  128. package/dist/managers/CodeGenerator.d.ts +47 -1
  129. package/dist/managers/CodeGenerator.d.ts.map +1 -1
  130. package/dist/managers/CodeGenerator.js +211 -19
  131. package/dist/managers/CodeGenerator.js.map +1 -1
  132. package/dist/managers/ControlPanel.d.ts.map +1 -1
  133. package/dist/managers/ControlPanel.js +7 -5
  134. package/dist/managers/ControlPanel.js.map +1 -1
  135. package/dist/managers/DonobuFlow.d.ts +3 -4
  136. package/dist/managers/DonobuFlow.d.ts.map +1 -1
  137. package/dist/managers/DonobuFlow.js +57 -44
  138. package/dist/managers/DonobuFlow.js.map +1 -1
  139. package/dist/managers/DonobuFlowsManager.d.ts +58 -34
  140. package/dist/managers/DonobuFlowsManager.d.ts.map +1 -1
  141. package/dist/managers/DonobuFlowsManager.js +217 -64
  142. package/dist/managers/DonobuFlowsManager.js.map +1 -1
  143. package/dist/managers/FlowDependencyAnalyzer.d.ts +40 -0
  144. package/dist/managers/FlowDependencyAnalyzer.d.ts.map +1 -0
  145. package/dist/managers/FlowDependencyAnalyzer.js +236 -0
  146. package/dist/managers/FlowDependencyAnalyzer.js.map +1 -0
  147. package/dist/managers/ProjectStructureGenerator.d.ts +62 -0
  148. package/dist/managers/ProjectStructureGenerator.d.ts.map +1 -0
  149. package/dist/managers/ProjectStructureGenerator.js +234 -0
  150. package/dist/managers/ProjectStructureGenerator.js.map +1 -0
  151. package/dist/managers/ToolManager.d.ts.map +1 -1
  152. package/dist/managers/ToolManager.js +4 -2
  153. package/dist/managers/ToolManager.js.map +1 -1
  154. package/dist/models/BrowserFramework.d.ts +2 -12
  155. package/dist/models/BrowserFramework.d.ts.map +1 -1
  156. package/dist/models/BrowserFramework.js +91 -66
  157. package/dist/models/BrowserFramework.js.map +1 -1
  158. package/dist/models/FlowMetadata.d.ts +52 -0
  159. package/dist/models/FlowMetadata.d.ts.map +1 -1
  160. package/dist/persistence/flows/FlowsPersistence.d.ts +11 -9
  161. package/dist/persistence/flows/FlowsPersistence.d.ts.map +1 -1
  162. package/dist/persistence/flows/FlowsPersistenceAwsS3.d.ts +4 -5
  163. package/dist/persistence/flows/FlowsPersistenceAwsS3.d.ts.map +1 -1
  164. package/dist/persistence/flows/FlowsPersistenceAwsS3.js +76 -77
  165. package/dist/persistence/flows/FlowsPersistenceAwsS3.js.map +1 -1
  166. package/dist/persistence/flows/FlowsPersistenceFactoryImpl.js +2 -2
  167. package/dist/persistence/flows/FlowsPersistenceFactoryImpl.js.map +1 -1
  168. package/dist/persistence/flows/FlowsPersistenceFilesystem.d.ts +7 -7
  169. package/dist/persistence/flows/FlowsPersistenceFilesystem.d.ts.map +1 -1
  170. package/dist/persistence/flows/FlowsPersistenceFilesystem.js +51 -60
  171. package/dist/persistence/flows/FlowsPersistenceFilesystem.js.map +1 -1
  172. package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts +4 -5
  173. package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -1
  174. package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.js +40 -41
  175. package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.js.map +1 -1
  176. package/dist/persistence/flows/FlowsPersistenceSqlite.d.ts +4 -4
  177. package/dist/persistence/flows/FlowsPersistenceSqlite.d.ts.map +1 -1
  178. package/dist/persistence/flows/FlowsPersistenceSqlite.js +40 -40
  179. package/dist/persistence/flows/FlowsPersistenceSqlite.js.map +1 -1
  180. package/dist/persistence/flows/FlowsPersistenceSupabase.d.ts +4 -5
  181. package/dist/persistence/flows/FlowsPersistenceSupabase.d.ts.map +1 -1
  182. package/dist/persistence/flows/FlowsPersistenceSupabase.js +37 -37
  183. package/dist/persistence/flows/FlowsPersistenceSupabase.js.map +1 -1
  184. package/dist/persistence/flows/FlowsPersistenceVolatile.d.ts +7 -7
  185. package/dist/persistence/flows/FlowsPersistenceVolatile.d.ts.map +1 -1
  186. package/dist/persistence/flows/FlowsPersistenceVolatile.js +35 -33
  187. package/dist/persistence/flows/FlowsPersistenceVolatile.js.map +1 -1
  188. package/dist/tools/AssertPageTool.d.ts +34 -0
  189. package/dist/tools/AssertPageTool.d.ts.map +1 -0
  190. package/dist/tools/AssertPageTool.js +156 -0
  191. package/dist/tools/AssertPageTool.js.map +1 -0
  192. package/dist/tools/AssertTool.js +1 -1
  193. package/dist/tools/AssertTool.js.map +1 -1
  194. package/dist/tools/ClickTool.d.ts.map +1 -1
  195. package/dist/tools/ClickTool.js +3 -0
  196. package/dist/tools/ClickTool.js.map +1 -1
  197. package/dist/tools/DetectBrokenLinksTool.js +1 -1
  198. package/dist/tools/DetectBrokenLinksTool.js.map +1 -1
  199. package/dist/tools/ExtractGoogleStreetviewEntityDataTool.js +1 -1
  200. package/dist/tools/ExtractGoogleStreetviewEntityDataTool.js.map +1 -1
  201. package/dist/tools/ExtractPaymentProviderKeyTool.d.ts +47 -1
  202. package/dist/tools/ExtractPaymentProviderKeyTool.d.ts.map +1 -1
  203. package/dist/tools/ExtractPaymentProviderKeyTool.js +160 -25
  204. package/dist/tools/ExtractPaymentProviderKeyTool.js.map +1 -1
  205. package/dist/tools/SolveMfaChallenge.d.ts.map +1 -1
  206. package/dist/tools/SolveMfaChallenge.js.map +1 -1
  207. package/dist/utils/BrowserUtils.d.ts +52 -0
  208. package/dist/utils/BrowserUtils.d.ts.map +1 -0
  209. package/dist/utils/BrowserUtils.js +340 -0
  210. package/dist/utils/BrowserUtils.js.map +1 -0
  211. package/dist/utils/PlaywrightUtils.d.ts +15 -11
  212. package/dist/utils/PlaywrightUtils.d.ts.map +1 -1
  213. package/dist/utils/PlaywrightUtils.js +110 -122
  214. package/dist/utils/PlaywrightUtils.js.map +1 -1
  215. package/package.json +1 -1
@@ -2,6 +2,28 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ExtractPaymentProviderKeyTool = void 0;
4
4
  const Tool_1 = require("./Tool");
5
+ /**
6
+ * This tool scans the current web page for publishable payment
7
+ * provider credentials the current page's inline `<script>` blocks.
8
+ *
9
+ * ### Supported providers
10
+ * | Provider | Regex | Example |
11
+ * |----------|-----------------------------------|----------------|
12
+ * | Stripe | `/pk_(test\|live)_[A-Za-z0-9]+/i` | `pk_test_51M…` |
13
+ * | PayPal | `/A[A-Za-z0-9-_]{75,}/i` | `AUGIH…` |
14
+ *
15
+ * On **success** the tool returns a JSON object containing any discovered keys and the
16
+ * URL of the page that was scanned. If **no keys** are found, `isSuccessful` is set to
17
+ * `false` and a short error string is provided.
18
+ *
19
+ * ```json
20
+ * {
21
+ * "stripe": ["pk_test_123", "pk_live_456"],
22
+ * "paypal": ["AUGIH…"],
23
+ * "checkoutPageUrl": "https://shop.example.com/checkout"
24
+ * }
25
+ * ```
26
+ */
5
27
  class ExtractPaymentProviderKeyTool extends Tool_1.Tool {
6
28
  constructor() {
7
29
  super(ExtractPaymentProviderKeyTool.NAME, 'Extract multiple publishable payment provider keys from the current page.', 'ExtractPaymentProviderToolCoreParameters', 'ExtractPaymentProviderToolGptParameters');
@@ -9,34 +31,22 @@ class ExtractPaymentProviderKeyTool extends Tool_1.Tool {
9
31
  async call(context, _parameters) {
10
32
  const page = context.page.current;
11
33
  // Retrieve all <script> tags' content, handling potential empty or null attributes
12
- const scriptContents = await page.evaluate(() => Array.from(document.querySelectorAll('script'))
13
- .map((script) => script.hasAttribute('src')
14
- ? ''
15
- : script.innerHTML || script.innerText || script.textContent)
16
- .join('\n'));
34
+ const scriptContents = (await ExtractPaymentProviderKeyTool.getAllScriptSources(page)).join('\n');
17
35
  // Define regex patterns for different payment provider keys
18
- const stripePattern = /(pk_(test|live)_[A-Za-z0-9]+)/i;
19
- const paypalPattern = /(?!(pk_(test|live)_))A[A-Za-z0-9-_]{75,}/i;
36
+ const stripePattern = /(pk_(test|live)_[A-Za-z0-9]+)/gi;
20
37
  const stripeKeys = new Set();
21
38
  const paypalKeys = new Set();
22
- // Search for Stripe keys
39
+ // Search for Stripe keys (these are well-defined and reliable)
23
40
  let match;
24
- const stripeMatches = scriptContents.matchAll(new RegExp(stripePattern, 'gi'));
41
+ const stripeMatches = scriptContents.matchAll(stripePattern);
25
42
  for (match of stripeMatches) {
26
43
  stripeKeys.add(match[1]);
27
44
  }
28
- // Search for PayPal client IDs
29
- const paypalMatches = scriptContents.matchAll(new RegExp(paypalPattern, 'gi'));
30
- for (match of paypalMatches) {
31
- const key = match[0];
32
- // Skip keys that match the Stripe key pattern
33
- if (key.match(stripePattern)) {
34
- continue;
35
- }
36
- // Verify that the key contains either "_" or "-" and is related to PayPal
37
- if ((key.includes('_') || key.includes('-')) &&
38
- this.verifyPayPalPresence(scriptContents, key)) {
39
- paypalKeys.add(key);
45
+ // Search for PayPal client IDs with improved filtering
46
+ const paypalCandidates = this.extractPayPalCandidates(scriptContents);
47
+ for (const candidate of paypalCandidates) {
48
+ if (this.isValidPayPalClientId(candidate, scriptContents)) {
49
+ paypalKeys.add(candidate);
40
50
  }
41
51
  }
42
52
  // If no keys were found, return failed result
@@ -68,12 +78,137 @@ class ExtractPaymentProviderKeyTool extends Tool_1.Tool {
68
78
  async callFromGpt(context, parameters) {
69
79
  return this.call(context, parameters);
70
80
  }
71
- verifyPayPalPresence(scriptContents, key) {
72
- const escapedKey = key.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
73
- const contextPattern = new RegExp(`PayPal[\\s\\S]*?${escapedKey}|${escapedKey}[\\s\\S]*?PayPal|PayPal[\\s\\S]*?client_id\\s*[:=]\\s*['"]${escapedKey}['"]`, 'i');
74
- return contextPattern.test(scriptContents);
81
+ /**
82
+ * Extract potential PayPal client ID candidates from script content
83
+ */
84
+ extractPayPalCandidates(scriptContents) {
85
+ // Look for strings that start with 'A' and are 75+ characters long
86
+ const candidatePattern = /\bA[A-Za-z0-9_-]{75,}\b/g;
87
+ const candidates = Array.from(scriptContents.matchAll(candidatePattern))
88
+ .map((match) => match[0])
89
+ .filter((candidate) => {
90
+ // Filter out obvious false positives
91
+ return !ExtractPaymentProviderKeyTool.EXCLUDED_PATTERNS.some((pattern) => pattern.test(candidate));
92
+ });
93
+ // Remove duplicates
94
+ return Array.from(new Set(candidates));
95
+ }
96
+ /**
97
+ * Enhanced validation for PayPal client IDs
98
+ */
99
+ isValidPayPalClientId(candidate, scriptContents) {
100
+ // Must match the expected pattern
101
+ if (!ExtractPaymentProviderKeyTool.PAYPAL_CLIENT_ID_PATTERN.test(candidate)) {
102
+ return false;
103
+ }
104
+ // Must not be a Stripe key
105
+ if (candidate.match(/pk_(test|live)_/i)) {
106
+ return false;
107
+ }
108
+ // Must have strong contextual evidence
109
+ const hasStrongContext = this.hasStrongPayPalContext(candidate, scriptContents);
110
+ // Additional validation: check if it appears in a structured context
111
+ const hasStructuredContext = this.hasStructuredPayPalContext(candidate, scriptContents);
112
+ return hasStrongContext && hasStructuredContext;
113
+ }
114
+ /**
115
+ * Check for strong PayPal contextual indicators near the candidate key
116
+ */
117
+ hasStrongPayPalContext(candidate, scriptContents) {
118
+ const escapedKey = candidate.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
119
+ // Look for PayPal indicators within a reasonable distance (500 characters)
120
+ for (const indicator of ExtractPaymentProviderKeyTool.PAYPAL_CONTEXT_INDICATORS) {
121
+ const contextPattern = new RegExp(`(?:${indicator}[\\s\\S]{0,500}${escapedKey}|${escapedKey}[\\s\\S]{0,500}${indicator})`, 'i');
122
+ if (contextPattern.test(scriptContents)) {
123
+ return true;
124
+ }
125
+ }
126
+ return false;
127
+ }
128
+ /**
129
+ * Check if the candidate appears in a structured context (assignments, objects, etc.)
130
+ */
131
+ hasStructuredPayPalContext(candidate, scriptContents) {
132
+ const escapedKey = candidate.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
133
+ // Look for patterns that suggest this is a configured value
134
+ const structuredPatterns = [
135
+ // Direct assignment patterns
136
+ new RegExp(`(?:client_?id|clientId)\\s*[:=]\\s*['"\`]${escapedKey}['"\`]`, 'i'),
137
+ // Object property patterns
138
+ new RegExp(`['"\`](?:client_?id|clientId)['"\`]\\s*:\\s*['"\`]${escapedKey}['"\`]`, 'i'),
139
+ // PayPal SDK configuration patterns
140
+ new RegExp(`paypal[\\s\\S]{0,200}['"\`]${escapedKey}['"\`]`, 'i'),
141
+ // Data attribute patterns
142
+ new RegExp(`data-[\\w-]*client[\\w-]*\\s*=\\s*['"\`]${escapedKey}['"\`]`, 'i'),
143
+ ];
144
+ return structuredPatterns.some((pattern) => pattern.test(scriptContents));
145
+ }
146
+ /**
147
+ * Collects text bodies for:
148
+ * - all inline <script> blocks
149
+ * - every <script src="…"> that is present in the DOM
150
+ */
151
+ static async getAllScriptSources(page) {
152
+ // 1 — inline scripts (fast, single browser-side pass)
153
+ const inlineTexts = await page.$$eval('script:not([src])', (els) => els.map((s) => s.textContent ?? '').filter(Boolean));
154
+ // 2 — external scripts
155
+ const srcUrls = await page.$$eval('script[src]', (els) => els.map((s) => s.src));
156
+ const contextRequest = page.context().request;
157
+ const externalTexts = await Promise.all(srcUrls.map(async (url) => {
158
+ try {
159
+ // Playwright's request API bypasses CORS / CSP and honours cache validators.
160
+ const resp = await contextRequest.get(url);
161
+ if (!resp.ok() ||
162
+ +(resp.headers()['content-length'] ?? 0) > 1000000) {
163
+ return ''; // skip huge or bad responses
164
+ }
165
+ // Trim very large bodies in memory-friendly way
166
+ const text = await resp.text();
167
+ return text.slice(0, 1000000); // hard cap at 1 MB
168
+ }
169
+ catch {
170
+ return '';
171
+ }
172
+ }));
173
+ return [...inlineTexts, ...externalTexts.filter(Boolean)];
75
174
  }
76
175
  }
77
176
  exports.ExtractPaymentProviderKeyTool = ExtractPaymentProviderKeyTool;
78
177
  ExtractPaymentProviderKeyTool.NAME = 'extractPaymentProviderKey';
178
+ // Common false positive patterns to exclude
179
+ ExtractPaymentProviderKeyTool.EXCLUDED_PATTERNS = [
180
+ /babel_runtime/i,
181
+ /webpack/i,
182
+ /__IMPORTED_MODULE/i,
183
+ /defineProperty/i,
184
+ /toConsumableArray/i,
185
+ /stringify/i,
186
+ /setTimeout/i,
187
+ /indexOf/i,
188
+ /concat/i,
189
+ /assign/i,
190
+ /isArray/i,
191
+ /forEach/i,
192
+ // Common base64/random data patterns
193
+ /^[A-Za-z0-9+/=]{76,}$/, // Pure base64
194
+ /^[A-Z]{10,}$/, // All caps strings
195
+ // Google/Meta tracking IDs that might be long
196
+ /^G-[A-Z0-9]{10}$/,
197
+ /^UA-\d+-\d+$/,
198
+ ];
199
+ // PayPal client IDs have specific characteristics
200
+ ExtractPaymentProviderKeyTool.PAYPAL_CLIENT_ID_PATTERN = /^A[A-Za-z0-9_-]{75,79}$/;
201
+ // Strong PayPal contextual indicators
202
+ ExtractPaymentProviderKeyTool.PAYPAL_CONTEXT_INDICATORS = [
203
+ 'paypal',
204
+ 'client_id',
205
+ 'client-id',
206
+ 'clientId',
207
+ 'PAYPAL',
208
+ 'CLIENT_ID',
209
+ 'paypal.com',
210
+ 'paypaljs',
211
+ 'paypal-js',
212
+ 'checkout.paypal.com',
213
+ ];
79
214
  //# sourceMappingURL=ExtractPaymentProviderKeyTool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExtractPaymentProviderKeyTool.js","sourceRoot":"","sources":["../../src/tools/ExtractPaymentProviderKeyTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExtractPaymentProviderKeyTool.js","sourceRoot":"","sources":["../../src/tools/ExtractPaymentProviderKeyTool.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SolveMfaChallenge.d.ts","sourceRoot":"","sources":["../../src/tools/SolveMfaChallenge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,uBAAuB,EACxB,MAAM,yBAAyB,CAAC;AAOjC,MAAM,WAAW,mCAAmC;IAClD;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,4CACf,SAAQ,uBAAuB,EAC7B,mCAAmC;CAAG;AAE1C,MAAM,WAAW,8CACf,SAAQ,yBAAyB,EAC/B,mCAAmC;CAAG;AAE1C,qBAAa,qBAAsB,SAAQ,qBAAqB,CAC9D,mCAAmC,EACnC,4CAA4C,EAC5C,8CAA8C,CAC/C;IACC,gBAAuB,IAAI,uBAAuB;IAClD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAK;IACxC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAS;;IAYzC,MAAM,CACV,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,mCAAmC,EAC/C,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,MAAM,CAAC;YAoDJ,oBAAoB;YAyCpB,mBAAmB;IA2DjC,OAAO,CAAC,WAAW;YA6BL,qBAAqB;IAwCnC,OAAO,CAAC,eAAe;CAKxB"}
1
+ {"version":3,"file":"SolveMfaChallenge.d.ts","sourceRoot":"","sources":["../../src/tools/SolveMfaChallenge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,uBAAuB,EACxB,MAAM,yBAAyB,CAAC;AAOjC,MAAM,WAAW,mCAAmC;IAClD;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,4CACf,SAAQ,uBAAuB,EAC7B,mCAAmC;CAAG;AAE1C,MAAM,WAAW,8CACf,SAAQ,yBAAyB,EAC/B,mCAAmC;CAAG;AAE1C,qBAAa,qBAAsB,SAAQ,qBAAqB,CAC9D,mCAAmC,EACnC,4CAA4C,EAC5C,8CAA8C,CAC/C;IACC,gBAAuB,IAAI,uBAAuB;IAClD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAK;IACxC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAS;;IAYzC,MAAM,CACV,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,mCAAmC,EAC/C,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,MAAM,CAAC;YAoDJ,oBAAoB;YAyCpB,mBAAmB;IAyDjC,OAAO,CAAC,WAAW;YA6BL,qBAAqB;IAwCnC,OAAO,CAAC,eAAe;CAKxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"SolveMfaChallenge.js","sourceRoot":"","sources":["../../src/tools/SolveMfaChallenge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SolveMfaChallenge.js","sourceRoot":"","sources":["../../src/tools/SolveMfaChallenge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ import { BrowserContext } from 'playwright';
2
+ import { BrowserDevice } from '../models/BrowserDevice';
3
+ import { BrowserStorageState } from '../models/BrowserStorageState';
4
+ import { BrowserConfig } from '../models/BrowserConfig';
5
+ export declare class BrowserUtils {
6
+ private static readonly DEFAULT_DEVICE_NAME;
7
+ /**
8
+ * Loads all the pre-canned browser device configurations from the local
9
+ * filesystem.
10
+ *
11
+ * The returned map keys the devices by their name (ex: 'Desktop Firefox').
12
+ *
13
+ * See `assets/devices.json` for details.
14
+ */
15
+ static getSupportedDevices(): Map<string, BrowserDevice>;
16
+ static create(browserConfig: BrowserConfig, outputDir: string, storageState?: BrowserStorageState): Promise<BrowserContext>;
17
+ /**
18
+ * Gets the browser storage state including cookies, localStorage, and sessionStorage.
19
+ *
20
+ * @param browserContext The browser context to extract storage state from.
21
+ * @returns A promise that resolves to the complete browser storage state.
22
+ */
23
+ static getBrowserStorageState(browserContext: BrowserContext): Promise<BrowserStorageState>;
24
+ /**
25
+ * Connects to an existing Chromium browser using the Chrome DevTools Protocol (CDP) at the given
26
+ * URL.
27
+ */
28
+ private static forRemoteBrowser;
29
+ /**
30
+ * If {@link storageState} is present, must be an object conforming to what is returned by
31
+ * {@link BrowserContext.storageState()}.
32
+ */
33
+ private static forDevice;
34
+ /**
35
+ * Creates a BrowserBase session. Using this method requires the
36
+ * BROWSERBASE_API_KEY environment variable to be set.
37
+ *
38
+ * The returned browserBaseData object conforms to the response of the session
39
+ * creation API endpoint. See...
40
+ * https://docs.browserbase.com/reference/api/create-a-session#response-id
41
+ */
42
+ private static forBrowserBase;
43
+ /**
44
+ * Establishes a BrowserBase session. The returned structure matches the
45
+ * response structore from the BrowserBase session API. See...
46
+ * https://docs.browserbase.com/reference/api/create-a-session#response-id
47
+ */
48
+ private static establishBrowserBaseSession;
49
+ private static attachSessionStorageToBrowserContext;
50
+ private static patchClose;
51
+ }
52
+ //# sourceMappingURL=BrowserUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BrowserUtils.d.ts","sourceRoot":"","sources":["../../src/utils/BrowserUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EAGf,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EAA0B,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAIhF,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAsB;IACjE;;;;;;;OAOG;WACW,mBAAmB,IAAI,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC;WAY3C,MAAM,CACxB,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,mBAAmB,GACjC,OAAO,CAAC,cAAc,CAAC;IA8E1B;;;;;OAKG;WACiB,sBAAsB,CACxC,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,mBAAmB,CAAC;IA6E/B;;;OAGG;mBACkB,gBAAgB;IAiCrC;;;OAGG;mBACkB,SAAS;IAiF9B;;;;;;;OAOG;mBACkB,cAAc;IA2BnC;;;;OAIG;mBACkB,2BAA2B;mBAkC3B,oCAAoC;IA2CzD,OAAO,CAAC,MAAM,CAAC,UAAU;CAgB1B"}