@credal/actions 0.1.81 → 0.1.83

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.
@@ -123,6 +123,7 @@ exports.asanaListAsanaTasksByProjectDefinition = {
123
123
  },
124
124
  custom_fields: {
125
125
  type: "array",
126
+ nullable: true,
126
127
  items: {
127
128
  type: "object",
128
129
  properties: {
@@ -134,6 +135,7 @@ exports.asanaListAsanaTasksByProjectDefinition = {
134
135
  },
135
136
  display_value: {
136
137
  type: "string",
138
+ nullable: true,
137
139
  },
138
140
  },
139
141
  },
@@ -169,6 +171,7 @@ exports.asanaListAsanaTasksByProjectDefinition = {
169
171
  },
170
172
  custom_fields: {
171
173
  type: "array",
174
+ nullable: true,
172
175
  items: {
173
176
  type: "object",
174
177
  properties: {
@@ -178,19 +181,9 @@ exports.asanaListAsanaTasksByProjectDefinition = {
178
181
  name: {
179
182
  type: "string",
180
183
  },
181
- enum_options: {
182
- type: "array",
183
- items: {
184
- type: "object",
185
- properties: {
186
- gid: {
187
- type: "string",
188
- },
189
- name: {
190
- type: "string",
191
- },
192
- },
193
- },
184
+ display_value: {
185
+ type: "string",
186
+ nullable: true,
194
187
  },
195
188
  },
196
189
  },
@@ -5115,7 +5108,11 @@ exports.gongGetGongTranscriptsDefinition = {
5115
5108
  properties: {
5116
5109
  callId: {
5117
5110
  type: "string",
5118
- description: "The ID of the transcript",
5111
+ description: "The ID of the call",
5112
+ },
5113
+ callName: {
5114
+ type: "string",
5115
+ description: "The name of the call",
5119
5116
  },
5120
5117
  transcript: {
5121
5118
  type: "array",
@@ -126,19 +126,19 @@ export declare const asanaListAsanaTasksByProjectOutputSchema: z.ZodObject<{
126
126
  completed: z.ZodOptional<z.ZodBoolean>;
127
127
  modified_at: z.ZodOptional<z.ZodString>;
128
128
  notes: z.ZodOptional<z.ZodString>;
129
- custom_fields: z.ZodOptional<z.ZodArray<z.ZodObject<{
129
+ custom_fields: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
130
130
  gid: z.ZodOptional<z.ZodString>;
131
131
  name: z.ZodOptional<z.ZodString>;
132
- display_value: z.ZodOptional<z.ZodString>;
132
+ display_value: z.ZodOptional<z.ZodNullable<z.ZodString>>;
133
133
  }, "strip", z.ZodTypeAny, {
134
134
  name?: string | undefined;
135
135
  gid?: string | undefined;
136
- display_value?: string | undefined;
136
+ display_value?: string | null | undefined;
137
137
  }, {
138
138
  name?: string | undefined;
139
139
  gid?: string | undefined;
140
- display_value?: string | undefined;
141
- }>, "many">>;
140
+ display_value?: string | null | undefined;
141
+ }>, "many">>>;
142
142
  num_subtasks: z.ZodOptional<z.ZodNumber>;
143
143
  }, "strip", z.ZodTypeAny, {
144
144
  name?: string | undefined;
@@ -149,8 +149,8 @@ export declare const asanaListAsanaTasksByProjectOutputSchema: z.ZodObject<{
149
149
  custom_fields?: {
150
150
  name?: string | undefined;
151
151
  gid?: string | undefined;
152
- display_value?: string | undefined;
153
- }[] | undefined;
152
+ display_value?: string | null | undefined;
153
+ }[] | null | undefined;
154
154
  num_subtasks?: number | undefined;
155
155
  }, {
156
156
  name?: string | undefined;
@@ -161,8 +161,8 @@ export declare const asanaListAsanaTasksByProjectOutputSchema: z.ZodObject<{
161
161
  custom_fields?: {
162
162
  name?: string | undefined;
163
163
  gid?: string | undefined;
164
- display_value?: string | undefined;
165
- }[] | undefined;
164
+ display_value?: string | null | undefined;
165
+ }[] | null | undefined;
166
166
  num_subtasks?: number | undefined;
167
167
  }>;
168
168
  subtasks: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
@@ -172,34 +172,19 @@ export declare const asanaListAsanaTasksByProjectOutputSchema: z.ZodObject<{
172
172
  modified_at: z.ZodOptional<z.ZodString>;
173
173
  notes: z.ZodOptional<z.ZodString>;
174
174
  assignee: z.ZodOptional<z.ZodString>;
175
- custom_fields: z.ZodOptional<z.ZodArray<z.ZodObject<{
175
+ custom_fields: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
176
176
  gid: z.ZodOptional<z.ZodString>;
177
177
  name: z.ZodOptional<z.ZodString>;
178
- enum_options: z.ZodOptional<z.ZodArray<z.ZodObject<{
179
- gid: z.ZodOptional<z.ZodString>;
180
- name: z.ZodOptional<z.ZodString>;
181
- }, "strip", z.ZodTypeAny, {
182
- name?: string | undefined;
183
- gid?: string | undefined;
184
- }, {
185
- name?: string | undefined;
186
- gid?: string | undefined;
187
- }>, "many">>;
178
+ display_value: z.ZodOptional<z.ZodNullable<z.ZodString>>;
188
179
  }, "strip", z.ZodTypeAny, {
189
180
  name?: string | undefined;
190
181
  gid?: string | undefined;
191
- enum_options?: {
192
- name?: string | undefined;
193
- gid?: string | undefined;
194
- }[] | undefined;
182
+ display_value?: string | null | undefined;
195
183
  }, {
196
184
  name?: string | undefined;
197
185
  gid?: string | undefined;
198
- enum_options?: {
199
- name?: string | undefined;
200
- gid?: string | undefined;
201
- }[] | undefined;
202
- }>, "many">>;
186
+ display_value?: string | null | undefined;
187
+ }>, "many">>>;
203
188
  num_subtasks: z.ZodOptional<z.ZodNumber>;
204
189
  }, "strip", z.ZodTypeAny, {
205
190
  name?: string | undefined;
@@ -211,11 +196,8 @@ export declare const asanaListAsanaTasksByProjectOutputSchema: z.ZodObject<{
211
196
  custom_fields?: {
212
197
  name?: string | undefined;
213
198
  gid?: string | undefined;
214
- enum_options?: {
215
- name?: string | undefined;
216
- gid?: string | undefined;
217
- }[] | undefined;
218
- }[] | undefined;
199
+ display_value?: string | null | undefined;
200
+ }[] | null | undefined;
219
201
  num_subtasks?: number | undefined;
220
202
  }, {
221
203
  name?: string | undefined;
@@ -227,11 +209,8 @@ export declare const asanaListAsanaTasksByProjectOutputSchema: z.ZodObject<{
227
209
  custom_fields?: {
228
210
  name?: string | undefined;
229
211
  gid?: string | undefined;
230
- enum_options?: {
231
- name?: string | undefined;
232
- gid?: string | undefined;
233
- }[] | undefined;
234
- }[] | undefined;
212
+ display_value?: string | null | undefined;
213
+ }[] | null | undefined;
235
214
  num_subtasks?: number | undefined;
236
215
  }>, "many">>>;
237
216
  taskStories: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
@@ -283,8 +262,8 @@ export declare const asanaListAsanaTasksByProjectOutputSchema: z.ZodObject<{
283
262
  custom_fields?: {
284
263
  name?: string | undefined;
285
264
  gid?: string | undefined;
286
- display_value?: string | undefined;
287
- }[] | undefined;
265
+ display_value?: string | null | undefined;
266
+ }[] | null | undefined;
288
267
  num_subtasks?: number | undefined;
289
268
  };
290
269
  subtasks?: {
@@ -297,11 +276,8 @@ export declare const asanaListAsanaTasksByProjectOutputSchema: z.ZodObject<{
297
276
  custom_fields?: {
298
277
  name?: string | undefined;
299
278
  gid?: string | undefined;
300
- enum_options?: {
301
- name?: string | undefined;
302
- gid?: string | undefined;
303
- }[] | undefined;
304
- }[] | undefined;
279
+ display_value?: string | null | undefined;
280
+ }[] | null | undefined;
305
281
  num_subtasks?: number | undefined;
306
282
  }[] | null | undefined;
307
283
  taskStories?: {
@@ -325,8 +301,8 @@ export declare const asanaListAsanaTasksByProjectOutputSchema: z.ZodObject<{
325
301
  custom_fields?: {
326
302
  name?: string | undefined;
327
303
  gid?: string | undefined;
328
- display_value?: string | undefined;
329
- }[] | undefined;
304
+ display_value?: string | null | undefined;
305
+ }[] | null | undefined;
330
306
  num_subtasks?: number | undefined;
331
307
  };
332
308
  subtasks?: {
@@ -339,11 +315,8 @@ export declare const asanaListAsanaTasksByProjectOutputSchema: z.ZodObject<{
339
315
  custom_fields?: {
340
316
  name?: string | undefined;
341
317
  gid?: string | undefined;
342
- enum_options?: {
343
- name?: string | undefined;
344
- gid?: string | undefined;
345
- }[] | undefined;
346
- }[] | undefined;
318
+ display_value?: string | null | undefined;
319
+ }[] | null | undefined;
347
320
  num_subtasks?: number | undefined;
348
321
  }[] | null | undefined;
349
322
  taskStories?: {
@@ -371,8 +344,8 @@ export declare const asanaListAsanaTasksByProjectOutputSchema: z.ZodObject<{
371
344
  custom_fields?: {
372
345
  name?: string | undefined;
373
346
  gid?: string | undefined;
374
- display_value?: string | undefined;
375
- }[] | undefined;
347
+ display_value?: string | null | undefined;
348
+ }[] | null | undefined;
376
349
  num_subtasks?: number | undefined;
377
350
  };
378
351
  subtasks?: {
@@ -385,11 +358,8 @@ export declare const asanaListAsanaTasksByProjectOutputSchema: z.ZodObject<{
385
358
  custom_fields?: {
386
359
  name?: string | undefined;
387
360
  gid?: string | undefined;
388
- enum_options?: {
389
- name?: string | undefined;
390
- gid?: string | undefined;
391
- }[] | undefined;
392
- }[] | undefined;
361
+ display_value?: string | null | undefined;
362
+ }[] | null | undefined;
393
363
  num_subtasks?: number | undefined;
394
364
  }[] | null | undefined;
395
365
  taskStories?: {
@@ -417,8 +387,8 @@ export declare const asanaListAsanaTasksByProjectOutputSchema: z.ZodObject<{
417
387
  custom_fields?: {
418
388
  name?: string | undefined;
419
389
  gid?: string | undefined;
420
- display_value?: string | undefined;
421
- }[] | undefined;
390
+ display_value?: string | null | undefined;
391
+ }[] | null | undefined;
422
392
  num_subtasks?: number | undefined;
423
393
  };
424
394
  subtasks?: {
@@ -431,11 +401,8 @@ export declare const asanaListAsanaTasksByProjectOutputSchema: z.ZodObject<{
431
401
  custom_fields?: {
432
402
  name?: string | undefined;
433
403
  gid?: string | undefined;
434
- enum_options?: {
435
- name?: string | undefined;
436
- gid?: string | undefined;
437
- }[] | undefined;
438
- }[] | undefined;
404
+ display_value?: string | null | undefined;
405
+ }[] | null | undefined;
439
406
  num_subtasks?: number | undefined;
440
407
  }[] | null | undefined;
441
408
  taskStories?: {
@@ -2336,6 +2303,7 @@ export declare const gongGetGongTranscriptsOutputSchema: z.ZodObject<{
2336
2303
  success: z.ZodBoolean;
2337
2304
  callTranscripts: z.ZodOptional<z.ZodArray<z.ZodObject<{
2338
2305
  callId: z.ZodOptional<z.ZodString>;
2306
+ callName: z.ZodOptional<z.ZodString>;
2339
2307
  transcript: z.ZodOptional<z.ZodArray<z.ZodObject<{
2340
2308
  speakerName: z.ZodOptional<z.ZodString>;
2341
2309
  topic: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -2371,6 +2339,7 @@ export declare const gongGetGongTranscriptsOutputSchema: z.ZodObject<{
2371
2339
  }>, "many">>;
2372
2340
  }, "strip", z.ZodTypeAny, {
2373
2341
  callId?: string | undefined;
2342
+ callName?: string | undefined;
2374
2343
  transcript?: {
2375
2344
  speakerName?: string | undefined;
2376
2345
  topic?: string | null | undefined;
@@ -2382,6 +2351,7 @@ export declare const gongGetGongTranscriptsOutputSchema: z.ZodObject<{
2382
2351
  }[] | undefined;
2383
2352
  }, {
2384
2353
  callId?: string | undefined;
2354
+ callName?: string | undefined;
2385
2355
  transcript?: {
2386
2356
  speakerName?: string | undefined;
2387
2357
  topic?: string | null | undefined;
@@ -2398,6 +2368,7 @@ export declare const gongGetGongTranscriptsOutputSchema: z.ZodObject<{
2398
2368
  error?: string | undefined;
2399
2369
  callTranscripts?: {
2400
2370
  callId?: string | undefined;
2371
+ callName?: string | undefined;
2401
2372
  transcript?: {
2402
2373
  speakerName?: string | undefined;
2403
2374
  topic?: string | null | undefined;
@@ -2413,6 +2384,7 @@ export declare const gongGetGongTranscriptsOutputSchema: z.ZodObject<{
2413
2384
  error?: string | undefined;
2414
2385
  callTranscripts?: {
2415
2386
  callId?: string | undefined;
2387
+ callName?: string | undefined;
2416
2388
  transcript?: {
2417
2389
  speakerName?: string | undefined;
2418
2390
  topic?: string | null | undefined;
@@ -60,8 +60,9 @@ exports.asanaListAsanaTasksByProjectOutputSchema = zod_1.z.object({
60
60
  .array(zod_1.z.object({
61
61
  gid: zod_1.z.string().optional(),
62
62
  name: zod_1.z.string().optional(),
63
- display_value: zod_1.z.string().optional(),
63
+ display_value: zod_1.z.string().nullable().optional(),
64
64
  }))
65
+ .nullable()
65
66
  .optional(),
66
67
  num_subtasks: zod_1.z.number().optional(),
67
68
  }),
@@ -77,10 +78,9 @@ exports.asanaListAsanaTasksByProjectOutputSchema = zod_1.z.object({
77
78
  .array(zod_1.z.object({
78
79
  gid: zod_1.z.string().optional(),
79
80
  name: zod_1.z.string().optional(),
80
- enum_options: zod_1.z
81
- .array(zod_1.z.object({ gid: zod_1.z.string().optional(), name: zod_1.z.string().optional() }))
82
- .optional(),
81
+ display_value: zod_1.z.string().nullable().optional(),
83
82
  }))
83
+ .nullable()
84
84
  .optional(),
85
85
  num_subtasks: zod_1.z.number().optional(),
86
86
  }))
@@ -2067,7 +2067,8 @@ exports.gongGetGongTranscriptsOutputSchema = zod_1.z.object({
2067
2067
  callTranscripts: zod_1.z
2068
2068
  .array(zod_1.z
2069
2069
  .object({
2070
- callId: zod_1.z.string().describe("The ID of the transcript").optional(),
2070
+ callId: zod_1.z.string().describe("The ID of the call").optional(),
2071
+ callName: zod_1.z.string().describe("The name of the call").optional(),
2071
2072
  transcript: zod_1.z
2072
2073
  .array(zod_1.z
2073
2074
  .object({
@@ -28,11 +28,13 @@ const TaskDetailsSchema = zod_1.z
28
28
  completed: zod_1.z.boolean(),
29
29
  modified_at: zod_1.z.string(),
30
30
  notes: zod_1.z.string(),
31
- custom_fields: zod_1.z.array(zod_1.z.object({
31
+ custom_fields: zod_1.z
32
+ .array(zod_1.z.object({
32
33
  gid: zod_1.z.string(),
33
34
  name: zod_1.z.string(),
34
- display_value: zod_1.z.string(),
35
- })),
35
+ display_value: zod_1.z.string().nullable(),
36
+ }))
37
+ .nullable(),
36
38
  num_subtasks: zod_1.z.number(),
37
39
  })
38
40
  .partial()
@@ -80,6 +80,7 @@ const CallSchema = zod_1.z
80
80
  primaryUserId: zod_1.z.string(),
81
81
  started: zod_1.z.string(),
82
82
  isPrivate: zod_1.z.boolean(),
83
+ title: zod_1.z.string(),
83
84
  }),
84
85
  parties: zod_1.z.array(zod_1.z
85
86
  .object({
@@ -301,14 +302,14 @@ const getGongTranscripts = (_a) => __awaiter(void 0, [_a], void 0, function* ({
301
302
  }
302
303
  });
303
304
  const callTranscriptsWithNames = callTranscripts.map(callTranscript => {
304
- var _a;
305
+ var _a, _b, _c, _d;
305
306
  const currTranscript = Object.assign({}, callTranscript);
306
307
  currTranscript.transcript = (_a = callTranscript.transcript) === null || _a === void 0 ? void 0 : _a.map(transcript => {
307
308
  var _a;
308
309
  const { speakerId } = transcript, rest = __rest(transcript, ["speakerId"]);
309
310
  return Object.assign(Object.assign({}, rest), { speakerName: (_a = userIdToNameMap[speakerId !== null && speakerId !== void 0 ? speakerId : ""]) !== null && _a !== void 0 ? _a : "Unknown" });
310
311
  });
311
- return currTranscript;
312
+ return Object.assign({ callName: (_d = (_c = (_b = publicCalls.find(call => { var _a; return ((_a = call.metaData) === null || _a === void 0 ? void 0 : _a.id) === callTranscript.callId; })) === null || _b === void 0 ? void 0 : _b.metaData) === null || _c === void 0 ? void 0 : _c.title) !== null && _d !== void 0 ? _d : "" }, currTranscript);
312
313
  });
313
314
  return {
314
315
  success: true,
@@ -0,0 +1,3 @@
1
+ import { salesforceGetSalesforceRecordsByQueryFunction } from "../../autogen/types";
2
+ declare const getSalesforceRecordByQuery: salesforceGetSalesforceRecordsByQueryFunction;
3
+ export default getSalesforceRecordByQuery;
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const axiosClient_1 = require("../../util/axiosClient");
13
+ const getSalesforceRecordByQuery = (_a) => __awaiter(void 0, [_a], void 0, function* ({ params, authParams, }) {
14
+ const { authToken, baseUrl } = authParams;
15
+ const { query, limit } = params;
16
+ if (!authToken || !baseUrl) {
17
+ return {
18
+ success: false,
19
+ error: "authToken and baseUrl are required for Salesforce API",
20
+ };
21
+ }
22
+ // The API limits the maximum number of records returned to 2000, the limit lets the user set a smaller custom limit
23
+ const url = `${baseUrl}/services/data/v56.0/query/?q=${encodeURIComponent(query + " LIMIT " + (limit != undefined && limit <= 2000 ? limit : 2000))}`;
24
+ try {
25
+ const response = yield axiosClient_1.axiosClient.get(url, {
26
+ headers: {
27
+ Authorization: `Bearer ${authToken}`,
28
+ },
29
+ });
30
+ return {
31
+ success: true,
32
+ records: response.data,
33
+ };
34
+ }
35
+ catch (error) {
36
+ console.error("Error retrieving Salesforce record:", error);
37
+ return {
38
+ success: false,
39
+ error: error instanceof Error ? error.message : "An unknown error occurred",
40
+ };
41
+ }
42
+ });
43
+ exports.default = getSalesforceRecordByQuery;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@credal/actions",
3
- "version": "0.1.81",
3
+ "version": "0.1.83",
4
4
  "description": "AI Actions by Credal AI",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,3 +0,0 @@
1
- import { confluenceUpdatePageFunction } from "../../../actions/autogen/types";
2
- declare const confluenceUpdatePage: confluenceUpdatePageFunction;
3
- export default confluenceUpdatePage;
@@ -1,46 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- const axiosClient_1 = require("../../util/axiosClient");
13
- function getConfluenceRequestConfig(baseUrl, username, apiToken) {
14
- return {
15
- baseURL: baseUrl,
16
- headers: {
17
- Accept: "application/json",
18
- Authorization: `Basic ${Buffer.from(`${username}:${apiToken}`).toString("base64")}`,
19
- },
20
- };
21
- }
22
- const confluenceUpdatePage = (_a) => __awaiter(void 0, [_a], void 0, function* ({ params, authParams, }) {
23
- const { pageId, content, title } = params;
24
- const { baseUrl, authToken, username } = authParams;
25
- if (!baseUrl || !authToken || !username) {
26
- throw new Error("Missing required authentication information");
27
- }
28
- const config = getConfluenceRequestConfig(baseUrl, username, authToken);
29
- // Get current version number
30
- const response = yield axiosClient_1.axiosClient.get(`/api/v2/pages/${pageId}`, config);
31
- const currVersion = response.data.version.number;
32
- const payload = {
33
- id: pageId,
34
- status: "current",
35
- title,
36
- body: {
37
- representation: "storage",
38
- value: content,
39
- },
40
- version: {
41
- number: currVersion + 1,
42
- },
43
- };
44
- yield axiosClient_1.axiosClient.put(`/api/v2/pages/${pageId}`, payload, config);
45
- });
46
- exports.default = confluenceUpdatePage;
@@ -1,7 +0,0 @@
1
- import type { ActionFunction } from "../../autogen/types";
2
- declare const fillTemplateAction: ActionFunction<{
3
- template: string;
4
- }, {
5
- result: string;
6
- }, unknown>;
7
- export default fillTemplateAction;
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- const fillTemplateAction = (_a) => __awaiter(void 0, [_a], void 0, function* ({ template }) {
13
- // Simply return the template without any modification
14
- return {
15
- result: template,
16
- };
17
- });
18
- exports.default = fillTemplateAction;
@@ -1,3 +0,0 @@
1
- import type { genericUniversalTestActionFunction } from "../../autogen/types";
2
- declare const genericApiCall: genericUniversalTestActionFunction;
3
- export default genericApiCall;
@@ -1,38 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- const axios_1 = __importDefault(require("axios"));
16
- const genericApiCall = (_a) => __awaiter(void 0, [_a], void 0, function* ({ params, }) {
17
- try {
18
- const { endpoint, method, headers, body } = params;
19
- const response = yield (0, axios_1.default)({
20
- url: endpoint,
21
- method,
22
- headers,
23
- data: method !== "GET" ? body : undefined,
24
- });
25
- return {
26
- statusCode: response.status,
27
- headers: response.headers,
28
- data: response.data,
29
- };
30
- }
31
- catch (error) {
32
- if (axios_1.default.isAxiosError(error)) {
33
- throw Error("Axios Error: " + (error.message || "Failed to make API call"));
34
- }
35
- throw Error("Error: " + (error || "Failed to make API call"));
36
- }
37
- });
38
- exports.default = genericApiCall;
@@ -1,3 +0,0 @@
1
- import { googlemapsNearbysearchFunction } from "../../autogen/types";
2
- declare const nearbysearch: googlemapsNearbysearchFunction;
3
- export default nearbysearch;
@@ -1,96 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- const axios_1 = __importDefault(require("axios"));
16
- const types_1 = require("../../autogen/types");
17
- const INCLUDED_TYPES = [
18
- "monument",
19
- "museum",
20
- "art_gallery",
21
- "sculpture",
22
- "cultural_landmark",
23
- "historical_place",
24
- "performing_arts_theater",
25
- "university",
26
- "aquarium",
27
- "botanical_garden",
28
- "comedy_club",
29
- "park",
30
- "movie_theater",
31
- "national_park",
32
- "garden",
33
- "night_club",
34
- "tourist_attraction",
35
- "water_park",
36
- "zoo",
37
- "bar",
38
- "restaurant",
39
- "food_court",
40
- "bakery",
41
- "cafe",
42
- "coffee_shop",
43
- "pub",
44
- "wine_bar",
45
- "spa",
46
- "beach",
47
- "market",
48
- "shopping_mall",
49
- "stadium",
50
- ];
51
- const nearbysearch = (_a) => __awaiter(void 0, [_a], void 0, function* ({ params, authParams, }) {
52
- const url = `https://places.googleapis.com/v1/places:searchNearby`;
53
- const fieldMask = [
54
- "places.displayName",
55
- "places.formattedAddress",
56
- "places.priceLevel",
57
- "places.rating",
58
- "places.primaryTypeDisplayName",
59
- "places.editorialSummary",
60
- "places.regularOpeningHours",
61
- ].join(",");
62
- const response = yield axios_1.default.post(url, {
63
- maxResultCount: 20,
64
- includedTypes: INCLUDED_TYPES,
65
- locationRestriction: {
66
- circle: {
67
- center: {
68
- latitude: params.latitude,
69
- longitude: params.longitude,
70
- },
71
- radius: 10000,
72
- },
73
- },
74
- }, {
75
- headers: {
76
- "X-Goog-Api-Key": authParams.apiKey,
77
- "X-Goog-FieldMask": fieldMask,
78
- "Content-Type": "application/json",
79
- },
80
- });
81
- return types_1.googlemapsNearbysearchOutputSchema.parse({
82
- results: response.data.places.map((place) => {
83
- var _a, _b;
84
- return ({
85
- name: place.displayName.text,
86
- address: place.formattedAddress,
87
- priceLevel: place.priceLevel,
88
- rating: place.rating,
89
- primaryType: place.primaryTypeDisplayName.text,
90
- editorialSummary: ((_a = place.editorialSummary) === null || _a === void 0 ? void 0 : _a.text) || "",
91
- openingHours: ((_b = place.regularOpeningHours) === null || _b === void 0 ? void 0 : _b.weekdayDescriptions.join("\n")) || "",
92
- });
93
- }),
94
- });
95
- });
96
- exports.default = nearbysearch;
@@ -1,3 +0,0 @@
1
- import { snowflakeRunSnowflakeQueryWriteResultsToS3Function } from "../../autogen/types";
2
- declare const runSnowflakeQueryWriteResultsToS3: snowflakeRunSnowflakeQueryWriteResultsToS3Function;
3
- export default runSnowflakeQueryWriteResultsToS3;
@@ -1,154 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- const snowflake_sdk_1 = __importDefault(require("snowflake-sdk"));
16
- const crypto_1 = __importDefault(require("crypto"));
17
- const client_s3_1 = require("@aws-sdk/client-s3");
18
- const s3_request_presigner_1 = require("@aws-sdk/s3-request-presigner");
19
- const uuid_1 = require("uuid");
20
- // Only log errors.
21
- snowflake_sdk_1.default.configure({ logLevel: "ERROR" });
22
- const runSnowflakeQueryWriteResultsToS3 = (_a) => __awaiter(void 0, [_a], void 0, function* ({ params, authParams, }) {
23
- const { databaseName, warehouse, query, user, accountName, s3BucketName, s3Region, outputFormat = "json" } = params;
24
- const { apiKey: privateKey, awsAccessKeyId, awsSecretAccessKey } = authParams;
25
- if (!privateKey) {
26
- throw new Error("Snowflake private key is required");
27
- }
28
- if (!awsAccessKeyId || !awsSecretAccessKey) {
29
- throw new Error("AWS credentials are required");
30
- }
31
- if (!accountName || !user || !databaseName || !warehouse || !query || !s3BucketName) {
32
- throw new Error("Missing required parameters for Snowflake query or S3 destination");
33
- }
34
- const getPrivateKeyCorrectFormat = (privateKey) => {
35
- const buffer = Buffer.from(privateKey);
36
- const privateKeyObject = crypto_1.default.createPrivateKey({
37
- key: buffer,
38
- format: "pem",
39
- passphrase: "password",
40
- });
41
- const privateKeyCorrectFormat = privateKeyObject.export({
42
- format: "pem",
43
- type: "pkcs8",
44
- });
45
- return privateKeyCorrectFormat.toString();
46
- };
47
- const executeQueryAndFormatData = () => __awaiter(void 0, void 0, void 0, function* () {
48
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
49
- const queryResults = yield new Promise((resolve, reject) => {
50
- connection.execute({
51
- sqlText: query,
52
- complete: (err, stmt, rows) => {
53
- if (err) {
54
- return reject(err);
55
- }
56
- return resolve(rows || []);
57
- },
58
- });
59
- });
60
- // Format the results based on the output format
61
- let formattedData;
62
- if (outputFormat.toLowerCase() === "csv") {
63
- if (queryResults.length === 0) {
64
- formattedData = "";
65
- }
66
- else {
67
- const headers = Object.keys(queryResults[0]).join(",");
68
- const rows = queryResults.map(row => Object.values(row)
69
- .map(value => (typeof value === "object" && value !== null ? JSON.stringify(value) : value))
70
- .join(","));
71
- formattedData = [headers, ...rows].join("\n");
72
- }
73
- }
74
- else {
75
- // Default to JSON
76
- formattedData = JSON.stringify(queryResults, null, 2);
77
- }
78
- return { formattedData, resultsLength: queryResults.length };
79
- });
80
- const uploadToS3AndGetURL = (formattedData) => __awaiter(void 0, void 0, void 0, function* () {
81
- // Create S3 client
82
- const s3Client = new client_s3_1.S3Client({
83
- region: s3Region,
84
- credentials: {
85
- accessKeyId: awsAccessKeyId,
86
- secretAccessKey: awsSecretAccessKey,
87
- },
88
- });
89
- const contentType = outputFormat.toLowerCase() === "csv" ? "text/csv" : "application/json";
90
- const fileExtension = outputFormat.toLowerCase() === "csv" ? "csv" : "json";
91
- const finalKey = `${databaseName}/${(0, uuid_1.v4)()}.${fileExtension}`;
92
- // Upload to S3 without ACL
93
- const uploadCommand = new client_s3_1.PutObjectCommand({
94
- Bucket: s3BucketName,
95
- Key: finalKey,
96
- Body: formattedData,
97
- ContentType: contentType,
98
- });
99
- yield s3Client.send(uploadCommand);
100
- // Generate a presigned URL (valid for an hour)
101
- const getObjectCommand = new client_s3_1.GetObjectCommand({
102
- Bucket: s3BucketName,
103
- Key: finalKey,
104
- });
105
- const presignedUrl = yield (0, s3_request_presigner_1.getSignedUrl)(s3Client, getObjectCommand, { expiresIn: 3600 });
106
- return presignedUrl;
107
- });
108
- // Process the private key
109
- const privateKeyCorrectFormatString = getPrivateKeyCorrectFormat(privateKey);
110
- // Set up a connection using snowflake-sdk
111
- const connection = snowflake_sdk_1.default.createConnection({
112
- account: accountName,
113
- username: user,
114
- privateKey: privateKeyCorrectFormatString,
115
- authenticator: "SNOWFLAKE_JWT",
116
- role: "ACCOUNTADMIN",
117
- warehouse: warehouse,
118
- database: databaseName,
119
- });
120
- try {
121
- // Connect to Snowflake
122
- yield new Promise((resolve, reject) => {
123
- connection.connect((err, conn) => {
124
- if (err) {
125
- console.error("Unable to connect to Snowflake:", err.message);
126
- return reject(err);
127
- }
128
- resolve(conn);
129
- });
130
- });
131
- const { formattedData, resultsLength } = yield executeQueryAndFormatData();
132
- const presignedUrl = yield uploadToS3AndGetURL(formattedData);
133
- // Return fields to match schema definition
134
- connection.destroy(err => {
135
- if (err) {
136
- console.log("Failed to disconnect from Snowflake:", err);
137
- }
138
- });
139
- return {
140
- bucketUrl: presignedUrl,
141
- message: `Query results successfully written to S3. URL valid for 1 hour.`,
142
- rowCount: resultsLength,
143
- };
144
- }
145
- catch (error) {
146
- connection.destroy(err => {
147
- if (err) {
148
- console.log("Failed to disconnect from Snowflake:", err);
149
- }
150
- });
151
- throw Error(`An error occurred: ${error}`);
152
- }
153
- });
154
- exports.default = runSnowflakeQueryWriteResultsToS3;
@@ -1,3 +0,0 @@
1
- import { xScrapePostDataWithNitterFunction } from "../../autogen/types";
2
- declare const scrapeTweetDataWithNitter: xScrapePostDataWithNitterFunction;
3
- export default scrapeTweetDataWithNitter;
@@ -1,45 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- const firecrawl_js_1 = __importDefault(require("@mendable/firecrawl-js"));
16
- const scrapeTweetDataWithNitter = (_a) => __awaiter(void 0, [_a], void 0, function* ({ params, authParams, }) {
17
- const tweetUrlRegex = /^(?:https?:\/\/)?(?:www\.)?(?:twitter\.com|x\.com)\/([a-zA-Z0-9_]+)\/status\/(\d+)(?:\?.*)?$/;
18
- if (!tweetUrlRegex.test(params.tweetUrl)) {
19
- throw new Error("Invalid tweet URL. Expected format: https://twitter.com/username/status/id or https://x.com/username/status/id");
20
- }
21
- const nitterUrl = params.tweetUrl.replace(/^(?:https?:\/\/)?(?:www\.)?(?:twitter\.com|x\.com)/i, "https://nitter.net");
22
- // Initialize Firecrawl
23
- if (!authParams.apiKey) {
24
- throw new Error("API key is required for X+Nitter+Firecrawl");
25
- }
26
- const firecrawl = new firecrawl_js_1.default({
27
- apiKey: authParams.apiKey,
28
- });
29
- try {
30
- // Scrape the Nitter URL
31
- const result = yield firecrawl.scrapeUrl(nitterUrl);
32
- if (!result.success) {
33
- throw new Error(`Failed to scrape tweet: ${result.error || "Unknown error"}`);
34
- }
35
- // Extract the tweet text from the scraped content - simple approach - in practice, you might need more robust parsing based on nitter html structure
36
- const tweetContent = result.markdown;
37
- return {
38
- text: tweetContent || "Error scraping with firecrawl",
39
- };
40
- }
41
- catch (error) {
42
- throw new Error(`Error scraping tweet: ${error instanceof Error ? error.message : error}`);
43
- }
44
- });
45
- exports.default = scrapeTweetDataWithNitter;