@kodelyth/msteams 2026.5.39 → 2026.5.42

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 (208) hide show
  1. package/api.ts +3 -0
  2. package/channel-config-api.ts +1 -0
  3. package/channel-plugin-api.ts +2 -0
  4. package/config-api.ts +4 -0
  5. package/contract-api.ts +4 -0
  6. package/dist/api.js +3 -0
  7. package/dist/channel-BvTXHuGs.js +1161 -0
  8. package/dist/channel-config-api.js +2 -0
  9. package/dist/channel-plugin-api.js +2 -0
  10. package/dist/channel.runtime-NssGKZm5.js +650 -0
  11. package/dist/config-schema-Btk-XCOd.js +43 -0
  12. package/dist/contract-api.js +2 -0
  13. package/dist/graph-users-D-gKCguI.js +1411 -0
  14. package/dist/index.js +22 -0
  15. package/dist/oauth-BUxlphX3.js +114 -0
  16. package/dist/oauth.token-ebId9946.js +116 -0
  17. package/dist/probe-Cj2KsAGF.js +2190 -0
  18. package/dist/runtime-api-BL4DOWXD.js +28 -0
  19. package/dist/runtime-api.js +2 -0
  20. package/dist/secret-contract-Bo7kdUrT.js +35 -0
  21. package/dist/secret-contract-api.js +2 -0
  22. package/dist/setup-entry.js +15 -0
  23. package/dist/setup-plugin-api.js +64 -0
  24. package/dist/setup-surface-COTQDcTQ.js +531 -0
  25. package/dist/src-tvpsGYPV.js +4226 -0
  26. package/dist/test-api.js +2 -0
  27. package/index.ts +20 -0
  28. package/klaw.plugin.json +2 -726
  29. package/package.json +4 -4
  30. package/runtime-api.ts +66 -0
  31. package/secret-contract-api.ts +5 -0
  32. package/setup-entry.ts +13 -0
  33. package/setup-plugin-api.ts +3 -0
  34. package/src/ai-entity.ts +7 -0
  35. package/src/approval-auth.ts +44 -0
  36. package/src/attachments/bot-framework.test.ts +506 -0
  37. package/src/attachments/bot-framework.ts +348 -0
  38. package/src/attachments/download.ts +328 -0
  39. package/src/attachments/graph.test.ts +441 -0
  40. package/src/attachments/graph.ts +489 -0
  41. package/src/attachments/html.ts +122 -0
  42. package/src/attachments/payload.ts +14 -0
  43. package/src/attachments/remote-media.test.ts +187 -0
  44. package/src/attachments/remote-media.ts +86 -0
  45. package/src/attachments/shared.test.ts +547 -0
  46. package/src/attachments/shared.ts +655 -0
  47. package/src/attachments/types.ts +47 -0
  48. package/src/attachments.graph.test.ts +414 -0
  49. package/src/attachments.helpers.test.ts +245 -0
  50. package/src/attachments.test-helpers.ts +17 -0
  51. package/src/attachments.test.ts +754 -0
  52. package/src/attachments.ts +18 -0
  53. package/src/block-streaming-config.test.ts +61 -0
  54. package/src/channel-api.ts +1 -0
  55. package/src/channel.actions.test.ts +797 -0
  56. package/src/channel.directory.test.ts +176 -0
  57. package/src/channel.message-adapter.test.ts +227 -0
  58. package/src/channel.runtime.ts +56 -0
  59. package/src/channel.setup.ts +77 -0
  60. package/src/channel.test.ts +136 -0
  61. package/src/channel.ts +1176 -0
  62. package/src/config-schema.ts +6 -0
  63. package/src/config-ui-hints.ts +40 -0
  64. package/src/conversation-store-fs.test.ts +81 -0
  65. package/src/conversation-store-fs.ts +149 -0
  66. package/src/conversation-store-helpers.test.ts +202 -0
  67. package/src/conversation-store-helpers.ts +105 -0
  68. package/src/conversation-store-memory.ts +51 -0
  69. package/src/conversation-store.shared.test.ts +260 -0
  70. package/src/conversation-store.ts +71 -0
  71. package/src/directory-live.test.ts +156 -0
  72. package/src/directory-live.ts +111 -0
  73. package/src/doctor.ts +27 -0
  74. package/src/errors.test.ts +154 -0
  75. package/src/errors.ts +270 -0
  76. package/src/feedback-reflection-prompt.ts +117 -0
  77. package/src/feedback-reflection-store.ts +113 -0
  78. package/src/feedback-reflection.test.ts +237 -0
  79. package/src/feedback-reflection.ts +268 -0
  80. package/src/file-consent-helpers.test.ts +328 -0
  81. package/src/file-consent-helpers.ts +115 -0
  82. package/src/file-consent-invoke.ts +150 -0
  83. package/src/file-consent.test.ts +378 -0
  84. package/src/file-consent.ts +223 -0
  85. package/src/graph-chat.ts +36 -0
  86. package/src/graph-group-management.test.ts +332 -0
  87. package/src/graph-group-management.ts +168 -0
  88. package/src/graph-members.test.ts +89 -0
  89. package/src/graph-members.ts +48 -0
  90. package/src/graph-messages.actions.test.ts +253 -0
  91. package/src/graph-messages.read.test.ts +391 -0
  92. package/src/graph-messages.search.test.ts +227 -0
  93. package/src/graph-messages.test-helpers.ts +50 -0
  94. package/src/graph-messages.ts +534 -0
  95. package/src/graph-teams.test.ts +222 -0
  96. package/src/graph-teams.ts +114 -0
  97. package/src/graph-thread.test.ts +252 -0
  98. package/src/graph-thread.ts +146 -0
  99. package/src/graph-upload.test.ts +253 -0
  100. package/src/graph-upload.ts +531 -0
  101. package/src/graph-users.ts +29 -0
  102. package/src/graph.test.ts +540 -0
  103. package/src/graph.ts +308 -0
  104. package/src/inbound.test.ts +221 -0
  105. package/src/inbound.ts +148 -0
  106. package/src/index.ts +4 -0
  107. package/src/media-helpers.test.ts +220 -0
  108. package/src/media-helpers.ts +105 -0
  109. package/src/mentions.test.ts +254 -0
  110. package/src/mentions.ts +114 -0
  111. package/src/messenger.test.ts +961 -0
  112. package/src/messenger.ts +608 -0
  113. package/src/monitor-handler/access.ts +136 -0
  114. package/src/monitor-handler/inbound-media.test.ts +314 -0
  115. package/src/monitor-handler/inbound-media.ts +180 -0
  116. package/src/monitor-handler/message-handler-mock-support.test-support.ts +28 -0
  117. package/src/monitor-handler/message-handler.authz.test.ts +739 -0
  118. package/src/monitor-handler/message-handler.dm-media.test.ts +54 -0
  119. package/src/monitor-handler/message-handler.test-support.ts +99 -0
  120. package/src/monitor-handler/message-handler.thread-parent.test.ts +225 -0
  121. package/src/monitor-handler/message-handler.thread-session.test.ts +132 -0
  122. package/src/monitor-handler/message-handler.ts +1003 -0
  123. package/src/monitor-handler/reaction-handler.test.ts +325 -0
  124. package/src/monitor-handler/reaction-handler.ts +122 -0
  125. package/src/monitor-handler/thread-session.ts +30 -0
  126. package/src/monitor-handler.adaptive-card.test.ts +158 -0
  127. package/src/monitor-handler.feedback-authz.test.ts +357 -0
  128. package/src/monitor-handler.file-consent.test.ts +443 -0
  129. package/src/monitor-handler.sso.test.ts +576 -0
  130. package/src/monitor-handler.test-helpers.ts +181 -0
  131. package/src/monitor-handler.ts +538 -0
  132. package/src/monitor-handler.types.ts +27 -0
  133. package/src/monitor-types.ts +6 -0
  134. package/src/monitor.lifecycle.test.ts +457 -0
  135. package/src/monitor.test.ts +119 -0
  136. package/src/monitor.ts +476 -0
  137. package/src/oauth.flow.ts +77 -0
  138. package/src/oauth.shared.ts +37 -0
  139. package/src/oauth.test.ts +350 -0
  140. package/src/oauth.token.ts +162 -0
  141. package/src/oauth.ts +130 -0
  142. package/src/outbound.test.ts +400 -0
  143. package/src/outbound.ts +198 -0
  144. package/src/pending-uploads-fs.test.ts +261 -0
  145. package/src/pending-uploads-fs.ts +235 -0
  146. package/src/pending-uploads.test.ts +186 -0
  147. package/src/pending-uploads.ts +121 -0
  148. package/src/policy.test.ts +156 -0
  149. package/src/policy.ts +245 -0
  150. package/src/polls-store-memory.ts +32 -0
  151. package/src/polls.test.ts +169 -0
  152. package/src/polls.ts +312 -0
  153. package/src/presentation.ts +93 -0
  154. package/src/probe.test.ts +79 -0
  155. package/src/probe.ts +132 -0
  156. package/src/reply-dispatcher.test.ts +543 -0
  157. package/src/reply-dispatcher.ts +523 -0
  158. package/src/reply-stream-controller.test.ts +424 -0
  159. package/src/reply-stream-controller.ts +334 -0
  160. package/src/resolve-allowlist.test.ts +253 -0
  161. package/src/resolve-allowlist.ts +309 -0
  162. package/src/revoked-context.ts +17 -0
  163. package/src/runtime.ts +12 -0
  164. package/src/sdk-types.ts +59 -0
  165. package/src/sdk.test.ts +727 -0
  166. package/src/sdk.ts +916 -0
  167. package/src/secret-contract.ts +49 -0
  168. package/src/secret-input.ts +7 -0
  169. package/src/send-context.test.ts +93 -0
  170. package/src/send-context.ts +269 -0
  171. package/src/send.test.ts +588 -0
  172. package/src/send.ts +697 -0
  173. package/src/sent-message-cache.test.ts +106 -0
  174. package/src/sent-message-cache.ts +174 -0
  175. package/src/session-route.ts +40 -0
  176. package/src/setup-core.ts +162 -0
  177. package/src/setup-surface.test.ts +175 -0
  178. package/src/setup-surface.ts +319 -0
  179. package/src/sso-token-store.test.ts +74 -0
  180. package/src/sso-token-store.ts +166 -0
  181. package/src/sso.ts +300 -0
  182. package/src/storage.ts +25 -0
  183. package/src/store-fs.ts +42 -0
  184. package/src/streaming-message.test.ts +323 -0
  185. package/src/streaming-message.ts +327 -0
  186. package/src/test-runtime.ts +16 -0
  187. package/src/thread-parent-context.test.ts +224 -0
  188. package/src/thread-parent-context.ts +159 -0
  189. package/src/token-response.ts +11 -0
  190. package/src/token.test.ts +268 -0
  191. package/src/token.ts +194 -0
  192. package/src/user-agent.test.ts +121 -0
  193. package/src/user-agent.ts +53 -0
  194. package/src/webhook-timeouts.ts +27 -0
  195. package/src/welcome-card.test.ts +104 -0
  196. package/src/welcome-card.ts +57 -0
  197. package/test-api.ts +1 -0
  198. package/tsconfig.json +16 -0
  199. package/api.js +0 -7
  200. package/channel-config-api.js +0 -7
  201. package/channel-plugin-api.js +0 -7
  202. package/contract-api.js +0 -7
  203. package/index.js +0 -7
  204. package/runtime-api.js +0 -7
  205. package/secret-contract-api.js +0 -7
  206. package/setup-entry.js +0 -7
  207. package/setup-plugin-api.js +0 -7
  208. package/test-api.js +0 -7
