@slack/bolt 3.20.0 → 3.21.1

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/README.md CHANGED
@@ -45,29 +45,33 @@ Apps typically react to a collection of incoming events, which can correspond [E
45
45
  request, there's a method to build a listener function.
46
46
 
47
47
  ```js
48
+ // Listen for an action from a Block Kit element (buttons, select menus, date pickers, etc)
49
+ app.action(actionId, fn);
50
+
51
+ // Listen for dialog submissions
52
+ app.action({ callback_id: callbackId }, fn);
53
+
54
+ // Listen for slash commands
55
+ app.command(commandName, fn);
56
+
48
57
  // Listen for an event from the Events API
49
58
  app.event(eventType, fn);
50
59
 
60
+ // Listen for a custom step execution from a workflow
61
+ app.function(callbackId, fn)
62
+
51
63
  // Convenience method to listen to only `message` events using a string or RegExp
52
64
  app.message([pattern ,] fn);
53
65
 
54
- // Listen for an action from a Block Kit element (buttons, select menus, date pickers, etc)
55
- app.action(actionId, fn);
56
-
57
- // Listen for dialog submissions
58
- app.action({ callback_id: callbackId }, fn);
66
+ // Listen for options requests (from select menus with an external data source)
67
+ app.options(actionId, fn);
59
68
 
60
69
  // Listen for a global or message shortcuts
61
70
  app.shortcut(callbackId, fn);
62
71
 
63
- // Listen for slash commands
64
- app.command(commandName, fn);
65
-
66
72
  // Listen for view_submission modal events
67
73
  app.view(callbackId, fn);
68
74
 
69
- // Listen for options requests (from select menus with an external data source)
70
- app.options(actionId, fn);
71
75
  ```
72
76
 
73
77
  ## Making things happen
@@ -83,6 +87,8 @@ Most of the app's functionality will be inside listener functions (the `fn` para
83
87
  | `respond` | Function that responds to an incoming event **if** it contains a `response_url` (actions, shortcuts, view submissions, and slash commands). `respond` returns a promise that resolves with the results of responding using the `response_url`.
84
88
  | `context` | Event context. This object contains data about the event and the app, such as the `botId`. Middleware can add additional context before the event is passed to listeners.
85
89
  | `body` | Object that contains the entire body of the request (superset of `payload`). Some accessory data is only available outside of the payload (such as `trigger_id` and `authorizations`).
90
+ | `complete` | Function used to signal the successful completion of a custom step execution. This tells Slack to proceed with the next steps in the workflow. This argument is only available with the `.function` and `.action` listener when handling custom workflow step executions.
91
+ | `fail` | Function used to signal that a custom step failed to complete. This tells Slack to stop the workflow execution. This argument is only available with the `.function` and `.action` listener when handling custom workflow step executions.
86
92
 
87
93
 
88
94
  The arguments are grouped into properties of one object, so that it's easier to pick just the ones your listener needs (using
package/dist/App.d.ts CHANGED
@@ -11,6 +11,7 @@ import { WorkflowStep } from './WorkflowStep';
11
11
  import { Middleware, AnyMiddlewareArgs, SlackActionMiddlewareArgs, SlackCommandMiddlewareArgs, SlackEventMiddlewareArgs, SlackOptionsMiddlewareArgs, SlackShortcutMiddlewareArgs, SlackViewMiddlewareArgs, SlackAction, SlackShortcut, Context, OptionsSource, BlockAction, SlackViewAction, Receiver, ReceiverEvent, SlackOptions } from './types';
12
12
  import { CodedError } from './errors';
13
13
  import { StringIndexed } from './types/helpers';
14
+ import { CustomFunctionMiddleware } from './CustomFunction';
14
15
  /** App initialization options */
15
16
  export interface AppOptions {
16
17
  signingSecret?: HTTPReceiverOptions['signingSecret'];
@@ -44,6 +45,7 @@ export interface AppOptions {
44
45
  tokenVerificationEnabled?: boolean;
45
46
  deferInitialization?: boolean;
46
47
  extendedErrorHandler?: boolean;
48
+ attachFunctionToken?: boolean;
47
49
  }
48
50
  export { LogLevel, Logger } from '@slack/logger';
49
51
  /** Authorization function - seeds the middleware processing and listeners with an authorization context */
@@ -143,8 +145,10 @@ export default class App<AppCustomContext extends StringIndexed = StringIndexed>
143
145
  private argAuthorization?;
144
146
  private tokenVerificationEnabled;
145
147
  private initialized;
146
- constructor({ signingSecret, endpoints, port, customRoutes, agent, clientTls, receiver, convoStore, token, appToken, botId, botUserId, authorize, logger, logLevel, ignoreSelf, clientOptions, processBeforeResponse, signatureVerification, clientId, clientSecret, stateSecret, redirectUri, installationStore, scopes, installerOptions, socketMode, developerMode, tokenVerificationEnabled, extendedErrorHandler, deferInitialization, }?: AppOptions);
148
+ private attachFunctionToken;
149
+ constructor({ signingSecret, endpoints, port, customRoutes, agent, clientTls, receiver, convoStore, token, appToken, botId, botUserId, authorize, logger, logLevel, ignoreSelf, clientOptions, processBeforeResponse, signatureVerification, clientId, clientSecret, stateSecret, redirectUri, installationStore, scopes, installerOptions, socketMode, developerMode, tokenVerificationEnabled, extendedErrorHandler, deferInitialization, attachFunctionToken, }?: AppOptions);
147
150
  init(): Promise<void>;
151
+ get webClientOptions(): WebClientOptions;
148
152
  /**
149
153
  * Register a new middleware, processed in the order registered.
150
154
  *
@@ -157,6 +161,10 @@ export default class App<AppCustomContext extends StringIndexed = StringIndexed>
157
161
  * @param workflowStep global workflow step middleware function
158
162
  */
159
163
  step(workflowStep: WorkflowStep): this;
164
+ /**
165
+ * Register CustomFunction middleware
166
+ */
167
+ function(callbackId: string, ...listeners: CustomFunctionMiddleware): this;
160
168
  /**
161
169
  * Convenience method to call start on the receiver
162
170
  *
package/dist/App.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":"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"}
package/dist/App.js CHANGED
@@ -18,6 +18,7 @@ const errors_1 = require("./errors");
18
18
  const middleware_1 = require("./types/middleware");
19
19
  // eslint-disable-next-line import/order
20
20
  const allSettled = require("promise.allsettled"); // eslint-disable-line @typescript-eslint/no-require-imports
21
+ const CustomFunction_1 = require("./CustomFunction");
21
22
  // eslint-disable-next-line @typescript-eslint/no-require-imports, import/no-commonjs
22
23
  const packageJson = require('../package.json'); // eslint-disable-line @typescript-eslint/no-var-requires
23
24
  // ----------------------------
@@ -47,7 +48,7 @@ class WebClientPool {
47
48
  * A Slack App
48
49
  */
49
50
  class App {
50
- constructor({ signingSecret = undefined, endpoints = undefined, port = undefined, customRoutes = undefined, agent = undefined, clientTls = undefined, receiver = undefined, convoStore = undefined, token = undefined, appToken = undefined, botId = undefined, botUserId = undefined, authorize = undefined, logger = undefined, logLevel = undefined, ignoreSelf = true, clientOptions = undefined, processBeforeResponse = false, signatureVerification = true, clientId = undefined, clientSecret = undefined, stateSecret = undefined, redirectUri = undefined, installationStore = undefined, scopes = undefined, installerOptions = undefined, socketMode = undefined, developerMode = false, tokenVerificationEnabled = true, extendedErrorHandler = false, deferInitialization = false, } = {}) {
51
+ constructor({ signingSecret = undefined, endpoints = undefined, port = undefined, customRoutes = undefined, agent = undefined, clientTls = undefined, receiver = undefined, convoStore = undefined, token = undefined, appToken = undefined, botId = undefined, botUserId = undefined, authorize = undefined, logger = undefined, logLevel = undefined, ignoreSelf = true, clientOptions = undefined, processBeforeResponse = false, signatureVerification = true, clientId = undefined, clientSecret = undefined, stateSecret = undefined, redirectUri = undefined, installationStore = undefined, scopes = undefined, installerOptions = undefined, socketMode = undefined, developerMode = false, tokenVerificationEnabled = true, extendedErrorHandler = false, deferInitialization = false, attachFunctionToken = true, } = {}) {
51
52
  // Some payloads don't have teamId anymore. So we use EnterpriseId in those scenarios
52
53
  this.clients = {};
53
54
  /* ------------------------ Developer mode ----------------------------- */
@@ -81,6 +82,8 @@ class App {
81
82
  this.hasCustomErrorHandler = false;
82
83
  this.errorHandler = defaultErrorHandler(this.logger);
83
84
  this.extendedErrorHandler = extendedErrorHandler;
85
+ // Override token with functionBotAccessToken in function-related handlers
86
+ this.attachFunctionToken = attachFunctionToken;
84
87
  /* ------------------------ Set client options ------------------------*/
85
88
  this.clientOptions = clientOptions !== undefined ? clientOptions : {};
86
89
  if (agent !== undefined && this.clientOptions.agent === undefined) {
@@ -207,6 +210,9 @@ class App {
207
210
  throw e;
208
211
  }
209
212
  }
213
+ get webClientOptions() {
214
+ return this.clientOptions;
215
+ }
210
216
  /**
211
217
  * Register a new middleware, processed in the order registered.
212
218
  *
@@ -226,6 +232,15 @@ class App {
226
232
  this.middleware.push(m);
227
233
  return this;
228
234
  }
235
+ /**
236
+ * Register CustomFunction middleware
237
+ */
238
+ function(callbackId, ...listeners) {
239
+ const fn = new CustomFunction_1.CustomFunction(callbackId, listeners, this.webClientOptions);
240
+ const m = fn.getMiddleware();
241
+ this.middleware.push(m);
242
+ return this;
243
+ }
229
244
  /**
230
245
  * Convenience method to call start on the receiver
231
246
  *
@@ -438,6 +453,20 @@ class App {
438
453
  retryNum: event.retryNum,
439
454
  retryReason: event.retryReason,
440
455
  };
456
+ // Extract function-related information and augment context
457
+ const { functionExecutionId, functionBotAccessToken, functionInputs } = extractFunctionContext(body);
458
+ if (functionExecutionId) {
459
+ context.functionExecutionId = functionExecutionId;
460
+ if (functionInputs) {
461
+ context.functionInputs = functionInputs;
462
+ }
463
+ }
464
+ // Attach and make available the JIT/function-related token on context
465
+ if (this.attachFunctionToken) {
466
+ if (functionBotAccessToken) {
467
+ context.functionBotAccessToken = functionBotAccessToken;
468
+ }
469
+ }
441
470
  // Factory for say() utility
442
471
  const createSay = (channelId) => {
443
472
  const token = selectToken(context);
@@ -531,7 +560,16 @@ class App {
531
560
  }
532
561
  // Get the client arg
533
562
  let { client } = this;
534
- const token = selectToken(context);
563
+ // If functionBotAccessToken exists on context, the incoming event is function-related *and* the
564
+ // user has `attachFunctionToken` enabled. In that case, subsequent calls with the client should
565
+ // use the function-related/JIT token in lieu of the botToken or userToken.
566
+ const token = context.functionBotAccessToken ? context.functionBotAccessToken : selectToken(context);
567
+ // Add complete() and fail() utilities for function-related interactivity
568
+ if (type === helpers_1.IncomingEventType.Action && context.functionExecutionId !== undefined) {
569
+ listenerArgs.complete = CustomFunction_1.CustomFunction.createFunctionComplete(context, client);
570
+ listenerArgs.fail = CustomFunction_1.CustomFunction.createFunctionFail(context, client);
571
+ listenerArgs.inputs = context.functionInputs;
572
+ }
535
573
  if (token !== undefined) {
536
574
  let pool;
537
575
  const clientOptionsCopy = { ...this.clientOptions };
@@ -887,6 +925,23 @@ function escapeHtml(input) {
887
925
  }
888
926
  return '';
889
927
  }
928
+ function extractFunctionContext(body) {
929
+ let functionExecutionId;
930
+ let functionBotAccessToken;
931
+ let functionInputs;
932
+ // function_executed event
933
+ if (body.event && body.event.type === 'function_executed' && body.event.function_execution_id) {
934
+ functionExecutionId = body.event.function_execution_id;
935
+ functionBotAccessToken = body.event.bot_access_token;
936
+ }
937
+ // interactivity (block_actions)
938
+ if (body.function_data) {
939
+ functionExecutionId = body.function_data.execution_id;
940
+ functionBotAccessToken = body.bot_access_token;
941
+ functionInputs = body.function_data.inputs;
942
+ }
943
+ return { functionExecutionId, functionBotAccessToken, functionInputs };
944
+ }
890
945
  // ----------------------------
891
946
  // Instrumentation
892
947
  // Don't change the position of the following code
package/dist/App.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import { WebClient, FunctionsCompleteErrorResponse, FunctionsCompleteSuccessResponse, WebClientOptions } from '@slack/web-api';
2
+ import { Middleware, AllMiddlewareArgs, AnyMiddlewareArgs, SlackEventMiddlewareArgs, Context, FunctionExecutedEvent } from './types';
3
+ /** Interfaces */
4
+ interface FunctionCompleteArguments {
5
+ outputs?: {
6
+ [key: string]: any;
7
+ };
8
+ }
9
+ export interface FunctionCompleteFn {
10
+ (params?: FunctionCompleteArguments): Promise<FunctionsCompleteSuccessResponse>;
11
+ }
12
+ interface FunctionFailArguments {
13
+ error: string;
14
+ }
15
+ export interface FunctionFailFn {
16
+ (params: FunctionFailArguments): Promise<FunctionsCompleteErrorResponse>;
17
+ }
18
+ export interface CustomFunctionExecuteMiddlewareArgs extends SlackEventMiddlewareArgs<'function_executed'> {
19
+ inputs: FunctionExecutedEvent['inputs'];
20
+ complete: FunctionCompleteFn;
21
+ fail: FunctionFailFn;
22
+ }
23
+ /** Types */
24
+ export declare type SlackCustomFunctionMiddlewareArgs = CustomFunctionExecuteMiddlewareArgs;
25
+ declare type CustomFunctionExecuteMiddleware = Middleware<CustomFunctionExecuteMiddlewareArgs>[];
26
+ export declare type CustomFunctionMiddleware = Middleware<CustomFunctionExecuteMiddlewareArgs>[];
27
+ export declare type AllCustomFunctionMiddlewareArgs<T extends SlackCustomFunctionMiddlewareArgs = SlackCustomFunctionMiddlewareArgs> = T & AllMiddlewareArgs;
28
+ /** Class */
29
+ export declare class CustomFunction {
30
+ /** Function callback_id */
31
+ callbackId: string;
32
+ private appWebClientOptions;
33
+ private middleware;
34
+ constructor(callbackId: string, middleware: CustomFunctionExecuteMiddleware, clientOptions: WebClientOptions);
35
+ getMiddleware(): Middleware<AnyMiddlewareArgs>;
36
+ private matchesConstraints;
37
+ private processEvent;
38
+ private getFunctionMiddleware;
39
+ /**
40
+ * Factory for `complete()` utility
41
+ */
42
+ static createFunctionComplete(context: Context, client: WebClient): FunctionCompleteFn;
43
+ /**
44
+ * Factory for `fail()` utility
45
+ */
46
+ static createFunctionFail(context: Context, client: WebClient): FunctionFailFn;
47
+ }
48
+ /** Helper Functions */
49
+ export declare function validate(callbackId: string, middleware: CustomFunctionExecuteMiddleware): void;
50
+ /**
51
+ * `processFunctionMiddleware()` invokes each listener middleware
52
+ */
53
+ export declare function processFunctionMiddleware(args: AllCustomFunctionMiddlewareArgs, middleware: CustomFunctionMiddleware): Promise<void>;
54
+ export declare function isFunctionEvent(args: AnyMiddlewareArgs): args is AllCustomFunctionMiddlewareArgs;
55
+ /**
56
+ * `enrichFunctionArgs()` takes in a function's args and:
57
+ * 1. removes the next() passed in from App-level middleware processing
58
+ * - events will *not* continue down global middleware chain to subsequent listeners
59
+ * 2. augments args with step lifecycle-specific properties/utilities
60
+ * */
61
+ export declare function enrichFunctionArgs(args: AllCustomFunctionMiddlewareArgs, webClientOptions: WebClientOptions): AllCustomFunctionMiddlewareArgs;
62
+ export {};
63
+ //# sourceMappingURL=CustomFunction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomFunction.d.ts","sourceRoot":"","sources":["../src/CustomFunction.ts"],"names":[],"mappings":"AACA,OAAO,EACL,SAAS,EACT,8BAA8B,EAC9B,gCAAgC,EAChC,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,EACxB,OAAO,EACP,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAIjB,iBAAiB;AAEjB,UAAU,yBAAyB;IACjC,OAAO,CAAC,EAAE;QACR,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,CAAC,MAAM,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,gCAAgC,CAAC,CAAC;CACjF;AAED,UAAU,qBAAqB;IAC7B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;CAC1E;AAED,MAAM,WAAW,mCAAoC,SAAQ,wBAAwB,CAAC,mBAAmB,CAAC;IACxG,MAAM,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IACxC,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,IAAI,EAAE,cAAc,CAAC;CACtB;AAED,YAAY;AAEZ,oBAAY,iCAAiC,GAAG,mCAAmC,CAAC;AAEpF,aAAK,+BAA+B,GAAG,UAAU,CAAC,mCAAmC,CAAC,EAAE,CAAC;AAEzF,oBAAY,wBAAwB,GAAG,UAAU,CAAC,mCAAmC,CAAC,EAAE,CAAC;AAEzF,oBAAY,+BAA+B,CACxC,CAAC,SAAS,iCAAiC,GAAG,iCAAiC,IAAI,CAAC,GAAG,iBAAiB,CAAC;AAM5G,YAAY;AAEZ,qBAAa,cAAc;IACzB,2BAA2B;IACpB,UAAU,EAAE,MAAM,CAAC;IAE1B,OAAO,CAAC,mBAAmB,CAAmB;IAE9C,OAAO,CAAC,UAAU,CAA2B;gBAG3C,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,+BAA+B,EAC3C,aAAa,EAAE,gBAAgB;IAS1B,aAAa,IAAI,UAAU,CAAC,iBAAiB,CAAC;IASrD,OAAO,CAAC,kBAAkB;YAIZ,YAAY;IAM1B,OAAO,CAAC,qBAAqB;IAI7B;;OAEG;WACW,sBAAsB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,GAAG,kBAAkB;IAgB7F;;KAEC;WACa,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,GAAG,cAAc;CAmBtF;AAED,uBAAuB;AACvB,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,+BAA+B,GAAG,IAAI,CAsB9F;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,+BAA+B,EACrC,UAAU,EAAE,wBAAwB,GACnC,OAAO,CAAC,IAAI,CAAC,CAWf;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,IAAI,+BAA+B,CAEhG;AAOD;;;;;KAKK;AACL,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,+BAA+B,EAAE,gBAAgB,EAAE,gBAAgB,GACxE,+BAA+B,CAgBjC"}
@@ -0,0 +1,141 @@
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.enrichFunctionArgs = exports.isFunctionEvent = exports.processFunctionMiddleware = exports.validate = exports.CustomFunction = 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 CustomFunction {
15
+ constructor(callbackId, middleware, clientOptions) {
16
+ validate(callbackId, middleware);
17
+ this.appWebClientOptions = clientOptions;
18
+ this.callbackId = callbackId;
19
+ this.middleware = middleware;
20
+ }
21
+ getMiddleware() {
22
+ return async (args) => {
23
+ if (isFunctionEvent(args) && this.matchesConstraints(args)) {
24
+ return this.processEvent(args);
25
+ }
26
+ return args.next();
27
+ };
28
+ }
29
+ matchesConstraints(args) {
30
+ return args.payload.function.callback_id === this.callbackId;
31
+ }
32
+ async processEvent(args) {
33
+ const functionArgs = enrichFunctionArgs(args, this.appWebClientOptions);
34
+ const functionMiddleware = this.getFunctionMiddleware();
35
+ return processFunctionMiddleware(functionArgs, functionMiddleware);
36
+ }
37
+ getFunctionMiddleware() {
38
+ return this.middleware;
39
+ }
40
+ /**
41
+ * Factory for `complete()` utility
42
+ */
43
+ static createFunctionComplete(context, client) {
44
+ const token = selectToken(context);
45
+ const { functionExecutionId } = context;
46
+ if (!functionExecutionId) {
47
+ const errorMsg = 'No function_execution_id found';
48
+ throw new errors_1.CustomFunctionCompleteSuccessError(errorMsg);
49
+ }
50
+ return (params = {}) => client.functions.completeSuccess({
51
+ token,
52
+ outputs: params.outputs || {},
53
+ function_execution_id: functionExecutionId,
54
+ });
55
+ }
56
+ /**
57
+ * Factory for `fail()` utility
58
+ */
59
+ static createFunctionFail(context, client) {
60
+ const token = selectToken(context);
61
+ const { functionExecutionId } = context;
62
+ if (!functionExecutionId) {
63
+ const errorMsg = 'No function_execution_id found';
64
+ throw new errors_1.CustomFunctionCompleteFailError(errorMsg);
65
+ }
66
+ return (params) => {
67
+ const { error } = params !== null && params !== void 0 ? params : {};
68
+ return client.functions.completeError({
69
+ token,
70
+ error,
71
+ function_execution_id: functionExecutionId,
72
+ });
73
+ };
74
+ }
75
+ }
76
+ exports.CustomFunction = CustomFunction;
77
+ /** Helper Functions */
78
+ function validate(callbackId, middleware) {
79
+ // Ensure callbackId is valid
80
+ if (typeof callbackId !== 'string') {
81
+ const errorMsg = 'CustomFunction expects a callback_id as the first argument';
82
+ throw new errors_1.CustomFunctionInitializationError(errorMsg);
83
+ }
84
+ // Ensure middleware argument is either a function or an array
85
+ if (typeof middleware !== 'function' && !Array.isArray(middleware)) {
86
+ const errorMsg = 'CustomFunction expects a function or array of functions as the second argument';
87
+ throw new errors_1.CustomFunctionInitializationError(errorMsg);
88
+ }
89
+ // Ensure array includes only functions
90
+ if (Array.isArray(middleware)) {
91
+ middleware.forEach((fn) => {
92
+ if (!(fn instanceof Function)) {
93
+ const errorMsg = 'All CustomFunction middleware must be functions';
94
+ throw new errors_1.CustomFunctionInitializationError(errorMsg);
95
+ }
96
+ });
97
+ }
98
+ }
99
+ exports.validate = validate;
100
+ /**
101
+ * `processFunctionMiddleware()` invokes each listener middleware
102
+ */
103
+ async function processFunctionMiddleware(args, middleware) {
104
+ const { context, client, logger } = args;
105
+ const callbacks = [...middleware];
106
+ const lastCallback = callbacks.pop();
107
+ if (lastCallback !== undefined) {
108
+ await (0, process_1.default)(callbacks, args, context, client, logger, async () => lastCallback({ ...args, context, client, logger }));
109
+ }
110
+ }
111
+ exports.processFunctionMiddleware = processFunctionMiddleware;
112
+ function isFunctionEvent(args) {
113
+ return VALID_PAYLOAD_TYPES.has(args.payload.type);
114
+ }
115
+ exports.isFunctionEvent = isFunctionEvent;
116
+ function selectToken(context) {
117
+ // If attachFunctionToken = false, fallback to botToken or userToken
118
+ return context.functionBotAccessToken ? context.functionBotAccessToken : context.botToken || context.userToken;
119
+ }
120
+ /**
121
+ * `enrichFunctionArgs()` takes in a function's args and:
122
+ * 1. removes the next() passed in from App-level middleware processing
123
+ * - events will *not* continue down global middleware chain to subsequent listeners
124
+ * 2. augments args with step lifecycle-specific properties/utilities
125
+ * */
126
+ function enrichFunctionArgs(args, webClientOptions) {
127
+ const { next: _next, ...functionArgs } = args;
128
+ const enrichedArgs = { ...functionArgs };
129
+ const token = selectToken(functionArgs.context);
130
+ // Making calls with a functionBotAccessToken establishes continuity between
131
+ // a function_executed event and subsequent interactive events (actions)
132
+ const client = new web_api_1.WebClient(token, webClientOptions);
133
+ enrichedArgs.client = client;
134
+ // Utility args
135
+ enrichedArgs.inputs = enrichedArgs.event.inputs;
136
+ enrichedArgs.complete = CustomFunction.createFunctionComplete(enrichedArgs.context, client);
137
+ enrichedArgs.fail = CustomFunction.createFunctionFail(enrichedArgs.context, client);
138
+ return enrichedArgs; // TODO: dangerous casting as it obfuscates missing `next()`
139
+ }
140
+ exports.enrichFunctionArgs = enrichFunctionArgs;
141
+ //# sourceMappingURL=CustomFunction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomFunction.js","sourceRoot":"","sources":["../src/CustomFunction.ts"],"names":[],"mappings":"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"}
@@ -97,7 +97,7 @@ export declare function validate(callbackId: string, config: WorkflowStepConfig)
97
97
  export declare function processStepMiddleware(args: AllWorkflowStepMiddlewareArgs, middleware: WorkflowStepMiddleware): Promise<void>;
98
98
  export declare function isStepEvent(args: AnyMiddlewareArgs): args is AllWorkflowStepMiddlewareArgs;
99
99
  /**
100
- * `prepareStepArgs()` takes in a workflow step's args and:
100
+ * `prepareStepArgs()` takes in a step's args and:
101
101
  * 1. removes the next() passed in from App-level middleware processing
102
102
  * - events will *not* continue down global middleware chain to subsequent listeners
103
103
  * 2. augments args with step lifecycle-specific properties/utilities
@@ -164,7 +164,7 @@ function createStepFail(args) {
164
164
  };
165
165
  }
166
166
  /**
167
- * `prepareStepArgs()` takes in a workflow step's args and:
167
+ * `prepareStepArgs()` takes in a step's args and:
168
168
  * 1. removes the next() passed in from App-level middleware processing
169
169
  * - events will *not* continue down global middleware chain to subsequent listeners
170
170
  * 2. augments args with step lifecycle-specific properties/utilities