@slack/bolt 2.4.1 → 2.7.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.
Files changed (45) hide show
  1. package/README.md +2 -5
  2. package/dist/App.d.ts +13 -7
  3. package/dist/App.d.ts.map +1 -1
  4. package/dist/App.js +195 -65
  5. package/dist/App.js.map +1 -1
  6. package/dist/SocketModeReceiver.d.ts +43 -0
  7. package/dist/SocketModeReceiver.d.ts.map +1 -0
  8. package/dist/SocketModeReceiver.js +129 -0
  9. package/dist/SocketModeReceiver.js.map +1 -0
  10. package/dist/helpers.d.ts.map +1 -1
  11. package/dist/helpers.js +25 -6
  12. package/dist/helpers.js.map +1 -1
  13. package/dist/middleware/builtin.js +3 -3
  14. package/dist/middleware/builtin.js.map +1 -1
  15. package/dist/types/actions/block-action.d.ts +6 -1
  16. package/dist/types/actions/block-action.d.ts.map +1 -1
  17. package/dist/types/actions/dialog-action.d.ts +6 -1
  18. package/dist/types/actions/dialog-action.d.ts.map +1 -1
  19. package/dist/types/actions/interactive-message.d.ts +6 -1
  20. package/dist/types/actions/interactive-message.d.ts.map +1 -1
  21. package/dist/types/actions/workflow-step-edit.d.ts +5 -0
  22. package/dist/types/actions/workflow-step-edit.d.ts.map +1 -1
  23. package/dist/types/command/index.d.ts +1 -0
  24. package/dist/types/command/index.d.ts.map +1 -1
  25. package/dist/types/events/base-events.d.ts +77 -164
  26. package/dist/types/events/base-events.d.ts.map +1 -1
  27. package/dist/types/events/base-events.js.map +1 -1
  28. package/dist/types/events/index.d.ts +12 -1
  29. package/dist/types/events/index.d.ts.map +1 -1
  30. package/dist/types/events/message-events.d.ts +112 -0
  31. package/dist/types/events/message-events.d.ts.map +1 -0
  32. package/dist/types/{actions/message-action.js → events/message-events.js} +1 -1
  33. package/dist/types/events/message-events.js.map +1 -0
  34. package/dist/types/options/index.d.ts +6 -1
  35. package/dist/types/options/index.d.ts.map +1 -1
  36. package/dist/types/shortcuts/global-shortcut.d.ts +6 -1
  37. package/dist/types/shortcuts/global-shortcut.d.ts.map +1 -1
  38. package/dist/types/shortcuts/message-shortcut.d.ts +7 -1
  39. package/dist/types/shortcuts/message-shortcut.d.ts.map +1 -1
  40. package/dist/types/view/index.d.ts +12 -2
  41. package/dist/types/view/index.d.ts.map +1 -1
  42. package/package.json +4 -4
  43. package/dist/types/actions/message-action.d.ts +0 -37
  44. package/dist/types/actions/message-action.d.ts.map +0 -1
  45. package/dist/types/actions/message-action.js.map +0 -1
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Bolt ![Bolt logo](docs/assets/bolt-logo.svg) for JavaScript
2
2
 
