donobu 2.26.0 → 2.27.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 (113) hide show
  1. package/dist/apis/SpecialFlowsApi.d.ts.map +1 -1
  2. package/dist/apis/SpecialFlowsApi.js +60 -31
  3. package/dist/apis/SpecialFlowsApi.js.map +1 -1
  4. package/dist/apis/ToolsApi.d.ts.map +1 -1
  5. package/dist/apis/ToolsApi.js +2 -1
  6. package/dist/apis/ToolsApi.js.map +1 -1
  7. package/dist/assets/generated/version +1 -1
  8. package/dist/esm/apis/SpecialFlowsApi.d.ts.map +1 -1
  9. package/dist/esm/apis/SpecialFlowsApi.js +60 -31
  10. package/dist/esm/apis/SpecialFlowsApi.js.map +1 -1
  11. package/dist/esm/apis/ToolsApi.d.ts.map +1 -1
  12. package/dist/esm/apis/ToolsApi.js +2 -1
  13. package/dist/esm/apis/ToolsApi.js.map +1 -1
  14. package/dist/esm/assets/generated/version +1 -1
  15. package/dist/esm/lib/testExtension.js +1 -1
  16. package/dist/esm/lib/testExtension.js.map +1 -1
  17. package/dist/esm/lib/utils/selfHealing.d.ts.map +1 -1
  18. package/dist/esm/lib/utils/selfHealing.js +44 -45
  19. package/dist/esm/lib/utils/selfHealing.js.map +1 -1
  20. package/dist/esm/main.d.ts +2 -0
  21. package/dist/esm/main.d.ts.map +1 -1
  22. package/dist/esm/main.js +2 -0
  23. package/dist/esm/main.js.map +1 -1
  24. package/dist/esm/managers/DonobuFlowsManager.d.ts.map +1 -1
  25. package/dist/esm/managers/DonobuFlowsManager.js +2 -1
  26. package/dist/esm/managers/DonobuFlowsManager.js.map +1 -1
  27. package/dist/esm/managers/PageInspector.d.ts.map +1 -1
  28. package/dist/esm/managers/PageInspector.js +4 -2
  29. package/dist/esm/managers/PageInspector.js.map +1 -1
  30. package/dist/esm/managers/PluginLoader.d.ts.map +1 -1
  31. package/dist/esm/managers/PluginLoader.js +2 -1
  32. package/dist/esm/managers/PluginLoader.js.map +1 -1
  33. package/dist/esm/managers/ToolManager.d.ts +6 -2
  34. package/dist/esm/managers/ToolManager.d.ts.map +1 -1
  35. package/dist/esm/managers/ToolManager.js +90 -76
  36. package/dist/esm/managers/ToolManager.js.map +1 -1
  37. package/dist/esm/utils/PlaywrightUtils.d.ts.map +1 -1
  38. package/dist/esm/utils/PlaywrightUtils.js +42 -22
  39. package/dist/esm/utils/PlaywrightUtils.js.map +1 -1
  40. package/dist/lib/testExtension.js +1 -1
  41. package/dist/lib/testExtension.js.map +1 -1
  42. package/dist/lib/utils/selfHealing.d.ts.map +1 -1
  43. package/dist/lib/utils/selfHealing.js +44 -45
  44. package/dist/lib/utils/selfHealing.js.map +1 -1
  45. package/dist/main.d.ts +2 -0
  46. package/dist/main.d.ts.map +1 -1
  47. package/dist/main.js +2 -0
  48. package/dist/main.js.map +1 -1
  49. package/dist/managers/DonobuFlowsManager.d.ts.map +1 -1
  50. package/dist/managers/DonobuFlowsManager.js +2 -1
  51. package/dist/managers/DonobuFlowsManager.js.map +1 -1
  52. package/dist/managers/PageInspector.d.ts.map +1 -1
  53. package/dist/managers/PageInspector.js +4 -2
  54. package/dist/managers/PageInspector.js.map +1 -1
  55. package/dist/managers/PluginLoader.js +2 -2
  56. package/dist/managers/PluginLoader.js.map +1 -1
  57. package/dist/managers/ToolManager.d.ts +6 -2
  58. package/dist/managers/ToolManager.d.ts.map +1 -1
  59. package/dist/managers/ToolManager.js +90 -76
  60. package/dist/managers/ToolManager.js.map +1 -1
  61. package/dist/models/FlowMetadata.d.ts.map +1 -1
  62. package/dist/utils/PlaywrightUtils.d.ts.map +1 -1
  63. package/dist/utils/PlaywrightUtils.js +42 -22
  64. package/dist/utils/PlaywrightUtils.js.map +1 -1
  65. package/package.json +3 -2
  66. package/dist/esm/tools/AggregateExtractedStreetviewDataTool.d.ts +0 -22
  67. package/dist/esm/tools/AggregateExtractedStreetviewDataTool.d.ts.map +0 -1
  68. package/dist/esm/tools/AggregateExtractedStreetviewDataTool.js +0 -61
  69. package/dist/esm/tools/AggregateExtractedStreetviewDataTool.js.map +0 -1
  70. package/dist/esm/tools/ExtractGoogleStreetviewEntityDataTool.d.ts +0 -62
  71. package/dist/esm/tools/ExtractGoogleStreetviewEntityDataTool.d.ts.map +0 -1
  72. package/dist/esm/tools/ExtractGoogleStreetviewEntityDataTool.js +0 -164
  73. package/dist/esm/tools/ExtractGoogleStreetviewEntityDataTool.js.map +0 -1
  74. package/dist/esm/tools/ExtractPaymentProviderKeyTool.d.ts +0 -81
  75. package/dist/esm/tools/ExtractPaymentProviderKeyTool.d.ts.map +0 -1
  76. package/dist/esm/tools/ExtractPaymentProviderKeyTool.js +0 -316
  77. package/dist/esm/tools/ExtractPaymentProviderKeyTool.js.map +0 -1
  78. package/dist/esm/tools/ExtractPublicFacebookEntityDataTool.d.ts +0 -39
  79. package/dist/esm/tools/ExtractPublicFacebookEntityDataTool.d.ts.map +0 -1
  80. package/dist/esm/tools/ExtractPublicFacebookEntityDataTool.js +0 -228
  81. package/dist/esm/tools/ExtractPublicFacebookEntityDataTool.js.map +0 -1
  82. package/dist/esm/tools/GoToGoogleMapsStreetViewTool.d.ts +0 -47
  83. package/dist/esm/tools/GoToGoogleMapsStreetViewTool.d.ts.map +0 -1
  84. package/dist/esm/tools/GoToGoogleMapsStreetViewTool.js +0 -126
  85. package/dist/esm/tools/GoToGoogleMapsStreetViewTool.js.map +0 -1
  86. package/dist/esm/tools/NavigateWithinStreetView.d.ts +0 -54
  87. package/dist/esm/tools/NavigateWithinStreetView.d.ts.map +0 -1
  88. package/dist/esm/tools/NavigateWithinStreetView.js +0 -119
  89. package/dist/esm/tools/NavigateWithinStreetView.js.map +0 -1
  90. package/dist/tools/AggregateExtractedStreetviewDataTool.d.ts +0 -22
  91. package/dist/tools/AggregateExtractedStreetviewDataTool.d.ts.map +0 -1
  92. package/dist/tools/AggregateExtractedStreetviewDataTool.js +0 -61
  93. package/dist/tools/AggregateExtractedStreetviewDataTool.js.map +0 -1
  94. package/dist/tools/ExtractGoogleStreetviewEntityDataTool.d.ts +0 -62
  95. package/dist/tools/ExtractGoogleStreetviewEntityDataTool.d.ts.map +0 -1
  96. package/dist/tools/ExtractGoogleStreetviewEntityDataTool.js +0 -164
  97. package/dist/tools/ExtractGoogleStreetviewEntityDataTool.js.map +0 -1
  98. package/dist/tools/ExtractPaymentProviderKeyTool.d.ts +0 -81
  99. package/dist/tools/ExtractPaymentProviderKeyTool.d.ts.map +0 -1
  100. package/dist/tools/ExtractPaymentProviderKeyTool.js +0 -316
  101. package/dist/tools/ExtractPaymentProviderKeyTool.js.map +0 -1
  102. package/dist/tools/ExtractPublicFacebookEntityDataTool.d.ts +0 -39
  103. package/dist/tools/ExtractPublicFacebookEntityDataTool.d.ts.map +0 -1
  104. package/dist/tools/ExtractPublicFacebookEntityDataTool.js +0 -228
  105. package/dist/tools/ExtractPublicFacebookEntityDataTool.js.map +0 -1
  106. package/dist/tools/GoToGoogleMapsStreetViewTool.d.ts +0 -47
  107. package/dist/tools/GoToGoogleMapsStreetViewTool.d.ts.map +0 -1
  108. package/dist/tools/GoToGoogleMapsStreetViewTool.js +0 -126
  109. package/dist/tools/GoToGoogleMapsStreetViewTool.js.map +0 -1
  110. package/dist/tools/NavigateWithinStreetView.d.ts +0 -54
  111. package/dist/tools/NavigateWithinStreetView.d.ts.map +0 -1
  112. package/dist/tools/NavigateWithinStreetView.js +0 -119
  113. package/dist/tools/NavigateWithinStreetView.js.map +0 -1
