@slack/bolt 3.8.0 → 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.
Files changed (146) hide show
  1. package/dist/App.d.ts +212 -0
  2. package/dist/App.d.ts.map +1 -0
  3. package/dist/App.js +796 -0
  4. package/dist/App.js.map +1 -0
  5. package/dist/WorkflowStep.d.ts +106 -0
  6. package/dist/WorkflowStep.d.ts.map +1 -0
  7. package/dist/WorkflowStep.js +196 -0
  8. package/dist/WorkflowStep.js.map +1 -0
  9. package/dist/conversation-store.d.ts +31 -0
  10. package/dist/conversation-store.d.ts.map +1 -0
  11. package/dist/conversation-store.js +72 -0
  12. package/dist/conversation-store.js.map +1 -0
  13. package/dist/errors.d.ts +79 -0
  14. package/dist/errors.d.ts.map +1 -0
  15. package/dist/errors.js +120 -0
  16. package/dist/errors.js.map +1 -0
  17. package/dist/helpers.d.ts +24 -0
  18. package/dist/helpers.d.ts.map +1 -0
  19. package/dist/helpers.js +100 -0
  20. package/dist/helpers.js.map +1 -0
  21. package/dist/index.d.ts +13 -0
  22. package/dist/index.d.ts.map +1 -0
  23. package/dist/index.js +43 -0
  24. package/dist/index.js.map +1 -0
  25. package/dist/middleware/builtin.d.ts +52 -0
  26. package/dist/middleware/builtin.d.ts.map +1 -0
  27. package/dist/middleware/builtin.js +311 -0
  28. package/dist/middleware/builtin.js.map +1 -0
  29. package/dist/middleware/process.d.ts +5 -0
  30. package/dist/middleware/process.d.ts.map +1 -0
  31. package/dist/middleware/process.js +25 -0
  32. package/dist/middleware/process.js.map +1 -0
  33. package/dist/receivers/AwsLambdaReceiver.d.ts +53 -0
  34. package/dist/receivers/AwsLambdaReceiver.d.ts.map +1 -0
  35. package/dist/receivers/AwsLambdaReceiver.js +188 -0
  36. package/dist/receivers/AwsLambdaReceiver.js.map +1 -0
  37. package/dist/receivers/ExpressReceiver.d.ts +77 -0
  38. package/dist/receivers/ExpressReceiver.d.ts.map +1 -0
  39. package/dist/receivers/ExpressReceiver.js +445 -0
  40. package/dist/receivers/ExpressReceiver.js.map +1 -0
  41. package/dist/receivers/HTTPReceiver.d.ts +109 -0
  42. package/dist/receivers/HTTPReceiver.d.ts.map +1 -0
  43. package/dist/receivers/HTTPReceiver.js +501 -0
  44. package/dist/receivers/HTTPReceiver.js.map +1 -0
  45. package/dist/receivers/SocketModeReceiver.d.ts +61 -0
  46. package/dist/receivers/SocketModeReceiver.d.ts.map +1 -0
  47. package/dist/receivers/SocketModeReceiver.js +175 -0
  48. package/dist/receivers/SocketModeReceiver.js.map +1 -0
  49. package/dist/receivers/custom-routes.d.ts +14 -0
  50. package/dist/receivers/custom-routes.d.ts.map +1 -0
  51. package/dist/receivers/custom-routes.js +33 -0
  52. package/dist/receivers/custom-routes.js.map +1 -0
  53. package/dist/receivers/http-utils.d.ts +5 -0
  54. package/dist/receivers/http-utils.d.ts.map +1 -0
  55. package/dist/receivers/http-utils.js +35 -0
  56. package/dist/receivers/http-utils.js.map +1 -0
  57. package/dist/receivers/render-html-for-install-path.d.ts +3 -0
  58. package/dist/receivers/render-html-for-install-path.d.ts.map +1 -0
  59. package/dist/receivers/render-html-for-install-path.js +25 -0
  60. package/dist/receivers/render-html-for-install-path.js.map +1 -0
  61. package/dist/receivers/verify-redirect-opts.d.ts +7 -0
  62. package/dist/receivers/verify-redirect-opts.d.ts.map +1 -0
  63. package/dist/receivers/verify-redirect-opts.js +23 -0
  64. package/dist/receivers/verify-redirect-opts.js.map +1 -0
  65. package/dist/receivers/verify-request.d.ts +41 -0
  66. package/dist/receivers/verify-request.d.ts.map +1 -0
  67. package/dist/receivers/verify-request.js +98 -0
  68. package/dist/receivers/verify-request.js.map +1 -0
  69. package/dist/types/actions/block-action.d.ts +231 -0
  70. package/dist/types/actions/block-action.d.ts.map +1 -0
  71. package/dist/types/actions/block-action.js +3 -0
  72. package/dist/types/actions/block-action.js.map +1 -0
  73. package/dist/types/actions/dialog-action.d.ts +47 -0
  74. package/dist/types/actions/dialog-action.d.ts.map +1 -0
  75. package/dist/types/actions/dialog-action.js +3 -0
  76. package/dist/types/actions/dialog-action.js.map +1 -0
  77. package/dist/types/actions/index.d.ts +46 -0
  78. package/dist/types/actions/index.d.ts.map +1 -0
  79. package/dist/types/actions/index.js +17 -0
  80. package/dist/types/actions/index.js.map +1 -0
  81. package/dist/types/actions/interactive-message.d.ts +66 -0
  82. package/dist/types/actions/interactive-message.d.ts.map +1 -0
  83. package/dist/types/actions/interactive-message.js +3 -0
  84. package/dist/types/actions/interactive-message.js.map +1 -0
  85. package/dist/types/actions/workflow-step-edit.d.ts +49 -0
  86. package/dist/types/actions/workflow-step-edit.d.ts.map +1 -0
  87. package/dist/types/actions/workflow-step-edit.js +3 -0
  88. package/dist/types/actions/workflow-step-edit.js.map +1 -0
  89. package/dist/types/command/index.d.ts +36 -0
  90. package/dist/types/command/index.d.ts.map +1 -0
  91. package/dist/types/command/index.js +3 -0
  92. package/dist/types/command/index.js.map +1 -0
  93. package/dist/types/events/base-events.d.ts +699 -0
  94. package/dist/types/events/base-events.d.ts.map +1 -0
  95. package/dist/types/events/base-events.js +5 -0
  96. package/dist/types/events/base-events.js.map +1 -0
  97. package/dist/types/events/index.d.ts +63 -0
  98. package/dist/types/events/index.d.ts.map +1 -0
  99. package/dist/types/events/index.js +14 -0
  100. package/dist/types/events/index.js.map +1 -0
  101. package/dist/types/events/message-events.d.ts +312 -0
  102. package/dist/types/events/message-events.d.ts.map +1 -0
  103. package/dist/types/events/message-events.js +3 -0
  104. package/dist/types/events/message-events.js.map +1 -0
  105. package/dist/types/helpers.d.ts +17 -0
  106. package/dist/types/helpers.d.ts.map +1 -0
  107. package/dist/types/helpers.js +3 -0
  108. package/dist/types/helpers.js.map +1 -0
  109. package/dist/types/index.d.ts +10 -0
  110. package/dist/types/index.d.ts.map +1 -0
  111. package/dist/types/index.js +22 -0
  112. package/dist/types/index.js.map +1 -0
  113. package/dist/types/middleware.d.ts +65 -0
  114. package/dist/types/middleware.d.ts.map +1 -0
  115. package/dist/types/middleware.js +14 -0
  116. package/dist/types/middleware.js.map +1 -0
  117. package/dist/types/options/index.d.ts +192 -0
  118. package/dist/types/options/index.d.ts.map +1 -0
  119. package/dist/types/options/index.js +3 -0
  120. package/dist/types/options/index.js.map +1 -0
  121. package/dist/types/receiver.d.ts +16 -0
  122. package/dist/types/receiver.d.ts.map +1 -0
  123. package/dist/types/receiver.js +3 -0
  124. package/dist/types/receiver.js.map +1 -0
  125. package/dist/types/shortcuts/global-shortcut.d.ts +29 -0
  126. package/dist/types/shortcuts/global-shortcut.d.ts.map +1 -0
  127. package/dist/types/shortcuts/global-shortcut.js +3 -0
  128. package/dist/types/shortcuts/global-shortcut.js.map +1 -0
  129. package/dist/types/shortcuts/index.d.ts +23 -0
  130. package/dist/types/shortcuts/index.d.ts.map +1 -0
  131. package/dist/types/shortcuts/index.js +16 -0
  132. package/dist/types/shortcuts/index.js.map +1 -0
  133. package/dist/types/shortcuts/message-shortcut.d.ts +43 -0
  134. package/dist/types/shortcuts/message-shortcut.d.ts.map +1 -0
  135. package/dist/types/shortcuts/message-shortcut.js +3 -0
  136. package/dist/types/shortcuts/message-shortcut.js.map +1 -0
  137. package/dist/types/utilities.d.ts +23 -0
  138. package/dist/types/utilities.d.ts.map +1 -0
  139. package/dist/types/utilities.js +3 -0
  140. package/dist/types/utilities.js.map +1 -0
  141. package/dist/types/view/index.d.ts +175 -0
  142. package/dist/types/view/index.d.ts.map +1 -0
  143. package/dist/types/view/index.js +3 -0
  144. package/dist/types/view/index.js.map +1 -0
  145. package/package.json +1 -1
  146. package/dist/package.json +0 -88