3
- [![Build Status](https://travis-ci.org/slackapi/bolt-js.svg?branch=master)](https://travis-ci.org/slackapi/bolt-js)
4
3
  [![codecov](https://codecov.io/gh/slackapi/bolt/branch/master/graph/badge.svg)](https://codecov.io/gh/slackapi/bolt-js)
4
+ [![build-ci](https://github.com/slackapi/bolt-js/workflows/CI%20Build/badge.svg)](https://github.com/slackapi/bolt-js/actions?query=workflow%3A%22CI+Build%22)
5
5
 
6
6
  A JavaScript framework to build Slack apps in a flash with the latest platform features. Read the [getting started guide](https://slack.dev/bolt-js/tutorial/getting-started) to set-up and run your first Bolt app.
7
7
 
@@ -11,9 +11,6 @@ Read [the documentation](https://slack.dev/bolt-js) to explore the basic and adv
11
11
 
12
12
  ```bash
13
13
  npm install @slack/bolt
14
-
15
- # Or with yarn
16
- yarn add @slack/bolt
17
14
  ```
18
15
 
19
16
  ## Initialization
@@ -83,7 +80,7 @@ Most of the app's functionality will be inside listener functions (the `fn` para
83
80
  | `client` | Web API client that uses the token associated with that event. For single-workspace installations, the token is provided to the constructor. For multi-workspace installations, the token is returned by the `authorize` function.
84
81
  | `respond` | Function that responds to an incoming event **if** it contains a `response_url` (shortcuts, actions, and slash commands). `respond` returns a promise that resolves with the results of responding using the `response_url`.
85
82
  | `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.
86
- | `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 `authed_users`).
83
+ | `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`).
87
84
 
88
85
 
89
86
  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
@@ -25,7 +25,8 @@ export interface AppOptions {
25
25
  token?: AuthorizeResult['botToken'];
26
26
  botId?: AuthorizeResult['botId'];
27
27
  botUserId?: AuthorizeResult['botUserId'];
28
- authorize?: Authorize;
28
+ authorize?: Authorize<false>;
29
+ orgAuthorize?: Authorize<true>;
29
30
  receiver?: Receiver;
30
31
  logger?: Logger;
31
32
  logLevel?: LogLevel;
@@ -34,15 +35,16 @@ export interface AppOptions {
34
35
  }
35
36
  export { LogLevel, Logger } from '@slack/logger';
36
37
  /** Authorization function - seeds the middleware processing and listeners with an authorization context */
37
- export interface Authorize {
38
- (source: AuthorizeSourceData, body?: AnyMiddlewareArgs['body']): Promise<AuthorizeResult>;
38
+ export interface Authorize<IsEnterpriseInstall extends boolean = false> {
39
+ (source: AuthorizeSourceData<IsEnterpriseInstall>, body?: AnyMiddlewareArgs['body']): Promise<AuthorizeResult>;
39
40
  }
40
41
  /** Authorization function inputs - authenticated data about an event for the authorization function */
41
- export interface AuthorizeSourceData {
42
- teamId: string;
43
- enterpriseId?: string;
42
+ export interface AuthorizeSourceData<IsEnterpriseInstall extends boolean = false> {
43
+ teamId: IsEnterpriseInstall extends true ? string | undefined : string;
44
+ enterpriseId: IsEnterpriseInstall extends true ? string : string | undefined;
44
45
  userId?: string;
45
46
  conversationId?: string;
47
+ isEnterpriseInstall: IsEnterpriseInstall;
46
48
  }
47
49
  /** Authorization function outputs - data that will be available as part of event processing */
48
50
  export interface AuthorizeResult {
@@ -50,6 +52,8 @@ export interface AuthorizeResult {
50
52
  userToken?: string;
51
53
  botId?: string;
52
54
  botUserId?: string;
55
+ teamId?: string;
56
+ enterpriseId?: string;
53
57
  [key: string]: any;
54
58
  }
55
59
  export interface ActionConstraints<A extends SlackAction = SlackAction> {
@@ -85,6 +89,8 @@ export default class App {
85
89
  private logger;
86
90
  /** Authorize */
87
91
  private authorize;
92
+ /** Org Authorize */
93
+ private orgAuthorize;
88
94
  /** Global middleware chain */
89
95
  private middleware;
90
96
  /** Listener middleware chains */
@@ -92,7 +98,7 @@ export default class App {
92
98
  private errorHandler;
93
99
  private axios;
94
100
  private installerOptions;
95
- constructor({ signingSecret, endpoints, agent, clientTls, receiver, convoStore, token, botId, botUserId, authorize, logger, logLevel, ignoreSelf, clientOptions, processBeforeResponse, clientId, clientSecret, stateSecret, installationStore, scopes, installerOptions, }?: AppOptions);
101
+ constructor({ signingSecret, endpoints, agent, clientTls, receiver, convoStore, token, botId, botUserId, authorize, orgAuthorize, logger, logLevel, ignoreSelf, clientOptions, processBeforeResponse, clientId, clientSecret, stateSecret, installationStore, scopes, installerOptions, }?: AppOptions);
96
102
  /**
97
103
  * Register a new middleware, processed in the order registered.
98
104
  *
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
@@ -37,7 +37,8 @@ class WebClientPool {
37
37
  * A Slack App
38
38
  */
39
39
  class App {
40
- constructor({ signingSecret = undefined, endpoints = undefined, agent = undefined, clientTls = undefined, receiver = undefined, convoStore = undefined, token = undefined, botId = undefined, botUserId = undefined, authorize = undefined, logger = undefined, logLevel = undefined, ignoreSelf = true, clientOptions = undefined, processBeforeResponse = false, clientId = undefined, clientSecret = undefined, stateSecret = undefined, installationStore = undefined, scopes = undefined, installerOptions = undefined, } = {}) {
40
+ constructor({ signingSecret = undefined, endpoints = undefined, agent = undefined, clientTls = undefined, receiver = undefined, convoStore = undefined, token = undefined, botId = undefined, botUserId = undefined, authorize = undefined, orgAuthorize = undefined, logger = undefined, logLevel = undefined, ignoreSelf = true, clientOptions = undefined, processBeforeResponse = false, clientId = undefined, clientSecret = undefined, stateSecret = undefined, installationStore = undefined, scopes = undefined, installerOptions = undefined, } = {}) {
41
+ // Some payloads don't have teamId anymore. So we use EnterpriseId in those scenarios
41
42
  this.clients = {};
42
43
  if (typeof logger === 'undefined') {
43
44
  // Initialize with the default logger
@@ -105,22 +106,34 @@ class App {
105
106
  usingOauth = true;
106
107
  }
107
108
  if (token !== undefined) {
108
- if (authorize !== undefined || usingOauth) {
109
- throw new errors_1.AppInitializationError(`token as well as authorize options or oauth installer options were provided. ${tokenUsage}`);
109
+ if (authorize !== undefined || orgAuthorize !== undefined || usingOauth) {
110
+ throw new errors_1.AppInitializationError(`token as well as authorize, orgAuthorize, or oauth installer options were provided. ${tokenUsage}`);
110
111
  }
111
- this.authorize = singleTeamAuthorization(this.client, { botId, botUserId, botToken: token });
112
+ this.authorize = singleAuthorization(this.client, { botId, botUserId, botToken: token });
113
+ this.orgAuthorize = singleAuthorization(this.client, { botId, botUserId, botToken: token });
112
114
  }
113
- else if (authorize === undefined && !usingOauth) {
114
- throw new errors_1.AppInitializationError(`No token, no authorize options, and no oauth installer options provided. ${tokenUsage}`);
115
+ else if (authorize === undefined && orgAuthorize === undefined && !usingOauth) {
116
+ throw new errors_1.AppInitializationError(`No token, no authorize, no orgAuthorize, and no oauth installer options provided. ${tokenUsage}`);
115
117
  }
116
- else if (authorize !== undefined && usingOauth) {
118
+ else if ((authorize !== undefined || orgAuthorize !== undefined) && usingOauth) {
117
119
  throw new errors_1.AppInitializationError(`Both authorize options and oauth installer options provided. ${tokenUsage}`);
118
120
  }
119
- else if (authorize === undefined && usingOauth) {
121
+ else if (authorize === undefined && orgAuthorize === undefined && usingOauth) {
120
122
  this.authorize = this.receiver.installer.authorize;
123
+ this.orgAuthorize = this.receiver.installer.authorize;
121
124
  }
122
- else if (authorize !== undefined && !usingOauth) {
125
+ else if (authorize === undefined && orgAuthorize !== undefined && !usingOauth) {
126
+ // only supporting org installs
127
+ this.orgAuthorize = orgAuthorize;
128
+ }
129
+ else if (authorize !== undefined && orgAuthorize === undefined && !usingOauth) {
130
+ // only supporting non org installs
131
+ this.authorize = authorize;
132
+ }
133
+ else if (authorize !== undefined && orgAuthorize !== undefined && !usingOauth) {
134
+ // supporting both org installs and non org installs
123
135
  this.authorize = authorize;
136
+ this.orgAuthorize = orgAuthorize;
124
137
  }
125
138
  else {
126
139
  this.logger.error('Never should have reached this point, please report to the team');
@@ -181,7 +194,11 @@ class App {
181
194
  }
182
195
  return patternOrMiddleware;
183
196
  });
184
- this.listeners.push([builtin_1.onlyEvents, builtin_1.matchEventType('message'), ...messageMiddleware]);
197
+ this.listeners.push([
198
+ builtin_1.onlyEvents,
199
+ builtin_1.matchEventType('message'),
200
+ ...messageMiddleware,
201
+ ]);
185
202
  }
186
203
  shortcut(callbackIdOrConstraints, ...listeners) {
187
204
  const constraints = typeof callbackIdOrConstraints === 'string' || util_1.default.types.isRegExp(callbackIdOrConstraints)
@@ -193,7 +210,11 @@ class App {
193
210
  this.logger.error(`Slack listener cannot be attached using unknown constraint keys: ${unknownConstraintKeys.join(', ')}`);
194
211
  return;
195
212
  }
196
- this.listeners.push([builtin_1.onlyShortcuts, builtin_1.matchConstraints(constraints), ...listeners]);
213
+ this.listeners.push([
214
+ builtin_1.onlyShortcuts,
215
+ builtin_1.matchConstraints(constraints),
216
+ ...listeners,
217
+ ]);
197
218
  }
198
219
  action(actionIdOrConstraints, ...listeners) {
199
220
  // Normalize Constraints
@@ -232,7 +253,11 @@ class App {
232
253
  this.logger.error(`View listener cannot be attached using unknown view event type: ${constraints.type}`);
233
254
  return;
234
255
  }
235
- this.listeners.push([builtin_1.onlyViewActions, builtin_1.matchConstraints(constraints), ...listeners]);
256
+ this.listeners.push([
257
+ builtin_1.onlyViewActions,
258
+ builtin_1.matchConstraints(constraints),
259
+ ...listeners,
260
+ ]);
236
261
  }
237
262
  error(errorHandler) {
238
263
  this.errorHandler = errorHandler;
@@ -254,16 +279,31 @@ class App {
254
279
  }
255
280
  // From this point on, we assume that body is not just a key-value map, but one of the types of bodies we expect
256
281
  const bodyArg = body;
257
- // Initialize context (shallow copy to enforce object identity separation)
258
- const source = buildSource(type, conversationId, bodyArg);
282
+ // Check if type event with the authorizations object or if it has a top level is_enterprise_install property
283
+ const isEnterpriseInstall = isBodyWithTypeEnterpriseInstall(bodyArg, type);
284
+ const source = buildSource(type, conversationId, bodyArg, isEnterpriseInstall);
259
285
  let authorizeResult;
260
286
  try {
261
- authorizeResult = await this.authorize(source, bodyArg);
287
+ if (source.isEnterpriseInstall) {
288
+ authorizeResult = await this.orgAuthorize(source, bodyArg);
289
+ }
290
+ else {
291
+ authorizeResult = await this.authorize(source, bodyArg);
292
+ }
262
293
  }
263
294
  catch (error) {
264
295
  this.logger.warn('Authorization of incoming event did not succeed. No listeners will be called.');
296
+ error.code = 'slack_bolt_authorization_error';
265
297
  return this.handleError(error);
266
298
  }
299
+ // Try to set teamId from AuthorizeResult before using one from source
300
+ if (authorizeResult.teamId === undefined && source.teamId !== undefined) {
301
+ authorizeResult.teamId = source.teamId;
302
+ }
303
+ // Try to set enterpriseId from AuthorizeResult before using one from source
304
+ if (authorizeResult.enterpriseId === undefined && source.enterpriseId !== undefined) {
305
+ authorizeResult.enterpriseId = source.enterpriseId;
306
+ }
267
307
  const context = { ...authorizeResult };
268
308
  // Factory for say() utility
269
309
  const createSay = (channelId) => {
@@ -343,12 +383,27 @@ class App {
343
383
  let { client } = this;
344
384
  const token = selectToken(context);
345
385
  if (token !== undefined) {
346
- let pool = this.clients[source.teamId];
347
- if (pool === undefined) {
348
- // eslint-disable-next-line no-multi-assign
349
- pool = this.clients[source.teamId] = new WebClientPool();
386
+ let pool;
387
+ const clientOptionsCopy = { ...this.clientOptions };
388
+ if (authorizeResult.teamId !== undefined) {
389
+ pool = this.clients[authorizeResult.teamId];
390
+ if (pool === undefined) {
391
+ // eslint-disable-next-line no-multi-assign
392
+ pool = this.clients[authorizeResult.teamId] = new WebClientPool();
393
+ }
394
+ // Add teamId to clientOptions so it can be automatically added to web-api calls
395
+ clientOptionsCopy.teamId = authorizeResult.teamId;
396
+ }
397
+ else if (authorizeResult.enterpriseId !== undefined) {
398
+ pool = this.clients[authorizeResult.enterpriseId];
399
+ if (pool === undefined) {
400
+ // eslint-disable-next-line no-multi-assign
401
+ pool = this.clients[authorizeResult.enterpriseId] = new WebClientPool();
402
+ }
403
+ }
404
+ if (pool !== undefined) {
405
+ client = pool.getOrCreate(token, clientOptionsCopy);
350
406
  }
351
- client = pool.getOrCreate(token, this.clientOptions);
352
407
  }
353
408
  // Dispatch event through the global middleware chain
354
409
  try {
@@ -394,52 +449,127 @@ const validViewTypes = ['view_closed', 'view_submission'];
394
449
  /**
395
450
  * Helper which builds the data structure the authorize hook uses to provide tokens for the context.
396
451
  */
397
- function buildSource(type, channelId, body) {
452
+ function buildSource(type, channelId, body, isEnterpriseInstall) {
398
453
  // NOTE: potentially something that can be optimized, so that each of these conditions isn't evaluated more than once.
399
454
  // if this makes it prettier, great! but we should probably check perf before committing to any specific optimization.
400
- // tslint:disable:max-line-length
401
- const source = {
402
- teamId: type === helpers_1.IncomingEventType.Event || type === helpers_1.IncomingEventType.Command
403
- ? body.team_id
404
- : type === helpers_1.IncomingEventType.Action ||
405
- type === helpers_1.IncomingEventType.Options ||
406
- type === helpers_1.IncomingEventType.ViewAction ||
407
- type === helpers_1.IncomingEventType.Shortcut
408
- ? body.team.id
409
- : helpers_1.assertNever(type),
410
- enterpriseId: type === helpers_1.IncomingEventType.Event || type === helpers_1.IncomingEventType.Command
411
- ? body.enterprise_id
412
- : type === helpers_1.IncomingEventType.Action ||
413
- type === helpers_1.IncomingEventType.Options ||
414
- type === helpers_1.IncomingEventType.ViewAction ||
415
- type === helpers_1.IncomingEventType.Shortcut
416
- ? body.team.enterprise_id
417
- : undefined,
418
- userId: type === helpers_1.IncomingEventType.Event
419
- ? typeof body.event.user === 'string'
420
- ? body.event.user
421
- : typeof body.event.user === 'object'
422
- ? body.event.user.id
423
- : body.event.channel !== undefined &&
424
- body.event.channel.creator !== undefined
425
- ? body.event.channel.creator
426
- : body.event.subteam !== undefined &&
427
- body.event.subteam.created_by !== undefined
428
- ? body.event.subteam.created_by
429
- : undefined
430
- : type === helpers_1.IncomingEventType.Action ||
431
- type === helpers_1.IncomingEventType.Options ||
432
- type === helpers_1.IncomingEventType.ViewAction ||
433
- type === helpers_1.IncomingEventType.Shortcut
434
- ? body.user
435
- .id
436
- : type === helpers_1.IncomingEventType.Command
437
- ? body.user_id
438
- : undefined,
455
+ const teamId = (() => {
456
+ if (type === helpers_1.IncomingEventType.Event) {
457
+ const bodyAsEvent = body;
458
+ if (Array.isArray(bodyAsEvent.authorizations) &&
459
+ bodyAsEvent.authorizations[0] !== undefined &&
460
+ bodyAsEvent.authorizations[0].team_id !== null) {
461
+ return bodyAsEvent.authorizations[0].team_id;
462
+ }
463
+ return bodyAsEvent.team_id;
464
+ }
465
+ if (type === helpers_1.IncomingEventType.Command) {
466
+ return body.team_id;
467
+ }
468
+ if (type === helpers_1.IncomingEventType.Action ||
469
+ type === helpers_1.IncomingEventType.Options ||
470
+ type === helpers_1.IncomingEventType.ViewAction ||
471
+ type === helpers_1.IncomingEventType.Shortcut) {
472
+ const bodyAsActionOrOptionsOrViewActionOrShortcut = body;
473
+ // When the app is installed using org-wide deployment, team property will be null
474
+ if (typeof bodyAsActionOrOptionsOrViewActionOrShortcut.team !== 'undefined' &&
475
+ bodyAsActionOrOptionsOrViewActionOrShortcut.team !== null) {
476
+ return bodyAsActionOrOptionsOrViewActionOrShortcut.team.id;
477
+ }
478
+ // This is the only place where this function might return undefined
479
+ return bodyAsActionOrOptionsOrViewActionOrShortcut.user.team_id;
480
+ }
481
+ return helpers_1.assertNever(type);
482
+ })();
483
+ const enterpriseId = (() => {
484
+ if (type === helpers_1.IncomingEventType.Event) {
485
+ const bodyAsEvent = body;
486
+ if (Array.isArray(bodyAsEvent.authorizations) &&
487
+ bodyAsEvent.authorizations[0] !== undefined &&
488
+ bodyAsEvent.authorizations[0].enterprise_id !== null) {
489
+ return bodyAsEvent.authorizations[0].enterprise_id;
490
+ }
491
+ return bodyAsEvent.enterprise_id;
492
+ }
493
+ if (type === helpers_1.IncomingEventType.Command) {
494
+ return body.enterprise_id;
495
+ }
496
+ if (type === helpers_1.IncomingEventType.Action ||
497
+ type === helpers_1.IncomingEventType.Options ||
498
+ type === helpers_1.IncomingEventType.ViewAction ||
499
+ type === helpers_1.IncomingEventType.Shortcut) {
500
+ // NOTE: no type system backed exhaustiveness check within this group of incoming event types
501
+ const bodyAsActionOrOptionsOrViewActionOrShortcut = body;
502
+ if (typeof bodyAsActionOrOptionsOrViewActionOrShortcut.enterprise !== 'undefined' &&
503
+ bodyAsActionOrOptionsOrViewActionOrShortcut.enterprise !== null) {
504
+ return bodyAsActionOrOptionsOrViewActionOrShortcut.enterprise.id;
505
+ }
506
+ // When the app is installed using org-wide deployment, team property will be null
507
+ if (typeof bodyAsActionOrOptionsOrViewActionOrShortcut.team !== 'undefined' &&
508
+ bodyAsActionOrOptionsOrViewActionOrShortcut.team !== null) {
509
+ return bodyAsActionOrOptionsOrViewActionOrShortcut.team.enterprise_id;
510
+ }
511
+ return undefined;
512
+ }
513
+ return helpers_1.assertNever(type);
514
+ })();
515
+ const userId = (() => {
516
+ if (type === helpers_1.IncomingEventType.Event) {
517
+ // NOTE: no type system backed exhaustiveness check within this incoming event type
518
+ const { event } = body;
519
+ if ('user' in event) {
520
+ if (typeof event.user === 'string') {
521
+ return event.user;
522
+ }
523
+ if (typeof event.user === 'object') {
524
+ return event.user.id;
525
+ }
526
+ }
527
+ if ('channel' in event && typeof event.channel !== 'string' && 'creator' in event.channel) {
528
+ return event.channel.creator;
529
+ }
530
+ if ('subteam' in event && event.subteam.created_by !== undefined) {
531
+ return event.subteam.created_by;
532
+ }
533
+ return undefined;
534
+ }
535
+ if (type === helpers_1.IncomingEventType.Action ||
536
+ type === helpers_1.IncomingEventType.Options ||
537
+ type === helpers_1.IncomingEventType.ViewAction ||
538
+ type === helpers_1.IncomingEventType.Shortcut) {
539
+ // NOTE: no type system backed exhaustiveness check within this incoming event type
540
+ const bodyAsActionOrOptionsOrViewActionOrShortcut = body;
541
+ return bodyAsActionOrOptionsOrViewActionOrShortcut.user.id;
542
+ }
543
+ if (type === helpers_1.IncomingEventType.Command) {
544
+ return body.user_id;
545
+ }
546
+ return helpers_1.assertNever(type);
547
+ })();
548
+ return {
549
+ userId,
550
+ isEnterpriseInstall,
551
+ teamId: teamId,
552
+ enterpriseId: enterpriseId,
439
553
  conversationId: channelId,
440
554
  };
441
- // tslint:enable:max-line-length
442
- return source;
555
+ }
556
+ function isBodyWithTypeEnterpriseInstall(body, type) {
557
+ if (type === helpers_1.IncomingEventType.Event) {
558
+ const bodyAsEvent = body;
559
+ if (Array.isArray(bodyAsEvent.authorizations) && bodyAsEvent.authorizations[0] !== undefined) {
560
+ return !!bodyAsEvent.authorizations[0].is_enterprise_install;
561
+ }
562
+ }
563
+ // command payloads have this property set as a string
564
+ if (typeof body.is_enterprise_install === 'string') {
565
+ return body.is_enterprise_install === 'true';
566
+ }
567
+ // all remaining types have a boolean property
568
+ if (body.is_enterprise_install !== undefined) {
569
+ return body.is_enterprise_install;
570
+ }
571
+ // as a fallback we assume it's a single team installation (but this should never happen)
572
+ return false;
443
573
  }
444
574
  function isBlockActionOrInteractiveMessageBody(body) {
445
575
  return body.actions !== undefined;
@@ -450,7 +580,7 @@ function defaultErrorHandler(logger) {
450
580
  return Promise.reject(error);
451
581
  };
452
582
  }
453
- function singleTeamAuthorization(client, authorization) {
583
+ function singleAuthorization(client, authorization) {
454
584
  // TODO: warn when something needed isn't found
455
585
  const identifiers = authorization.botUserId !== undefined && authorization.botId !== undefined
456
586
  ? Promise.resolve({ botUserId: authorization.botUserId, botId: authorization.botId })
@@ -460,8 +590,8 @@ function singleTeamAuthorization(client, authorization) {
460
590
  botId: result.bot_id,
461
591
  };
462
592
  });
463
- return async () => {
464
- return { botToken: authorization.botToken, ...(await identifiers) };
593
+ return async ({ isEnterpriseInstall }) => {
594
+ return { isEnterpriseInstall, botToken: authorization.botToken, ...(await identifiers) };
465
595
  };
466
596
  }
467
597
  function selectToken(context) {
package/dist/App.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":";;;;;AAGA,gDAAwB;AACxB,4CAAuG;AACvG,0CAAgE;AAChE,kDAA6C;AAC7C,wEAA4E;AAC5E,kDAY8B;AAC9B,kDAAyD;AACzD,6DAA2F;AAyB3F,uCAAmF;AACnF,qCAAmG;AACnG,wCAAwC;AACxC,iDAAkD,CAAC,4DAA4D;AAC/G,iEAAiE;AACjE,MAAM,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,yDAAyD;AA2BzG,wCAAiD;AAAxC,kGAAA,QAAQ,OAAA;AA8CjB,MAAM,aAAa;IAAnB;QACU,SAAI,GAAmC,EAAE,CAAC;IAWpD,CAAC;IATQ,WAAW,CAAC,KAAa,EAAE,aAA+B;QAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE;YACvC,OAAO,YAAY,CAAC;SACrB;QACD,MAAM,MAAM,GAAG,IAAI,mBAAS,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QACnD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;QAC1B,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED;;GAEG;AACH,MAAqB,GAAG;IA6BtB,YAAY,EACV,aAAa,GAAG,SAAS,EACzB,SAAS,GAAG,SAAS,EACrB,KAAK,GAAG,SAAS,EACjB,SAAS,GAAG,SAAS,EACrB,QAAQ,GAAG,SAAS,EACpB,UAAU,GAAG,SAAS,EACtB,KAAK,GAAG,SAAS,EACjB,KAAK,GAAG,SAAS,EACjB,SAAS,GAAG,SAAS,EACrB,SAAS,GAAG,SAAS,EACrB,MAAM,GAAG,SAAS,EAClB,QAAQ,GAAG,SAAS,EACpB,UAAU,GAAG,IAAI,EACjB,aAAa,GAAG,SAAS,EACzB,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,SAAS,MACd,EAAE;QA7CV,YAAO,GAAwC,EAAE,CAAC;QA8CxD,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;YACjC,qCAAqC;YACrC,MAAM,aAAa,GAAG,IAAI,sBAAa,EAAE,CAAC;YAC1C,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAClC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC;SAC7B;aAAM;YACL,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;SACtB;QACD,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,QAAQ,EAAE;YAC1E,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;SAChC;QACD,IAAI,CAAC,YAAY,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,aAAa,GAAG;YACnB,KAAK;YACL,iFAAiF;YACjF,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;YAChC,GAAG,EAAE,SAAS;YACd,WAAW,EAAE,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;SACjF,CAAC;QACF,6EAA6E;QAC7E,IAAI,CAAC,MAAM,GAAG,IAAI,mBAAS,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAE3D,IAAI,CAAC,KAAK,GAAG,eAAK,CAAC,MAAM,CAAC;YACxB,SAAS,EAAE,KAAK;YAChB,UAAU,EAAE,KAAK;YACjB,GAAG,SAAS;SACb,CAAC,CAAC;QAEH,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QAEpB,qEAAqE;QACrE,IAAI,CAAC,gBAAgB,GAAG;YACtB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,GAAG,gBAAgB;SACpB,CAAC;QAEF,kDAAkD;QAClD,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC1B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;SAC1B;aAAM,IAAI,aAAa,KAAK,SAAS,EAAE;YACtC,qBAAqB;YACrB,MAAM,IAAI,+BAAsB,CAC9B,wGAAwG;gBACtG,kBAAkB,CACrB,CAAC;SACH;aAAM;YACL,iCAAiC;YACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,yBAAe,CAAC;gBAClC,aAAa;gBACb,SAAS;gBACT,qBAAqB;gBACrB,QAAQ;gBACR,YAAY;gBACZ,WAAW;gBACX,iBAAiB;gBACjB,MAAM;gBACN,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC,CAAC;SACJ;QAED,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,IACG,IAAI,CAAC,QAA4B,CAAC,SAAS,KAAK,SAAS;YACzD,IAAI,CAAC,QAA4B,CAAC,SAAU,CAAC,SAAS,KAAK,SAAS,EACrE;YACA,uFAAuF;YACvF,uFAAuF;YACvF,UAAU,GAAG,IAAI,CAAC;SACnB;QAED,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,IAAI,SAAS,KAAK,SAAS,IAAI,UAAU,EAAE;gBACzC,MAAM,IAAI,+BAAsB,CAC9B,gFAAgF,UAAU,EAAE,CAC7F,CAAC;aACH;YACD,IAAI,CAAC,SAAS,GAAG,uBAAuB,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;SAC9F;aAAM,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,UAAU,EAAE;YACjD,MAAM,IAAI,+BAAsB,CAC9B,4EAA4E,UAAU,EAAE,CACzF,CAAC;SACH;aAAM,IAAI,SAAS,KAAK,SAAS,IAAI,UAAU,EAAE;YAChD,MAAM,IAAI,+BAAsB,CAAC,gEAAgE,UAAU,EAAE,CAAC,CAAC;SAChH;aAAM,IAAI,SAAS,KAAK,SAAS,IAAI,UAAU,EAAE;YAChD,IAAI,CAAC,SAAS,GAAI,IAAI,CAAC,QAA4B,CAAC,SAAU,CAAC,SAAsB,CAAC;SACvF;aAAM,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,UAAU,EAAE;YACjD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;SAC5B;aAAM;YACL,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;YACrF,qBAAW,EAAE,CAAC;SACf;QAED,6GAA6G;QAC7G,IAAI,UAAU,EAAE;YACd,IAAI,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,CAAC;SAClC;QAED,2CAA2C;QAC3C,IAAI,UAAU,KAAK,KAAK,EAAE;YACxB,gEAAgE;YAChE,MAAM,KAAK,GAAsB,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,gCAAW,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;YAC3F,IAAI,CAAC,GAAG,CAAC,wCAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;SACtC;QAED,6DAA6D;QAC7D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACI,GAAG,CAAC,CAAgC;QACzC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACI,IAAI,CAAC,YAA0B;QACpC,MAAM,CAAC,GAAG,YAAY,CAAC,aAAa,EAAE,CAAC;QACvC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,GAAG,IAAW;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;IACtC,CAAC;IAEM,IAAI,CAAC,GAAG,IAAW;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IACrC,CAAC;IAEM,KAAK,CACV,SAAoB,EACpB,GAAG,SAA4D;QAE/D,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,oBAAU,EAAE,wBAAc,CAAC,SAAS,CAAC,EAAE,GAAG,SAAS,CAAoC,CAAC,CAAC;IAChH,CAAC;IAMM,OAAO,CAAC,GAAG,oBAA2F;QAC3G,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC,mBAAmB,EAAE,EAAE;YACzE,IAAI,OAAO,mBAAmB,KAAK,QAAQ,IAAI,cAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE;gBACvF,OAAO,sBAAY,CAAC,mBAAmB,CAAC,CAAC;aAC1C;YACD,OAAO,mBAAmB,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,oBAAU,EAAE,wBAAc,CAAC,SAAS,CAAC,EAAE,GAAG,iBAAiB,CAE7E,CAAC,CAAC;IACP,CAAC;IAaM,QAAQ,CAIb,uBAAsD,EACtD,GAAG,SAAsG;QAEzG,MAAM,WAAW,GACf,OAAO,uBAAuB,KAAK,QAAQ,IAAI,cAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,uBAAuB,CAAC;YACzF,CAAC,CAAC,EAAE,WAAW,EAAE,uBAAuB,EAAE;YAC1C,CAAC,CAAC,uBAAuB,CAAC;QAE9B,qDAAqD;QACrD,MAAM,qBAAqB,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,aAAa,IAAI,CAAC,KAAK,MAAM,CAAC,CAAC;QAC1G,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE;YACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,oEAAoE,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACvG,CAAC;YACF,OAAO;SACR;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,uBAAa,EAAE,0BAAgB,CAAC,WAAW,CAAC,EAAE,GAAG,SAAS,CAE5E,CAAC,CAAC;IACP,CAAC;IAgBM,MAAM,CAIX,qBAAoD,EACpD,GAAG,SAAkG;QAErG,wBAAwB;QACxB,MAAM,WAAW,GACf,OAAO,qBAAqB,KAAK,QAAQ,IAAI,cAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YACrF,CAAC,CAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE;YACtC,CAAC,CAAC,qBAAqB,CAAC;QAE5B,qDAAqD;QACrD,MAAM,qBAAqB,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAC3D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,WAAW,IAAI,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,aAAa,IAAI,CAAC,KAAK,MAAM,CACpF,CAAC;QACF,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE;YACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,qEAAqE,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACxG,CAAC;YACF,OAAO;SACR;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,qBAAW,EAAE,0BAAgB,CAAC,WAAW,CAAC,EAAE,GAAG,SAAS,CAAoC,CAAC,CAAC;IACrH,CAAC;IAED,4CAA4C;IACrC,OAAO,CAAC,WAAmB,EAAE,GAAG,SAAmD;QACxF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,sBAAY,EAAE,0BAAgB,CAAC,WAAW,CAAC,EAAE,GAAG,SAAS,CAAoC,CAAC,CAAC;IACtH,CAAC;IAUM,OAAO,CACZ,qBAA0D,EAC1D,GAAG,SAA2D;QAE9D,MAAM,WAAW,GACf,OAAO,qBAAqB,KAAK,QAAQ,IAAI,cAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YACrF,CAAC,CAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE;YACtC,CAAC,CAAC,qBAAqB,CAAC;QAE5B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,qBAAW,EAAE,0BAAgB,CAAC,WAAW,CAAC,EAAE,GAAG,SAAS,CAAoC,CAAC,CAAC;IACrH,CAAC;IAUM,IAAI,CACT,uBAA0D,EAC1D,GAAG,SAAgE;QAEnE,MAAM,WAAW,GACf,OAAO,uBAAuB,KAAK,QAAQ,IAAI,cAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,uBAAuB,CAAC;YACzF,CAAC,CAAC,EAAE,WAAW,EAAE,uBAAuB,EAAE,IAAI,EAAE,iBAAiB,EAAE;YACnE,CAAC,CAAC,uBAAuB,CAAC;QAC9B,qDAAqD;QACrD,MAAM,qBAAqB,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,aAAa,IAAI,CAAC,KAAK,MAAM,CAAC,CAAC;QAC1G,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE;YACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,mEAAmE,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACtG,CAAC;YACF,OAAO;SACR;QAED,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;YAChF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mEAAmE,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;YACzG,OAAO;SACR;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,yBAAe,EAAE,0BAAgB,CAAC,WAAW,CAAC,EAAE,GAAG,SAAS,CAE9E,CAAC,CAAC;IACP,CAAC;IAEM,KAAK,CAAC,YAA0B;QACrC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,YAAY,CAAC,KAAoB;QAC5C,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC;QAC5B,iHAAiH;QACjH,gHAAgH;QAChH,wCAAwC;QACxC,yGAAyG;QACzG,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,gCAAsB,CAAC,IAAI,CAAC,CAAC;QAC9D,qDAAqD;QACrD,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iFAAiF,CAAC,CAAC;YACpG,OAAO;SACR;QAED,gHAAgH;QAChH,MAAM,OAAO,GAAG,IAAiC,CAAC;QAElD,0EAA0E;QAC1E,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;QAC1D,IAAI,eAAe,CAAC;QAEpB,IAAI;YACF,eAAe,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SACzD;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;YAClG,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;SAChC;QAED,MAAM,OAAO,GAAY,EAAE,GAAG,eAAe,EAAE,CAAC;QAEhD,4BAA4B;QAC5B,MAAM,SAAS,GAAG,CAAC,SAAiB,EAAS,EAAE;YAC7C,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;YACnC,OAAO,CAAC,OAA6B,EAAE,EAAE;gBACvC,MAAM,oBAAoB,GACxB,OAAO,OAAO,KAAK,QAAQ;oBACzB,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE;oBAC9C,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;gBAEhD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;YAC5D,CAAC,CAAC;QACJ,CAAC,CAAC;QAEF,iFAAiF;QACjF,4DAA4D;QAC5D,qDAAqD;QACrD,MAAM,YAAY,GAOd;YACF,IAAI,EAAE,OAAO;YACb,OAAO,EACL,IAAI,KAAK,2BAAiB,CAAC,KAAK;gBAC9B,CAAC,CAAE,OAA4C,CAAC,KAAK;gBACrD,CAAC,CAAC,IAAI,KAAK,2BAAiB,CAAC,UAAU;oBACvC,CAAC,CAAE,OAA2C,CAAC,IAAI;oBACnD,CAAC,CAAC,IAAI,KAAK,2BAAiB,CAAC,QAAQ;wBACrC,CAAC,CAAE,OAA+C;wBAClD,CAAC,CAAC,IAAI,KAAK,2BAAiB,CAAC,MAAM;4BACjC,qCAAqC,CAAC,OAA4C,CAAC;4BACrF,CAAC,CAAE,OAA+E,CAAC,OAAO,CAAC,CAAC,CAAC;4BAC7F,CAAC,CAAE,OAMS;SACjB,CAAC;QAEF,cAAc;QACd,IAAI,IAAI,KAAK,2BAAiB,CAAC,KAAK,EAAE;YACpC,MAAM,iBAAiB,GAAG,YAAwC,CAAC;YACnE,iBAAiB,CAAC,KAAK,GAAG,iBAAiB,CAAC,OAAO,CAAC;YACpD,IAAI,iBAAiB,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE;gBAC9C,MAAM,wBAAwB,GAAG,iBAAwD,CAAC;gBAC1F,wBAAwB,CAAC,OAAO,GAAG,wBAAwB,CAAC,OAAO,CAAC;aACrE;SACF;aAAM,IAAI,IAAI,KAAK,2BAAiB,CAAC,MAAM,EAAE;YAC5C,MAAM,kBAAkB,GAAG,YAAyC,CAAC;YACrE,kBAAkB,CAAC,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC;SACxD;aAAM,IAAI,IAAI,KAAK,2BAAiB,CAAC,OAAO,EAAE;YAC7C,MAAM,mBAAmB,GAAG,YAA0C,CAAC;YACvE,mBAAmB,CAAC,OAAO,GAAG,mBAAmB,CAAC,OAAO,CAAC;SAC3D;aAAM,IAAI,IAAI,KAAK,2BAAiB,CAAC,OAAO,EAAE;YAC7C,MAAM,kBAAkB,GAAG,YAAyD,CAAC;YACrF,kBAAkB,CAAC,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC;SACzD;aAAM,IAAI,IAAI,KAAK,2BAAiB,CAAC,UAAU,EAAE;YAChD,MAAM,gBAAgB,GAAG,YAAuC,CAAC;YACjE,gBAAgB,CAAC,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC;SAClD;aAAM,IAAI,IAAI,KAAK,2BAAiB,CAAC,QAAQ,EAAE;YAC9C,MAAM,oBAAoB,GAAG,YAA2C,CAAC;YACzE,oBAAoB,CAAC,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC;SAC9D;QAED,oBAAoB;QACpB,IAAI,cAAc,KAAK,SAAS,IAAI,IAAI,KAAK,2BAAiB,CAAC,OAAO,EAAE;YACtE,YAAY,CAAC,GAAG,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;SAC9C;QAED,wBAAwB;QACxB,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,YAAY,CAAC,OAAO,GAAG,CAAC,QAAmC,EAAgB,EAAE;gBAC3E,MAAM,aAAa,GAAqB,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAErG,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;YAC3D,CAAC,CAAC;SACH;QAED,oBAAoB;QACpB,IAAI,IAAI,KAAK,2BAAiB,CAAC,KAAK,EAAE;YACpC,YAAY,CAAC,GAAG,GAAG,GAAG,CAAC;SACxB;aAAM;YACL,kFAAkF;YAClF,MAAM,GAAG,EAAE,CAAC;SACb;QAED,qBAAqB;QACrB,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACtB,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,IAAI,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,IAAI,KAAK,SAAS,EAAE;gBACtB,2CAA2C;gBAC3C,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,aAAa,EAAE,CAAC;aAC1D;YACD,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;SACtD;QAED,qDAAqD;QACrD,IAAI;YACF,MAAM,2BAAiB,CACrB,IAAI,CAAC,UAAU,EACf,YAAiC,EACjC,OAAO,EACP,MAAM,EACN,IAAI,CAAC,MAAM,EACX,KAAK,IAAI,EAAE;gBACT,wFAAwF;gBACxF,2FAA2F;gBAC3F,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,sBAAsB,EAAE,EAAE;oBAC1E,4DAA4D;oBAC5D,MAAM,kBAAkB,GAAG,CAAC,GAAG,sBAAsB,CAAC,CAAC;oBAEvD,2FAA2F;oBAC3F,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,EAAE,CAAC;oBAE1C,IAAI,QAAQ,KAAK,SAAS,EAAE;wBAC1B,OAAO,2BAAiB,CACtB,kBAAkB,EAClB,YAAiC,EACjC,OAAO,EACP,MAAM,EACN,IAAI,CAAC,MAAM,EACX,KAAK,IAAI,EAAE;wBACT,6FAA6F;wBAC7F,QAAQ,CAAC,EAAE,GAAI,YAAkC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAC7F,CAAC;qBACH;gBACH,CAAC,CAAC,CAAC;gBAEH,MAAM,sBAAsB,GAAG,MAAM,UAAU,CAAC,eAAe,CAAC,CAAC;gBACjE,MAAM,uBAAuB,GAAG,sBAAsB,CAAC,MAAM,CAC3D,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,UAAU,CACO,CAAC;gBAC1C,IAAI,uBAAuB,CAAC,MAAM,KAAK,CAAC,EAAE;oBACxC,MAAM,uBAAuB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;iBACzC;qBAAM,IAAI,uBAAuB,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC7C,MAAM,IAAI,8BAAqB,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;iBACnF;YACH,CAAC,CACF,CAAC;SACH;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;SAChC;IACH,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,KAAY;QAC9B,OAAO,IAAI,CAAC,YAAY,CAAC,qBAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,CAAC;CACF;AAziBD,sBAyiBC;AAED,MAAM,UAAU,GACd,8FAA8F;IAC9F,0DAA0D,CAAC;AAE7D,MAAM,cAAc,GAAG,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAC;AAE1D;;GAEG;AACH,SAAS,WAAW,CAClB,IAAuB,EACvB,SAA6B,EAC7B,IAA+B;IAE/B,sHAAsH;IACtH,sHAAsH;IAEtH,iCAAiC;IACjC,MAAM,MAAM,GAAwB;QAClC,MAAM,EACJ,IAAI,KAAK,2BAAiB,CAAC,KAAK,IAAI,IAAI,KAAK,2BAAiB,CAAC,OAAO;YACpE,CAAC,CAAG,IAAwE,CAAC,OAAkB;YAC/F,CAAC,CAAC,IAAI,KAAK,2BAAiB,CAAC,MAAM;gBACjC,IAAI,KAAK,2BAAiB,CAAC,OAAO;gBAClC,IAAI,KAAK,2BAAiB,CAAC,UAAU;gBACrC,IAAI,KAAK,2BAAiB,CAAC,QAAQ;gBACrC,CAAC,CAAG,IAKQ,CAAC,IAAI,CAAC,EAAa;gBAC/B,CAAC,CAAC,qBAAW,CAAC,IAAI,CAAC;QACvB,YAAY,EACV,IAAI,KAAK,2BAAiB,CAAC,KAAK,IAAI,IAAI,KAAK,2BAAiB,CAAC,OAAO;YACpE,CAAC,CAAG,IAAwE,CAAC,aAAwB;YACrG,CAAC,CAAC,IAAI,KAAK,2BAAiB,CAAC,MAAM;gBACjC,IAAI,KAAK,2BAAiB,CAAC,OAAO;gBAClC,IAAI,KAAK,2BAAiB,CAAC,UAAU;gBACrC,IAAI,KAAK,2BAAiB,CAAC,QAAQ;gBACrC,CAAC,CAAG,IAKQ,CAAC,IAAI,CAAC,aAAwB;gBAC1C,CAAC,CAAC,SAAS;QACf,MAAM,EACJ,IAAI,KAAK,2BAAiB,CAAC,KAAK;YAC9B,CAAC,CAAC,OAAQ,IAAyC,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ;gBACzE,CAAC,CAAG,IAAyC,CAAC,KAAK,CAAC,IAAe;gBACnE,CAAC,CAAC,OAAQ,IAAyC,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ;oBAC3E,CAAC,CAAG,IAAyC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAa;oBACtE,CAAC,CAAE,IAAyC,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS;wBACrE,IAAyC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS;wBAChF,CAAC,CAAG,IAAyC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAkB;wBAC9E,CAAC,CAAE,IAAyC,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS;4BACrE,IAAyC,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS;4BACnF,CAAC,CAAG,IAAyC,CAAC,KAAK,CAAC,OAAO,CAAC,UAAqB;4BACjF,CAAC,CAAC,SAAS;YACb,CAAC,CAAC,IAAI,KAAK,2BAAiB,CAAC,MAAM;gBACjC,IAAI,KAAK,2BAAiB,CAAC,OAAO;gBAClC,IAAI,KAAK,2BAAiB,CAAC,UAAU;gBACrC,IAAI,KAAK,2BAAiB,CAAC,QAAQ;gBACrC,CAAC,CAAG,IAAmG,CAAC,IAAI;qBACvG,EAAa;gBAClB,CAAC,CAAC,IAAI,KAAK,2BAAiB,CAAC,OAAO;oBACpC,CAAC,CAAG,IAA2C,CAAC,OAAkB;oBAClE,CAAC,CAAC,SAAS;QACf,cAAc,EAAE,SAAS;KAC1B,CAAC;IACF,gCAAgC;IAEhC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,qCAAqC,CAC5C,IAAuC;IAEvC,OAAQ,IAA4E,CAAC,OAAO,KAAK,SAAS,CAAC;AAC7G,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc;IACzC,OAAO,CAAC,KAAK,EAAE,EAAE;QACf,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAEpB,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAC9B,MAAiB,EACjB,aAA6F;IAE7F,+CAA+C;IAC/C,MAAM,WAAW,GACf,aAAa,CAAC,SAAS,KAAK,SAAS,IAAI,aAAa,CAAC,KAAK,KAAK,SAAS;QACxE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,SAAS,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,CAAC;QACrF,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YAClE,OAAO;gBACL,SAAS,EAAE,MAAM,CAAC,OAAiB;gBACnC,KAAK,EAAE,MAAM,CAAC,MAAgB;aAC/B,CAAC;QACJ,CAAC,CAAC,CAAC;IAET,OAAO,KAAK,IAAI,EAAE;QAChB,OAAO,EAAE,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,WAAW,CAAC,EAAE,CAAC;IACtE,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,OAAgB;IACnC,OAAO,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;AAC/E,CAAC;AAED,qBAAqB;AACrB,wBAAc,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import { SocketModeClient } from '@slack/socket-mode';
2
+ import { Logger, LogLevel } from '@slack/logger';
3
+ import { InstallProvider, CallbackOptions, InstallProviderOptions, InstallURLOptions } from '@slack/oauth';
4
+ import App from './App';
5
+ import { Receiver } from './types';
6
+ export interface SocketModeReceiverOptions {
7
+ logger?: Logger;
8
+ logLevel?: LogLevel;
9
+ clientId?: string;
10
+ clientSecret?: string;
11
+ stateSecret?: InstallProviderOptions['stateSecret'];
12
+ installationStore?: InstallProviderOptions['installationStore'];
13
+ scopes?: InstallURLOptions['scopes'];
14
+ installerOptions?: InstallerOptions;
15
+ appToken: string;
16
+ }
17
+ interface InstallerOptions {
18
+ stateStore?: InstallProviderOptions['stateStore'];
19
+ authVersion?: InstallProviderOptions['authVersion'];
20
+ metadata?: InstallURLOptions['metadata'];
21
+ installPath?: string;
22
+ redirectUriPath?: string;
23
+ callbackOptions?: CallbackOptions;
24
+ userScopes?: InstallURLOptions['userScopes'];
25
+ clientOptions?: InstallProviderOptions['clientOptions'];
26
+ authorizationUrl?: InstallProviderOptions['authorizationUrl'];
27
+ port?: number;
28
+ }
29
+ /**
30
+ * Receives Events, Slash Commands, and Actions of a web socket connection
31
+ */
32
+ export default class SocketModeReceiver implements Receiver {
33
+ client: SocketModeClient;
34
+ private app;
35
+ private logger;
36
+ installer: InstallProvider | undefined;
37
+ constructor({ appToken, logger, logLevel, clientId, clientSecret, stateSecret, installationStore, scopes, installerOptions, }: SocketModeReceiverOptions);
38
+ init(app: App): void;
39
+ start(): Promise<void>;
40
+ stop(): Promise<void>;
41
+ }
42
+ export {};
43
+ //# sourceMappingURL=SocketModeReceiver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SocketModeReceiver.d.ts","sourceRoot":"","sources":["../src/SocketModeReceiver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,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,GAAG,MAAM,OAAO,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAiB,MAAM,SAAS,CAAC;AAIlD,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,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;CAClB;AAGD,UAAU,gBAAgB;IACxB,UAAU,CAAC,EAAE,sBAAsB,CAAC,YAAY,CAAC,CAAC;IAClD,WAAW,CAAC,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC;IACpD,QAAQ,CAAC,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,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;gBAE9C,EACV,QAAQ,EACR,MAAkB,EAClB,QAAwB,EACxB,QAAoB,EACpB,YAAwB,EACxB,WAAuB,EACvB,iBAA6B,EAC7B,MAAkB,EAClB,gBAAqB,GACtB,EAAE,yBAAyB;IAgGrB,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;IAIpB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAYtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAU7B"}