botframework-webchat-api 4.18.0 → 4.18.1-hotfix.20260127.b53acdf

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 (773) hide show
  1. package/decorator.js +1 -1
  2. package/dist/botframework-webchat-api.d.mts +196 -48
  3. package/dist/botframework-webchat-api.d.ts +1612 -0
  4. package/dist/botframework-webchat-api.decorator.d.mts +24 -30
  5. package/dist/botframework-webchat-api.decorator.d.ts +30 -0
  6. package/dist/botframework-webchat-api.decorator.js +3 -0
  7. package/dist/botframework-webchat-api.decorator.js.map +1 -0
  8. package/dist/botframework-webchat-api.decorator.mjs +1 -1
  9. package/dist/botframework-webchat-api.decorator.mjs.map +1 -1
  10. package/dist/botframework-webchat-api.internal.d.mts +18 -1
  11. package/dist/botframework-webchat-api.internal.d.ts +20 -0
  12. package/dist/botframework-webchat-api.internal.js +3 -0
  13. package/dist/botframework-webchat-api.internal.js.map +1 -0
  14. package/dist/botframework-webchat-api.internal.mjs +1 -1
  15. package/dist/botframework-webchat-api.internal.mjs.map +1 -1
  16. package/dist/botframework-webchat-api.js +3 -0
  17. package/dist/botframework-webchat-api.js.map +1 -0
  18. package/dist/botframework-webchat-api.mjs +1 -139
  19. package/dist/botframework-webchat-api.mjs.map +1 -1
  20. package/dist/chunk-2HABAU7C.mjs +3 -0
  21. package/dist/chunk-2HABAU7C.mjs.LEGAL.txt +0 -0
  22. package/dist/chunk-2HABAU7C.mjs.map +1 -0
  23. package/dist/chunk-45Z2ZE4M.js +3 -0
  24. package/dist/chunk-45Z2ZE4M.js.LEGAL.txt +0 -0
  25. package/dist/chunk-45Z2ZE4M.js.map +1 -0
  26. package/dist/chunk-7K3OK5TS.mjs +3 -0
  27. package/dist/chunk-7K3OK5TS.mjs.LEGAL.txt +0 -0
  28. package/dist/chunk-7K3OK5TS.mjs.map +1 -0
  29. package/dist/chunk-LXPINC7N.js +3 -0
  30. package/dist/chunk-LXPINC7N.js.LEGAL.txt +0 -0
  31. package/dist/chunk-LXPINC7N.js.map +1 -0
  32. package/dist/chunk-PRWGXTDA.mjs +3 -0
  33. package/dist/chunk-PRWGXTDA.mjs.LEGAL.txt +0 -0
  34. package/dist/chunk-PRWGXTDA.mjs.map +1 -0
  35. package/dist/chunk-WH7VSYKK.js +3 -0
  36. package/dist/chunk-WH7VSYKK.js.LEGAL.txt +0 -0
  37. package/dist/chunk-WH7VSYKK.js.map +1 -0
  38. package/dist/metafile-cjs.json +1 -0
  39. package/dist/metafile-esm.json +1 -1
  40. package/dist/types-BXPldIKA.d.mts +86 -0
  41. package/dist/types-BXPldIKA.d.ts +86 -0
  42. package/internal.js +1 -1
  43. package/package.json +59 -71
  44. package/src/StyleOptions.ts +123 -4
  45. package/src/decorator/ActivityBorder/ActivityBorderDecorator.tsx +48 -0
  46. package/src/decorator/ActivityBorder/private/ActivityBorderDecoratorMiddleware.ts +51 -0
  47. package/src/decorator/ActivityBorder/types.ts +1 -0
  48. package/src/decorator/ActivityGrouping/ActivityGroupingDecorator.tsx +31 -0
  49. package/src/decorator/ActivityGrouping/private/ActivityGroupingDecoratorMiddleware.ts +38 -0
  50. package/src/decorator/ActivityGrouping/types.ts +1 -0
  51. package/src/decorator/DecoratorComposer.tsx +22 -0
  52. package/src/decorator/internal/InternalDecoratorComposer.tsx +61 -0
  53. package/src/decorator/internal/LowPriorityDecoratorComposer.tsx +19 -0
  54. package/src/decorator/private/DecoratorComposerContext.ts +16 -0
  55. package/src/decorator/private/PassthroughFallback.tsx +12 -0
  56. package/src/decorator/private/templateMiddleware.test.tsx +5 -1
  57. package/src/decorator/private/templateMiddleware.ts +11 -9
  58. package/src/decorator/types.ts +15 -0
  59. package/src/decorator.ts +16 -0
  60. package/src/defaultStyleOptions.ts +26 -5
  61. package/src/hooks/Composer.tsx +59 -45
  62. package/src/hooks/index.ts +5 -1
  63. package/src/hooks/internal/SendBoxMiddleware.ts +3 -1
  64. package/src/hooks/internal/SendBoxToolbarMiddleware.ts +3 -1
  65. package/src/hooks/internal/Tracker.ts +1 -1
  66. package/src/hooks/internal/WebChatAPIContext.ts +12 -5
  67. package/src/hooks/middleware/concatMiddleware.spec.js +20 -0
  68. package/src/hooks/middleware/concatMiddleware.ts +6 -5
  69. package/src/hooks/private/reduceIterable.spec.ts +0 -2
  70. package/src/hooks/useActiveTyping.ts +3 -2
  71. package/src/hooks/useDisabled.ts +8 -2
  72. package/src/hooks/useSuggestedActions.ts +17 -4
  73. package/src/hooks/useUIState.ts +18 -0
  74. package/src/hooks/validation/uiState.parseUIState.spec.ts +21 -0
  75. package/src/hooks/validation/uiState.ts +10 -0
  76. package/src/internal.ts +3 -1
  77. package/src/localization/ar-SA.json +20 -16
  78. package/src/localization/bg-BG.json +20 -16
  79. package/src/localization/ca-ES.json +20 -16
  80. package/src/localization/cs-CZ.json +20 -16
  81. package/src/localization/da-DK.json +20 -16
  82. package/src/localization/de-DE.json +20 -16
  83. package/src/localization/el-GR.json +20 -16
  84. package/src/localization/en-US.json +21 -19
  85. package/src/localization/es-ES.json +20 -16
  86. package/src/localization/et-EE.json +20 -16
  87. package/src/localization/eu-ES.json +20 -16
  88. package/src/localization/fi-FI.json +20 -16
  89. package/src/localization/fr-FR.json +20 -16
  90. package/src/localization/gl-ES.json +20 -16
  91. package/src/localization/he-IL.json +20 -16
  92. package/src/localization/hi-IN.json +20 -16
  93. package/src/localization/hr-HR.json +20 -16
  94. package/src/localization/hu-HU.json +20 -16
  95. package/src/localization/id-ID.json +20 -16
  96. package/src/localization/it-IT.json +20 -16
  97. package/src/localization/ja-JP.json +20 -16
  98. package/src/localization/kk-KZ.json +20 -16
  99. package/src/localization/ko-KR.json +20 -16
  100. package/src/localization/lt-LT.json +20 -16
  101. package/src/localization/lv-LV.json +20 -16
  102. package/src/localization/ms-MY.json +20 -16
  103. package/src/localization/nb-NO.json +20 -16
  104. package/src/localization/nl-NL.json +20 -16
  105. package/src/localization/pl-PL.json +20 -16
  106. package/src/localization/pt-BR.json +20 -16
  107. package/src/localization/pt-PT.json +20 -16
  108. package/src/localization/ro-RO.json +20 -16
  109. package/src/localization/ru-RU.json +20 -16
  110. package/src/localization/sk-SK.json +20 -16
  111. package/src/localization/sl-SI.json +20 -16
  112. package/src/localization/sr-Cyrl-CS.json +20 -16
  113. package/src/localization/sr-Latn-CS.json +20 -16
  114. package/src/localization/sv-SE.json +20 -16
  115. package/src/localization/th-TH.json +20 -16
  116. package/src/localization/tr-TR.json +20 -16
  117. package/src/localization/uk-UA.json +20 -16
  118. package/src/localization/vi-VN.json +20 -16
  119. package/src/localization/yue.json +1 -16
  120. package/src/localization/zh-CN.json +22 -18
  121. package/src/localization/zh-HK.json +20 -16
  122. package/src/localization/zh-TW.json +20 -16
  123. package/src/normalizeStyleOptions.ts +45 -0
  124. package/src/providers/ActivityKeyer/ActivityKeyerComposer.tsx +9 -26
  125. package/src/providers/ActivityKeyer/private/someIterable.spec.ts +0 -2
  126. package/src/providers/ActivitySendStatus/ActivitySendStatusComposer.tsx +2 -2
  127. package/src/providers/ActivityTyping/ActivityTypingComposer.tsx +144 -59
  128. package/src/providers/ActivityTyping/private/useReduceActivities.spec.tsx +231 -0
  129. package/src/providers/ActivityTyping/private/useReduceActivities.ts +48 -0
  130. package/src/providers/GroupActivities/GroupActivitiesComposer.tsx +115 -0
  131. package/src/providers/GroupActivities/private/GroupActivitiesContext.ts +23 -0
  132. package/src/providers/GroupActivities/private/createDefaultGroupActivitiesMiddleware.ts +93 -0
  133. package/src/providers/GroupActivities/private/isGroupingValid.ts +41 -0
  134. package/src/providers/GroupActivities/private/useGroupActivitiesContext.ts +6 -0
  135. package/src/providers/GroupActivities/useGroupActivities.ts +20 -0
  136. package/src/providers/GroupActivities/useGroupActivitiesByName.ts +17 -0
  137. package/src/tsconfig.json +1 -5
  138. package/src/types/AttachmentForScreenReaderMiddleware.ts +9 -2
  139. package/src/types/AvatarMiddleware.ts +5 -1
  140. package/src/types/CardActionMiddleware.ts +2 -0
  141. package/src/types/ComponentMiddleware.ts +1 -1
  142. package/src/types/GroupActivitiesMiddleware.ts +7 -11
  143. package/src/utils/validateProps.spec.ts +74 -0
  144. package/src/utils/validateProps.ts +56 -0
  145. package/dist/chunk-2S76JUVM.mjs +0 -3
  146. package/dist/chunk-2S76JUVM.mjs.map +0 -1
  147. package/dist/chunk-J6D5YEY6.mjs +0 -3
  148. package/dist/chunk-J6D5YEY6.mjs.map +0 -1
  149. package/dist/chunk-ZAMHKQQC.mjs +0 -3
  150. package/dist/chunk-ZAMHKQQC.mjs.map +0 -1
  151. package/lib/StyleOptions.d.ts +0 -697
  152. package/lib/StyleOptions.d.ts.map +0 -1
  153. package/lib/StyleOptions.js +0 -2
  154. package/lib/decorator/index.d.ts +0 -5
  155. package/lib/decorator/index.d.ts.map +0 -1
  156. package/lib/decorator/index.js +0 -28
  157. package/lib/decorator/private/ActivityBorderDecoratorMiddleware.d.ts +0 -27
  158. package/lib/decorator/private/ActivityBorderDecoratorMiddleware.d.ts.map +0 -1
  159. package/lib/decorator/private/ActivityBorderDecoratorMiddleware.js +0 -19
  160. package/lib/decorator/private/ActivityDecorator.d.ts +0 -9
  161. package/lib/decorator/private/ActivityDecorator.d.ts.map +0 -1
  162. package/lib/decorator/private/ActivityDecorator.js +0 -36
  163. package/lib/decorator/private/DecoratorComposer.d.ts +0 -3
  164. package/lib/decorator/private/DecoratorComposer.d.ts.map +0 -1
  165. package/lib/decorator/private/DecoratorComposer.js +0 -13
  166. package/lib/decorator/private/activityDecoratorRequest.d.ts +0 -6
  167. package/lib/decorator/private/activityDecoratorRequest.d.ts.map +0 -1
  168. package/lib/decorator/private/activityDecoratorRequest.js +0 -2
  169. package/lib/decorator/private/createDecoratorComposer.d.ts +0 -11
  170. package/lib/decorator/private/createDecoratorComposer.d.ts.map +0 -1
  171. package/lib/decorator/private/createDecoratorComposer.js +0 -27
  172. package/lib/decorator/private/templateMiddleware.d.ts +0 -30
  173. package/lib/decorator/private/templateMiddleware.d.ts.map +0 -1
  174. package/lib/decorator/private/templateMiddleware.js +0 -53
  175. package/lib/decorator/private/templateMiddleware.test.d.ts +0 -3
  176. package/lib/decorator/private/templateMiddleware.test.d.ts.map +0 -1
  177. package/lib/defaultStyleOptions.d.ts +0 -4
  178. package/lib/defaultStyleOptions.d.ts.map +0 -1
  179. package/lib/defaultStyleOptions.js +0 -277
  180. package/lib/external/PrecompiledGlobalize.js +0 -6361
  181. package/lib/hooks/Composer.d.ts +0 -88
  182. package/lib/hooks/Composer.d.ts.map +0 -1
  183. package/lib/hooks/Composer.js +0 -605
  184. package/lib/hooks/index.d.ts +0 -73
  185. package/lib/hooks/index.d.ts.map +0 -1
  186. package/lib/hooks/index.js +0 -504
  187. package/lib/hooks/internal/ErrorBox.js +0 -47
  188. package/lib/hooks/internal/SendBoxMiddleware.d.ts +0 -37
  189. package/lib/hooks/internal/SendBoxMiddleware.d.ts.map +0 -1
  190. package/lib/hooks/internal/SendBoxMiddleware.js +0 -17
  191. package/lib/hooks/internal/SendBoxToolbarMiddleware.d.ts +0 -37
  192. package/lib/hooks/internal/SendBoxToolbarMiddleware.d.ts.map +0 -1
  193. package/lib/hooks/internal/SendBoxToolbarMiddleware.js +0 -17
  194. package/lib/hooks/internal/Tracker.d.ts +0 -4
  195. package/lib/hooks/internal/Tracker.d.ts.map +0 -1
  196. package/lib/hooks/internal/Tracker.js +0 -15
  197. package/lib/hooks/internal/WebChatAPIContext.d.ts +0 -80
  198. package/lib/hooks/internal/WebChatAPIContext.d.ts.map +0 -1
  199. package/lib/hooks/internal/WebChatAPIContext.js +0 -12
  200. package/lib/hooks/internal/WebChatReduxContext.js +0 -17
  201. package/lib/hooks/internal/defaultSelectVoice.js +0 -28
  202. package/lib/hooks/internal/private/templateMiddleware.d.ts +0 -3
  203. package/lib/hooks/internal/private/templateMiddleware.d.ts.map +0 -1
  204. package/lib/hooks/internal/private/templateMiddleware.js +0 -12
  205. package/lib/hooks/internal/useCreateActivityRendererInternal.d.ts +0 -4
  206. package/lib/hooks/internal/useCreateActivityRendererInternal.d.ts.map +0 -1
  207. package/lib/hooks/internal/useCreateActivityRendererInternal.js +0 -37
  208. package/lib/hooks/internal/useDebugDeps.js +0 -39
  209. package/lib/hooks/internal/useDirFromProps.js +0 -12
  210. package/lib/hooks/internal/useErrorBoxClass.js +0 -14
  211. package/lib/hooks/internal/useForceRender.js +0 -24
  212. package/lib/hooks/internal/useLocalizedGlobalize.js +0 -12
  213. package/lib/hooks/internal/useLocalizedStrings.js +0 -14
  214. package/lib/hooks/internal/useMarkActivity.js +0 -12
  215. package/lib/hooks/internal/usePrevious.d.ts +0 -3
  216. package/lib/hooks/internal/usePrevious.d.ts.map +0 -1
  217. package/lib/hooks/internal/usePrevious.js +0 -15
  218. package/lib/hooks/internal/useReadTelemetryDimensions.js +0 -20
  219. package/lib/hooks/internal/useSetDictateState.d.ts +0 -2
  220. package/lib/hooks/internal/useSetDictateState.d.ts.map +0 -1
  221. package/lib/hooks/internal/useSetDictateState.js +0 -12
  222. package/lib/hooks/internal/useTimer.d.ts +0 -5
  223. package/lib/hooks/internal/useTimer.d.ts.map +0 -1
  224. package/lib/hooks/internal/useTimer.js +0 -43
  225. package/lib/hooks/internal/useTracker.js +0 -42
  226. package/lib/hooks/internal/useValueRef.d.ts +0 -3
  227. package/lib/hooks/internal/useValueRef.d.ts.map +0 -1
  228. package/lib/hooks/internal/useValueRef.js +0 -22
  229. package/lib/hooks/internal/useWebChatAPIContext.d.ts +0 -83
  230. package/lib/hooks/internal/useWebChatAPIContext.d.ts.map +0 -1
  231. package/lib/hooks/internal/useWebChatAPIContext.js +0 -17
  232. package/lib/hooks/middleware/UserlandBoundary.js +0 -48
  233. package/lib/hooks/middleware/applyMiddleware.js +0 -122
  234. package/lib/hooks/middleware/concatMiddleware.d.ts +0 -6
  235. package/lib/hooks/middleware/concatMiddleware.d.ts.map +0 -1
  236. package/lib/hooks/middleware/concatMiddleware.js +0 -33
  237. package/lib/hooks/middleware/createDefaultCardActionMiddleware.d.ts +0 -3
  238. package/lib/hooks/middleware/createDefaultCardActionMiddleware.d.ts.map +0 -1
  239. package/lib/hooks/middleware/createDefaultCardActionMiddleware.js +0 -43
  240. package/lib/hooks/middleware/createDefaultGroupActivitiesMiddleware.d.ts +0 -7
  241. package/lib/hooks/middleware/createDefaultGroupActivitiesMiddleware.d.ts.map +0 -1
  242. package/lib/hooks/middleware/createDefaultGroupActivitiesMiddleware.js +0 -68
  243. package/lib/hooks/private/numberWithInfinity.d.ts +0 -3
  244. package/lib/hooks/private/numberWithInfinity.d.ts.map +0 -1
  245. package/lib/hooks/private/numberWithInfinity.js +0 -17
  246. package/lib/hooks/private/numberWithInfinity.spec.d.ts +0 -2
  247. package/lib/hooks/private/numberWithInfinity.spec.d.ts.map +0 -1
  248. package/lib/hooks/private/reduceIterable.d.ts +0 -2
  249. package/lib/hooks/private/reduceIterable.d.ts.map +0 -1
  250. package/lib/hooks/private/reduceIterable.js +0 -26
  251. package/lib/hooks/private/reduceIterable.spec.d.ts +0 -2
  252. package/lib/hooks/private/reduceIterable.spec.d.ts.map +0 -1
  253. package/lib/hooks/useActiveTyping.d.ts +0 -4
  254. package/lib/hooks/useActiveTyping.d.ts.map +0 -1
  255. package/lib/hooks/useActiveTyping.js +0 -81
  256. package/lib/hooks/useActivities.d.ts +0 -3
  257. package/lib/hooks/useActivities.d.ts.map +0 -1
  258. package/lib/hooks/useActivities.js +0 -14
  259. package/lib/hooks/useActivityKeys.d.ts +0 -3
  260. package/lib/hooks/useActivityKeys.d.ts.map +0 -1
  261. package/lib/hooks/useActivityKeys.js +0 -11
  262. package/lib/hooks/useActivityKeysByRead.d.ts +0 -3
  263. package/lib/hooks/useActivityKeysByRead.d.ts.map +0 -1
  264. package/lib/hooks/useActivityKeysByRead.js +0 -11
  265. package/lib/hooks/useAvatarForBot.d.ts +0 -5
  266. package/lib/hooks/useAvatarForBot.d.ts.map +0 -1
  267. package/lib/hooks/useAvatarForBot.js +0 -26
  268. package/lib/hooks/useAvatarForUser.d.ts +0 -5
  269. package/lib/hooks/useAvatarForUser.d.ts.map +0 -1
  270. package/lib/hooks/useAvatarForUser.js +0 -26
  271. package/lib/hooks/useByteFormatter.d.ts +0 -2
  272. package/lib/hooks/useByteFormatter.d.ts.map +0 -1
  273. package/lib/hooks/useByteFormatter.js +0 -43
  274. package/lib/hooks/useConnectivityStatus.d.ts +0 -2
  275. package/lib/hooks/useConnectivityStatus.d.ts.map +0 -1
  276. package/lib/hooks/useConnectivityStatus.js +0 -14
  277. package/lib/hooks/useCreateActivityRenderer.d.ts +0 -3
  278. package/lib/hooks/useCreateActivityRenderer.d.ts.map +0 -1
  279. package/lib/hooks/useCreateActivityRenderer.js +0 -14
  280. package/lib/hooks/useCreateActivityStatusRenderer.d.ts +0 -10
  281. package/lib/hooks/useCreateActivityStatusRenderer.d.ts.map +0 -1
  282. package/lib/hooks/useCreateActivityStatusRenderer.js +0 -72
  283. package/lib/hooks/useCreateAttachmentForScreenReaderRenderer.d.ts +0 -3
  284. package/lib/hooks/useCreateAttachmentForScreenReaderRenderer.d.ts.map +0 -1
  285. package/lib/hooks/useCreateAttachmentForScreenReaderRenderer.js +0 -12
  286. package/lib/hooks/useCreateAvatarRenderer.d.ts +0 -6
  287. package/lib/hooks/useCreateAvatarRenderer.d.ts.map +0 -1
  288. package/lib/hooks/useCreateAvatarRenderer.js +0 -44
  289. package/lib/hooks/useCreateScrollToEndButtonRenderer.d.ts +0 -3
  290. package/lib/hooks/useCreateScrollToEndButtonRenderer.d.ts.map +0 -1
  291. package/lib/hooks/useCreateScrollToEndButtonRenderer.js +0 -12
  292. package/lib/hooks/useDateFormatter.d.ts +0 -2
  293. package/lib/hooks/useDateFormatter.d.ts.map +0 -1
  294. package/lib/hooks/useDateFormatter.js +0 -35
  295. package/lib/hooks/useDebouncedNotifications.d.ts +0 -13
  296. package/lib/hooks/useDebouncedNotifications.d.ts.map +0 -1
  297. package/lib/hooks/useDebouncedNotifications.js +0 -118
  298. package/lib/hooks/useDictateInterims.d.ts +0 -2
  299. package/lib/hooks/useDictateInterims.d.ts.map +0 -1
  300. package/lib/hooks/useDictateInterims.js +0 -16
  301. package/lib/hooks/useDictateState.d.ts +0 -2
  302. package/lib/hooks/useDictateState.d.ts.map +0 -1
  303. package/lib/hooks/useDictateState.js +0 -15
  304. package/lib/hooks/useDirection.d.ts +0 -2
  305. package/lib/hooks/useDirection.d.ts.map +0 -1
  306. package/lib/hooks/useDirection.js +0 -38
  307. package/lib/hooks/useDisabled.d.ts +0 -2
  308. package/lib/hooks/useDisabled.d.ts.map +0 -1
  309. package/lib/hooks/useDisabled.js +0 -12
  310. package/lib/hooks/useDismissNotification.d.ts +0 -2
  311. package/lib/hooks/useDismissNotification.d.ts.map +0 -1
  312. package/lib/hooks/useDismissNotification.js +0 -12
  313. package/lib/hooks/useEmitTypingIndicator.d.ts +0 -2
  314. package/lib/hooks/useEmitTypingIndicator.d.ts.map +0 -1
  315. package/lib/hooks/useEmitTypingIndicator.js +0 -12
  316. package/lib/hooks/useGetActivitiesByKey.d.ts +0 -3
  317. package/lib/hooks/useGetActivitiesByKey.d.ts.map +0 -1
  318. package/lib/hooks/useGetActivitiesByKey.js +0 -11
  319. package/lib/hooks/useGetActivityByKey.d.ts +0 -3
  320. package/lib/hooks/useGetActivityByKey.d.ts.map +0 -1
  321. package/lib/hooks/useGetActivityByKey.js +0 -11
  322. package/lib/hooks/useGetHasAcknowledgedByActivityKey.d.ts +0 -3
  323. package/lib/hooks/useGetHasAcknowledgedByActivityKey.d.ts.map +0 -1
  324. package/lib/hooks/useGetHasAcknowledgedByActivityKey.js +0 -11
  325. package/lib/hooks/useGetKeyByActivity.d.ts +0 -3
  326. package/lib/hooks/useGetKeyByActivity.d.ts.map +0 -1
  327. package/lib/hooks/useGetKeyByActivity.js +0 -11
  328. package/lib/hooks/useGetKeyByActivityId.d.ts +0 -3
  329. package/lib/hooks/useGetKeyByActivityId.d.ts.map +0 -1
  330. package/lib/hooks/useGetKeyByActivityId.js +0 -11
  331. package/lib/hooks/useGetSendTimeoutForActivity.d.ts +0 -5
  332. package/lib/hooks/useGetSendTimeoutForActivity.d.ts.map +0 -1
  333. package/lib/hooks/useGetSendTimeoutForActivity.js +0 -33
  334. package/lib/hooks/useGrammars.d.ts +0 -2
  335. package/lib/hooks/useGrammars.d.ts.map +0 -1
  336. package/lib/hooks/useGrammars.js +0 -12
  337. package/lib/hooks/useGroupActivities.d.ts +0 -8
  338. package/lib/hooks/useGroupActivities.d.ts.map +0 -1
  339. package/lib/hooks/useGroupActivities.js +0 -12
  340. package/lib/hooks/useGroupTimestamp.d.ts +0 -2
  341. package/lib/hooks/useGroupTimestamp.d.ts.map +0 -1
  342. package/lib/hooks/useGroupTimestamp.js +0 -21
  343. package/lib/hooks/useLanguage.d.ts +0 -2
  344. package/lib/hooks/useLanguage.d.ts.map +0 -1
  345. package/lib/hooks/useLanguage.js +0 -19
  346. package/lib/hooks/useLastAcknowledgedActivityKey.d.ts +0 -3
  347. package/lib/hooks/useLastAcknowledgedActivityKey.d.ts.map +0 -1
  348. package/lib/hooks/useLastAcknowledgedActivityKey.js +0 -11
  349. package/lib/hooks/useLastReadActivityKey.d.ts +0 -3
  350. package/lib/hooks/useLastReadActivityKey.d.ts.map +0 -1
  351. package/lib/hooks/useLastReadActivityKey.js +0 -11
  352. package/lib/hooks/useLocalizer.d.ts +0 -13
  353. package/lib/hooks/useLocalizer.d.ts.map +0 -1
  354. package/lib/hooks/useLocalizer.js +0 -75
  355. package/lib/hooks/useMarkActivityAsSpoken.d.ts +0 -3
  356. package/lib/hooks/useMarkActivityAsSpoken.d.ts.map +0 -1
  357. package/lib/hooks/useMarkActivityAsSpoken.js +0 -16
  358. package/lib/hooks/useMarkActivityKeyAsRead.d.ts +0 -3
  359. package/lib/hooks/useMarkActivityKeyAsRead.d.ts.map +0 -1
  360. package/lib/hooks/useMarkActivityKeyAsRead.js +0 -11
  361. package/lib/hooks/useMarkAllAsAcknowledged.d.ts +0 -3
  362. package/lib/hooks/useMarkAllAsAcknowledged.d.ts.map +0 -1
  363. package/lib/hooks/useMarkAllAsAcknowledged.js +0 -11
  364. package/lib/hooks/useNotifications.d.ts +0 -3
  365. package/lib/hooks/useNotifications.d.ts.map +0 -1
  366. package/lib/hooks/useNotifications.js +0 -14
  367. package/lib/hooks/usePerformCardAction.d.ts +0 -3
  368. package/lib/hooks/usePerformCardAction.d.ts.map +0 -1
  369. package/lib/hooks/usePerformCardAction.js +0 -12
  370. package/lib/hooks/usePonyfill.d.ts +0 -3
  371. package/lib/hooks/usePonyfill.d.ts.map +0 -1
  372. package/lib/hooks/usePonyfill.js +0 -11
  373. package/lib/hooks/usePostActivity.d.ts +0 -3
  374. package/lib/hooks/usePostActivity.d.ts.map +0 -1
  375. package/lib/hooks/usePostActivity.js +0 -12
  376. package/lib/hooks/useReferenceGrammarID.d.ts +0 -2
  377. package/lib/hooks/useReferenceGrammarID.d.ts.map +0 -1
  378. package/lib/hooks/useReferenceGrammarID.js +0 -14
  379. package/lib/hooks/useRelativeTimeFormatter.d.ts +0 -2
  380. package/lib/hooks/useRelativeTimeFormatter.d.ts.map +0 -1
  381. package/lib/hooks/useRelativeTimeFormatter.js +0 -61
  382. package/lib/hooks/useRenderAttachment.d.ts +0 -3
  383. package/lib/hooks/useRenderAttachment.d.ts.map +0 -1
  384. package/lib/hooks/useRenderAttachment.js +0 -14
  385. package/lib/hooks/useRenderToast.d.ts +0 -3
  386. package/lib/hooks/useRenderToast.d.ts.map +0 -1
  387. package/lib/hooks/useRenderToast.js +0 -12
  388. package/lib/hooks/useRenderTypingIndicator.d.ts +0 -3
  389. package/lib/hooks/useRenderTypingIndicator.d.ts.map +0 -1
  390. package/lib/hooks/useRenderTypingIndicator.js +0 -12
  391. package/lib/hooks/useSendBoxAttachments.d.ts +0 -6
  392. package/lib/hooks/useSendBoxAttachments.d.ts.map +0 -1
  393. package/lib/hooks/useSendBoxAttachments.js +0 -23
  394. package/lib/hooks/useSendBoxValue.d.ts +0 -2
  395. package/lib/hooks/useSendBoxValue.d.ts.map +0 -1
  396. package/lib/hooks/useSendBoxValue.js +0 -16
  397. package/lib/hooks/useSendEvent.d.ts +0 -2
  398. package/lib/hooks/useSendEvent.d.ts.map +0 -1
  399. package/lib/hooks/useSendEvent.js +0 -12
  400. package/lib/hooks/useSendFiles.d.ts +0 -10
  401. package/lib/hooks/useSendFiles.d.ts.map +0 -1
  402. package/lib/hooks/useSendFiles.js +0 -35
  403. package/lib/hooks/useSendMessage.d.ts +0 -6
  404. package/lib/hooks/useSendMessage.d.ts.map +0 -1
  405. package/lib/hooks/useSendMessage.js +0 -33
  406. package/lib/hooks/useSendMessageBack.d.ts +0 -2
  407. package/lib/hooks/useSendMessageBack.d.ts.map +0 -1
  408. package/lib/hooks/useSendMessageBack.js +0 -12
  409. package/lib/hooks/useSendPostBack.d.ts +0 -2
  410. package/lib/hooks/useSendPostBack.d.ts.map +0 -1
  411. package/lib/hooks/useSendPostBack.js +0 -12
  412. package/lib/hooks/useSendStatusByActivityKey.d.ts +0 -22
  413. package/lib/hooks/useSendStatusByActivityKey.d.ts.map +0 -1
  414. package/lib/hooks/useSendStatusByActivityKey.js +0 -31
  415. package/lib/hooks/useSendTimeoutForActivity.d.ts +0 -4
  416. package/lib/hooks/useSendTimeoutForActivity.d.ts.map +0 -1
  417. package/lib/hooks/useSendTimeoutForActivity.js +0 -22
  418. package/lib/hooks/useSendTypingIndicator.d.ts +0 -2
  419. package/lib/hooks/useSendTypingIndicator.d.ts.map +0 -1
  420. package/lib/hooks/useSendTypingIndicator.js +0 -14
  421. package/lib/hooks/useSetNotification.d.ts +0 -3
  422. package/lib/hooks/useSetNotification.d.ts.map +0 -1
  423. package/lib/hooks/useSetNotification.js +0 -12
  424. package/lib/hooks/useShouldSpeakIncomingActivity.d.ts +0 -2
  425. package/lib/hooks/useShouldSpeakIncomingActivity.d.ts.map +0 -1
  426. package/lib/hooks/useShouldSpeakIncomingActivity.js +0 -22
  427. package/lib/hooks/useStartDictate.d.ts +0 -2
  428. package/lib/hooks/useStartDictate.d.ts.map +0 -1
  429. package/lib/hooks/useStartDictate.js +0 -12
  430. package/lib/hooks/useStopDictate.d.ts +0 -2
  431. package/lib/hooks/useStopDictate.d.ts.map +0 -1
  432. package/lib/hooks/useStopDictate.js +0 -12
  433. package/lib/hooks/useStyleOptions.d.ts +0 -3
  434. package/lib/hooks/useStyleOptions.d.ts.map +0 -1
  435. package/lib/hooks/useStyleOptions.js +0 -12
  436. package/lib/hooks/useSubmitSendBox.d.ts +0 -4
  437. package/lib/hooks/useSubmitSendBox.d.ts.map +0 -1
  438. package/lib/hooks/useSubmitSendBox.js +0 -49
  439. package/lib/hooks/useSuggestedActions.d.ts +0 -3
  440. package/lib/hooks/useSuggestedActions.d.ts.map +0 -1
  441. package/lib/hooks/useSuggestedActions.js +0 -25
  442. package/lib/hooks/useTimeoutForSend.d.ts +0 -3
  443. package/lib/hooks/useTimeoutForSend.d.ts.map +0 -1
  444. package/lib/hooks/useTimeoutForSend.js +0 -21
  445. package/lib/hooks/useTrackDimension.d.ts +0 -2
  446. package/lib/hooks/useTrackDimension.d.ts.map +0 -1
  447. package/lib/hooks/useTrackDimension.js +0 -14
  448. package/lib/hooks/useTrackEvent.d.ts +0 -10
  449. package/lib/hooks/useTrackEvent.d.ts.map +0 -1
  450. package/lib/hooks/useTrackEvent.js +0 -51
  451. package/lib/hooks/useTrackException.d.ts +0 -2
  452. package/lib/hooks/useTrackException.d.ts.map +0 -1
  453. package/lib/hooks/useTrackException.js +0 -31
  454. package/lib/hooks/useTrackTiming.d.ts +0 -2
  455. package/lib/hooks/useTrackTiming.d.ts.map +0 -1
  456. package/lib/hooks/useTrackTiming.js +0 -93
  457. package/lib/hooks/useUserID.d.ts +0 -2
  458. package/lib/hooks/useUserID.d.ts.map +0 -1
  459. package/lib/hooks/useUserID.js +0 -12
  460. package/lib/hooks/useUsername.d.ts +0 -2
  461. package/lib/hooks/useUsername.d.ts.map +0 -1
  462. package/lib/hooks/useUsername.js +0 -12
  463. package/lib/hooks/useVoiceSelector.d.ts +0 -2
  464. package/lib/hooks/useVoiceSelector.d.ts.map +0 -1
  465. package/lib/hooks/useVoiceSelector.js +0 -16
  466. package/lib/hooks/utils/ErrorBoundary.js +0 -68
  467. package/lib/hooks/utils/observableToPromise.d.ts +0 -3
  468. package/lib/hooks/utils/observableToPromise.d.ts.map +0 -1
  469. package/lib/hooks/utils/observableToPromise.js +0 -28
  470. package/lib/index.d.ts +0 -37
  471. package/lib/index.d.ts.map +0 -1
  472. package/lib/index.js +0 -88
  473. package/lib/internal.d.ts +0 -3
  474. package/lib/internal.d.ts.map +0 -1
  475. package/lib/internal.js +0 -14
  476. package/lib/localization/Localize.d.ts +0 -4
  477. package/lib/localization/Localize.d.ts.map +0 -1
  478. package/lib/localization/Localize.js +0 -50
  479. package/lib/localization/ar-EG.json +0 -42
  480. package/lib/localization/ar-JO.json +0 -45
  481. package/lib/localization/ar-SA.json +0 -112
  482. package/lib/localization/bg-BG.json +0 -112
  483. package/lib/localization/ca-ES.json +0 -112
  484. package/lib/localization/cs-CZ.json +0 -112
  485. package/lib/localization/da-DK.json +0 -112
  486. package/lib/localization/de-DE.json +0 -112
  487. package/lib/localization/el-GR.json +0 -112
  488. package/lib/localization/en-US.json +0 -183
  489. package/lib/localization/es-ES.json +0 -112
  490. package/lib/localization/et-EE.json +0 -112
  491. package/lib/localization/eu-ES.json +0 -112
  492. package/lib/localization/fi-FI.json +0 -112
  493. package/lib/localization/fr-FR.json +0 -112
  494. package/lib/localization/getAllLocalizedStrings.d.ts +0 -6
  495. package/lib/localization/getAllLocalizedStrings.d.ts.map +0 -1
  496. package/lib/localization/getAllLocalizedStrings.js +0 -117
  497. package/lib/localization/getRTLList.d.ts +0 -2
  498. package/lib/localization/getRTLList.d.ts.map +0 -1
  499. package/lib/localization/getRTLList.js +0 -46
  500. package/lib/localization/gl-ES.json +0 -112
  501. package/lib/localization/he-IL.json +0 -112
  502. package/lib/localization/hi-IN.json +0 -112
  503. package/lib/localization/hr-HR.json +0 -112
  504. package/lib/localization/hu-HU.json +0 -112
  505. package/lib/localization/id-ID.json +0 -112
  506. package/lib/localization/it-IT.json +0 -112
  507. package/lib/localization/ja-JP.json +0 -112
  508. package/lib/localization/kk-KZ.json +0 -112
  509. package/lib/localization/ko-KR.json +0 -112
  510. package/lib/localization/lt-LT.json +0 -112
  511. package/lib/localization/lv-LV.json +0 -112
  512. package/lib/localization/mergeLocalizedStrings.d.ts +0 -7
  513. package/lib/localization/mergeLocalizedStrings.d.ts.map +0 -1
  514. package/lib/localization/mergeLocalizedStrings.js +0 -49
  515. package/lib/localization/ms-MY.json +0 -112
  516. package/lib/localization/nb-NO.json +0 -112
  517. package/lib/localization/nl-NL.json +0 -112
  518. package/lib/localization/overrides.json +0 -257
  519. package/lib/localization/pl-PL.json +0 -112
  520. package/lib/localization/pt-BR.json +0 -112
  521. package/lib/localization/pt-PT.json +0 -112
  522. package/lib/localization/ro-RO.json +0 -112
  523. package/lib/localization/ru-RU.json +0 -112
  524. package/lib/localization/sk-SK.json +0 -112
  525. package/lib/localization/sl-SI.json +0 -112
  526. package/lib/localization/sl-SL.json +0 -3
  527. package/lib/localization/sr-Cyrl-CS.json +0 -112
  528. package/lib/localization/sr-Cyrl.json +0 -3
  529. package/lib/localization/sr-Latn-CS.json +0 -112
  530. package/lib/localization/sr-Latn.json +0 -3
  531. package/lib/localization/sv-SE.json +0 -112
  532. package/lib/localization/th-TH.json +0 -112
  533. package/lib/localization/tr-TR.json +0 -112
  534. package/lib/localization/uk-UA.json +0 -112
  535. package/lib/localization/vi-VN.json +0 -112
  536. package/lib/localization/yue.json +0 -115
  537. package/lib/localization/zh-CN.json +0 -112
  538. package/lib/localization/zh-HK.json +0 -112
  539. package/lib/localization/zh-TW.json +0 -112
  540. package/lib/normalizeStyleOptions.d.ts +0 -3
  541. package/lib/normalizeStyleOptions.d.ts.map +0 -1
  542. package/lib/normalizeStyleOptions.js +0 -147
  543. package/lib/patchStyleOptionsFromDeprecatedProps.js +0 -21
  544. package/lib/providers/ActivityAcknowledgement/ActivityAcknowledgementComposer.d.ts +0 -6
  545. package/lib/providers/ActivityAcknowledgement/ActivityAcknowledgementComposer.d.ts.map +0 -1
  546. package/lib/providers/ActivityAcknowledgement/ActivityAcknowledgementComposer.js +0 -153
  547. package/lib/providers/ActivityAcknowledgement/private/Context.d.ts +0 -13
  548. package/lib/providers/ActivityAcknowledgement/private/Context.d.ts.map +0 -1
  549. package/lib/providers/ActivityAcknowledgement/private/Context.js +0 -14
  550. package/lib/providers/ActivityAcknowledgement/private/useContext.d.ts +0 -3
  551. package/lib/providers/ActivityAcknowledgement/private/useContext.d.ts.map +0 -1
  552. package/lib/providers/ActivityAcknowledgement/private/useContext.js +0 -18
  553. package/lib/providers/ActivityAcknowledgement/useActivityKeysByRead.d.ts +0 -5
  554. package/lib/providers/ActivityAcknowledgement/useActivityKeysByRead.d.ts.map +0 -1
  555. package/lib/providers/ActivityAcknowledgement/useActivityKeysByRead.js +0 -15
  556. package/lib/providers/ActivityAcknowledgement/useGetHasAcknowledgedByActivityKey.d.ts +0 -2
  557. package/lib/providers/ActivityAcknowledgement/useGetHasAcknowledgedByActivityKey.d.ts.map +0 -1
  558. package/lib/providers/ActivityAcknowledgement/useGetHasAcknowledgedByActivityKey.js +0 -12
  559. package/lib/providers/ActivityAcknowledgement/useLastAcknowledgedActivityKey.d.ts +0 -2
  560. package/lib/providers/ActivityAcknowledgement/useLastAcknowledgedActivityKey.d.ts.map +0 -1
  561. package/lib/providers/ActivityAcknowledgement/useLastAcknowledgedActivityKey.js +0 -12
  562. package/lib/providers/ActivityAcknowledgement/useLastReadActivityKey.d.ts +0 -2
  563. package/lib/providers/ActivityAcknowledgement/useLastReadActivityKey.d.ts.map +0 -1
  564. package/lib/providers/ActivityAcknowledgement/useLastReadActivityKey.js +0 -12
  565. package/lib/providers/ActivityAcknowledgement/useMarkActivityKeyAsRead.d.ts +0 -2
  566. package/lib/providers/ActivityAcknowledgement/useMarkActivityKeyAsRead.d.ts.map +0 -1
  567. package/lib/providers/ActivityAcknowledgement/useMarkActivityKeyAsRead.js +0 -12
  568. package/lib/providers/ActivityAcknowledgement/useMarkAllAsAcknowledged.d.ts +0 -2
  569. package/lib/providers/ActivityAcknowledgement/useMarkAllAsAcknowledged.d.ts.map +0 -1
  570. package/lib/providers/ActivityAcknowledgement/useMarkAllAsAcknowledged.js +0 -12
  571. package/lib/providers/ActivityKeyer/ActivityKeyerComposer.d.ts +0 -20
  572. package/lib/providers/ActivityKeyer/ActivityKeyerComposer.d.ts.map +0 -1
  573. package/lib/providers/ActivityKeyer/ActivityKeyerComposer.js +0 -149
  574. package/lib/providers/ActivityKeyer/private/Context.d.ts +0 -13
  575. package/lib/providers/ActivityKeyer/private/Context.d.ts.map +0 -1
  576. package/lib/providers/ActivityKeyer/private/Context.js +0 -10
  577. package/lib/providers/ActivityKeyer/private/getActivityId.d.ts +0 -3
  578. package/lib/providers/ActivityKeyer/private/getActivityId.d.ts.map +0 -1
  579. package/lib/providers/ActivityKeyer/private/getActivityId.js +0 -10
  580. package/lib/providers/ActivityKeyer/private/getClientActivityId.d.ts +0 -3
  581. package/lib/providers/ActivityKeyer/private/getClientActivityId.d.ts.map +0 -1
  582. package/lib/providers/ActivityKeyer/private/getClientActivityId.js +0 -11
  583. package/lib/providers/ActivityKeyer/private/lastOf.d.ts +0 -2
  584. package/lib/providers/ActivityKeyer/private/lastOf.d.ts.map +0 -1
  585. package/lib/providers/ActivityKeyer/private/lastOf.js +0 -10
  586. package/lib/providers/ActivityKeyer/private/lastOf.spec.d.ts +0 -2
  587. package/lib/providers/ActivityKeyer/private/lastOf.spec.d.ts.map +0 -1
  588. package/lib/providers/ActivityKeyer/private/someIterable.d.ts +0 -2
  589. package/lib/providers/ActivityKeyer/private/someIterable.d.ts.map +0 -1
  590. package/lib/providers/ActivityKeyer/private/someIterable.js +0 -27
  591. package/lib/providers/ActivityKeyer/private/someIterable.spec.d.ts +0 -2
  592. package/lib/providers/ActivityKeyer/private/someIterable.spec.d.ts.map +0 -1
  593. package/lib/providers/ActivityKeyer/private/uniqueId.d.ts +0 -2
  594. package/lib/providers/ActivityKeyer/private/uniqueId.d.ts.map +0 -1
  595. package/lib/providers/ActivityKeyer/private/uniqueId.js +0 -15
  596. package/lib/providers/ActivityKeyer/private/useContext.d.ts +0 -3
  597. package/lib/providers/ActivityKeyer/private/useContext.d.ts.map +0 -1
  598. package/lib/providers/ActivityKeyer/private/useContext.js +0 -18
  599. package/lib/providers/ActivityKeyer/useActivityKeys.d.ts +0 -2
  600. package/lib/providers/ActivityKeyer/useActivityKeys.d.ts.map +0 -1
  601. package/lib/providers/ActivityKeyer/useActivityKeys.js +0 -12
  602. package/lib/providers/ActivityKeyer/useGetActivitiesByKey.d.ts +0 -3
  603. package/lib/providers/ActivityKeyer/useGetActivitiesByKey.d.ts.map +0 -1
  604. package/lib/providers/ActivityKeyer/useGetActivitiesByKey.js +0 -12
  605. package/lib/providers/ActivityKeyer/useGetActivityByKey.d.ts +0 -3
  606. package/lib/providers/ActivityKeyer/useGetActivityByKey.d.ts.map +0 -1
  607. package/lib/providers/ActivityKeyer/useGetActivityByKey.js +0 -12
  608. package/lib/providers/ActivityKeyer/useGetKeyByActivity.d.ts +0 -3
  609. package/lib/providers/ActivityKeyer/useGetKeyByActivity.d.ts.map +0 -1
  610. package/lib/providers/ActivityKeyer/useGetKeyByActivity.js +0 -12
  611. package/lib/providers/ActivityKeyer/useGetKeyByActivityId.d.ts +0 -2
  612. package/lib/providers/ActivityKeyer/useGetKeyByActivityId.d.ts.map +0 -1
  613. package/lib/providers/ActivityKeyer/useGetKeyByActivityId.js +0 -12
  614. package/lib/providers/ActivityListener/ActivityListenerComposer.d.ts +0 -7
  615. package/lib/providers/ActivityListener/ActivityListenerComposer.d.ts.map +0 -1
  616. package/lib/providers/ActivityListener/ActivityListenerComposer.js +0 -55
  617. package/lib/providers/ActivityListener/private/Context.d.ts +0 -8
  618. package/lib/providers/ActivityListener/private/Context.d.ts.map +0 -1
  619. package/lib/providers/ActivityListener/private/Context.js +0 -15
  620. package/lib/providers/ActivityListener/private/useContext.d.ts +0 -2
  621. package/lib/providers/ActivityListener/private/useContext.d.ts.map +0 -1
  622. package/lib/providers/ActivityListener/private/useContext.js +0 -13
  623. package/lib/providers/ActivityListener/useUpsertedActivities.d.ts +0 -3
  624. package/lib/providers/ActivityListener/useUpsertedActivities.d.ts.map +0 -1
  625. package/lib/providers/ActivityListener/useUpsertedActivities.js +0 -12
  626. package/lib/providers/ActivitySendStatus/ActivitySendStatusComposer.d.ts +0 -4
  627. package/lib/providers/ActivitySendStatus/ActivitySendStatusComposer.d.ts.map +0 -1
  628. package/lib/providers/ActivitySendStatus/ActivitySendStatusComposer.js +0 -149
  629. package/lib/providers/ActivitySendStatus/private/Context.d.ts +0 -9
  630. package/lib/providers/ActivitySendStatus/private/Context.d.ts.map +0 -1
  631. package/lib/providers/ActivitySendStatus/private/Context.js +0 -13
  632. package/lib/providers/ActivitySendStatus/private/isMapEqual.d.ts +0 -7
  633. package/lib/providers/ActivitySendStatus/private/isMapEqual.d.ts.map +0 -1
  634. package/lib/providers/ActivitySendStatus/private/isMapEqual.js +0 -55
  635. package/lib/providers/ActivitySendStatus/private/useContext.d.ts +0 -3
  636. package/lib/providers/ActivitySendStatus/private/useContext.d.ts.map +0 -1
  637. package/lib/providers/ActivitySendStatus/private/useContext.js +0 -18
  638. package/lib/providers/ActivitySendStatus/useSendStatusByActivityKey.d.ts +0 -22
  639. package/lib/providers/ActivitySendStatus/useSendStatusByActivityKey.d.ts.map +0 -1
  640. package/lib/providers/ActivitySendStatus/useSendStatusByActivityKey.js +0 -31
  641. package/lib/providers/ActivitySendStatusTelemetry/ActivitySendStatusTelemetryComposer.d.ts +0 -3
  642. package/lib/providers/ActivitySendStatusTelemetry/ActivitySendStatusTelemetryComposer.d.ts.map +0 -1
  643. package/lib/providers/ActivitySendStatusTelemetry/ActivitySendStatusTelemetryComposer.js +0 -71
  644. package/lib/providers/ActivityTyping/ActivityTypingComposer.d.ts +0 -9
  645. package/lib/providers/ActivityTyping/ActivityTypingComposer.d.ts.map +0 -1
  646. package/lib/providers/ActivityTyping/ActivityTypingComposer.js +0 -98
  647. package/lib/providers/ActivityTyping/private/Context.d.ts +0 -8
  648. package/lib/providers/ActivityTyping/private/Context.d.ts.map +0 -1
  649. package/lib/providers/ActivityTyping/private/Context.js +0 -15
  650. package/lib/providers/ActivityTyping/private/useContext.d.ts +0 -3
  651. package/lib/providers/ActivityTyping/private/useContext.d.ts.map +0 -1
  652. package/lib/providers/ActivityTyping/private/useContext.js +0 -13
  653. package/lib/providers/ActivityTyping/private/useMemoWithPrevious.d.ts +0 -3
  654. package/lib/providers/ActivityTyping/private/useMemoWithPrevious.d.ts.map +0 -1
  655. package/lib/providers/ActivityTyping/private/useMemoWithPrevious.js +0 -22
  656. package/lib/providers/ActivityTyping/types/AllTyping.d.ts +0 -9
  657. package/lib/providers/ActivityTyping/types/AllTyping.d.ts.map +0 -1
  658. package/lib/providers/ActivityTyping/types/AllTyping.js +0 -2
  659. package/lib/providers/ActivityTyping/useAllTyping.d.ts +0 -3
  660. package/lib/providers/ActivityTyping/useAllTyping.d.ts.map +0 -1
  661. package/lib/providers/ActivityTyping/useAllTyping.js +0 -12
  662. package/lib/providers/Ponyfill/PonyfillComposer.d.ts +0 -17
  663. package/lib/providers/Ponyfill/PonyfillComposer.d.ts.map +0 -1
  664. package/lib/providers/Ponyfill/PonyfillComposer.js +0 -87
  665. package/lib/providers/Ponyfill/private/PonyfillContext.d.ts +0 -8
  666. package/lib/providers/Ponyfill/private/PonyfillContext.d.ts.map +0 -1
  667. package/lib/providers/Ponyfill/private/PonyfillContext.js +0 -10
  668. package/lib/providers/Ponyfill/private/useContext.d.ts +0 -6
  669. package/lib/providers/Ponyfill/private/useContext.d.ts.map +0 -1
  670. package/lib/providers/Ponyfill/private/useContext.js +0 -17
  671. package/lib/providers/Ponyfill/usePonyfill.d.ts +0 -3
  672. package/lib/providers/Ponyfill/usePonyfill.d.ts.map +0 -1
  673. package/lib/providers/Ponyfill/usePonyfill.js +0 -12
  674. package/lib/tsconfig.json +0 -18
  675. package/lib/types/ActivityMiddleware.d.ts +0 -24
  676. package/lib/types/ActivityMiddleware.d.ts.map +0 -1
  677. package/lib/types/ActivityMiddleware.js +0 -2
  678. package/lib/types/ActivityStatusMiddleware.d.ts +0 -17
  679. package/lib/types/ActivityStatusMiddleware.d.ts.map +0 -1
  680. package/lib/types/ActivityStatusMiddleware.js +0 -2
  681. package/lib/types/AttachmentForScreenReaderMiddleware.d.ts +0 -14
  682. package/lib/types/AttachmentForScreenReaderMiddleware.d.ts.map +0 -1
  683. package/lib/types/AttachmentForScreenReaderMiddleware.js +0 -2
  684. package/lib/types/AttachmentMiddleware.d.ts +0 -12
  685. package/lib/types/AttachmentMiddleware.d.ts.map +0 -1
  686. package/lib/types/AttachmentMiddleware.js +0 -2
  687. package/lib/types/AvatarMiddleware.d.ts +0 -15
  688. package/lib/types/AvatarMiddleware.d.ts.map +0 -1
  689. package/lib/types/AvatarMiddleware.js +0 -2
  690. package/lib/types/CardActionMiddleware.d.ts +0 -19
  691. package/lib/types/CardActionMiddleware.d.ts.map +0 -1
  692. package/lib/types/CardActionMiddleware.js +0 -2
  693. package/lib/types/ComponentMiddleware.d.ts +0 -31
  694. package/lib/types/ComponentMiddleware.d.ts.map +0 -1
  695. package/lib/types/ComponentMiddleware.js +0 -2
  696. package/lib/types/ContextOf.d.ts +0 -4
  697. package/lib/types/ContextOf.d.ts.map +0 -1
  698. package/lib/types/ContextOf.js +0 -2
  699. package/lib/types/FunctionMiddleware.d.ts +0 -6
  700. package/lib/types/FunctionMiddleware.d.ts.map +0 -1
  701. package/lib/types/FunctionMiddleware.js +0 -2
  702. package/lib/types/GroupActivitiesMiddleware.d.ts +0 -22
  703. package/lib/types/GroupActivitiesMiddleware.d.ts.map +0 -1
  704. package/lib/types/GroupActivitiesMiddleware.js +0 -2
  705. package/lib/types/LocalizedStrings.d.ts +0 -5
  706. package/lib/types/LocalizedStrings.d.ts.map +0 -1
  707. package/lib/types/LocalizedStrings.js +0 -2
  708. package/lib/types/Notification.d.ts +0 -10
  709. package/lib/types/Notification.d.ts.map +0 -1
  710. package/lib/types/Notification.js +0 -2
  711. package/lib/types/PrecompiledGlobalize.d.ts +0 -13
  712. package/lib/types/PrecompiledGlobalize.d.ts.map +0 -1
  713. package/lib/types/PrecompiledGlobalize.js +0 -2
  714. package/lib/types/ScrollToEndButtonMiddleware.d.ts +0 -30
  715. package/lib/types/ScrollToEndButtonMiddleware.d.ts.map +0 -1
  716. package/lib/types/ScrollToEndButtonMiddleware.js +0 -2
  717. package/lib/types/SendStatus.d.ts +0 -3
  718. package/lib/types/SendStatus.d.ts.map +0 -1
  719. package/lib/types/SendStatus.js +0 -2
  720. package/lib/types/TelemetryMeasurementEvent.d.ts +0 -31
  721. package/lib/types/TelemetryMeasurementEvent.d.ts.map +0 -1
  722. package/lib/types/TelemetryMeasurementEvent.js +0 -2
  723. package/lib/types/ToastMiddleware.d.ts +0 -11
  724. package/lib/types/ToastMiddleware.d.ts.map +0 -1
  725. package/lib/types/ToastMiddleware.js +0 -2
  726. package/lib/types/Typing.d.ts +0 -8
  727. package/lib/types/Typing.d.ts.map +0 -1
  728. package/lib/types/Typing.js +0 -2
  729. package/lib/types/TypingIndicatorMiddleware.d.ts +0 -17
  730. package/lib/types/TypingIndicatorMiddleware.d.ts.map +0 -1
  731. package/lib/types/TypingIndicatorMiddleware.js +0 -2
  732. package/lib/types/WebSpeechPonyfill.d.ts +0 -19
  733. package/lib/types/WebSpeechPonyfill.d.ts.map +0 -1
  734. package/lib/types/WebSpeechPonyfill.js +0 -2
  735. package/lib/types/WebSpeechPonyfillFactory.d.ts +0 -6
  736. package/lib/types/WebSpeechPonyfillFactory.d.ts.map +0 -1
  737. package/lib/types/WebSpeechPonyfillFactory.js +0 -2
  738. package/lib/utils/createCustomEvent.d.ts +0 -4
  739. package/lib/utils/createCustomEvent.d.ts.map +0 -1
  740. package/lib/utils/createCustomEvent.js +0 -34
  741. package/lib/utils/findLastIndex.d.ts +0 -2
  742. package/lib/utils/findLastIndex.d.ts.map +0 -1
  743. package/lib/utils/findLastIndex.js +0 -22
  744. package/lib/utils/findMin.d.ts +0 -7
  745. package/lib/utils/findMin.d.ts.map +0 -1
  746. package/lib/utils/findMin.js +0 -46
  747. package/lib/utils/freezeArray.d.ts +0 -8
  748. package/lib/utils/freezeArray.d.ts.map +0 -1
  749. package/lib/utils/freezeArray.js +0 -19
  750. package/lib/utils/isObject.js +0 -12
  751. package/lib/utils/mapMap.d.ts +0 -6
  752. package/lib/utils/mapMap.d.ts.map +0 -1
  753. package/lib/utils/mapMap.js +0 -27
  754. package/lib/utils/normalizeLanguage.d.ts +0 -2
  755. package/lib/utils/normalizeLanguage.d.ts.map +0 -1
  756. package/lib/utils/normalizeLanguage.js +0 -115
  757. package/lib/utils/randomId.d.ts +0 -2
  758. package/lib/utils/randomId.d.ts.map +0 -1
  759. package/lib/utils/randomId.js +0 -15
  760. package/lib/utils/warnOnce.d.ts +0 -2
  761. package/lib/utils/warnOnce.d.ts.map +0 -1
  762. package/lib/utils/warnOnce.js +0 -16
  763. package/src/decorator/index.ts +0 -4
  764. package/src/decorator/private/ActivityBorderDecoratorMiddleware.ts +0 -31
  765. package/src/decorator/private/ActivityDecorator.tsx +0 -31
  766. package/src/decorator/private/DecoratorComposer.tsx +0 -6
  767. package/src/decorator/private/activityDecoratorRequest.ts +0 -6
  768. package/src/decorator/private/createDecoratorComposer.tsx +0 -36
  769. package/src/hooks/middleware/createDefaultGroupActivitiesMiddleware.ts +0 -75
  770. package/src/hooks/useGroupActivities.ts +0 -10
  771. /package/dist/{chunk-2S76JUVM.mjs.LEGAL.txt → botframework-webchat-api.decorator.js.LEGAL.txt} +0 -0
  772. /package/dist/{chunk-J6D5YEY6.mjs.LEGAL.txt → botframework-webchat-api.internal.js.LEGAL.txt} +0 -0
  773. /package/dist/{chunk-ZAMHKQQC.mjs.LEGAL.txt → botframework-webchat-api.js.LEGAL.txt} +0 -0
