@openclaw/msteams 2026.5.27 → 2026.5.28-beta.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 (701) hide show
  1. package/dist/api.js +2 -2
  2. package/dist/{channel-c7nnGfMx.js → channel-C4ifQ0RF.js} +5 -5
  3. package/dist/channel-config-api.js +1 -1
  4. package/dist/channel-plugin-api.js +1 -1
  5. package/dist/{channel.runtime-Boha-kk1.js → channel.runtime-Cl_OVKBH.js} +3 -3
  6. package/dist/{config-schema-CuksCQKC.js → config-schema-BL4qQZiA.js} +8 -0
  7. package/dist/{graph-users-uPAE6-KQ.js → errors-BevpsEsu.js} +301 -626
  8. package/dist/{oauth-C5ObhLG6.js → oauth-BrKjrCNK.js} +1 -1
  9. package/dist/{oauth.token-BNbWziwM.js → oauth.token-5ygi8ycy.js} +8 -6
  10. package/dist/{probe-istgFnuw.js → probe-C9cvgEV9.js} +221 -120
  11. package/dist/setup-plugin-api.js +3 -3
  12. package/dist/{setup-surface-evwYex71.js → setup-surface-Byk8kgPH.js} +2 -2
  13. package/dist/{src-ui0zJEZI.js → src-W5GVJcCN.js} +761 -981
  14. package/node_modules/@microsoft/teams.api/dist/activities/activity.d.mts +0 -1
  15. package/node_modules/@microsoft/teams.api/dist/activities/activity.d.ts +0 -1
  16. package/node_modules/@microsoft/teams.api/dist/activities/activity.js +0 -4
  17. package/node_modules/@microsoft/teams.api/dist/activities/activity.js.map +1 -1
  18. package/node_modules/@microsoft/teams.api/dist/activities/activity.mjs +0 -4
  19. package/node_modules/@microsoft/teams.api/dist/activities/activity.mjs.map +1 -1
  20. package/node_modules/@microsoft/teams.api/dist/activities/index.d.mts +3 -2
  21. package/node_modules/@microsoft/teams.api/dist/activities/index.d.ts +3 -2
  22. package/node_modules/@microsoft/teams.api/dist/activities/invoke/index.d.mts +3 -2
  23. package/node_modules/@microsoft/teams.api/dist/activities/invoke/index.d.ts +3 -2
  24. package/node_modules/@microsoft/teams.api/dist/activities/invoke/index.js +7 -0
  25. package/node_modules/@microsoft/teams.api/dist/activities/invoke/index.mjs +1 -0
  26. package/node_modules/@microsoft/teams.api/dist/activities/invoke/message-extension/fetch-task.d.mts +3 -2
  27. package/node_modules/@microsoft/teams.api/dist/activities/invoke/message-extension/fetch-task.d.ts +3 -2
  28. package/node_modules/@microsoft/teams.api/dist/activities/invoke/message-extension/index.d.mts +3 -2
  29. package/node_modules/@microsoft/teams.api/dist/activities/invoke/message-extension/index.d.ts +3 -2
  30. package/node_modules/@microsoft/teams.api/dist/activities/invoke/message-extension/submit-action.d.mts +3 -2
  31. package/node_modules/@microsoft/teams.api/dist/activities/invoke/message-extension/submit-action.d.ts +3 -2
  32. package/node_modules/@microsoft/teams.api/dist/activities/invoke/suggested-action-submit.d.mts +48 -0
  33. package/node_modules/@microsoft/teams.api/dist/activities/invoke/suggested-action-submit.d.ts +48 -0
  34. package/node_modules/@microsoft/teams.api/dist/activities/invoke/suggested-action-submit.js +4 -0
  35. package/node_modules/@microsoft/teams.api/dist/activities/invoke/suggested-action-submit.js.map +1 -0
  36. package/node_modules/@microsoft/teams.api/dist/activities/invoke/suggested-action-submit.mjs +3 -0
  37. package/node_modules/@microsoft/teams.api/dist/activities/invoke/suggested-action-submit.mjs.map +1 -0
  38. package/node_modules/@microsoft/teams.api/dist/activities/message/index.d.mts +3 -3
  39. package/node_modules/@microsoft/teams.api/dist/activities/message/index.d.ts +3 -3
  40. package/node_modules/@microsoft/teams.api/dist/activities/message/message.d.mts +2 -2
  41. package/node_modules/@microsoft/teams.api/dist/activities/message/message.d.ts +2 -2
  42. package/node_modules/@microsoft/teams.api/dist/activities/message/message.js +60 -2
  43. package/node_modules/@microsoft/teams.api/dist/activities/message/message.js.map +1 -1
  44. package/node_modules/@microsoft/teams.api/dist/activities/message/message.mjs +60 -2
  45. package/node_modules/@microsoft/teams.api/dist/activities/message/message.mjs.map +1 -1
  46. package/node_modules/@microsoft/teams.api/dist/activities/utils/index.d.mts +4 -3
  47. package/node_modules/@microsoft/teams.api/dist/activities/utils/index.d.ts +4 -3
  48. package/node_modules/@microsoft/teams.api/dist/activities/utils/strip-mentions-text.d.mts +2 -2
  49. package/node_modules/@microsoft/teams.api/dist/activities/utils/strip-mentions-text.d.ts +2 -2
  50. package/node_modules/@microsoft/teams.api/dist/activities/utils/to-activity-params.d.mts +4 -3
  51. package/node_modules/@microsoft/teams.api/dist/activities/utils/to-activity-params.d.ts +4 -3
  52. package/node_modules/@microsoft/teams.api/dist/{activity-Be6r1tJJ.d.ts → activity-DzKP6phL.d.ts} +3 -2
  53. package/node_modules/@microsoft/teams.api/dist/{activity-CJery-zL.d.mts → activity-KJJs2q-W.d.mts} +3 -2
  54. package/node_modules/@microsoft/teams.api/dist/auth/json-web-token.d.mts +14 -0
  55. package/node_modules/@microsoft/teams.api/dist/auth/json-web-token.d.ts +14 -0
  56. package/node_modules/@microsoft/teams.api/dist/auth/json-web-token.js +14 -0
  57. package/node_modules/@microsoft/teams.api/dist/auth/json-web-token.js.map +1 -1
  58. package/node_modules/@microsoft/teams.api/dist/auth/json-web-token.mjs +14 -0
  59. package/node_modules/@microsoft/teams.api/dist/auth/json-web-token.mjs.map +1 -1
  60. package/node_modules/@microsoft/teams.api/dist/clients/conversation/activity.d.mts +4 -3
  61. package/node_modules/@microsoft/teams.api/dist/clients/conversation/activity.d.ts +4 -3
  62. package/node_modules/@microsoft/teams.api/dist/clients/conversation/index.d.mts +4 -3
  63. package/node_modules/@microsoft/teams.api/dist/clients/conversation/index.d.ts +4 -3
  64. package/node_modules/@microsoft/teams.api/dist/clients/index.d.mts +4 -3
  65. package/node_modules/@microsoft/teams.api/dist/clients/index.d.ts +4 -3
  66. package/node_modules/@microsoft/teams.api/dist/index.d.mts +3 -2
  67. package/node_modules/@microsoft/teams.api/dist/index.d.ts +3 -2
  68. package/node_modules/@microsoft/teams.api/dist/{message-BwI6kmCe.d.ts → message-D0n_F-cL.d.ts} +37 -1
  69. package/node_modules/@microsoft/teams.api/dist/{message-Bd75JRjv.d.mts → message-DTEe5v6q.d.mts} +37 -1
  70. package/node_modules/@microsoft/teams.api/dist/models/activity-like.d.mts +4 -3
  71. package/node_modules/@microsoft/teams.api/dist/models/activity-like.d.ts +4 -3
  72. package/node_modules/@microsoft/teams.api/dist/models/card/card-action.d.mts +8 -1
  73. package/node_modules/@microsoft/teams.api/dist/models/card/card-action.d.ts +8 -1
  74. package/node_modules/@microsoft/teams.api/dist/models/index.d.mts +3 -2
  75. package/node_modules/@microsoft/teams.api/dist/models/index.d.ts +3 -2
  76. package/node_modules/@microsoft/teams.api/dist/models/invoke-response.d.mts +5 -3
  77. package/node_modules/@microsoft/teams.api/dist/models/invoke-response.d.ts +5 -3
  78. package/node_modules/@microsoft/teams.api/dist/models/invoke-response.js.map +1 -1
  79. package/node_modules/@microsoft/teams.api/dist/models/invoke-response.mjs.map +1 -1
  80. package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/index.d.mts +4 -3
  81. package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/index.d.ts +4 -3
  82. package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-action-response.d.mts +4 -3
  83. package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-action-response.d.ts +4 -3
  84. package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-action.d.mts +4 -3
  85. package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-action.d.ts +4 -3
  86. package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-response.d.mts +4 -3
  87. package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-response.d.ts +4 -3
  88. package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-result.d.mts +4 -3
  89. package/node_modules/@microsoft/teams.api/dist/models/messaging-extension/messaging-extension-result.d.ts +4 -3
  90. package/node_modules/@microsoft/teams.api/package.json +5 -5
  91. package/node_modules/@microsoft/teams.apps/dist/contexts/activity.d.ts +27 -2
  92. package/node_modules/@microsoft/teams.apps/dist/contexts/activity.js +119 -58
  93. package/node_modules/@microsoft/teams.apps/dist/contexts/activity.test.js +235 -33
  94. package/node_modules/@microsoft/teams.apps/dist/http/express-adapter.d.ts +8 -1
  95. package/node_modules/@microsoft/teams.apps/dist/http/express-adapter.js +10 -4
  96. package/node_modules/@microsoft/teams.apps/dist/http/http-server.js +14 -1
  97. package/node_modules/@microsoft/teams.apps/dist/http/http-stream.d.ts +77 -46
  98. package/node_modules/@microsoft/teams.apps/dist/http/http-stream.js +31 -16
  99. package/node_modules/@microsoft/teams.apps/dist/routes/invoke/index.d.ts +1 -0
  100. package/node_modules/@microsoft/teams.apps/dist/routes/invoke/index.js +2 -1
  101. package/node_modules/@microsoft/teams.apps/dist/types/app-routing.d.ts +2 -2
  102. package/node_modules/@microsoft/teams.apps/dist/types/streamer.d.ts +9 -0
  103. package/node_modules/@microsoft/teams.apps/package.json +5 -5
  104. package/node_modules/@microsoft/teams.cards/dist/actions/submit/collab-stage.js.map +1 -1
  105. package/node_modules/@microsoft/teams.cards/dist/actions/submit/collab-stage.mjs.map +1 -1
  106. package/node_modules/@microsoft/teams.cards/dist/actions/submit/im-back.js.map +1 -1
  107. package/node_modules/@microsoft/teams.cards/dist/actions/submit/im-back.mjs.map +1 -1
  108. package/node_modules/@microsoft/teams.cards/dist/actions/submit/invoke.js.map +1 -1
  109. package/node_modules/@microsoft/teams.cards/dist/actions/submit/invoke.mjs.map +1 -1
  110. package/node_modules/@microsoft/teams.cards/dist/actions/submit/message-back.d.mts +1 -1
  111. package/node_modules/@microsoft/teams.cards/dist/actions/submit/message-back.d.ts +1 -1
  112. package/node_modules/@microsoft/teams.cards/dist/actions/submit/message-back.js.map +1 -1
  113. package/node_modules/@microsoft/teams.cards/dist/actions/submit/message-back.mjs.map +1 -1
  114. package/node_modules/@microsoft/teams.cards/dist/actions/submit/sign-in.js.map +1 -1
  115. package/node_modules/@microsoft/teams.cards/dist/actions/submit/sign-in.mjs.map +1 -1
  116. package/node_modules/@microsoft/teams.cards/dist/actions/submit/task-fetch.js.map +1 -1
  117. package/node_modules/@microsoft/teams.cards/dist/actions/submit/task-fetch.mjs.map +1 -1
  118. package/node_modules/@microsoft/teams.cards/package.json +2 -2
  119. package/node_modules/@microsoft/teams.common/dist/events/event-emitter.d.mts +2 -2
  120. package/node_modules/@microsoft/teams.common/dist/events/event-emitter.d.ts +2 -2
  121. package/node_modules/@microsoft/teams.common/dist/events/event-emitter.js.map +1 -1
  122. package/node_modules/@microsoft/teams.common/dist/events/event-emitter.mjs.map +1 -1
  123. package/node_modules/@microsoft/teams.common/dist/http/client.d.mts +1 -1
  124. package/node_modules/@microsoft/teams.common/dist/http/client.d.ts +1 -1
  125. package/node_modules/@microsoft/teams.common/dist/http/client.js +3 -1
  126. package/node_modules/@microsoft/teams.common/dist/http/client.js.map +1 -1
  127. package/node_modules/@microsoft/teams.common/dist/http/client.mjs +3 -1
  128. package/node_modules/@microsoft/teams.common/dist/http/client.mjs.map +1 -1
  129. package/node_modules/@microsoft/teams.common/dist/logging/console.d.mts +1 -1
  130. package/node_modules/@microsoft/teams.common/dist/logging/console.d.ts +1 -1
  131. package/node_modules/@microsoft/teams.common/dist/logging/console.js +3 -1
  132. package/node_modules/@microsoft/teams.common/dist/logging/console.js.map +1 -1
  133. package/node_modules/@microsoft/teams.common/dist/logging/console.mjs +3 -1
  134. package/node_modules/@microsoft/teams.common/dist/logging/console.mjs.map +1 -1
  135. package/node_modules/@microsoft/teams.common/dist/logging/string.js.map +1 -1
  136. package/node_modules/@microsoft/teams.common/dist/logging/string.mjs.map +1 -1
  137. package/node_modules/@microsoft/teams.common/dist/storage/list-local-storage.js.map +1 -1
  138. package/node_modules/@microsoft/teams.common/dist/storage/list-local-storage.mjs.map +1 -1
  139. package/node_modules/@microsoft/teams.common/dist/storage/local-storage.js.map +1 -1
  140. package/node_modules/@microsoft/teams.common/dist/storage/local-storage.mjs.map +1 -1
  141. package/node_modules/@microsoft/teams.common/package.json +2 -2
  142. package/node_modules/@microsoft/teams.graph/dist/index.js +2 -2
  143. package/node_modules/@microsoft/teams.graph/dist/index.mjs +2 -2
  144. package/node_modules/@microsoft/teams.graph/package.json +4 -4
  145. package/node_modules/jose/README.md +62 -83
  146. package/node_modules/jose/dist/types/index.d.ts +48 -55
  147. package/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +4 -12
  148. package/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +9 -22
  149. package/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +4 -12
  150. package/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +21 -24
  151. package/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +4 -19
  152. package/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +21 -35
  153. package/node_modules/jose/dist/types/jwk/embedded.d.ts +2 -10
  154. package/node_modules/jose/dist/types/jwk/thumbprint.d.ts +5 -16
  155. package/node_modules/jose/dist/types/jwks/local.d.ts +13 -16
  156. package/node_modules/jose/dist/types/jwks/remote.d.ts +16 -204
  157. package/node_modules/jose/dist/types/jws/compact/sign.d.ts +6 -18
  158. package/node_modules/jose/dist/types/jws/compact/verify.d.ts +5 -13
  159. package/node_modules/jose/dist/types/jws/flattened/sign.d.ts +8 -18
  160. package/node_modules/jose/dist/types/jws/flattened/verify.d.ts +5 -13
  161. package/node_modules/jose/dist/types/jws/general/sign.d.ts +12 -24
  162. package/node_modules/jose/dist/types/jws/general/verify.d.ts +5 -21
  163. package/node_modules/jose/dist/types/jwt/decrypt.d.ts +5 -13
  164. package/node_modules/jose/dist/types/jwt/encrypt.d.ts +17 -31
  165. package/node_modules/jose/dist/types/jwt/sign.d.ts +6 -26
  166. package/node_modules/jose/dist/types/jwt/unsecured.d.ts +7 -29
  167. package/node_modules/jose/dist/types/jwt/verify.d.ts +6 -14
  168. package/node_modules/jose/dist/types/key/export.d.ts +12 -24
  169. package/node_modules/jose/dist/types/key/generate_key_pair.d.ts +11 -22
  170. package/node_modules/jose/dist/types/key/generate_secret.d.ts +8 -24
  171. package/node_modules/jose/dist/types/key/import.d.ts +33 -62
  172. package/node_modules/jose/dist/types/types.d.ts +165 -407
  173. package/node_modules/jose/dist/types/util/base64url.d.ts +16 -6
  174. package/node_modules/jose/dist/types/util/decode_jwt.d.ts +2 -10
  175. package/node_modules/jose/dist/types/util/decode_protected_header.d.ts +2 -11
  176. package/node_modules/jose/dist/types/util/errors.d.ts +36 -98
  177. package/node_modules/jose/package.json +17 -127
  178. package/node_modules/jwks-rsa/package.json +4 -4
  179. package/node_modules/jwks-rsa/src/integrations/config.js +1 -0
  180. package/node_modules/jwks-rsa/src/utils.js +2 -0
  181. package/node_modules/jwks-rsa/src/wrappers/cache.js +1 -1
  182. package/node_modules/lru-cache/README.md +117 -420
  183. package/node_modules/lru-cache/package.json +12 -132
  184. package/node_modules/lru-memoizer/README.md +21 -22
  185. package/node_modules/lru-memoizer/lib/async.d.ts +32 -15
  186. package/node_modules/lru-memoizer/lib/async.js +113 -55
  187. package/node_modules/lru-memoizer/lib/freeze.d.ts +0 -1
  188. package/node_modules/lru-memoizer/lib/freeze.js +1 -1
  189. package/node_modules/lru-memoizer/lib/index.d.ts +0 -1
  190. package/node_modules/lru-memoizer/lib/index.js +2 -2
  191. package/node_modules/lru-memoizer/lib/sync.d.ts +16 -17
  192. package/node_modules/lru-memoizer/lib/sync.js +62 -34
  193. package/node_modules/lru-memoizer/lib/util.d.ts +40 -41
  194. package/node_modules/lru-memoizer/lib/util.js +1 -1
  195. package/node_modules/lru-memoizer/package.json +4 -3
  196. package/node_modules/lru-memoizer/test/lru-memoizer.clone.test.js +1 -2
  197. package/node_modules/lru-memoizer/test/lru-memoizer.freeze.test.js +0 -1
  198. package/node_modules/lru-memoizer/test/lru-memoizer.itemmaxage.test.js +26 -26
  199. package/node_modules/lru-memoizer/test/lru-memoizer.nokey.test.js +0 -1
  200. package/node_modules/lru-memoizer/test/lru-memoizer.queumaxage.test.js +3 -4
  201. package/node_modules/lru-memoizer/test/lru-memoizer.sync.clone.test.js +2 -4
  202. package/node_modules/lru-memoizer/test/lru-memoizer.sync.freeze.js +2 -4
  203. package/node_modules/lru-memoizer/tsconfig.json +56 -16
  204. package/node_modules/semver/classes/range.js +7 -0
  205. package/node_modules/semver/package.json +1 -1
  206. package/node_modules/semver/ranges/subset.js +2 -2
  207. package/npm-shrinkwrap.json +52 -98
  208. package/openclaw.plugin.json +21 -0
  209. package/package.json +6 -10
  210. package/dist/test-api.js +0 -2
  211. package/node_modules/@microsoft/teams.apps/node_modules/jose/LICENSE.md +0 -21
  212. package/node_modules/@microsoft/teams.apps/node_modules/jose/README.md +0 -132
  213. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/index.d.ts +0 -48
  214. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +0 -23
  215. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +0 -52
  216. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +0 -23
  217. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +0 -80
  218. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +0 -23
  219. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +0 -60
  220. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwk/embedded.d.ts +0 -9
  221. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwk/thumbprint.d.ts +0 -21
  222. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwks/local.d.ts +0 -26
  223. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwks/remote.d.ts +0 -49
  224. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jws/compact/sign.d.ts +0 -24
  225. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jws/compact/verify.d.ts +0 -25
  226. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jws/flattened/sign.d.ts +0 -32
  227. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jws/flattened/verify.d.ts +0 -25
  228. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jws/general/sign.d.ts +0 -41
  229. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jws/general/verify.d.ts +0 -25
  230. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwt/decrypt.d.ts +0 -27
  231. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwt/encrypt.d.ts +0 -77
  232. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwt/sign.d.ts +0 -23
  233. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwt/unsecured.d.ts +0 -21
  234. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/jwt/verify.d.ts +0 -29
  235. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/key/export.d.ts +0 -21
  236. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/key/generate_key_pair.d.ts +0 -36
  237. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/key/generate_secret.d.ts +0 -19
  238. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/key/import.d.ts +0 -54
  239. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/types.d.ts +0 -610
  240. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/util/base64url.d.ts +0 -19
  241. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/util/decode_jwt.d.ts +0 -10
  242. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/util/decode_protected_header.d.ts +0 -8
  243. package/node_modules/@microsoft/teams.apps/node_modules/jose/dist/types/util/errors.d.ts +0 -151
  244. package/node_modules/@microsoft/teams.apps/node_modules/jose/package.json +0 -90
  245. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/LICENSE +0 -21
  246. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/README.md +0 -84
  247. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/index.d.ts +0 -139
  248. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/package.json +0 -74
  249. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/JwksClient.js +0 -91
  250. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/errors/ArgumentError.js +0 -10
  251. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/errors/JwksError.js +0 -10
  252. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/errors/JwksRateLimitError.js +0 -10
  253. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/errors/SigningKeyNotFoundError.js +0 -10
  254. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/errors/index.js +0 -6
  255. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/index.js +0 -22
  256. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/integrations/config.js +0 -15
  257. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/integrations/express.js +0 -60
  258. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/integrations/hapi.js +0 -59
  259. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/integrations/koa.js +0 -30
  260. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/integrations/passport.js +0 -52
  261. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/utils.js +0 -80
  262. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/wrappers/cache.js +0 -15
  263. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/wrappers/callbackSupport.js +0 -16
  264. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/wrappers/index.js +0 -7
  265. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/wrappers/interceptor.js +0 -30
  266. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/wrappers/rateLimit.js +0 -34
  267. package/node_modules/@microsoft/teams.apps/node_modules/jwks-rsa/src/wrappers/request.js +0 -54
  268. package/node_modules/@microsoft/teams.apps/node_modules/lru-cache/README.md +0 -166
  269. package/node_modules/@microsoft/teams.apps/node_modules/lru-cache/package.json +0 -34
  270. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/.jshintrc +0 -41
  271. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/LICENSE +0 -21
  272. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/README.md +0 -88
  273. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/async.d.ts +0 -85
  274. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/async.js +0 -178
  275. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/freeze.d.ts +0 -1
  276. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/freeze.js +0 -23
  277. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/index.d.ts +0 -2
  278. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/index.js +0 -4
  279. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/sync.d.ts +0 -65
  280. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/sync.js +0 -114
  281. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/util.d.ts +0 -162
  282. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/lib/util.js +0 -3
  283. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/package.json +0 -34
  284. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.bypass.test.js +0 -39
  285. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.clone.test.js +0 -44
  286. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.disable.test.js +0 -49
  287. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.events.test.js +0 -132
  288. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.freeze.test.js +0 -43
  289. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.itemmaxage.test.js +0 -204
  290. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.lock.test.js +0 -36
  291. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.nokey.test.js +0 -43
  292. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.queumaxage.test.js +0 -110
  293. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.sync.clone.test.js +0 -76
  294. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.sync.events.test.js +0 -95
  295. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.sync.freeze.js +0 -74
  296. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.sync.test.js +0 -47
  297. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/test/lru-memoizer.test.js +0 -88
  298. package/node_modules/@microsoft/teams.apps/node_modules/lru-memoizer/tsconfig.json +0 -59
  299. package/node_modules/jose/dist/webapi/index.js +0 -32
  300. package/node_modules/jose/dist/webapi/jwe/compact/decrypt.js +0 -27
  301. package/node_modules/jose/dist/webapi/jwe/compact/encrypt.js +0 -27
  302. package/node_modules/jose/dist/webapi/jwe/flattened/decrypt.js +0 -159
  303. package/node_modules/jose/dist/webapi/jwe/flattened/encrypt.js +0 -167
  304. package/node_modules/jose/dist/webapi/jwe/general/decrypt.js +0 -31
  305. package/node_modules/jose/dist/webapi/jwe/general/encrypt.js +0 -182
  306. package/node_modules/jose/dist/webapi/jwk/embedded.js +0 -17
  307. package/node_modules/jose/dist/webapi/jwk/thumbprint.js +0 -68
  308. package/node_modules/jose/dist/webapi/jwks/local.js +0 -119
  309. package/node_modules/jose/dist/webapi/jwks/remote.js +0 -179
  310. package/node_modules/jose/dist/webapi/jws/compact/sign.js +0 -18
  311. package/node_modules/jose/dist/webapi/jws/compact/verify.js +0 -21
  312. package/node_modules/jose/dist/webapi/jws/flattened/sign.js +0 -89
  313. package/node_modules/jose/dist/webapi/jws/flattened/verify.js +0 -110
  314. package/node_modules/jose/dist/webapi/jws/general/sign.js +0 -70
  315. package/node_modules/jose/dist/webapi/jws/general/verify.js +0 -24
  316. package/node_modules/jose/dist/webapi/jwt/decrypt.js +0 -23
  317. package/node_modules/jose/dist/webapi/jwt/encrypt.js +0 -101
  318. package/node_modules/jose/dist/webapi/jwt/sign.js +0 -52
  319. package/node_modules/jose/dist/webapi/jwt/unsecured.js +0 -63
  320. package/node_modules/jose/dist/webapi/jwt/verify.js +0 -15
  321. package/node_modules/jose/dist/webapi/key/export.js +0 -11
  322. package/node_modules/jose/dist/webapi/key/generate_key_pair.js +0 -97
  323. package/node_modules/jose/dist/webapi/key/generate_secret.js +0 -40
  324. package/node_modules/jose/dist/webapi/key/import.js +0 -57
  325. package/node_modules/jose/dist/webapi/lib/aesgcmkw.js +0 -15
  326. package/node_modules/jose/dist/webapi/lib/aeskw.js +0 -25
  327. package/node_modules/jose/dist/webapi/lib/asn1.js +0 -243
  328. package/node_modules/jose/dist/webapi/lib/base64.js +0 -22
  329. package/node_modules/jose/dist/webapi/lib/buffer_utils.js +0 -43
  330. package/node_modules/jose/dist/webapi/lib/check_key_type.js +0 -122
  331. package/node_modules/jose/dist/webapi/lib/content_encryption.js +0 -217
  332. package/node_modules/jose/dist/webapi/lib/crypto_key.js +0 -136
  333. package/node_modules/jose/dist/webapi/lib/deflate.js +0 -44
  334. package/node_modules/jose/dist/webapi/lib/ecdhes.js +0 -52
  335. package/node_modules/jose/dist/webapi/lib/helpers.js +0 -19
  336. package/node_modules/jose/dist/webapi/lib/invalid_key_input.js +0 -27
  337. package/node_modules/jose/dist/webapi/lib/is_key_like.js +0 -17
  338. package/node_modules/jose/dist/webapi/lib/jwk_to_key.js +0 -107
  339. package/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +0 -238
  340. package/node_modules/jose/dist/webapi/lib/key_management.js +0 -186
  341. package/node_modules/jose/dist/webapi/lib/key_to_jwk.js +0 -31
  342. package/node_modules/jose/dist/webapi/lib/normalize_key.js +0 -166
  343. package/node_modules/jose/dist/webapi/lib/pbes2kw.js +0 -42
  344. package/node_modules/jose/dist/webapi/lib/rsaes.js +0 -24
  345. package/node_modules/jose/dist/webapi/lib/signing.js +0 -68
  346. package/node_modules/jose/dist/webapi/lib/type_checks.js +0 -40
  347. package/node_modules/jose/dist/webapi/lib/validate_algorithms.js +0 -10
  348. package/node_modules/jose/dist/webapi/lib/validate_crit.js +0 -33
  349. package/node_modules/jose/dist/webapi/util/base64url.js +0 -30
  350. package/node_modules/jose/dist/webapi/util/decode_jwt.js +0 -32
  351. package/node_modules/jose/dist/webapi/util/decode_protected_header.js +0 -34
  352. package/node_modules/jose/dist/webapi/util/errors.js +0 -99
  353. package/node_modules/lru-cache/LICENSE.md +0 -55
  354. package/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel-browser.d.ts.map +0 -1
  355. package/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel-browser.js.map +0 -1
  356. package/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel.d.ts +0 -5
  357. package/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel.js +0 -7
  358. package/node_modules/lru-cache/dist/commonjs/browser/index.d.ts +0 -1400
  359. package/node_modules/lru-cache/dist/commonjs/browser/index.d.ts.map +0 -1
  360. package/node_modules/lru-cache/dist/commonjs/browser/index.js +0 -1726
  361. package/node_modules/lru-cache/dist/commonjs/browser/index.js.map +0 -1
  362. package/node_modules/lru-cache/dist/commonjs/browser/index.min.js +0 -2
  363. package/node_modules/lru-cache/dist/commonjs/browser/index.min.js.map +0 -7
  364. package/node_modules/lru-cache/dist/commonjs/browser/perf.d.ts +0 -12
  365. package/node_modules/lru-cache/dist/commonjs/browser/perf.d.ts.map +0 -1
  366. package/node_modules/lru-cache/dist/commonjs/browser/perf.js +0 -10
  367. package/node_modules/lru-cache/dist/commonjs/browser/perf.js.map +0 -1
  368. package/node_modules/lru-cache/dist/commonjs/diagnostics-channel-cjs.cjs.map +0 -1
  369. package/node_modules/lru-cache/dist/commonjs/diagnostics-channel-cjs.d.cts.map +0 -1
  370. package/node_modules/lru-cache/dist/commonjs/diagnostics-channel.d.ts +0 -5
  371. package/node_modules/lru-cache/dist/commonjs/diagnostics-channel.js +0 -7
  372. package/node_modules/lru-cache/dist/commonjs/index.d.ts +0 -1400
  373. package/node_modules/lru-cache/dist/commonjs/index.d.ts.map +0 -1
  374. package/node_modules/lru-cache/dist/commonjs/index.js +0 -1726
  375. package/node_modules/lru-cache/dist/commonjs/index.js.map +0 -1
  376. package/node_modules/lru-cache/dist/commonjs/index.min.js +0 -2
  377. package/node_modules/lru-cache/dist/commonjs/index.min.js.map +0 -7
  378. package/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel-node.d.ts.map +0 -1
  379. package/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel-node.js.map +0 -1
  380. package/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel.d.ts +0 -5
  381. package/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel.js +0 -9
  382. package/node_modules/lru-cache/dist/commonjs/node/index.d.ts +0 -1400
  383. package/node_modules/lru-cache/dist/commonjs/node/index.d.ts.map +0 -1
  384. package/node_modules/lru-cache/dist/commonjs/node/index.js +0 -1726
  385. package/node_modules/lru-cache/dist/commonjs/node/index.js.map +0 -1
  386. package/node_modules/lru-cache/dist/commonjs/node/index.min.js +0 -2
  387. package/node_modules/lru-cache/dist/commonjs/node/index.min.js.map +0 -7
  388. package/node_modules/lru-cache/dist/commonjs/node/perf.d.ts +0 -12
  389. package/node_modules/lru-cache/dist/commonjs/node/perf.d.ts.map +0 -1
  390. package/node_modules/lru-cache/dist/commonjs/node/perf.js +0 -10
  391. package/node_modules/lru-cache/dist/commonjs/node/perf.js.map +0 -1
  392. package/node_modules/lru-cache/dist/commonjs/package.json +0 -3
  393. package/node_modules/lru-cache/dist/commonjs/perf.d.ts +0 -12
  394. package/node_modules/lru-cache/dist/commonjs/perf.d.ts.map +0 -1
  395. package/node_modules/lru-cache/dist/commonjs/perf.js +0 -10
  396. package/node_modules/lru-cache/dist/commonjs/perf.js.map +0 -1
  397. package/node_modules/lru-cache/dist/esm/browser/diagnostics-channel-browser.d.ts.map +0 -1
  398. package/node_modules/lru-cache/dist/esm/browser/diagnostics-channel-browser.js.map +0 -1
  399. package/node_modules/lru-cache/dist/esm/browser/diagnostics-channel.d.ts +0 -5
  400. package/node_modules/lru-cache/dist/esm/browser/diagnostics-channel.js +0 -4
  401. package/node_modules/lru-cache/dist/esm/browser/index.d.ts +0 -1400
  402. package/node_modules/lru-cache/dist/esm/browser/index.d.ts.map +0 -1
  403. package/node_modules/lru-cache/dist/esm/browser/index.js +0 -1722
  404. package/node_modules/lru-cache/dist/esm/browser/index.js.map +0 -1
  405. package/node_modules/lru-cache/dist/esm/browser/index.min.js +0 -2
  406. package/node_modules/lru-cache/dist/esm/browser/index.min.js.map +0 -7
  407. package/node_modules/lru-cache/dist/esm/browser/perf.d.ts +0 -12
  408. package/node_modules/lru-cache/dist/esm/browser/perf.d.ts.map +0 -1
  409. package/node_modules/lru-cache/dist/esm/browser/perf.js +0 -7
  410. package/node_modules/lru-cache/dist/esm/browser/perf.js.map +0 -1
  411. package/node_modules/lru-cache/dist/esm/diagnostics-channel-esm.d.mts.map +0 -1
  412. package/node_modules/lru-cache/dist/esm/diagnostics-channel-esm.mjs.map +0 -1
  413. package/node_modules/lru-cache/dist/esm/diagnostics-channel.d.ts +0 -5
  414. package/node_modules/lru-cache/dist/esm/diagnostics-channel.js +0 -19
  415. package/node_modules/lru-cache/dist/esm/index.d.ts +0 -1400
  416. package/node_modules/lru-cache/dist/esm/index.d.ts.map +0 -1
  417. package/node_modules/lru-cache/dist/esm/index.js +0 -1722
  418. package/node_modules/lru-cache/dist/esm/index.js.map +0 -1
  419. package/node_modules/lru-cache/dist/esm/index.min.js +0 -2
  420. package/node_modules/lru-cache/dist/esm/index.min.js.map +0 -7
  421. package/node_modules/lru-cache/dist/esm/node/diagnostics-channel-node.d.ts.map +0 -1
  422. package/node_modules/lru-cache/dist/esm/node/diagnostics-channel-node.js.map +0 -1
  423. package/node_modules/lru-cache/dist/esm/node/diagnostics-channel.d.ts +0 -5
  424. package/node_modules/lru-cache/dist/esm/node/diagnostics-channel.js +0 -6
  425. package/node_modules/lru-cache/dist/esm/node/index.d.ts +0 -1400
  426. package/node_modules/lru-cache/dist/esm/node/index.d.ts.map +0 -1
  427. package/node_modules/lru-cache/dist/esm/node/index.js +0 -1722
  428. package/node_modules/lru-cache/dist/esm/node/index.js.map +0 -1
  429. package/node_modules/lru-cache/dist/esm/node/index.min.js +0 -2
  430. package/node_modules/lru-cache/dist/esm/node/index.min.js.map +0 -7
  431. package/node_modules/lru-cache/dist/esm/node/perf.d.ts +0 -12
  432. package/node_modules/lru-cache/dist/esm/node/perf.d.ts.map +0 -1
  433. package/node_modules/lru-cache/dist/esm/node/perf.js +0 -7
  434. package/node_modules/lru-cache/dist/esm/node/perf.js.map +0 -1
  435. package/node_modules/lru-cache/dist/esm/package.json +0 -3
  436. package/node_modules/lru-cache/dist/esm/perf.d.ts +0 -12
  437. package/node_modules/lru-cache/dist/esm/perf.d.ts.map +0 -1
  438. package/node_modules/lru-cache/dist/esm/perf.js +0 -7
  439. package/node_modules/lru-cache/dist/esm/perf.js.map +0 -1
  440. package/node_modules/lru-memoizer/lib/async.d.ts.map +0 -1
  441. package/node_modules/lru-memoizer/lib/async.js.map +0 -1
  442. package/node_modules/lru-memoizer/lib/freeze.d.ts.map +0 -1
  443. package/node_modules/lru-memoizer/lib/freeze.js.map +0 -1
  444. package/node_modules/lru-memoizer/lib/index.d.ts.map +0 -1
  445. package/node_modules/lru-memoizer/lib/index.js.map +0 -1
  446. package/node_modules/lru-memoizer/lib/sync.d.ts.map +0 -1
  447. package/node_modules/lru-memoizer/lib/sync.js.map +0 -1
  448. package/node_modules/lru-memoizer/lib/util.d.ts.map +0 -1
  449. package/node_modules/lru-memoizer/lib/util.js.map +0 -1
  450. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/index.js +0 -0
  451. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwe/compact/decrypt.js +0 -0
  452. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwe/compact/encrypt.js +0 -0
  453. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwe/flattened/decrypt.js +0 -0
  454. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwe/flattened/encrypt.js +0 -0
  455. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwe/general/decrypt.js +0 -0
  456. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwe/general/encrypt.js +0 -0
  457. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwk/embedded.js +0 -0
  458. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwk/thumbprint.js +0 -0
  459. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwks/local.js +0 -0
  460. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwks/remote.js +0 -0
  461. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jws/compact/sign.js +0 -0
  462. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jws/compact/verify.js +0 -0
  463. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jws/flattened/sign.js +0 -0
  464. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jws/flattened/verify.js +0 -0
  465. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jws/general/sign.js +0 -0
  466. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jws/general/verify.js +0 -0
  467. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwt/decrypt.js +0 -0
  468. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwt/encrypt.js +0 -0
  469. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwt/produce.js +0 -0
  470. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwt/sign.js +0 -0
  471. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwt/unsecured.js +0 -0
  472. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/jwt/verify.js +0 -0
  473. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/key/export.js +0 -0
  474. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/key/generate_key_pair.js +0 -0
  475. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/key/generate_secret.js +0 -0
  476. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/key/import.js +0 -0
  477. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/aesgcmkw.js +0 -0
  478. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/buffer_utils.js +0 -0
  479. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/cek.js +0 -0
  480. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/check_iv_length.js +0 -0
  481. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/check_key_type.js +0 -0
  482. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/check_p2s.js +0 -0
  483. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/crypto_key.js +0 -0
  484. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/decrypt_key_management.js +0 -0
  485. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/encrypt_key_management.js +0 -0
  486. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/epoch.js +0 -0
  487. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/format_pem.js +0 -0
  488. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/invalid_key_input.js +0 -0
  489. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/is_disjoint.js +0 -0
  490. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/is_object.js +0 -0
  491. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/iv.js +0 -0
  492. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/jwt_claims_set.js +0 -0
  493. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/secs.js +0 -0
  494. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/validate_algorithms.js +0 -0
  495. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/lib/validate_crit.js +0 -0
  496. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/package.json +0 -0
  497. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/aeskw.js +0 -0
  498. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/asn1.js +0 -0
  499. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/base64url.js +0 -0
  500. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/bogus.js +0 -0
  501. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/check_cek_length.js +0 -0
  502. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/check_key_length.js +0 -0
  503. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/decrypt.js +0 -0
  504. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/digest.js +0 -0
  505. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/ecdhes.js +0 -0
  506. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/encrypt.js +0 -0
  507. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/fetch_jwks.js +0 -0
  508. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/generate.js +0 -0
  509. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/get_sign_verify_key.js +0 -0
  510. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/is_key_like.js +0 -0
  511. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/jwk_to_key.js +0 -0
  512. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/key_to_jwk.js +0 -0
  513. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/pbes2kw.js +0 -0
  514. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/random.js +0 -0
  515. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/rsaes.js +0 -0
  516. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/runtime.js +0 -0
  517. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/sign.js +0 -0
  518. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/subtle_dsa.js +0 -0
  519. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/subtle_rsaes.js +0 -0
  520. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/timing_safe_equal.js +0 -0
  521. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/verify.js +0 -0
  522. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/webcrypto.js +0 -0
  523. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/runtime/zlib.js +0 -0
  524. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/util/base64url.js +0 -0
  525. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/util/decode_jwt.js +0 -0
  526. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/util/decode_protected_header.js +0 -0
  527. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/util/errors.js +0 -0
  528. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/browser/util/runtime.js +0 -0
  529. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/index.js +0 -0
  530. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwe/compact/decrypt.js +0 -0
  531. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwe/compact/encrypt.js +0 -0
  532. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwe/flattened/decrypt.js +0 -0
  533. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwe/flattened/encrypt.js +0 -0
  534. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwe/general/decrypt.js +0 -0
  535. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwe/general/encrypt.js +0 -0
  536. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwk/embedded.js +0 -0
  537. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwk/thumbprint.js +0 -0
  538. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwks/local.js +0 -0
  539. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwks/remote.js +0 -0
  540. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jws/compact/sign.js +0 -0
  541. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jws/compact/verify.js +0 -0
  542. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jws/flattened/sign.js +0 -0
  543. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jws/flattened/verify.js +0 -0
  544. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jws/general/sign.js +0 -0
  545. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jws/general/verify.js +0 -0
  546. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwt/decrypt.js +0 -0
  547. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwt/encrypt.js +0 -0
  548. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwt/produce.js +0 -0
  549. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwt/sign.js +0 -0
  550. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwt/unsecured.js +0 -0
  551. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/jwt/verify.js +0 -0
  552. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/key/export.js +0 -0
  553. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/key/generate_key_pair.js +0 -0
  554. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/key/generate_secret.js +0 -0
  555. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/key/import.js +0 -0
  556. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/aesgcmkw.js +0 -0
  557. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/buffer_utils.js +0 -0
  558. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/cek.js +0 -0
  559. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/check_iv_length.js +0 -0
  560. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/check_key_type.js +0 -0
  561. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/check_p2s.js +0 -0
  562. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/crypto_key.js +0 -0
  563. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/decrypt_key_management.js +0 -0
  564. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/encrypt_key_management.js +0 -0
  565. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/epoch.js +0 -0
  566. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/invalid_key_input.js +0 -0
  567. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/is_disjoint.js +0 -0
  568. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/is_object.js +0 -0
  569. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/iv.js +0 -0
  570. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/jwt_claims_set.js +0 -0
  571. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/secs.js +0 -0
  572. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/validate_algorithms.js +0 -0
  573. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/lib/validate_crit.js +0 -0
  574. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/aeskw.js +0 -0
  575. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/asn1.js +0 -0
  576. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/asn1_sequence_decoder.js +0 -0
  577. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/asn1_sequence_encoder.js +0 -0
  578. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/base64url.js +0 -0
  579. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/cbc_tag.js +0 -0
  580. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/check_cek_length.js +0 -0
  581. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/check_modulus_length.js +0 -0
  582. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/ciphers.js +0 -0
  583. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/decrypt.js +0 -0
  584. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/digest.js +0 -0
  585. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/dsa_digest.js +0 -0
  586. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/ecdhes.js +0 -0
  587. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/encrypt.js +0 -0
  588. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/fetch_jwks.js +0 -0
  589. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/flags.js +0 -0
  590. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/generate.js +0 -0
  591. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/get_named_curve.js +0 -0
  592. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/get_sign_verify_key.js +0 -0
  593. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/hmac_digest.js +0 -0
  594. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/is_key_like.js +0 -0
  595. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/is_key_object.js +0 -0
  596. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/jwk_to_key.js +0 -0
  597. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/key_to_jwk.js +0 -0
  598. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/node_key.js +0 -0
  599. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/pbes2kw.js +0 -0
  600. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/random.js +0 -0
  601. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/rsaes.js +0 -0
  602. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/runtime.js +0 -0
  603. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/sign.js +0 -0
  604. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/timing_safe_equal.js +0 -0
  605. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/verify.js +0 -0
  606. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/webcrypto.js +0 -0
  607. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/runtime/zlib.js +0 -0
  608. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/util/base64url.js +0 -0
  609. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/util/decode_jwt.js +0 -0
  610. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/util/decode_protected_header.js +0 -0
  611. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/util/errors.js +0 -0
  612. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/cjs/util/runtime.js +0 -0
  613. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/index.js +0 -0
  614. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwe/compact/decrypt.js +0 -0
  615. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwe/compact/encrypt.js +0 -0
  616. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwe/flattened/decrypt.js +0 -0
  617. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwe/flattened/encrypt.js +0 -0
  618. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwe/general/decrypt.js +0 -0
  619. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwe/general/encrypt.js +0 -0
  620. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwk/embedded.js +0 -0
  621. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwk/thumbprint.js +0 -0
  622. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwks/local.js +0 -0
  623. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwks/remote.js +0 -0
  624. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jws/compact/sign.js +0 -0
  625. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jws/compact/verify.js +0 -0
  626. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jws/flattened/sign.js +0 -0
  627. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jws/flattened/verify.js +0 -0
  628. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jws/general/sign.js +0 -0
  629. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jws/general/verify.js +0 -0
  630. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwt/decrypt.js +0 -0
  631. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwt/encrypt.js +0 -0
  632. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwt/produce.js +0 -0
  633. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwt/sign.js +0 -0
  634. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwt/unsecured.js +0 -0
  635. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/jwt/verify.js +0 -0
  636. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/key/export.js +0 -0
  637. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/key/generate_key_pair.js +0 -0
  638. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/key/generate_secret.js +0 -0
  639. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/key/import.js +0 -0
  640. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/aesgcmkw.js +0 -0
  641. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/buffer_utils.js +0 -0
  642. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/cek.js +0 -0
  643. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/check_iv_length.js +0 -0
  644. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/check_key_type.js +0 -0
  645. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/check_p2s.js +0 -0
  646. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/crypto_key.js +0 -0
  647. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/decrypt_key_management.js +0 -0
  648. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/encrypt_key_management.js +0 -0
  649. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/epoch.js +0 -0
  650. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/invalid_key_input.js +0 -0
  651. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/is_disjoint.js +0 -0
  652. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/is_object.js +0 -0
  653. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/iv.js +0 -0
  654. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/jwt_claims_set.js +0 -0
  655. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/secs.js +0 -0
  656. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/validate_algorithms.js +0 -0
  657. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/lib/validate_crit.js +0 -0
  658. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/package.json +0 -0
  659. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/aeskw.js +0 -0
  660. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/asn1.js +0 -0
  661. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/asn1_sequence_decoder.js +0 -0
  662. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/asn1_sequence_encoder.js +0 -0
  663. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/base64url.js +0 -0
  664. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/cbc_tag.js +0 -0
  665. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/check_cek_length.js +0 -0
  666. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/check_modulus_length.js +0 -0
  667. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/ciphers.js +0 -0
  668. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/decrypt.js +0 -0
  669. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/digest.js +0 -0
  670. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/dsa_digest.js +0 -0
  671. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/ecdhes.js +0 -0
  672. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/encrypt.js +0 -0
  673. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/fetch_jwks.js +0 -0
  674. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/flags.js +0 -0
  675. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/generate.js +0 -0
  676. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/get_named_curve.js +0 -0
  677. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/get_sign_verify_key.js +0 -0
  678. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/hmac_digest.js +0 -0
  679. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/is_key_like.js +0 -0
  680. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/is_key_object.js +0 -0
  681. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/jwk_to_key.js +0 -0
  682. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/key_to_jwk.js +0 -0
  683. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/node_key.js +0 -0
  684. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/pbes2kw.js +0 -0
  685. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/random.js +0 -0
  686. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/rsaes.js +0 -0
  687. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/runtime.js +0 -0
  688. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/sign.js +0 -0
  689. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/timing_safe_equal.js +0 -0
  690. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/verify.js +0 -0
  691. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/webcrypto.js +0 -0
  692. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/runtime/zlib.js +0 -0
  693. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/util/base64url.js +0 -0
  694. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/util/decode_jwt.js +0 -0
  695. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/util/decode_protected_header.js +0 -0
  696. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/util/errors.js +0 -0
  697. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/node/esm/util/runtime.js +0 -0
  698. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/types/jwt/produce.d.ts +0 -0
  699. /package/node_modules/{@microsoft/teams.apps/node_modules/jose → jose}/dist/types/util/runtime.d.ts +0 -0
  700. /package/node_modules/{@microsoft/teams.apps/node_modules/lru-cache → lru-cache}/LICENSE +0 -0
  701. /package/node_modules/{@microsoft/teams.apps/node_modules/lru-cache → lru-cache}/index.js +0 -0
