@slack/bolt 3.6.0-hermesBeta.1 → 3.8.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/LICENSE +1 -1
- package/README.md +4 -2
- package/dist/App.d.ts +61 -6
- package/dist/App.d.ts.map +1 -1
- package/dist/App.js +161 -91
- package/dist/App.js.map +1 -1
- package/dist/WorkflowStep.d.ts.map +1 -1
- package/dist/WorkflowStep.js +25 -28
- package/dist/WorkflowStep.js.map +1 -1
- package/dist/conversation-store.d.ts.map +1 -1
- package/dist/conversation-store.js +4 -4
- package/dist/conversation-store.js.map +1 -1
- package/dist/errors.d.ts +13 -5
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +25 -9
- package/dist/errors.js.map +1 -1
- package/dist/helpers.d.ts.map +1 -1
- package/dist/helpers.js +1 -0
- package/dist/helpers.js.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/middleware/builtin.d.ts +0 -4
- package/dist/middleware/builtin.d.ts.map +1 -1
- package/dist/middleware/builtin.js +1 -35
- package/dist/middleware/builtin.js.map +1 -1
- package/dist/middleware/process.d.ts +1 -1
- package/dist/middleware/process.d.ts.map +1 -1
- package/dist/middleware/process.js +1 -2
- package/dist/middleware/process.js.map +1 -1
- package/dist/receivers/AwsLambdaReceiver.d.ts +4 -1
- package/dist/receivers/AwsLambdaReceiver.d.ts.map +1 -1
- package/dist/receivers/AwsLambdaReceiver.js +15 -20
- package/dist/receivers/AwsLambdaReceiver.js.map +1 -1
- package/dist/receivers/ExpressReceiver.d.ts +20 -7
- package/dist/receivers/ExpressReceiver.d.ts.map +1 -1
- package/dist/receivers/ExpressReceiver.js +167 -87
- package/dist/receivers/ExpressReceiver.js.map +1 -1
- package/dist/receivers/HTTPReceiver.d.ts +51 -2
- package/dist/receivers/HTTPReceiver.d.ts.map +1 -1
- package/dist/receivers/HTTPReceiver.js +234 -91
- package/dist/receivers/HTTPReceiver.js.map +1 -1
- package/dist/receivers/SocketModeReceiver.d.ts +18 -1
- package/dist/receivers/SocketModeReceiver.d.ts.map +1 -1
- package/dist/receivers/SocketModeReceiver.js +105 -41
- package/dist/receivers/SocketModeReceiver.js.map +1 -1
- package/dist/receivers/custom-routes.d.ts +14 -0
- package/dist/receivers/custom-routes.d.ts.map +1 -0
- package/dist/receivers/custom-routes.js +33 -0
- package/dist/receivers/custom-routes.js.map +1 -0
- package/dist/receivers/http-utils.d.ts +5 -0
- package/dist/receivers/http-utils.d.ts.map +1 -0
- package/dist/receivers/http-utils.js +35 -0
- package/dist/receivers/http-utils.js.map +1 -0
- package/dist/receivers/render-html-for-install-path.d.ts +1 -0
- package/dist/receivers/render-html-for-install-path.d.ts.map +1 -1
- package/dist/receivers/render-html-for-install-path.js +6 -1
- package/dist/receivers/render-html-for-install-path.js.map +1 -1
- package/dist/receivers/verify-redirect-opts.d.ts +7 -0
- package/dist/receivers/verify-redirect-opts.d.ts.map +1 -0
- package/dist/receivers/verify-redirect-opts.js +23 -0
- package/dist/receivers/verify-redirect-opts.js.map +1 -0
- package/dist/receivers/verify-request.d.ts +1 -0
- package/dist/receivers/verify-request.d.ts.map +1 -1
- package/dist/receivers/verify-request.js +8 -4
- package/dist/receivers/verify-request.js.map +1 -1
- package/dist/types/actions/block-action.d.ts +8 -1
- package/dist/types/actions/block-action.d.ts.map +1 -1
- package/dist/types/actions/index.d.ts +4 -4
- package/dist/types/actions/index.d.ts.map +1 -1
- package/dist/types/actions/index.js.map +1 -1
- package/dist/types/actions/workflow-step-edit.d.ts.map +1 -1
- package/dist/types/events/base-events.d.ts +6 -30
- package/dist/types/events/base-events.d.ts.map +1 -1
- package/dist/types/events/base-events.js +2 -0
- package/dist/types/events/base-events.js.map +1 -1
- package/dist/types/events/index.d.ts +4 -4
- package/dist/types/events/index.d.ts.map +1 -1
- package/dist/types/events/index.js.map +1 -1
- package/dist/types/events/message-events.d.ts.map +1 -1
- package/dist/types/helpers.d.ts +2 -2
- package/dist/types/helpers.d.ts.map +1 -1
- package/dist/types/middleware.d.ts +10 -1
- package/dist/types/middleware.d.ts.map +1 -1
- package/dist/types/middleware.js +11 -0
- package/dist/types/middleware.js.map +1 -1
- package/dist/types/options/index.d.ts +2 -2
- package/dist/types/options/index.d.ts.map +1 -1
- package/dist/types/receiver.d.ts +3 -0
- package/dist/types/receiver.d.ts.map +1 -1
- package/dist/types/shortcuts/index.d.ts +2 -2
- package/dist/types/shortcuts/index.d.ts.map +1 -1
- package/dist/types/shortcuts/index.js.map +1 -1
- package/dist/types/shortcuts/message-shortcut.d.ts.map +1 -1
- package/dist/types/utilities.d.ts.map +1 -1
- package/package.json +17 -19
package/LICENSE
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
The MIT License (MIT)
|
|
2
2
|
|
|
3
3
|
Copyright (c) 2016-2018 Robots & Pencils
|
|
4
|
-
Copyright (c) 2019 Slack Technologies,
|
|
4
|
+
Copyright (c) 2019- Slack Technologies, LLC
|
|
5
5
|
|
|
6
6
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
7
7
|
of this software and associated documentation files (the "Software"), to deal
|
package/README.md
CHANGED
|
@@ -35,10 +35,12 @@ const app = new App({
|
|
|
35
35
|
})();
|
|
36
36
|
```
|
|
37
37
|
|
|
38
|
-
> ⚙️ By default, Bolt listens to the `/slack/events` endpoint for *all* incoming requests (whether shortcuts, events, or actions payloads). When configuring Request URLs in your app configuration, they should all have `/slack/events` appended. The default behavior be modified using the constructor's `endpoints` parameter.
|
|
39
|
-
|
|
40
38
|
## Listening for events
|
|
41
39
|
|
|
40
|
+
The Slack **Request URL** for a Bolt app must have the path set to `/slack/events`.
|
|
41
|
+
For example: `https://my-slack-app.example.com/slack/events`.
|
|
42
|
+
Otherwise, all incoming requests from Slack won't be handled.
|
|
43
|
+
|
|
42
44
|
Apps typically react to a collection of incoming events, which can correspond [Events API events](https://api.slack.com/events-api), [actions](https://api.slack.com/interactivity/components), [shortcuts](https://api.slack.com/interactivity/shortcuts), [slash commands](https://api.slack.com/interactivity/slash-commands) or [options requests](https://api.slack.com/reference/block-kit/block-elements#external_select). For each type of
|
|
43
45
|
request, there's a method to build a listener function.
|
|
44
46
|
|
package/dist/App.d.ts
CHANGED
|
@@ -7,16 +7,20 @@ import SocketModeReceiver from './receivers/SocketModeReceiver';
|
|
|
7
7
|
import HTTPReceiver, { HTTPReceiverOptions } from './receivers/HTTPReceiver';
|
|
8
8
|
import { ConversationStore } from './conversation-store';
|
|
9
9
|
import { WorkflowStep } from './WorkflowStep';
|
|
10
|
-
import { Middleware, AnyMiddlewareArgs, SlackActionMiddlewareArgs, SlackCommandMiddlewareArgs, SlackEventMiddlewareArgs, SlackOptionsMiddlewareArgs, SlackShortcutMiddlewareArgs, SlackViewMiddlewareArgs, SlackAction, SlackShortcut, OptionsSource, BlockAction, SlackViewAction, Receiver, ReceiverEvent } from './types';
|
|
10
|
+
import { Middleware, AnyMiddlewareArgs, SlackActionMiddlewareArgs, SlackCommandMiddlewareArgs, SlackEventMiddlewareArgs, SlackOptionsMiddlewareArgs, SlackShortcutMiddlewareArgs, SlackViewMiddlewareArgs, SlackAction, SlackShortcut, Context, OptionsSource, BlockAction, SlackViewAction, Receiver, ReceiverEvent } from './types';
|
|
11
11
|
import { CodedError } from './errors';
|
|
12
12
|
/** App initialization options */
|
|
13
13
|
export interface AppOptions {
|
|
14
14
|
signingSecret?: HTTPReceiverOptions['signingSecret'];
|
|
15
15
|
endpoints?: HTTPReceiverOptions['endpoints'];
|
|
16
|
+
port?: HTTPReceiverOptions['port'];
|
|
17
|
+
customRoutes?: HTTPReceiverOptions['customRoutes'];
|
|
16
18
|
processBeforeResponse?: HTTPReceiverOptions['processBeforeResponse'];
|
|
19
|
+
signatureVerification?: HTTPReceiverOptions['signatureVerification'];
|
|
17
20
|
clientId?: HTTPReceiverOptions['clientId'];
|
|
18
21
|
clientSecret?: HTTPReceiverOptions['clientSecret'];
|
|
19
22
|
stateSecret?: HTTPReceiverOptions['stateSecret'];
|
|
23
|
+
redirectUri?: HTTPReceiverOptions['redirectUri'];
|
|
20
24
|
installationStore?: HTTPReceiverOptions['installationStore'];
|
|
21
25
|
scopes?: HTTPReceiverOptions['scopes'];
|
|
22
26
|
installerOptions?: HTTPReceiverOptions['installerOptions'];
|
|
@@ -36,6 +40,7 @@ export interface AppOptions {
|
|
|
36
40
|
socketMode?: boolean;
|
|
37
41
|
developerMode?: boolean;
|
|
38
42
|
tokenVerificationEnabled?: boolean;
|
|
43
|
+
extendedErrorHandler?: boolean;
|
|
39
44
|
}
|
|
40
45
|
export { LogLevel, Logger } from '@slack/logger';
|
|
41
46
|
/** Authorization function - seeds the middleware processing and listeners with an authorization context */
|
|
@@ -76,9 +81,24 @@ export interface ViewConstraints {
|
|
|
76
81
|
callback_id?: string | RegExp;
|
|
77
82
|
type?: 'view_closed' | 'view_submission';
|
|
78
83
|
}
|
|
84
|
+
interface AllErrorHandlerArgs {
|
|
85
|
+
error: Error;
|
|
86
|
+
logger: Logger;
|
|
87
|
+
body: AnyMiddlewareArgs['body'];
|
|
88
|
+
context: Context;
|
|
89
|
+
}
|
|
90
|
+
export interface ExtendedErrorHandlerArgs extends AllErrorHandlerArgs {
|
|
91
|
+
error: CodedError;
|
|
92
|
+
}
|
|
79
93
|
export interface ErrorHandler {
|
|
80
94
|
(error: CodedError): Promise<void>;
|
|
81
95
|
}
|
|
96
|
+
export interface ExtendedErrorHandler {
|
|
97
|
+
(args: ExtendedErrorHandlerArgs): Promise<void>;
|
|
98
|
+
}
|
|
99
|
+
export interface AnyErrorHandler extends ErrorHandler, ExtendedErrorHandler {
|
|
100
|
+
}
|
|
101
|
+
declare type MessageEventMiddleware = Middleware<SlackEventMiddlewareArgs<'message'>>;
|
|
82
102
|
/**
|
|
83
103
|
* A Slack App
|
|
84
104
|
*/
|
|
@@ -104,7 +124,9 @@ export default class App {
|
|
|
104
124
|
private installerOptions;
|
|
105
125
|
private socketMode;
|
|
106
126
|
private developerMode;
|
|
107
|
-
|
|
127
|
+
private extendedErrorHandler;
|
|
128
|
+
private hasCustomErrorHandler;
|
|
129
|
+
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, }?: AppOptions);
|
|
108
130
|
/**
|
|
109
131
|
* Register a new middleware, processed in the order registered.
|
|
110
132
|
*
|
|
@@ -128,8 +150,41 @@ export default class App {
|
|
|
128
150
|
stop(...args: any[]): Promise<unknown>;
|
|
129
151
|
event<EventType extends string = string>(eventName: EventType, ...listeners: Middleware<SlackEventMiddlewareArgs<EventType>>[]): void;
|
|
130
152
|
event<EventType extends RegExp = RegExp>(eventName: EventType, ...listeners: Middleware<SlackEventMiddlewareArgs<string>>[]): void;
|
|
131
|
-
|
|
132
|
-
|
|
153
|
+
/**
|
|
154
|
+
*
|
|
155
|
+
* @param listeners Middlewares that process and react to a message event
|
|
156
|
+
*/
|
|
157
|
+
message(...listeners: MessageEventMiddleware[]): void;
|
|
158
|
+
/**
|
|
159
|
+
*
|
|
160
|
+
* @param pattern Used for filtering out messages that don't match.
|
|
161
|
+
* Strings match via {@link String.prototype.includes}.
|
|
162
|
+
* @param listeners Middlewares that process and react to the message events that matched the provided patterns.
|
|
163
|
+
*/
|
|
164
|
+
message(pattern: string | RegExp, ...listeners: MessageEventMiddleware[]): void;
|
|
165
|
+
/**
|
|
166
|
+
*
|
|
167
|
+
* @param filter Middleware that can filter out messages. Generally this is done by returning before
|
|
168
|
+
* calling {@link AllMiddlewareArgs.next} if there is no match. See {@link directMention} for an example.
|
|
169
|
+
* @param pattern Used for filtering out messages that don't match the pattern. Strings match
|
|
170
|
+
* via {@link String.prototype.includes}.
|
|
171
|
+
* @param listeners Middlewares that process and react to the message events that matched the provided pattern.
|
|
172
|
+
*/
|
|
173
|
+
message(filter: MessageEventMiddleware, pattern: string | RegExp, ...listeners: MessageEventMiddleware[]): void;
|
|
174
|
+
/**
|
|
175
|
+
*
|
|
176
|
+
* @param filter Middleware that can filter out messages. Generally this is done by returning before calling
|
|
177
|
+
* {@link AllMiddlewareArgs.next} if there is no match. See {@link directMention} for an example.
|
|
178
|
+
* @param listeners Middlewares that process and react to the message events that matched the provided patterns.
|
|
179
|
+
*/
|
|
180
|
+
message(filter: MessageEventMiddleware, ...listeners: MessageEventMiddleware[]): void;
|
|
181
|
+
/**
|
|
182
|
+
* This allows for further control of the filtering and response logic. Patterns and middlewares are processed in
|
|
183
|
+
* the order provided. If any patterns do not match, or a middleware does not call {@link AllMiddlewareArgs.next},
|
|
184
|
+
* all remaining patterns and middlewares will be skipped.
|
|
185
|
+
* @param patternsOrMiddleware A mix of patterns and/or middlewares.
|
|
186
|
+
*/
|
|
187
|
+
message(...patternsOrMiddleware: (string | RegExp | MessageEventMiddleware)[]): void;
|
|
133
188
|
shortcut<Shortcut extends SlackShortcut = SlackShortcut>(callbackId: string | RegExp, ...listeners: Middleware<SlackShortcutMiddlewareArgs<Shortcut>>[]): void;
|
|
134
189
|
shortcut<Shortcut extends SlackShortcut = SlackShortcut, Constraints extends ShortcutConstraints<Shortcut> = ShortcutConstraints<Shortcut>>(constraints: Constraints, ...listeners: Middleware<SlackShortcutMiddlewareArgs<Extract<Shortcut, {
|
|
135
190
|
type: Constraints['type'];
|
|
@@ -139,12 +194,12 @@ export default class App {
|
|
|
139
194
|
type: Constraints['type'];
|
|
140
195
|
}>>>[]): void;
|
|
141
196
|
command(commandName: string | RegExp, ...listeners: Middleware<SlackCommandMiddlewareArgs>[]): void;
|
|
142
|
-
|
|
143
|
-
options<Source extends OptionsSource = OptionsSource>(actionId: string | RegExp, ...listeners: Middleware<SlackOptionsMiddlewareArgs<Source>>[]): void;
|
|
197
|
+
options<Source extends OptionsSource = 'block_suggestion'>(actionId: string | RegExp, ...listeners: Middleware<SlackOptionsMiddlewareArgs<Source>>[]): void;
|
|
144
198
|
options<Source extends OptionsSource = OptionsSource>(constraints: ActionConstraints, ...listeners: Middleware<SlackOptionsMiddlewareArgs<Source>>[]): void;
|
|
145
199
|
view<ViewActionType extends SlackViewAction = SlackViewAction>(callbackId: string | RegExp, ...listeners: Middleware<SlackViewMiddlewareArgs<ViewActionType>>[]): void;
|
|
146
200
|
view<ViewActionType extends SlackViewAction = SlackViewAction>(constraints: ViewConstraints, ...listeners: Middleware<SlackViewMiddlewareArgs<ViewActionType>>[]): void;
|
|
147
201
|
error(errorHandler: ErrorHandler): void;
|
|
202
|
+
error(errorHandler: ExtendedErrorHandler): void;
|
|
148
203
|
/**
|
|
149
204
|
* Handles events from the receiver
|
|
150
205
|
*/
|
package/dist/App.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":"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"}
|