package/klaw.plugin.json CHANGED
@@ -3,737 +3,13 @@
3
3
  "activation": {
4
4
  "onStartup": false
5
5
  },
6
- "channels": [
7
- "msteams"
8
- ],
6
+ "channels": ["msteams"],
9
7
  "channelEnvVars": {
10
- "msteams": [
11
- "MSTEAMS_APP_ID",
12
- "MSTEAMS_APP_PASSWORD",
13
- "MSTEAMS_TENANT_ID"
14
- ]
8
+ "msteams": ["MSTEAMS_APP_ID", "MSTEAMS_APP_PASSWORD", "MSTEAMS_TENANT_ID"]
15
9
  },
16
10
  "configSchema": {
17
11
  "type": "object",
18
12
  "additionalProperties": false,
19
13
  "properties": {}
20
- },
21
- "channelConfigs": {
22
- "msteams": {
23
- "schema": {
24
- "$schema": "http://json-schema.org/draft-07/schema#",
25
- "type": "object",
26
- "properties": {
27
- "enabled": {
28
- "type": "boolean"
29
- },
30
- "capabilities": {
31
- "type": "array",
32
- "items": {
33
- "type": "string"
34
- }
35
- },
36
- "dangerouslyAllowNameMatching": {
37
- "type": "boolean"
38
- },
39
- "markdown": {
40
- "type": "object",
41
- "properties": {
42
- "tables": {
43
- "type": "string",
44
- "enum": [
45
- "off",
46
- "bullets",
47
- "code",
48
- "block"
49
- ]
50
- }
51
- },
52
- "additionalProperties": false
53
- },
54
- "configWrites": {
55
- "type": "boolean"
56
- },
57
- "appId": {
58
- "type": "string"
59
- },
60
- "appPassword": {
61
- "anyOf": [
62
- {
63
- "type": "string"
64
- },
65
- {
66
- "oneOf": [
67
- {
68
- "type": "object",
69
- "properties": {
70
- "source": {
71
- "type": "string",
72
- "const": "env"
73
- },
74
- "provider": {
75
- "type": "string",
76
- "pattern": "^[a-z][a-z0-9_-]{0,63}$"
77
- },
78
- "id": {
79
- "type": "string",
80
- "pattern": "^[A-Z][A-Z0-9_]{0,127}$"
81
- }
82
- },
83
- "required": [
84
- "source",
85
- "provider",
86
- "id"
87
- ],
88
- "additionalProperties": false
89
- },
90
- {
91
- "type": "object",
92
- "properties": {
93
- "source": {
94
- "type": "string",
95
- "const": "file"
96
- },
97
- "provider": {
98
- "type": "string",
99
- "pattern": "^[a-z][a-z0-9_-]{0,63}$"
100
- },
101
- "id": {
102
- "type": "string"
103
- }
104
- },
105
- "required": [
106
- "source",
107
- "provider",
108
- "id"
109
- ],
110
- "additionalProperties": false
111
- },
112
- {
113
- "type": "object",
114
- "properties": {
115
- "source": {
116
- "type": "string",
117
- "const": "exec"
118
- },
119
- "provider": {
120
- "type": "string",
121
- "pattern": "^[a-z][a-z0-9_-]{0,63}$"
122
- },
123
- "id": {
124
- "type": "string"
125
- }
126
- },
127
- "required": [
128
- "source",
129
- "provider",
130
- "id"
131
- ],
132
- "additionalProperties": false
133
- }
134
- ]
135
- }
136
- ]
137
- },
138
- "tenantId": {
139
- "type": "string"
140
- },
141
- "authType": {
142
- "type": "string",
143
- "enum": [
144
- "secret",
145
- "federated"
146
- ]
147
- },
148
- "certificatePath": {
149
- "type": "string"
150
- },
151
- "certificateThumbprint": {
152
- "type": "string"
153
- },
154
- "useManagedIdentity": {
155
- "type": "boolean"
156
- },
157
- "managedIdentityClientId": {
158
- "type": "string"
159
- },
160
- "webhook": {
161
- "type": "object",
162
- "properties": {
163
- "port": {
164
- "type": "integer",
165
- "exclusiveMinimum": 0,
166
- "maximum": 9007199254740991
167
- },
168
- "path": {
169
- "type": "string"
170
- }
171
- },
172
- "additionalProperties": false
173
- },
174
- "dmPolicy": {
175
- "default": "pairing",
176
- "type": "string",
177
- "enum": [
178
- "pairing",
179
- "allowlist",
180
- "open",
181
- "disabled"
182
- ]
183
- },
184
- "allowFrom": {
185
- "type": "array",
186
- "items": {
187
- "type": "string"
188
- }
189
- },
190
- "defaultTo": {
191
- "type": "string"
192
- },
193
- "groupAllowFrom": {
194
- "type": "array",
195
- "items": {
196
- "type": "string"
197
- }
198
- },
199
- "groupPolicy": {
200
- "default": "allowlist",
201
- "type": "string",
202
- "enum": [
203
- "open",
204
- "disabled",
205
- "allowlist"
206
- ]
207
- },
208
- "contextVisibility": {
209
- "type": "string",
210
- "enum": [
211
- "all",
212
- "allowlist",
213
- "allowlist_quote"
214
- ]
215
- },
216
- "textChunkLimit": {
217
- "type": "integer",
218
- "exclusiveMinimum": 0,
219
- "maximum": 9007199254740991
220
- },
221
- "chunkMode": {
222
- "type": "string",
223
- "enum": [
224
- "length",
225
- "newline"
226
- ]
227
- },
228
- "streaming": {
229
- "type": "object",
230
- "properties": {
231
- "mode": {
232
- "type": "string",
233
- "enum": [
234
- "off",
235
- "partial",
236
- "block",
237
- "progress"
238
- ]
239
- },
240
- "chunkMode": {
241
- "type": "string",
242
- "enum": [
243
- "length",
244
- "newline"
245
- ]
246
- },
247
- "preview": {
248
- "type": "object",
249
- "properties": {
250
- "chunk": {
251
- "type": "object",
252
- "properties": {
253
- "minChars": {
254
- "type": "integer",
255
- "exclusiveMinimum": 0,
256
- "maximum": 9007199254740991
257
- },
258
- "maxChars": {
259
- "type": "integer",
260
- "exclusiveMinimum": 0,
261
- "maximum": 9007199254740991
262
- },
263
- "breakPreference": {
264
- "anyOf": [
265
- {
266
- "type": "string",
267
- "const": "paragraph"
268
- },
269
- {
270
- "type": "string",
271
- "const": "newline"
272
- },
273
- {
274
- "type": "string",
275
- "const": "sentence"
276
- }
277
- ]
278
- }
279
- },
280
- "additionalProperties": false
281
- },
282
- "toolProgress": {
283
- "type": "boolean"
284
- },
285
- "commandText": {
286
- "type": "string",
287
- "enum": [
288
- "raw",
289
- "status"
290
- ]
291
- }
292
- },
293
- "additionalProperties": false
294
- },
295
- "progress": {
296
- "type": "object",
297
- "properties": {
298
- "label": {
299
- "anyOf": [
300
- {
301
- "type": "string"
302
- },
303
- {
304
- "type": "boolean",
305
- "const": false
306
- }
307
- ]
308
- },
309
- "labels": {
310
- "type": "array",
311
- "items": {
312
- "type": "string"
313
- }
314
- },
315
- "maxLines": {
316
- "type": "integer",
317
- "exclusiveMinimum": 0,
318
- "maximum": 9007199254740991
319
- },
320
- "maxLineChars": {
321
- "type": "integer",
322
- "exclusiveMinimum": 0,
323
- "maximum": 9007199254740991
324
- },
325
- "render": {
326
- "type": "string",
327
- "enum": [
328
- "text",
329
- "rich"
330
- ]
331
- },
332
- "toolProgress": {
333
- "type": "boolean"
334
- },
335
- "commandText": {
336
- "type": "string",
337
- "enum": [
338
- "raw",
339
- "status"
340
- ]
341
- }
342
- },
343
- "additionalProperties": false
344
- },
345
- "block": {
346
- "type": "object",
347
- "properties": {
348
- "enabled": {
349
- "type": "boolean"
350
- },
351
- "coalesce": {
352
- "type": "object",
353
- "properties": {
354
- "minChars": {
355
- "type": "integer",
356
- "exclusiveMinimum": 0,
357
- "maximum": 9007199254740991
358
- },
359
- "maxChars": {
360
- "type": "integer",
361
- "exclusiveMinimum": 0,
362
- "maximum": 9007199254740991
363
- },
364
- "idleMs": {
365
- "type": "integer",
366
- "minimum": 0,
367
- "maximum": 9007199254740991
368
- }
369
- },
370
- "additionalProperties": false
371
- }
372
- },
373
- "additionalProperties": false
374
- }
375
- },
376
- "additionalProperties": false
377
- },
378
- "typingIndicator": {
379
- "type": "boolean"
380
- },
381
- "blockStreaming": {
382
- "type": "boolean"
383
- },
384
- "blockStreamingCoalesce": {
385
- "type": "object",
386
- "properties": {
387
- "minChars": {
388
- "type": "integer",
389
- "exclusiveMinimum": 0,
390
- "maximum": 9007199254740991
391
- },
392
- "maxChars": {
393
- "type": "integer",
394
- "exclusiveMinimum": 0,
395
- "maximum": 9007199254740991
396
- },
397
- "idleMs": {
398
- "type": "integer",
399
- "minimum": 0,
400
- "maximum": 9007199254740991
401
- }
402
- },
403
- "additionalProperties": false
404
- },
405
- "mediaAllowHosts": {
406
- "type": "array",
407
- "items": {
408
- "type": "string"
409
- }
410
- },
411
- "mediaAuthAllowHosts": {
412
- "type": "array",
413
- "items": {
414
- "type": "string"
415
- }
416
- },
417
- "requireMention": {
418
- "type": "boolean"
419
- },
420
- "historyLimit": {
421
- "type": "integer",
422
- "minimum": 0,
423
- "maximum": 9007199254740991
424
- },
425
- "dmHistoryLimit": {
426
- "type": "integer",
427
- "minimum": 0,
428
- "maximum": 9007199254740991
429
- },
430
- "dms": {
431
- "type": "object",
432
- "propertyNames": {
433
- "type": "string"
434
- },
435
- "additionalProperties": {
436
- "type": "object",
437
- "properties": {
438
- "historyLimit": {
439
- "type": "integer",
440
- "minimum": 0,
441
- "maximum": 9007199254740991
442
- }
443
- },
444
- "additionalProperties": false
445
- }
446
- },
447
- "replyStyle": {
448
- "type": "string",
449
- "enum": [
450
- "thread",
451
- "top-level"
452
- ]
453
- },
454
- "teams": {
455
- "type": "object",
456
- "propertyNames": {
457
- "type": "string"
458
- },
459
- "additionalProperties": {
460
- "type": "object",
461
- "properties": {
462
- "requireMention": {
463
- "type": "boolean"
464
- },
465
- "tools": {
466
- "type": "object",
467
- "properties": {
468
- "allow": {
469
- "type": "array",
470
- "items": {
471
- "type": "string"
472
- }
473
- },
474
- "alsoAllow": {
475
- "type": "array",
476
- "items": {
477
- "type": "string"
478
- }
479
- },
480
- "deny": {
481
- "type": "array",
482
- "items": {
483
- "type": "string"
484
- }
485
- }
486
- },
487
- "additionalProperties": false
488
- },
489
- "toolsBySender": {
490
- "type": "object",
491
- "propertyNames": {
492
- "type": "string"
493
- },
494
- "additionalProperties": {
495
- "type": "object",
496
- "properties": {
497
- "allow": {
498
- "type": "array",
499
- "items": {
500
- "type": "string"
501
- }
502
- },
503
- "alsoAllow": {
504
- "type": "array",
505
- "items": {
506
- "type": "string"
507
- }
508
- },
509
- "deny": {
510
- "type": "array",
511
- "items": {
512
- "type": "string"
513
- }
514
- }
515
- },
516
- "additionalProperties": false
517
- }
518
- },
519
- "replyStyle": {
520
- "type": "string",
521
- "enum": [
522
- "thread",
523
- "top-level"
524
- ]
525
- },
526
- "channels": {
527
- "type": "object",
528
- "propertyNames": {
529
- "type": "string"
530
- },
531
- "additionalProperties": {
532
- "type": "object",
533
- "properties": {
534
- "requireMention": {
535
- "type": "boolean"
536
- },
537
- "tools": {
538
- "type": "object",
539
- "properties": {
540
- "allow": {
541
- "type": "array",
542
- "items": {
543
- "type": "string"
544
- }
545
- },
546
- "alsoAllow": {
547
- "type": "array",
548
- "items": {
549
- "type": "string"
550
- }
551
- },
552
- "deny": {
553
- "type": "array",
554
- "items": {
555
- "type": "string"
556
- }
557
- }
558
- },
559
- "additionalProperties": false
560
- },
561
- "toolsBySender": {
562
- "type": "object",
563
- "propertyNames": {
564
- "type": "string"
565
- },
566
- "additionalProperties": {
567
- "type": "object",
568
- "properties": {
569
- "allow": {
570
- "type": "array",
571
- "items": {
572
- "type": "string"
573
- }
574
- },
575
- "alsoAllow": {
576
- "type": "array",
577
- "items": {
578
- "type": "string"
579
- }
580
- },
581
- "deny": {
582
- "type": "array",
583
- "items": {
584
- "type": "string"
585
- }
586
- }
587
- },
588
- "additionalProperties": false
589
- }
590
- },
591
- "replyStyle": {
592
- "type": "string",
593
- "enum": [
594
- "thread",
595
- "top-level"
596
- ]
597
- }
598
- },
599
- "additionalProperties": false
600
- }
601
- }
602
- },
603
- "additionalProperties": false
604
- }
605
- },
606
- "mediaMaxMb": {
607
- "type": "number",
608
- "exclusiveMinimum": 0
609
- },
610
- "sharePointSiteId": {
611
- "type": "string"
612
- },
613
- "heartbeat": {
614
- "type": "object",
615
- "properties": {
616
- "showOk": {
617
- "type": "boolean"
618
- },
619
- "showAlerts": {
620
- "type": "boolean"
621
- },
622
- "useIndicator": {
623
- "type": "boolean"
624
- }
625
- },
626
- "additionalProperties": false
627
- },
628
- "healthMonitor": {
629
- "type": "object",
630
- "properties": {
631
- "enabled": {
632
- "type": "boolean"
633
- }
634
- },
635
- "additionalProperties": false
636
- },
637
- "responsePrefix": {
638
- "type": "string"
639
- },
640
- "welcomeCard": {
641
- "type": "boolean"
642
- },
643
- "promptStarters": {
644
- "type": "array",
645
- "items": {
646
- "type": "string"
647
- }
648
- },
649
- "groupWelcomeCard": {
650
- "type": "boolean"
651
- },
652
- "feedbackEnabled": {
653
- "type": "boolean"
654
- },
655
- "feedbackReflection": {
656
- "type": "boolean"
657
- },
658
- "feedbackReflectionCooldownMs": {
659
- "type": "integer",
660
- "minimum": 0,
661
- "maximum": 9007199254740991
662
- },
663
- "delegatedAuth": {
664
- "type": "object",
665
- "properties": {
666
- "enabled": {
667
- "type": "boolean"
668
- },
669
- "scopes": {
670
- "type": "array",
671
- "items": {
672
- "type": "string"
673
- }
674
- }
675
- },
676
- "additionalProperties": false
677
- },
678
- "sso": {
679
- "type": "object",
680
- "properties": {
681
- "enabled": {
682
- "type": "boolean"
683
- },
684
- "connectionName": {
685
- "type": "string"
686
- }
687
- },
688
- "additionalProperties": false
689
- }
690
- },
691
- "required": [
692
- "dmPolicy",
693
- "groupPolicy"
694
- ],
695
- "additionalProperties": false
696
- },
697
- "label": "Microsoft Teams",
698
- "description": "Teams SDK; enterprise support.",
699
- "uiHints": {
700
- "": {
701
- "label": "MS Teams",
702
- "help": "Microsoft Teams channel provider configuration and provider-specific policy toggles. Use this section to isolate Teams behavior from other enterprise chat providers."
703
- },
704
- "configWrites": {
705
- "label": "MS Teams Config Writes",
706
- "help": "Allow Microsoft Teams to write config in response to channel events/commands (default: true)."
707
- },
708
- "streaming": {
709
- "label": "MS Teams Streaming",
710
- "help": "Microsoft Teams preview/progress streaming mode: \"off\" | \"partial\" | \"block\" | \"progress\". Personal chats use Teams native streaminfo progress when available."
711
- },
712
- "streaming.progress.label": {
713
- "label": "MS Teams Progress Label",
714
- "help": "Initial progress title. Use \"auto\" for built-in single-word labels, a custom string, or false to hide the title."
715
- },
716
- "streaming.progress.labels": {
717
- "label": "MS Teams Progress Label Pool",
718
- "help": "Candidate labels for streaming.progress.label=\"auto\". Leave unset to use Klaw built-in progress labels."
719
- },
720
- "streaming.progress.maxLines": {
721
- "label": "MS Teams Progress Max Lines",
722
- "help": "Maximum number of compact progress lines to keep below the progress title (default: 8)."
723
- },
724
- "streaming.progress.maxLineChars": {
725
- "label": "MS Teams Progress Max Line Chars",
726
- "help": "Maximum characters per compact progress line before truncation (default: 120). Prose cuts at word boundaries; commands and paths keep useful suffixes."
727
- },
728
- "streaming.progress.toolProgress": {
729
- "label": "MS Teams Progress Tool Lines",
730
- "help": "Show compact tool/progress lines in progress mode (default: true). Set false to keep only the title until final delivery."
731
- },
732
- "streaming.progress.commandText": {
733
- "label": "MS Teams Progress Command Text",
734
- "help": "Command/exec detail in progress lines: \"raw\" preserves released behavior; \"status\" shows only the tool label."
735
- }
736
- }
737
- }
738
14
  }
739
15
  }