@@ -0,0 +1,38 @@
1
+ import { type WebChatActivity } from 'botframework-webchat-core';
2
+ import templateMiddleware from '../../private/templateMiddleware';
3
+ import { type activityGroupingDecoratorTypeName } from '../types';
4
+
5
+ type Request = Readonly<{
6
+ /**
7
+ * Name of the grouping from the result of `groupActivitesMiddleware()`.
8
+ */
9
+ groupingName: string;
10
+ }>;
11
+
12
+ type Props = Readonly<{
13
+ activities: readonly WebChatActivity[];
14
+ }>;
15
+
16
+ const {
17
+ initMiddleware: initActivityGroupingDecoratorMiddleware,
18
+ Provider: ActivityGroupingDecoratorMiddlewareProvider,
19
+ Proxy: ActivityGroupingDecoratorMiddlewareProxy,
20
+ // False positive, `types` is used for its typing.
21
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
22
+ types
23
+ } = templateMiddleware<typeof activityGroupingDecoratorTypeName, Request, Props>('ActivityGroupingDecoratorMiddleware');
24
+
25
+ type ActivityGroupingDecoratorMiddleware = typeof types.middleware;
26
+ type ActivityGroupingDecoratorMiddlewareInit = typeof types.init;
27
+ type ActivityGroupingDecoratorMiddlewareProps = typeof types.props;
28
+ type ActivityGroupingDecoratorMiddlewareRequest = typeof types.request;
29
+
30
+ export {
31
+ ActivityGroupingDecoratorMiddlewareProvider,
32
+ ActivityGroupingDecoratorMiddlewareProxy,
33
+ initActivityGroupingDecoratorMiddleware,
34
+ type ActivityGroupingDecoratorMiddleware,
35
+ type ActivityGroupingDecoratorMiddlewareInit,
36
+ type ActivityGroupingDecoratorMiddlewareProps,
37
+ type ActivityGroupingDecoratorMiddlewareRequest
38
+ };
@@ -0,0 +1 @@
1
+ export const activityGroupingDecoratorTypeName = 'activity grouping' as const;
@@ -0,0 +1,22 @@
1
+ import React, { Fragment, memo, type ReactNode } from 'react';
2
+ import InternalDecoratorComposer from './internal/InternalDecoratorComposer';
3
+ import { type DecoratorMiddleware } from './types';
4
+
5
+ type DecoratorComposerProps = Readonly<{
6
+ children?: ReactNode | undefined;
7
+ middleware?: readonly DecoratorMiddleware[] | undefined;
8
+ }>;
9
+
10
+ function DecoratorComposer({ children, middleware }: DecoratorComposerProps) {
11
+ return middleware ? (
12
+ <InternalDecoratorComposer middleware={middleware} priority="normal">
13
+ {children}
14
+ </InternalDecoratorComposer>
15
+ ) : (
16
+ // We can't return `children` unless we are not using memo().
17
+ <Fragment>{children}</Fragment>
18
+ );
19
+ }
20
+
21
+ export default memo(DecoratorComposer);
22
+ export { type DecoratorComposerProps };
@@ -0,0 +1,61 @@
1
+ import React, { memo, useContext, useMemo, type ReactNode } from 'react';
2
+ import {
3
+ ActivityBorderDecoratorMiddlewareProvider,
4
+ initActivityBorderDecoratorMiddleware
5
+ } from '../ActivityBorder/private/ActivityBorderDecoratorMiddleware';
6
+ import { activityBorderDecoratorTypeName } from '../ActivityBorder/types';
7
+ import {
8
+ ActivityGroupingDecoratorMiddlewareProvider,
9
+ initActivityGroupingDecoratorMiddleware
10
+ } from '../ActivityGrouping/private/ActivityGroupingDecoratorMiddleware';
11
+ import { activityGroupingDecoratorTypeName } from '../ActivityGrouping/types';
12
+ import DecoratorComposerContext from '../private/DecoratorComposerContext';
13
+ import { type DecoratorMiddleware } from '../types';
14
+
15
+ type InternalDecoratorComposerProps = Readonly<{
16
+ children?: ReactNode | undefined;
17
+ middleware: readonly DecoratorMiddleware[];
18
+ priority: 'low' | 'normal';
19
+ }>;
20
+
21
+ const EMPTY_ARRAY = Object.freeze([]);
22
+
23
+ function InternalDecoratorComposer({
24
+ children,
25
+ middleware: middlewareFromProps = EMPTY_ARRAY,
26
+ priority
27
+ }: InternalDecoratorComposerProps) {
28
+ const existingContext = useContext(DecoratorComposerContext);
29
+ const middleware = useMemo(
30
+ () =>
31
+ priority === 'low'
32
+ ? Object.freeze([...existingContext.middleware, ...middlewareFromProps])
33
+ : Object.freeze([...middlewareFromProps, ...existingContext.middleware]),
34
+ [existingContext, middlewareFromProps, priority]
35
+ );
36
+
37
+ const activityBorderMiddleware = useMemo(
38
+ () => initActivityBorderDecoratorMiddleware(middleware, activityBorderDecoratorTypeName),
39
+ [middleware]
40
+ );
41
+
42
+ const activityGroupingMiddleware = useMemo(
43
+ () => initActivityGroupingDecoratorMiddleware(middleware, activityGroupingDecoratorTypeName),
44
+ [middleware]
45
+ );
46
+
47
+ const context = useMemo(() => ({ middleware }), [middleware]);
48
+
49
+ return (
50
+ <DecoratorComposerContext.Provider value={context}>
51
+ <ActivityBorderDecoratorMiddlewareProvider middleware={activityBorderMiddleware}>
52
+ <ActivityGroupingDecoratorMiddlewareProvider middleware={activityGroupingMiddleware}>
53
+ {children}
54
+ </ActivityGroupingDecoratorMiddlewareProvider>
55
+ </ActivityBorderDecoratorMiddlewareProvider>
56
+ </DecoratorComposerContext.Provider>
57
+ );
58
+ }
59
+
60
+ export default memo(InternalDecoratorComposer);
61
+ export { type InternalDecoratorComposerProps };
@@ -0,0 +1,19 @@
1
+ import React, { memo, type ReactNode } from 'react';
2
+ import { type DecoratorMiddleware } from '../types';
3
+ import InternalDecoratorComposer from './InternalDecoratorComposer';
4
+
5
+ type LowPriorityDecoratorComposerProps = Readonly<{
6
+ children?: ReactNode | undefined;
7
+ middleware: readonly DecoratorMiddleware[];
8
+ }>;
9
+
10
+ function LowPriorityDecoratorDecomposer({ children, middleware }: LowPriorityDecoratorComposerProps) {
11
+ return (
12
+ <InternalDecoratorComposer middleware={middleware} priority="low">
13
+ {children}
14
+ </InternalDecoratorComposer>
15
+ );
16
+ }
17
+
18
+ export default memo(LowPriorityDecoratorDecomposer);
19
+ export { type LowPriorityDecoratorComposerProps };
@@ -0,0 +1,16 @@
1
+ import { createContext } from 'react';
2
+
3
+ import { type DecoratorMiddleware } from '../types';
4
+
5
+ type DecoratorComposerContextType = Readonly<{
6
+ middleware: readonly DecoratorMiddleware[];
7
+ }>;
8
+
9
+ const DecoratorComposerContext = createContext<DecoratorComposerContextType>(
10
+ Object.freeze({
11
+ middleware: Object.freeze([])
12
+ })
13
+ );
14
+
15
+ export default DecoratorComposerContext;
16
+ export { type DecoratorComposerContextType };
@@ -0,0 +1,12 @@
1
+ import React, { Fragment, memo, type ReactNode } from 'react';
2
+
3
+ type PassthroughFallbackProps = Readonly<{
4
+ children?: ReactNode | undefined;
5
+ }>;
6
+
7
+ function PassthroughFallback({ children }: PassthroughFallbackProps) {
8
+ return <Fragment>{children}</Fragment>;
9
+ }
10
+
11
+ export default memo(PassthroughFallback);
12
+ export { type PassthroughFallbackProps };
@@ -1,4 +1,4 @@
1
- /** @jest-environment jsdom */
1
+ /** @jest-environment @happy-dom/jest-environment */
2
2
 