package/dist/App.d.ts ADDED
@@ -0,0 +1,212 @@
1
+ /// <reference types="node" />
2
+ import { Agent } from 'http';
3
+ import { SecureContextOptions } from 'tls';
4
+ import { WebClient, WebClientOptions } from '@slack/web-api';
5
+ import { Logger, LogLevel } from '@slack/logger';
6
+ import SocketModeReceiver from './receivers/SocketModeReceiver';
7
+ import HTTPReceiver, { HTTPReceiverOptions } from './receivers/HTTPReceiver';
8
+ import { ConversationStore } from './conversation-store';
9
+ import { WorkflowStep } from './WorkflowStep';
10
+ import { Middleware, AnyMiddlewareArgs, SlackActionMiddlewareArgs, SlackCommandMiddlewareArgs, SlackEventMiddlewareArgs, SlackOptionsMiddlewareArgs, SlackShortcutMiddlewareArgs, SlackViewMiddlewareArgs, SlackAction, SlackShortcut, Context, OptionsSource, BlockAction, SlackViewAction, Receiver, ReceiverEvent } from './types';
11
+ import { CodedError } from './errors';
12
+ /** App initialization options */
13
+ export interface AppOptions {
14
+ signingSecret?: HTTPReceiverOptions['signingSecret'];
15
+ endpoints?: HTTPReceiverOptions['endpoints'];
16
+ port?: HTTPReceiverOptions['port'];
17
+ customRoutes?: HTTPReceiverOptions['customRoutes'];
18
+ processBeforeResponse?: HTTPReceiverOptions['processBeforeResponse'];
19
+ signatureVerification?: HTTPReceiverOptions['signatureVerification'];
20
+ clientId?: HTTPReceiverOptions['clientId'];
21
+ clientSecret?: HTTPReceiverOptions['clientSecret'];
22
+ stateSecret?: HTTPReceiverOptions['stateSecret'];
23
+ redirectUri?: HTTPReceiverOptions['redirectUri'];
24
+ installationStore?: HTTPReceiverOptions['installationStore'];
25
+ scopes?: HTTPReceiverOptions['scopes'];
26
+ installerOptions?: HTTPReceiverOptions['installerOptions'];
27
+ agent?: Agent;
28
+ clientTls?: Pick<SecureContextOptions, 'pfx' | 'key' | 'passphrase' | 'cert' | 'ca'>;
29
+ convoStore?: ConversationStore | false;
30
+ token?: AuthorizeResult['botToken'];
31
+ appToken?: string;
32
+ botId?: AuthorizeResult['botId'];
33
+ botUserId?: AuthorizeResult['botUserId'];
34
+ authorize?: Authorize<boolean>;
35
+ receiver?: Receiver;
36
+ logger?: Logger;
37
+ logLevel?: LogLevel;
38
+ ignoreSelf?: boolean;
39
+ clientOptions?: Pick<WebClientOptions, 'slackApiUrl'>;
40
+ socketMode?: boolean;
41
+ developerMode?: boolean;
42
+ tokenVerificationEnabled?: boolean;
43
+ extendedErrorHandler?: boolean;
44
+ }
45
+ export { LogLevel, Logger } from '@slack/logger';
46
+ /** Authorization function - seeds the middleware processing and listeners with an authorization context */
47
+ export interface Authorize<IsEnterpriseInstall extends boolean = false> {
48
+ (source: AuthorizeSourceData<IsEnterpriseInstall>, body?: AnyMiddlewareArgs['body']): Promise<AuthorizeResult>;
49
+ }
50
+ /** Authorization function inputs - authenticated data about an event for the authorization function */
51
+ export interface AuthorizeSourceData<IsEnterpriseInstall extends boolean = false> {
52
+ teamId: IsEnterpriseInstall extends true ? string | undefined : string;
53
+ enterpriseId: IsEnterpriseInstall extends true ? string : string | undefined;
54
+ userId?: string;
55
+ conversationId?: string;
56
+ isEnterpriseInstall: IsEnterpriseInstall;
57
+ }
58
+ /** Authorization function outputs - data that will be available as part of event processing */
59
+ export interface AuthorizeResult {
60
+ botToken?: string;
61
+ userToken?: string;
62
+ botId?: string;
63
+ botUserId?: string;
64
+ teamId?: string;
65
+ enterpriseId?: string;
66
+ [key: string]: any;
67
+ }
68
+ export interface ActionConstraints<A extends SlackAction = SlackAction> {
69
+ type?: A['type'];
70
+ block_id?: A extends BlockAction ? string | RegExp : never;
71
+ action_id?: A extends BlockAction ? string | RegExp : never;
72
+ callback_id?: Extract<A, {
73
+ callback_id?: string;
74
+ }> extends any ? string | RegExp : never;
75
+ }
76
+ export interface ShortcutConstraints<S extends SlackShortcut = SlackShortcut> {
77
+ type?: S['type'];
78
+ callback_id?: string | RegExp;
79
+ }
80
+ export interface ViewConstraints {
81
+ callback_id?: string | RegExp;
82
+ type?: 'view_closed' | 'view_submission';
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
+ }
93
+ export interface ErrorHandler {
94
+ (error: CodedError): Promise<void>;
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'>>;
102
+ /**
103
+ * A Slack App
104
+ */
105
+ export default class App {
106
+ /** Slack Web API client */
107
+ client: WebClient;
108
+ private clientOptions;
109
+ private clients;
110
+ /** Receiver - ingests events from the Slack platform */
111
+ private receiver;
112
+ /** Logger */
113
+ private logger;
114
+ /** Log Level */
115
+ private logLevel;
116
+ /** Authorize */
117
+ private authorize;
118
+ /** Global middleware chain */
119
+ private middleware;
120
+ /** Listener middleware chains */
121
+ private listeners;
122
+ private errorHandler;
123
+ private axios;
124
+ private installerOptions;
125
+ private socketMode;
126
+ private developerMode;
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);
130
+ /**
131
+ * Register a new middleware, processed in the order registered.
132
+ *
133
+ * @param m global middleware function
134
+ */
135
+ use(m: Middleware<AnyMiddlewareArgs>): this;
136
+ /**
137
+ * Register WorkflowStep middleware
138
+ *
139
+ * @param workflowStep global workflow step middleware function
140
+ */
141
+ step(workflowStep: WorkflowStep): this;
142
+ /**
143
+ * Convenience method to call start on the receiver
144
+ *
145
+ * TODO: should replace HTTPReceiver in type definition with a generic that is constrained to Receiver
146
+ *
147
+ * @param args receiver-specific start arguments
148
+ */
149
+ start(...args: Parameters<HTTPReceiver['start'] | SocketModeReceiver['start']>): ReturnType<HTTPReceiver['start']>;
150
+ stop(...args: any[]): Promise<unknown>;
151
+ event<EventType extends string = string>(eventName: EventType, ...listeners: Middleware<SlackEventMiddlewareArgs<EventType>>[]): void;
152
+ event<EventType extends RegExp = RegExp>(eventName: EventType, ...listeners: Middleware<SlackEventMiddlewareArgs<string>>[]): void;
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;
188
+ shortcut<Shortcut extends SlackShortcut = SlackShortcut>(callbackId: string | RegExp, ...listeners: Middleware<SlackShortcutMiddlewareArgs<Shortcut>>[]): void;
189
+ shortcut<Shortcut extends SlackShortcut = SlackShortcut, Constraints extends ShortcutConstraints<Shortcut> = ShortcutConstraints<Shortcut>>(constraints: Constraints, ...listeners: Middleware<SlackShortcutMiddlewareArgs<Extract<Shortcut, {
190
+ type: Constraints['type'];
191
+ }>>>[]): void;
192
+ action<Action extends SlackAction = SlackAction>(actionId: string | RegExp, ...listeners: Middleware<SlackActionMiddlewareArgs<Action>>[]): void;
193
+ action<Action extends SlackAction = SlackAction, Constraints extends ActionConstraints<Action> = ActionConstraints<Action>>(constraints: Constraints, ...listeners: Middleware<SlackActionMiddlewareArgs<Extract<Action, {
194
+ type: Constraints['type'];
195
+ }>>>[]): void;
196
+ command(commandName: string | RegExp, ...listeners: Middleware<SlackCommandMiddlewareArgs>[]): void;
197
+ options<Source extends OptionsSource = 'block_suggestion'>(actionId: string | RegExp, ...listeners: Middleware<SlackOptionsMiddlewareArgs<Source>>[]): void;
198
+ options<Source extends OptionsSource = OptionsSource>(constraints: ActionConstraints, ...listeners: Middleware<SlackOptionsMiddlewareArgs<Source>>[]): void;
199
+ view<ViewActionType extends SlackViewAction = SlackViewAction>(callbackId: string | RegExp, ...listeners: Middleware<SlackViewMiddlewareArgs<ViewActionType>>[]): void;
200
+ view<ViewActionType extends SlackViewAction = SlackViewAction>(constraints: ViewConstraints, ...listeners: Middleware<SlackViewMiddlewareArgs<ViewActionType>>[]): void;
201
+ error(errorHandler: ErrorHandler): void;
202
+ error(errorHandler: ExtendedErrorHandler): void;
203
+ /**
204
+ * Handles events from the receiver
205
+ */
206
+ processEvent(event: ReceiverEvent): Promise<void>;
207
+ /**
208
+ * Global error handler. The final destination for all errors (hopefully).
209
+ */
210
+ private handleError;
211
+ }
212
+ //# sourceMappingURL=App.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":"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"}