@slack/bolt 3.6.0 → 3.9.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/LICENSE +1 -1
- package/README.md +4 -2
- package/dist/App.d.ts +60 -4
- package/dist/App.d.ts.map +1 -1
- package/dist/App.js +179 -100
- 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 +5 -6
- 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.map +1 -1
- package/dist/middleware/builtin.js +0 -19
- 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 +54 -4
- package/dist/receivers/HTTPReceiver.d.ts.map +1 -1
- package/dist/receivers/HTTPReceiver.js +240 -94
- 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 +109 -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 +5 -5
- package/dist/types/events/base-events.d.ts.map +1 -1
- 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 +18 -20
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.defaultUnhandledRequestHandler = exports.defaultProcessEventErrorHandler = exports.defaultDispatchErrorHandler = void 0;
|
|
7
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
3
8
|
const http_1 = require("http");
|
|
4
9
|
const https_1 = require("https");
|
|
5
10
|
const querystring_1 = require("querystring");
|
|
@@ -7,28 +12,122 @@ const logger_1 = require("@slack/logger");
|
|
|
7
12
|
const oauth_1 = require("@slack/oauth");
|
|
8
13
|
const url_1 = require("url");
|
|
9
14
|
const verify_request_1 = require("./verify-request");
|
|
10
|
-
const
|
|
15
|
+
const verify_redirect_opts_1 = require("./verify-redirect-opts");
|
|
16
|
+
const render_html_for_install_path_1 = __importDefault(require("./render-html-for-install-path"));
|
|
11
17
|
const errors_1 = require("../errors");
|
|
18
|
+
const custom_routes_1 = require("./custom-routes");
|
|
19
|
+
const http_utils_1 = require("./http-utils");
|
|
20
|
+
// Option keys for tls.createServer() and tls.createSecureContext(), exclusive of those for http.createServer()
|
|
21
|
+
const httpsOptionKeys = [
|
|
22
|
+
'ALPNProtocols',
|
|
23
|
+
'clientCertEngine',
|
|
24
|
+
'enableTrace',
|
|
25
|
+
'handshakeTimeout',
|
|
26
|
+
'rejectUnauthorized',
|
|
27
|
+
'requestCert',
|
|
28
|
+
'sessionTimeout',
|
|
29
|
+
'SNICallback',
|
|
30
|
+
'ticketKeys',
|
|
31
|
+
'pskCallback',
|
|
32
|
+
'pskIdentityHint',
|
|
33
|
+
'ca',
|
|
34
|
+
'cert',
|
|
35
|
+
'sigalgs',
|
|
36
|
+
'ciphers',
|
|
37
|
+
'clientCertEngine',
|
|
38
|
+
'crl',
|
|
39
|
+
'dhparam',
|
|
40
|
+
'ecdhCurve',
|
|
41
|
+
'honorCipherOrder',
|
|
42
|
+
'key',
|
|
43
|
+
'privateKeyEngine',
|
|
44
|
+
'privateKeyIdentifier',
|
|
45
|
+
'maxVersion',
|
|
46
|
+
'minVersion',
|
|
47
|
+
'passphrase',
|
|
48
|
+
'pfx',
|
|
49
|
+
'secureOptions',
|
|
50
|
+
'secureProtocol',
|
|
51
|
+
'sessionIdContext',
|
|
52
|
+
];
|
|
53
|
+
const missingServerErrorDescription = 'The receiver cannot be started because private state was mutated. Please report this to the maintainers.';
|
|
54
|
+
// The default dispathErrorHandler implementation:
|
|
55
|
+
// Developers can customize this behavior by passing dispatchErrorHandler to the constructor
|
|
56
|
+
// Note that it was not possible to make this function async due to the limitation of http module
|
|
57
|
+
function defaultDispatchErrorHandler(args) {
|
|
58
|
+
const { error, logger, request, response } = args;
|
|
59
|
+
if ('code' in error) {
|
|
60
|
+
if (error.code === errors_1.ErrorCode.HTTPReceiverDeferredRequestError) {
|
|
61
|
+
logger.info(`Unhandled HTTP request (${request.method}) made to ${request.url}`);
|
|
62
|
+
response.writeHead(404);
|
|
63
|
+
response.end();
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
logger.error(`An unexpected error occurred during a request (${request.method}) made to ${request.url}`);
|
|
68
|
+
logger.debug(`Error details: ${error}`);
|
|
69
|
+
response.writeHead(500);
|
|
70
|
+
response.end();
|
|
71
|
+
}
|
|
72
|
+
exports.defaultDispatchErrorHandler = defaultDispatchErrorHandler;
|
|
73
|
+
// The default processEventErrorHandler implementation:
|
|
74
|
+
// Developers can customize this behavior by passing processEventErrorHandler to the constructor
|
|
75
|
+
async function defaultProcessEventErrorHandler(args) {
|
|
76
|
+
const { error, response, logger, storedResponse } = args;
|
|
77
|
+
if ('code' in error) {
|
|
78
|
+
// CodedError has code: string
|
|
79
|
+
const errorCode = error.code;
|
|
80
|
+
if (errorCode === errors_1.ErrorCode.AuthorizationError) {
|
|
81
|
+
// authorize function threw an exception, which means there is no valid installation data
|
|
82
|
+
response.writeHead(401);
|
|
83
|
+
response.end();
|
|
84
|
+
return true;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
logger.error('An unhandled error occurred while Bolt processed an event');
|
|
88
|
+
logger.debug(`Error details: ${error}, storedResponse: ${storedResponse}`);
|
|
89
|
+
response.writeHead(500);
|
|
90
|
+
response.end();
|
|
91
|
+
return false;
|
|
92
|
+
}
|
|
93
|
+
exports.defaultProcessEventErrorHandler = defaultProcessEventErrorHandler;
|
|
94
|
+
// The default unhandledRequestHandler implementation:
|
|
95
|
+
// Developers can customize this behavior by passing unhandledRequestHandler to the constructor
|
|
96
|
+
// Note that this method cannot be an async function to align with the implementation using setTimeout
|
|
97
|
+
function defaultUnhandledRequestHandler(args) {
|
|
98
|
+
const { logger } = args;
|
|
99
|
+
logger.error('An incoming event was not acknowledged within 3 seconds. ' +
|
|
100
|
+
'Ensure that the ack() argument is called in a listener.');
|
|
101
|
+
}
|
|
102
|
+
exports.defaultUnhandledRequestHandler = defaultUnhandledRequestHandler;
|
|
12
103
|
/**
|
|
13
104
|
* Receives HTTP requests with Events, Slash Commands, and Actions
|
|
14
105
|
*/
|
|
15
106
|
class HTTPReceiver {
|
|
16
|
-
constructor({ signingSecret = '', endpoints = ['/slack/events'], logger = undefined, logLevel = logger_1.LogLevel.INFO, processBeforeResponse = false, clientId = undefined, clientSecret = undefined, stateSecret = undefined, installationStore = undefined, scopes = undefined, installerOptions = {}, }) {
|
|
107
|
+
constructor({ signingSecret = '', endpoints = ['/slack/events'], port = 3000, customRoutes = [], logger = undefined, logLevel = logger_1.LogLevel.INFO, processBeforeResponse = false, signatureVerification = true, clientId = undefined, clientSecret = undefined, stateSecret = undefined, redirectUri = undefined, installationStore = undefined, scopes = undefined, installerOptions = {}, customPropertiesExtractor = (_req) => ({}), dispatchErrorHandler = defaultDispatchErrorHandler, processEventErrorHandler = defaultProcessEventErrorHandler, unhandledRequestHandler = defaultUnhandledRequestHandler, unhandledRequestTimeoutMillis = 3001, }) {
|
|
17
108
|
var _a, _b, _c;
|
|
18
109
|
// Initialize instance variables, substituting defaults for each value
|
|
19
110
|
this.signingSecret = signingSecret;
|
|
20
111
|
this.processBeforeResponse = processBeforeResponse;
|
|
21
|
-
this.
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
112
|
+
this.signatureVerification = signatureVerification;
|
|
113
|
+
this.logger = logger !== null && logger !== void 0 ? logger : (() => {
|
|
114
|
+
const defaultLogger = new logger_1.ConsoleLogger();
|
|
115
|
+
defaultLogger.setLevel(logLevel);
|
|
116
|
+
return defaultLogger;
|
|
117
|
+
})();
|
|
27
118
|
this.endpoints = Array.isArray(endpoints) ? endpoints : [endpoints];
|
|
119
|
+
this.port = (installerOptions === null || installerOptions === void 0 ? void 0 : installerOptions.port) ? installerOptions.port : port;
|
|
120
|
+
this.routes = (0, custom_routes_1.prepareRoutes)(customRoutes);
|
|
121
|
+
// Verify redirect options if supplied, throws coded error if invalid
|
|
122
|
+
(0, verify_redirect_opts_1.verifyRedirectOpts)({ redirectUri, redirectUriPath: installerOptions.redirectUriPath });
|
|
123
|
+
this.stateVerification = installerOptions.stateVerification;
|
|
28
124
|
// Initialize InstallProvider when it's required options are provided
|
|
29
125
|
if (clientId !== undefined &&
|
|
30
126
|
clientSecret !== undefined &&
|
|
31
|
-
(
|
|
127
|
+
(this.stateVerification === false || // state store not needed
|
|
128
|
+
stateSecret !== undefined ||
|
|
129
|
+
installerOptions.stateStore !== undefined) // user provided state store
|
|
130
|
+
) {
|
|
32
131
|
this.installer = new oauth_1.InstallProvider({
|
|
33
132
|
clientId,
|
|
34
133
|
clientSecret,
|
|
@@ -37,20 +136,31 @@ class HTTPReceiver {
|
|
|
37
136
|
logger,
|
|
38
137
|
logLevel,
|
|
39
138
|
stateStore: installerOptions.stateStore,
|
|
139
|
+
stateVerification: installerOptions.stateVerification,
|
|
40
140
|
authVersion: installerOptions.authVersion,
|
|
41
141
|
clientOptions: installerOptions.clientOptions,
|
|
42
142
|
authorizationUrl: installerOptions.authorizationUrl,
|
|
43
143
|
});
|
|
44
144
|
// Store the remaining instance variables that are related to using the InstallProvider
|
|
45
145
|
this.installPath = (_a = installerOptions.installPath) !== null && _a !== void 0 ? _a : '/slack/install';
|
|
146
|
+
this.directInstall = installerOptions.directInstall !== undefined && installerOptions.directInstall;
|
|
46
147
|
this.installRedirectUriPath = (_b = installerOptions.redirectUriPath) !== null && _b !== void 0 ? _b : '/slack/oauth_redirect';
|
|
148
|
+
this.installCallbackOptions = (_c = installerOptions.callbackOptions) !== null && _c !== void 0 ? _c : {};
|
|
47
149
|
this.installUrlOptions = {
|
|
48
150
|
scopes: scopes !== null && scopes !== void 0 ? scopes : [],
|
|
49
151
|
userScopes: installerOptions.userScopes,
|
|
50
152
|
metadata: installerOptions.metadata,
|
|
153
|
+
redirectUri,
|
|
51
154
|
};
|
|
52
|
-
this.installCallbackOptions = (_c = installerOptions.callbackOptions) !== null && _c !== void 0 ? _c : {};
|
|
53
155
|
}
|
|
156
|
+
this.renderHtmlForInstallPath = installerOptions.renderHtmlForInstallPath !== undefined ?
|
|
157
|
+
installerOptions.renderHtmlForInstallPath :
|
|
158
|
+
render_html_for_install_path_1.default;
|
|
159
|
+
this.customPropertiesExtractor = customPropertiesExtractor;
|
|
160
|
+
this.dispatchErrorHandler = dispatchErrorHandler;
|
|
161
|
+
this.processEventErrorHandler = processEventErrorHandler;
|
|
162
|
+
this.unhandledRequestHandler = unhandledRequestHandler;
|
|
163
|
+
this.unhandledRequestTimeoutMillis = unhandledRequestTimeoutMillis;
|
|
54
164
|
// Assign the requestListener property by binding the unboundRequestListener to this instance
|
|
55
165
|
this.requestListener = this.unboundRequestListener.bind(this);
|
|
56
166
|
}
|
|
@@ -72,17 +182,14 @@ class HTTPReceiver {
|
|
|
72
182
|
this.requestListener(req, res);
|
|
73
183
|
}
|
|
74
184
|
catch (error) {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
res.writeHead(500);
|
|
84
|
-
res.end();
|
|
85
|
-
}
|
|
185
|
+
// You may get an error here only when the requestListener failed
|
|
186
|
+
// to start processing incoming requests, or your app receives a request to an unexpected path.
|
|
187
|
+
this.dispatchErrorHandler({
|
|
188
|
+
error: error,
|
|
189
|
+
logger: this.logger,
|
|
190
|
+
request: req,
|
|
191
|
+
response: res,
|
|
192
|
+
});
|
|
86
193
|
}
|
|
87
194
|
});
|
|
88
195
|
return new Promise((resolve, reject) => {
|
|
@@ -107,35 +214,49 @@ class HTTPReceiver {
|
|
|
107
214
|
// this.server?.removeAllListeners();
|
|
108
215
|
this.server = undefined;
|
|
109
216
|
});
|
|
110
|
-
|
|
217
|
+
let listenOptions = this.port;
|
|
218
|
+
if (portOrListenOptions !== undefined) {
|
|
219
|
+
if (typeof portOrListenOptions === 'number') {
|
|
220
|
+
listenOptions = portOrListenOptions;
|
|
221
|
+
}
|
|
222
|
+
else if (typeof portOrListenOptions === 'string') {
|
|
223
|
+
listenOptions = Number(portOrListenOptions);
|
|
224
|
+
}
|
|
225
|
+
else if (typeof portOrListenOptions === 'object') {
|
|
226
|
+
listenOptions = portOrListenOptions;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
this.server.listen(listenOptions, () => {
|
|
111
230
|
if (this.server === undefined) {
|
|
112
231
|
return reject(new errors_1.ReceiverInconsistentStateError(missingServerErrorDescription));
|
|
113
232
|
}
|
|
114
|
-
resolve(this.server);
|
|
233
|
+
return resolve(this.server);
|
|
115
234
|
});
|
|
116
235
|
});
|
|
117
236
|
}
|
|
118
237
|
// TODO: the arguments should be defined as the arguments to close() (which happen to be none), but for sake of
|
|
119
238
|
// generic types
|
|
120
239
|
stop() {
|
|
240
|
+
if (this.server === undefined) {
|
|
241
|
+
return Promise.reject(new errors_1.ReceiverInconsistentStateError('The receiver cannot be stopped because it was not started.'));
|
|
242
|
+
}
|
|
121
243
|
return new Promise((resolve, reject) => {
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
}
|
|
125
|
-
this.server.close((error) => {
|
|
244
|
+
var _a;
|
|
245
|
+
(_a = this.server) === null || _a === void 0 ? void 0 : _a.close((error) => {
|
|
126
246
|
if (error !== undefined) {
|
|
127
247
|
return reject(error);
|
|
128
248
|
}
|
|
129
249
|
this.server = undefined;
|
|
130
|
-
resolve();
|
|
250
|
+
return resolve();
|
|
131
251
|
});
|
|
132
252
|
});
|
|
133
253
|
}
|
|
134
254
|
unboundRequestListener(req, res) {
|
|
135
255
|
// Route the request
|
|
136
|
-
// NOTE: the domain and scheme
|
|
137
|
-
//
|
|
138
|
-
const { pathname: path } = new url_1.URL(req.url,
|
|
256
|
+
// NOTE: the domain and scheme are irrelevant here.
|
|
257
|
+
// The URL object is only used to safely obtain the path to match
|
|
258
|
+
const { pathname: path } = new url_1.URL(req.url, 'http://localhost');
|
|
259
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
139
260
|
const method = req.method.toUpperCase();
|
|
140
261
|
if (this.endpoints.includes(path) && method === 'POST') {
|
|
141
262
|
// Handle incoming ReceiverEvent
|
|
@@ -143,19 +264,32 @@ class HTTPReceiver {
|
|
|
143
264
|
}
|
|
144
265
|
if (this.installer !== undefined && method === 'GET') {
|
|
145
266
|
// When installer is defined then installPath and installRedirectUriPath are always defined
|
|
267
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
146
268
|
const [installPath, installRedirectUriPath] = [this.installPath, this.installRedirectUriPath];
|
|
269
|
+
// Visiting the installation endpoint
|
|
147
270
|
if (path === installPath) {
|
|
148
271
|
// Render installation path (containing Add to Slack button)
|
|
149
272
|
return this.handleInstallPathRequest(res);
|
|
150
273
|
}
|
|
274
|
+
// Installation has been initiated
|
|
151
275
|
if (path === installRedirectUriPath) {
|
|
152
276
|
// Handle OAuth callback request (to exchange authorization grant for a new access token)
|
|
153
277
|
return this.handleInstallRedirectRequest(req, res);
|
|
154
278
|
}
|
|
155
279
|
}
|
|
280
|
+
// Handle custom routes
|
|
281
|
+
if (Object.keys(this.routes).length) {
|
|
282
|
+
const match = this.routes[path] && this.routes[path][method] !== undefined;
|
|
283
|
+
if (match) {
|
|
284
|
+
return this.routes[path][method](req, res);
|
|
285
|
+
}
|
|
286
|
+
}
|
|
156
287
|
// If the request did not match the previous conditions, an error is thrown. The error can be caught by the
|
|
157
288
|
// the caller in order to defer to other routing logic (similar to calling `next()` in connect middleware).
|
|
158
|
-
|
|
289
|
+
// If you would like to customize the HTTP repsonse for this pattern,
|
|
290
|
+
// implement your own dispatchErrorHandler that handles an exception
|
|
291
|
+
// with ErrorCode.HTTPReceiverDeferredRequestError.
|
|
292
|
+
throw new errors_1.HTTPReceiverDeferredRequestError(`Unhandled HTTP request (${method}) made to ${path}`, req, res);
|
|
159
293
|
}
|
|
160
294
|
handleIncomingEvent(req, res) {
|
|
161
295
|
// Wrapped in an async closure for ease of using await
|
|
@@ -165,10 +299,15 @@ class HTTPReceiver {
|
|
|
165
299
|
let body;
|
|
166
300
|
// Verify authenticity
|
|
167
301
|
try {
|
|
168
|
-
bufferedReq = await verify_request_1.verify({
|
|
302
|
+
bufferedReq = await (0, verify_request_1.verify)({
|
|
303
|
+
// If enabled: false, this method returns bufferredReq without verification
|
|
304
|
+
enabled: this.signatureVerification,
|
|
305
|
+
signingSecret: this.signingSecret,
|
|
306
|
+
}, req);
|
|
169
307
|
}
|
|
170
308
|
catch (err) {
|
|
171
|
-
|
|
309
|
+
const e = err;
|
|
310
|
+
this.logger.warn(`Request verification failed: ${e.message}`);
|
|
172
311
|
res.writeHead(401);
|
|
173
312
|
res.end();
|
|
174
313
|
return;
|
|
@@ -181,13 +320,13 @@ class HTTPReceiver {
|
|
|
181
320
|
body = parseBody(bufferedReq);
|
|
182
321
|
}
|
|
183
322
|
catch (err) {
|
|
184
|
-
|
|
323
|
+
const e = err;
|
|
324
|
+
this.logger.warn(`Malformed request body: ${e.message}`);
|
|
185
325
|
res.writeHead(400);
|
|
186
326
|
res.end();
|
|
187
327
|
return;
|
|
188
328
|
}
|
|
189
329
|
// Handle SSL checks
|
|
190
|
-
// eslint-disable-next-line @typescript-eslint/strict-boolean-expressions
|
|
191
330
|
if (body.ssl_check) {
|
|
192
331
|
res.writeHead(200);
|
|
193
332
|
res.end();
|
|
@@ -203,10 +342,13 @@ class HTTPReceiver {
|
|
|
203
342
|
let isAcknowledged = false;
|
|
204
343
|
setTimeout(() => {
|
|
205
344
|
if (!isAcknowledged) {
|
|
206
|
-
this.
|
|
207
|
-
|
|
345
|
+
this.unhandledRequestHandler({
|
|
346
|
+
logger: this.logger,
|
|
347
|
+
request: req,
|
|
348
|
+
response: res,
|
|
349
|
+
});
|
|
208
350
|
}
|
|
209
|
-
},
|
|
351
|
+
}, this.unhandledRequestTimeoutMillis);
|
|
210
352
|
// Structure the ReceiverEvent
|
|
211
353
|
let storedResponse;
|
|
212
354
|
const event = {
|
|
@@ -218,7 +360,8 @@ class HTTPReceiver {
|
|
|
218
360
|
}
|
|
219
361
|
isAcknowledged = true;
|
|
220
362
|
if (this.processBeforeResponse) {
|
|
221
|
-
//
|
|
363
|
+
// In the case where processBeforeResponse: true is enabled, we don't send the HTTP response immediately.
|
|
364
|
+
// We hold off until the listener execution is completed.
|
|
222
365
|
if (!response) {
|
|
223
366
|
storedResponse = '';
|
|
224
367
|
}
|
|
@@ -228,7 +371,6 @@ class HTTPReceiver {
|
|
|
228
371
|
this.logger.debug('ack() response stored');
|
|
229
372
|
}
|
|
230
373
|
else {
|
|
231
|
-
// eslint-disable-next-line @typescript-eslint/strict-boolean-expressions
|
|
232
374
|
if (!response) {
|
|
233
375
|
res.writeHead(200);
|
|
234
376
|
res.end();
|
|
@@ -244,11 +386,15 @@ class HTTPReceiver {
|
|
|
244
386
|
this.logger.debug('ack() response sent');
|
|
245
387
|
}
|
|
246
388
|
},
|
|
389
|
+
retryNum: (0, http_utils_1.extractRetryNum)(req),
|
|
390
|
+
retryReason: (0, http_utils_1.extractRetryReason)(req),
|
|
391
|
+
customProperties: this.customPropertiesExtractor(bufferedReq),
|
|
247
392
|
};
|
|
248
393
|
// Send the event to the app for processing
|
|
249
394
|
try {
|
|
250
395
|
await ((_a = this.app) === null || _a === void 0 ? void 0 : _a.processEvent(event));
|
|
251
396
|
if (storedResponse !== undefined) {
|
|
397
|
+
// in the case of processBeforeResponse: true
|
|
252
398
|
if (typeof storedResponse === 'string') {
|
|
253
399
|
res.writeHead(200);
|
|
254
400
|
res.end(storedResponse);
|
|
@@ -260,11 +406,19 @@ class HTTPReceiver {
|
|
|
260
406
|
this.logger.debug('stored response sent');
|
|
261
407
|
}
|
|
262
408
|
}
|
|
263
|
-
catch (
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
409
|
+
catch (error) {
|
|
410
|
+
const acknowledgedByHandler = await this.processEventErrorHandler({
|
|
411
|
+
error: error,
|
|
412
|
+
logger: this.logger,
|
|
413
|
+
request: req,
|
|
414
|
+
response: res,
|
|
415
|
+
storedResponse,
|
|
416
|
+
});
|
|
417
|
+
if (acknowledgedByHandler) {
|
|
418
|
+
// If the value is false, we don't touch the value as a race condition
|
|
419
|
+
// with ack() call may occur especially when processBeforeResponse: false
|
|
420
|
+
isAcknowledged = true;
|
|
421
|
+
}
|
|
268
422
|
}
|
|
269
423
|
})();
|
|
270
424
|
}
|
|
@@ -278,32 +432,58 @@ class HTTPReceiver {
|
|
|
278
432
|
try {
|
|
279
433
|
// This function is only called from within unboundRequestListener after checking that installer is defined, and
|
|
280
434
|
// when installer is defined then installUrlOptions is always defined too.
|
|
435
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
281
436
|
const [installer, installUrlOptions] = [this.installer, this.installUrlOptions];
|
|
282
437
|
// Generate the URL for the "Add to Slack" button.
|
|
283
|
-
const url = await installer.generateInstallUrl(installUrlOptions);
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
438
|
+
const url = await installer.generateInstallUrl(installUrlOptions, this.stateVerification);
|
|
439
|
+
if (this.directInstall !== undefined && this.directInstall) {
|
|
440
|
+
// If a Slack app sets "Direct Install URL" in the Slack app configruation,
|
|
441
|
+
// the installation flow of the app should start with the Slack authorize URL.
|
|
442
|
+
// See https://api.slack.com/start/distributing/directory#direct_install for more details.
|
|
443
|
+
res.writeHead(302, { Location: url });
|
|
444
|
+
res.end('');
|
|
445
|
+
}
|
|
446
|
+
else {
|
|
447
|
+
// The installation starts from a landing page served by this app.
|
|
448
|
+
// Generate HTML response body
|
|
449
|
+
const body = this.renderHtmlForInstallPath(url);
|
|
450
|
+
// Serve a basic HTML page including the "Add to Slack" button.
|
|
451
|
+
// Regarding headers:
|
|
452
|
+
// - Content-Type is usually automatically detected by browsers
|
|
453
|
+
// - Content-Length is not used because Transfer-Encoding='chunked' is automatically used.
|
|
454
|
+
res.writeHead(200);
|
|
455
|
+
res.end(body);
|
|
456
|
+
}
|
|
292
457
|
}
|
|
293
458
|
catch (err) {
|
|
459
|
+
const e = err;
|
|
294
460
|
this.logger.error('An unhandled error occurred while Bolt processed a request to the installation path');
|
|
295
|
-
this.logger.debug(`Error details: ${
|
|
461
|
+
this.logger.debug(`Error details: ${e}`);
|
|
296
462
|
}
|
|
297
463
|
})();
|
|
298
464
|
}
|
|
299
465
|
handleInstallRedirectRequest(req, res) {
|
|
300
466
|
// This function is only called from within unboundRequestListener after checking that installer is defined, and
|
|
301
467
|
// when installer is defined then installCallbackOptions is always defined too.
|
|
302
|
-
|
|
303
|
-
installer
|
|
468
|
+
/* eslint-disable @typescript-eslint/no-non-null-assertion */
|
|
469
|
+
const [installer, installCallbackOptions, installUrlOptions] = [
|
|
470
|
+
this.installer,
|
|
471
|
+
this.installCallbackOptions,
|
|
472
|
+
this.installUrlOptions,
|
|
473
|
+
];
|
|
474
|
+
/* eslint-enable @typescript-eslint/no-non-null-assertion */
|
|
475
|
+
const errorHandler = (err) => {
|
|
304
476
|
this.logger.error('HTTPReceiver encountered an unexpected error while handling the OAuth install redirect. Please report to the maintainers.');
|
|
305
477
|
this.logger.debug(`Error details: ${err}`);
|
|
306
|
-
}
|
|
478
|
+
};
|
|
479
|
+
if (this.stateVerification === false) {
|
|
480
|
+
// when stateVerification is disabled pass install options directly to handler
|
|
481
|
+
// since they won't be encoded in the state param of the generated url
|
|
482
|
+
installer.handleCallback(req, res, installCallbackOptions, installUrlOptions).catch(errorHandler);
|
|
483
|
+
}
|
|
484
|
+
else {
|
|
485
|
+
installer.handleCallback(req, res, installCallbackOptions).catch(errorHandler);
|
|
486
|
+
}
|
|
307
487
|
}
|
|
308
488
|
}
|
|
309
489
|
exports.default = HTTPReceiver;
|
|
@@ -312,7 +492,7 @@ function parseBody(req) {
|
|
|
312
492
|
const bodyAsString = req.rawBody.toString();
|
|
313
493
|
const contentType = req.headers['content-type'];
|
|
314
494
|
if (contentType === 'application/x-www-form-urlencoded') {
|
|
315
|
-
const parsedQs = querystring_1.parse(bodyAsString);
|
|
495
|
+
const parsedQs = (0, querystring_1.parse)(bodyAsString);
|
|
316
496
|
const { payload } = parsedQs;
|
|
317
497
|
if (typeof payload === 'string') {
|
|
318
498
|
return JSON.parse(payload);
|
|
@@ -321,38 +501,4 @@ function parseBody(req) {
|
|
|
321
501
|
}
|
|
322
502
|
return JSON.parse(bodyAsString);
|
|
323
503
|
}
|
|
324
|
-
// Option keys for tls.createServer() and tls.createSecureContext(), exclusive of those for http.createServer()
|
|
325
|
-
const httpsOptionKeys = [
|
|
326
|
-
'ALPNProtocols',
|
|
327
|
-
'clientCertEngine',
|
|
328
|
-
'enableTrace',
|
|
329
|
-
'handshakeTimeout',
|
|
330
|
-
'rejectUnauthorized',
|
|
331
|
-
'requestCert',
|
|
332
|
-
'sessionTimeout',
|
|
333
|
-
'SNICallback',
|
|
334
|
-
'ticketKeys',
|
|
335
|
-
'pskCallback',
|
|
336
|
-
'pskIdentityHint',
|
|
337
|
-
'ca',
|
|
338
|
-
'cert',
|
|
339
|
-
'sigalgs',
|
|
340
|
-
'ciphers',
|
|
341
|
-
'clientCertEngine',
|
|
342
|
-
'crl',
|
|
343
|
-
'dhparam',
|
|
344
|
-
'ecdhCurve',
|
|
345
|
-
'honorCipherOrder',
|
|
346
|
-
'key',
|
|
347
|
-
'privateKeyEngine',
|
|
348
|
-
'privateKeyIdentifier',
|
|
349
|
-
'maxVersion',
|
|
350
|
-
'minVersion',
|
|
351
|
-
'passphrase',
|
|
352
|
-
'pfx',
|
|
353
|
-
'secureOptions',
|
|
354
|
-
'secureProtocol',
|
|
355
|
-
'sessionIdContext',
|
|
356
|
-
];
|
|
357
|
-
const missingServerErrorDescription = 'The receiver cannot be started because private state was mutated. Please report this to the maintainers.';
|
|
358
504
|
//# sourceMappingURL=HTTPReceiver.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HTTPReceiver.js","sourceRoot":"","sources":["../../src/receivers/HTTPReceiver.ts"],"names":[],"mappings":";;AAAA,+BAA6G;AAC7G,iCAAsH;AAEtH,6CAA+C;AAC/C,0CAAgE;AAChE,wCAA2G;AAC3G,6BAA0B;AAE1B,qDAA8F;AAG9F,iFAA0E;AAC1E,sCAKmB;AA4BnB;;GAEG;AACH,MAAqB,YAAY;IAyB/B,YAAY,EACV,aAAa,GAAG,EAAE,EAClB,SAAS,GAAG,CAAC,eAAe,CAAC,EAC7B,MAAM,GAAG,SAAS,EAClB,QAAQ,GAAG,iBAAQ,CAAC,IAAI,EACxB,qBAAqB,GAAG,KAAK,EAC7B,QAAQ,GAAG,SAAS,EACpB,YAAY,GAAG,SAAS,EACxB,WAAW,GAAG,SAAS,EACvB,iBAAiB,GAAG,SAAS,EAC7B,MAAM,GAAG,SAAS,EAClB,gBAAgB,GAAG,EAAE,GACD;;QACpB,sEAAsE;QACtE,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;QACnD,IAAI,CAAC,MAAM;YACT,MAAM,aAAN,MAAM,cAAN,MAAM,GACN,CAAC,GAAG,EAAE;gBACJ,MAAM,aAAa,GAAG,IAAI,sBAAa,EAAE,CAAC;gBAC1C,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACjC,OAAO,aAAa,CAAC;YACvB,CAAC,CAAC,EAAE,CAAC;QACP,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAEpE,qEAAqE;QACrE,IACE,QAAQ,KAAK,SAAS;YACtB,YAAY,KAAK,SAAS;YAC1B,CAAC,WAAW,KAAK,SAAS,IAAI,gBAAgB,CAAC,UAAU,KAAK,SAAS,CAAC,EACxE;YACA,IAAI,CAAC,SAAS,GAAG,IAAI,uBAAe,CAAC;gBACnC,QAAQ;gBACR,YAAY;gBACZ,WAAW;gBACX,iBAAiB;gBACjB,MAAM;gBACN,QAAQ;gBACR,UAAU,EAAE,gBAAgB,CAAC,UAAU;gBACvC,WAAW,EAAE,gBAAgB,CAAC,WAAW;gBACzC,aAAa,EAAE,gBAAgB,CAAC,aAAa;gBAC7C,gBAAgB,EAAE,gBAAgB,CAAC,gBAAgB;aACpD,CAAC,CAAC;YAEH,uFAAuF;YACvF,IAAI,CAAC,WAAW,GAAG,MAAA,gBAAgB,CAAC,WAAW,mCAAI,gBAAgB,CAAC;YACpE,IAAI,CAAC,sBAAsB,GAAG,MAAA,gBAAgB,CAAC,eAAe,mCAAI,uBAAuB,CAAC;YAC1F,IAAI,CAAC,iBAAiB,GAAG;gBACvB,MAAM,EAAE,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE;gBACpB,UAAU,EAAE,gBAAgB,CAAC,UAAU;gBACvC,QAAQ,EAAE,gBAAgB,CAAC,QAAQ;aACpC,CAAC;YACF,IAAI,CAAC,sBAAsB,GAAG,MAAA,gBAAgB,CAAC,eAAe,mCAAI,EAAE,CAAC;SACtE;QAED,6FAA6F;QAC7F,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChE,CAAC;IAEM,IAAI,CAAC,GAAQ;QAClB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAQM,KAAK,CACV,mBAA2C,EAC3C,gBAAoD,EAAE;QAEtD,IAAI,cAAc,GAAmD,mBAAY,CAAC;QAElF,gHAAgH;QAChH,WAAW;QACX,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YACpF,cAAc,GAAG,oBAAiB,CAAC;SACpC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;YAC7B,OAAO,OAAO,CAAC,MAAM,CACnB,IAAI,uCAA8B,CAAC,gEAAgE,CAAC,CACrG,CAAC;SACH;QAED,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACvD,IAAI;gBACF,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;aAChC;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAS,CAAC,gCAAgC,EAAE;oBAC7D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;oBACrD,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;oBACnB,GAAG,CAAC,GAAG,EAAE,CAAC;iBACX;qBAAM;oBACL,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;oBACzD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,KAAK,EAAE,CAAC,CAAC;oBAC7C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;oBACnB,GAAG,CAAC,GAAG,EAAE,CAAC;iBACX;aACF;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;gBAC7B,MAAM,IAAI,uCAA8B,CAAC,6BAA6B,CAAC,CAAC;aACzE;YAED,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBAChC,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;oBAC7B,MAAM,IAAI,uCAA8B,CAAC,6BAA6B,CAAC,CAAC;iBACzE;gBAED,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBAEpB,2GAA2G;gBAC3G,4GAA4G;gBAC5G,6GAA6G;gBAC7G,cAAc;gBACd,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;gBAC3B,4GAA4G;gBAC5G,4GAA4G;gBAC5G,iBAAiB;gBACjB,qCAAqC;gBACrC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YAC1B,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,GAAG,EAAE;gBAC3C,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;oBAC7B,OAAO,MAAM,CAAC,IAAI,uCAA8B,CAAC,6BAA6B,CAAC,CAAC,CAAC;iBAClF;gBAED,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,+GAA+G;IAC/G,gBAAgB;IACT,IAAI;QACT,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;gBAC7B,OAAO,MAAM,CAAC,IAAI,uCAA8B,CAAC,4DAA4D,CAAC,CAAC,CAAC;aACjH;YACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC1B,IAAI,KAAK,KAAK,SAAS,EAAE;oBACvB,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;iBACtB;gBAED,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;gBACxB,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,sBAAsB,CAAC,GAAoB,EAAE,GAAmB;QACtE,oBAAoB;QAEpB,+GAA+G;QAC/G,+CAA+C;QAC/C,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI,SAAG,CAAC,GAAG,CAAC,GAAa,EAAE,UAAU,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACpF,MAAM,MAAM,GAAG,GAAG,CAAC,MAAO,CAAC,WAAW,EAAE,CAAC;QAEzC,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,MAAM,KAAK,MAAM,EAAE;YACtD,gCAAgC;YAChC,OAAO,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;SAC3C;QAED,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,KAAK,KAAK,EAAE;YACpD,2FAA2F;YAC3F,MAAM,CAAC,WAAW,EAAE,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,WAAY,EAAE,IAAI,CAAC,sBAAuB,CAAC,CAAC;YAEhG,IAAI,IAAI,KAAK,WAAW,EAAE;gBACxB,4DAA4D;gBAC5D,OAAO,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC;aAC3C;YACD,IAAI,IAAI,KAAK,sBAAsB,EAAE;gBACnC,yFAAyF;gBACzF,OAAO,IAAI,CAAC,4BAA4B,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;aACpD;SACF;QAED,2GAA2G;QAC3G,2GAA2G;QAC3G,MAAM,IAAI,yCAAgC,CAAC,wBAAwB,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACjF,CAAC;IAEO,mBAAmB,CAAC,GAAoB,EAAE,GAAmB;QACnE,sDAAsD;QACtD,CAAC,KAAK,IAAI,EAAE;;YACV,IAAI,WAAoC,CAAC;YACzC,IAAI,IAAS,CAAC;YAEd,sBAAsB;YACtB,IAAI;gBACF,WAAW,GAAG,MAAM,uBAAuB,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,GAAG,CAAC,CAAC;aACzF;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gCAAgC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAChE,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACnB,GAAG,CAAC,GAAG,EAAE,CAAC;gBACV,OAAO;aACR;YAED,qBAAqB;YACrB,iHAAiH;YACjH,gHAAgH;YAChH,2GAA2G;YAC3G,IAAI;gBACF,IAAI,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;aAC/B;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC3D,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACnB,GAAG,CAAC,GAAG,EAAE,CAAC;gBACV,OAAO;aACR;YAED,oBAAoB;YACpB,yEAAyE;YACzE,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACnB,GAAG,CAAC,GAAG,EAAE,CAAC;gBACV,OAAO;aACR;YAED,0BAA0B;YAC1B,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB,EAAE;gBACpC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;gBACvD,OAAO;aACR;YAED,4BAA4B;YAC5B,IAAI,cAAc,GAAG,KAAK,CAAC;YAC3B,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,cAAc,EAAE;oBACnB,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,2DAA2D;wBACzD,yDAAyD,CAC5D,CAAC;iBACH;YACH,CAAC,EAAE,IAAI,CAAC,CAAC;YAET,8BAA8B;YAC9B,IAAI,cAAc,CAAC;YACnB,MAAM,KAAK,GAAkB;gBAC3B,IAAI;gBACJ,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;oBACtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;oBACjC,IAAI,cAAc,EAAE;wBAClB,MAAM,IAAI,iCAAwB,EAAE,CAAC;qBACtC;oBACD,cAAc,GAAG,IAAI,CAAC;oBACtB,IAAI,IAAI,CAAC,qBAAqB,EAAE;wBAC9B,yEAAyE;wBACzE,IAAI,CAAC,QAAQ,EAAE;4BACb,cAAc,GAAG,EAAE,CAAC;yBACrB;6BAAM;4BACL,cAAc,GAAG,QAAQ,CAAC;yBAC3B;wBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;qBAC5C;yBAAM;wBACL,yEAAyE;wBACzE,IAAI,CAAC,QAAQ,EAAE;4BACb,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;4BACnB,GAAG,CAAC,GAAG,EAAE,CAAC;yBACX;6BAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;4BACvC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;4BACnB,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;yBACnB;6BAAM;4BACL,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;4BAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;yBACnC;wBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;qBAC1C;gBACH,CAAC;aACF,CAAC;YAEF,2CAA2C;YAC3C,IAAI;gBACF,MAAM,CAAA,MAAA,IAAI,CAAC,GAAG,0CAAE,YAAY,CAAC,KAAK,CAAC,CAAA,CAAC;gBACpC,IAAI,cAAc,KAAK,SAAS,EAAE;oBAChC,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE;wBACtC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;wBACnB,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;qBACzB;yBAAM;wBACL,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;wBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;qBACzC;oBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;iBAC3C;aACF;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;gBAC/E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,GAAG,qBAAqB,cAAc,EAAE,CAAC,CAAC;gBAC9E,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACnB,GAAG,CAAC,GAAG,EAAE,CAAC;aACX;QACH,CAAC,CAAC,EAAE,CAAC;IACP,CAAC;IAEO,wBAAwB,CAAC,GAAmB;QAClD,sDAAsD;QACtD,CAAC,KAAK,IAAI,EAAE;YACV,gHAAgH;YAChH,6GAA6G;YAC7G,8GAA8G;YAC9G,sCAAsC;YACtC,IAAI;gBACF,gHAAgH;gBAChH,0EAA0E;gBAC1E,MAAM,CAAC,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAU,EAAE,IAAI,CAAC,iBAAkB,CAAC,CAAC;gBAElF,kDAAkD;gBAClD,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;gBAElE,8BAA8B;gBAC9B,MAAM,IAAI,GAAG,uDAAwB,CAAC,GAAG,CAAC,CAAC;gBAE3C,+DAA+D;gBAC/D,qBAAqB;gBACrB,+DAA+D;gBAC/D,0FAA0F;gBAC1F,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACnB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACf;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qFAAqF,CAAC,CAAC;gBACzG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,GAAG,EAAE,CAAC,CAAC;aAC5C;QACH,CAAC,CAAC,EAAE,CAAC;IACP,CAAC;IAEO,4BAA4B,CAAC,GAAoB,EAAE,GAAmB;QAC5E,gHAAgH;QAChH,+EAA+E;QAC/E,MAAM,CAAC,SAAS,EAAE,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAU,EAAE,IAAI,CAAC,sBAAuB,CAAC,CAAC;QAE5F,SAAS,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,sBAAsB,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACvE,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,2HAA2H,CAC5H,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,GAAG,EAAE,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAnXD,+BAmXC;AAED,UAAU;AAEV,SAAS,SAAS,CAAC,GAA4B;IAC7C,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5C,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAChD,IAAI,WAAW,KAAK,mCAAmC,EAAE;QACvD,MAAM,QAAQ,GAAG,mBAAO,CAAC,YAAY,CAAC,CAAC;QACvC,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;QAC7B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;SAC5B;QACD,OAAO,QAAQ,CAAC;KACjB;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;AAClC,CAAC;AAED,+GAA+G;AAC/G,MAAM,eAAe,GAAG;IACtB,eAAe;IACf,kBAAkB;IAClB,aAAa;IACb,kBAAkB;IAClB,oBAAoB;IACpB,aAAa;IACb,gBAAgB;IAChB,aAAa;IACb,YAAY;IACZ,aAAa;IACb,iBAAiB;IAEjB,IAAI;IACJ,MAAM;IACN,SAAS;IACT,SAAS;IACT,kBAAkB;IAClB,KAAK;IACL,SAAS;IACT,WAAW;IACX,kBAAkB;IAClB,KAAK;IACL,kBAAkB;IAClB,sBAAsB;IACtB,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,KAAK;IACL,eAAe;IACf,gBAAgB;IAChB,kBAAkB;CACnB,CAAC;AAEF,MAAM,6BAA6B,GACjC,0GAA0G,CAAC"}
|
|
1
|
+
{"version":3,"file":"HTTPReceiver.js","sourceRoot":"","sources":["../../src/receivers/HTTPReceiver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +1,39 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
1
2
|
import { SocketModeClient } from '@slack/socket-mode';
|
|
3
|
+
import { IncomingMessage, ServerResponse } from 'http';
|
|
2
4
|
import { Logger, LogLevel } from '@slack/logger';
|
|
3
5
|
import { InstallProvider, CallbackOptions, InstallProviderOptions, InstallURLOptions } from '@slack/oauth';
|
|
4
6
|
import { AppsConnectionsOpenResponse } from '@slack/web-api';
|
|
5
7
|
import App from '../App';
|
|
6
8
|
import { Receiver } from '../types';
|
|
9
|
+
import { StringIndexed } from '../types/helpers';
|
|
7
10
|
export interface SocketModeReceiverOptions {
|
|
8
11
|
logger?: Logger;
|
|
9
12
|
logLevel?: LogLevel;
|
|
10
13
|
clientId?: string;
|
|
11
14
|
clientSecret?: string;
|
|
12
15
|
stateSecret?: InstallProviderOptions['stateSecret'];
|
|
16
|
+
redirectUri?: string;
|
|
13
17
|
installationStore?: InstallProviderOptions['installationStore'];
|
|
14
18
|
scopes?: InstallURLOptions['scopes'];
|
|
15
19
|
installerOptions?: InstallerOptions;
|
|
16
20
|
appToken: string;
|
|
21
|
+
customRoutes?: CustomRoute[];
|
|
22
|
+
customPropertiesExtractor?: (args: any) => StringIndexed;
|
|
23
|
+
}
|
|
24
|
+
export interface CustomRoute {
|
|
25
|
+
path: string;
|
|
26
|
+
method: string | string[];
|
|
27
|
+
handler: (req: IncomingMessage, res: ServerResponse) => void;
|
|
17
28
|
}
|
|
18
29
|
interface InstallerOptions {
|
|
19
30
|
stateStore?: InstallProviderOptions['stateStore'];
|
|
31
|
+
stateVerification?: InstallProviderOptions['stateVerification'];
|
|
20
32
|
authVersion?: InstallProviderOptions['authVersion'];
|
|
21
33
|
metadata?: InstallURLOptions['metadata'];
|
|
22
34
|
installPath?: string;
|
|
35
|
+
directInstall?: boolean;
|
|
36
|
+
renderHtmlForInstallPath?: (url: string) => string;
|
|
23
37
|
redirectUriPath?: string;
|
|
24
38
|
callbackOptions?: CallbackOptions;
|
|
25
39
|
userScopes?: InstallURLOptions['userScopes'];
|
|
@@ -35,7 +49,10 @@ export default class SocketModeReceiver implements Receiver {
|
|
|
35
49
|
private app;
|
|
36
50
|
private logger;
|
|
37
51
|
installer: InstallProvider | undefined;
|
|
38
|
-
|
|
52
|
+
private httpServer?;
|
|
53
|
+
private httpServerPort?;
|
|
54
|
+
private routes;
|
|
55
|
+
constructor({ appToken, logger, logLevel, clientId, clientSecret, stateSecret, redirectUri, installationStore, scopes, installerOptions, customRoutes, customPropertiesExtractor, }: SocketModeReceiverOptions);
|
|
39
56
|
init(app: App): void;
|
|
40
57
|
start(): Promise<AppsConnectionsOpenResponse>;
|
|
41
58
|
stop(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SocketModeReceiver.d.ts","sourceRoot":"","sources":["../../src/receivers/SocketModeReceiver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SocketModeReceiver.d.ts","sourceRoot":"","sources":["../../src/receivers/SocketModeReceiver.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAgB,eAAe,EAAE,cAAc,EAAU,MAAM,MAAM,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAiB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC3G,OAAO,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,GAAG,MAAM,QAAQ,CAAC;AACzB,OAAO,EAAE,QAAQ,EAAiB,MAAM,UAAU,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAMjD,MAAM,WAAW,yBAAyB;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;IAChE,MAAM,CAAC,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACrC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,yBAAyB,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,aAAa,CAAC;CAC1D;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,OAAO,EAAE,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,KAAK,IAAI,CAAC;CAC9D;AAGD,UAAU,gBAAgB;IACxB,UAAU,CAAC,EAAE,sBAAsB,CAAC,YAAY,CAAC,CAAC;IAClD,iBAAiB,CAAC,EAAE,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;IAChE,WAAW,CAAC,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC;IACpD,QAAQ,CAAC,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,wBAAwB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACnD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,UAAU,CAAC,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC7C,aAAa,CAAC,EAAE,sBAAsB,CAAC,eAAe,CAAC,CAAC;IACxD,gBAAgB,CAAC,EAAE,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;IAC9D,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,kBAAmB,YAAW,QAAQ;IAElD,MAAM,EAAE,gBAAgB,CAAC;IAEhC,OAAO,CAAC,GAAG,CAAkB;IAE7B,OAAO,CAAC,MAAM,CAAS;IAEhB,SAAS,EAAE,eAAe,GAAG,SAAS,CAAa;IAE1D,OAAO,CAAC,UAAU,CAAC,CAAS;IAE5B,OAAO,CAAC,cAAc,CAAC,CAAS;IAEhC,OAAO,CAAC,MAAM,CAAiB;gBAEZ,EACjB,QAAQ,EACR,MAAkB,EAClB,QAAwB,EACxB,QAAoB,EACpB,YAAwB,EACxB,WAAuB,EACvB,WAAuB,EACvB,iBAA6B,EAC7B,MAAkB,EAClB,gBAAqB,EACrB,YAAiB,EACjB,yBAA2C,GAC5C,EAAE,yBAAyB;IA4IrB,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;IAIpB,KAAK,IAAI,OAAO,CAAC,2BAA2B,CAAC;IAS7C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAgB7B"}
|