3
3
  import { render } from '@testing-library/react';
4
4
  import React, { Fragment, type ReactNode } from 'react';
@@ -24,6 +24,8 @@ test('an uber middleware', () => {
24
24
  initMiddleware: initButtonMiddleware,
25
25
  Provider: ButtonProvider,
26
26
  Proxy: Button,
27
+ // False positive, `types` is used for its typing.
28
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
27
29
  types: buttonTypes
28
30
  } = templateMiddleware<'button', void, ButtonProps>('Button');
29
31
 
@@ -33,6 +35,8 @@ test('an uber middleware', () => {
33
35
  initMiddleware: initLinkMiddleware,
34
36
  Provider: LinkProvider,
35
37
  Proxy: Link,
38
+ // False positive, `types` is used for its typing.
39
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
36
40
  types: linkTypes
37
41
  } = templateMiddleware<'link', { external: boolean }, LinkProps>('Link');
38
42
 
@@ -1,33 +1,35 @@
1
1
  import { warnOnce } from 'botframework-webchat-core';
2
2
  import { createChainOfResponsibility, type ComponentMiddleware } from 'react-chain-of-responsibility';
3
3
  import { type EmptyObject } from 'type-fest';
4
- import { any, array, custom, safeParse, type Output } from 'valibot';
4
+ import { any, array, function_, pipe, safeParse, type InferOutput } from 'valibot';
5
5
 
6
6
  export type MiddlewareWithInit<M extends ComponentMiddleware<any, any, any>, I> = (init: I) => ReturnType<M> | false;
7
7
 
8
8
  const EMPTY_ARRAY = Object.freeze([]);
9
9
 
10
- export default function templateMiddleware<Init, Request = any, Props extends {} = EmptyObject>(name: string) {
10
+ // Following @types/react to use {} for props.
11
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
12
+ export default function templateMiddleware<Init extends string, Request = any, Props extends {} = EmptyObject>(
13
+ name: string
14
+ ) {
11
15
  type Middleware = ComponentMiddleware<Request, Props>;
12
16
 
13
- const middlewareSchema = array(
14
- any([custom<Middleware>(input => typeof input === 'function', 'Middleware must be a function.')])
15
- );
17
+ const middlewareSchema = array(pipe(any(), function_()));
16
18
 
17
- const isMiddleware = (middleware: unknown): middleware is Output<typeof middlewareSchema> =>
19
+ const isMiddleware = (middleware: unknown): middleware is InferOutput<typeof middlewareSchema> =>
18
20
  safeParse(middlewareSchema, middleware).success;
19
21
 
20
22
  const warnInvalid = warnOnce(`"${name}" prop is invalid`);
21
23
 
22
24
  const initMiddleware = (
23
- middleware: readonly MiddlewareWithInit<Middleware, Init>[],
24
- init?: Init
25
+ middleware: readonly MiddlewareWithInit<ComponentMiddleware<unknown, unknown>, Init>[],
26
+ init: Init
25
27
  ): readonly Middleware[] => {
26
28
  if (middleware) {
27
29
  if (isMiddleware(middleware)) {
28
30
  return Object.freeze(
29
31
  middleware
30
- ?.map(middleware => middleware(init))
32
+ .map(middleware => middleware(init) as ReturnType<Middleware>)
31
33
  .filter((enhancer): enhancer is ReturnType<Middleware> => !!enhancer)
32
34
  .map(enhancer => () => enhancer)
33
35
  );
@@ -0,0 +1,15 @@
1
+ import { type ActivityBorderDecoratorMiddleware } from './ActivityBorder/private/ActivityBorderDecoratorMiddleware';
2
+ import { type activityBorderDecoratorTypeName } from './ActivityBorder/types';
3
+ import { type ActivityGroupingDecoratorMiddleware } from './ActivityGrouping/private/ActivityGroupingDecoratorMiddleware';
4
+ import { type activityGroupingDecoratorTypeName } from './ActivityGrouping/types';
5
+
6
+ export type DecoratorMiddlewareTypes = {
7
+ [activityBorderDecoratorTypeName]: ReturnType<ActivityBorderDecoratorMiddleware>;
8
+ [activityGroupingDecoratorTypeName]: ReturnType<ActivityGroupingDecoratorMiddleware>;
9
+ };
10
+
11
+ export type DecoratorMiddlewareInit = keyof DecoratorMiddlewareTypes;
12
+
13
+ export interface DecoratorMiddleware {
14
+ (init: keyof DecoratorMiddlewareTypes): DecoratorMiddlewareTypes[typeof init] | false;
15
+ }
@@ -0,0 +1,16 @@
1
+ // Decorator general
2
+
3
+ export { default as DecoratorComposer } from './decorator/DecoratorComposer';
4
+ export {
5
+ type DecoratorMiddleware,
6
+ type DecoratorMiddlewareInit,
7
+ type DecoratorMiddlewareTypes
8
+ } from './decorator/types';
9
+
10
+ // ActivityBorderDecorator
11
+
12
+ export { default as ActivityBorderDecorator } from './decorator/ActivityBorder/ActivityBorderDecorator';
13
+
14
+ // ActivityGroupingDecorator
15
+
16
+ export { default as ActivityGroupingDecorator } from './decorator/ActivityGrouping/ActivityGroupingDecorator';
@@ -53,10 +53,16 @@ const DEFAULT_OPTIONS: Required<StyleOptions> = {
53
53
  bubbleFromUserNubOffset: 0,
54
54
  bubbleFromUserNubSize: undefined,
55
55
  bubbleFromUserTextColor: 'Black',
56
- bubbleImageHeight: 240,
57
- bubbleMaxWidth: 480, // Based off screen width = 600px
56
+ bubbleImageHeight: undefined,
57
+ bubbleImageMaxHeight: 240, // Based on previously default `bubbleImageHeight` of 240px.
58
+ bubbleImageMinHeight: 240, // TODO: Should change to 180px. Based on 320px bubble width showing a 16:9 image, or `320 / (16 / 9)`. 320px bubble width is based on 360px wide of the chat canvas.
59
+ bubbleMaxWidth: undefined, // Deprecated.
60
+ bubbleMinWidth: undefined, // Deprecated.
61
+ bubbleAttachmentMaxWidth: 480, // Based off screen width = 600px
62
+ bubbleAttachmentMinWidth: 250, // min screen width = 300px; Microsoft Edge requires 372px (https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/13621468/)
63
+ bubbleMessageMaxWidth: 480, // Based off screen width = 600px
64
+ bubbleMessageMinWidth: 0,
58
65
  bubbleMinHeight: 40,
59
- bubbleMinWidth: 250, // min screen width = 300px; Microsoft Edge requires 372px (https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/13621468/)
60
66
  bubbleNubOffset: 0,
61
67
  bubbleNubSize: undefined,
62
68
  bubbleTextColor: 'Black',
@@ -238,7 +244,6 @@ const DEFAULT_OPTIONS: Required<StyleOptions> = {
238
244
  transcriptOverlayButtonColorOnHover: undefined,
239
245
 
240
246
  // Toast UI
241
-
242
247
  notificationDebounceTimeout: 400,
243
248
 
244
249
  hideToaster: false,
@@ -290,7 +295,23 @@ const DEFAULT_OPTIONS: Required<StyleOptions> = {
290
295
  // Video
291
296
  videoHeight: 270, // based on bubbleMaxWidth: 480 / 16 * 9 = 270
292
297
 
293
- maxMessageLength: 2000
298
+ maxMessageLength: 2000,
299
+
300
+ stylesRoot: document.head,
301
+
302
+ // Border animation
303
+ borderAnimationColor1: '#203C91',
304
+ borderAnimationColor2: '#4DD3FF',
305
+ borderAnimationColor3: '#2B8DD8',
306
+
307
+ codeBlockTheme: 'github-light-default' as const,
308
+
309
+ feedbackActionsPlacement: 'activity-status' as const,
310
+
311
+ // Speech recognition
312
+ speechRecognitionContinuous: false,
313
+
314
+ groupActivitiesBy: ['sender', 'status']
294
315
  };
295
316
 
296
317
  export default DEFAULT_OPTIONS;
@@ -32,7 +32,7 @@ import {
32
32
  type WebChatActivity
33
33
  } from 'botframework-webchat-core';
34
34
  import PropTypes from 'prop-types';
35
- import React, { useCallback, useEffect, useMemo, useRef, useState, type ReactNode } from 'react';
35
+ import React, { useCallback, useEffect, useMemo, useRef, useState, type ComponentType, type ReactNode } from 'react';
36
36
  import { Provider } from 'react-redux';
37
37
  import updateIn from 'simple-update-in';
38
38
 
@@ -54,6 +54,7 @@ import AttachmentForScreenReaderMiddleware from '../types/AttachmentForScreenRea
54
54
  import AttachmentMiddleware from '../types/AttachmentMiddleware';
55
55
  import AvatarMiddleware from '../types/AvatarMiddleware';
56
56
  import CardActionMiddleware from '../types/CardActionMiddleware';
57
+ import { type ContextOf } from '../types/ContextOf';
57
58
  import GroupActivitiesMiddleware from '../types/GroupActivitiesMiddleware';
58
59
  import LocalizedStrings from '../types/LocalizedStrings';
59
60
  import PrecompiledGlobalizeType from '../types/PrecompiledGlobalize';
@@ -61,7 +62,6 @@ import ScrollToEndButtonMiddleware, { ScrollToEndButtonComponentFactory } from '
61
62
  import TelemetryMeasurementEvent, { TelemetryExceptionMeasurementEvent } from '../types/TelemetryMeasurementEvent';
62
63
  import ToastMiddleware from '../types/ToastMiddleware';
63
64
  import TypingIndicatorMiddleware from '../types/TypingIndicatorMiddleware';
64
- import { type ContextOf } from '../types/ContextOf';
65
65
  import createCustomEvent from '../utils/createCustomEvent';
66
66
  import isObject from '../utils/isObject';
67
67
  import mapMap from '../utils/mapMap';
@@ -69,7 +69,7 @@ import normalizeLanguage from '../utils/normalizeLanguage';
69
69
  import { SendBoxMiddlewareProvider, type SendBoxMiddleware } from './internal/SendBoxMiddleware';
70
70
  import { SendBoxToolbarMiddlewareProvider, type SendBoxToolbarMiddleware } from './internal/SendBoxToolbarMiddleware';
71
71
  import Tracker from './internal/Tracker';
72
- import { default as WebChatAPIContext } from './internal/WebChatAPIContext';
72
+ import WebChatAPIContext, { type WebChatAPIContextType } from './internal/WebChatAPIContext';
73
73
  import WebChatReduxContext, { useDispatch } from './internal/WebChatReduxContext';
74
74
  import defaultSelectVoice from './internal/defaultSelectVoice';
75
75
  import applyMiddleware, {
@@ -77,7 +77,6 @@ import applyMiddleware, {
77
77
  forRenderer as applyMiddlewareForRenderer
78
78
  } from './middleware/applyMiddleware';
79
79
  import createDefaultCardActionMiddleware from './middleware/createDefaultCardActionMiddleware';
80
- import createDefaultGroupActivitiesMiddleware from './middleware/createDefaultGroupActivitiesMiddleware';
81
80
  import useMarkAllAsAcknowledged from './useMarkAllAsAcknowledged';
82
81
  import ErrorBoundary from './utils/ErrorBoundary';
83
82
  import observableToPromise from './utils/observableToPromise';
@@ -85,6 +84,8 @@ import observableToPromise from './utils/observableToPromise';
85
84
  // PrecompileGlobalize is a generated file and is not ES module. TypeScript don't work with UMD.
86
85
  // @ts-ignore
87
86
  import PrecompiledGlobalize from '../external/PrecompiledGlobalize';
87
+ import GroupActivitiesComposer from '../providers/GroupActivities/GroupActivitiesComposer';
88
+ import { parseUIState } from './validation/uiState';
88
89
 
89
90
  // List of Redux actions factory we are hoisting as Web Chat functions
90
91
  const DISPATCHERS = {
@@ -115,14 +116,16 @@ const EMPTY_ARRAY: readonly [] = Object.freeze([]);
115
116
 
116
117
  function createCardActionContext({
117
118
  cardActionMiddleware,
119
+ continuous,
118
120
  directLine,
119
121
  dispatch,
120
122
  markAllAsAcknowledged,
121
123
  ponyfill
122
124
  }: {
123
125
  cardActionMiddleware: readonly CardActionMiddleware[];
126
+ continuous: boolean;
124
127
  directLine: DirectLineJSBotConnection;
125
- dispatch: Function;
128
+ dispatch: (...args: unknown[]) => unknown;
126
129
  markAllAsAcknowledged: () => void;
127
130
  ponyfill: GlobalScopePonyfill;
128
131
  }) {
@@ -136,6 +139,11 @@ function createCardActionContext({
136
139
  onCardAction: (cardAction, { target }: { target?: any } = {}) => {
137
140
  markAllAsAcknowledged();
138
141
 
142
+ // Stop speech recognition only if under interactive mode.
143
+ if (!continuous) {
144
+ dispatch(stopDictate());
145
+ }
146
+
139
147
  return runMiddleware({
140
148
  cardAction,
141
149
  getSignInUrl:
@@ -165,26 +173,6 @@ function createCardActionContext({
165
173
  };
166
174
  }
167
175
 
168
- function createGroupActivitiesContext({
169
- groupActivitiesMiddleware,
170
- groupTimestamp,
171
- ponyfill
172
- }: {
173
- groupActivitiesMiddleware: readonly GroupActivitiesMiddleware[];
174
- groupTimestamp: boolean | number;
175
- ponyfill: GlobalScopePonyfill;
176
- }) {
177
- const runMiddleware = applyMiddleware(
178
- 'group activities',
179
- ...groupActivitiesMiddleware,
180
- createDefaultGroupActivitiesMiddleware({ groupTimestamp, ponyfill })
181
- );
182
-
183
- return {
184
- groupActivities: runMiddleware({})
185
- };
186
- }
187
-
188
176
  function mergeStringsOverrides(localizedStrings, language, overrideLocalizedStrings) {
189
177
  if (!overrideLocalizedStrings) {
190
178
  return localizedStrings;
@@ -217,9 +205,12 @@ type ComposerCoreProps = Readonly<{
217
205
  attachmentMiddleware?: OneOrMany<AttachmentMiddleware>;
218
206
  avatarMiddleware?: OneOrMany<AvatarMiddleware>;
219
207
  cardActionMiddleware?: OneOrMany<CardActionMiddleware>;
220
- children?: ReactNode | ((context: ContextOf<typeof WebChatAPIContext>) => ReactNode);
208
+ children?: ReactNode | ((context: ContextOf<React.Context<WebChatAPIContextType>>) => ReactNode);
221
209
  dir?: string;
222
210
  directLine: DirectLineJSBotConnection;
211
+ /**
212
+ * @deprecated Please use `uiState="disabled"` instead. This feature will be removed on or after 2026-09-04.
213
+ */
223
214
  disabled?: boolean;
224
215
  downscaleImageToDataURL?: (
225
216
  blob: Blob,
@@ -230,7 +221,14 @@ type ComposerCoreProps = Readonly<{
230
221
  ) => Promise<URL>;
231
222
  grammars?: any;
232
223
  groupActivitiesMiddleware?: OneOrMany<GroupActivitiesMiddleware>;
233
- internalErrorBoxClass?: React.Component | Function;
224
+ internalErrorBoxClass?:
225
+ | ComponentType<
226
+ Readonly<{
227
+ error: Error;
228
+ type?: string;
229
+ }>
230
+ >
231
+ | undefined;
234
232
  locale?: string;
235
233
  onTelemetry?: (event: TelemetryMeasurementEvent) => void;
236
234
  overrideLocalizedStrings?: LocalizedStrings | ((strings: LocalizedStrings, language: string) => LocalizedStrings);
@@ -247,6 +245,16 @@ type ComposerCoreProps = Readonly<{
247
245
  styleOptions?: StyleOptions;
248
246
  toastMiddleware?: OneOrMany<ToastMiddleware>;
249
247
  typingIndicatorMiddleware?: OneOrMany<TypingIndicatorMiddleware>;
248
+ /**
249
+ * Sets the state of the UI.
250
+ *
251
+ * - `undefined` will render normally
252
+ * - `"blueprint"` will render as few UI elements as possible and should be non-functional
253
+ * - Useful for loading scenarios
254
+ * - `"disabled"` will render most UI elements as non-functional
255
+ * - Scrolling may continue to trigger read acknowledgements
256
+ */
257
+ uiState?: 'blueprint' | 'disabled' | undefined;
250
258
  userID?: string;
251
259
  username?: string;
252
260
  }>;
@@ -278,6 +286,7 @@ const ComposerCore = ({
278
286
  styleOptions,
279
287
  toastMiddleware,
280
288
  typingIndicatorMiddleware,
289
+ uiState,
281
290
  userID,
282
291
  username
283
292
  }: ComposerCoreProps) => {
@@ -292,6 +301,8 @@ const ComposerCore = ({
292
301
  [styleOptions]
293
302
  );
294
303
 
304
+ uiState = parseUIState(uiState, disabled);
305
+
295
306
  useEffect(() => {
296
307
  dispatch(setLanguage(locale));
297
308
  }, [dispatch, locale]);
@@ -323,12 +334,20 @@ const ComposerCore = ({
323
334
  () =>
324
335
  createCardActionContext({
325
336
  cardActionMiddleware: Object.freeze([...singleToArray(cardActionMiddleware)]),
337
+ continuous: !!styleOptions.speechRecognitionContinuous,
326
338
  directLine,
327
339
  dispatch,
328
340
  markAllAsAcknowledged,
329
341
  ponyfill
330
342
  }),
331
- [cardActionMiddleware, directLine, dispatch, markAllAsAcknowledged, ponyfill]
343
+ [
344
+ cardActionMiddleware,
345
+ directLine,
346
+ dispatch,
347
+ markAllAsAcknowledged,
348
+ ponyfill,
349
+ styleOptions.speechRecognitionContinuous
350
+ ]
332
351
  );
333
352
 
334
353
  const patchedSelectVoice = useMemo(
@@ -336,16 +355,6 @@ const ComposerCore = ({
336
355
  [locale, selectVoice]
337
356
  );
338
357
 
339
- const groupActivitiesContext = useMemo(
340
- () =>
341
- createGroupActivitiesContext({
342
- groupActivitiesMiddleware: Object.freeze([...singleToArray(groupActivitiesMiddleware)]),
343
- groupTimestamp: patchedStyleOptions.groupTimestamp,
344
- ponyfill
345
- }),
346
- [groupActivitiesMiddleware, patchedStyleOptions.groupTimestamp, ponyfill]
347
- );
348
-
349
358
  const hoistedDispatchers = useMemo(
350
359
  () =>
351
360
  mapMap(
@@ -526,10 +535,9 @@ const ComposerCore = ({
526
535
  * This context should consist of members that are not in the Redux store
527
536
  * i.e. members that are not interested in other types of UIs
528
537
  */
529
- const context = useMemo<ContextOf<typeof WebChatAPIContext>>(
538
+ const context = useMemo<ContextOf<React.Context<WebChatAPIContextType>>>(
530
539
  () => ({
531
540
  ...cardActionContext,
532
- ...groupActivitiesContext,
533
541
  ...hoistedDispatchers,
534
542
  activityRenderer: patchedActivityRenderer,
535
543
  activityStatusRenderer: patchedActivityStatusRenderer,
@@ -538,7 +546,6 @@ const ComposerCore = ({
538
546
  avatarRenderer: patchedAvatarRenderer,
539
547
  dir: patchedDir,
540
548
  directLine,
541
- disabled,
542
549
  downscaleImageToDataURL,
543
550
  grammars: patchedGrammars,
544
551
  internalErrorBoxClass,
@@ -555,15 +562,14 @@ const ComposerCore = ({
555
562
  toastRenderer: patchedToastRenderer,
556
563
  trackDimension,
557
564
  typingIndicatorRenderer: patchedTypingIndicatorRenderer,
565
+ uiState,
558
566
  userID,
559
567
  username
560
568
  }),
561
569
  [
562
570
  cardActionContext,
563
571
  directLine,
564
- disabled,
565
572
  downscaleImageToDataURL,
566
- groupActivitiesContext,
567
573
  hoistedDispatchers,
568
574
  internalErrorBoxClass,
569
575
  locale,
@@ -586,6 +592,7 @@ const ComposerCore = ({
586
592
  sendTypingIndicator,
587
593
  telemetryDimensionsRef,
588
594
  trackDimension,
595
+ uiState,
589
596
  userID,
590
597
  username
591
598
  ]
@@ -598,7 +605,9 @@ const ComposerCore = ({
598
605
  <ActivityTypingComposer>
599
606
  <SendBoxMiddlewareProvider middleware={sendBoxMiddleware || EMPTY_ARRAY}>
600
607
  <SendBoxToolbarMiddlewareProvider middleware={sendBoxToolbarMiddleware || EMPTY_ARRAY}>
601
- {typeof children === 'function' ? children(context) : children}
608
+ <GroupActivitiesComposer groupActivitiesMiddleware={singleToArray(groupActivitiesMiddleware)}>
609
+ {typeof children === 'function' ? children(context) : children}
610
+ </GroupActivitiesComposer>
602
611
  <ActivitySendStatusTelemetryComposer />
603
612
  </SendBoxToolbarMiddlewareProvider>
604
613
  </SendBoxMiddlewareProvider>
@@ -640,6 +649,7 @@ ComposerCore.defaultProps = {
640
649
  styleOptions: {},
641
650
  toastMiddleware: undefined,
642
651
  typingIndicatorMiddleware: undefined,
652
+ uiState: undefined,
643
653
  userID: '',
644
654
  username: ''
645
655
  };
@@ -672,7 +682,10 @@ ComposerCore.propTypes = {
672
682
  downscaleImageToDataURL: PropTypes.func,
673
683
  grammars: PropTypes.arrayOf(PropTypes.string),
674
684
  groupActivitiesMiddleware: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.func), PropTypes.func]),
675
- internalErrorBoxClass: PropTypes.func, // This is for internal use only. We don't allow customization of error box.
685
+ // This is for internal use only. We don't allow customization of error box.
686
+ // - Functional component is of type PropTypes.func
687
+ // - Memoized functional component is of type PropTypes.object
688
+ internalErrorBoxClass: PropTypes.oneOfType([PropTypes.any, PropTypes.func]),
676
689
  locale: PropTypes.string,
677
690
  onTelemetry: PropTypes.func,
678
691
  overrideLocalizedStrings: PropTypes.oneOfType([PropTypes.any, PropTypes.func]),
@@ -683,6 +696,7 @@ ComposerCore.propTypes = {
683
696
  styleOptions: PropTypes.any,
684
697
  toastMiddleware: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.func), PropTypes.func]),
685
698
  typingIndicatorMiddleware: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.func), PropTypes.func]),
699
+ uiState: PropTypes.oneOf(['blueprint', 'disabled']),
686
700
  userID: PropTypes.string,
687
701
  username: PropTypes.string
688
702
  };
@@ -26,7 +26,8 @@ import useGetKeyByActivity from './useGetKeyByActivity';
26
26
  import useGetKeyByActivityId from './useGetKeyByActivityId';
27
27
  import useGetSendTimeoutForActivity from './useGetSendTimeoutForActivity';
28
28
  import useGrammars from './useGrammars';
29
- import useGroupActivities from './useGroupActivities';
29
+ import useGroupActivities from '../providers/GroupActivities/useGroupActivities';
30
+ import useGroupActivitiesByName from '../providers/GroupActivities/useGroupActivitiesByName';
30
31
  import useGroupTimestamp from './useGroupTimestamp';
31
32
  import useLanguage from './useLanguage';
32
33
  import useLastAcknowledgedActivityKey from './useLastAcknowledgedActivityKey';
@@ -66,6 +67,7 @@ import useTrackDimension from './useTrackDimension';
66
67
  import useTrackEvent from './useTrackEvent';
67
68
  import useTrackException from './useTrackException';
68
69
  import useTrackTiming from './useTrackTiming';
70
+ import useUIState from './useUIState';
69
71
  import useUserID from './useUserID';
70
72
  import useUsername from './useUsername';
71
73
  import useVoiceSelector from './useVoiceSelector';
@@ -100,6 +102,7 @@ export {
100
102
  useGetSendTimeoutForActivity,
101
103
  useGrammars,
102
104
  useGroupActivities,
105
+ useGroupActivitiesByName,
103
106
  useGroupTimestamp,
104
107
  useLanguage,
105
108
  useLastAcknowledgedActivityKey,
@@ -139,6 +142,7 @@ export {
139
142
  useTrackEvent,
140
143
  useTrackException,
141
144
  useTrackTiming,
145
+ useUIState,
142
146
  useUserID,
143
147
  useUsername,
144
148
  useVoiceSelector
@@ -4,8 +4,10 @@ const {
4
4
  initMiddleware: initSendBoxMiddleware,
5
5
  Provider: SendBoxMiddlewareProvider,
6
6
  Proxy: SendBoxMiddlewareProxy,
7
+ // False positive, `types` is used for its typing.
8
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
7
9
  types
8
- } = templateMiddleware<void, void, { className?: string | undefined }>('sendBoxMiddleware');
10
+ } = templateMiddleware<undefined, void, { className?: string | undefined }>('sendBoxMiddleware');
9
11
 
10
12
  type SendBoxMiddleware = typeof types.middleware;
11
13
  type SendBoxMiddlewareProps = typeof types.props;