@@ -1,8 +1,7 @@
1
- import { M as getMSTeamsRuntime, h as fetchWithSsrFGuard$1 } from "./runtime-api-BlvMnDKz.js";
2
- import { n as refreshMSTeamsDelegatedTokens } from "./oauth.token-BNbWziwM.js";
1
+ import { M as getMSTeamsRuntime, h as fetchWithSsrFGuard } from "./runtime-api-BlvMnDKz.js";
2
+ import { c as createMSTeamsHttpError, n as refreshMSTeamsDelegatedTokens } from "./oauth.token-5ygi8ycy.js";
3
3
  import { createRequire } from "node:module";
4
- import { isRecord, isRecord as isRecord$1, normalizeLowercaseStringOrEmpty, normalizeOptionalString, normalizeStringEntries } from "openclaw/plugin-sdk/string-coerce-runtime";
5
- import { fetchWithSsrFGuard } from "openclaw/plugin-sdk/ssrf-runtime";
4
+ import { isRecord, isRecord as isRecord$1, normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
6
5
  import { readProviderJsonResponse } from "openclaw/plugin-sdk/provider-http";
7
6
  import { Buffer } from "node:buffer";
8
7
  import { lookup } from "node:dns/promises";
@@ -37,6 +36,7 @@ const DEFAULT_MEDIA_HOST_ALLOWLIST = [
37
36
  "ams.skype.com",
38
37
  "media.ams.skype.com",
39
38
  "trafficmanager.net",
39
+ "botframework.azure.cn",
40
40
  "blob.core.windows.net",
41
41
  "azureedge.net",
42
42
  "microsoft.com"
@@ -45,6 +45,7 @@ const DEFAULT_MEDIA_AUTH_HOST_ALLOWLIST = [
45
45
  "api.botframework.com",
46
46
  "botframework.com",
47
47
  "smba.trafficmanager.net",
48
+ "botframework.azure.cn",
48
49
  "graph.microsoft.com",
49
50
  "graph.microsoft.us",
50
51
  "graph.microsoft.de",
@@ -355,6 +356,7 @@ async function safeFetch(params) {
355
356
  const currentHeaders = new Headers(params.requestInit?.headers);
356
357
  let currentUrl = params.url;
357
358
  if (!isUrlAllowed(currentUrl, params.allowHosts)) throw new Error(`Initial download URL blocked: ${currentUrl}`);
359
+ if (currentHeaders.has("authorization") && params.authorizationAllowHosts && !isUrlAllowed(currentUrl, params.authorizationAllowHosts)) currentHeaders.delete("authorization");
358
360
  if (resolveFn) try {
359
361
  const initialHost = new URL(currentUrl).hostname;
360
362
  await resolveAndValidateIP(initialHost, resolveFn);
@@ -403,15 +405,68 @@ async function safeFetchWithPolicy(params) {
403
405
  resolveFn: params.resolveFn
404
406
  });
405
407
  }
408
+ const PUBLIC_MSTEAMS_SERVICE_HOST = "smba.trafficmanager.net";
409
+ const CHINA_BOT_FRAMEWORK_SERVICE_HOST = "botframework.azure.cn";
410
+ function normalizeOptionalServiceUrl(value) {
411
+ const trimmed = value?.trim();
412
+ if (!trimmed) return null;
413
+ try {
414
+ const parsed = new URL(trimmed);
415
+ parsed.hash = "";
416
+ parsed.search = "";
417
+ parsed.pathname = parsed.pathname.replace(/\/+$/, "");
418
+ return {
419
+ value: parsed.toString().replace(/\/+$/, ""),
420
+ host: parsed.hostname.toLowerCase()
421
+ };
422
+ } catch {
423
+ return null;
424
+ }
425
+ }
426
+ function resolveMSTeamsSdkCloudOptions(cfg) {
427
+ const cloud = cfg?.cloud ?? "Public";
428
+ const serviceUrl = cfg?.serviceUrl?.trim();
429
+ if (cloud !== "Public" && cloud !== "China" && !serviceUrl) throw new Error(`channels.msteams.cloud=${cloud} requires channels.msteams.serviceUrl so SDK proactive operations use the matching Teams Bot Connector endpoint.`);
430
+ return {
431
+ cloud,
432
+ ...serviceUrl ? { serviceUrl } : {}
433
+ };
434
+ }
435
+ function isChinaBotFrameworkServiceHost(host) {
436
+ return host === CHINA_BOT_FRAMEWORK_SERVICE_HOST || host.endsWith(`.${CHINA_BOT_FRAMEWORK_SERVICE_HOST}`);
437
+ }
438
+ function isChinaBotFrameworkServiceUrl(value) {
439
+ const parsed = normalizeOptionalServiceUrl(value);
440
+ return Boolean(parsed && isChinaBotFrameworkServiceHost(parsed.host));
441
+ }
442
+ function validateMSTeamsProactiveServiceUrlBoundary(params) {
443
+ const configured = normalizeOptionalServiceUrl(params.configuredServiceUrl);
444
+ if (params.cloud !== "Public" && params.cloud !== "China" && !configured) throw new Error(`msteams proactive send blocked for ${params.conversationId}: channels.msteams.cloud=${params.cloud} requires channels.msteams.serviceUrl so SDK proactive operations use the matching Teams Bot Connector endpoint.`);
445
+ if (params.cloud === "China" && configured && !isChinaBotFrameworkServiceHost(configured.host)) throw new Error(`msteams proactive send blocked for ${params.conversationId}: configured Teams serviceUrl (${configured.value}) is not a Microsoft Teams China Bot Framework channel endpoint.`);
446
+ if (params.cloud !== "China" && configured && isChinaBotFrameworkServiceHost(configured.host)) throw new Error(`msteams proactive send blocked for ${params.conversationId}: configured Teams serviceUrl (${configured.value}) requires channels.msteams.cloud=China.`);
447
+ if (configured) {
448
+ const stored = normalizeOptionalServiceUrl(params.storedServiceUrl);
449
+ if (!stored) throw new Error(`msteams proactive send blocked for ${params.conversationId}: stored conversation reference is missing a valid serviceUrl. Ask the bot to receive a new Teams message in this conversation, then retry.`);
450
+ if (stored.host !== configured.host) throw new Error(`msteams proactive send blocked for ${params.conversationId}: stored conversation serviceUrl (${stored.value}) does not match configured Teams SDK serviceUrl host (${configured.host}). Set channels.msteams.cloud/channels.msteams.serviceUrl for the Teams cloud that owns this conversation, or refresh the stored conversation by receiving a new message.`);
451
+ return;
452
+ }
453
+ const stored = normalizeOptionalServiceUrl(params.storedServiceUrl);
454
+ if (!stored) throw new Error(`msteams proactive send blocked for ${params.conversationId}: stored conversation reference is missing a valid serviceUrl. Ask the bot to receive a new Teams message in this conversation, then retry.`);
455
+ if (params.cloud === "China") {
456
+ if (!isChinaBotFrameworkServiceHost(stored.host)) throw new Error(`msteams proactive send blocked for ${params.conversationId}: stored conversation serviceUrl (${stored.value}) is not a Microsoft Teams China Bot Framework channel endpoint. Use a conversation reference received from the China/21Vianet Teams cloud.`);
457
+ return;
458
+ }
459
+ if (isChinaBotFrameworkServiceUrl(stored.value)) throw new Error(`msteams proactive send blocked for ${params.conversationId}: stored conversation serviceUrl (${stored.value}) requires channels.msteams.cloud=China.`);
460
+ if (stored.host !== PUBLIC_MSTEAMS_SERVICE_HOST) throw new Error(`msteams proactive send blocked for ${params.conversationId}: stored conversation serviceUrl (${stored.value}) is not a Microsoft Teams public-cloud Bot Connector endpoint. Set channels.msteams.cloud and channels.msteams.serviceUrl for the supported Teams cloud that owns this conversation.`);
461
+ }
406
462
  const BOT_FRAMEWORK_SERVICE_URL_HOST_ALLOWLIST = normalizeHostnameSuffixAllowlist([
407
463
  "smba.trafficmanager.net",
408
464
  "smba.infra.gcc.teams.microsoft.com",
409
465
  "smba.infra.gov.teams.microsoft.us",
410
- "smba.infra.dod.teams.microsoft.us"
466
+ "smba.infra.dod.teams.microsoft.us",
467
+ "botframework.azure.cn"
411
468
  ]);
412
- const serviceUrlSsrfPolicy = buildHostnameAllowlistPolicyFromSuffixAllowlist(BOT_FRAMEWORK_SERVICE_URL_HOST_ALLOWLIST);
413
- if (!serviceUrlSsrfPolicy) throw new Error("Microsoft Teams Bot Framework serviceUrl allowlist is empty");
414
- const BOT_FRAMEWORK_SERVICE_URL_SSRF_POLICY = serviceUrlSsrfPolicy;
469
+ if (!buildHostnameAllowlistPolicyFromSuffixAllowlist(BOT_FRAMEWORK_SERVICE_URL_HOST_ALLOWLIST)) throw new Error("Microsoft Teams Bot Framework serviceUrl allowlist is empty");
415
470
  function describeBotFrameworkServiceUrlHost(serviceUrl) {
416
471
  try {
417
472
  return new URL(serviceUrl.trim()).hostname || "invalid-url";
@@ -434,163 +489,6 @@ function normalizeBotFrameworkServiceUrl(serviceUrl) {
434
489
  throw new Error(`Blocked Microsoft Teams serviceUrl host: ${describeBotFrameworkServiceUrlHost(serviceUrl)}`);
435
490
  }
436
491
  //#endregion
437
- //#region extensions/msteams/src/errors.ts
438
- function formatUnknownError(err) {
439
- if (err instanceof Error) return err.message;
440
- if (typeof err === "string") return err;
441
- if (err === null) return "null";
442
- if (err === void 0) return "undefined";
443
- if (typeof err === "number" || typeof err === "boolean" || typeof err === "bigint") return String(err);
444
- if (typeof err === "symbol") return err.description ?? err.toString();
445
- if (typeof err === "function") return err.name ? `[function ${err.name}]` : "[function]";
446
- try {
447
- return JSON.stringify(err) ?? "unknown error";
448
- } catch {
449
- return "unknown error";
450
- }
451
- }
452
- function extractStatusCode(err) {
453
- if (!isRecord(err)) return null;
454
- const direct = err.statusCode ?? err.status;
455
- if (typeof direct === "number" && Number.isFinite(direct)) return direct;
456
- if (typeof direct === "string") {
457
- const parsed = Number.parseInt(direct, 10);
458
- if (Number.isFinite(parsed)) return parsed;
459
- }
460
- const response = err.response;
461
- if (isRecord(response)) {
462
- const status = response.status;
463
- if (typeof status === "number" && Number.isFinite(status)) return status;
464
- if (typeof status === "string") {
465
- const parsed = Number.parseInt(status, 10);
466
- if (Number.isFinite(parsed)) return parsed;
467
- }
468
- }
469
- return null;
470
- }
471
- function extractErrorCode(err) {
472
- if (!isRecord(err)) return null;
473
- const direct = err.code;
474
- if (typeof direct === "string" && direct.trim()) return direct;
475
- const response = err.response;
476
- if (!isRecord(response)) return null;
477
- const body = response.body;
478
- if (isRecord(body)) {
479
- const error = body.error;
480
- if (isRecord(error) && typeof error.code === "string" && error.code.trim()) return error.code;
481
- }
482
- return null;
483
- }
484
- function extractRetryAfterMs(err) {
485
- if (!isRecord(err)) return null;
486
- const direct = err.retryAfterMs ?? err.retry_after_ms;
487
- if (typeof direct === "number" && Number.isFinite(direct) && direct >= 0) return direct;
488
- const retryAfter = err.retryAfter ?? err.retry_after;
489
- if (typeof retryAfter === "number" && Number.isFinite(retryAfter)) return retryAfter >= 0 ? retryAfter * 1e3 : null;
490
- if (typeof retryAfter === "string") {
491
- const parsed = Number.parseFloat(retryAfter);
492
- if (Number.isFinite(parsed) && parsed >= 0) return parsed * 1e3;
493
- }
494
- const response = err.response;
495
- if (!isRecord(response)) return null;
496
- const headers = response.headers;
497
- if (!headers) return null;
498
- if (isRecord(headers)) {
499
- const raw = headers["retry-after"] ?? headers["Retry-After"];
500
- if (typeof raw === "string") {
501
- const parsed = Number.parseFloat(raw);
502
- if (Number.isFinite(parsed) && parsed >= 0) return parsed * 1e3;
503
- }
504
- }
505
- if (typeof headers === "object" && headers !== null && "get" in headers && typeof headers.get === "function") {
506
- const raw = headers.get("retry-after");
507
- if (raw) {
508
- const parsed = Number.parseFloat(raw);
509
- if (Number.isFinite(parsed) && parsed >= 0) return parsed * 1e3;
510
- }
511
- }
512
- return null;
513
- }
514
- /**
515
- * Classify outbound send errors for safe retries and actionable logs.
516
- *
517
- * Important: We only mark errors as retryable when we have an explicit HTTP
518
- * status code that indicates the message was not accepted (e.g. 429, 5xx).
519
- * For transport-level errors where delivery is ambiguous, we prefer to avoid
520
- * retries to reduce the chance of duplicate posts.
521
- */
522
- function classifyMSTeamsSendError(err) {
523
- const statusCode = extractStatusCode(err);
524
- const retryAfterMs = extractRetryAfterMs(err);
525
- const errorCode = extractErrorCode(err) ?? void 0;
526
- if (statusCode === 401) return {
527
- kind: "auth",
528
- statusCode,
529
- errorCode
530
- };
531
- if (statusCode === 403) {
532
- if (errorCode === "ContentStreamNotAllowed") return {
533
- kind: "permanent",
534
- statusCode,
535
- errorCode
536
- };
537
- return {
538
- kind: "auth",
539
- statusCode,
540
- errorCode
541
- };
542
- }
543
- if (statusCode === 429) return {
544
- kind: "throttled",
545
- statusCode,
546
- retryAfterMs: retryAfterMs ?? void 0,
547
- errorCode
548
- };
549
- if (statusCode === 408 || statusCode != null && statusCode >= 500) return {
550
- kind: "transient",
551
- statusCode,
552
- retryAfterMs: retryAfterMs ?? void 0,
553
- errorCode
554
- };
555
- if (statusCode != null && statusCode >= 400) return {
556
- kind: "permanent",
557
- statusCode,
558
- errorCode
559
- };
560
- if (statusCode == null) {
561
- const networkCode = isRecord(err) && typeof err.code === "string" ? err.code : null;
562
- if (networkCode === "ECONNREFUSED" || networkCode === "ENOTFOUND" || networkCode === "EHOSTUNREACH" || networkCode === "ETIMEDOUT" || networkCode === "ECONNRESET") return {
563
- kind: "network",
564
- errorCode: networkCode
565
- };
566
- }
567
- return {
568
- kind: "unknown",
569
- statusCode: statusCode ?? void 0,
570
- retryAfterMs: retryAfterMs ?? void 0,
571
- errorCode
572
- };
573
- }
574
- /**
575
- * Detect whether an error is caused by a revoked Proxy.
576
- *
577
- * The Bot Framework SDK wraps TurnContext in a Proxy that is revoked once the
578
- * turn handler returns. Any later access (e.g. from a debounced callback)
579
- * throws a TypeError whose message contains the distinctive "proxy that has
580
- * been revoked" string.
581
- */
582
- function isRevokedProxyError(err) {
583
- if (!(err instanceof TypeError)) return false;
584
- return /proxy that has been revoked/i.test(err.message);
585
- }
586
- function formatMSTeamsSendErrorHint(classification) {
587
- if (classification.kind === "auth") return "check msteams appId/appPassword/tenantId (or env vars MSTEAMS_APP_ID/MSTEAMS_APP_PASSWORD/MSTEAMS_TENANT_ID)";
588
- if (classification.errorCode === "ContentStreamNotAllowed") return "Teams expired the content stream; stop streaming earlier and fall back to normal message delivery";
589
- if (classification.kind === "throttled") return "Teams throttled the bot; backing off may help";
590
- if (classification.kind === "transient") return "transient Teams/Bot Framework error; retry may succeed";
591
- if (classification.kind === "network") return "transport-level failure sending reply to Teams Bot Connector (smba.trafficmanager.net) — check egress firewall rules allow outbound HTTPS to smba.trafficmanager.net";
592
- }
593
- //#endregion
594
492
  //#region extensions/msteams/src/user-agent.ts
595
493
  let cachedUserAgent;
596
494
  function resolveTeamsSdkVersion() {
@@ -612,6 +510,17 @@ function buildUserAgent() {
612
510
  cachedUserAgent = `teams.ts[apps]/${resolveTeamsSdkVersion()} OpenClaw/${resolveOpenClawVersion()}`;
613
511
  return cachedUserAgent;
614
512
  }
513
+ /**
514
+ * User-Agent fragment for the Teams SDK App's client. The SDK's Client.clone
515
+ * merges this with its own `teams.ts[apps]/<sdk-version>` identifier, so we
516
+ * only contribute the OpenClaw piece — passing the full `buildUserAgent()`
517
+ * would double-print the SDK token.
518
+ *
519
+ * Format: "OpenClaw/<openclaw-version>"
520
+ */
521
+ function buildOpenClawUserAgentFragment() {
522
+ return `OpenClaw/${resolveOpenClawVersion()}`;
523
+ }
615
524
  function ensureUserAgentHeader(headers) {
616
525
  const nextHeaders = new Headers(headers);
617
526
  if (!nextHeaders.has("User-Agent")) nextHeaders.set("User-Agent", buildUserAgent());
@@ -625,48 +534,61 @@ async function loadAzureIdentity() {
625
534
  azureIdentityModulePromise ??= import(AZURE_IDENTITY_MODULE);
626
535
  return azureIdentityModulePromise;
627
536
  }
628
- let msTeamsSdkPromise = null;
629
- async function loadMSTeamsSdk() {
630
- msTeamsSdkPromise ??= Promise.all([import("@microsoft/teams.apps"), import("@microsoft/teams.api")]).then(([appsModule, apiModule]) => ({
631
- App: appsModule.App,
632
- Client: apiModule.Client
537
+ let sdkAppPromise = null;
538
+ async function loadSdkModules() {
539
+ sdkAppPromise ??= Promise.all([import("@microsoft/teams.apps"), import("@microsoft/teams.api")]).then(([apps, api]) => ({
540
+ App: apps.App,
541
+ ExpressAdapter: apps.ExpressAdapter,
542
+ cloudFromName: api.cloudFromName
633
543
  }));
634
- return msTeamsSdkPromise;
544
+ return sdkAppPromise;
635
545
  }
636
546
  /**
637
- * Create a no-op HTTP server adapter that satisfies the Teams SDK's
638
- * IHttpServerAdapter interface without spinning up an Express server.
639
- *
640
- * OpenClaw manages its own Express server for the Teams webhook endpoint, so
641
- * the SDK's built-in HTTP server is unnecessary. Passing this adapter via the
642
- * `httpServerAdapter` option prevents the SDK from creating the default
643
- * HttpPlugin (which uses the deprecated `plugins` array and registers an
644
- * Express middleware with the pattern `/api*` — invalid in Express 5).
645
- *
646
- * See: https://github.com/openclaw/openclaw/issues/55161
647
- * See: https://github.com/openclaw/openclaw/issues/60732
547
+ * Lazily construct an ExpressAdapter that the Teams SDK App can register its
548
+ * routes on. The dynamic import keeps the SDK bundle off the hot startup path
549
+ * when msteams is disabled; the structural return type matches what
550
+ * `loadMSTeamsSdkWithAuth` accepts as its `httpServerAdapter` option.
648
551
  */
649
- function createNoOpHttpServerAdapter() {
650
- return { registerRoute() {} };
552
+ async function createMSTeamsExpressAdapter(serverOrApp) {
553
+ const { ExpressAdapter } = await loadSdkModules();
554
+ return new ExpressAdapter(serverOrApp);
651
555
  }
652
556
  /**
653
557
  * Create a Teams SDK App instance from credentials. The App manages token
654
558
  * acquisition, JWT validation, and the HTTP server lifecycle.
655
559
  *
656
- * This replaces the previous CloudAdapter + MsalTokenProvider + authorizeJWT
657
- * from @microsoft/agents-hosting.
560
+ * Auth modes:
561
+ * - Secret: clientId + clientSecret → MSAL client credential flow (SDK built-in)
562
+ * - Managed identity: clientId + managedIdentityClientId → SDK built-in MI support
563
+ * - Certificate: clientId + custom token provider via @azure/identity
658
564
  */
659
- async function createMSTeamsApp(creds, sdk) {
660
- if (creds.type === "federated") return createFederatedApp(creds, sdk);
661
- return new sdk.App({
565
+ async function createMSTeamsApp(creds, options) {
566
+ const { App, cloudFromName } = await loadSdkModules();
567
+ const cloud = options?.cloud ?? "Public";
568
+ const serviceUrl = options?.serviceUrl ? normalizeBotFrameworkServiceUrl(options.serviceUrl) : void 0;
569
+ const appOptions = {
570
+ client: options?.httpClient ?? { headers: { "User-Agent": buildOpenClawUserAgentFragment() } },
571
+ ...options?.httpServerAdapter ? { httpServerAdapter: options.httpServerAdapter } : {},
572
+ ...options?.messagingEndpoint ? { messagingEndpoint: options.messagingEndpoint } : {},
573
+ cloud: cloudFromName(cloud),
574
+ ...serviceUrl ? { serviceUrl } : {},
575
+ ...options?.oauthDefaultConnectionName ? { oauth: { defaultConnectionName: options.oauthDefaultConnectionName } } : {}
576
+ };
577
+ if (creds.type === "federated") return createFederatedApp(creds, App, appOptions);
578
+ return new App({
662
579
  clientId: creds.appId,
663
580
  clientSecret: creds.appPassword,
664
581
  tenantId: creds.tenantId,
665
- httpServerAdapter: createNoOpHttpServerAdapter()
582
+ ...appOptions
666
583
  });
667
584
  }
668
- function createFederatedApp(creds, sdk) {
669
- if (creds.useManagedIdentity) return createManagedIdentityApp(creds, sdk);
585
+ function createFederatedApp(creds, App, appOptions) {
586
+ if (creds.useManagedIdentity) return new App({
587
+ clientId: creds.appId,
588
+ tenantId: creds.tenantId,
589
+ managedIdentityClientId: creds.managedIdentityClientId ?? "system",
590
+ ...appOptions
591
+ });
670
592
  if (!creds.certificatePath) throw new Error("Federated credentials require either a certificate path or managed identity.");
671
593
  let privateKey;
672
594
  try {
@@ -675,9 +597,9 @@ function createFederatedApp(creds, sdk) {
675
597
  const msg = err instanceof Error ? err.message : String(err);
676
598
  throw new Error(`Failed to read certificate file at '${creds.certificatePath}': ${msg}`, { cause: err });
677
599
  }
678
- return createCertificateApp(creds, privateKey, sdk);
600
+ return createCertificateApp(creds, privateKey, App, appOptions);
679
601
  }
680
- function createCertificateApp(creds, privateKey, sdk) {
602
+ function createCertificateApp(creds, privateKey, App, appOptions) {
681
603
  let credentialPromise = null;
682
604
  const getCredential = async () => {
683
605
  if (!credentialPromise) credentialPromise = loadAzureIdentity().then((az) => new az.ClientCertificateCredential(creds.tenantId, creds.appId, { certificate: privateKey }));
@@ -688,438 +610,32 @@ function createCertificateApp(creds, privateKey, sdk) {
688
610
  if (!token?.token) throw new Error("Failed to acquire token via certificate credential.");
689
611
  return token.token;
690
612
  };
691
- return new sdk.App({
692
- clientId: creds.appId,
693
- tenantId: creds.tenantId,
694
- token: tokenProvider,
695
- httpServerAdapter: createNoOpHttpServerAdapter()
696
- });
697
- }
698
- function createManagedIdentityApp(creds, sdk) {
699
- let credentialPromise = null;
700
- const getCredential = async () => {
701
- if (!credentialPromise) credentialPromise = loadAzureIdentity().then((az) => creds.managedIdentityClientId ? new az.ManagedIdentityCredential(creds.managedIdentityClientId) : new az.ManagedIdentityCredential());
702
- return credentialPromise;
703
- };
704
- const tokenProvider = async (scope) => {
705
- const token = await (await getCredential()).getToken(scope);
706
- if (!token?.token) throw new Error("Failed to acquire token via managed identity.");
707
- return token.token;
708
- };
709
- return new sdk.App({
613
+ return new App({
710
614
  clientId: creds.appId,
711
615
  tenantId: creds.tenantId,
712
616
  token: tokenProvider,
713
- httpServerAdapter: createNoOpHttpServerAdapter()
617
+ ...appOptions
714
618
  });
715
619
  }
716
620
  /**
717
- * Build a token provider that uses the Teams SDK App for token acquisition.
621
+ * Build a token provider that uses the Teams SDK App's public tokenManager
622
+ * for token acquisition.
718
623
  */
719
624
  function createMSTeamsTokenProvider(app) {
720
- return { async getAccessToken(scope) {
721
- if (scope.includes("graph.microsoft.com")) {
722
- const token = await app.getAppGraphToken();
723
- return token ? String(token) : "";
724
- }
725
- const token = await app.getBotToken();
726
- return token ? String(token) : "";
727
- } };
728
- }
729
- function createBotTokenGetter(app) {
730
- return async () => {
731
- const token = await app.getBotToken();
732
- return token ? String(token) : void 0;
733
- };
734
- }
735
- function createApiClient(sdk, serviceUrl, getToken) {
736
- const normalizedServiceUrl = normalizeBotFrameworkServiceUrl(serviceUrl);
737
- return new sdk.Client(normalizedServiceUrl, {
738
- token: async () => await getToken() || void 0,
739
- headers: { "User-Agent": buildUserAgent() }
740
- });
741
- }
742
- function normalizeOutboundActivity(textOrActivity) {
743
- return typeof textOrActivity === "string" ? {
744
- type: "message",
745
- text: textOrActivity
746
- } : textOrActivity;
747
- }
748
- function createSendContext(params) {
749
- const normalizedServiceUrl = tryNormalizeBotFrameworkServiceUrl(params.serviceUrl);
750
- const apiClient = normalizedServiceUrl && params.conversationId ? createApiClient(params.sdk, normalizedServiceUrl, params.getToken) : void 0;
751
- return {
752
- async sendActivity(textOrActivity) {
753
- const msg = normalizeOutboundActivity(textOrActivity);
754
- if (params.treatInvokeResponseAsNoop && msg.type === "invokeResponse") return { id: "invokeResponse" };
755
- if (params.serviceUrl && !normalizedServiceUrl) normalizeBotFrameworkServiceUrl(params.serviceUrl);
756
- if (!apiClient || !params.conversationId) return { id: "unknown" };
757
- const existingChannelData = msg.channelData && typeof msg.channelData === "object" ? msg.channelData : void 0;
758
- const channelData = params.tenantId ? {
759
- ...existingChannelData,
760
- tenant: { id: params.tenantId }
761
- } : existingChannelData;
762
- return await apiClient.conversations.activities(params.conversationId).create({
763
- type: "message",
764
- ...msg,
765
- ...channelData ? { channelData } : {},
766
- from: params.bot?.id ? {
767
- id: params.bot.id,
768
- name: params.bot.name ?? "",
769
- role: "bot"
770
- } : void 0,
771
- conversation: {
772
- id: params.conversationId,
773
- conversationType: params.conversationType ?? "personal",
774
- ...params.tenantId ? { tenantId: params.tenantId } : {}
775
- },
776
- ...params.recipientId || params.recipientAadObjectId ? { recipient: {
777
- ...params.recipientId ? { id: params.recipientId } : {},
778
- ...params.recipientAadObjectId ? { aadObjectId: params.recipientAadObjectId } : {}
779
- } } : {},
780
- ...params.replyToActivityId && !msg.replyToId ? { replyToId: params.replyToActivityId } : {}
781
- });
782
- },
783
- async updateActivity(activityUpdate) {
784
- const nextActivity = activityUpdate;
785
- const activityId = nextActivity.id;
786
- if (!activityId) throw new Error("updateActivity requires an activity id");
787
- if (!params.serviceUrl || !params.conversationId) return { id: "unknown" };
788
- return await updateActivityViaRest({
789
- serviceUrl: normalizeBotFrameworkServiceUrl(params.serviceUrl),
790
- conversationId: params.conversationId,
791
- activityId,
792
- activity: nextActivity,
793
- token: await params.getToken()
794
- });
795
- },
796
- async deleteActivity(activityId) {
797
- if (!activityId) throw new Error("deleteActivity requires an activity id");
798
- if (!params.serviceUrl || !params.conversationId) return;
799
- await deleteActivityViaRest({
800
- serviceUrl: normalizeBotFrameworkServiceUrl(params.serviceUrl),
801
- conversationId: params.conversationId,
802
- activityId,
803
- token: await params.getToken()
804
- });
805
- }
625
+ const tokenToString = (token) => {
626
+ if (token == null) return "";
627
+ return token.toString();
806
628
  };
807
- }
808
- function createProcessContext(params) {
809
- const serviceUrl = params.activity?.serviceUrl;
810
- const conversationId = (params.activity?.conversation)?.id;
811
- const conversationType = (params.activity?.conversation)?.conversationType;
812
- const replyToActivityId = params.activity?.id;
813
- const bot = params.activity?.recipient && typeof params.activity.recipient === "object" ? {
814
- id: params.activity.recipient.id,
815
- name: params.activity.recipient.name
816
- } : void 0;
817
- const sendContext = createSendContext({
818
- sdk: params.sdk,
819
- serviceUrl,
820
- conversationId,
821
- conversationType,
822
- bot,
823
- replyToActivityId,
824
- getToken: params.getToken,
825
- treatInvokeResponseAsNoop: true
826
- });
827
- return {
828
- activity: params.activity,
829
- ...sendContext,
830
- async sendActivities(activities) {
831
- const results = [];
832
- for (const activity of activities) results.push(await sendContext.sendActivity(activity));
833
- return results;
834
- }
835
- };
836
- }
837
- /**
838
- * Update an existing activity via the Bot Framework REST API.
839
- * PUT /v3/conversations/{conversationId}/activities/{activityId}
840
- */
841
- async function updateActivityViaRest(params) {
842
- const { serviceUrl, conversationId, activityId, activity, token } = params;
843
- const url = `${normalizeBotFrameworkServiceUrl(serviceUrl)}/v3/conversations/${encodeURIComponent(conversationId)}/activities/${encodeURIComponent(activityId)}`;
844
- const headers = {
845
- "Content-Type": "application/json",
846
- "User-Agent": buildUserAgent()
847
- };
848
- if (token) headers.Authorization = `Bearer ${token}`;
849
- const currentFetch = globalThis.fetch;
850
- const { response, release } = await fetchWithSsrFGuard({
851
- url,
852
- fetchImpl: async (input, guardedInit) => await currentFetch(input, guardedInit),
853
- init: {
854
- method: "PUT",
855
- headers,
856
- body: JSON.stringify({
857
- type: "message",
858
- ...activity,
859
- id: activityId
860
- })
861
- },
862
- auditContext: "msteams-update-activity",
863
- policy: BOT_FRAMEWORK_SERVICE_URL_SSRF_POLICY
864
- });
865
- try {
866
- if (!response.ok) {
867
- const body = await response.text().catch(() => "");
868
- throw Object.assign(/* @__PURE__ */ new Error(`updateActivity failed: HTTP ${response.status} ${body}`), { statusCode: response.status });
869
- }
870
- return await response.json().catch(() => ({ id: activityId }));
871
- } finally {
872
- await release();
873
- }
874
- }
875
- /**
876
- * Delete an existing activity via the Bot Framework REST API.
877
- * DELETE /v3/conversations/{conversationId}/activities/{activityId}
878
- */
879
- async function deleteActivityViaRest(params) {
880
- const { serviceUrl, conversationId, activityId, token } = params;
881
- const url = `${normalizeBotFrameworkServiceUrl(serviceUrl)}/v3/conversations/${encodeURIComponent(conversationId)}/activities/${encodeURIComponent(activityId)}`;
882
- const headers = { "User-Agent": buildUserAgent() };
883
- if (token) headers.Authorization = `Bearer ${token}`;
884
- const currentFetch = globalThis.fetch;
885
- const { response, release } = await fetchWithSsrFGuard({
886
- url,
887
- fetchImpl: async (input, guardedInit) => await currentFetch(input, guardedInit),
888
- init: {
889
- method: "DELETE",
890
- headers
891
- },
892
- auditContext: "msteams-delete-activity",
893
- policy: BOT_FRAMEWORK_SERVICE_URL_SSRF_POLICY
894
- });
895
- try {
896
- if (!response.ok) {
897
- const body = await response.text().catch(() => "");
898
- throw Object.assign(/* @__PURE__ */ new Error(`deleteActivity failed: HTTP ${response.status} ${body}`), { statusCode: response.status });
899
- }
900
- } finally {
901
- await release();
902
- }
903
- }
904
- /**
905
- * Build a CloudAdapter-compatible adapter using the Teams SDK REST client.
906
- *
907
- * This replaces the previous CloudAdapter from @microsoft/agents-hosting.
908
- * For incoming requests: the App's HTTP server handles JWT validation.
909
- * For proactive sends: uses the Bot Framework REST API via
910
- * @microsoft/teams.api Client.
911
- */
912
- function createMSTeamsAdapter(app, sdk) {
913
- return {
914
- async continueConversation(_appId, reference, logic) {
915
- const rawServiceUrl = reference.serviceUrl;
916
- if (!rawServiceUrl) throw new Error("Missing serviceUrl in conversation reference");
917
- const serviceUrl = normalizeBotFrameworkServiceUrl(rawServiceUrl);
918
- const conversationId = reference.conversation?.id;
919
- if (!conversationId) throw new Error("Missing conversation.id in conversation reference");
920
- const tenantId = reference.tenantId ?? reference.conversation?.tenantId;
921
- const recipientAadObjectId = reference.aadObjectId ?? reference.user?.aadObjectId;
922
- const recipientId = reference.user?.id;
923
- await logic(createSendContext({
924
- sdk,
925
- serviceUrl,
926
- conversationId,
927
- conversationType: reference.conversation?.conversationType,
928
- bot: reference.agent ?? void 0,
929
- getToken: createBotTokenGetter(app),
930
- tenantId,
931
- recipientId,
932
- recipientAadObjectId
933
- }));
934
- },
935
- async process(req, res, logic) {
936
- const request = req;
937
- const response = res;
938
- const activity = request.body;
939
- const isInvoke = activity?.type === "invoke";
940
- try {
941
- const context = createProcessContext({
942
- sdk,
943
- activity,
944
- getToken: createBotTokenGetter(app)
945
- });
946
- if (isInvoke) response.status(200).send();
947
- await logic(context);
948
- if (!isInvoke) response.status(200).send();
949
- } catch (err) {
950
- if (!isInvoke) response.status(500).send({ error: formatUnknownError(err) });
951
- }
952
- },
953
- async updateActivity(_context, _activity) {},
954
- async deleteActivity(_context, _reference) {}
955
- };
956
- }
957
- async function loadMSTeamsSdkWithAuth(creds) {
958
- const sdk = await loadMSTeamsSdk();
959
- return {
960
- sdk,
961
- app: await createMSTeamsApp(creds, sdk)
962
- };
963
- }
964
- /**
965
- * Bot Framework issuer → JWKS mapping.
966
- * During Microsoft's transition, inbound service tokens can be signed by either
967
- * the legacy Bot Framework issuer or the Entra issuer. Each gets its own JWKS
968
- * endpoint so we verify signatures with the correct key set.
969
- */
970
- const BOT_FRAMEWORK_ISSUERS = [
971
- {
972
- issuer: "https://api.botframework.com",
973
- jwksUri: "https://login.botframework.com/v1/.well-known/keys"
974
- },
975
- {
976
- issuer: (tenantId) => `https://login.microsoftonline.com/${tenantId}/v2.0`,
977
- jwksUri: "https://login.microsoftonline.com/common/discovery/v2.0/keys"
978
- },
979
- {
980
- issuer: (tenantId) => `https://sts.windows.net/${tenantId}/`,
981
- jwksUri: "https://login.microsoftonline.com/common/discovery/v2.0/keys"
982
- }
983
- ];
984
- const BOT_FRAMEWORK_GLOBAL_AUDIENCE = "https://api.botframework.com";
985
- function isJwtPayloadObject(value) {
986
- return !!value && typeof value === "object" && !Array.isArray(value);
987
- }
988
- function getAudienceClaims(payload) {
989
- if (!isJwtPayloadObject(payload)) return [];
990
- const audience = payload.aud;
991
- if (typeof audience === "string") {
992
- const trimmed = audience.trim();
993
- return trimmed ? [trimmed] : [];
994
- }
995
- if (Array.isArray(audience)) return normalizeStringEntries(audience.filter((value) => typeof value === "string"));
996
- return [];
997
- }
998
- function normalizeBotIdentityClaim(value) {
999
- if (typeof value !== "string") return null;
1000
- return value.trim().toLowerCase() || null;
1001
- }
1002
- function hasExpectedBotIdentity(payload, expectedAppId) {
1003
- if (!isJwtPayloadObject(payload)) return false;
1004
- const expected = normalizeBotIdentityClaim(expectedAppId);
1005
- if (!expected) return false;
1006
- return normalizeBotIdentityClaim(payload.appid) === expected || normalizeBotIdentityClaim(payload.azp) === expected;
1007
- }
1008
- let botFrameworkJwtDepsPromise = null;
1009
- function hasDefaultExport(value) {
1010
- return !!value && typeof value === "object" && "default" in value;
1011
- }
1012
- function isJsonwebtokenRuntime(value) {
1013
- return !!value && typeof value === "object" && typeof value.decode === "function" && typeof value.verify === "function";
1014
- }
1015
- function loadJsonwebtokenRuntime(jwtModule) {
1016
- const jwt = hasDefaultExport(jwtModule) ? jwtModule.default ?? jwtModule : jwtModule;
1017
- if (!isJsonwebtokenRuntime(jwt)) throw new Error("jsonwebtoken did not export decode/verify");
1018
- return jwt;
1019
- }
1020
- function isJwksClientRuntime(value) {
1021
- return typeof value === "function";
1022
- }
1023
- function loadJwksClientRuntime(jwksModule) {
1024
- const direct = jwksModule && typeof jwksModule === "object" ? jwksModule.JwksClient : void 0;
1025
- const fallback = hasDefaultExport(jwksModule) && jwksModule.default && typeof jwksModule.default === "object" ? jwksModule.default.JwksClient : void 0;
1026
- const JwksClient = direct ?? fallback;
1027
- if (!isJwksClientRuntime(JwksClient)) throw new Error("jwks-rsa did not export JwksClient");
1028
- return JwksClient;
1029
- }
1030
- async function loadBotFrameworkJwtDeps() {
1031
- botFrameworkJwtDepsPromise ??= Promise.all([import("jsonwebtoken"), import("jwks-rsa")]).then(([jwtModule, jwksModule]) => {
1032
- return {
1033
- jwt: loadJsonwebtokenRuntime(jwtModule),
1034
- JwksClient: loadJwksClientRuntime(jwksModule)
1035
- };
1036
- });
1037
- return botFrameworkJwtDepsPromise;
1038
- }
1039
- /**
1040
- * Create a Bot Framework JWT validator using jsonwebtoken + jwks-rsa directly.
1041
- *
1042
- * The @microsoft/teams.apps JwtValidator hardcodes audience to [clientId, api://clientId],
1043
- * which rejects valid Bot Framework tokens that carry aud: "https://api.botframework.com".
1044
- * This implementation uses jsonwebtoken directly with the correct audience list, matching
1045
- * the behavior of the legacy @microsoft/agents-hosting authorizeJWT middleware.
1046
- *
1047
- * Security invariants:
1048
- * - signature verification via issuer-specific JWKS endpoints
1049
- * - audience validation: appId, api://appId, and https://api.botframework.com
1050
- * - issuer validation: strict allowlist (Bot Framework + tenant-scoped Entra)
1051
- * - expiration validation with 5-minute clock tolerance
1052
- */
1053
- async function createBotFrameworkJwtValidator(creds) {
1054
- const { jwt, JwksClient } = await loadBotFrameworkJwtDeps();
1055
- const allowedAudiences = [
1056
- creds.appId,
1057
- `api://${creds.appId}`,
1058
- BOT_FRAMEWORK_GLOBAL_AUDIENCE
1059
- ];
1060
- const allowedIssuers = BOT_FRAMEWORK_ISSUERS.map((entry) => typeof entry.issuer === "function" ? entry.issuer(creds.tenantId) : entry.issuer);
1061
- const jwksClients = /* @__PURE__ */ new Map();
1062
- function getJwksClient(uri) {
1063
- let client = jwksClients.get(uri);
1064
- if (!client) {
1065
- client = new JwksClient({
1066
- jwksUri: uri,
1067
- cache: true,
1068
- cacheMaxAge: 6e5,
1069
- rateLimit: true
1070
- });
1071
- jwksClients.set(uri, client);
1072
- }
1073
- return client;
1074
- }
1075
- /** Decode the token header without verification to determine the kid. */
1076
- function decodeHeader(token) {
1077
- const decoded = jwt.decode(token, { complete: true });
1078
- return decoded && typeof decoded === "object" ? decoded.header : null;
1079
- }
1080
- /** Resolve the issuer entry for a token's issuer claim (pre-verification). */
1081
- function resolveIssuerEntry(issuerClaim) {
1082
- if (!issuerClaim) return;
1083
- return BOT_FRAMEWORK_ISSUERS.find((entry) => {
1084
- return (typeof entry.issuer === "function" ? entry.issuer(creds.tenantId) : entry.issuer) === issuerClaim;
1085
- });
1086
- }
1087
- return { async validate(authHeader, _serviceUrl) {
1088
- const token = authHeader.startsWith("Bearer ") ? authHeader.slice(7) : authHeader;
1089
- if (!token) return false;
1090
- const header = decodeHeader(token);
1091
- const unverifiedPayload = jwt.decode(token);
1092
- if (!header?.kid || !isJwtPayloadObject(unverifiedPayload) || typeof unverifiedPayload.iss !== "string") return false;
1093
- const issuerEntry = resolveIssuerEntry(unverifiedPayload.iss);
1094
- if (!issuerEntry) return false;
1095
- const client = getJwksClient(issuerEntry.jwksUri);
1096
- try {
1097
- const publicKey = (await client.getSigningKey(header.kid)).getPublicKey();
1098
- const verifiedPayload = jwt.verify(token, publicKey, {
1099
- audience: allowedAudiences,
1100
- issuer: allowedIssuers,
1101
- algorithms: ["RS256"],
1102
- clockTolerance: 300
1103
- });
1104
- if (!isJwtPayloadObject(verifiedPayload)) return false;
1105
- if (getAudienceClaims(verifiedPayload).includes(BOT_FRAMEWORK_GLOBAL_AUDIENCE) && !hasExpectedBotIdentity(verifiedPayload, creds.appId)) return false;
1106
- return true;
1107
- } catch (err) {
1108
- if (isJwksNetworkError(err)) throw err;
1109
- return false;
629
+ return { async getAccessToken(scope) {
630
+ if (scope.includes("graph.microsoft.com") || scope.includes("graph.microsoft.us") || scope.includes("microsoftgraph.chinacloudapi.cn")) {
631
+ if (app.cloud?.graphScope?.includes("microsoftgraph.chinacloudapi.cn")) throw new Error("Microsoft Teams Graph operations are not supported for channels.msteams.cloud=China until Graph requests are routed through the Azure China Graph endpoint.");
632
+ return tokenToString(await app.tokenManager.getGraphToken());
1110
633
  }
634
+ return tokenToString(await app.tokenManager.getBotToken());
1111
635
  } };
1112
636
  }
1113
- /**
1114
- * Return true when the error originated from a network-level failure fetching
1115
- * the JWKS endpoint (DNS resolution, connection refused, TLS handshake, etc.)
1116
- * rather than from token verification logic.
1117
- */
1118
- function isJwksNetworkError(err) {
1119
- if (!(err instanceof Error)) return false;
1120
- const code = err.code;
1121
- if (code === "ECONNREFUSED" || code === "ENOTFOUND" || code === "EHOSTUNREACH" || code === "ETIMEDOUT" || code === "ECONNRESET") return true;
1122
- return /jwks|key fetch|getSigningKey/i.test(err.message) && /network|fetch|connect/i.test(err.message);
637
+ async function loadMSTeamsSdkWithAuth(creds, options) {
638
+ return { app: await createMSTeamsApp(creds, options) };
1123
639
  }
1124
640
  //#endregion
1125
641
  //#region extensions/msteams/src/token-response.ts
@@ -1245,7 +761,7 @@ async function requestGraph(params) {
1245
761
  const hasBody = params.body !== void 0;
1246
762
  const url = `${params.root ?? "https://graph.microsoft.com/v1.0"}${params.path}`;
1247
763
  const currentFetch = globalThis.fetch;
1248
- const { response, release } = await fetchWithSsrFGuard$1({
764
+ const { response, release } = await fetchWithSsrFGuard({
1249
765
  url,
1250
766
  fetchImpl: async (input, guardedInit) => await currentFetch(input, guardedInit),
1251
767
  init: {
@@ -1261,10 +777,7 @@ async function requestGraph(params) {
1261
777
  auditContext: "msteams.graph"
1262
778
  });
1263
779
  try {
1264
- if (!response.ok) {
1265
- const text = await response.text().catch(() => "");
1266
- throw new Error(`${params.errorPrefix ?? "Graph"} ${params.path} failed (${response.status}): ${text || "unknown error"}`);
1267
- }
780
+ if (!response.ok) throw await createMSTeamsHttpError(response, `${params.errorPrefix ?? "Graph"} ${params.path} failed`);
1268
781
  const body = NULL_BODY_STATUSES.has(response.status) ? null : await response.arrayBuffer();
1269
782
  return new Response(body, {
1270
783
  status: response.status,
@@ -1293,7 +806,7 @@ async function fetchGraphJson(params) {
1293
806
  * pagination URLs) without prepending GRAPH_ROOT.
1294
807
  */
1295
808
  async function fetchGraphAbsoluteUrl(params) {
1296
- const { response, release } = await fetchWithSsrFGuard$1({
809
+ const { response, release } = await fetchWithSsrFGuard({
1297
810
  url: params.url,
1298
811
  init: { headers: {
1299
812
  "User-Agent": buildUserAgent(),
@@ -1303,10 +816,7 @@ async function fetchGraphAbsoluteUrl(params) {
1303
816
  auditContext: "msteams.graph.absolute"
1304
817
  });
1305
818
  try {
1306
- if (!response.ok) {
1307
- const text = await response.text().catch(() => "");
1308
- throw new Error(`Graph ${params.url} failed (${response.status}): ${text || "unknown error"}`);
1309
- }
819
+ if (!response.ok) throw await createMSTeamsHttpError(response, `Graph ${params.url} failed`);
1310
820
  return await readProviderJsonResponse(response, `Graph ${params.url} failed`);
1311
821
  } finally {
1312
822
  await release();
@@ -1352,6 +862,7 @@ async function resolveGraphToken(cfg, options) {
1352
862
  const msteamsCfg = cfg?.channels?.msteams;
1353
863
  const creds = resolveMSTeamsCredentials(msteamsCfg);
1354
864
  if (!creds) throw new Error("MS Teams credentials missing");
865
+ if (msteamsCfg?.cloud === "China") throw new Error("Microsoft Teams Graph operations are not supported for channels.msteams.cloud=China until Graph requests are routed through the Azure China Graph endpoint.");
1355
866
  if (options?.preferDelegated && msteamsCfg?.delegatedAuth?.enabled && creds.type === "secret") {
1356
867
  const delegated = await resolveDelegatedAccessToken({
1357
868
  tenantId: creds.tenantId,
@@ -1360,7 +871,7 @@ async function resolveGraphToken(cfg, options) {
1360
871
  });
1361
872
  if (delegated) return delegated;
1362
873
  }
1363
- const { app } = await loadMSTeamsSdkWithAuth(creds);
874
+ const { app } = await loadMSTeamsSdkWithAuth(creds, resolveMSTeamsSdkCloudOptions(msteamsCfg));
1364
875
  const accessToken = readAccessToken(await createMSTeamsTokenProvider(app).getAccessToken("https://graph.microsoft.com"));
1365
876
  if (!accessToken) throw new Error("MS Teams graph token unavailable");
1366
877
  return accessToken;
@@ -1441,4 +952,168 @@ async function searchGraphUsers(params) {
1441
952
  })).value ?? [];
1442
953
  }
1443
954
  //#endregion
1444
- export { safeHostForUrl as $, describeBotFrameworkServiceUrlHost as A, extractHtmlFromAttachment as B, loadMSTeamsSdkWithAuth as C, formatMSTeamsSendErrorHint as D, classifyMSTeamsSendError as E, GRAPH_ROOT as F, isRecord$1 as G, inferPlaceholder as H, IMG_SRC_RE as I, readNestedString as J, isUrlAllowed as K, applyAuthorizationHeaderForUrl as L, normalizeBotFrameworkServiceUrl as M, tryNormalizeBotFrameworkServiceUrl as N, formatUnknownError as O, ATTACHMENT_TAG_RE as P, safeFetchWithPolicy as Q, encodeGraphShareId as R, createMSTeamsTokenProvider as S, ensureUserAgentHeader as T, isDownloadableAttachment as U, extractInlineImageCandidates as V, isLikelyImageAttachment as W, resolveMediaSsrfPolicy as X, resolveAttachmentFetchPolicy as Y, resolveRequestUrl as Z, resolveMSTeamsStorePath as _, fetchGraphJson as a, createBotFrameworkJwtValidator as b, normalizeQuery as c, postGraphJson as d, tryBuildGraphSharesUrlForSharedLink as et, resolveGraphToken as f, saveDelegatedTokens as g, resolveMSTeamsCredentials as h, fetchGraphAbsoluteUrl as i, isAllowedBotFrameworkServiceUrl as j, isRevokedProxyError as k, patchGraphJson as l, loadDelegatedTokens as m, deleteGraphRequest as n, listChannelsForTeam as o, hasConfiguredMSTeamsCredentials as p, normalizeContentType as q, escapeOData as r, listTeamsByName as s, searchGraphUsers as t, postGraphBetaJson as u, normalizeSecretInputString as v, buildUserAgent as w, createMSTeamsAdapter as x, readAccessToken as y, estimateBase64DecodedBytes as z };
955
+ //#region extensions/msteams/src/errors.ts
956
+ function formatUnknownError(err) {
957
+ if (err instanceof Error) return err.message;
958
+ if (typeof err === "string") return err;
959
+ if (err === null) return "null";
960
+ if (err === void 0) return "undefined";
961
+ if (typeof err === "number" || typeof err === "boolean" || typeof err === "bigint") return String(err);
962
+ if (typeof err === "symbol") return err.description ?? err.toString();
963
+ if (typeof err === "function") return err.name ? `[function ${err.name}]` : "[function]";
964
+ try {
965
+ return JSON.stringify(err) ?? "unknown error";
966
+ } catch {
967
+ return "unknown error";
968
+ }
969
+ }
970
+ function extractStatusCode(err) {
971
+ if (!isRecord(err)) return null;
972
+ const parseStatusCode = (value) => {
973
+ if (typeof value === "number") return Number.isInteger(value) && value >= 100 && value <= 599 ? value : null;
974
+ if (typeof value === "string") {
975
+ const trimmed = value.trim();
976
+ if (!/^\d{3}$/.test(trimmed)) return null;
977
+ const parsed = Number(trimmed);
978
+ return parsed >= 100 && parsed <= 599 ? parsed : null;
979
+ }
980
+ return null;
981
+ };
982
+ const directStatus = parseStatusCode(err.statusCode ?? err.status);
983
+ if (directStatus !== null) return directStatus;
984
+ const response = err.response;
985
+ if (isRecord(response)) {
986
+ const responseStatus = parseStatusCode(response.status);
987
+ if (responseStatus !== null) return responseStatus;
988
+ }
989
+ return null;
990
+ }
991
+ function extractErrorCode(err) {
992
+ if (!isRecord(err)) return null;
993
+ const direct = err.code;
994
+ if (typeof direct === "string" && direct.trim()) return direct;
995
+ const response = err.response;
996
+ if (!isRecord(response)) return null;
997
+ const body = response.body;
998
+ if (isRecord(body)) {
999
+ const error = body.error;
1000
+ if (isRecord(error) && typeof error.code === "string" && error.code.trim()) return error.code;
1001
+ }
1002
+ return null;
1003
+ }
1004
+ function extractRetryAfterMs(err) {
1005
+ if (!isRecord(err)) return null;
1006
+ const direct = err.retryAfterMs ?? err.retry_after_ms;
1007
+ if (typeof direct === "number" && Number.isFinite(direct) && direct >= 0) return direct;
1008
+ const retryAfter = err.retryAfter ?? err.retry_after;
1009
+ if (typeof retryAfter === "number" && Number.isFinite(retryAfter)) return retryAfter >= 0 ? retryAfter * 1e3 : null;
1010
+ if (typeof retryAfter === "string") {
1011
+ const parsed = parseNonNegativeRetryAfterSeconds(retryAfter);
1012
+ if (Number.isFinite(parsed) && parsed >= 0) return parsed * 1e3;
1013
+ }
1014
+ const response = err.response;
1015
+ if (!isRecord(response)) return null;
1016
+ const headers = response.headers;
1017
+ if (!headers) return null;
1018
+ if (isRecord(headers)) {
1019
+ const raw = headers["retry-after"] ?? headers["Retry-After"];
1020
+ if (typeof raw === "string") {
1021
+ const parsed = parseNonNegativeRetryAfterSeconds(raw);
1022
+ if (Number.isFinite(parsed) && parsed >= 0) return parsed * 1e3;
1023
+ }
1024
+ }
1025
+ if (typeof headers === "object" && headers !== null && "get" in headers && typeof headers.get === "function") {
1026
+ const raw = headers.get("retry-after");
1027
+ if (raw) {
1028
+ const parsed = parseNonNegativeRetryAfterSeconds(raw);
1029
+ if (Number.isFinite(parsed) && parsed >= 0) return parsed * 1e3;
1030
+ }
1031
+ }
1032
+ return null;
1033
+ }
1034
+ function parseNonNegativeRetryAfterSeconds(raw) {
1035
+ const trimmed = raw.trim();
1036
+ if (!/^\d+(?:\.\d+)?$/.test(trimmed)) return NaN;
1037
+ return Number(trimmed);
1038
+ }
1039
+ /**
1040
+ * Classify outbound send errors for safe retries and actionable logs.
1041
+ *
1042
+ * Important: We only mark errors as retryable when we have an explicit HTTP
1043
+ * status code that indicates the message was not accepted (e.g. 429, 5xx).
1044
+ * For transport-level errors where delivery is ambiguous, we prefer to avoid
1045
+ * retries to reduce the chance of duplicate posts.
1046
+ */
1047
+ function classifyMSTeamsSendError(err) {
1048
+ const statusCode = extractStatusCode(err);
1049
+ const retryAfterMs = extractRetryAfterMs(err);
1050
+ const errorCode = extractErrorCode(err) ?? void 0;
1051
+ if (statusCode === 401) return {
1052
+ kind: "auth",
1053
+ statusCode,
1054
+ errorCode
1055
+ };
1056
+ if (statusCode === 403) {
1057
+ if (errorCode === "ContentStreamNotAllowed") return {
1058
+ kind: "permanent",
1059
+ statusCode,
1060
+ errorCode
1061
+ };
1062
+ return {
1063
+ kind: "auth",
1064
+ statusCode,
1065
+ errorCode
1066
+ };
1067
+ }
1068
+ if (statusCode === 429) return {
1069
+ kind: "throttled",
1070
+ statusCode,
1071
+ retryAfterMs: retryAfterMs ?? void 0,
1072
+ errorCode
1073
+ };
1074
+ if (statusCode === 408 || statusCode != null && statusCode >= 500) return {
1075
+ kind: "transient",
1076
+ statusCode,
1077
+ retryAfterMs: retryAfterMs ?? void 0,
1078
+ errorCode
1079
+ };
1080
+ if (statusCode != null && statusCode >= 400) return {
1081
+ kind: "permanent",
1082
+ statusCode,
1083
+ errorCode
1084
+ };
1085
+ if (statusCode == null) {
1086
+ const networkCode = isRecord(err) && typeof err.code === "string" ? err.code : null;
1087
+ if (networkCode === "ECONNREFUSED" || networkCode === "ENOTFOUND" || networkCode === "EHOSTUNREACH" || networkCode === "ETIMEDOUT" || networkCode === "ECONNRESET") return {
1088
+ kind: "network",
1089
+ errorCode: networkCode
1090
+ };
1091
+ }
1092
+ return {
1093
+ kind: "unknown",
1094
+ statusCode: statusCode ?? void 0,
1095
+ retryAfterMs: retryAfterMs ?? void 0,
1096
+ errorCode
1097
+ };
1098
+ }
1099
+ /**
1100
+ * Detect whether an error is caused by a revoked Proxy.
1101
+ *
1102
+ * The Bot Framework SDK wraps TurnContext in a Proxy that is revoked once the
1103
+ * turn handler returns. Any later access (e.g. from a debounced callback)
1104
+ * throws a TypeError whose message contains the distinctive "proxy that has
1105
+ * been revoked" string.
1106
+ */
1107
+ function isRevokedProxyError(err) {
1108
+ if (!(err instanceof TypeError)) return false;
1109
+ return /proxy that has been revoked/i.test(err.message);
1110
+ }
1111
+ function formatMSTeamsSendErrorHint(classification) {
1112
+ if (classification.kind === "auth") return "check msteams appId/appPassword/tenantId (or env vars MSTEAMS_APP_ID/MSTEAMS_APP_PASSWORD/MSTEAMS_TENANT_ID)";
1113
+ if (classification.errorCode === "ContentStreamNotAllowed") return "Teams expired the content stream; stop streaming earlier and fall back to normal message delivery";
1114
+ if (classification.kind === "throttled") return "Teams throttled the bot; backing off may help";
1115
+ if (classification.kind === "transient") return "transient Teams/Bot Framework error; retry may succeed";
1116
+ if (classification.kind === "network") return "transport-level failure sending reply to Teams Bot Connector (smba.trafficmanager.net) — check egress firewall rules allow outbound HTTPS to smba.trafficmanager.net";
1117
+ }
1118
+ //#endregion
1119
+ export { safeFetchWithPolicy as $, isAllowedBotFrameworkServiceUrl as A, estimateBase64DecodedBytes as B, readAccessToken as C, buildUserAgent as D, loadMSTeamsSdkWithAuth as E, ATTACHMENT_TAG_RE as F, isLikelyImageAttachment as G, extractInlineImageCandidates as H, GRAPH_ROOT as I, normalizeContentType as J, isRecord$1 as K, IMG_SRC_RE as L, tryNormalizeBotFrameworkServiceUrl as M, resolveMSTeamsSdkCloudOptions as N, ensureUserAgentHeader as O, validateMSTeamsProactiveServiceUrlBoundary as P, resolveRequestUrl as Q, applyAuthorizationHeaderForUrl as R, normalizeSecretInputString as S, createMSTeamsTokenProvider as T, inferPlaceholder as U, extractHtmlFromAttachment as V, isDownloadableAttachment as W, resolveAttachmentFetchPolicy as X, readNestedString as Y, resolveMediaSsrfPolicy as Z, hasConfiguredMSTeamsCredentials as _, searchGraphUsers as a, saveDelegatedTokens as b, fetchGraphAbsoluteUrl as c, listTeamsByName as d, safeHostForUrl as et, normalizeQuery as f, resolveGraphToken as g, postGraphJson as h, isRevokedProxyError as i, normalizeBotFrameworkServiceUrl as j, describeBotFrameworkServiceUrlHost as k, fetchGraphJson as l, postGraphBetaJson as m, formatMSTeamsSendErrorHint as n, deleteGraphRequest as o, patchGraphJson as p, isUrlAllowed as q, formatUnknownError as r, escapeOData as s, classifyMSTeamsSendError as t, tryBuildGraphSharesUrlForSharedLink as tt, listChannelsForTeam as u, loadDelegatedTokens as v, createMSTeamsExpressAdapter as w, resolveMSTeamsStorePath as x, resolveMSTeamsCredentials as y, encodeGraphShareId as z };