@slack/bolt 3.17.2-rc.1 → 3.18.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@slack/bolt",
3
- "version": "3.17.2-rc.1",
3
+ "version": "3.18.0",
4
4
  "description": "A framework for building Slack apps, fast.",
5
5
  "author": "Slack Technologies, LLC",
6
6
  "license": "MIT",
@@ -42,7 +42,7 @@
42
42
  "dependencies": {
43
43
  "@slack/logger": "^4.0.0",
44
44
  "@slack/oauth": "^2.6.2",
45
- "@slack/socket-mode": "^1.3.5-rc.1",
45
+ "@slack/socket-mode": "^1.3.3",
46
46
  "@slack/types": "^2.11.0",
47
47
  "@slack/web-api": "^6.11.2",
48
48
  "@types/express": "^4.16.1",
@@ -1,63 +0,0 @@
1
- import { FunctionsCompleteErrorResponse, FunctionsCompleteSuccessResponse } from '@slack/web-api';
2
- import { Middleware, AllMiddlewareArgs, AnyMiddlewareArgs, SlackEventMiddlewareArgs } from './types';
3
- /** Interfaces */
4
- export interface FunctionCompleteArguments {
5
- outputs?: {
6
- [key: string]: any;
7
- };
8
- }
9
- export interface FunctionFailArguments {
10
- error: string;
11
- }
12
- export interface FunctionCompleteFn {
13
- (params?: FunctionCompleteArguments): Promise<FunctionsCompleteSuccessResponse>;
14
- }
15
- export interface FunctionFailFn {
16
- (params: FunctionFailArguments): Promise<FunctionsCompleteErrorResponse>;
17
- }
18
- export interface WorkflowFunctionExecuteMiddlewareArgs extends SlackEventMiddlewareArgs<'function_executed'> {
19
- complete: FunctionCompleteFn;
20
- fail: FunctionFailFn;
21
- }
22
- /** Types */
23
- export declare type SlackWorkflowFunctionMiddlewareArgs = WorkflowFunctionExecuteMiddlewareArgs;
24
- export declare type WorkflowFunctionExecuteMiddleware = Middleware<WorkflowFunctionExecuteMiddlewareArgs>;
25
- export declare type WorkflowFunctionMiddleware = WorkflowFunctionExecuteMiddleware[];
26
- export declare type AllWorkflowFunctionMiddlewareArgs<T extends SlackWorkflowFunctionMiddlewareArgs = SlackWorkflowFunctionMiddlewareArgs> = T & AllMiddlewareArgs;
27
- /** Class */
28
- export declare class WorkflowFunction {
29
- /** Function callback_id */
30
- callbackId: string;
31
- private middleware;
32
- constructor(callbackId: string, middleware: WorkflowFunctionMiddleware);
33
- getMiddleware(): Middleware<AnyMiddlewareArgs>;
34
- private matchesConstraints;
35
- private processEvent;
36
- private getStepMiddleware;
37
- }
38
- /** Helper Functions */
39
- export declare function validate(callbackId: string, listeners: WorkflowFunctionMiddleware): void;
40
- /**
41
- * `processStepMiddleware()` invokes each callback for lifecycle event
42
- * @param args workflow_step_edit action
43
- */
44
- export declare function processStepMiddleware(args: AllWorkflowFunctionMiddlewareArgs, middleware: WorkflowFunctionMiddleware): Promise<void>;
45
- export declare function isFunctionEvent(args: AnyMiddlewareArgs): args is AllWorkflowFunctionMiddlewareArgs;
46
- /**
47
- * Factory for `complete()` utility
48
- * @param args function_executed event
49
- */
50
- export declare function createFunctionComplete(args: AllWorkflowFunctionMiddlewareArgs<WorkflowFunctionExecuteMiddlewareArgs>): FunctionCompleteFn;
51
- /**
52
- * Factory for `fail()` utility
53
- * @param args function_executed event
54
- */
55
- export declare function createFunctionFail(args: AllWorkflowFunctionMiddlewareArgs<WorkflowFunctionExecuteMiddlewareArgs>): FunctionFailFn;
56
- /**
57
- * `prepareFunctionArgs()` takes in a function's args and:
58
- * 1. removes the next() passed in from App-level middleware processing
59
- * - events will *not* continue down global middleware chain to subsequent listeners
60
- * 2. augments args with step lifecycle-specific properties/utilities
61
- * */
62
- export declare function prepareFunctionArgs(args: any): AllWorkflowFunctionMiddlewareArgs;
63
- //# sourceMappingURL=WorkflowFunction.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WorkflowFunction.d.ts","sourceRoot":"","sources":["../src/WorkflowFunction.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,8BAA8B,EAC9B,gCAAgC,EACjC,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,EAEzB,MAAM,SAAS,CAAC;AAIjB,iBAAiB;AAEjB,MAAM,WAAW,yBAAyB;IACxC,OAAO,CAAC,EAAE;QACR,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,CAAC,MAAM,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,gCAAgC,CAAC,CAAC;CACjF;AAED,MAAM,WAAW,cAAc;IAC7B,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;CAC1E;AAED,MAAM,WAAW,qCAAsC,SAAQ,wBAAwB,CAAC,mBAAmB,CAAC;IAC1G,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,IAAI,EAAE,cAAc,CAAC;CACtB;AAED,YAAY;AAEZ,oBAAY,mCAAmC,GAAG,qCAAqC,CAAC;AAExF,oBAAY,iCAAiC,GAAG,UAAU,CAAC,qCAAqC,CAAC,CAAC;AAElG,oBAAY,0BAA0B,GAAG,iCAAiC,EAAE,CAAC;AAE7E,oBAAY,iCAAiC,CAC1C,CAAC,SAAS,mCAAmC,GAAG,mCAAmC,IAAI,CAAC,GAAG,iBAAiB,CAAC;AAMhH,YAAY;AAEZ,qBAAa,gBAAgB;IAC3B,2BAA2B;IACpB,UAAU,EAAE,MAAM,CAAC;IAE1B,OAAO,CAAC,UAAU,CAA6B;gBAG7C,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,0BAA0B;IAQjC,aAAa,IAAI,UAAU,CAAC,iBAAiB,CAAC;IASrD,OAAO,CAAC,kBAAkB;YAIZ,YAAY;IAM1B,OAAO,CAAC,iBAAiB;CAG1B;AAED,uBAAuB;AAEvB,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,0BAA0B,GAAG,IAAI,CAcxF;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,iCAAiC,EACvC,UAAU,EAAE,0BAA0B,GACrC,OAAO,CAAC,IAAI,CAAC,CAWf;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,IAAI,iCAAiC,CAElG;AAOD;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,iCAAiC,CAAC,qCAAqC,CAAC,GAC7E,kBAAkB,CAapB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,iCAAiC,CAAC,qCAAqC,CAAC,GAC7E,cAAc,CAiBhB;AAED;;;;;KAKK;AACL,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,iCAAiC,CAgBhF"}
@@ -1,130 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.prepareFunctionArgs = exports.createFunctionFail = exports.createFunctionComplete = exports.isFunctionEvent = exports.processStepMiddleware = exports.validate = exports.WorkflowFunction = void 0;
7
- /* eslint-disable @typescript-eslint/no-explicit-any */
8
- const web_api_1 = require("@slack/web-api");
9
- const process_1 = __importDefault(require("./middleware/process"));
10
- const errors_1 = require("./errors");
11
- /** Constants */
12
- const VALID_PAYLOAD_TYPES = new Set(['function_executed']);
13
- /** Class */
14
- class WorkflowFunction {
15
- constructor(callbackId, middleware) {
16
- validate(callbackId, middleware);
17
- this.callbackId = callbackId;
18
- this.middleware = middleware;
19
- }
20
- getMiddleware() {
21
- return async (args) => {
22
- if (isFunctionEvent(args) && this.matchesConstraints(args)) {
23
- return this.processEvent(args);
24
- }
25
- return args.next();
26
- };
27
- }
28
- matchesConstraints(args) {
29
- return args.payload.function.callback_id === this.callbackId;
30
- }
31
- async processEvent(args) {
32
- const functionArgs = prepareFunctionArgs(args);
33
- const stepMiddleware = this.getStepMiddleware();
34
- return processStepMiddleware(functionArgs, stepMiddleware);
35
- }
36
- getStepMiddleware() {
37
- return this.middleware;
38
- }
39
- }
40
- exports.WorkflowFunction = WorkflowFunction;
41
- /** Helper Functions */
42
- function validate(callbackId, listeners) {
43
- // Ensure callbackId is valid
44
- if (typeof callbackId !== 'string') {
45
- const errorMsg = 'WorkflowFunction expects a callback_id as the first argument';
46
- throw new errors_1.WorkflowFunctionInitializationError(errorMsg);
47
- }
48
- // Ensure all listeners are functions
49
- listeners.forEach((listener) => {
50
- if (!(listener instanceof Function)) {
51
- const errorMsg = 'All WorkflowFunction listeners must be functions';
52
- throw new errors_1.WorkflowFunctionInitializationError(errorMsg);
53
- }
54
- });
55
- }
56
- exports.validate = validate;
57
- /**
58
- * `processStepMiddleware()` invokes each callback for lifecycle event
59
- * @param args workflow_step_edit action
60
- */
61
- async function processStepMiddleware(args, middleware) {
62
- const { context, client, logger } = args;
63
- const callbacks = [...middleware];
64
- const lastCallback = callbacks.pop();
65
- if (lastCallback !== undefined) {
66
- await (0, process_1.default)(callbacks, args, context, client, logger, async () => lastCallback({ ...args, context, client, logger }));
67
- }
68
- }
69
- exports.processStepMiddleware = processStepMiddleware;
70
- function isFunctionEvent(args) {
71
- return VALID_PAYLOAD_TYPES.has(args.payload.type);
72
- }
73
- exports.isFunctionEvent = isFunctionEvent;
74
- function selectToken(context) {
75
- // If attachFunctionToken = false, fallback to botToken or userToken
76
- return context.functionBotToken ? context.functionBotToken : context.botToken || context.userToken;
77
- }
78
- /**
79
- * Factory for `complete()` utility
80
- * @param args function_executed event
81
- */
82
- function createFunctionComplete(args) {
83
- const { context, client, payload: { function_execution_id }, } = args;
84
- const token = selectToken(context);
85
- return (params = {}) => client.functions.completeSuccess({
86
- token,
87
- outputs: params.outputs || {},
88
- function_execution_id,
89
- });
90
- }
91
- exports.createFunctionComplete = createFunctionComplete;
92
- /**
93
- * Factory for `fail()` utility
94
- * @param args function_executed event
95
- */
96
- function createFunctionFail(args) {
97
- const { context, client, payload: { function_execution_id }, } = args;
98
- const token = selectToken(context);
99
- return (params) => {
100
- const { error } = params !== null && params !== void 0 ? params : {};
101
- return client.functions.completeError({
102
- token,
103
- error,
104
- function_execution_id,
105
- });
106
- };
107
- }
108
- exports.createFunctionFail = createFunctionFail;
109
- /**
110
- * `prepareFunctionArgs()` takes in a function's args and:
111
- * 1. removes the next() passed in from App-level middleware processing
112
- * - events will *not* continue down global middleware chain to subsequent listeners
113
- * 2. augments args with step lifecycle-specific properties/utilities
114
- * */
115
- function prepareFunctionArgs(args) {
116
- const { next: _next, ...functionArgs } = args;
117
- const preparedArgs = { ...functionArgs };
118
- const token = selectToken(functionArgs.context);
119
- // Making calls with a functionBotToken establishes continuity between
120
- // a function_executed event and subsequent interactive events (actions)
121
- const client = new web_api_1.WebClient(token, { ...functionArgs.client });
122
- preparedArgs.client = client;
123
- // Utility args
124
- preparedArgs.inputs = preparedArgs.event.inputs;
125
- preparedArgs.complete = createFunctionComplete(preparedArgs);
126
- preparedArgs.fail = createFunctionFail(preparedArgs);
127
- return preparedArgs;
128
- }
129
- exports.prepareFunctionArgs = prepareFunctionArgs;
130
- //# sourceMappingURL=WorkflowFunction.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WorkflowFunction.js","sourceRoot":"","sources":["../src/WorkflowFunction.ts"],"names":[],"mappings":";;;;;;AAAA,uDAAuD;AACvD,4CAIwB;AAQxB,mEAAqD;AACrD,qCAA+D;AAsC/D,gBAAgB;AAEhB,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAE3D,YAAY;AAEZ,MAAa,gBAAgB;IAM3B,YACE,UAAkB,EAClB,UAAsC;QAEtC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAEjC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAEM,aAAa;QAClB,OAAO,KAAK,EAAE,IAAI,EAAgB,EAAE;YAClC,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE;gBAC1D,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;aAChC;YACD,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC,CAAC;IACJ,CAAC;IAEO,kBAAkB,CAAC,IAAyC;QAClE,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,KAAK,IAAI,CAAC,UAAU,CAAC;IAC/D,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,IAAuC;QAChE,MAAM,YAAY,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAChD,OAAO,qBAAqB,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IAC7D,CAAC;IAEO,iBAAiB;QACvB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;CACF;AAtCD,4CAsCC;AAED,uBAAuB;AAEvB,SAAgB,QAAQ,CAAC,UAAkB,EAAE,SAAqC;IAChF,6BAA6B;IAC7B,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;QAClC,MAAM,QAAQ,GAAG,8DAA8D,CAAC;QAChF,MAAM,IAAI,4CAAmC,CAAC,QAAQ,CAAC,CAAC;KACzD;IAED,qCAAqC;IACrC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC7B,IAAI,CAAC,CAAC,QAAQ,YAAY,QAAQ,CAAC,EAAE;YACnC,MAAM,QAAQ,GAAG,kDAAkD,CAAC;YACpE,MAAM,IAAI,4CAAmC,CAAC,QAAQ,CAAC,CAAC;SACzD;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAdD,4BAcC;AAED;;;GAGG;AACI,KAAK,UAAU,qBAAqB,CACzC,IAAuC,EACvC,UAAsC;IAEtC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACzC,MAAM,SAAS,GAAG,CAAC,GAAG,UAAU,CAAoC,CAAC;IACrE,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,EAAE,CAAC;IAErC,IAAI,YAAY,KAAK,SAAS,EAAE;QAC9B,MAAM,IAAA,iBAAiB,EACrB,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EACxC,KAAK,IAAI,EAAE,CAAC,YAAY,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAC/D,CAAC;KACH;AACH,CAAC;AAdD,sDAcC;AAED,SAAgB,eAAe,CAAC,IAAuB;IACrD,OAAO,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACpD,CAAC;AAFD,0CAEC;AAED,SAAS,WAAW,CAAC,OAAgB;IACnC,oEAAoE;IACpE,OAAO,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC;AACrG,CAAC;AAED;;;GAGG;AACH,SAAgB,sBAAsB,CACpC,IAA8E;IAE9E,MAAM,EACJ,OAAO,EACP,MAAM,EACN,OAAO,EAAE,EAAE,qBAAqB,EAAE,GACnC,GAAG,IAAI,CAAC;IACT,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAEnC,OAAO,CAAC,SAA4C,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC;QAC1F,KAAK;QACL,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE;QAC7B,qBAAqB;KACtB,CAAC,CAAC;AACL,CAAC;AAfD,wDAeC;AAED;;;GAGG;AACH,SAAgB,kBAAkB,CAChC,IAA8E;IAE9E,MAAM,EACJ,OAAO,EACP,MAAM,EACN,OAAO,EAAE,EAAE,qBAAqB,EAAE,GACnC,GAAG,IAAI,CAAC;IACT,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAEnC,OAAO,CAAC,MAAqC,EAAE,EAAE;QAC/C,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC;QAE/B,OAAO,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC;YACpC,KAAK;YACL,KAAK;YACL,qBAAqB;SACtB,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAnBD,gDAmBC;AAED;;;;;KAKK;AACL,SAAgB,mBAAmB,CAAC,IAAS;IAC3C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,GAAG,IAAI,CAAC;IAC9C,MAAM,YAAY,GAAQ,EAAE,GAAG,YAAY,EAAE,CAAC;IAC9C,MAAM,KAAK,GAAG,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAEhD,sEAAsE;IACtE,wEAAwE;IACxE,MAAM,MAAM,GAAG,IAAI,mBAAS,CAAC,KAAK,EAAE,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;IAChE,YAAY,CAAC,MAAM,GAAG,MAAM,CAAC;IAE7B,eAAe;IACf,YAAY,CAAC,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC;IAChD,YAAY,CAAC,QAAQ,GAAG,sBAAsB,CAAC,YAAY,CAAC,CAAC;IAC7D,YAAY,CAAC,IAAI,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;IAErD,OAAO,YAAY,CAAC;AACtB,CAAC;AAhBD,kDAgBC"}