@@ -1,316 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ExtractPaymentProviderKeyTool = void 0;
4
- const Tool_1 = require("./Tool");
5
- const ToolSchema_1 = require("../models/ToolSchema");
6
- /**
7
- * This tool scans the current web page for publishable payment
8
- * provider credentials and merchant IDs from the current page's inline `<script>` blocks.
9
- *
10
- * ### Supported providers
11
- * | Provider | Type | Regex | Example |
12
- * |----------|-------------|------------------------------------------|----------------------|
13
- * | Stripe | Publishable | `/pk_(test\|live)_[A-Za-z0-9]+/i` | `pk_test_51M…` |
14
- * | Stripe | Merchant ID | `/acct_[A-Za-z0-9]{8,}/i` | `acct_1AB23CD4` |
15
- * | PayPal | Client ID | `/A[A-Za-z0-9-_]{75,}/i` | `AUGIH…` |
16
- * | PayPal | Merchant ID | `merchant[-_]?id=([A-Z0-9]{13,17})` | `2WVSVREX9TL9J` |
17
- *
18
- * On **success** the tool returns a JSON object containing any discovered keys and the
19
- * URL of the page that was scanned. If **no keys** are found, `isSuccessful` is set to
20
- * `false` and a short error string is provided.
21
- *
22
- * ```json
23
- * {
24
- * "stripe": ["pk_test_123"],
25
- * "paypal": ["AUGIH…"],
26
- * "stripeMerchant": ["acct_1AB23CD4"],
27
- * "paypalMerchant": ["2WVSVREX9TL9J"],
28
- * "checkoutPageUrl": "https://shop.example.com/checkout"
29
- * }
30
- * ```
31
- */
32
- class ExtractPaymentProviderKeyTool extends Tool_1.Tool {
33
- constructor() {
34
- super(ExtractPaymentProviderKeyTool.NAME, 'Extract multiple publishable payment provider keys and merchant IDs from the current page.', ToolSchema_1.NoArgsSchema, ToolSchema_1.BaseGptArgsSchema);
35
- }
36
- async call(context, _parameters) {
37
- const page = context.page.current;
38
- // Retrieve all <script> tags' content, handling potential empty or null attributes
39
- const scriptContents = (await ExtractPaymentProviderKeyTool.getAllScriptSources(page)).join('\n');
40
- // Define regex patterns for different payment provider keys
41
- const stripePattern = /(pk_(test|live)_[A-Za-z0-9]+)/gi;
42
- const stripeMerchantPattern = /(acct_[A-Za-z0-9]{8,})/gi;
43
- const paypalMerchantPattern = /merchant[-_]?id\s*=\s*([A-Z0-9]{13,17})/gi;
44
- const stripeKeys = new Set();
45
- const paypalKeys = new Set();
46
- const stripeMerchantIds = new Set();
47
- const paypalMerchantIds = new Set();
48
- // Search for Stripe keys (these are well-defined and reliable)
49
- const stripeMatches = scriptContents.matchAll(stripePattern);
50
- for (const match of stripeMatches) {
51
- stripeKeys.add(match[1]);
52
- }
53
- // Search for Stripe merchant IDs
54
- const stripeMerchantMatches = scriptContents.matchAll(stripeMerchantPattern);
55
- for (const match of stripeMerchantMatches) {
56
- if (this.isValidStripeMerchantId(match[1], scriptContents)) {
57
- stripeMerchantIds.add(match[1]);
58
- }
59
- }
60
- // Search for PayPal client IDs with improved filtering
61
- const paypalCandidates = this.extractPayPalCandidates(scriptContents);
62
- for (const candidate of paypalCandidates) {
63
- if (this.isValidPayPalClientId(candidate, scriptContents)) {
64
- paypalKeys.add(candidate);
65
- }
66
- }
67
- // Search for PayPal merchant IDs
68
- const paypalMerchantMatches = scriptContents.matchAll(paypalMerchantPattern);
69
- for (const match of paypalMerchantMatches) {
70
- if (this.isValidPayPalMerchantId(match[1], scriptContents)) {
71
- paypalMerchantIds.add(match[1]);
72
- }
73
- }
74
- // If no keys were found, return failed result
75
- if (stripeKeys.size === 0 &&
76
- paypalKeys.size === 0 &&
77
- stripeMerchantIds.size === 0 &&
78
- paypalMerchantIds.size === 0) {
79
- const error = 'No publishable keys or merchant IDs found on the current page.';
80
- return {
81
- isSuccessful: false,
82
- forLlm: error,
83
- metadata: {
84
- error: error,
85
- },
86
- };
87
- }
88
- else {
89
- // Signal to end the flow
90
- context.metadata.nextState = 'SUCCESS';
91
- const result = {
92
- stripe: Array.from(stripeKeys),
93
- paypal: Array.from(paypalKeys),
94
- stripeMerchant: Array.from(stripeMerchantIds),
95
- paypalMerchant: Array.from(paypalMerchantIds),
96
- checkoutPageUrl: page.url(),
97
- };
98
- return {
99
- isSuccessful: true,
100
- forLlm: JSON.stringify(result, null, 2),
101
- metadata: result,
102
- };
103
- }
104
- }
105
- async callFromGpt(context, parameters) {
106
- return this.call(context, parameters);
107
- }
108
- /**
109
- * Extract potential PayPal client ID candidates from script content
110
- */
111
- extractPayPalCandidates(scriptContents) {
112
- // Look for strings that start with 'A' and are 75+ characters long
113
- const candidatePattern = /\bA[A-Za-z0-9_-]{75,}\b/g;
114
- const candidates = Array.from(scriptContents.matchAll(candidatePattern))
115
- .map((match) => match[0])
116
- .filter((candidate) => {
117
- // Filter out obvious false positives
118
- return !ExtractPaymentProviderKeyTool.EXCLUDED_PATTERNS.some((pattern) => pattern.test(candidate));
119
- });
120
- // Remove duplicates
121
- return Array.from(new Set(candidates));
122
- }
123
- /**
124
- * Enhanced validation for PayPal client IDs
125
- */
126
- isValidPayPalClientId(candidate, scriptContents) {
127
- // Must match the expected pattern
128
- if (!ExtractPaymentProviderKeyTool.PAYPAL_CLIENT_ID_PATTERN.test(candidate)) {
129
- return false;
130
- }
131
- // Must not be a Stripe key
132
- if (candidate.match(/pk_(test|live)_/i)) {
133
- return false;
134
- }
135
- // Must have strong contextual evidence
136
- const hasStrongContext = this.hasStrongPayPalContext(candidate, scriptContents);
137
- // Additional validation: check if it appears in a structured context
138
- const hasStructuredContext = this.hasStructuredPayPalContext(candidate, scriptContents);
139
- return hasStrongContext && hasStructuredContext;
140
- }
141
- /**
142
- * Validate Stripe merchant IDs
143
- */
144
- isValidStripeMerchantId(candidate, scriptContents) {
145
- // Must start with 'acct_' and be at least 8 characters after prefix
146
- if (!/^acct_[A-Za-z0-9]{8,}$/i.test(candidate)) {
147
- return false;
148
- }
149
- // Check for Stripe contextual indicators
150
- return this.hasStripeContext(candidate, scriptContents);
151
- }
152
- /**
153
- * Validate PayPal merchant IDs
154
- */
155
- isValidPayPalMerchantId(candidate, scriptContents) {
156
- // Must be 13-17 characters long and contain only uppercase letters and numbers
157
- if (!/^[A-Z0-9]{13,17}$/.test(candidate)) {
158
- return false;
159
- }
160
- // Check for PayPal merchant contextual indicators
161
- return this.hasPayPalMerchantContext(candidate, scriptContents);
162
- }
163
- /**
164
- * Check for strong PayPal contextual indicators near the candidate key
165
- */
166
- hasStrongPayPalContext(candidate, scriptContents) {
167
- const escapedKey = candidate.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
168
- // Look for PayPal indicators within a reasonable distance (500 characters)
169
- for (const indicator of ExtractPaymentProviderKeyTool.PAYPAL_CONTEXT_INDICATORS) {
170
- const contextPattern = new RegExp(`(?:${indicator}[\\s\\S]{0,500}${escapedKey}|${escapedKey}[\\s\\S]{0,500}${indicator})`, 'i');
171
- if (contextPattern.test(scriptContents)) {
172
- return true;
173
- }
174
- }
175
- return false;
176
- }
177
- /**
178
- * Check for Stripe contextual indicators near the merchant ID
179
- */
180
- hasStripeContext(candidate, scriptContents) {
181
- const escapedKey = candidate.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
182
- // Look for Stripe indicators within a reasonable distance (500 characters)
183
- for (const indicator of ExtractPaymentProviderKeyTool.STRIPE_MERCHANT_CONTEXT_INDICATORS) {
184
- const contextPattern = new RegExp(`(?:${indicator}[\\s\\S]{0,500}${escapedKey}|${escapedKey}[\\s\\S]{0,500}${indicator})`, 'i');
185
- if (contextPattern.test(scriptContents)) {
186
- return true;
187
- }
188
- }
189
- return false;
190
- }
191
- /**
192
- * Check for PayPal merchant contextual indicators near the merchant ID
193
- */
194
- hasPayPalMerchantContext(candidate, scriptContents) {
195
- const escapedKey = candidate.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
196
- // Look for PayPal merchant indicators within a reasonable distance (500 characters)
197
- for (const indicator of ExtractPaymentProviderKeyTool.PAYPAL_MERCHANT_CONTEXT_INDICATORS) {
198
- const contextPattern = new RegExp(`(?:${indicator}[\\s\\S]{0,500}${escapedKey}|${escapedKey}[\\s\\S]{0,500}${indicator})`, 'i');
199
- if (contextPattern.test(scriptContents)) {
200
- return true;
201
- }
202
- }
203
- return false;
204
- }
205
- /**
206
- * Check if the candidate appears in a structured context (assignments, objects, etc.)
207
- */
208
- hasStructuredPayPalContext(candidate, scriptContents) {
209
- const escapedKey = candidate.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
210
- // Look for patterns that suggest this is a configured value
211
- const structuredPatterns = [
212
- // Direct assignment patterns
213
- new RegExp(`(?:client_?id|clientId)\\s*[:=]\\s*['"\`]${escapedKey}['"\`]`, 'i'),
214
- // Object property patterns
215
- new RegExp(`['"\`](?:client_?id|clientId)['"\`]\\s*:\\s*['"\`]${escapedKey}['"\`]`, 'i'),
216
- // PayPal SDK configuration patterns
217
- new RegExp(`paypal[\\s\\S]{0,200}['"\`]${escapedKey}['"\`]`, 'i'),
218
- // Data attribute patterns
219
- new RegExp(`data-[\\w-]*client[\\w-]*\\s*=\\s*['"\`]${escapedKey}['"\`]`, 'i'),
220
- ];
221
- return structuredPatterns.some((pattern) => pattern.test(scriptContents));
222
- }
223
- /**
224
- * Collects text bodies for:
225
- * - all inline <script> blocks
226
- * - every <script src="…"> that is present in the DOM
227
- */
228
- static async getAllScriptSources(page) {
229
- // 1 — inline scripts (fast, single browser-side pass)
230
- const inlineTexts = await page.$$eval('script:not([src])', (els) => els.map((s) => s.textContent ?? '').filter(Boolean));
231
- // 2 — external scripts
232
- const srcUrls = await page.$$eval('script[src]', (els) => els.map((s) => s.src));
233
- const contextRequest = page.context().request;
234
- const externalTexts = await Promise.all(srcUrls.map(async (url) => {
235
- try {
236
- // Playwright's request API bypasses CORS / CSP and honours cache validators.
237
- const resp = await contextRequest.get(url);
238
- if (!resp.ok() ||
239
- +(resp.headers()['content-length'] ?? 0) > 1000000) {
240
- return ''; // skip huge or bad responses
241
- }
242
- // Trim very large bodies in memory-friendly way
243
- const text = await resp.text();
244
- return text.slice(0, 1000000); // hard cap at 1 MB
245
- }
246
- catch {
247
- return '';
248
- }
249
- }));
250
- return [...inlineTexts, ...externalTexts.filter(Boolean)];
251
- }
252
- }
253
- exports.ExtractPaymentProviderKeyTool = ExtractPaymentProviderKeyTool;
254
- ExtractPaymentProviderKeyTool.NAME = 'extractPaymentProviderKey';
255
- // Common false positive patterns to exclude
256
- ExtractPaymentProviderKeyTool.EXCLUDED_PATTERNS = [
257
- /babel_runtime/i,
258
- /webpack/i,
259
- /__IMPORTED_MODULE/i,
260
- /defineProperty/i,
261
- /toConsumableArray/i,
262
- /stringify/i,
263
- /setTimeout/i,
264
- /indexOf/i,
265
- /concat/i,
266
- /assign/i,
267
- /isArray/i,
268
- /forEach/i,
269
- // Common base64/random data patterns
270
- /^[A-Za-z0-9+/=]{76,}$/, // Pure base64
271
- /^[A-Z]{10,}$/, // All caps strings
272
- // Google/Meta tracking IDs that might be long
273
- /^G-[A-Z0-9]{10}$/,
274
- /^UA-\d+-\d+$/,
275
- ];
276
- // PayPal client IDs have specific characteristics
277
- ExtractPaymentProviderKeyTool.PAYPAL_CLIENT_ID_PATTERN = /^A[A-Za-z0-9_-]{75,79}$/;
278
- // Strong PayPal contextual indicators
279
- ExtractPaymentProviderKeyTool.PAYPAL_CONTEXT_INDICATORS = [
280
- 'paypal',
281
- 'client_id',
282
- 'client-id',
283
- 'clientId',
284
- 'PAYPAL',
285
- 'CLIENT_ID',
286
- 'paypal.com',
287
- 'paypaljs',
288
- 'paypal-js',
289
- 'checkout.paypal.com',
290
- ];
291
- // PayPal merchant ID contextual indicators
292
- ExtractPaymentProviderKeyTool.PAYPAL_MERCHANT_CONTEXT_INDICATORS = [
293
- 'merchant',
294
- 'seller',
295
- 'business',
296
- 'paypal',
297
- 'PAYPAL',
298
- 'merchant_id',
299
- 'merchant-id',
300
- 'merchantId',
301
- 'sellerId',
302
- 'businessId',
303
- ];
304
- // Stripe merchant ID contextual indicators
305
- ExtractPaymentProviderKeyTool.STRIPE_MERCHANT_CONTEXT_INDICATORS = [
306
- 'stripe',
307
- 'account',
308
- 'merchant',
309
- 'acct_',
310
- 'STRIPE',
311
- 'ACCOUNT',
312
- 'connect',
313
- 'platform',
314
- 'destination',
315
- ];
316
- //# sourceMappingURL=ExtractPaymentProviderKeyTool.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExtractPaymentProviderKeyTool.js","sourceRoot":"","sources":["../../../src/tools/ExtractPaymentProviderKeyTool.ts"],"names":[],"mappings":"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"}
@@ -1,39 +0,0 @@
1
- import { Tool } from './Tool';
2
- import { ToolCallContext } from '../models/ToolCallContext';
3
- import { ToolCallResult } from '../models/ToolCallResult';
4
- import { z } from 'zod';
5
- export declare const ExtractPublicFacebookEntityDataCoreSchema: z.ZodObject<{
6
- facebookEntityName: z.ZodOptional<z.ZodString>;
7
- facebookEntityUrl: z.ZodOptional<z.ZodString>;
8
- }, "strip", z.ZodTypeAny, {
9
- facebookEntityName?: string | undefined;
10
- facebookEntityUrl?: string | undefined;
11
- }, {
12
- facebookEntityName?: string | undefined;
13
- facebookEntityUrl?: string | undefined;
14
- }>;
15
- export declare const ExtractPublicFacebookEntityDataGptSchema: z.ZodObject<{
16
- rationale: z.ZodString;
17
- } & {
18
- facebookEntityName: z.ZodOptional<z.ZodString>;
19
- facebookEntityUrl: z.ZodOptional<z.ZodString>;
20
- }, "strip", z.ZodTypeAny, {
21
- rationale: string;
22
- facebookEntityName?: string | undefined;
23
- facebookEntityUrl?: string | undefined;
24
- }, {
25
- rationale: string;
26
- facebookEntityName?: string | undefined;
27
- facebookEntityUrl?: string | undefined;
28
- }>;
29
- export declare class ExtractPublicFacebookEntityDataTool extends Tool<typeof ExtractPublicFacebookEntityDataCoreSchema, typeof ExtractPublicFacebookEntityDataGptSchema> {
30
- static readonly NAME = "extractPublicFacebookEntityData";
31
- constructor();
32
- call(context: ToolCallContext, parameters: z.infer<typeof ExtractPublicFacebookEntityDataCoreSchema>): Promise<ToolCallResult>;
33
- callFromGpt(context: ToolCallContext, parameters: z.infer<typeof ExtractPublicFacebookEntityDataGptSchema>): Promise<ToolCallResult>;
34
- private getInitialFacebookPageUrl;
35
- private getAboutProfileTransparencyPageUrl;
36
- private getAboutContactAndBasicInfoPageUrl;
37
- private closeModal;
38
- }
39
- //# sourceMappingURL=ExtractPublicFacebookEntityDataTool.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExtractPublicFacebookEntityDataTool.d.ts","sourceRoot":"","sources":["../../../src/tools/ExtractPublicFacebookEntityDataTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAS1D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,yCAAyC;;;;;;;;;EAapD,CAAC;AAEH,eAAO,MAAM,wCAAwC;;;;;;;;;;;;;EAEpD,CAAC;AAwFF,qBAAa,mCAAoC,SAAQ,IAAI,CAC3D,OAAO,yCAAyC,EAChD,OAAO,wCAAwC,CAChD;IACC,gBAAuB,IAAI,qCAAqC;;IAY1C,IAAI,CACxB,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,yCAAyC,CAAC,GACpE,OAAO,CAAC,cAAc,CAAC;IAsHJ,WAAW,CAC/B,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,wCAAwC,CAAC,GACnE,OAAO,CAAC,cAAc,CAAC;IAI1B,OAAO,CAAC,yBAAyB;IAajC,OAAO,CAAC,kCAAkC;IAa1C,OAAO,CAAC,kCAAkC;YAa5B,UAAU;CAYzB"}
@@ -1,228 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ExtractPublicFacebookEntityDataTool = exports.ExtractPublicFacebookEntityDataGptSchema = exports.ExtractPublicFacebookEntityDataCoreSchema = void 0;
4
- const Tool_1 = require("./Tool");
5
- const DonobuException_1 = require("../exceptions/DonobuException");
6
- const InvalidParamValueException_1 = require("../exceptions/InvalidParamValueException");
7
- const MiscUtils_1 = require("../utils/MiscUtils");
8
- const JsonUtils_1 = require("../utils/JsonUtils");
9
- const Logger_1 = require("../utils/Logger");
10
- const ToolSchema_1 = require("../models/ToolSchema");
11
- const zod_1 = require("zod");
12
- exports.ExtractPublicFacebookEntityDataCoreSchema = zod_1.z.object({
13
- facebookEntityName: zod_1.z
14
- .string()
15
- .optional()
16
- .describe("The name of the entity's public Facebook page used in its URL. For example, passing a value of 'TheCocaColaCo' would cause Donobu to inspect https://www.facebook.com/TheCocaColaCo."),
17
- facebookEntityUrl: zod_1.z
18
- .string()
19
- .optional()
20
- .describe("The URL of the entity's public Facebook page. For example, https://www.facebook.com/TheCocaColaCo."),
21
- });
22
- exports.ExtractPublicFacebookEntityDataGptSchema = ToolSchema_1.BaseGptArgsSchema.merge(exports.ExtractPublicFacebookEntityDataCoreSchema);
23
- const FACEBOOK_ENTITY_PAGE_INFO_SCHEMA = zod_1.z.object({
24
- pageId: zod_1.z.string().nullable().describe("The entity's Facebook page ID."),
25
- companyLegalName: zod_1.z
26
- .string()
27
- .nullable()
28
- .describe('The legal name of the entity AS FOUND ON THE GIVEN FACEBOOK WEBPAGE TEXT! This is not the marketing name! ' +
29
- 'The legal name is in the section of the Facebook website that says "<some-legal-entity-name> is responsible for this Page." ' +
30
- 'IMPORTANT: If this string pattern is not found, then the `legalEntityName` must be set to null.'),
31
- businessName: zod_1.z
32
- .string()
33
- .nullable()
34
- .describe("The entity's business name. This is not necessarily the legal name of the entity. This could be the name used in marketing, for example."),
35
- topCountryOfPageManagers: zod_1.z
36
- .string()
37
- .nullable()
38
- .describe("The country with the most number of page managers for this entity's Facebook page."),
39
- managerIsVerified: zod_1.z
40
- .boolean()
41
- .nullable()
42
- .describe('The person that manages the Facebook page for this entity has been verified.'),
43
- companyIsVerified: zod_1.z
44
- .boolean()
45
- .nullable()
46
- .describe('The company itself has a verified Facebook status.'),
47
- creationDate: zod_1.z
48
- .string()
49
- .nullable()
50
- .describe('Creation date of the page in the format yyyy-mm-dd.'),
51
- isRunningAds: zod_1.z
52
- .boolean()
53
- .nullable()
54
- .describe('Is set to true if the entity reports that it is running ads. Otherwise false.'),
55
- physicalAddress: zod_1.z
56
- .string()
57
- .nullable()
58
- .describe("The entity's physical address."),
59
- categories: zod_1.z.array(zod_1.z.string()).describe("The entity's categories."),
60
- numberOfReviews: zod_1.z
61
- .number()
62
- .int()
63
- .nullable()
64
- .describe('The number of reviews for the entity.'),
65
- percentRecommended: zod_1.z
66
- .number()
67
- .int()
68
- .nullable()
69
- .describe('The percent recommended based on reviews.'),
70
- numberOfLikes: zod_1.z
71
- .number()
72
- .int()
73
- .nullable()
74
- .describe('The number of likes for the entity.'),
75
- numberOfFollowers: zod_1.z
76
- .number()
77
- .int()
78
- .nullable()
79
- .describe('The number of followers for the entity.'),
80
- phone: zod_1.z.string().nullable().describe("The entity's phone number."),
81
- websiteUrl: zod_1.z.string().nullable().describe("The entity's website URL."),
82
- });
83
- class ExtractPublicFacebookEntityDataTool extends Tool_1.Tool {
84
- constructor() {
85
- super(ExtractPublicFacebookEntityDataTool.NAME, 'Source Facebook transparency data for a given Facebook entity.', exports.ExtractPublicFacebookEntityDataCoreSchema, exports.ExtractPublicFacebookEntityDataGptSchema, true);
86
- }
87
- async call(context, parameters) {
88
- try {
89
- const initialUrl = this.getInitialFacebookPageUrl(parameters);
90
- const page = context.page.current;
91
- const aboutProfileTransparencyPageUrl = this.getAboutProfileTransparencyPageUrl(initialUrl);
92
- await page.goto(aboutProfileTransparencyPageUrl);
93
- await page.waitForLoadState();
94
- // Detect if the given entity exists
95
- const bodyText = await page.evaluate(() => document.body.innerText);
96
- if (bodyText.includes("This content isn't available right now")) {
97
- context.metadata.nextState = 'FAILED';
98
- if (parameters.facebookEntityName) {
99
- throw new InvalidParamValueException_1.InvalidParamValueException('facebookEntityName', parameters.facebookEntityName ?? null);
100
- }
101
- else {
102
- throw new InvalidParamValueException_1.InvalidParamValueException('facebookEntityUrl', parameters.facebookEntityUrl ?? null);
103
- }
104
- }
105
- // Close the login modal
106
- await this.closeModal(page);
107
- // Click into modal to see extended transparency information
108
- await page
109
- .locator('div[aria-label="See all transparency information"]')
110
- .click({
111
- delay: MiscUtils_1.MiscUtils.generateHumanLikeClickDurationInMs(),
112
- timeout: 5000,
113
- });
114
- await page.waitForTimeout(1500);
115
- await page.waitForLoadState();
116
- const transparencyInfoRawText = await page.evaluate(() => document.body.innerText);
117
- // Click out of the extended transparency information modal
118
- await this.closeModal(page);
119
- // Navigate to remaining public profile details
120
- const basicInfoUrl = this.getAboutContactAndBasicInfoPageUrl(page.url());
121
- await page.goto(basicInfoUrl);
122
- await page.waitForLoadState();
123
- // Close the login modal
124
- await this.closeModal(page);
125
- await page.waitForLoadState();
126
- const basicInfoRawText = await page.evaluate(() => document.body.innerText);
127
- const prompt = `
128
- \`\`\`
129
- ${transparencyInfoRawText}
130
- ${basicInfoRawText}
131
- \`\`\`
132
-
133
- Above is the raw textual content of a business/organization entity's Facebook webpage.
134
-
135
- Note that since this is the raw textual content, the text may be a bit jumbled, have its styling lost,
136
- careful positioning lost, etc.
137
-
138
- Extract this entity's information from the given raw textual content. Only use the supplied raw textual
139
- content. DO NOT use your internal model knowledge to fill in gaps of information. ONLY use the supplied
140
- text!`;
141
- const resp = await context.gptClient.getStructuredOutput([
142
- {
143
- type: 'user',
144
- items: [{ type: 'text', text: prompt }],
145
- },
146
- ], FACEBOOK_ENTITY_PAGE_INFO_SCHEMA);
147
- MiscUtils_1.MiscUtils.updateTokenCounts(resp, context.metadata);
148
- context.metadata.nextState = 'SUCCESS';
149
- return {
150
- isSuccessful: true,
151
- forLlm: 'Successfully extracted Facebook data.',
152
- metadata: resp.output,
153
- };
154
- }
155
- catch (error) {
156
- if (error instanceof DonobuException_1.DonobuException) {
157
- context.metadata.nextState = 'FAILED';
158
- return {
159
- isSuccessful: false,
160
- forLlm: error.userFacingMessage,
161
- metadata: JsonUtils_1.JsonUtils.objectToJson(error),
162
- };
163
- }
164
- Logger_1.appLogger.error('Failed to extract Facebook data due to unexpected exception!', error);
165
- context.metadata.nextState = 'FAILED';
166
- return {
167
- isSuccessful: false,
168
- forLlm: error instanceof Error ? error.message : String(error),
169
- metadata: null,
170
- };
171
- }
172
- }
173
- async callFromGpt(context, parameters) {
174
- return this.call(context, parameters);
175
- }
176
- getInitialFacebookPageUrl(parameters) {
177
- if (parameters.facebookEntityName) {
178
- return `https://www.facebook.com/${parameters.facebookEntityName}`;
179
- }
180
- else if (parameters.facebookEntityUrl) {
181
- const tmp = parameters.facebookEntityUrl;
182
- return !tmp.startsWith('http') ? 'https://' + tmp : tmp;
183
- }
184
- else {
185
- throw new InvalidParamValueException_1.InvalidParamValueException('facebookEntityUrl', null);
186
- }
187
- }
188
- getAboutProfileTransparencyPageUrl(url) {
189
- try {
190
- const uri = new URL(url);
191
- const params = new URLSearchParams(uri.search);
192
- params.delete('sk');
193
- params.append('sk', 'about_profile_transparency');
194
- uri.search = params.toString();
195
- return uri.toString();
196
- }
197
- catch (_error) {
198
- throw new Error(`Invalid URL: ${url}`);
199
- }
200
- }
201
- getAboutContactAndBasicInfoPageUrl(url) {
202
- try {
203
- const uri = new URL(url);
204
- const params = new URLSearchParams(uri.search);
205
- params.delete('sk');
206
- params.append('sk', 'about_contact_and_basic_info');
207
- uri.search = params.toString();
208
- return uri.toString();
209
- }
210
- catch (_error) {
211
- throw new Error(`Invalid URL: ${url}`);
212
- }
213
- }
214
- async closeModal(page) {
215
- try {
216
- await page.locator('div[aria-label="Close"]').first().click({
217
- delay: MiscUtils_1.MiscUtils.generateHumanLikeClickDurationInMs(),
218
- timeout: 5000,
219
- });
220
- }
221
- catch (_error) {
222
- Logger_1.appLogger.warn('Failed to detect Facebook modal to close, but continuing anyway...');
223
- }
224
- }
225
- }
226
- exports.ExtractPublicFacebookEntityDataTool = ExtractPublicFacebookEntityDataTool;
227
- ExtractPublicFacebookEntityDataTool.NAME = 'extractPublicFacebookEntityData';
228
- //# sourceMappingURL=ExtractPublicFacebookEntityDataTool.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExtractPublicFacebookEntityDataTool.js","sourceRoot":"","sources":["../../../src/tools/ExtractPublicFacebookEntityDataTool.ts"],"names":[],"mappings":"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"}
@@ -1,47 +0,0 @@
1
- import { Tool } from './Tool';
2
- import { ToolCallContext } from '../models/ToolCallContext';
3
- import { ToolCallResult } from '../models/ToolCallResult';
4
- import { z } from 'zod';
5
- export declare const GoToGoogleMapsStreetViewCoreSchema: z.ZodObject<{
6
- entityName: z.ZodString;
7
- entityLocation: z.ZodString;
8
- }, "strip", z.ZodTypeAny, {
9
- entityName: string;
10
- entityLocation: string;
11
- }, {
12
- entityName: string;
13
- entityLocation: string;
14
- }>;
15
- export declare const GoToGoogleMapsStreetViewGptSchema: z.ZodObject<{
16
- rationale: z.ZodString;
17
- } & {
18
- entityName: z.ZodString;
19
- entityLocation: z.ZodString;
20
- }, "strip", z.ZodTypeAny, {
21
- rationale: string;
22
- entityName: string;
23
- entityLocation: string;
24
- }, {
25
- rationale: string;
26
- entityName: string;
27
- entityLocation: string;
28
- }>;
29
- /**
30
- * Attempts to verify that the given business/entity exists at the given location by using a Google
31
- * Maps street view. If the business/entity is found, then a AggregateExtractedStreetviewDataTool
32
- * tool call is queued containing the results.
33
- */
34
- export declare class GoToGoogleMapsStreetViewTool extends Tool<typeof GoToGoogleMapsStreetViewCoreSchema, typeof GoToGoogleMapsStreetViewGptSchema> {
35
- static readonly NAME = "goToGoogleMapsStreetView";
36
- constructor();
37
- call(context: ToolCallContext, parameters: z.infer<typeof GoToGoogleMapsStreetViewCoreSchema>): Promise<ToolCallResult>;
38
- callFromGpt(context: ToolCallContext, parameters: z.infer<typeof GoToGoogleMapsStreetViewGptSchema>): Promise<ToolCallResult>;
39
- private setStreetView;
40
- private setStreetViewUsingQuery;
41
- /**
42
- * Remove UI elements that can distract the GPT when performing an analysis. This is a fragile
43
- * script and will break depending on the device used and on the whims of Google.
44
- */
45
- private cleanupUiElements;
46
- }
47
- //# sourceMappingURL=GoToGoogleMapsStreetViewTool.d.ts.map