@microsoft/teams.apps 2.0.4 → 2.0.6-preview.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app.d.ts +47 -17
- package/dist/app.events.d.ts +1 -2
- package/dist/app.events.js +1 -6
- package/dist/app.js +18 -6
- package/dist/app.plugins.js +2 -2
- package/dist/app.process.d.ts +2 -3
- package/dist/app.process.js +32 -28
- package/dist/contexts/activity.js +10 -2
- package/dist/contexts/activity.test.js +45 -1
- package/dist/plugins/http/plugin.d.ts +39 -19
- package/dist/plugins/http/plugin.js +11 -30
- package/dist/plugins/http/stream.d.ts +76 -13
- package/dist/plugins/http/stream.js +60 -8
- package/dist/routes/invoke/index.d.ts +1 -0
- package/dist/routes/invoke/index.js +2 -1
- package/dist/utils/promises/retry.d.ts +1 -1
- package/dist/utils/promises/retry.js +1 -1
- package/package.json +6 -6
|
@@ -4,6 +4,21 @@ exports.HttpStream = void 0;
|
|
|
4
4
|
const teams_api_1 = require("@microsoft/teams.api");
|
|
5
5
|
const teams_common_1 = require("@microsoft/teams.common");
|
|
6
6
|
const utils_1 = require("../../utils");
|
|
7
|
+
/**
|
|
8
|
+
* HTTP-based streaming implementation for Microsoft Teams activities.
|
|
9
|
+
*
|
|
10
|
+
* Allows sending typing indicators and messages in chunks to Teams.
|
|
11
|
+
* Queues incoming activities and flushes them periodically to avoid
|
|
12
|
+
* rate limits.
|
|
13
|
+
*
|
|
14
|
+
* Flow:
|
|
15
|
+
* 1. `emit()` adds activities to the queue and starts a flush if none scheduled.
|
|
16
|
+
* 2. `_flush()` starts by cancelling any pending flush, then processes up to 10 queued activities under a lock.
|
|
17
|
+
* 3. Informative typing updates are sent immediately.
|
|
18
|
+
* 4. Message text is combined and sent as a typing activity.
|
|
19
|
+
* 5. `_flush()` schedules another flush if more items remain in queue.
|
|
20
|
+
* 6. `close()` waits for the queue to empty and sends the final message activity.
|
|
21
|
+
*/
|
|
7
22
|
class HttpStream {
|
|
8
23
|
events = new teams_common_1.EventEmitter();
|
|
9
24
|
client;
|
|
@@ -19,16 +34,17 @@ class HttpStream {
|
|
|
19
34
|
_timeout;
|
|
20
35
|
_logger;
|
|
21
36
|
_flushing = false;
|
|
37
|
+
_totalTimeout = 30000; // 30 seconds
|
|
22
38
|
constructor(client, ref, logger) {
|
|
23
39
|
this.client = client;
|
|
24
40
|
this.ref = ref;
|
|
25
41
|
this._logger = logger?.child('stream') || new teams_common_1.ConsoleLogger('@teams/http/stream');
|
|
26
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* Emit a new activity or text to the stream.
|
|
45
|
+
* @param activity Activity object or string message.
|
|
46
|
+
*/
|
|
27
47
|
emit(activity) {
|
|
28
|
-
if (this._timeout) {
|
|
29
|
-
clearTimeout(this._timeout);
|
|
30
|
-
this._timeout = undefined;
|
|
31
|
-
}
|
|
32
48
|
if (typeof activity === 'string') {
|
|
33
49
|
activity = {
|
|
34
50
|
type: 'message',
|
|
@@ -36,8 +52,15 @@ class HttpStream {
|
|
|
36
52
|
};
|
|
37
53
|
}
|
|
38
54
|
this.queue.push(activity);
|
|
39
|
-
|
|
55
|
+
// Start flush if not already scheduled
|
|
56
|
+
if (!this._timeout) {
|
|
57
|
+
this.flush();
|
|
58
|
+
}
|
|
40
59
|
}
|
|
60
|
+
/**
|
|
61
|
+
* Send a typing/status update without adding to the main text.
|
|
62
|
+
* @param text Status text (ex. "Thinking...")
|
|
63
|
+
*/
|
|
41
64
|
update(text) {
|
|
42
65
|
this.emit({
|
|
43
66
|
type: 'typing',
|
|
@@ -45,6 +68,10 @@ class HttpStream {
|
|
|
45
68
|
channelData: { streamType: 'informative' }
|
|
46
69
|
});
|
|
47
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* Close the stream by sending the final message.
|
|
73
|
+
* Waits for all queued activities to flush.
|
|
74
|
+
*/
|
|
48
75
|
async close() {
|
|
49
76
|
if (!this.index && !this.queue.length && !this._flushing) {
|
|
50
77
|
this._logger.debug('closed with no content');
|
|
@@ -54,13 +81,21 @@ class HttpStream {
|
|
|
54
81
|
this._logger.debug('already closed');
|
|
55
82
|
return this._result;
|
|
56
83
|
}
|
|
57
|
-
|
|
58
|
-
|
|
84
|
+
// Wait until all queued activities are flushed
|
|
85
|
+
const start = Date.now();
|
|
86
|
+
while (this.queue.length || !this.id) {
|
|
87
|
+
if (Date.now() - start > this._totalTimeout) {
|
|
88
|
+
this._logger.warn('Timeout while waiting for id and queue to flush');
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
this._logger.debug('waiting for id to be set or queue to be empty');
|
|
92
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
59
93
|
}
|
|
60
94
|
if (this.text === '' && !this.attachments.length) {
|
|
61
95
|
this._logger.warn('no text or attachments to send, cannot close stream');
|
|
62
96
|
return;
|
|
63
97
|
}
|
|
98
|
+
// Build final message activity
|
|
64
99
|
const activity = new teams_api_1.MessageActivity(this.text)
|
|
65
100
|
.withId(this.id)
|
|
66
101
|
.addAttachments(...this.attachments)
|
|
@@ -71,6 +106,7 @@ class HttpStream {
|
|
|
71
106
|
logger: this._logger
|
|
72
107
|
});
|
|
73
108
|
this.events.emit('close', res);
|
|
109
|
+
// Reset internal state
|
|
74
110
|
this.index = 0;
|
|
75
111
|
this.id = undefined;
|
|
76
112
|
this.text = '';
|
|
@@ -81,6 +117,10 @@ class HttpStream {
|
|
|
81
117
|
this._logger.debug(res);
|
|
82
118
|
return res;
|
|
83
119
|
}
|
|
120
|
+
/**
|
|
121
|
+
* Flush queued activities.
|
|
122
|
+
* Processes up to 10 items at a time.
|
|
123
|
+
*/
|
|
84
124
|
async flush() {
|
|
85
125
|
// if locked or no queue, return early
|
|
86
126
|
if (!this.queue.length || this._flushing)
|
|
@@ -132,14 +172,22 @@ class HttpStream {
|
|
|
132
172
|
const activity = new teams_api_1.TypingActivity().withText(this.text);
|
|
133
173
|
await this.pushStreamChunk(activity);
|
|
134
174
|
}
|
|
175
|
+
// Schedule another flush if queue is not empty
|
|
135
176
|
if (this.queue.length) {
|
|
136
177
|
this._timeout = setTimeout(this.flush.bind(this), 500);
|
|
137
178
|
}
|
|
138
179
|
}
|
|
180
|
+
catch (err) {
|
|
181
|
+
this._logger.error(err, 'flush failed');
|
|
182
|
+
}
|
|
139
183
|
finally {
|
|
140
184
|
this._flushing = false;
|
|
141
185
|
}
|
|
142
186
|
}
|
|
187
|
+
/**
|
|
188
|
+
* Push a new chunk to the stream.
|
|
189
|
+
* @param activity TypingActivity to send.
|
|
190
|
+
*/
|
|
143
191
|
async pushStreamChunk(activity) {
|
|
144
192
|
if (this.id) {
|
|
145
193
|
activity.id = this.id;
|
|
@@ -154,6 +202,10 @@ class HttpStream {
|
|
|
154
202
|
this.id = res.id;
|
|
155
203
|
}
|
|
156
204
|
}
|
|
205
|
+
/**
|
|
206
|
+
* Send or update a streaming activity
|
|
207
|
+
* @param activity ActivityParams to send.
|
|
208
|
+
*/
|
|
157
209
|
async send(activity) {
|
|
158
210
|
activity = {
|
|
159
211
|
...activity,
|
|
@@ -173,4 +225,4 @@ class HttpStream {
|
|
|
173
225
|
}
|
|
174
226
|
}
|
|
175
227
|
exports.HttpStream = HttpStream;
|
|
176
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
228
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyZWFtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BsdWdpbnMvaHR0cC9zdHJlYW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsb0RBWThCO0FBQzlCLDBEQUErRTtBQUcvRSx1Q0FBdUM7QUFFdkM7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxNQUFhLFVBQVU7SUFDWixNQUFNLEdBQUcsSUFBSSwyQkFBWSxFQUFtQixDQUFDO0lBRTVDLE1BQU0sQ0FBUztJQUNmLEdBQUcsQ0FBd0I7SUFDM0IsS0FBSyxHQUFHLENBQUMsQ0FBQztJQUNWLEVBQUUsQ0FBVTtJQUNaLElBQUksR0FBVyxFQUFFLENBQUM7SUFDbEIsV0FBVyxHQUFpQixFQUFFLENBQUM7SUFDL0IsV0FBVyxHQUFnQixFQUFFLENBQUM7SUFDOUIsUUFBUSxHQUFhLEVBQUUsQ0FBQztJQUN4QixLQUFLLEdBQXVELEVBQUUsQ0FBQztJQUVqRSxPQUFPLENBQWdCO0lBQ3ZCLFFBQVEsQ0FBa0I7SUFDMUIsT0FBTyxDQUFVO0lBQ2pCLFNBQVMsR0FBWSxLQUFLLENBQUM7SUFDbEIsYUFBYSxHQUFHLEtBQUssQ0FBQyxDQUFDLGFBQWE7SUFFckQsWUFBWSxNQUFjLEVBQUUsR0FBMEIsRUFBRSxNQUFnQjtRQUN0RSxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUNmLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLDRCQUFhLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUNwRixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBSSxDQUFDLFFBQThEO1FBRWpFLElBQUksT0FBTyxRQUFRLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDakMsUUFBUSxHQUFHO2dCQUNULElBQUksRUFBRSxTQUFTO2dCQUNmLElBQUksRUFBRSxRQUFRO2FBQ2YsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUUxQix1Q0FBdUM7UUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDZixDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxJQUFZO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDUixJQUFJLEVBQUUsUUFBUTtZQUNkLElBQUksRUFBRSxJQUFJO1lBQ1YsV0FBVyxFQUFFLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRTtTQUMzQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLEtBQUs7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3pELElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUM7WUFDN0MsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ3JDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUN0QixDQUFDO1FBRUQsK0NBQStDO1FBQy9DLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUV6QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ3JDLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQzVDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGlEQUFpRCxDQUFDLENBQUM7Z0JBQ3JFLE9BQU87WUFDVCxDQUFDO1lBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsK0NBQStDLENBQUMsQ0FBQztZQUNwRSxNQUFNLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDM0QsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2pELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLHFEQUFxRCxDQUFDLENBQUM7WUFDekUsT0FBTztRQUNULENBQUM7UUFFRCwrQkFBK0I7UUFDL0IsTUFBTSxRQUFRLEdBQUcsSUFBSSwyQkFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7YUFDNUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7YUFDZixjQUFjLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO2FBQ25DLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7YUFDN0IsY0FBYyxFQUFFO2FBQ2hCLGVBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFckMsTUFBTSxHQUFHLEdBQUcsTUFBTSxnQkFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzFELE1BQU0sRUFBRSxJQUFJLENBQUMsT0FBTztTQUNyQixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFFL0IsdUJBQXVCO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLEVBQUUsR0FBRyxTQUFTLENBQUM7UUFDcEIsSUFBSSxDQUFDLElBQUksR0FBRyxFQUFFLENBQUM7UUFDZixJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztRQUNuQixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN4QixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRDs7O09BR0c7SUFDTyxLQUFLLENBQUMsS0FBSztRQUNuQixzQ0FBc0M7UUFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxTQUFTO1lBQUUsT0FBTztRQUVqRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUV0QixJQUFJLENBQUM7WUFDSCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDbEIsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDNUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxTQUFTLENBQUM7WUFDNUIsQ0FBQztZQUVELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNWLE1BQU0sa0JBQWtCLEdBQStCLEVBQUUsQ0FBQztZQUUxRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQztnQkFDbkMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFFcEMsSUFBSSxDQUFDLFFBQVE7b0JBQUUsU0FBUztnQkFFeEIsSUFBSSxRQUFRLENBQUMsSUFBSSxLQUFLLFNBQVMsRUFBRSxDQUFDO29CQUNoQyxJQUFJLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQzt3QkFDbEIsSUFBSSxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDO29CQUM3QixDQUFDO29CQUNELElBQUksUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO3dCQUN6QixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLEVBQUUsR0FBRyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQzVFLENBQUM7b0JBQ0QsSUFBSSxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7d0JBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsRUFBRSxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDbkUsQ0FBQztnQkFDSCxDQUFDO2dCQUVELElBQUksUUFBUSxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztvQkFDL0IsSUFBSSxRQUFRLENBQUMsV0FBVyxFQUFFLFVBQVUsS0FBSyxhQUFhLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxFQUFFLEVBQUUsQ0FBQzt3QkFDM0Usa0JBQWtCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO29CQUNwQyxDQUFDO2dCQUNILENBQUM7Z0JBRUQsSUFBSSxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ3pCLElBQUksQ0FBQyxXQUFXLEdBQUc7d0JBQ2pCLEdBQUcsSUFBSSxDQUFDLFdBQVc7d0JBQ25CLEdBQUcsUUFBUSxDQUFDLFdBQVc7cUJBQ3hCLENBQUM7Z0JBQ0osQ0FBQztnQkFFRCxDQUFDLEVBQUUsQ0FBQztZQUNOLENBQUM7WUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDO2dCQUFFLE9BQU87WUFFcEIsdUNBQXVDO1lBQ3ZDLEtBQUssTUFBTSxpQkFBaUIsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO2dCQUNuRCxNQUFNLFFBQVEsR0FBRyxJQUFJLDBCQUFjLEVBQUUsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDO2dCQUM1SCxNQUFNLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdkMsQ0FBQztZQUVELElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNkLE1BQU0sUUFBUSxHQUFHLElBQUksMEJBQWMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzFELE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN2QyxDQUFDO1lBRUQsK0NBQStDO1lBQy9DLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDekQsQ0FBQztRQUNILENBQUM7UUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ2IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBQzFDLENBQUM7Z0JBQVMsQ0FBQztZQUNULElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLENBQUM7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ08sS0FBSyxDQUFDLGVBQWUsQ0FBQyxRQUF3QjtRQUNwRCxJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNaLFFBQVEsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUN4QixDQUFDO1FBQ0QsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRXpDLE1BQU0sR0FBRyxHQUFHLE1BQU0sZ0JBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUEwQixDQUFDLEVBQUU7WUFDNUUsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPO1NBQ3JCLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ2IsSUFBSSxDQUFDLEVBQUUsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ25CLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ08sS0FBSyxDQUFDLElBQUksQ0FBQyxRQUF3QjtRQUMzQyxRQUFRLEdBQUc7WUFDVCxHQUFHLFFBQVE7WUFDWCxJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHO1lBQ2xCLFlBQVksRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVk7U0FDcEMsQ0FBQztRQUVGLElBQUksUUFBUSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssWUFBWSxDQUFDLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN2RixNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYTtpQkFDeEMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQztpQkFDcEMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFFakMsT0FBTyxFQUFFLEdBQUcsUUFBUSxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUM7UUFDakMsQ0FBQztRQUVELE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhO2FBQ3hDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUM7YUFDcEMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXBCLE9BQU8sRUFBRSxHQUFHLFFBQVEsRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDO0lBQ2pDLENBQUM7Q0FDRjtBQTdPRCxnQ0E2T0MifQ==
|
|
@@ -31,6 +31,7 @@ type InvokeAliases = {
|
|
|
31
31
|
'handoff/action': 'handoff.action';
|
|
32
32
|
'signin/tokenExchange': 'signin.token-exchange';
|
|
33
33
|
'signin/verifyState': 'signin.verify-state';
|
|
34
|
+
'signin/failure': 'signin.failure';
|
|
34
35
|
'adaptiveCard/action': 'card.action';
|
|
35
36
|
};
|
|
36
37
|
export declare const INVOKE_ALIASES: InvokeAliases;
|
|
@@ -37,9 +37,10 @@ exports.INVOKE_ALIASES = {
|
|
|
37
37
|
'handoff/action': 'handoff.action',
|
|
38
38
|
'signin/tokenExchange': 'signin.token-exchange',
|
|
39
39
|
'signin/verifyState': 'signin.verify-state',
|
|
40
|
+
'signin/failure': 'signin.failure',
|
|
40
41
|
'adaptiveCard/action': 'card.action',
|
|
41
42
|
};
|
|
42
43
|
__exportStar(require("./file-consent"), exports);
|
|
43
44
|
__exportStar(require("./message-extension-submit"), exports);
|
|
44
45
|
__exportStar(require("./message-submit"), exports);
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcm91dGVzL2ludm9rZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQTRDYSxRQUFBLGNBQWMsR0FBa0I7SUFDM0MsY0FBYyxFQUFFLGFBQWE7SUFDN0IsZUFBZSxFQUFFLGVBQWU7SUFDaEMsb0JBQW9CLEVBQUUsY0FBYztJQUNwQyxpQ0FBaUMsRUFBRSxpQkFBaUI7SUFDcEQsNEJBQTRCLEVBQUUsd0JBQXdCO0lBQ3RELHFDQUFxQyxFQUFFLDZCQUE2QjtJQUNwRSx3QkFBd0IsRUFBRSxtQkFBbUI7SUFDN0MsNkJBQTZCLEVBQUUseUJBQXlCO0lBQ3hELCtCQUErQixFQUFFLG9CQUFvQjtJQUNyRCw0QkFBNEIsRUFBRSxrQkFBa0I7SUFDaEQsa0NBQWtDLEVBQUUsZ0NBQWdDO0lBQ3BFLDBCQUEwQixFQUFFLHFCQUFxQjtJQUNqRCxzQ0FBc0MsRUFBRSxpQ0FBaUM7SUFDekUsWUFBWSxFQUFFLGFBQWE7SUFDM0IsYUFBYSxFQUFFLGVBQWU7SUFDOUIsV0FBVyxFQUFFLFVBQVU7SUFDdkIsWUFBWSxFQUFFLFlBQVk7SUFDMUIsc0JBQXNCLEVBQUUsZ0JBQWdCO0lBQ3hDLGdCQUFnQixFQUFFLGdCQUFnQjtJQUNsQyxzQkFBc0IsRUFBRSx1QkFBdUI7SUFDL0Msb0JBQW9CLEVBQUUscUJBQXFCO0lBQzNDLGdCQUFnQixFQUFFLGdCQUFnQjtJQUNsQyxxQkFBcUIsRUFBRSxhQUFhO0NBQ3JDLENBQUM7QUFFRixpREFBK0I7QUFDL0IsNkRBQTJDO0FBQzNDLG1EQUFpQyJ9
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@microsoft/teams.apps",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.6-preview.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -41,18 +41,18 @@
|
|
|
41
41
|
"@azure/msal-node": "^3.8.1",
|
|
42
42
|
"axios": "^1.12.0",
|
|
43
43
|
"cors": "^2.8.5",
|
|
44
|
-
"express": "^4.
|
|
44
|
+
"express": "^4.22.0",
|
|
45
45
|
"jsonwebtoken": "^9.0.2",
|
|
46
46
|
"jwks-rsa": "^3.2.0",
|
|
47
47
|
"reflect-metadata": "^0.2.2"
|
|
48
48
|
},
|
|
49
49
|
"peerDependencies": {
|
|
50
|
-
"@microsoft/teams.api": "2.0.
|
|
51
|
-
"@microsoft/teams.common": "2.0.
|
|
52
|
-
"@microsoft/teams.graph": "2.0.
|
|
50
|
+
"@microsoft/teams.api": "2.0.6-preview.1",
|
|
51
|
+
"@microsoft/teams.common": "2.0.6-preview.1",
|
|
52
|
+
"@microsoft/teams.graph": "2.0.6-preview.1"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
|
-
"@microsoft/teams.config": "2.0.
|
|
55
|
+
"@microsoft/teams.config": "2.0.6-preview.1",
|
|
56
56
|
"@types/cors": "^2.8.17",
|
|
57
57
|
"@types/express": "^5.0.0",
|
|
58
58
|
"@types/jest": "^29.5.12",
|