@credal/actions 0.2.224 → 0.2.225
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.
- package/dist/actions/autogen/templates.js +20 -4
- package/dist/actions/autogen/types.d.ts +12 -0
- package/dist/actions/autogen/types.js +32 -4
- package/dist/actions/providers/github/searchRepository.js +7 -7
- package/dist/actions/providers/google-oauth/listFilesWithAssignedComments.d.ts +3 -0
- package/dist/actions/providers/google-oauth/listFilesWithAssignedComments.js +41 -0
- package/dist/actions/providers/jira/updateServiceDeskRequest.d.ts +3 -0
- package/dist/actions/providers/jira/updateServiceDeskRequest.js +72 -0
- package/dist/actions/providers/microsoft/createDocument.js +3 -4
- package/dist/actions/providers/microsoft/getDocument.js +3 -6
- package/dist/actions/providers/microsoft/sendOutlookEmail.d.ts +3 -0
- package/dist/actions/providers/microsoft/sendOutlookEmail.js +48 -0
- package/dist/actions/providers/microsoft/updateDocument.js +3 -6
- package/dist/actions/providers/microsoft/updateSpreadsheet.js +3 -4
- package/dist/actions/providers/microsoft/utils.d.ts +9 -0
- package/dist/actions/providers/microsoft/utils.js +8 -0
- package/package.json +2 -2
- package/dist/actions/groups.d.ts +0 -6
- package/dist/actions/groups.js +0 -220
- package/dist/actions/providers/slack/archiveChannel.d.ts +0 -3
- package/dist/actions/providers/slack/archiveChannel.js +0 -35
|
@@ -11484,7 +11484,11 @@ export const microsoftCreateDocumentDefinition = {
|
|
|
11484
11484
|
properties: {
|
|
11485
11485
|
siteId: {
|
|
11486
11486
|
type: "string",
|
|
11487
|
-
description: "The ID of the site where the document will be created",
|
|
11487
|
+
description: "The ID of the site where the document will be created (targets the site's default document library; ignored if driveId is provided)",
|
|
11488
|
+
},
|
|
11489
|
+
driveId: {
|
|
11490
|
+
type: "string",
|
|
11491
|
+
description: "The ID of the drive (document library) to create the document in. Required to target a non-default document library; takes precedence over siteId. Can be resolved from a SharePoint URL with the getSharepointItem action",
|
|
11488
11492
|
},
|
|
11489
11493
|
name: {
|
|
11490
11494
|
type: "string",
|
|
@@ -11540,7 +11544,11 @@ export const microsoftUpdateDocumentDefinition = {
|
|
|
11540
11544
|
properties: {
|
|
11541
11545
|
siteId: {
|
|
11542
11546
|
type: "string",
|
|
11543
|
-
description: "The ID of the site where the document is located",
|
|
11547
|
+
description: "The ID of the site where the document is located (targets the site's default document library; ignored if driveId is provided)",
|
|
11548
|
+
},
|
|
11549
|
+
driveId: {
|
|
11550
|
+
type: "string",
|
|
11551
|
+
description: "The ID of the drive (document library) containing the document. Required when the document is in a non-default document library; takes precedence over siteId. Can be resolved from a SharePoint URL with the getSharepointItem action",
|
|
11544
11552
|
},
|
|
11545
11553
|
documentId: {
|
|
11546
11554
|
type: "string",
|
|
@@ -11602,7 +11610,11 @@ export const microsoftUpdateSpreadsheetDefinition = {
|
|
|
11602
11610
|
},
|
|
11603
11611
|
siteId: {
|
|
11604
11612
|
type: "string",
|
|
11605
|
-
description: "The ID of the site where the spreadsheet is located",
|
|
11613
|
+
description: "The ID of the site where the spreadsheet is located (targets the site's default document library; ignored if driveId is provided)",
|
|
11614
|
+
},
|
|
11615
|
+
driveId: {
|
|
11616
|
+
type: "string",
|
|
11617
|
+
description: "The ID of the drive (document library) containing the spreadsheet. Required when the spreadsheet is in a non-default document library; takes precedence over siteId. Can be resolved from a SharePoint URL with the getSharepointItem action",
|
|
11606
11618
|
},
|
|
11607
11619
|
},
|
|
11608
11620
|
},
|
|
@@ -11722,7 +11734,11 @@ export const microsoftGetDocumentDefinition = {
|
|
|
11722
11734
|
properties: {
|
|
11723
11735
|
siteId: {
|
|
11724
11736
|
type: "string",
|
|
11725
|
-
description: "The ID of the site where the document is located (optional for OneDrive)",
|
|
11737
|
+
description: "The ID of the site where the document is located (optional for OneDrive; targets the site's default document library; ignored if driveId is provided)",
|
|
11738
|
+
},
|
|
11739
|
+
driveId: {
|
|
11740
|
+
type: "string",
|
|
11741
|
+
description: "The ID of the drive (document library) containing the document. Required when the document is in a non-default document library; takes precedence over siteId. Can be resolved from a SharePoint URL with the getSharepointItem action",
|
|
11726
11742
|
},
|
|
11727
11743
|
documentId: {
|
|
11728
11744
|
type: "string",
|
|
@@ -8228,6 +8228,7 @@ export type salesforceGetReportMetadataOutputType = z.infer<typeof salesforceGet
|
|
|
8228
8228
|
export type salesforceGetReportMetadataFunction = ActionFunction<salesforceGetReportMetadataParamsType, AuthParamsType, salesforceGetReportMetadataOutputType>;
|
|
8229
8229
|
export declare const microsoftCreateDocumentParamsSchema: z.ZodObject<{
|
|
8230
8230
|
siteId: z.ZodOptional<z.ZodString>;
|
|
8231
|
+
driveId: z.ZodOptional<z.ZodString>;
|
|
8231
8232
|
name: z.ZodString;
|
|
8232
8233
|
content: z.ZodString;
|
|
8233
8234
|
folderId: z.ZodOptional<z.ZodString>;
|
|
@@ -8235,11 +8236,13 @@ export declare const microsoftCreateDocumentParamsSchema: z.ZodObject<{
|
|
|
8235
8236
|
name: string;
|
|
8236
8237
|
content: string;
|
|
8237
8238
|
siteId?: string | undefined;
|
|
8239
|
+
driveId?: string | undefined;
|
|
8238
8240
|
folderId?: string | undefined;
|
|
8239
8241
|
}, {
|
|
8240
8242
|
name: string;
|
|
8241
8243
|
content: string;
|
|
8242
8244
|
siteId?: string | undefined;
|
|
8245
|
+
driveId?: string | undefined;
|
|
8243
8246
|
folderId?: string | undefined;
|
|
8244
8247
|
}>;
|
|
8245
8248
|
export type microsoftCreateDocumentParamsType = z.infer<typeof microsoftCreateDocumentParamsSchema>;
|
|
@@ -8266,16 +8269,19 @@ export type microsoftCreateDocumentOutputType = z.infer<typeof microsoftCreateDo
|
|
|
8266
8269
|
export type microsoftCreateDocumentFunction = ActionFunction<microsoftCreateDocumentParamsType, AuthParamsType, microsoftCreateDocumentOutputType>;
|
|
8267
8270
|
export declare const microsoftUpdateDocumentParamsSchema: z.ZodObject<{
|
|
8268
8271
|
siteId: z.ZodOptional<z.ZodString>;
|
|
8272
|
+
driveId: z.ZodOptional<z.ZodString>;
|
|
8269
8273
|
documentId: z.ZodString;
|
|
8270
8274
|
content: z.ZodString;
|
|
8271
8275
|
}, "strip", z.ZodTypeAny, {
|
|
8272
8276
|
content: string;
|
|
8273
8277
|
documentId: string;
|
|
8274
8278
|
siteId?: string | undefined;
|
|
8279
|
+
driveId?: string | undefined;
|
|
8275
8280
|
}, {
|
|
8276
8281
|
content: string;
|
|
8277
8282
|
documentId: string;
|
|
8278
8283
|
siteId?: string | undefined;
|
|
8284
|
+
driveId?: string | undefined;
|
|
8279
8285
|
}>;
|
|
8280
8286
|
export type microsoftUpdateDocumentParamsType = z.infer<typeof microsoftUpdateDocumentParamsSchema>;
|
|
8281
8287
|
export declare const microsoftUpdateDocumentOutputSchema: z.ZodObject<{
|
|
@@ -8298,16 +8304,19 @@ export declare const microsoftUpdateSpreadsheetParamsSchema: z.ZodObject<{
|
|
|
8298
8304
|
range: z.ZodString;
|
|
8299
8305
|
values: z.ZodArray<z.ZodArray<z.ZodString, "many">, "many">;
|
|
8300
8306
|
siteId: z.ZodOptional<z.ZodString>;
|
|
8307
|
+
driveId: z.ZodOptional<z.ZodString>;
|
|
8301
8308
|
}, "strip", z.ZodTypeAny, {
|
|
8302
8309
|
values: string[][];
|
|
8303
8310
|
range: string;
|
|
8304
8311
|
spreadsheetId: string;
|
|
8305
8312
|
siteId?: string | undefined;
|
|
8313
|
+
driveId?: string | undefined;
|
|
8306
8314
|
}, {
|
|
8307
8315
|
values: string[][];
|
|
8308
8316
|
range: string;
|
|
8309
8317
|
spreadsheetId: string;
|
|
8310
8318
|
siteId?: string | undefined;
|
|
8319
|
+
driveId?: string | undefined;
|
|
8311
8320
|
}>;
|
|
8312
8321
|
export type microsoftUpdateSpreadsheetParamsType = z.infer<typeof microsoftUpdateSpreadsheetParamsSchema>;
|
|
8313
8322
|
export declare const microsoftUpdateSpreadsheetOutputSchema: z.ZodObject<{
|
|
@@ -8382,13 +8391,16 @@ export type microsoftMessageTeamsChannelOutputType = z.infer<typeof microsoftMes
|
|
|
8382
8391
|
export type microsoftMessageTeamsChannelFunction = ActionFunction<microsoftMessageTeamsChannelParamsType, AuthParamsType, microsoftMessageTeamsChannelOutputType>;
|
|
8383
8392
|
export declare const microsoftGetDocumentParamsSchema: z.ZodObject<{
|
|
8384
8393
|
siteId: z.ZodOptional<z.ZodString>;
|
|
8394
|
+
driveId: z.ZodOptional<z.ZodString>;
|
|
8385
8395
|
documentId: z.ZodString;
|
|
8386
8396
|
}, "strip", z.ZodTypeAny, {
|
|
8387
8397
|
documentId: string;
|
|
8388
8398
|
siteId?: string | undefined;
|
|
8399
|
+
driveId?: string | undefined;
|
|
8389
8400
|
}, {
|
|
8390
8401
|
documentId: string;
|
|
8391
8402
|
siteId?: string | undefined;
|
|
8403
|
+
driveId?: string | undefined;
|
|
8392
8404
|
}>;
|
|
8393
8405
|
export type microsoftGetDocumentParamsType = z.infer<typeof microsoftGetDocumentParamsSchema>;
|
|
8394
8406
|
export declare const microsoftGetDocumentOutputSchema: z.ZodObject<{
|
|
@@ -4260,7 +4260,14 @@ export const salesforceGetReportMetadataOutputSchema = z.object({
|
|
|
4260
4260
|
.optional(),
|
|
4261
4261
|
});
|
|
4262
4262
|
export const microsoftCreateDocumentParamsSchema = z.object({
|
|
4263
|
-
siteId: z
|
|
4263
|
+
siteId: z
|
|
4264
|
+
.string()
|
|
4265
|
+
.describe("The ID of the site where the document will be created (targets the site's default document library; ignored if driveId is provided)")
|
|
4266
|
+
.optional(),
|
|
4267
|
+
driveId: z
|
|
4268
|
+
.string()
|
|
4269
|
+
.describe("The ID of the drive (document library) to create the document in. Required to target a non-default document library; takes precedence over siteId. Can be resolved from a SharePoint URL with the getSharepointItem action")
|
|
4270
|
+
.optional(),
|
|
4264
4271
|
name: z.string().describe("The name of the new document (include extension like .docx or .xlsx)"),
|
|
4265
4272
|
content: z.string().describe("The content to add to the new document"),
|
|
4266
4273
|
folderId: z.string().describe("The ID of the folder to create the document in (optional)").optional(),
|
|
@@ -4273,7 +4280,14 @@ export const microsoftCreateDocumentOutputSchema = z.object({
|
|
|
4273
4280
|
error: z.string().describe("The error that occurred if the document was not created successfully").optional(),
|
|
4274
4281
|
});
|
|
4275
4282
|
export const microsoftUpdateDocumentParamsSchema = z.object({
|
|
4276
|
-
siteId: z
|
|
4283
|
+
siteId: z
|
|
4284
|
+
.string()
|
|
4285
|
+
.describe("The ID of the site where the document is located (targets the site's default document library; ignored if driveId is provided)")
|
|
4286
|
+
.optional(),
|
|
4287
|
+
driveId: z
|
|
4288
|
+
.string()
|
|
4289
|
+
.describe("The ID of the drive (document library) containing the document. Required when the document is in a non-default document library; takes precedence over siteId. Can be resolved from a SharePoint URL with the getSharepointItem action")
|
|
4290
|
+
.optional(),
|
|
4277
4291
|
documentId: z.string().describe("The ID of the document"),
|
|
4278
4292
|
content: z.string().describe("The new content to update in the document"),
|
|
4279
4293
|
});
|
|
@@ -4286,7 +4300,14 @@ export const microsoftUpdateSpreadsheetParamsSchema = z.object({
|
|
|
4286
4300
|
spreadsheetId: z.string().describe("The ID of the spreadsheet to update"),
|
|
4287
4301
|
range: z.string().describe('The range of cells to update (e.g., "Sheet1!A1:B2")'),
|
|
4288
4302
|
values: z.array(z.array(z.string())).describe("The values to update in the specified range"),
|
|
4289
|
-
siteId: z
|
|
4303
|
+
siteId: z
|
|
4304
|
+
.string()
|
|
4305
|
+
.describe("The ID of the site where the spreadsheet is located (targets the site's default document library; ignored if driveId is provided)")
|
|
4306
|
+
.optional(),
|
|
4307
|
+
driveId: z
|
|
4308
|
+
.string()
|
|
4309
|
+
.describe("The ID of the drive (document library) containing the spreadsheet. Required when the spreadsheet is in a non-default document library; takes precedence over siteId. Can be resolved from a SharePoint URL with the getSharepointItem action")
|
|
4310
|
+
.optional(),
|
|
4290
4311
|
});
|
|
4291
4312
|
export const microsoftUpdateSpreadsheetOutputSchema = z.object({
|
|
4292
4313
|
success: z.boolean().describe("Whether the spreadsheet was updated successfully"),
|
|
@@ -4313,7 +4334,14 @@ export const microsoftMessageTeamsChannelOutputSchema = z.object({
|
|
|
4313
4334
|
messageId: z.string().describe("The ID of the message that was sent").optional(),
|
|
4314
4335
|
});
|
|
4315
4336
|
export const microsoftGetDocumentParamsSchema = z.object({
|
|
4316
|
-
siteId: z
|
|
4337
|
+
siteId: z
|
|
4338
|
+
.string()
|
|
4339
|
+
.describe("The ID of the site where the document is located (optional for OneDrive; targets the site's default document library; ignored if driveId is provided)")
|
|
4340
|
+
.optional(),
|
|
4341
|
+
driveId: z
|
|
4342
|
+
.string()
|
|
4343
|
+
.describe("The ID of the drive (document library) containing the document. Required when the document is in a non-default document library; takes precedence over siteId. Can be resolved from a SharePoint URL with the getSharepointItem action")
|
|
4344
|
+
.optional(),
|
|
4317
4345
|
documentId: z.string().describe("The ID of the document to retrieve"),
|
|
4318
4346
|
});
|
|
4319
4347
|
export const microsoftGetDocumentOutputSchema = z.object({
|
|
@@ -47,7 +47,7 @@ const searchRepository = (_a) => __awaiter(void 0, [_a], void 0, function* ({ pa
|
|
|
47
47
|
name: item.name,
|
|
48
48
|
path: item.path,
|
|
49
49
|
sha: item.sha.slice(0, 7),
|
|
50
|
-
url: item.
|
|
50
|
+
url: item.url,
|
|
51
51
|
score: item.score,
|
|
52
52
|
textMatches: item.text_matches
|
|
53
53
|
? item.text_matches.map(match => {
|
|
@@ -68,7 +68,7 @@ const searchRepository = (_a) => __awaiter(void 0, [_a], void 0, function* ({ pa
|
|
|
68
68
|
const full = commitDetails.find(c => c.data.sha === item.sha);
|
|
69
69
|
return {
|
|
70
70
|
sha: item.sha,
|
|
71
|
-
url: item.
|
|
71
|
+
url: item.url,
|
|
72
72
|
commit: {
|
|
73
73
|
message: item.commit.message,
|
|
74
74
|
author: item.commit.author,
|
|
@@ -76,11 +76,11 @@ const searchRepository = (_a) => __awaiter(void 0, [_a], void 0, function* ({ pa
|
|
|
76
76
|
score: item.score,
|
|
77
77
|
author: (_a = item.author) !== null && _a !== void 0 ? _a : undefined,
|
|
78
78
|
files: ((_b = full === null || full === void 0 ? void 0 : full.data.files) === null || _b === void 0 ? void 0 : _b.slice(0, MAX_FILES_PER_COMMIT).map(f => {
|
|
79
|
-
var _a
|
|
79
|
+
var _a;
|
|
80
80
|
return ({
|
|
81
81
|
filename: f.filename,
|
|
82
82
|
status: f.status,
|
|
83
|
-
patch: (
|
|
83
|
+
patch: (_a = f.patch) === null || _a === void 0 ? void 0 : _a.split("\n").slice(0, MAX_PATCH_LINES).join("\n"),
|
|
84
84
|
});
|
|
85
85
|
})) || [],
|
|
86
86
|
};
|
|
@@ -104,18 +104,18 @@ const searchRepository = (_a) => __awaiter(void 0, [_a], void 0, function* ({ pa
|
|
|
104
104
|
const prIndex = prNumbers.indexOf(item.number);
|
|
105
105
|
const files = isPR && prIndex !== -1
|
|
106
106
|
? prFiles[prIndex].data.slice(0, MAX_FILES_PER_PR).map(f => {
|
|
107
|
-
var _a
|
|
107
|
+
var _a;
|
|
108
108
|
return ({
|
|
109
109
|
filename: f.filename,
|
|
110
110
|
status: f.status,
|
|
111
|
-
patch: (
|
|
111
|
+
patch: (_a = f.patch) === null || _a === void 0 ? void 0 : _a.split("\n").slice(0, MAX_PATCH_LINES).join("\n"),
|
|
112
112
|
});
|
|
113
113
|
})
|
|
114
114
|
: undefined;
|
|
115
115
|
return {
|
|
116
116
|
number: item.number,
|
|
117
117
|
title: item.title,
|
|
118
|
-
|
|
118
|
+
html_url: item.html_url,
|
|
119
119
|
state: item.state,
|
|
120
120
|
isPullRequest: isPR,
|
|
121
121
|
body: item.body,
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { axiosClient } from "../../util/axiosClient.js";
|
|
2
|
+
import { MISSING_AUTH_TOKEN } from "../../util/missingAuthConstants.js";
|
|
3
|
+
import { dedupeByIdKeepFirst, filterReadableFiles } from "./utils.js";
|
|
4
|
+
const ASSIGNED_COMMENTS_QUERY = "followup='assignedcomments' and trashed=false";
|
|
5
|
+
const listFilesWithAssignedComments = async ({ params, authParams, }) => {
|
|
6
|
+
if (!authParams.authToken) {
|
|
7
|
+
return { success: false, error: MISSING_AUTH_TOKEN, files: [] };
|
|
8
|
+
}
|
|
9
|
+
const { limit } = params;
|
|
10
|
+
try {
|
|
11
|
+
const allDrivesUrl = `https://www.googleapis.com/drive/v3/files?q=${encodeURIComponent(ASSIGNED_COMMENTS_QUERY)}&fields=files(id,name,mimeType,webViewLink)&supportsAllDrives=true&includeItemsFromAllDrives=true&corpora=allDrives&pageSize=100`;
|
|
12
|
+
const orgWideUrl = `https://www.googleapis.com/drive/v3/files?q=${encodeURIComponent(ASSIGNED_COMMENTS_QUERY)}&fields=files(id,name,mimeType,webViewLink)&corpora=domain&pageSize=100`;
|
|
13
|
+
const [allDrivesRes, orgWideRes] = await Promise.all([
|
|
14
|
+
axiosClient.get(allDrivesUrl, { headers: { Authorization: `Bearer ${authParams.authToken}` } }),
|
|
15
|
+
axiosClient.get(orgWideUrl, { headers: { Authorization: `Bearer ${authParams.authToken}` } }),
|
|
16
|
+
]);
|
|
17
|
+
const rawFiles = [allDrivesRes.data.files, orgWideRes.data.files]
|
|
18
|
+
.filter(Boolean)
|
|
19
|
+
.flatMap(files => filterReadableFiles(files));
|
|
20
|
+
const files = rawFiles.map((file) => ({
|
|
21
|
+
id: file.id || "",
|
|
22
|
+
name: file.name || "",
|
|
23
|
+
mimeType: file.mimeType || "",
|
|
24
|
+
url: file.webViewLink || "",
|
|
25
|
+
}));
|
|
26
|
+
const dedupedFiles = dedupeByIdKeepFirst(files);
|
|
27
|
+
return {
|
|
28
|
+
success: true,
|
|
29
|
+
files: limit ? dedupedFiles.slice(0, limit) : dedupedFiles,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
catch (error) {
|
|
33
|
+
console.error("Error listing files with assigned comments", error);
|
|
34
|
+
return {
|
|
35
|
+
success: false,
|
|
36
|
+
error: error instanceof Error ? error.message : "Unknown error",
|
|
37
|
+
files: [],
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
export default listFilesWithAssignedComments;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { axiosClient } from "../../util/axiosClient.js";
|
|
11
|
+
const updateServiceDeskRequest = (_a) => __awaiter(void 0, [_a], void 0, function* ({ params, authParams, }) {
|
|
12
|
+
const { issueId, requestTypeId, summary, description, priority, customFields } = params;
|
|
13
|
+
const { authToken, cloudId, baseUrl } = authParams;
|
|
14
|
+
if (!cloudId || !authToken) {
|
|
15
|
+
throw new Error("Valid Cloud ID and auth token are required to update service desk request");
|
|
16
|
+
}
|
|
17
|
+
// Use the regular Jira API for updating service desk requests as they are still Jira issues
|
|
18
|
+
const apiUrl = `https://api.atlassian.com/ex/jira/${cloudId}/rest/api/3/issue/${issueId}`;
|
|
19
|
+
const formattedDescription = description
|
|
20
|
+
? {
|
|
21
|
+
type: "doc",
|
|
22
|
+
version: 1,
|
|
23
|
+
content: [
|
|
24
|
+
{
|
|
25
|
+
type: "paragraph",
|
|
26
|
+
content: [
|
|
27
|
+
{
|
|
28
|
+
type: "text",
|
|
29
|
+
text: description,
|
|
30
|
+
},
|
|
31
|
+
],
|
|
32
|
+
},
|
|
33
|
+
],
|
|
34
|
+
}
|
|
35
|
+
: undefined;
|
|
36
|
+
const payload = {
|
|
37
|
+
fields: Object.assign(Object.assign(Object.assign(Object.assign({}, (summary && { summary })), (formattedDescription && { description: formattedDescription })), (priority && { priority: { name: priority } })), (customFields && Object.assign({}, customFields))),
|
|
38
|
+
};
|
|
39
|
+
try {
|
|
40
|
+
yield axiosClient.put(apiUrl, payload, {
|
|
41
|
+
headers: {
|
|
42
|
+
Authorization: `Bearer ${authToken}`,
|
|
43
|
+
Accept: "application/json",
|
|
44
|
+
"Content-Type": "application/json",
|
|
45
|
+
},
|
|
46
|
+
});
|
|
47
|
+
// Get the updated issue details to return current status and web link
|
|
48
|
+
const getResponse = yield axiosClient.get(apiUrl, {
|
|
49
|
+
headers: {
|
|
50
|
+
Authorization: `Bearer ${authToken}`,
|
|
51
|
+
Accept: "application/json",
|
|
52
|
+
},
|
|
53
|
+
});
|
|
54
|
+
const issueKey = getResponse.data.key;
|
|
55
|
+
const currentStatus = getResponse.data.fields.status.name;
|
|
56
|
+
const webLink = `${baseUrl}/browse/${issueKey}`;
|
|
57
|
+
return {
|
|
58
|
+
success: true,
|
|
59
|
+
issueKey,
|
|
60
|
+
webLink,
|
|
61
|
+
currentStatus,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
console.error("Error updating service desk request:", error);
|
|
66
|
+
return {
|
|
67
|
+
success: false,
|
|
68
|
+
error: error instanceof Error ? error.message : "Unknown error",
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
export default updateServiceDeskRequest;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { getGraphClient, validateAndSanitizeFileName } from "./utils.js";
|
|
1
|
+
import { getDrivePath, getGraphClient, validateAndSanitizeFileName } from "./utils.js";
|
|
2
2
|
const createDocument = async ({ params, authParams, }) => {
|
|
3
|
-
const { folderId, name, content, siteId } = params;
|
|
3
|
+
const { folderId, name, content, siteId, driveId } = params;
|
|
4
4
|
let client = undefined;
|
|
5
5
|
try {
|
|
6
6
|
client = await getGraphClient(authParams);
|
|
@@ -11,9 +11,8 @@ const createDocument = async ({ params, authParams, }) => {
|
|
|
11
11
|
error: "Error while authorizing: " + (error instanceof Error ? error.message : "Unknown error"),
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
|
-
const apiEndpointPrefix = siteId ? `/sites/${siteId}` : "/me";
|
|
15
14
|
const sanitizedFileName = validateAndSanitizeFileName(name);
|
|
16
|
-
const endpoint = `${
|
|
15
|
+
const endpoint = `${getDrivePath({ driveId, siteId })}/items/${folderId || "root"}:/${sanitizedFileName}:/content`;
|
|
17
16
|
try {
|
|
18
17
|
// Create or update the document
|
|
19
18
|
const response = await client.api(endpoint).put(content);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { getGraphClient } from "./utils.js";
|
|
1
|
+
import { getDrivePath, getGraphClient } from "./utils.js";
|
|
2
2
|
const getDocument = async ({ params, authParams, }) => {
|
|
3
|
-
const { siteId, documentId } = params;
|
|
3
|
+
const { siteId, driveId, documentId } = params;
|
|
4
4
|
let client;
|
|
5
5
|
try {
|
|
6
6
|
client = await getGraphClient(authParams);
|
|
@@ -12,10 +12,7 @@ const getDocument = async ({ params, authParams, }) => {
|
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
14
|
try {
|
|
15
|
-
|
|
16
|
-
const endpoint = siteId
|
|
17
|
-
? `/sites/${siteId}/drive/items/${documentId}/content`
|
|
18
|
-
: `/me/drive/items/${documentId}/content`;
|
|
15
|
+
const endpoint = `${getDrivePath({ driveId, siteId })}/items/${documentId}/content`;
|
|
19
16
|
// Fetch the document content
|
|
20
17
|
const response = await client.api(endpoint).get();
|
|
21
18
|
return {
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { getGraphClient } from "./utils.js";
|
|
11
|
+
const sendEmail = (_a) => __awaiter(void 0, [_a], void 0, function* ({ params, authParams, }) {
|
|
12
|
+
const { toRecipients, subject, body, ccRecipients, bccRecipients } = params;
|
|
13
|
+
let client = undefined;
|
|
14
|
+
try {
|
|
15
|
+
client = yield getGraphClient(authParams);
|
|
16
|
+
}
|
|
17
|
+
catch (error) {
|
|
18
|
+
return {
|
|
19
|
+
success: false,
|
|
20
|
+
error: "Error while authorizing: " + (error instanceof Error ? error.message : "Unknown error"),
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
try {
|
|
24
|
+
const message = {
|
|
25
|
+
message: Object.assign(Object.assign({ subject, body: {
|
|
26
|
+
contentType: "HTML",
|
|
27
|
+
content: body,
|
|
28
|
+
}, toRecipients: toRecipients.map(email => ({ emailAddress: { address: email } })) }, (ccRecipients && ccRecipients.length > 0
|
|
29
|
+
? { ccRecipients: ccRecipients.map(email => ({ emailAddress: { address: email } })) }
|
|
30
|
+
: {})), (bccRecipients && bccRecipients.length > 0
|
|
31
|
+
? { bccRecipients: bccRecipients.map(email => ({ emailAddress: { address: email } })) }
|
|
32
|
+
: {})),
|
|
33
|
+
saveToSentItems: true,
|
|
34
|
+
};
|
|
35
|
+
yield client.api("/me/sendMail").post(message);
|
|
36
|
+
return {
|
|
37
|
+
success: true,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
catch (error) {
|
|
41
|
+
console.error(error);
|
|
42
|
+
return {
|
|
43
|
+
success: false,
|
|
44
|
+
error: "Error sending email: " + (error instanceof Error ? error.message : "Unknown error"),
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
export default sendEmail;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { getGraphClient } from "./utils.js";
|
|
1
|
+
import { getDrivePath, getGraphClient } from "./utils.js";
|
|
2
2
|
const updateDocument = async ({ params, authParams, }) => {
|
|
3
|
-
const { documentId, content, siteId } = params;
|
|
3
|
+
const { documentId, content, siteId, driveId } = params;
|
|
4
4
|
let client = undefined;
|
|
5
5
|
try {
|
|
6
6
|
client = await getGraphClient(authParams);
|
|
@@ -12,10 +12,7 @@ const updateDocument = async ({ params, authParams, }) => {
|
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
14
|
try {
|
|
15
|
-
|
|
16
|
-
const endpoint = siteId
|
|
17
|
-
? `/sites/${siteId}/drive/items/${documentId}/content`
|
|
18
|
-
: `/me/drive/items/${documentId}/content`;
|
|
15
|
+
const endpoint = `${getDrivePath({ driveId, siteId })}/items/${documentId}/content`;
|
|
19
16
|
const response = await client.api(endpoint).put(content);
|
|
20
17
|
return {
|
|
21
18
|
success: true,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { getGraphClient } from "./utils.js";
|
|
1
|
+
import { getDrivePath, getGraphClient } from "./utils.js";
|
|
2
2
|
const updateSpreadsheet = async ({ params, authParams, }) => {
|
|
3
|
-
const { spreadsheetId, range, values, siteId } = params;
|
|
3
|
+
const { spreadsheetId, range, values, siteId, driveId } = params;
|
|
4
4
|
let client = undefined;
|
|
5
5
|
try {
|
|
6
6
|
client = await getGraphClient(authParams);
|
|
@@ -11,7 +11,6 @@ const updateSpreadsheet = async ({ params, authParams, }) => {
|
|
|
11
11
|
error: "Error while authorizing: " + (error instanceof Error ? error.message : "Unknown error"),
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
|
-
const apiEndpointPrefix = siteId ? `/sites/${siteId}` : "/me";
|
|
15
14
|
if (!range.includes("!")) {
|
|
16
15
|
return {
|
|
17
16
|
success: false,
|
|
@@ -25,7 +24,7 @@ const updateSpreadsheet = async ({ params, authParams, }) => {
|
|
|
25
24
|
error: "Invalid range format. Both sheet name and cell range must be specified.",
|
|
26
25
|
};
|
|
27
26
|
}
|
|
28
|
-
const apiEndpoint = `${
|
|
27
|
+
const apiEndpoint = `${getDrivePath({ driveId, siteId })}/items/${spreadsheetId}/workbook/worksheets/${sheetName}/range(address='${cellRange}')`;
|
|
29
28
|
try {
|
|
30
29
|
const response = await client.api(apiEndpoint).patch({ values });
|
|
31
30
|
return {
|
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
import { Client } from "@microsoft/microsoft-graph-client";
|
|
2
2
|
import type { AuthParamsType } from "../../autogen/types.js";
|
|
3
3
|
export declare function getGraphClient(authParams: AuthParamsType): Promise<Client>;
|
|
4
|
+
/**
|
|
5
|
+
* Builds the Graph API path prefix addressing a drive. Item IDs are scoped to a drive, so a
|
|
6
|
+
* driveId (when known) addresses the exact document library; /sites/{siteId}/drive only ever
|
|
7
|
+
* reaches the site's default library, and /me/drive the user's personal OneDrive.
|
|
8
|
+
*/
|
|
9
|
+
export declare function getDrivePath({ driveId, siteId }: {
|
|
10
|
+
driveId?: string;
|
|
11
|
+
siteId?: string;
|
|
12
|
+
}): string;
|
|
4
13
|
/**
|
|
5
14
|
* Validates and sanitizes a filename for SharePoint or OneDrive.
|
|
6
15
|
* @param fileName The original filename to validate and sanitize.
|
|
@@ -10,6 +10,14 @@ export async function getGraphClient(authParams) {
|
|
|
10
10
|
},
|
|
11
11
|
});
|
|
12
12
|
}
|
|
13
|
+
/**
|
|
14
|
+
* Builds the Graph API path prefix addressing a drive. Item IDs are scoped to a drive, so a
|
|
15
|
+
* driveId (when known) addresses the exact document library; /sites/{siteId}/drive only ever
|
|
16
|
+
* reaches the site's default library, and /me/drive the user's personal OneDrive.
|
|
17
|
+
*/
|
|
18
|
+
export function getDrivePath({ driveId, siteId }) {
|
|
19
|
+
return driveId ? `/drives/${driveId}` : siteId ? `/sites/${siteId}/drive` : "/me/drive";
|
|
20
|
+
}
|
|
13
21
|
/**
|
|
14
22
|
* Validates and sanitizes a filename for SharePoint or OneDrive.
|
|
15
23
|
* @param fileName The original filename to validate and sanitize.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@credal/actions",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.225",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "AI Actions by Credal AI",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
},
|
|
88
88
|
"overrides": {
|
|
89
89
|
"@xmldom/xmldom": "^0.8.13",
|
|
90
|
-
"axios": "^1.
|
|
90
|
+
"axios": "^1.18.1",
|
|
91
91
|
"fast-xml-parser": "^5.7.0",
|
|
92
92
|
"minimatch": "^10.2.1",
|
|
93
93
|
"file-type": "^22.0.0"
|
package/dist/actions/groups.d.ts
DELETED
package/dist/actions/groups.js
DELETED
|
@@ -1,220 +0,0 @@
|
|
|
1
|
-
import { genericFillTemplateDefinition, confluenceOverwritePageDefinition, googlemapsValidateAddressDefinition, mathAddDefinition, mongoInsertMongoDocDefinition, slackSendMessageDefinition, slackGetChannelMessagesDefinition, snowflakeGetRowByFieldValueDefinition, zendeskCreateZendeskTicketDefinition, zendeskListZendeskTicketsDefinition, zendeskGetTicketDetailsDefinition, zendeskUpdateTicketStatusDefinition, zendeskAddCommentToTicketDefinition, zendeskAssignTicketDefinition, openstreetmapGetLatitudeLongitudeFromLocationDefinition, nwsGetForecastForLocationDefinition, jiraAssignJiraTicketDefinition, jiraCommentJiraTicketDefinition, jiraCreateJiraTicketDefinition, jiraGetJiraTicketDetailsDefinition, jiraGetJiraTicketHistoryDefinition, jiraUpdateJiraTicketDetailsDefinition, jiraUpdateJiraTicketStatusDefinition, googlemapsNearbysearchRestaurantsDefinition, firecrawlScrapeUrlDefinition, resendSendEmailDefinition, linkedinCreateShareLinkedinPostUrlDefinition, googleOauthCreateNewGoogleDocDefinition, xCreateShareXPostUrlDefinition, firecrawlScrapeTweetDataWithNitterDefinition, finnhubSymbolLookupDefinition, finnhubGetBasicFinancialsDefinition, confluenceFetchPageContentDefinition, snowflakeRunSnowflakeQueryDefinition, lookerEnableUserByEmailDefinition, googleOauthUpdateDocDefinition, googleOauthScheduleCalendarMeetingDefinition, googleOauthListCalendarsDefinition, googleOauthListCalendarEventsDefinition, googleOauthUpdateCalendarEventDefinition, googleOauthDeleteCalendarEventDefinition, googleOauthCreateSpreadsheetDefinition, googleOauthUpdateSpreadsheetDefinition, googleOauthCreatePresentationDefinition, googleOauthUpdatePresentationDefinition, googleOauthSearchDriveByKeywordsDefinition, googlemailSearchGmailMessagesDefinition, googlemailListGmailThreadsDefinition, googleOauthListGroupsDefinition, googleOauthGetGroupDefinition, googleOauthListGroupMembersDefinition, googleOauthHasGroupMemberDefinition, googleOauthAddGroupMemberDefinition, googleOauthDeleteGroupMemberDefinition, salesforceUpdateRecordDefinition, salesforceCreateCaseDefinition, salesforceGenerateSalesReportDefinition, salesforceGetRecordDefinition, salesforceGetSalesforceRecordsByQueryDefinition, microsoftMessageTeamsChatDefinition, microsoftMessageTeamsChannelDefinition, asanaCommentTaskDefinition, asanaCreateTaskDefinition, asanaUpdateTaskDefinition, asanaSearchTasksDefinition, githubCreateOrUpdateFileDefinition, githubCreateBranchDefinition, githubCreatePullRequestDefinition, microsoftUpdateSpreadsheetDefinition, microsoftUpdateDocumentDefinition, microsoftCreateDocumentDefinition, microsoftGetDocumentDefinition, salesforceFetchSalesforceSchemaByObjectDefinition, firecrawlDeepResearchDefinition, jiraGetJiraIssuesByQueryDefinition, githubListPullRequestsDefinition, salesforceCreateRecordDefinition, ashbyCreateNoteDefinition, ashbyGetCandidateInfoDefinition, ashbyListCandidatesDefinition, ashbyListCandidateNotesDefinition, ashbySearchCandidatesDefinition, ashbyCreateCandidateDefinition, ashbyUpdateCandidateDefinition, ashbyAddCandidateToProjectDefinition, bingGetTopNSearchResultUrlsDefinition, gongGetGongTranscriptsDefinition, kandjiGetFVRecoveryKeyForDeviceDefinition, asanaListAsanaTasksByProjectDefinition, notionSearchByTitleDefinition, asanaGetTasksDetailsDefinition, jamfGetJamfComputerInventoryDefinition, jamfGetJamfFileVaultRecoveryKeyDefinition, oktaListOktaUsersDefinition, oktaGetOktaUserDefinition, oktaListOktaUserGroupsDefinition, oktaListOktaGroupsDefinition, oktaGetOktaGroupDefinition, oktaListOktaGroupMembersDefinition, oktaRemoveUserFromGroupDefinition, oktaAddUserToGroupDefinition, oktaResetPasswordDefinition, oktaResetMFADefinition, oktaListMFADefinition, } from "./autogen/templates.js";
|
|
2
|
-
export const ACTION_GROUPS = {
|
|
3
|
-
GENERIC: {
|
|
4
|
-
description: "Generic utility actions",
|
|
5
|
-
actions: [genericFillTemplateDefinition],
|
|
6
|
-
},
|
|
7
|
-
ASANA: {
|
|
8
|
-
description: "Actions for interacting with Asana",
|
|
9
|
-
actions: [
|
|
10
|
-
asanaCommentTaskDefinition,
|
|
11
|
-
asanaCreateTaskDefinition,
|
|
12
|
-
asanaUpdateTaskDefinition,
|
|
13
|
-
asanaSearchTasksDefinition,
|
|
14
|
-
asanaListAsanaTasksByProjectDefinition,
|
|
15
|
-
asanaGetTasksDetailsDefinition,
|
|
16
|
-
],
|
|
17
|
-
},
|
|
18
|
-
SLACK_LIST_CONVERSATIONS: {
|
|
19
|
-
description: "Actions for interacting with Slack",
|
|
20
|
-
actions: [slackSendMessageDefinition, slackGetChannelMessagesDefinition],
|
|
21
|
-
},
|
|
22
|
-
CONFLUENCE: {
|
|
23
|
-
description: "Action for interacting with Confluence",
|
|
24
|
-
actions: [confluenceOverwritePageDefinition, confluenceFetchPageContentDefinition],
|
|
25
|
-
},
|
|
26
|
-
MATH_ADD: {
|
|
27
|
-
description: "Action for adding two numbers",
|
|
28
|
-
actions: [mathAddDefinition],
|
|
29
|
-
},
|
|
30
|
-
GOOGLE_MAPS: {
|
|
31
|
-
description: "Action for interacting with Google Maps",
|
|
32
|
-
actions: [googlemapsValidateAddressDefinition, googlemapsNearbysearchRestaurantsDefinition],
|
|
33
|
-
},
|
|
34
|
-
GOOGLE_DRIVE: {
|
|
35
|
-
description: "Action for interacting with Google Drive",
|
|
36
|
-
actions: [
|
|
37
|
-
googleOauthCreateNewGoogleDocDefinition,
|
|
38
|
-
googleOauthUpdateDocDefinition,
|
|
39
|
-
googleOauthCreateSpreadsheetDefinition,
|
|
40
|
-
googleOauthUpdateSpreadsheetDefinition,
|
|
41
|
-
googleOauthCreatePresentationDefinition,
|
|
42
|
-
googleOauthUpdatePresentationDefinition,
|
|
43
|
-
googleOauthSearchDriveByKeywordsDefinition,
|
|
44
|
-
],
|
|
45
|
-
},
|
|
46
|
-
GOOGLE_CALENDAR: {
|
|
47
|
-
description: "Actions for interacting with Google Calendar",
|
|
48
|
-
actions: [
|
|
49
|
-
googleOauthScheduleCalendarMeetingDefinition,
|
|
50
|
-
googleOauthListCalendarsDefinition,
|
|
51
|
-
googleOauthListCalendarEventsDefinition,
|
|
52
|
-
googleOauthUpdateCalendarEventDefinition,
|
|
53
|
-
googleOauthDeleteCalendarEventDefinition,
|
|
54
|
-
],
|
|
55
|
-
},
|
|
56
|
-
GMAIL: {
|
|
57
|
-
description: "Actions for interacting with Gmail",
|
|
58
|
-
actions: [googlemailSearchGmailMessagesDefinition, googlemailListGmailThreadsDefinition],
|
|
59
|
-
},
|
|
60
|
-
LINKEDIN_SHARE_POST: {
|
|
61
|
-
description: "Action for creating a share post url on linkedin",
|
|
62
|
-
actions: [linkedinCreateShareLinkedinPostUrlDefinition],
|
|
63
|
-
},
|
|
64
|
-
ZENDESK_ACTIONS: {
|
|
65
|
-
description: "Actions for interacting with Zendesk",
|
|
66
|
-
actions: [
|
|
67
|
-
zendeskCreateZendeskTicketDefinition,
|
|
68
|
-
zendeskListZendeskTicketsDefinition,
|
|
69
|
-
zendeskGetTicketDetailsDefinition,
|
|
70
|
-
zendeskUpdateTicketStatusDefinition,
|
|
71
|
-
zendeskAddCommentToTicketDefinition,
|
|
72
|
-
zendeskAssignTicketDefinition,
|
|
73
|
-
],
|
|
74
|
-
},
|
|
75
|
-
BING_SEARCH: {
|
|
76
|
-
description: "Action for searching Bing",
|
|
77
|
-
actions: [bingGetTopNSearchResultUrlsDefinition],
|
|
78
|
-
},
|
|
79
|
-
MONGO_INSERT_DOC: {
|
|
80
|
-
description: "Action for inserting a document into a MongoDB collection",
|
|
81
|
-
actions: [mongoInsertMongoDocDefinition],
|
|
82
|
-
},
|
|
83
|
-
SNOWFLAKE_ACTIONS: {
|
|
84
|
-
description: "Action for getting content from a Snowflake table",
|
|
85
|
-
actions: [snowflakeGetRowByFieldValueDefinition, snowflakeRunSnowflakeQueryDefinition],
|
|
86
|
-
},
|
|
87
|
-
JIRA_ACTIONS: {
|
|
88
|
-
description: "Action for interacting with Jira tickets",
|
|
89
|
-
actions: [
|
|
90
|
-
jiraAssignJiraTicketDefinition,
|
|
91
|
-
jiraCreateJiraTicketDefinition,
|
|
92
|
-
jiraCommentJiraTicketDefinition,
|
|
93
|
-
jiraGetJiraTicketDetailsDefinition,
|
|
94
|
-
jiraGetJiraTicketHistoryDefinition,
|
|
95
|
-
jiraUpdateJiraTicketDetailsDefinition,
|
|
96
|
-
jiraUpdateJiraTicketStatusDefinition,
|
|
97
|
-
jiraGetJiraIssuesByQueryDefinition,
|
|
98
|
-
],
|
|
99
|
-
},
|
|
100
|
-
OPENSTREETMAP_GET_LATITUDE_LONGITUDE_FROM_LOCATION: {
|
|
101
|
-
description: "Action for getting the latitude and longitude of a location",
|
|
102
|
-
actions: [openstreetmapGetLatitudeLongitudeFromLocationDefinition],
|
|
103
|
-
},
|
|
104
|
-
NWS_GET_FORECAST_FOR_LOCATION: {
|
|
105
|
-
description: "Action for getting the weather forecast for a location",
|
|
106
|
-
actions: [nwsGetForecastForLocationDefinition],
|
|
107
|
-
},
|
|
108
|
-
FIRECRAWL: {
|
|
109
|
-
description: "Actions for interacting with Firecrawl",
|
|
110
|
-
actions: [
|
|
111
|
-
firecrawlScrapeUrlDefinition,
|
|
112
|
-
firecrawlScrapeTweetDataWithNitterDefinition,
|
|
113
|
-
firecrawlDeepResearchDefinition,
|
|
114
|
-
],
|
|
115
|
-
},
|
|
116
|
-
RESEND: {
|
|
117
|
-
description: "Action for sending an email",
|
|
118
|
-
actions: [resendSendEmailDefinition],
|
|
119
|
-
},
|
|
120
|
-
X: {
|
|
121
|
-
description: "Actions for interacting with X(formerly twitter)",
|
|
122
|
-
actions: [xCreateShareXPostUrlDefinition],
|
|
123
|
-
},
|
|
124
|
-
GONG: {
|
|
125
|
-
description: "Actions for interacting with Gong",
|
|
126
|
-
actions: [gongGetGongTranscriptsDefinition],
|
|
127
|
-
},
|
|
128
|
-
FINNHUB: {
|
|
129
|
-
description: "Action for interacting with Finnhub for stock market data",
|
|
130
|
-
actions: [finnhubSymbolLookupDefinition, finnhubGetBasicFinancialsDefinition],
|
|
131
|
-
},
|
|
132
|
-
JAMF: {
|
|
133
|
-
description: "Actions for interacting with Jamf",
|
|
134
|
-
actions: [jamfGetJamfComputerInventoryDefinition, jamfGetJamfFileVaultRecoveryKeyDefinition],
|
|
135
|
-
},
|
|
136
|
-
LOOKER: {
|
|
137
|
-
description: "Actions for interacting with Looker",
|
|
138
|
-
actions: [lookerEnableUserByEmailDefinition],
|
|
139
|
-
},
|
|
140
|
-
SALESFORCE: {
|
|
141
|
-
description: "Actions for interacting with Salesforce",
|
|
142
|
-
actions: [
|
|
143
|
-
salesforceUpdateRecordDefinition,
|
|
144
|
-
salesforceCreateRecordDefinition,
|
|
145
|
-
salesforceCreateCaseDefinition,
|
|
146
|
-
salesforceGenerateSalesReportDefinition,
|
|
147
|
-
salesforceGetRecordDefinition,
|
|
148
|
-
salesforceGetSalesforceRecordsByQueryDefinition,
|
|
149
|
-
salesforceFetchSalesforceSchemaByObjectDefinition,
|
|
150
|
-
],
|
|
151
|
-
},
|
|
152
|
-
MICROSOFT: {
|
|
153
|
-
description: "Actions for interacting with Microsoft 365",
|
|
154
|
-
actions: [
|
|
155
|
-
microsoftMessageTeamsChatDefinition,
|
|
156
|
-
microsoftMessageTeamsChannelDefinition,
|
|
157
|
-
microsoftUpdateSpreadsheetDefinition,
|
|
158
|
-
microsoftUpdateDocumentDefinition,
|
|
159
|
-
microsoftCreateDocumentDefinition,
|
|
160
|
-
microsoftGetDocumentDefinition,
|
|
161
|
-
],
|
|
162
|
-
},
|
|
163
|
-
KANDJI: {
|
|
164
|
-
description: "Actions for interacting with Kandji",
|
|
165
|
-
actions: [kandjiGetFVRecoveryKeyForDeviceDefinition],
|
|
166
|
-
},
|
|
167
|
-
GITHUB: {
|
|
168
|
-
description: "Actions for interacting with GitHub",
|
|
169
|
-
actions: [
|
|
170
|
-
githubCreateOrUpdateFileDefinition,
|
|
171
|
-
githubCreateBranchDefinition,
|
|
172
|
-
githubCreatePullRequestDefinition,
|
|
173
|
-
githubListPullRequestsDefinition,
|
|
174
|
-
],
|
|
175
|
-
},
|
|
176
|
-
ASHBY: {
|
|
177
|
-
description: "Actions for interacting with Ashby",
|
|
178
|
-
actions: [
|
|
179
|
-
ashbyCreateNoteDefinition,
|
|
180
|
-
ashbyGetCandidateInfoDefinition,
|
|
181
|
-
ashbyListCandidatesDefinition,
|
|
182
|
-
ashbyListCandidateNotesDefinition,
|
|
183
|
-
ashbySearchCandidatesDefinition,
|
|
184
|
-
ashbyCreateCandidateDefinition,
|
|
185
|
-
ashbyUpdateCandidateDefinition,
|
|
186
|
-
ashbyAddCandidateToProjectDefinition,
|
|
187
|
-
],
|
|
188
|
-
},
|
|
189
|
-
NOTION: {
|
|
190
|
-
description: "Actions for interacting with Notion",
|
|
191
|
-
actions: [notionSearchByTitleDefinition],
|
|
192
|
-
},
|
|
193
|
-
GOOGLE_GROUPS: {
|
|
194
|
-
description: "Google Workspace Groups management actions",
|
|
195
|
-
actions: [
|
|
196
|
-
googleOauthListGroupsDefinition,
|
|
197
|
-
googleOauthGetGroupDefinition,
|
|
198
|
-
googleOauthListGroupMembersDefinition,
|
|
199
|
-
googleOauthHasGroupMemberDefinition,
|
|
200
|
-
googleOauthAddGroupMemberDefinition,
|
|
201
|
-
googleOauthDeleteGroupMemberDefinition,
|
|
202
|
-
],
|
|
203
|
-
},
|
|
204
|
-
OKTA: {
|
|
205
|
-
description: "Actions for interacting with Okta",
|
|
206
|
-
actions: [
|
|
207
|
-
oktaListOktaUsersDefinition,
|
|
208
|
-
oktaGetOktaUserDefinition,
|
|
209
|
-
oktaListOktaUserGroupsDefinition,
|
|
210
|
-
oktaListOktaGroupsDefinition,
|
|
211
|
-
oktaGetOktaGroupDefinition,
|
|
212
|
-
oktaListOktaGroupMembersDefinition,
|
|
213
|
-
oktaRemoveUserFromGroupDefinition,
|
|
214
|
-
oktaAddUserToGroupDefinition,
|
|
215
|
-
oktaResetPasswordDefinition,
|
|
216
|
-
oktaResetMFADefinition,
|
|
217
|
-
oktaListMFADefinition,
|
|
218
|
-
],
|
|
219
|
-
},
|
|
220
|
-
};
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
import { WebClient } from "@slack/web-api";
|
|
11
|
-
import { MISSING_AUTH_TOKEN } from "../../util/missingAuthConstants.js";
|
|
12
|
-
const archiveChannel = (_a) => __awaiter(void 0, [_a], void 0, function* ({ params, authParams, }) {
|
|
13
|
-
if (!authParams.authToken) {
|
|
14
|
-
throw new Error(MISSING_AUTH_TOKEN);
|
|
15
|
-
}
|
|
16
|
-
try {
|
|
17
|
-
const client = new WebClient(authParams.authToken);
|
|
18
|
-
const { channelId } = params;
|
|
19
|
-
const result = yield client.conversations.archive({ channel: channelId });
|
|
20
|
-
if (!result.ok) {
|
|
21
|
-
return {
|
|
22
|
-
success: false,
|
|
23
|
-
error: result.error || "Unknown error archiving channel",
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
return { success: true };
|
|
27
|
-
}
|
|
28
|
-
catch (error) {
|
|
29
|
-
return {
|
|
30
|
-
success: false,
|
|
31
|
-
error: error instanceof Error ? error.message : "Unknown error archiving channel",
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
export default archiveChannel;
|