botframework-webchat-component 4.13.0 → 4.15.0

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 (698) hide show
  1. package/.eslintrc.yml +4 -100
  2. package/.prettierrc.yml +1 -1
  3. package/lib/Activity/Avatar.d.ts +10 -0
  4. package/lib/Activity/Avatar.d.ts.map +1 -0
  5. package/lib/Activity/Avatar.js +2 -1
  6. package/lib/Activity/Bubble.d.ts +11 -0
  7. package/lib/Activity/Bubble.d.ts.map +1 -0
  8. package/lib/Activity/Bubble.js +2 -2
  9. package/lib/Activity/CarouselFilmStrip.js +21 -31
  10. package/lib/Activity/CarouselFilmStripAttachment.js +120 -0
  11. package/lib/Activity/CarouselLayout.js +5 -5
  12. package/lib/Activity/Speak.d.ts +10 -0
  13. package/lib/Activity/Speak.d.ts.map +1 -0
  14. package/lib/Activity/Speak.js +11 -13
  15. package/lib/Activity/StackedLayout.d.ts +18 -0
  16. package/lib/Activity/StackedLayout.d.ts.map +1 -0
  17. package/lib/Activity/StackedLayout.js +19 -15
  18. package/lib/Assets/TypingAnimation.js +2 -2
  19. package/lib/Attachment/Assets/DownloadIcon.js +3 -1
  20. package/lib/Attachment/AudioAttachment.js +2 -2
  21. package/lib/Attachment/AudioContent.d.ts +11 -0
  22. package/lib/Attachment/AudioContent.d.ts.map +1 -0
  23. package/lib/Attachment/AudioContent.js +4 -4
  24. package/lib/Attachment/FileAttachment.js +2 -2
  25. package/lib/Attachment/FileContent.d.ts +10 -0
  26. package/lib/Attachment/FileContent.d.ts.map +1 -0
  27. package/lib/Attachment/FileContent.js +14 -9
  28. package/lib/Attachment/HTMLVideoContent.d.ts +11 -0
  29. package/lib/Attachment/HTMLVideoContent.d.ts.map +1 -0
  30. package/lib/Attachment/HTMLVideoContent.js +2 -2
  31. package/lib/Attachment/ImageContent.d.ts +8 -0
  32. package/lib/Attachment/ImageContent.d.ts.map +1 -0
  33. package/lib/Attachment/ImageContent.js +2 -2
  34. package/lib/Attachment/TextContent.d.ts +8 -0
  35. package/lib/Attachment/TextContent.d.ts.map +1 -0
  36. package/lib/Attachment/TextContent.js +4 -4
  37. package/lib/Attachment/VideoAttachment.js +2 -2
  38. package/lib/Attachment/VideoContent.d.ts +11 -0
  39. package/lib/Attachment/VideoContent.d.ts.map +1 -0
  40. package/lib/Attachment/VideoContent.js +1 -1
  41. package/lib/Attachment/VimeoContent.d.ts +10 -0
  42. package/lib/Attachment/VimeoContent.d.ts.map +1 -0
  43. package/lib/Attachment/VimeoContent.js +8 -8
  44. package/lib/Attachment/YouTubeContent.d.ts +10 -0
  45. package/lib/Attachment/YouTubeContent.d.ts.map +1 -0
  46. package/lib/Attachment/YouTubeContent.js +5 -5
  47. package/lib/Avatar/ImageAvatar.js +2 -2
  48. package/lib/Avatar/InitialsAvatar.js +2 -2
  49. package/lib/BasicConnectivityStatus.js +2 -2
  50. package/lib/BasicSendBox.d.ts +9 -0
  51. package/lib/BasicSendBox.d.ts.map +1 -0
  52. package/lib/BasicSendBox.js +7 -6
  53. package/lib/BasicToast.js +4 -4
  54. package/lib/BasicToaster.js +8 -5
  55. package/lib/BasicTranscript.d.ts +7 -0
  56. package/lib/BasicTranscript.d.ts.map +1 -0
  57. package/lib/BasicTranscript.js +406 -743
  58. package/lib/BasicTypingIndicator.d.ts +6 -0
  59. package/lib/BasicTypingIndicator.d.ts.map +1 -0
  60. package/lib/BasicTypingIndicator.js +13 -5
  61. package/lib/BasicWebChat.d.ts +9 -0
  62. package/lib/BasicWebChat.d.ts.map +1 -0
  63. package/lib/BasicWebChat.js +6 -4
  64. package/lib/Composer.d.ts +23 -0
  65. package/lib/Composer.d.ts.map +1 -0
  66. package/lib/Composer.js +65 -82
  67. package/lib/ConnectivityStatus/Assets/ErrorNotificationIcon.js +2 -2
  68. package/lib/ConnectivityStatus/Assets/SpinnerAnimation.js +2 -2
  69. package/lib/ConnectivityStatus/Assets/WarningNotificationIcon.js +2 -2
  70. package/lib/ConnectivityStatus/Connected.js +1 -1
  71. package/lib/ConnectivityStatus/Connecting.js +4 -4
  72. package/lib/ConnectivityStatus/FailedToConnect.js +2 -2
  73. package/lib/ConnectivityStatus/JavaScriptError.js +2 -2
  74. package/lib/Dictation.js +13 -4
  75. package/lib/ErrorBox.d.ts +8 -0
  76. package/lib/ErrorBox.d.ts.map +1 -0
  77. package/lib/ErrorBox.js +2 -2
  78. package/lib/Middleware/Activity/createCoreMiddleware.d.ts +3 -0
  79. package/lib/Middleware/Activity/createCoreMiddleware.d.ts.map +1 -0
  80. package/lib/Middleware/Activity/createCoreMiddleware.js +1 -1
  81. package/lib/Middleware/ActivityStatus/AbsoluteTime.js +1 -1
  82. package/lib/Middleware/ActivityStatus/RelativeTime.js +1 -1
  83. package/lib/Middleware/ActivityStatus/SendStatus/SendFailedRetry.js +3 -3
  84. package/lib/Middleware/ActivityStatus/SendStatus/SendStatus.d.ts +11 -0
  85. package/lib/Middleware/ActivityStatus/SendStatus/SendStatus.d.ts.map +1 -0
  86. package/lib/Middleware/ActivityStatus/SendStatus/SendStatus.js +5 -5
  87. package/lib/Middleware/ActivityStatus/Timestamp.d.ts +9 -0
  88. package/lib/Middleware/ActivityStatus/Timestamp.d.ts.map +1 -0
  89. package/lib/Middleware/ActivityStatus/Timestamp.js +2 -2
  90. package/lib/Middleware/ActivityStatus/createCoreMiddleware.d.ts +3 -0
  91. package/lib/Middleware/ActivityStatus/createCoreMiddleware.d.ts.map +1 -0
  92. package/lib/Middleware/ActivityStatus/createCoreMiddleware.js +1 -1
  93. package/lib/Middleware/ActivityStatus/createSendStatusMiddleware.js +21 -16
  94. package/lib/Middleware/ActivityStatus/createTimestampMiddleware.js +1 -1
  95. package/lib/Middleware/Attachment/createCoreMiddleware.d.ts +3 -0
  96. package/lib/Middleware/Attachment/createCoreMiddleware.d.ts.map +1 -0
  97. package/lib/Middleware/Attachment/createCoreMiddleware.js +10 -13
  98. package/lib/Middleware/AttachmentForScreenReader/AudioAttachment.js +1 -1
  99. package/lib/Middleware/AttachmentForScreenReader/FileAttachment.js +1 -1
  100. package/lib/Middleware/AttachmentForScreenReader/ImageAttachment.js +1 -1
  101. package/lib/Middleware/AttachmentForScreenReader/TextAttachment.js +1 -1
  102. package/lib/Middleware/AttachmentForScreenReader/VideoAttachment.js +1 -1
  103. package/lib/Middleware/AttachmentForScreenReader/createCoreMiddleware.d.ts +3 -0
  104. package/lib/Middleware/AttachmentForScreenReader/createCoreMiddleware.d.ts.map +1 -0
  105. package/lib/Middleware/AttachmentForScreenReader/createCoreMiddleware.js +9 -5
  106. package/lib/Middleware/Avatar/createCoreMiddleware.d.ts +11 -0
  107. package/lib/Middleware/Avatar/createCoreMiddleware.d.ts.map +1 -0
  108. package/lib/Middleware/Avatar/createCoreMiddleware.js +3 -4
  109. package/lib/Middleware/CardAction/createCoreMiddleware.js +11 -4
  110. package/lib/Middleware/GroupActivities/createCoreMiddleware.js +1 -1
  111. package/lib/Middleware/ScrollToEndButton/ScrollToEndButton.js +71 -0
  112. package/lib/Middleware/ScrollToEndButton/createScrollToEndButtonMiddleware.d.ts +3 -0
  113. package/lib/Middleware/ScrollToEndButton/createScrollToEndButtonMiddleware.d.ts.map +1 -0
  114. package/lib/Middleware/ScrollToEndButton/createScrollToEndButtonMiddleware.js +27 -0
  115. package/lib/Middleware/Toast/createCoreMiddleware.d.ts +4 -0
  116. package/lib/Middleware/Toast/createCoreMiddleware.d.ts.map +1 -0
  117. package/lib/Middleware/Toast/createCoreMiddleware.js +1 -1
  118. package/lib/Middleware/TypingIndicator/createCoreMiddleware.d.ts +3 -0
  119. package/lib/Middleware/TypingIndicator/createCoreMiddleware.d.ts.map +1 -0
  120. package/lib/Middleware/TypingIndicator/createCoreMiddleware.js +9 -6
  121. package/lib/ReactWebChat.d.ts +10 -0
  122. package/lib/ReactWebChat.d.ts.map +1 -0
  123. package/lib/ReactWebChat.js +19 -7
  124. package/lib/ScreenReaderActivity.js +76 -48
  125. package/lib/ScreenReaderText.d.ts +9 -0
  126. package/lib/ScreenReaderText.d.ts.map +1 -0
  127. package/lib/ScreenReaderText.js +22 -8
  128. package/lib/SendBox/Assets/AttachmentIcon.js +3 -1
  129. package/lib/SendBox/Assets/MicrophoneIcon.js +3 -1
  130. package/lib/SendBox/Assets/SendIcon.js +2 -2
  131. package/lib/SendBox/AutoResizeTextArea.d.ts +23 -0
  132. package/lib/SendBox/AutoResizeTextArea.d.ts.map +1 -0
  133. package/lib/SendBox/AutoResizeTextArea.js +6 -6
  134. package/lib/SendBox/DictationInterims.d.ts +9 -0
  135. package/lib/SendBox/DictationInterims.d.ts.map +1 -0
  136. package/lib/SendBox/DictationInterims.js +3 -3
  137. package/lib/SendBox/IconButton.d.ts +11 -0
  138. package/lib/SendBox/IconButton.d.ts.map +1 -0
  139. package/lib/SendBox/IconButton.js +27 -7
  140. package/lib/SendBox/MicrophoneButton.d.ts +11 -0
  141. package/lib/SendBox/MicrophoneButton.d.ts.map +1 -0
  142. package/lib/SendBox/MicrophoneButton.js +25 -24
  143. package/lib/SendBox/SendButton.d.ts +9 -0
  144. package/lib/SendBox/SendButton.d.ts.map +1 -0
  145. package/lib/SendBox/SendButton.js +8 -6
  146. package/lib/SendBox/SuggestedAction.d.ts +17 -0
  147. package/lib/SendBox/SuggestedAction.d.ts.map +1 -0
  148. package/lib/SendBox/SuggestedAction.js +29 -24
  149. package/lib/SendBox/SuggestedActions.d.ts +5 -0
  150. package/lib/SendBox/SuggestedActions.d.ts.map +1 -0
  151. package/lib/SendBox/SuggestedActions.js +33 -13
  152. package/lib/SendBox/TextBox.d.ts +28 -0
  153. package/lib/SendBox/TextBox.d.ts.map +1 -0
  154. package/lib/SendBox/TextBox.js +13 -8
  155. package/lib/SendBox/UploadButton.d.ts +9 -0
  156. package/lib/SendBox/UploadButton.d.ts.map +1 -0
  157. package/lib/SendBox/UploadButton.js +6 -6
  158. package/lib/Styles/StyleSet/Activities.d.ts +5 -0
  159. package/lib/Styles/StyleSet/Activities.d.ts.map +1 -0
  160. package/lib/Styles/StyleSet/AudioAttachment.d.ts +6 -0
  161. package/lib/Styles/StyleSet/AudioAttachment.d.ts.map +1 -0
  162. package/lib/Styles/StyleSet/AudioContent.d.ts +4 -0
  163. package/lib/Styles/StyleSet/AudioContent.d.ts.map +1 -0
  164. package/lib/Styles/StyleSet/AutoResizeTextArea.d.ts +37 -0
  165. package/lib/Styles/StyleSet/AutoResizeTextArea.d.ts.map +1 -0
  166. package/lib/Styles/StyleSet/Avatar.d.ts +9 -0
  167. package/lib/Styles/StyleSet/Avatar.d.ts.map +1 -0
  168. package/lib/Styles/StyleSet/BasicTranscript.d.ts +85 -0
  169. package/lib/Styles/StyleSet/BasicTranscript.d.ts.map +1 -0
  170. package/lib/Styles/StyleSet/BasicTranscript.js +21 -9
  171. package/lib/Styles/StyleSet/Bubble.d.ts +5 -0
  172. package/lib/Styles/StyleSet/Bubble.d.ts.map +1 -0
  173. package/lib/Styles/StyleSet/Bubble.js +2 -2
  174. package/lib/Styles/StyleSet/CarouselFilmStrip.d.ts +5 -0
  175. package/lib/Styles/StyleSet/CarouselFilmStrip.d.ts.map +1 -0
  176. package/lib/Styles/StyleSet/CarouselFilmStrip.js +2 -18
  177. package/lib/Styles/StyleSet/CarouselFilmStripAttachment.d.ts +3 -0
  178. package/lib/Styles/StyleSet/CarouselFilmStripAttachment.d.ts.map +1 -0
  179. package/lib/Styles/StyleSet/CarouselFilmStripAttachment.js +63 -0
  180. package/lib/Styles/StyleSet/CarouselFlipper.d.ts +27 -0
  181. package/lib/Styles/StyleSet/CarouselFlipper.d.ts.map +1 -0
  182. package/lib/Styles/StyleSet/ConnectivityNotification.d.ts +13 -0
  183. package/lib/Styles/StyleSet/ConnectivityNotification.d.ts.map +1 -0
  184. package/lib/Styles/StyleSet/DictationInterims.d.ts +13 -0
  185. package/lib/Styles/StyleSet/DictationInterims.d.ts.map +1 -0
  186. package/lib/Styles/StyleSet/ErrorBox.d.ts +33 -0
  187. package/lib/Styles/StyleSet/ErrorBox.d.ts.map +1 -0
  188. package/lib/Styles/StyleSet/ErrorNotification.d.ts +23 -0
  189. package/lib/Styles/StyleSet/ErrorNotification.d.ts.map +1 -0
  190. package/lib/Styles/StyleSet/FileContent.d.ts +32 -0
  191. package/lib/Styles/StyleSet/FileContent.d.ts.map +1 -0
  192. package/lib/Styles/StyleSet/ImageAvatar.d.ts +7 -0
  193. package/lib/Styles/StyleSet/ImageAvatar.d.ts.map +1 -0
  194. package/lib/Styles/StyleSet/InitialsAvatar.d.ts +19 -0
  195. package/lib/Styles/StyleSet/InitialsAvatar.d.ts.map +1 -0
  196. package/lib/Styles/StyleSet/KeyboardHelp.d.ts +123 -0
  197. package/lib/Styles/StyleSet/KeyboardHelp.d.ts.map +1 -0
  198. package/lib/Styles/StyleSet/KeyboardHelp.js +145 -0
  199. package/lib/Styles/StyleSet/MicrophoneButton.d.ts +13 -0
  200. package/lib/Styles/StyleSet/MicrophoneButton.d.ts.map +1 -0
  201. package/lib/Styles/StyleSet/Root.d.ts +8 -0
  202. package/lib/Styles/StyleSet/Root.d.ts.map +1 -0
  203. package/lib/Styles/StyleSet/ScrollToEndButton.d.ts +36 -0
  204. package/lib/Styles/StyleSet/ScrollToEndButton.d.ts.map +1 -0
  205. package/lib/Styles/StyleSet/ScrollToEndButton.js +36 -34
  206. package/lib/Styles/StyleSet/SendBox.d.ts +24 -0
  207. package/lib/Styles/StyleSet/SendBox.d.ts.map +1 -0
  208. package/lib/Styles/StyleSet/SendBoxButton.d.ts +79 -0
  209. package/lib/Styles/StyleSet/SendBoxButton.d.ts.map +1 -0
  210. package/lib/Styles/StyleSet/SendBoxButton.js +76 -12
  211. package/lib/Styles/StyleSet/SendBoxTextBox.d.ts +41 -0
  212. package/lib/Styles/StyleSet/SendBoxTextBox.d.ts.map +1 -0
  213. package/lib/Styles/StyleSet/SendBoxTextBox.js +3 -3
  214. package/lib/Styles/StyleSet/SendStatus.d.ts +8 -0
  215. package/lib/Styles/StyleSet/SendStatus.d.ts.map +1 -0
  216. package/lib/Styles/StyleSet/SingleAttachmentActivity.d.ts +11 -0
  217. package/lib/Styles/StyleSet/SingleAttachmentActivity.d.ts.map +1 -0
  218. package/lib/Styles/StyleSet/SpinnerAnimation.d.ts +15 -0
  219. package/lib/Styles/StyleSet/SpinnerAnimation.d.ts.map +1 -0
  220. package/lib/Styles/StyleSet/StackedLayout.d.ts +63 -0
  221. package/lib/Styles/StyleSet/StackedLayout.d.ts.map +1 -0
  222. package/lib/Styles/StyleSet/StackedLayout.js +1 -1
  223. package/lib/Styles/StyleSet/SuggestedAction.d.ts +94 -0
  224. package/lib/Styles/StyleSet/SuggestedAction.d.ts.map +1 -0
  225. package/lib/Styles/StyleSet/SuggestedAction.js +116 -41
  226. package/lib/Styles/StyleSet/SuggestedActions.d.ts +125 -0
  227. package/lib/Styles/StyleSet/SuggestedActions.d.ts.map +1 -0
  228. package/lib/Styles/StyleSet/SuggestedActions.js +13 -6
  229. package/lib/Styles/StyleSet/TextContent.d.ts +28 -0
  230. package/lib/Styles/StyleSet/TextContent.d.ts.map +1 -0
  231. package/lib/Styles/StyleSet/Toast.d.ts +65 -0
  232. package/lib/Styles/StyleSet/Toast.d.ts.map +1 -0
  233. package/lib/Styles/StyleSet/Toaster.d.ts +111 -0
  234. package/lib/Styles/StyleSet/Toaster.d.ts.map +1 -0
  235. package/lib/Styles/StyleSet/TypingAnimation.d.ts +8 -0
  236. package/lib/Styles/StyleSet/TypingAnimation.d.ts.map +1 -0
  237. package/lib/Styles/StyleSet/TypingIndicator.d.ts +11 -0
  238. package/lib/Styles/StyleSet/TypingIndicator.d.ts.map +1 -0
  239. package/lib/Styles/StyleSet/UploadButton.d.ts +14 -0
  240. package/lib/Styles/StyleSet/UploadButton.d.ts.map +1 -0
  241. package/lib/Styles/StyleSet/VideoAttachment.d.ts +2 -0
  242. package/lib/Styles/StyleSet/VideoAttachment.d.ts.map +1 -0
  243. package/lib/Styles/StyleSet/VideoContent.d.ts +6 -0
  244. package/lib/Styles/StyleSet/VideoContent.d.ts.map +1 -0
  245. package/lib/Styles/StyleSet/VimeoContent.d.ts +7 -0
  246. package/lib/Styles/StyleSet/VimeoContent.d.ts.map +1 -0
  247. package/lib/Styles/StyleSet/WarningNotification.d.ts +22 -0
  248. package/lib/Styles/StyleSet/WarningNotification.d.ts.map +1 -0
  249. package/lib/Styles/StyleSet/YouTubeContent.d.ts +7 -0
  250. package/lib/Styles/StyleSet/YouTubeContent.d.ts.map +1 -0
  251. package/lib/Styles/createStyleSet.d.ts +1372 -0
  252. package/lib/Styles/createStyleSet.d.ts.map +1 -0
  253. package/lib/Styles/createStyleSet.js +47 -41
  254. package/lib/Styles/mirrorStyle.js +13 -4
  255. package/lib/Toast/CollapseIcon.js +3 -1
  256. package/lib/Toast/DismissIcon.js +3 -1
  257. package/lib/Toast/ExpandIcon.js +3 -1
  258. package/lib/Toast/NotificationIcon.js +7 -3
  259. package/lib/Toast/createToastMiddleware.d.ts +4 -0
  260. package/lib/Toast/createToastMiddleware.d.ts.map +1 -0
  261. package/lib/Toast/createToastMiddleware.js +2 -2
  262. package/lib/Transcript/ActivityRow.d.ts +9 -0
  263. package/lib/Transcript/ActivityRow.d.ts.map +1 -0
  264. package/lib/Transcript/ActivityRow.js +157 -0
  265. package/lib/Transcript/ActivityTextAlt.js +57 -0
  266. package/lib/Transcript/FocusTrap.d.ts +8 -0
  267. package/lib/Transcript/FocusTrap.d.ts.map +1 -0
  268. package/lib/Transcript/FocusTrap.js +74 -0
  269. package/lib/Transcript/KeyboardHelp.d.ts +4 -0
  270. package/lib/Transcript/KeyboardHelp.d.ts.map +1 -0
  271. package/lib/Transcript/KeyboardHelp.js +550 -0
  272. package/lib/Transcript/LiveRegionTranscript.d.ts +8 -0
  273. package/lib/Transcript/LiveRegionTranscript.d.ts.map +1 -0
  274. package/lib/Transcript/LiveRegionTranscript.js +214 -0
  275. package/lib/Transcript/types.d.ts +2 -0
  276. package/lib/Transcript/types.d.ts.map +1 -0
  277. package/lib/Transcript/types.js +2 -0
  278. package/lib/Transcript/useActivityAccessibleName.d.ts +4 -0
  279. package/lib/Transcript/useActivityAccessibleName.d.ts.map +1 -0
  280. package/lib/Transcript/useActivityAccessibleName.js +97 -0
  281. package/lib/Utils/AccessKeySink/Surface.js +7 -5
  282. package/lib/Utils/AccessibleButton.d.ts +11 -0
  283. package/lib/Utils/AccessibleButton.d.ts.map +1 -0
  284. package/lib/Utils/AccessibleButton.js +15 -8
  285. package/lib/Utils/AccessibleInputText.d.ts +21 -0
  286. package/lib/Utils/AccessibleInputText.d.ts.map +1 -0
  287. package/lib/Utils/AccessibleInputText.js +29 -25
  288. package/lib/Utils/AccessibleTextArea.d.ts +20 -0
  289. package/lib/Utils/AccessibleTextArea.d.ts.map +1 -0
  290. package/lib/Utils/AccessibleTextArea.js +35 -24
  291. package/lib/Utils/CroppedImage.js +2 -2
  292. package/lib/Utils/Fade.js +2 -2
  293. package/lib/Utils/FocusRedirector.d.ts +9 -0
  294. package/lib/Utils/FocusRedirector.d.ts.map +1 -0
  295. package/lib/Utils/FocusRedirector.js +18 -15
  296. package/lib/Utils/InlineMarkdown.js +17 -10
  297. package/lib/Utils/TypeFocusSink/FocusBox.js +6 -4
  298. package/lib/Utils/TypeFocusSink/getTabIndex.d.ts +2 -0
  299. package/lib/Utils/TypeFocusSink/getTabIndex.d.ts.map +1 -0
  300. package/lib/Utils/TypeFocusSink/getTabIndex.js +1 -1
  301. package/lib/Utils/TypeFocusSink/inputtableKey.d.ts +2 -0
  302. package/lib/Utils/TypeFocusSink/inputtableKey.d.ts.map +1 -0
  303. package/lib/Utils/TypeFocusSink/inputtableKey.js +5 -2
  304. package/lib/Utils/TypeFocusSink/navigableEvent.js +1 -1
  305. package/lib/Utils/activityAltText.d.ts +8 -0
  306. package/lib/Utils/activityAltText.d.ts.map +1 -0
  307. package/lib/Utils/activityAltText.js +100 -0
  308. package/lib/Utils/addTargetBlankToHyperlinksMarkdown.js +1 -1
  309. package/lib/Utils/createCustomEvent.js +9 -3
  310. package/lib/Utils/debounce.js +1 -1
  311. package/lib/Utils/detectBrowser.js +4 -2
  312. package/lib/Utils/downscaleImageToDataURL/downscaleImageToDataURLUsingWorker.js +3 -3
  313. package/lib/Utils/downscaleImageToDataURL/index.js +2 -2
  314. package/lib/Utils/filterMap.js +1 -1
  315. package/lib/Utils/findAncestor.js +17 -0
  316. package/lib/Utils/getActivityUniqueId.js +4 -2
  317. package/lib/Utils/intersectionOf.d.ts +5 -0
  318. package/lib/Utils/intersectionOf.d.ts.map +1 -0
  319. package/lib/Utils/intersectionOf.js +17 -2
  320. package/lib/Utils/isZeroOrPositive.d.ts +5 -0
  321. package/lib/Utils/isZeroOrPositive.d.ts.map +1 -0
  322. package/lib/Utils/isZeroOrPositive.js +4 -1
  323. package/lib/Utils/mapMap.js +10 -3
  324. package/lib/Utils/readDataURIToBlob.js +3 -3
  325. package/lib/Utils/scrollIntoViewWithBlockNearest.d.ts +7 -0
  326. package/lib/Utils/scrollIntoViewWithBlockNearest.d.ts.map +1 -0
  327. package/lib/Utils/scrollIntoViewWithBlockNearest.js +48 -0
  328. package/lib/Utils/shallowEquals.js +7 -3
  329. package/lib/Utils/singleToArray.js +1 -1
  330. package/lib/Utils/supportPseudoClass.d.ts +2 -0
  331. package/lib/Utils/supportPseudoClass.d.ts.map +1 -0
  332. package/lib/Utils/supportPseudoClass.js +23 -0
  333. package/lib/Utils/tabbableElements.d.ts +2 -0
  334. package/lib/Utils/tabbableElements.d.ts.map +1 -0
  335. package/lib/Utils/tabbableElements.js +2 -2
  336. package/lib/connectToWebChat.js +17 -7
  337. package/lib/hooks/index.d.ts +21 -0
  338. package/lib/hooks/index.d.ts.map +1 -0
  339. package/lib/hooks/index.js +25 -25
  340. package/lib/hooks/internal/BypassSpeechSynthesisPonyfill.js +100 -41
  341. package/lib/hooks/internal/UITracker.js +2 -2
  342. package/lib/hooks/internal/useChanged.js +8 -1
  343. package/lib/hooks/internal/useDispatchScrollPosition.js +3 -7
  344. package/lib/hooks/internal/useDispatchTranscriptFocusByActivityKey.d.ts +2 -0
  345. package/lib/hooks/internal/useDispatchTranscriptFocusByActivityKey.d.ts.map +1 -0
  346. package/lib/hooks/internal/useDispatchTranscriptFocusByActivityKey.js +15 -0
  347. package/lib/hooks/internal/useEnterKeyHint.js +1 -1
  348. package/lib/hooks/internal/useFocusVisible.d.ts +3 -0
  349. package/lib/hooks/internal/useFocusVisible.d.ts.map +1 -0
  350. package/lib/hooks/internal/useFocusVisible.js +48 -0
  351. package/lib/hooks/internal/useForceRender.js +2 -2
  352. package/lib/hooks/internal/useForceRenderAtInterval.js +2 -2
  353. package/lib/hooks/internal/useInternalRenderMarkdownInline.js +1 -1
  354. package/lib/hooks/internal/useLocalizeAccessKey.js +2 -2
  355. package/lib/hooks/internal/useMemoWithPrevious.d.ts +3 -0
  356. package/lib/hooks/internal/useMemoWithPrevious.d.ts.map +1 -0
  357. package/lib/hooks/internal/useMemoWithPrevious.js +22 -0
  358. package/lib/hooks/internal/useMemoize.d.ts +14 -0
  359. package/lib/hooks/internal/useMemoize.d.ts.map +1 -0
  360. package/lib/hooks/internal/useMemoize.js +12 -3
  361. package/lib/hooks/internal/useNavigatorPlatform.js +1 -1
  362. package/lib/hooks/internal/useNonce.js +1 -1
  363. package/lib/hooks/internal/useObserveFocusVisible.d.ts +3 -0
  364. package/lib/hooks/internal/useObserveFocusVisible.d.ts.map +1 -0
  365. package/lib/hooks/internal/useObserveFocusVisible.js +208 -0
  366. package/lib/hooks/internal/usePrevious.d.ts +2 -0
  367. package/lib/hooks/internal/usePrevious.d.ts.map +1 -0
  368. package/lib/hooks/internal/usePrevious.js +18 -0
  369. package/lib/hooks/internal/useRegisterFocusSendBox.js +1 -1
  370. package/lib/hooks/internal/useRegisterFocusTranscript.js +1 -1
  371. package/lib/hooks/internal/useRegisterScrollRelative.js +1 -1
  372. package/lib/hooks/internal/useRegisterScrollTo.js +1 -1
  373. package/lib/hooks/internal/useRegisterScrollToEnd.js +1 -1
  374. package/lib/hooks/internal/useReplaceEmoticon.js +2 -2
  375. package/lib/hooks/internal/useResumeAudioContext.js +33 -0
  376. package/lib/hooks/internal/useScrollRelative.js +1 -1
  377. package/lib/hooks/internal/useSettableDictateAbortable.js +1 -1
  378. package/lib/hooks/internal/useStateRef.d.ts +3 -0
  379. package/lib/hooks/internal/useStateRef.d.ts.map +1 -0
  380. package/lib/hooks/internal/useStateRef.js +40 -0
  381. package/lib/hooks/internal/useSuggestedActionsAccessKey.js +1 -1
  382. package/lib/hooks/internal/useUniqueId.d.ts +2 -0
  383. package/lib/hooks/internal/useUniqueId.d.ts.map +1 -0
  384. package/lib/hooks/internal/useUniqueId.js +1 -1
  385. package/lib/hooks/internal/useValueRef.d.ts +3 -0
  386. package/lib/hooks/internal/useValueRef.d.ts.map +1 -0
  387. package/lib/hooks/internal/useValueRef.js +25 -0
  388. package/lib/hooks/useDictateAbortable.d.ts +2 -0
  389. package/lib/hooks/useDictateAbortable.d.ts.map +1 -0
  390. package/lib/hooks/useDictateAbortable.js +2 -2
  391. package/lib/hooks/useFocus.d.ts +2 -0
  392. package/lib/hooks/useFocus.d.ts.map +1 -0
  393. package/lib/hooks/useFocus.js +1 -1
  394. package/lib/hooks/useFocusSendBox.d.ts +3 -0
  395. package/lib/hooks/useFocusSendBox.d.ts.map +1 -0
  396. package/lib/hooks/useFocusSendBox.js +2 -1
  397. package/lib/hooks/useObserveScrollPosition.d.ts +3 -0
  398. package/lib/hooks/useObserveScrollPosition.d.ts.map +1 -0
  399. package/lib/hooks/useObserveScrollPosition.js +2 -2
  400. package/lib/hooks/useObserveTranscriptFocus.d.ts +5 -0
  401. package/lib/hooks/useObserveTranscriptFocus.d.ts.map +1 -0
  402. package/lib/hooks/useObserveTranscriptFocus.js +2 -2
  403. package/lib/hooks/useRenderMarkdownAsHTML.d.ts +5 -0
  404. package/lib/hooks/useRenderMarkdownAsHTML.d.ts.map +1 -0
  405. package/lib/hooks/useRenderMarkdownAsHTML.js +2 -2
  406. package/lib/hooks/useScrollDown.d.ts +4 -0
  407. package/lib/hooks/useScrollDown.d.ts.map +1 -0
  408. package/lib/hooks/useScrollDown.js +1 -1
  409. package/lib/hooks/useScrollTo.d.ts +5 -0
  410. package/lib/hooks/useScrollTo.d.ts.map +1 -0
  411. package/lib/hooks/useScrollTo.js +1 -1
  412. package/lib/hooks/useScrollToEnd.d.ts +2 -0
  413. package/lib/hooks/useScrollToEnd.d.ts.map +1 -0
  414. package/lib/hooks/useScrollToEnd.js +1 -1
  415. package/lib/hooks/useScrollUp.d.ts +4 -0
  416. package/lib/hooks/useScrollUp.d.ts.map +1 -0
  417. package/lib/hooks/useScrollUp.js +1 -1
  418. package/lib/hooks/useSendFiles.d.ts +2 -0
  419. package/lib/hooks/useSendFiles.d.ts.map +1 -0
  420. package/lib/hooks/useSendFiles.js +3 -3
  421. package/lib/hooks/useStyleSet.d.ts +2 -0
  422. package/lib/hooks/useStyleSet.d.ts.map +1 -0
  423. package/lib/hooks/useStyleSet.js +1 -1
  424. package/lib/hooks/useWebSpeechPonyfill.d.ts +3 -0
  425. package/lib/hooks/useWebSpeechPonyfill.d.ts.map +1 -0
  426. package/lib/hooks/useWebSpeechPonyfill.js +1 -1
  427. package/lib/index.d.ts +219 -22
  428. package/lib/index.d.ts.map +1 -1
  429. package/lib/index.js +22 -20
  430. package/lib/providers/ActivityTree/ActivityTreeComposer.d.ts +5 -0
  431. package/lib/providers/ActivityTree/ActivityTreeComposer.d.ts.map +1 -0
  432. package/lib/providers/ActivityTree/ActivityTreeComposer.js +86 -0
  433. package/lib/providers/ActivityTree/private/Context.d.ts +9 -0
  434. package/lib/providers/ActivityTree/private/Context.d.ts.map +1 -0
  435. package/lib/providers/ActivityTree/private/Context.js +13 -0
  436. package/lib/providers/ActivityTree/private/types.d.ts +10 -0
  437. package/lib/providers/ActivityTree/private/types.d.ts.map +1 -0
  438. package/lib/providers/ActivityTree/private/types.js +2 -0
  439. package/lib/providers/ActivityTree/private/useActivitiesWithRenderer.d.ts +4 -0
  440. package/lib/providers/ActivityTree/private/useActivitiesWithRenderer.d.ts.map +1 -0
  441. package/lib/providers/ActivityTree/private/useActivitiesWithRenderer.js +58 -0
  442. package/lib/providers/ActivityTree/private/useActivityTreeWithRenderer.d.ts +5 -0
  443. package/lib/providers/ActivityTree/private/useActivityTreeWithRenderer.d.ts.map +1 -0
  444. package/lib/providers/ActivityTree/private/useActivityTreeWithRenderer.js +166 -0
  445. package/lib/providers/ActivityTree/private/useContext.d.ts +3 -0
  446. package/lib/providers/ActivityTree/private/useContext.d.ts.map +1 -0
  447. package/lib/providers/ActivityTree/private/useContext.js +24 -0
  448. package/lib/providers/ActivityTree/useActivityTreeWithRenderer.d.ts +8 -0
  449. package/lib/providers/ActivityTree/useActivityTreeWithRenderer.d.ts.map +1 -0
  450. package/lib/providers/ActivityTree/useActivityTreeWithRenderer.js +17 -0
  451. package/lib/providers/LiveRegionTwin/LiveRegionTwinComposer.d.ts +35 -0
  452. package/lib/providers/LiveRegionTwin/LiveRegionTwinComposer.d.ts.map +1 -0
  453. package/lib/providers/LiveRegionTwin/LiveRegionTwinComposer.js +156 -0
  454. package/lib/providers/LiveRegionTwin/private/Context.d.ts +10 -0
  455. package/lib/providers/LiveRegionTwin/private/Context.d.ts.map +1 -0
  456. package/lib/providers/LiveRegionTwin/private/Context.js +13 -0
  457. package/lib/providers/LiveRegionTwin/private/LiveRegionTwinContainer.d.ts +11 -0
  458. package/lib/providers/LiveRegionTwin/private/LiveRegionTwinContainer.d.ts.map +1 -0
  459. package/lib/providers/LiveRegionTwin/private/LiveRegionTwinContainer.js +86 -0
  460. package/lib/providers/LiveRegionTwin/private/types.d.ts +8 -0
  461. package/lib/providers/LiveRegionTwin/private/types.d.ts.map +1 -0
  462. package/lib/providers/LiveRegionTwin/private/types.js +2 -0
  463. package/lib/providers/LiveRegionTwin/private/useContext.d.ts +3 -0
  464. package/lib/providers/LiveRegionTwin/private/useContext.d.ts.map +1 -0
  465. package/lib/providers/LiveRegionTwin/private/useContext.js +24 -0
  466. package/lib/providers/LiveRegionTwin/private/useMarkAllAsRenderedEffect.d.ts +2 -0
  467. package/lib/providers/LiveRegionTwin/private/useMarkAllAsRenderedEffect.d.ts.map +1 -0
  468. package/lib/providers/LiveRegionTwin/private/useMarkAllAsRenderedEffect.js +24 -0
  469. package/lib/providers/LiveRegionTwin/private/useStaticElementEntries.d.ts +3 -0
  470. package/lib/providers/LiveRegionTwin/private/useStaticElementEntries.d.ts.map +1 -0
  471. package/lib/providers/LiveRegionTwin/private/useStaticElementEntries.js +15 -0
  472. package/lib/providers/LiveRegionTwin/useQueueStaticElement.d.ts +8 -0
  473. package/lib/providers/LiveRegionTwin/useQueueStaticElement.d.ts.map +1 -0
  474. package/lib/providers/LiveRegionTwin/useQueueStaticElement.js +20 -0
  475. package/lib/providers/TranscriptFocus/TranscriptFocusComposer.d.ts +7 -0
  476. package/lib/providers/TranscriptFocus/TranscriptFocusComposer.d.ts.map +1 -0
  477. package/lib/providers/TranscriptFocus/TranscriptFocusComposer.js +184 -0
  478. package/lib/providers/TranscriptFocus/private/Context.d.ts +12 -0
  479. package/lib/providers/TranscriptFocus/private/Context.d.ts.map +1 -0
  480. package/lib/providers/TranscriptFocus/private/Context.js +13 -0
  481. package/lib/providers/TranscriptFocus/private/useContext.d.ts +2 -0
  482. package/lib/providers/TranscriptFocus/private/useContext.d.ts.map +1 -0
  483. package/lib/providers/TranscriptFocus/private/useContext.js +24 -0
  484. package/lib/providers/TranscriptFocus/useActiveDescendantId.d.ts +2 -0
  485. package/lib/providers/TranscriptFocus/useActiveDescendantId.d.ts.map +1 -0
  486. package/lib/providers/TranscriptFocus/useActiveDescendantId.js +15 -0
  487. package/lib/providers/TranscriptFocus/useFocusByActivityKey.d.ts +8 -0
  488. package/lib/providers/TranscriptFocus/useFocusByActivityKey.d.ts.map +1 -0
  489. package/lib/providers/TranscriptFocus/useFocusByActivityKey.js +21 -0
  490. package/lib/providers/TranscriptFocus/useFocusRelativeActivity.d.ts +2 -0
  491. package/lib/providers/TranscriptFocus/useFocusRelativeActivity.d.ts.map +1 -0
  492. package/lib/providers/TranscriptFocus/useFocusRelativeActivity.js +15 -0
  493. package/lib/providers/TranscriptFocus/useFocusedActivityKey.d.ts +2 -0
  494. package/lib/providers/TranscriptFocus/useFocusedActivityKey.d.ts.map +1 -0
  495. package/lib/providers/TranscriptFocus/useFocusedActivityKey.js +15 -0
  496. package/lib/providers/TranscriptFocus/useFocusedExplicitly.d.ts +2 -0
  497. package/lib/providers/TranscriptFocus/useFocusedExplicitly.d.ts.map +1 -0
  498. package/lib/providers/TranscriptFocus/useFocusedExplicitly.js +15 -0
  499. package/lib/providers/TranscriptFocus/useGetDescendantIdByActivityKey.d.ts +2 -0
  500. package/lib/providers/TranscriptFocus/useGetDescendantIdByActivityKey.d.ts.map +1 -0
  501. package/lib/providers/TranscriptFocus/useGetDescendantIdByActivityKey.js +15 -0
  502. package/lib/tsconfig.json +1 -1
  503. package/lib/types/ScrollPosition.d.ts +6 -0
  504. package/lib/types/ScrollPosition.d.ts.map +1 -0
  505. package/lib/types/ScrollPosition.js +2 -0
  506. package/package.json +33 -40
  507. package/src/Activity/{Avatar.js → Avatar.tsx} +9 -2
  508. package/src/Activity/{Bubble.js → Bubble.tsx} +10 -2
  509. package/src/Activity/CarouselFilmStrip.js +20 -29
  510. package/src/Activity/CarouselFilmStripAttachment.js +91 -0
  511. package/src/Activity/{Speak.js → Speak.tsx} +12 -5
  512. package/src/Activity/{StackedLayout.js → StackedLayout.tsx} +46 -20
  513. package/src/Attachment/Assets/DownloadIcon.js +8 -1
  514. package/src/Attachment/{AudioContent.js → AudioContent.tsx} +12 -3
  515. package/src/Attachment/FileAttachment.js +1 -1
  516. package/src/Attachment/{FileContent.js → FileContent.tsx} +22 -7
  517. package/src/Attachment/{HTMLVideoContent.js → HTMLVideoContent.tsx} +10 -2
  518. package/src/Attachment/{ImageContent.js → ImageContent.tsx} +7 -2
  519. package/src/Attachment/{TextContent.js → TextContent.tsx} +14 -7
  520. package/src/Attachment/{VideoContent.js → VideoContent.tsx} +10 -2
  521. package/src/Attachment/{VimeoContent.js → VimeoContent.tsx} +15 -8
  522. package/src/Attachment/{YouTubeContent.js → YouTubeContent.tsx} +12 -5
  523. package/src/{BasicSendBox.js → BasicSendBox.tsx} +9 -5
  524. package/src/BasicToaster.js +9 -5
  525. package/src/BasicTranscript.tsx +878 -0
  526. package/src/{BasicTypingIndicator.js → BasicTypingIndicator.tsx} +4 -3
  527. package/src/{BasicWebChat.js → BasicWebChat.tsx} +13 -4
  528. package/src/{Composer.js → Composer.tsx} +82 -71
  529. package/src/Dictation.js +13 -4
  530. package/src/{ErrorBox.js → ErrorBox.tsx} +7 -2
  531. package/src/Middleware/Activity/createCoreMiddleware.tsx +78 -0
  532. package/src/Middleware/ActivityStatus/SendStatus/{SendStatus.js → SendStatus.tsx} +8 -3
  533. package/src/Middleware/ActivityStatus/{Timestamp.js → Timestamp.tsx} +8 -2
  534. package/src/Middleware/ActivityStatus/{createCoreMiddleware.js → createCoreMiddleware.tsx} +3 -1
  535. package/src/Middleware/ActivityStatus/createSendStatusMiddleware.js +10 -6
  536. package/src/Middleware/ActivityStatus/createTimestampMiddleware.js +10 -8
  537. package/src/Middleware/Attachment/createCoreMiddleware.tsx +44 -0
  538. package/src/Middleware/AttachmentForScreenReader/createCoreMiddleware.tsx +40 -0
  539. package/src/Middleware/Avatar/{createCoreMiddleware.js → createCoreMiddleware.tsx} +19 -11
  540. package/src/Middleware/CardAction/createCoreMiddleware.js +51 -42
  541. package/src/Middleware/GroupActivities/createCoreMiddleware.js +6 -4
  542. package/src/Middleware/ScrollToEndButton/ScrollToEndButton.js +45 -0
  543. package/src/Middleware/ScrollToEndButton/createScrollToEndButtonMiddleware.ts +19 -0
  544. package/src/Middleware/Toast/createCoreMiddleware.tsx +24 -0
  545. package/src/Middleware/TypingIndicator/{createCoreMiddleware.js → createCoreMiddleware.tsx} +10 -5
  546. package/src/{ReactWebChat.js → ReactWebChat.tsx} +25 -7
  547. package/src/ScreenReaderActivity.js +65 -40
  548. package/src/{ScreenReaderText.js → ScreenReaderText.tsx} +27 -9
  549. package/src/SendBox/Assets/AttachmentIcon.js +1 -1
  550. package/src/SendBox/Assets/MicrophoneIcon.js +1 -1
  551. package/src/SendBox/{AutoResizeTextArea.js → AutoResizeTextArea.tsx} +30 -4
  552. package/src/SendBox/{DictationInterims.js → DictationInterims.tsx} +6 -2
  553. package/src/SendBox/{IconButton.js → IconButton.tsx} +19 -3
  554. package/src/SendBox/{MicrophoneButton.js → MicrophoneButton.tsx} +35 -25
  555. package/src/SendBox/{SendButton.js → SendButton.tsx} +8 -3
  556. package/src/SendBox/{SuggestedAction.js → SuggestedAction.tsx} +62 -39
  557. package/src/SendBox/{SuggestedActions.js → SuggestedActions.tsx} +70 -22
  558. package/src/SendBox/{TextBox.js → TextBox.tsx} +21 -7
  559. package/src/SendBox/{UploadButton.js → UploadButton.tsx} +7 -3
  560. package/src/Styles/StyleSet/BasicTranscript.ts +34 -20
  561. package/src/Styles/StyleSet/Bubble.ts +0 -1
  562. package/src/Styles/StyleSet/CarouselFilmStrip.ts +12 -30
  563. package/src/Styles/StyleSet/CarouselFilmStripAttachment.ts +57 -0
  564. package/src/Styles/StyleSet/KeyboardHelp.ts +157 -0
  565. package/src/Styles/StyleSet/ScrollToEndButton.ts +33 -31
  566. package/src/Styles/StyleSet/SendBoxButton.ts +84 -13
  567. package/src/Styles/StyleSet/SendBoxTextBox.ts +1 -2
  568. package/src/Styles/StyleSet/StackedLayout.ts +13 -11
  569. package/src/Styles/StyleSet/SuggestedAction.ts +130 -43
  570. package/src/Styles/StyleSet/SuggestedActions.ts +13 -5
  571. package/src/Styles/createStyleSet.ts +43 -40
  572. package/src/Styles/mirrorStyle.js +10 -2
  573. package/src/Toast/CollapseIcon.js +9 -1
  574. package/src/Toast/DismissIcon.js +9 -1
  575. package/src/Toast/ExpandIcon.js +9 -1
  576. package/src/Toast/NotificationIcon.js +4 -1
  577. package/src/Toast/createToastMiddleware.tsx +15 -0
  578. package/src/Transcript/ActivityRow.tsx +124 -0
  579. package/src/Transcript/ActivityTextAlt.tsx +32 -0
  580. package/src/Transcript/FocusTrap.tsx +64 -0
  581. package/src/Transcript/KeyboardHelp.tsx +282 -0
  582. package/src/Transcript/LiveRegionTranscript.tsx +181 -0
  583. package/src/Transcript/types.ts +1 -0
  584. package/src/Transcript/useActivityAccessibleName.ts +85 -0
  585. package/src/Utils/{AccessibleButton.js → AccessibleButton.tsx} +19 -4
  586. package/src/Utils/{AccessibleInputText.js → AccessibleInputText.tsx} +48 -5
  587. package/src/Utils/{AccessibleTextArea.js → AccessibleTextArea.tsx} +67 -6
  588. package/src/Utils/{FocusRedirector.js → FocusRedirector.tsx} +21 -8
  589. package/src/Utils/InlineMarkdown.js +18 -2
  590. package/src/Utils/TypeFocusSink/FocusBox.js +4 -4
  591. package/src/Utils/TypeFocusSink/getTabIndex.ts +1 -1
  592. package/src/Utils/TypeFocusSink/inputtableKey.ts +5 -1
  593. package/src/Utils/activityAltText.ts +135 -0
  594. package/src/Utils/createCustomEvent.js +7 -1
  595. package/src/Utils/detectBrowser.js +2 -1
  596. package/src/Utils/findAncestor.ts +12 -0
  597. package/src/Utils/getActivityUniqueId.ts +5 -0
  598. package/src/Utils/intersectionOf.spec.js +2 -0
  599. package/src/Utils/intersectionOf.ts +14 -0
  600. package/src/Utils/isZeroOrPositive.ts +7 -0
  601. package/src/Utils/mapMap.js +7 -1
  602. package/src/Utils/mapMap.spec.js +2 -0
  603. package/src/Utils/removeInline.spec.js +2 -0
  604. package/src/Utils/scrollIntoViewWithBlockNearest.ts +20 -0
  605. package/src/Utils/shallowEquals.js +8 -1
  606. package/src/Utils/{singleToArray.js → singleToArray.ts} +1 -1
  607. package/src/Utils/supportPseudoClass.ts +17 -0
  608. package/src/Utils/{tabbableElements.js → tabbableElements.ts} +6 -5
  609. package/src/Utils/walkMarkdownTokens.spec.js +3 -3
  610. package/src/connectToWebChat.js +11 -4
  611. package/src/hooks/{index.js → index.ts} +1 -0
  612. package/src/hooks/internal/BypassSpeechSynthesisPonyfill.js +70 -17
  613. package/src/hooks/internal/useChanged.ts +17 -0
  614. package/src/hooks/internal/useDispatchScrollPosition.js +1 -3
  615. package/src/hooks/internal/useDispatchTranscriptFocusByActivityKey.ts +5 -0
  616. package/src/hooks/internal/useFocusVisible.ts +22 -0
  617. package/src/hooks/internal/useMemoWithPrevious.ts +16 -0
  618. package/src/hooks/internal/useMemoize.spec.js +3 -1
  619. package/src/hooks/internal/useMemoize.ts +53 -0
  620. package/src/hooks/internal/useObserveFocusVisible.ts +252 -0
  621. package/src/hooks/internal/usePrevious.ts +12 -0
  622. package/src/hooks/internal/useResumeAudioContext.ts +7 -0
  623. package/src/hooks/internal/useScrollRelative.js +4 -3
  624. package/src/hooks/internal/useStateRef.ts +31 -0
  625. package/src/hooks/internal/{useUniqueId.js → useUniqueId.ts} +1 -1
  626. package/src/hooks/internal/useValueRef.ts +22 -0
  627. package/src/hooks/{useDictateAbortable.js → useDictateAbortable.ts} +1 -1
  628. package/src/hooks/{useFocus.js → useFocus.ts} +1 -1
  629. package/src/hooks/{useFocusSendBox.js → useFocusSendBox.ts} +2 -1
  630. package/src/hooks/{useObserveScrollPosition.js → useObserveScrollPosition.ts} +6 -1
  631. package/src/hooks/{useObserveTranscriptFocus.js → useObserveTranscriptFocus.ts} +6 -1
  632. package/src/hooks/useRenderMarkdownAsHTML.ts +23 -0
  633. package/src/hooks/{useScrollDown.js → useScrollDown.ts} +1 -1
  634. package/src/hooks/useScrollTo.ts +16 -0
  635. package/src/hooks/useScrollToEnd.ts +12 -0
  636. package/src/hooks/{useScrollUp.js → useScrollUp.ts} +1 -1
  637. package/src/hooks/{useSendFiles.js → useSendFiles.ts} +3 -2
  638. package/src/hooks/{useStyleSet.js → useStyleSet.ts} +1 -1
  639. package/src/hooks/useWebSpeechPonyfill.ts +7 -0
  640. package/src/index.ts +7 -12
  641. package/src/providers/ActivityTree/ActivityTreeComposer.tsx +74 -0
  642. package/src/providers/ActivityTree/private/Context.ts +12 -0
  643. package/src/providers/ActivityTree/private/types.ts +12 -0
  644. package/src/providers/ActivityTree/private/useActivitiesWithRenderer.ts +66 -0
  645. package/src/providers/ActivityTree/private/useActivityTreeWithRenderer.ts +140 -0
  646. package/src/providers/ActivityTree/private/useContext.ts +15 -0
  647. package/src/providers/ActivityTree/useActivityTreeWithRenderer.ts +16 -0
  648. package/src/providers/LiveRegionTwin/LiveRegionTwinComposer.tsx +154 -0
  649. package/src/providers/LiveRegionTwin/private/Context.ts +15 -0
  650. package/src/providers/LiveRegionTwin/private/LiveRegionTwinContainer.tsx +64 -0
  651. package/src/providers/LiveRegionTwin/private/types.ts +10 -0
  652. package/src/providers/LiveRegionTwin/private/useContext.ts +15 -0
  653. package/src/providers/LiveRegionTwin/private/useMarkAllAsRenderedEffect.ts +13 -0
  654. package/src/providers/LiveRegionTwin/private/useStaticElementEntries.ts +7 -0
  655. package/src/providers/LiveRegionTwin/useQueueStaticElement.ts +12 -0
  656. package/src/providers/TranscriptFocus/TranscriptFocusComposer.tsx +180 -0
  657. package/src/providers/TranscriptFocus/private/Context.ts +16 -0
  658. package/src/providers/TranscriptFocus/private/useContext.ts +13 -0
  659. package/src/providers/TranscriptFocus/useActiveDescendantId.ts +5 -0
  660. package/src/providers/TranscriptFocus/useFocusByActivityKey.ts +14 -0
  661. package/src/providers/TranscriptFocus/useFocusRelativeActivity.ts +5 -0
  662. package/src/providers/TranscriptFocus/useFocusedActivityKey.ts +5 -0
  663. package/src/providers/TranscriptFocus/useFocusedExplicitly.ts +5 -0
  664. package/src/providers/TranscriptFocus/useGetDescendantIdByActivityKey.ts +5 -0
  665. package/src/tsconfig.json +1 -1
  666. package/src/types/ScrollPosition.ts +6 -0
  667. package/.eslintignore +0 -9
  668. package/lib/Activity/ScrollToEndButton.js +0 -81
  669. package/lib/Attachment/Assets/ErrorIcon.js +0 -22
  670. package/lib/Utils/findLastIndex.js +0 -32
  671. package/lib/Utils/remarkStripMarkdown.js +0 -26
  672. package/lib/hooks/internal/useAcknowledgedActivity.js +0 -90
  673. package/lib/hooks/internal/useDispatchTranscriptFocus.js +0 -19
  674. package/lib/hooks/internal/useStripMarkdown.js +0 -19
  675. package/src/Activity/ScrollToEndButton.js +0 -58
  676. package/src/Attachment/Assets/ErrorIcon.js +0 -9
  677. package/src/BasicTranscript.js +0 -1123
  678. package/src/Middleware/Activity/createCoreMiddleware.js +0 -71
  679. package/src/Middleware/Attachment/createCoreMiddleware.js +0 -43
  680. package/src/Middleware/AttachmentForScreenReader/createCoreMiddleware.js +0 -37
  681. package/src/Middleware/Toast/createCoreMiddleware.js +0 -20
  682. package/src/Toast/createToastMiddleware.js +0 -11
  683. package/src/Utils/findLastIndex.js +0 -11
  684. package/src/Utils/findLastIndex.spec.js +0 -29
  685. package/src/Utils/getActivityUniqueId.js +0 -3
  686. package/src/Utils/intersectionOf.js +0 -11
  687. package/src/Utils/isZeroOrPositive.js +0 -4
  688. package/src/Utils/remarkStripMarkdown.js +0 -13
  689. package/src/hooks/internal/useAcknowledgedActivity.js +0 -65
  690. package/src/hooks/internal/useChanged.js +0 -10
  691. package/src/hooks/internal/useDispatchTranscriptFocus.js +0 -7
  692. package/src/hooks/internal/useMemoize.js +0 -37
  693. package/src/hooks/internal/useStripMarkdown.js +0 -7
  694. package/src/hooks/useRenderMarkdownAsHTML.js +0 -20
  695. package/src/hooks/useScrollTo.js +0 -11
  696. package/src/hooks/useScrollToEnd.js +0 -11
  697. package/src/hooks/useWebSpeechPonyfill.js +0 -5
  698. package/src/index.tsx +0 -35
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+
12
+ var _react = _interopRequireWildcard(require("react"));
13
+
14
+ var _useMarkAllAsRenderedEffect = _interopRequireDefault(require("./useMarkAllAsRenderedEffect"));
15
+
16
+ var _useStaticElementEntries = _interopRequireDefault(require("./useStaticElementEntries"));
17
+
18
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
+
20
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
+
22
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
+
24
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
25
+
26
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
27
+
28
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
29
+
30
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
31
+
32
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
33
+
34
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
35
+
36
+ // This container is marked as private because we assume there is only one instance under the <LiveRegionTwinContext>.
37
+ var LiveRegionTwinContainer = function LiveRegionTwinContainer(_ref) {
38
+ var ariaLabel = _ref['aria-label'],
39
+ ariaLive = _ref['aria-live'],
40
+ ariaRoleDescription = _ref['aria-roledescription'],
41
+ className = _ref.className,
42
+ role = _ref.role;
43
+
44
+ var _useStaticElementEntr = (0, _useStaticElementEntries.default)(),
45
+ _useStaticElementEntr2 = _slicedToArray(_useStaticElementEntr, 1),
46
+ staticElementEntries = _useStaticElementEntr2[0]; // We assume there is only one instance under the <LiveRegionTwinContext>.
47
+ // The assumption made us safe to mark everything is rendered.
48
+ // In contrary, if we have 0-to-many at different time, we may falsely mark something as rendered.
49
+
50
+
51
+ (0, _useMarkAllAsRenderedEffect.default)();
52
+ return /*#__PURE__*/_react.default.createElement("div", {
53
+ "aria-label": ariaLabel,
54
+ "aria-live": ariaLive,
55
+ "aria-roledescription": ariaRoleDescription,
56
+ className: className,
57
+ role: role
58
+ }, staticElementEntries.map(function (_ref2) {
59
+ var element = _ref2.element,
60
+ key = _ref2.key;
61
+ return typeof element === 'string' ? /*#__PURE__*/_react.default.createElement("div", {
62
+ key: key
63
+ }, element) : /*#__PURE__*/_react.default.createElement(_react.Fragment, {
64
+ key: key
65
+ }, element);
66
+ }));
67
+ };
68
+
69
+ LiveRegionTwinContainer.defaultProps = {
70
+ 'aria-label': undefined,
71
+ 'aria-roledescription': undefined,
72
+ className: undefined,
73
+ role: undefined
74
+ };
75
+ LiveRegionTwinContainer.propTypes = {
76
+ 'aria-label': _propTypes.default.string,
77
+ // PropTypes.oneOf() returns type of `string`, but not `'assertive' | 'polite'`.
78
+ // @ts-ignore
79
+ 'aria-live': _propTypes.default.oneOf(['assertive', 'polite']).isRequired,
80
+ 'aria-roledescription': _propTypes.default.string,
81
+ className: _propTypes.default.string,
82
+ role: _propTypes.default.string
83
+ };
84
+ var _default = LiveRegionTwinContainer;
85
+ exports.default = _default;
86
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvTGl2ZVJlZ2lvblR3aW4vcHJpdmF0ZS9MaXZlUmVnaW9uVHdpbkNvbnRhaW5lci50c3giXSwibmFtZXMiOlsiTGl2ZVJlZ2lvblR3aW5Db250YWluZXIiLCJhcmlhTGFiZWwiLCJhcmlhTGl2ZSIsImFyaWFSb2xlRGVzY3JpcHRpb24iLCJjbGFzc05hbWUiLCJyb2xlIiwic3RhdGljRWxlbWVudEVudHJpZXMiLCJtYXAiLCJlbGVtZW50Iiwia2V5IiwiZGVmYXVsdFByb3BzIiwidW5kZWZpbmVkIiwicHJvcFR5cGVzIiwiUHJvcFR5cGVzIiwic3RyaW5nIiwib25lT2YiLCJpc1JlcXVpcmVkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFJQTs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFVQTtBQUNBLElBQU1BLHVCQUEwRCxHQUFHLFNBQTdEQSx1QkFBNkQsT0FNN0Q7QUFBQSxNQUxVQyxTQUtWLFFBTEosWUFLSTtBQUFBLE1BSlNDLFFBSVQsUUFKSixXQUlJO0FBQUEsTUFIb0JDLG1CQUdwQixRQUhKLHNCQUdJO0FBQUEsTUFGSkMsU0FFSSxRQUZKQSxTQUVJO0FBQUEsTUFESkMsSUFDSSxRQURKQSxJQUNJOztBQUNKLDhCQUErQix1Q0FBL0I7QUFBQTtBQUFBLE1BQU9DLG9CQUFQLDZCQURJLENBR0o7QUFDQTtBQUNBOzs7QUFDQTtBQUVBLHNCQUNFO0FBQ0Usa0JBQVlMLFNBRGQ7QUFFRSxpQkFBV0MsUUFGYjtBQUdFLDRCQUFzQkMsbUJBSHhCO0FBSUUsSUFBQSxTQUFTLEVBQUVDLFNBSmI7QUFLRSxJQUFBLElBQUksRUFBRUM7QUFMUixLQU9HQyxvQkFBb0IsQ0FBQ0MsR0FBckIsQ0FBeUI7QUFBQSxRQUFHQyxPQUFILFNBQUdBLE9BQUg7QUFBQSxRQUFZQyxHQUFaLFNBQVlBLEdBQVo7QUFBQSxXQUN4QixPQUFPRCxPQUFQLEtBQW1CLFFBQW5CLGdCQUE4QjtBQUFLLE1BQUEsR0FBRyxFQUFFQztBQUFWLE9BQWdCRCxPQUFoQixDQUE5QixnQkFBK0QsNkJBQUMsZUFBRDtBQUFVLE1BQUEsR0FBRyxFQUFFQztBQUFmLE9BQXFCRCxPQUFyQixDQUR2QztBQUFBLEdBQXpCLENBUEgsQ0FERjtBQWFELENBM0JEOztBQTZCQVIsdUJBQXVCLENBQUNVLFlBQXhCLEdBQXVDO0FBQ3JDLGdCQUFjQyxTQUR1QjtBQUVyQywwQkFBd0JBLFNBRmE7QUFHckNQLEVBQUFBLFNBQVMsRUFBRU8sU0FIMEI7QUFJckNOLEVBQUFBLElBQUksRUFBRU07QUFKK0IsQ0FBdkM7QUFPQVgsdUJBQXVCLENBQUNZLFNBQXhCLEdBQW9DO0FBQ2xDLGdCQUFjQyxtQkFBVUMsTUFEVTtBQUVsQztBQUNBO0FBQ0EsZUFBYUQsbUJBQVVFLEtBQVYsQ0FBZ0IsQ0FBQyxXQUFELEVBQWMsUUFBZCxDQUFoQixFQUF5Q0MsVUFKcEI7QUFLbEMsMEJBQXdCSCxtQkFBVUMsTUFMQTtBQU1sQ1YsRUFBQUEsU0FBUyxFQUFFUyxtQkFBVUMsTUFOYTtBQU9sQ1QsRUFBQUEsSUFBSSxFQUFFUSxtQkFBVUM7QUFQa0IsQ0FBcEM7ZUFVZWQsdUIiLCJzb3VyY2VSb290IjoiY29tcG9uZW50Oi8vLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgUmVhY3QsIHsgRnJhZ21lbnQgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB0eXBlIHsgVkZDIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgdXNlTWFya0FsbEFzUmVuZGVyZWRFZmZlY3QgZnJvbSAnLi91c2VNYXJrQWxsQXNSZW5kZXJlZEVmZmVjdCc7XG5pbXBvcnQgdXNlU3RhdGljRWxlbWVudEVudHJpZXMgZnJvbSAnLi91c2VTdGF0aWNFbGVtZW50RW50cmllcyc7XG5cbnR5cGUgTGl2ZVJlZ2lvblR3aW5Db250YWluZXJQcm9wcyA9IHtcbiAgJ2FyaWEtbGFiZWwnPzogc3RyaW5nO1xuICAnYXJpYS1saXZlJzogJ2Fzc2VydGl2ZScgfCAncG9saXRlJztcbiAgJ2FyaWEtcm9sZWRlc2NyaXB0aW9uJz86IHN0cmluZztcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xuICByb2xlPzogc3RyaW5nO1xufTtcblxuLy8gVGhpcyBjb250YWluZXIgaXMgbWFya2VkIGFzIHByaXZhdGUgYmVjYXVzZSB3ZSBhc3N1bWUgdGhlcmUgaXMgb25seSBvbmUgaW5zdGFuY2UgdW5kZXIgdGhlIDxMaXZlUmVnaW9uVHdpbkNvbnRleHQ+LlxuY29uc3QgTGl2ZVJlZ2lvblR3aW5Db250YWluZXI6IFZGQzxMaXZlUmVnaW9uVHdpbkNvbnRhaW5lclByb3BzPiA9ICh7XG4gICdhcmlhLWxhYmVsJzogYXJpYUxhYmVsLFxuICAnYXJpYS1saXZlJzogYXJpYUxpdmUsXG4gICdhcmlhLXJvbGVkZXNjcmlwdGlvbic6IGFyaWFSb2xlRGVzY3JpcHRpb24sXG4gIGNsYXNzTmFtZSxcbiAgcm9sZVxufSkgPT4ge1xuICBjb25zdCBbc3RhdGljRWxlbWVudEVudHJpZXNdID0gdXNlU3RhdGljRWxlbWVudEVudHJpZXMoKTtcblxuICAvLyBXZSBhc3N1bWUgdGhlcmUgaXMgb25seSBvbmUgaW5zdGFuY2UgdW5kZXIgdGhlIDxMaXZlUmVnaW9uVHdpbkNvbnRleHQ+LlxuICAvLyBUaGUgYXNzdW1wdGlvbiBtYWRlIHVzIHNhZmUgdG8gbWFyayBldmVyeXRoaW5nIGlzIHJlbmRlcmVkLlxuICAvLyBJbiBjb250cmFyeSwgaWYgd2UgaGF2ZSAwLXRvLW1hbnkgYXQgZGlmZmVyZW50IHRpbWUsIHdlIG1heSBmYWxzZWx5IG1hcmsgc29tZXRoaW5nIGFzIHJlbmRlcmVkLlxuICB1c2VNYXJrQWxsQXNSZW5kZXJlZEVmZmVjdCgpO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgYXJpYS1sYWJlbD17YXJpYUxhYmVsfVxuICAgICAgYXJpYS1saXZlPXthcmlhTGl2ZX1cbiAgICAgIGFyaWEtcm9sZWRlc2NyaXB0aW9uPXthcmlhUm9sZURlc2NyaXB0aW9ufVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICByb2xlPXtyb2xlfVxuICAgID5cbiAgICAgIHtzdGF0aWNFbGVtZW50RW50cmllcy5tYXAoKHsgZWxlbWVudCwga2V5IH0pID0+XG4gICAgICAgIHR5cGVvZiBlbGVtZW50ID09PSAnc3RyaW5nJyA/IDxkaXYga2V5PXtrZXl9PntlbGVtZW50fTwvZGl2PiA6IDxGcmFnbWVudCBrZXk9e2tleX0+e2VsZW1lbnR9PC9GcmFnbWVudD5cbiAgICAgICl9XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5MaXZlUmVnaW9uVHdpbkNvbnRhaW5lci5kZWZhdWx0UHJvcHMgPSB7XG4gICdhcmlhLWxhYmVsJzogdW5kZWZpbmVkLFxuICAnYXJpYS1yb2xlZGVzY3JpcHRpb24nOiB1bmRlZmluZWQsXG4gIGNsYXNzTmFtZTogdW5kZWZpbmVkLFxuICByb2xlOiB1bmRlZmluZWRcbn07XG5cbkxpdmVSZWdpb25Ud2luQ29udGFpbmVyLnByb3BUeXBlcyA9IHtcbiAgJ2FyaWEtbGFiZWwnOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAvLyBQcm9wVHlwZXMub25lT2YoKSByZXR1cm5zIHR5cGUgb2YgYHN0cmluZ2AsIGJ1dCBub3QgYCdhc3NlcnRpdmUnIHwgJ3BvbGl0ZSdgLlxuICAvLyBAdHMtaWdub3JlXG4gICdhcmlhLWxpdmUnOiBQcm9wVHlwZXMub25lT2YoWydhc3NlcnRpdmUnLCAncG9saXRlJ10pLmlzUmVxdWlyZWQsXG4gICdhcmlhLXJvbGVkZXNjcmlwdGlvbic6IFByb3BUeXBlcy5zdHJpbmcsXG4gIGNsYXNzTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgcm9sZTogUHJvcFR5cGVzLnN0cmluZ1xufTtcblxuZXhwb3J0IGRlZmF1bHQgTGl2ZVJlZ2lvblR3aW5Db250YWluZXI7XG4iXX0=
@@ -0,0 +1,8 @@
1
+ import type { ReactElement } from 'react';
2
+ declare type StaticElement = Exclude<ReactElement | string, undefined>;
3
+ declare type StaticElementEntry = {
4
+ element: StaticElement;
5
+ key: number;
6
+ };
7
+ export type { StaticElement, StaticElementEntry };
8
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/providers/LiveRegionTwin/private/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAE1C,aAAK,aAAa,GAAG,OAAO,CAAC,YAAY,GAAG,MAAM,EAAE,SAAS,CAAC,CAAC;AAE/D,aAAK,kBAAkB,GAAG;IACxB,OAAO,EAAE,aAAa,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZVJvb3QiOiJjb21wb25lbnQ6Ly8vIiwic291cmNlc0NvbnRlbnQiOltdfQ==
@@ -0,0 +1,3 @@
1
+ import type { LiveRegionTwinContextType } from './Context';
2
+ export default function useLiveRegionTwinContext(thrownOnUndefined?: boolean): LiveRegionTwinContextType;
3
+ //# sourceMappingURL=useContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useContext.d.ts","sourceRoot":"","sources":["../../../../src/providers/LiveRegionTwin/private/useContext.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AAE3D,MAAM,CAAC,OAAO,UAAU,wBAAwB,CAAC,iBAAiB,UAAO,GAAG,yBAAyB,CAQpG"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useLiveRegionTwinContext;
7
+
8
+ var _react = require("react");
9
+
10
+ var _Context = _interopRequireDefault(require("./Context"));
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+
14
+ function useLiveRegionTwinContext() {
15
+ var thrownOnUndefined = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
16
+ var contextValue = (0, _react.useContext)(_Context.default);
17
+
18
+ if (thrownOnUndefined && !contextValue) {
19
+ throw new Error('botframework-webchat internal: This hook can only be used under <LiveRegionComposer>.');
20
+ }
21
+
22
+ return contextValue;
23
+ }
24
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvTGl2ZVJlZ2lvblR3aW4vcHJpdmF0ZS91c2VDb250ZXh0LnRzIl0sIm5hbWVzIjpbInVzZUxpdmVSZWdpb25Ud2luQ29udGV4dCIsInRocm93bk9uVW5kZWZpbmVkIiwiY29udGV4dFZhbHVlIiwiTGl2ZVJlZ2lvblR3aW5Db250ZXh0IiwiRXJyb3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFFQTs7OztBQUllLFNBQVNBLHdCQUFULEdBQXVGO0FBQUEsTUFBckRDLGlCQUFxRCx1RUFBakMsSUFBaUM7QUFDcEcsTUFBTUMsWUFBWSxHQUFHLHVCQUFXQyxnQkFBWCxDQUFyQjs7QUFFQSxNQUFJRixpQkFBaUIsSUFBSSxDQUFDQyxZQUExQixFQUF3QztBQUN0QyxVQUFNLElBQUlFLEtBQUosQ0FBVSx1RkFBVixDQUFOO0FBQ0Q7O0FBRUQsU0FBT0YsWUFBUDtBQUNEIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VDb250ZXh0IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgTGl2ZVJlZ2lvblR3aW5Db250ZXh0IGZyb20gJy4vQ29udGV4dCc7XG5cbmltcG9ydCB0eXBlIHsgTGl2ZVJlZ2lvblR3aW5Db250ZXh0VHlwZSB9IGZyb20gJy4vQ29udGV4dCc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVzZUxpdmVSZWdpb25Ud2luQ29udGV4dCh0aHJvd25PblVuZGVmaW5lZCA9IHRydWUpOiBMaXZlUmVnaW9uVHdpbkNvbnRleHRUeXBlIHtcbiAgY29uc3QgY29udGV4dFZhbHVlID0gdXNlQ29udGV4dChMaXZlUmVnaW9uVHdpbkNvbnRleHQpO1xuXG4gIGlmICh0aHJvd25PblVuZGVmaW5lZCAmJiAhY29udGV4dFZhbHVlKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdib3RmcmFtZXdvcmstd2ViY2hhdCBpbnRlcm5hbDogVGhpcyBob29rIGNhbiBvbmx5IGJlIHVzZWQgdW5kZXIgPExpdmVSZWdpb25Db21wb3Nlcj4uJyk7XG4gIH1cblxuICByZXR1cm4gY29udGV4dFZhbHVlO1xufVxuIl19
@@ -0,0 +1,2 @@
1
+ export default function useMarkAllAsRenderedEffect(): void;
2
+ //# sourceMappingURL=useMarkAllAsRenderedEffect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMarkAllAsRenderedEffect.d.ts","sourceRoot":"","sources":["../../../../src/providers/LiveRegionTwin/private/useMarkAllAsRenderedEffect.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,OAAO,UAAU,0BAA0B,IAAI,IAAI,CAKzD"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useMarkAllAsRenderedEffect;
7
+
8
+ var _react = require("react");
9
+
10
+ var _useContext = _interopRequireDefault(require("./useContext"));
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+
14
+ // After calling `markAllAsRendered`, it will cause a re-render.
15
+ // Since `markAllAsRendered` is a converging function, it will eventually stop re-rendering.
16
+ // We call this hook `useXXXEffect` for us to abstract the business logic here.
17
+ function useMarkAllAsRenderedEffect() {
18
+ var _useLiveRegionTwinCon = (0, _useContext.default)(),
19
+ markAllAsRendered = _useLiveRegionTwinCon.markAllAsRendered; // We did not set the `deps` argument as we want to run this function on every render.
20
+
21
+
22
+ (0, _react.useEffect)(markAllAsRendered);
23
+ }
24
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvTGl2ZVJlZ2lvblR3aW4vcHJpdmF0ZS91c2VNYXJrQWxsQXNSZW5kZXJlZEVmZmVjdC50cyJdLCJuYW1lcyI6WyJ1c2VNYXJrQWxsQXNSZW5kZXJlZEVmZmVjdCIsIm1hcmtBbGxBc1JlbmRlcmVkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBRUE7Ozs7QUFFQTtBQUNBO0FBQ0E7QUFDZSxTQUFTQSwwQkFBVCxHQUE0QztBQUN6RCw4QkFBOEIsMEJBQTlCO0FBQUEsTUFBUUMsaUJBQVIseUJBQVFBLGlCQUFSLENBRHlELENBR3pEOzs7QUFDQSx3QkFBVUEsaUJBQVY7QUFDRCIsInNvdXJjZVJvb3QiOiJjb21wb25lbnQ6Ly8vIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgdXNlTGl2ZVJlZ2lvblR3aW5Db250ZXh0IGZyb20gJy4vdXNlQ29udGV4dCc7XG5cbi8vIEFmdGVyIGNhbGxpbmcgYG1hcmtBbGxBc1JlbmRlcmVkYCwgaXQgd2lsbCBjYXVzZSBhIHJlLXJlbmRlci5cbi8vIFNpbmNlIGBtYXJrQWxsQXNSZW5kZXJlZGAgaXMgYSBjb252ZXJnaW5nIGZ1bmN0aW9uLCBpdCB3aWxsIGV2ZW50dWFsbHkgc3RvcCByZS1yZW5kZXJpbmcuXG4vLyBXZSBjYWxsIHRoaXMgaG9vayBgdXNlWFhYRWZmZWN0YCBmb3IgdXMgdG8gYWJzdHJhY3QgdGhlIGJ1c2luZXNzIGxvZ2ljIGhlcmUuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1c2VNYXJrQWxsQXNSZW5kZXJlZEVmZmVjdCgpOiB2b2lkIHtcbiAgY29uc3QgeyBtYXJrQWxsQXNSZW5kZXJlZCB9ID0gdXNlTGl2ZVJlZ2lvblR3aW5Db250ZXh0KCk7XG5cbiAgLy8gV2UgZGlkIG5vdCBzZXQgdGhlIGBkZXBzYCBhcmd1bWVudCBhcyB3ZSB3YW50IHRvIHJ1biB0aGlzIGZ1bmN0aW9uIG9uIGV2ZXJ5IHJlbmRlci5cbiAgdXNlRWZmZWN0KG1hcmtBbGxBc1JlbmRlcmVkKTtcbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ import type { StaticElementEntry } from './types';
2
+ export default function useStaticElementEntries(): readonly [readonly StaticElementEntry[]];
3
+ //# sourceMappingURL=useStaticElementEntries.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useStaticElementEntries.d.ts","sourceRoot":"","sources":["../../../../src/providers/LiveRegionTwin/private/useStaticElementEntries.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,MAAM,CAAC,OAAO,UAAU,uBAAuB,IAAI,SAAS,CAAC,SAAS,kBAAkB,EAAE,CAAC,CAE1F"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useStaticElementEntries;
7
+
8
+ var _useContext = _interopRequireDefault(require("./useContext"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function useStaticElementEntries() {
13
+ return (0, _useContext.default)().staticElementEntriesState;
14
+ }
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvTGl2ZVJlZ2lvblR3aW4vcHJpdmF0ZS91c2VTdGF0aWNFbGVtZW50RW50cmllcy50cyJdLCJuYW1lcyI6WyJ1c2VTdGF0aWNFbGVtZW50RW50cmllcyIsInN0YXRpY0VsZW1lbnRFbnRyaWVzU3RhdGUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7OztBQUllLFNBQVNBLHVCQUFULEdBQTZFO0FBQzFGLFNBQU8sMkJBQTJCQyx5QkFBbEM7QUFDRCIsInNvdXJjZVJvb3QiOiJjb21wb25lbnQ6Ly8vIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHVzZUxpdmVSZWdpb25Ud2luQ29udGV4dCBmcm9tICcuL3VzZUNvbnRleHQnO1xuXG5pbXBvcnQgdHlwZSB7IFN0YXRpY0VsZW1lbnRFbnRyeSB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1c2VTdGF0aWNFbGVtZW50RW50cmllcygpOiByZWFkb25seSBbcmVhZG9ubHkgU3RhdGljRWxlbWVudEVudHJ5W11dIHtcbiAgcmV0dXJuIHVzZUxpdmVSZWdpb25Ud2luQ29udGV4dCgpLnN0YXRpY0VsZW1lbnRFbnRyaWVzU3RhdGU7XG59XG4iXX0=
@@ -0,0 +1,8 @@
1
+ import type { StaticElement } from './private/types';
2
+ /**
3
+ * Queues a static element to the live region.
4
+ *
5
+ * After the element is queued, screen reader will eventually narrate it and it cannot be changed.
6
+ */
7
+ export default function useQueueStaticElement(): (element: StaticElement) => void;
8
+ //# sourceMappingURL=useQueueStaticElement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useQueueStaticElement.d.ts","sourceRoot":"","sources":["../../../src/providers/LiveRegionTwin/useQueueStaticElement.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB,IAAI,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAEhF"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useQueueStaticElement;
7
+
8
+ var _useContext = _interopRequireDefault(require("./private/useContext"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ /**
13
+ * Queues a static element to the live region.
14
+ *
15
+ * After the element is queued, screen reader will eventually narrate it and it cannot be changed.
16
+ */
17
+ function useQueueStaticElement() {
18
+ return (0, _useContext.default)().queueStaticElement;
19
+ }
20
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm92aWRlcnMvTGl2ZVJlZ2lvblR3aW4vdXNlUXVldWVTdGF0aWNFbGVtZW50LnRzIl0sIm5hbWVzIjpbInVzZVF1ZXVlU3RhdGljRWxlbWVudCIsInF1ZXVlU3RhdGljRWxlbWVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7O0FBSUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNlLFNBQVNBLHFCQUFULEdBQW1FO0FBQ2hGLFNBQU8sMkJBQXVCQyxrQkFBOUI7QUFDRCIsInNvdXJjZVJvb3QiOiJjb21wb25lbnQ6Ly8vIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHVzZUxpdmVSZWdpb25Db250ZXh0IGZyb20gJy4vcHJpdmF0ZS91c2VDb250ZXh0JztcblxuaW1wb3J0IHR5cGUgeyBTdGF0aWNFbGVtZW50IH0gZnJvbSAnLi9wcml2YXRlL3R5cGVzJztcblxuLyoqXG4gKiBRdWV1ZXMgYSBzdGF0aWMgZWxlbWVudCB0byB0aGUgbGl2ZSByZWdpb24uXG4gKlxuICogQWZ0ZXIgdGhlIGVsZW1lbnQgaXMgcXVldWVkLCBzY3JlZW4gcmVhZGVyIHdpbGwgZXZlbnR1YWxseSBuYXJyYXRlIGl0IGFuZCBpdCBjYW5ub3QgYmUgY2hhbmdlZC5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlUXVldWVTdGF0aWNFbGVtZW50KCk6IChlbGVtZW50OiBTdGF0aWNFbGVtZW50KSA9PiB2b2lkIHtcbiAgcmV0dXJuIHVzZUxpdmVSZWdpb25Db250ZXh0KCkucXVldWVTdGF0aWNFbGVtZW50O1xufVxuIl19
@@ -0,0 +1,7 @@
1
+ import type { FC, MutableRefObject } from 'react';
2
+ declare type TranscriptFocusComposerProps = {
3
+ containerRef: MutableRefObject<HTMLElement>;
4
+ };
5
+ declare const TranscriptFocusComposer: FC<TranscriptFocusComposerProps>;
6
+ export default TranscriptFocusComposer;
7
+ //# sourceMappingURL=TranscriptFocusComposer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TranscriptFocusComposer.d.ts","sourceRoot":"","sources":["../../../src/providers/TranscriptFocus/TranscriptFocusComposer.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAalD,aAAK,4BAA4B,GAAG;IAClC,YAAY,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC;CAC7C,CAAC;AAgBF,QAAA,MAAM,uBAAuB,EAAE,EAAE,CAAC,4BAA4B,CAqI7D,CAAC;AAUF,eAAe,uBAAuB,CAAC"}
@@ -0,0 +1,184 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _botframeworkWebchatApi = require("botframework-webchat-api");
11
+
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
14
+ var _mathRandom = _interopRequireDefault(require("math-random"));
15
+
16
+ var _react = _interopRequireWildcard(require("react"));
17
+
18
+ var _scrollIntoViewWithBlockNearest = _interopRequireDefault(require("../../Utils/scrollIntoViewWithBlockNearest"));
19
+
20
+ var _Context = _interopRequireDefault(require("./private/Context"));
21
+
22
+ var _useActivityTreeWithRenderer = _interopRequireDefault(require("../ActivityTree/useActivityTreeWithRenderer"));
23
+
24
+ var _usePrevious = _interopRequireDefault(require("../../hooks/internal/usePrevious"));
25
+
26
+ var _useStateRef3 = _interopRequireDefault(require("../../hooks/internal/useStateRef"));
27
+
28
+ var _useValueRef = _interopRequireDefault(require("../../hooks/internal/useValueRef"));
29
+
30
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
31
+
32
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
33
+
34
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
35
+
36
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
37
+
38
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
39
+
40
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
41
+
42
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
43
+
44
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
45
+
46
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
47
+
48
+ var useGetKeyByActivity = _botframeworkWebchatApi.hooks.useGetKeyByActivity;
49
+
50
+ function last(array) {
51
+ return array[array.length - 1];
52
+ }
53
+
54
+ function uniqueId() {
55
+ var count = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Infinity;
56
+ return (0, _mathRandom.default)() // eslint-disable-next-line no-magic-numbers
57
+ .toString(36) // eslint-disable-next-line no-magic-numbers
58
+ .substring(2, 2 + count);
59
+ }
60
+
61
+ var TranscriptFocusComposer = function TranscriptFocusComposer(_ref) {
62
+ var _containerRef$current;
63
+
64
+ var children = _ref.children,
65
+ containerRef = _ref.containerRef;
66
+
67
+ var _useActivityTreeWithR = (0, _useActivityTreeWithRenderer.default)({
68
+ flat: true
69
+ }),
70
+ _useActivityTreeWithR2 = _slicedToArray(_useActivityTreeWithR, 1),
71
+ flattenedActivityTree = _useActivityTreeWithR2[0];
72
+
73
+ var _useStateRef = (0, _useStateRef3.default)(),
74
+ _useStateRef2 = _slicedToArray(_useStateRef, 3),
75
+ _ = _useStateRef2[0],
76
+ setRawFocusedActivityKey = _useStateRef2[1],
77
+ rawFocusedActivityKeyRef = _useStateRef2[2];
78
+
79
+ var getKeyByActivity = useGetKeyByActivity(); // As we need to use IDREF for `aria-activedescendant`,
80
+ // this prefix will differentiate multiple instances of transcript on the same page.
81
+ // eslint-disable-next-line no-magic-numbers
82
+
83
+ var prefix = (0, _react.useMemo)(function () {
84
+ return uniqueId(3);
85
+ }, []);
86
+ var getDescendantIdByActivityKey = (0, _react.useCallback)(function (activityKey) {
87
+ return activityKey && "webchat__transcript-focus-".concat(prefix, "__activity-").concat(activityKey);
88
+ }, [prefix]);
89
+ var renderingActivityKeys = (0, _react.useMemo)(function () {
90
+ return Object.freeze(flattenedActivityTree.map(function (_ref2) {
91
+ var activity = _ref2.activity;
92
+ return getKeyByActivity(activity);
93
+ }));
94
+ }, [flattenedActivityTree, getKeyByActivity]);
95
+ var renderingActivityKeysRef = (0, _useValueRef.default)(renderingActivityKeys); // While the transcript or any descendants are not focused, if the transcript is updated, reset the user-selected active descendant.
96
+ // This will assume the last activity, if any, will be the active descendant.
97
+
98
+ var prevRenderingActivityKeys = (0, _usePrevious.default)(renderingActivityKeys);
99
+
100
+ if (renderingActivityKeys !== prevRenderingActivityKeys && !((_containerRef$current = containerRef.current) !== null && _containerRef$current !== void 0 && _containerRef$current.contains(document.activeElement))) {
101
+ rawFocusedActivityKeyRef.current = undefined;
102
+ }
103
+
104
+ var rawFocusedActivityKey = rawFocusedActivityKeyRef.current;
105
+ var focusedActivityKey = (0, _react.useMemo)(function () {
106
+ return renderingActivityKeys.includes(rawFocusedActivityKey) ? rawFocusedActivityKey : last(renderingActivityKeys);
107
+ }, [renderingActivityKeys, rawFocusedActivityKey]);
108
+ var focusedActivityKeyRef = (0, _useValueRef.default)(focusedActivityKey);
109
+ var activeDescendantId = (0, _react.useMemo)(function () {
110
+ return getDescendantIdByActivityKey(focusedActivityKey);
111
+ }, [getDescendantIdByActivityKey, focusedActivityKey]);
112
+ var focusByActivityKey = (0, _react.useCallback)(function (activityKey) {
113
+ var withFocus = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
114
+
115
+ if (activityKey === false) {
116
+ // `false` means set it to nothing.
117
+ setRawFocusedActivityKey(undefined);
118
+ } else if (activityKey === true) {
119
+ // `true` means set to something if it is not set.
120
+ setRawFocusedActivityKey(function (key) {
121
+ return key || focusedActivityKeyRef.current;
122
+ });
123
+ } else if (activityKey) {
124
+ setRawFocusedActivityKey(activityKey);
125
+ }
126
+
127
+ if (withFocus) {
128
+ var _containerRef$current2;
129
+
130
+ (_containerRef$current2 = containerRef.current) === null || _containerRef$current2 === void 0 ? void 0 : _containerRef$current2.focus();
131
+
132
+ var _activeDescendantId = getDescendantIdByActivityKey(activityKey === false ? // If "activityKey" is false, it means "focus nothing and reset it to the last activity".
133
+ last(renderingActivityKeysRef.current) : activityKey && activityKey !== true ? // If "activity" is not "undefined" and not "true", it means "focus on this activity".
134
+ activityKey : // If "activityKey" is "undefined", it means "don't modify the focus".
135
+ // If "activityKey" is "true", it means "try to focus on anything".
136
+ rawFocusedActivityKeyRef.current);
137
+
138
+ var activeDescendantElement = _activeDescendantId && document.getElementById(_activeDescendantId); // Don't scroll active descendant into view if the focus is already inside it.
139
+ // Otherwise, given the focus is on the send box, clicking on any <input> inside the Adaptive Cards may cause the view to move.
140
+ // This UX is not desirable because click should not cause scroll.
141
+
142
+
143
+ if (activeDescendantElement && !activeDescendantElement.contains(document.activeElement)) {
144
+ (0, _scrollIntoViewWithBlockNearest.default)(activeDescendantElement);
145
+ }
146
+ }
147
+ }, [getDescendantIdByActivityKey, containerRef, focusedActivityKeyRef, renderingActivityKeysRef, rawFocusedActivityKeyRef, setRawFocusedActivityKey]);
148
+ var focusRelativeActivity = (0, _react.useCallback)(function (delta) {
149
+ var orderedActivityKeys = renderingActivityKeysRef.current;
150
+
151
+ if (isNaN(delta) || !orderedActivityKeys.length) {
152
+ return focusByActivityKey(false, true);
153
+ }
154
+
155
+ var focusedActivityKey = focusedActivityKeyRef.current;
156
+ var index = orderedActivityKeys.indexOf(focusedActivityKey);
157
+ var nextIndex = ~index ? Math.max(0, Math.min(orderedActivityKeys.length - 1, index + delta)) : orderedActivityKeys.length - 1;
158
+ focusByActivityKey(orderedActivityKeys[+nextIndex], true);
159
+ }, [focusedActivityKeyRef, renderingActivityKeysRef, focusByActivityKey]);
160
+ var contextValue = (0, _react.useMemo)(function () {
161
+ return {
162
+ activeDescendantIdState: Object.freeze([activeDescendantId]),
163
+ getDescendantIdByActivityKey: getDescendantIdByActivityKey,
164
+ focusByActivityKey: focusByActivityKey,
165
+ focusedActivityKeyState: Object.freeze([focusedActivityKey]),
166
+ focusedExplicitlyState: Object.freeze([!!rawFocusedActivityKey]),
167
+ focusRelativeActivity: focusRelativeActivity
168
+ };
169
+ }, [activeDescendantId, getDescendantIdByActivityKey, focusByActivityKey, focusedActivityKey, focusRelativeActivity, rawFocusedActivityKey]);
170
+ return /*#__PURE__*/_react.default.createElement(_Context.default.Provider, {
171
+ value: contextValue
172
+ }, children);
173
+ };
174
+
175
+ TranscriptFocusComposer.propTypes = {
176
+ // PropTypes is not fully compatible with TypeScript.
177
+ // @ts-ignore
178
+ containerRef: _propTypes.default.shape({
179
+ current: _propTypes.default.instanceOf(HTMLElement)
180
+ }).isRequired
181
+ };
182
+ var _default = TranscriptFocusComposer;
183
+ exports.default = _default;
184
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm92aWRlcnMvVHJhbnNjcmlwdEZvY3VzL1RyYW5zY3JpcHRGb2N1c0NvbXBvc2VyLnRzeCJdLCJuYW1lcyI6WyJ1c2VHZXRLZXlCeUFjdGl2aXR5IiwiaG9va3MiLCJsYXN0IiwiYXJyYXkiLCJsZW5ndGgiLCJ1bmlxdWVJZCIsImNvdW50IiwiSW5maW5pdHkiLCJ0b1N0cmluZyIsInN1YnN0cmluZyIsIlRyYW5zY3JpcHRGb2N1c0NvbXBvc2VyIiwiY2hpbGRyZW4iLCJjb250YWluZXJSZWYiLCJmbGF0IiwiZmxhdHRlbmVkQWN0aXZpdHlUcmVlIiwiXyIsInNldFJhd0ZvY3VzZWRBY3Rpdml0eUtleSIsInJhd0ZvY3VzZWRBY3Rpdml0eUtleVJlZiIsImdldEtleUJ5QWN0aXZpdHkiLCJwcmVmaXgiLCJnZXREZXNjZW5kYW50SWRCeUFjdGl2aXR5S2V5IiwiYWN0aXZpdHlLZXkiLCJyZW5kZXJpbmdBY3Rpdml0eUtleXMiLCJPYmplY3QiLCJmcmVlemUiLCJtYXAiLCJhY3Rpdml0eSIsInJlbmRlcmluZ0FjdGl2aXR5S2V5c1JlZiIsInByZXZSZW5kZXJpbmdBY3Rpdml0eUtleXMiLCJjdXJyZW50IiwiY29udGFpbnMiLCJkb2N1bWVudCIsImFjdGl2ZUVsZW1lbnQiLCJ1bmRlZmluZWQiLCJyYXdGb2N1c2VkQWN0aXZpdHlLZXkiLCJmb2N1c2VkQWN0aXZpdHlLZXkiLCJpbmNsdWRlcyIsImZvY3VzZWRBY3Rpdml0eUtleVJlZiIsImFjdGl2ZURlc2NlbmRhbnRJZCIsImZvY3VzQnlBY3Rpdml0eUtleSIsIndpdGhGb2N1cyIsImtleSIsImZvY3VzIiwiYWN0aXZlRGVzY2VuZGFudEVsZW1lbnQiLCJnZXRFbGVtZW50QnlJZCIsImZvY3VzUmVsYXRpdmVBY3Rpdml0eSIsImRlbHRhIiwib3JkZXJlZEFjdGl2aXR5S2V5cyIsImlzTmFOIiwiaW5kZXgiLCJpbmRleE9mIiwibmV4dEluZGV4IiwiTWF0aCIsIm1heCIsIm1pbiIsImNvbnRleHRWYWx1ZSIsImFjdGl2ZURlc2NlbmRhbnRJZFN0YXRlIiwiZm9jdXNlZEFjdGl2aXR5S2V5U3RhdGUiLCJmb2N1c2VkRXhwbGljaXRseVN0YXRlIiwicHJvcFR5cGVzIiwiUHJvcFR5cGVzIiwic2hhcGUiLCJpbnN0YW5jZU9mIiwiSFRNTEVsZW1lbnQiLCJpc1JlcXVpcmVkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFJQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJQSxJQUFRQSxtQkFBUixHQUFnQ0MsNkJBQWhDLENBQVFELG1CQUFSOztBQU1BLFNBQVNFLElBQVQsQ0FBaUJDLEtBQWpCLEVBQXNDO0FBQ3BDLFNBQU9BLEtBQUssQ0FBQ0EsS0FBSyxDQUFDQyxNQUFOLEdBQWUsQ0FBaEIsQ0FBWjtBQUNEOztBQUVELFNBQVNDLFFBQVQsR0FBb0M7QUFBQSxNQUFsQkMsS0FBa0IsdUVBQVZDLFFBQVU7QUFDbEMsU0FDRSwyQkFDRTtBQURGLEdBRUdDLFFBRkgsQ0FFWSxFQUZaLEVBR0U7QUFIRixHQUlHQyxTQUpILENBSWEsQ0FKYixFQUlnQixJQUFJSCxLQUpwQixDQURGO0FBT0Q7O0FBRUQsSUFBTUksdUJBQXlELEdBQUcsU0FBNURBLHVCQUE0RCxPQUFnQztBQUFBOztBQUFBLE1BQTdCQyxRQUE2QixRQUE3QkEsUUFBNkI7QUFBQSxNQUFuQkMsWUFBbUIsUUFBbkJBLFlBQW1COztBQUNoRyw4QkFBZ0MsMENBQTRCO0FBQUVDLElBQUFBLElBQUksRUFBRTtBQUFSLEdBQTVCLENBQWhDO0FBQUE7QUFBQSxNQUFPQyxxQkFBUDs7QUFDQSxxQkFBZ0UsNEJBQWhFO0FBQUE7QUFBQSxNQUFPQyxDQUFQO0FBQUEsTUFBVUMsd0JBQVY7QUFBQSxNQUFvQ0Msd0JBQXBDOztBQUNBLE1BQU1DLGdCQUFnQixHQUFHbEIsbUJBQW1CLEVBQTVDLENBSGdHLENBS2hHO0FBQ0E7QUFDQTs7QUFDQSxNQUFNbUIsTUFBTSxHQUFHLG9CQUFnQjtBQUFBLFdBQU1kLFFBQVEsQ0FBQyxDQUFELENBQWQ7QUFBQSxHQUFoQixFQUFtQyxFQUFuQyxDQUFmO0FBRUEsTUFBTWUsNEJBQTBFLEdBQUcsd0JBQ2pGLFVBQUNDLFdBQUQ7QUFBQSxXQUEwQkEsV0FBVyx3Q0FBaUNGLE1BQWpDLHdCQUFxREUsV0FBckQsQ0FBckM7QUFBQSxHQURpRixFQUVqRixDQUFDRixNQUFELENBRmlGLENBQW5GO0FBS0EsTUFBTUcscUJBQXFCLEdBQUcsb0JBQzVCO0FBQUEsV0FBTUMsTUFBTSxDQUFDQyxNQUFQLENBQWNWLHFCQUFxQixDQUFDVyxHQUF0QixDQUEwQjtBQUFBLFVBQUdDLFFBQUgsU0FBR0EsUUFBSDtBQUFBLGFBQWtCUixnQkFBZ0IsQ0FBQ1EsUUFBRCxDQUFsQztBQUFBLEtBQTFCLENBQWQsQ0FBTjtBQUFBLEdBRDRCLEVBRTVCLENBQUNaLHFCQUFELEVBQXdCSSxnQkFBeEIsQ0FGNEIsQ0FBOUI7QUFLQSxNQUFNUyx3QkFBd0IsR0FBRywwQkFBK0JMLHFCQUEvQixDQUFqQyxDQXBCZ0csQ0FzQmhHO0FBQ0E7O0FBQ0EsTUFBTU0seUJBQXlCLEdBQUcsMEJBQVlOLHFCQUFaLENBQWxDOztBQUVBLE1BQUlBLHFCQUFxQixLQUFLTSx5QkFBMUIsSUFBdUQsMkJBQUNoQixZQUFZLENBQUNpQixPQUFkLGtEQUFDLHNCQUFzQkMsUUFBdEIsQ0FBK0JDLFFBQVEsQ0FBQ0MsYUFBeEMsQ0FBRCxDQUEzRCxFQUFvSDtBQUNsSGYsSUFBQUEsd0JBQXdCLENBQUNZLE9BQXpCLEdBQW1DSSxTQUFuQztBQUNEOztBQUVELE1BQWlCQyxxQkFBakIsR0FBMkNqQix3QkFBM0MsQ0FBUVksT0FBUjtBQUVBLE1BQU1NLGtCQUFrQixHQUFHLG9CQUN6QjtBQUFBLFdBQU9iLHFCQUFxQixDQUFDYyxRQUF0QixDQUErQkYscUJBQS9CLElBQXdEQSxxQkFBeEQsR0FBZ0ZoQyxJQUFJLENBQUNvQixxQkFBRCxDQUEzRjtBQUFBLEdBRHlCLEVBRXpCLENBQUNBLHFCQUFELEVBQXdCWSxxQkFBeEIsQ0FGeUIsQ0FBM0I7QUFLQSxNQUFNRyxxQkFBcUIsR0FBRywwQkFBWUYsa0JBQVosQ0FBOUI7QUFFQSxNQUFNRyxrQkFBa0IsR0FBRyxvQkFDekI7QUFBQSxXQUFNbEIsNEJBQTRCLENBQUNlLGtCQUFELENBQWxDO0FBQUEsR0FEeUIsRUFFekIsQ0FBQ2YsNEJBQUQsRUFBK0JlLGtCQUEvQixDQUZ5QixDQUEzQjtBQUtBLE1BQU1JLGtCQUFrQixHQUFHLHdCQUd6QixVQUFDbEIsV0FBRCxFQUFzRjtBQUFBLFFBQTFDbUIsU0FBMEMsdUVBQVQsSUFBUzs7QUFDcEYsUUFBSW5CLFdBQVcsS0FBSyxLQUFwQixFQUEyQjtBQUN6QjtBQUNBTCxNQUFBQSx3QkFBd0IsQ0FBQ2lCLFNBQUQsQ0FBeEI7QUFDRCxLQUhELE1BR08sSUFBSVosV0FBVyxLQUFLLElBQXBCLEVBQTBCO0FBQy9CO0FBQ0FMLE1BQUFBLHdCQUF3QixDQUFDLFVBQUF5QixHQUFHO0FBQUEsZUFBSUEsR0FBRyxJQUFJSixxQkFBcUIsQ0FBQ1IsT0FBakM7QUFBQSxPQUFKLENBQXhCO0FBQ0QsS0FITSxNQUdBLElBQUlSLFdBQUosRUFBaUI7QUFDdEJMLE1BQUFBLHdCQUF3QixDQUFDSyxXQUFELENBQXhCO0FBQ0Q7O0FBRUQsUUFBSW1CLFNBQUosRUFBZTtBQUFBOztBQUNiLGdDQUFBNUIsWUFBWSxDQUFDaUIsT0FBYixrRkFBc0JhLEtBQXRCOztBQUVBLFVBQU1KLG1CQUFrQixHQUFHbEIsNEJBQTRCLENBQ3JEQyxXQUFXLEtBQUssS0FBaEIsR0FDSTtBQUNBbkIsTUFBQUEsSUFBSSxDQUFDeUIsd0JBQXdCLENBQUNFLE9BQTFCLENBRlIsR0FHSVIsV0FBVyxJQUFJQSxXQUFXLEtBQUssSUFBL0IsR0FDQTtBQUNBQSxNQUFBQSxXQUZBLEdBR0E7QUFDQTtBQUNBSixNQUFBQSx3QkFBd0IsQ0FBQ1ksT0FUd0IsQ0FBdkQ7O0FBWUEsVUFBTWMsdUJBQXVCLEdBQUdMLG1CQUFrQixJQUFJUCxRQUFRLENBQUNhLGNBQVQsQ0FBd0JOLG1CQUF4QixDQUF0RCxDQWZhLENBaUJiO0FBQ0E7QUFDQTs7O0FBQ0EsVUFBSUssdUJBQXVCLElBQUksQ0FBQ0EsdUJBQXVCLENBQUNiLFFBQXhCLENBQWlDQyxRQUFRLENBQUNDLGFBQTFDLENBQWhDLEVBQTBGO0FBQ3hGLHFEQUErQlcsdUJBQS9CO0FBQ0Q7QUFDRjtBQUNGLEdBdEN3QixFQXVDekIsQ0FDRXZCLDRCQURGLEVBRUVSLFlBRkYsRUFHRXlCLHFCQUhGLEVBSUVWLHdCQUpGLEVBS0VWLHdCQUxGLEVBTUVELHdCQU5GLENBdkN5QixDQUEzQjtBQWlEQSxNQUFNNkIscUJBQXFCLEdBQUcsd0JBQzVCLFVBQUNDLEtBQUQsRUFBbUI7QUFDakIsUUFBaUJDLG1CQUFqQixHQUF5Q3BCLHdCQUF6QyxDQUFRRSxPQUFSOztBQUVBLFFBQUltQixLQUFLLENBQUNGLEtBQUQsQ0FBTCxJQUFnQixDQUFDQyxtQkFBbUIsQ0FBQzNDLE1BQXpDLEVBQWlEO0FBQy9DLGFBQU9tQyxrQkFBa0IsQ0FBQyxLQUFELEVBQVEsSUFBUixDQUF6QjtBQUNEOztBQUVELFFBQWlCSixrQkFBakIsR0FBd0NFLHFCQUF4QyxDQUFRUixPQUFSO0FBRUEsUUFBTW9CLEtBQUssR0FBR0YsbUJBQW1CLENBQUNHLE9BQXBCLENBQTRCZixrQkFBNUIsQ0FBZDtBQUNBLFFBQU1nQixTQUFTLEdBQUcsQ0FBQ0YsS0FBRCxHQUNkRyxJQUFJLENBQUNDLEdBQUwsQ0FBUyxDQUFULEVBQVlELElBQUksQ0FBQ0UsR0FBTCxDQUFTUCxtQkFBbUIsQ0FBQzNDLE1BQXBCLEdBQTZCLENBQXRDLEVBQXlDNkMsS0FBSyxHQUFHSCxLQUFqRCxDQUFaLENBRGMsR0FFZEMsbUJBQW1CLENBQUMzQyxNQUFwQixHQUE2QixDQUZqQztBQUlBbUMsSUFBQUEsa0JBQWtCLENBQUNRLG1CQUFtQixDQUFDLENBQUNJLFNBQUYsQ0FBcEIsRUFBa0MsSUFBbEMsQ0FBbEI7QUFDRCxHQWhCMkIsRUFpQjVCLENBQUNkLHFCQUFELEVBQXdCVix3QkFBeEIsRUFBa0RZLGtCQUFsRCxDQWpCNEIsQ0FBOUI7QUFvQkEsTUFBTWdCLFlBQVksR0FBRyxvQkFDbkI7QUFBQSxXQUFPO0FBQ0xDLE1BQUFBLHVCQUF1QixFQUFFakMsTUFBTSxDQUFDQyxNQUFQLENBQWMsQ0FBQ2Msa0JBQUQsQ0FBZCxDQURwQjtBQUVMbEIsTUFBQUEsNEJBQTRCLEVBQTVCQSw0QkFGSztBQUdMbUIsTUFBQUEsa0JBQWtCLEVBQWxCQSxrQkFISztBQUlMa0IsTUFBQUEsdUJBQXVCLEVBQUVsQyxNQUFNLENBQUNDLE1BQVAsQ0FBYyxDQUFDVyxrQkFBRCxDQUFkLENBSnBCO0FBS0x1QixNQUFBQSxzQkFBc0IsRUFBRW5DLE1BQU0sQ0FBQ0MsTUFBUCxDQUFjLENBQUMsQ0FBQyxDQUFDVSxxQkFBSCxDQUFkLENBTG5CO0FBTUxXLE1BQUFBLHFCQUFxQixFQUFyQkE7QUFOSyxLQUFQO0FBQUEsR0FEbUIsRUFTbkIsQ0FDRVAsa0JBREYsRUFFRWxCLDRCQUZGLEVBR0VtQixrQkFIRixFQUlFSixrQkFKRixFQUtFVSxxQkFMRixFQU1FWCxxQkFORixDQVRtQixDQUFyQjtBQW1CQSxzQkFBTyw2QkFBQyxnQkFBRCxDQUF3QixRQUF4QjtBQUFpQyxJQUFBLEtBQUssRUFBRXFCO0FBQXhDLEtBQXVENUMsUUFBdkQsQ0FBUDtBQUNELENBcklEOztBQXVJQUQsdUJBQXVCLENBQUNpRCxTQUF4QixHQUFvQztBQUNsQztBQUNBO0FBQ0EvQyxFQUFBQSxZQUFZLEVBQUVnRCxtQkFBVUMsS0FBVixDQUFnQjtBQUM1QmhDLElBQUFBLE9BQU8sRUFBRStCLG1CQUFVRSxVQUFWLENBQXFCQyxXQUFyQjtBQURtQixHQUFoQixFQUVYQztBQUwrQixDQUFwQztlQVFldEQsdUIiLCJzb3VyY2VSb290IjoiY29tcG9uZW50Oi8vLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGhvb2tzIH0gZnJvbSAnYm90ZnJhbWV3b3JrLXdlYmNoYXQtYXBpJztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgcmFuZG9tIGZyb20gJ21hdGgtcmFuZG9tJztcbmltcG9ydCBSZWFjdCwgeyB1c2VDYWxsYmFjaywgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHR5cGUgeyBGQywgTXV0YWJsZVJlZk9iamVjdCB9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHNjcm9sbEludG9WaWV3V2l0aEJsb2NrTmVhcmVzdCBmcm9tICcuLi8uLi9VdGlscy9zY3JvbGxJbnRvVmlld1dpdGhCbG9ja05lYXJlc3QnO1xuaW1wb3J0IFRyYW5zY3JpcHRGb2N1c0NvbnRleHQgZnJvbSAnLi9wcml2YXRlL0NvbnRleHQnO1xuaW1wb3J0IHVzZUFjdGl2aXR5VHJlZVdpdGhSZW5kZXJlciBmcm9tICcuLi9BY3Rpdml0eVRyZWUvdXNlQWN0aXZpdHlUcmVlV2l0aFJlbmRlcmVyJztcbmltcG9ydCB1c2VQcmV2aW91cyBmcm9tICcuLi8uLi9ob29rcy9pbnRlcm5hbC91c2VQcmV2aW91cyc7XG5pbXBvcnQgdXNlU3RhdGVSZWYgZnJvbSAnLi4vLi4vaG9va3MvaW50ZXJuYWwvdXNlU3RhdGVSZWYnO1xuaW1wb3J0IHVzZVZhbHVlUmVmIGZyb20gJy4uLy4uL2hvb2tzL2ludGVybmFsL3VzZVZhbHVlUmVmJztcblxuaW1wb3J0IHR5cGUgeyBUcmFuc2NyaXB0Rm9jdXNDb250ZXh0VHlwZSB9IGZyb20gJy4vcHJpdmF0ZS9Db250ZXh0JztcblxuY29uc3QgeyB1c2VHZXRLZXlCeUFjdGl2aXR5IH0gPSBob29rcztcblxudHlwZSBUcmFuc2NyaXB0Rm9jdXNDb21wb3NlclByb3BzID0ge1xuICBjb250YWluZXJSZWY6IE11dGFibGVSZWZPYmplY3Q8SFRNTEVsZW1lbnQ+O1xufTtcblxuZnVuY3Rpb24gbGFzdDxUPihhcnJheTogQXJyYXlMaWtlPFQ+KSB7XG4gIHJldHVybiBhcnJheVthcnJheS5sZW5ndGggLSAxXTtcbn1cblxuZnVuY3Rpb24gdW5pcXVlSWQoY291bnQgPSBJbmZpbml0eSkge1xuICByZXR1cm4gKFxuICAgIHJhbmRvbSgpXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbWFnaWMtbnVtYmVyc1xuICAgICAgLnRvU3RyaW5nKDM2KVxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLW1hZ2ljLW51bWJlcnNcbiAgICAgIC5zdWJzdHJpbmcoMiwgMiArIGNvdW50KVxuICApO1xufVxuXG5jb25zdCBUcmFuc2NyaXB0Rm9jdXNDb21wb3NlcjogRkM8VHJhbnNjcmlwdEZvY3VzQ29tcG9zZXJQcm9wcz4gPSAoeyBjaGlsZHJlbiwgY29udGFpbmVyUmVmIH0pID0+IHtcbiAgY29uc3QgW2ZsYXR0ZW5lZEFjdGl2aXR5VHJlZV0gPSB1c2VBY3Rpdml0eVRyZWVXaXRoUmVuZGVyZXIoeyBmbGF0OiB0cnVlIH0pO1xuICBjb25zdCBbXywgc2V0UmF3Rm9jdXNlZEFjdGl2aXR5S2V5LCByYXdGb2N1c2VkQWN0aXZpdHlLZXlSZWZdID0gdXNlU3RhdGVSZWY8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuICBjb25zdCBnZXRLZXlCeUFjdGl2aXR5ID0gdXNlR2V0S2V5QnlBY3Rpdml0eSgpO1xuXG4gIC8vIEFzIHdlIG5lZWQgdG8gdXNlIElEUkVGIGZvciBgYXJpYS1hY3RpdmVkZXNjZW5kYW50YCxcbiAgLy8gdGhpcyBwcmVmaXggd2lsbCBkaWZmZXJlbnRpYXRlIG11bHRpcGxlIGluc3RhbmNlcyBvZiB0cmFuc2NyaXB0IG9uIHRoZSBzYW1lIHBhZ2UuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1tYWdpYy1udW1iZXJzXG4gIGNvbnN0IHByZWZpeCA9IHVzZU1lbW88c3RyaW5nPigoKSA9PiB1bmlxdWVJZCgzKSwgW10pO1xuXG4gIGNvbnN0IGdldERlc2NlbmRhbnRJZEJ5QWN0aXZpdHlLZXk6IChhY3Rpdml0eUtleT86IHN0cmluZykgPT4gc3RyaW5nIHwgdW5kZWZpbmVkID0gdXNlQ2FsbGJhY2soXG4gICAgKGFjdGl2aXR5S2V5Pzogc3RyaW5nKSA9PiBhY3Rpdml0eUtleSAmJiBgd2ViY2hhdF9fdHJhbnNjcmlwdC1mb2N1cy0ke3ByZWZpeH1fX2FjdGl2aXR5LSR7YWN0aXZpdHlLZXl9YCxcbiAgICBbcHJlZml4XVxuICApO1xuXG4gIGNvbnN0IHJlbmRlcmluZ0FjdGl2aXR5S2V5cyA9IHVzZU1lbW88cmVhZG9ubHkgc3RyaW5nW10+KFxuICAgICgpID0+IE9iamVjdC5mcmVlemUoZmxhdHRlbmVkQWN0aXZpdHlUcmVlLm1hcCgoeyBhY3Rpdml0eSB9KSA9PiBnZXRLZXlCeUFjdGl2aXR5KGFjdGl2aXR5KSkpLFxuICAgIFtmbGF0dGVuZWRBY3Rpdml0eVRyZWUsIGdldEtleUJ5QWN0aXZpdHldXG4gICk7XG5cbiAgY29uc3QgcmVuZGVyaW5nQWN0aXZpdHlLZXlzUmVmID0gdXNlVmFsdWVSZWY8cmVhZG9ubHkgc3RyaW5nW10+KHJlbmRlcmluZ0FjdGl2aXR5S2V5cyk7XG5cbiAgLy8gV2hpbGUgdGhlIHRyYW5zY3JpcHQgb3IgYW55IGRlc2NlbmRhbnRzIGFyZSBub3QgZm9jdXNlZCwgaWYgdGhlIHRyYW5zY3JpcHQgaXMgdXBkYXRlZCwgcmVzZXQgdGhlIHVzZXItc2VsZWN0ZWQgYWN0aXZlIGRlc2NlbmRhbnQuXG4gIC8vIFRoaXMgd2lsbCBhc3N1bWUgdGhlIGxhc3QgYWN0aXZpdHksIGlmIGFueSwgd2lsbCBiZSB0aGUgYWN0aXZlIGRlc2NlbmRhbnQuXG4gIGNvbnN0IHByZXZSZW5kZXJpbmdBY3Rpdml0eUtleXMgPSB1c2VQcmV2aW91cyhyZW5kZXJpbmdBY3Rpdml0eUtleXMpO1xuXG4gIGlmIChyZW5kZXJpbmdBY3Rpdml0eUtleXMgIT09IHByZXZSZW5kZXJpbmdBY3Rpdml0eUtleXMgJiYgIWNvbnRhaW5lclJlZi5jdXJyZW50Py5jb250YWlucyhkb2N1bWVudC5hY3RpdmVFbGVtZW50KSkge1xuICAgIHJhd0ZvY3VzZWRBY3Rpdml0eUtleVJlZi5jdXJyZW50ID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgY29uc3QgeyBjdXJyZW50OiByYXdGb2N1c2VkQWN0aXZpdHlLZXkgfSA9IHJhd0ZvY3VzZWRBY3Rpdml0eUtleVJlZjtcblxuICBjb25zdCBmb2N1c2VkQWN0aXZpdHlLZXkgPSB1c2VNZW1vPHN0cmluZz4oXG4gICAgKCkgPT4gKHJlbmRlcmluZ0FjdGl2aXR5S2V5cy5pbmNsdWRlcyhyYXdGb2N1c2VkQWN0aXZpdHlLZXkpID8gcmF3Rm9jdXNlZEFjdGl2aXR5S2V5IDogbGFzdChyZW5kZXJpbmdBY3Rpdml0eUtleXMpKSxcbiAgICBbcmVuZGVyaW5nQWN0aXZpdHlLZXlzLCByYXdGb2N1c2VkQWN0aXZpdHlLZXldXG4gICk7XG5cbiAgY29uc3QgZm9jdXNlZEFjdGl2aXR5S2V5UmVmID0gdXNlVmFsdWVSZWYoZm9jdXNlZEFjdGl2aXR5S2V5KTtcblxuICBjb25zdCBhY3RpdmVEZXNjZW5kYW50SWQgPSB1c2VNZW1vPHN0cmluZz4oXG4gICAgKCkgPT4gZ2V0RGVzY2VuZGFudElkQnlBY3Rpdml0eUtleShmb2N1c2VkQWN0aXZpdHlLZXkpLFxuICAgIFtnZXREZXNjZW5kYW50SWRCeUFjdGl2aXR5S2V5LCBmb2N1c2VkQWN0aXZpdHlLZXldXG4gICk7XG5cbiAgY29uc3QgZm9jdXNCeUFjdGl2aXR5S2V5ID0gdXNlQ2FsbGJhY2s8XG4gICAgKGFjdGl2aXR5S2V5OiBib29sZWFuIHwgc3RyaW5nIHwgdW5kZWZpbmVkLCB3aXRoRm9jdXM6IGJvb2xlYW4gfCB1bmRlZmluZWQpID0+IHZvaWRcbiAgPihcbiAgICAoYWN0aXZpdHlLZXk6IGJvb2xlYW4gfCBzdHJpbmcgfCB1bmRlZmluZWQsIHdpdGhGb2N1czogYm9vbGVhbiB8IHVuZGVmaW5lZCA9IHRydWUpID0+IHtcbiAgICAgIGlmIChhY3Rpdml0eUtleSA9PT0gZmFsc2UpIHtcbiAgICAgICAgLy8gYGZhbHNlYCBtZWFucyBzZXQgaXQgdG8gbm90aGluZy5cbiAgICAgICAgc2V0UmF3Rm9jdXNlZEFjdGl2aXR5S2V5KHVuZGVmaW5lZCk7XG4gICAgICB9IGVsc2UgaWYgKGFjdGl2aXR5S2V5ID09PSB0cnVlKSB7XG4gICAgICAgIC8vIGB0cnVlYCBtZWFucyBzZXQgdG8gc29tZXRoaW5nIGlmIGl0IGlzIG5vdCBzZXQuXG4gICAgICAgIHNldFJhd0ZvY3VzZWRBY3Rpdml0eUtleShrZXkgPT4ga2V5IHx8IGZvY3VzZWRBY3Rpdml0eUtleVJlZi5jdXJyZW50KTtcbiAgICAgIH0gZWxzZSBpZiAoYWN0aXZpdHlLZXkpIHtcbiAgICAgICAgc2V0UmF3Rm9jdXNlZEFjdGl2aXR5S2V5KGFjdGl2aXR5S2V5KTtcbiAgICAgIH1cblxuICAgICAgaWYgKHdpdGhGb2N1cykge1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudD8uZm9jdXMoKTtcblxuICAgICAgICBjb25zdCBhY3RpdmVEZXNjZW5kYW50SWQgPSBnZXREZXNjZW5kYW50SWRCeUFjdGl2aXR5S2V5KFxuICAgICAgICAgIGFjdGl2aXR5S2V5ID09PSBmYWxzZVxuICAgICAgICAgICAgPyAvLyBJZiBcImFjdGl2aXR5S2V5XCIgaXMgZmFsc2UsIGl0IG1lYW5zIFwiZm9jdXMgbm90aGluZyBhbmQgcmVzZXQgaXQgdG8gdGhlIGxhc3QgYWN0aXZpdHlcIi5cbiAgICAgICAgICAgICAgbGFzdChyZW5kZXJpbmdBY3Rpdml0eUtleXNSZWYuY3VycmVudClcbiAgICAgICAgICAgIDogYWN0aXZpdHlLZXkgJiYgYWN0aXZpdHlLZXkgIT09IHRydWVcbiAgICAgICAgICAgID8gLy8gSWYgXCJhY3Rpdml0eVwiIGlzIG5vdCBcInVuZGVmaW5lZFwiIGFuZCBub3QgXCJ0cnVlXCIsIGl0IG1lYW5zIFwiZm9jdXMgb24gdGhpcyBhY3Rpdml0eVwiLlxuICAgICAgICAgICAgICBhY3Rpdml0eUtleVxuICAgICAgICAgICAgOiAvLyBJZiBcImFjdGl2aXR5S2V5XCIgaXMgXCJ1bmRlZmluZWRcIiwgaXQgbWVhbnMgXCJkb24ndCBtb2RpZnkgdGhlIGZvY3VzXCIuXG4gICAgICAgICAgICAgIC8vIElmIFwiYWN0aXZpdHlLZXlcIiBpcyBcInRydWVcIiwgaXQgbWVhbnMgXCJ0cnkgdG8gZm9jdXMgb24gYW55dGhpbmdcIi5cbiAgICAgICAgICAgICAgcmF3Rm9jdXNlZEFjdGl2aXR5S2V5UmVmLmN1cnJlbnRcbiAgICAgICAgKTtcblxuICAgICAgICBjb25zdCBhY3RpdmVEZXNjZW5kYW50RWxlbWVudCA9IGFjdGl2ZURlc2NlbmRhbnRJZCAmJiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChhY3RpdmVEZXNjZW5kYW50SWQpO1xuXG4gICAgICAgIC8vIERvbid0IHNjcm9sbCBhY3RpdmUgZGVzY2VuZGFudCBpbnRvIHZpZXcgaWYgdGhlIGZvY3VzIGlzIGFscmVhZHkgaW5zaWRlIGl0LlxuICAgICAgICAvLyBPdGhlcndpc2UsIGdpdmVuIHRoZSBmb2N1cyBpcyBvbiB0aGUgc2VuZCBib3gsIGNsaWNraW5nIG9uIGFueSA8aW5wdXQ+IGluc2lkZSB0aGUgQWRhcHRpdmUgQ2FyZHMgbWF5IGNhdXNlIHRoZSB2aWV3IHRvIG1vdmUuXG4gICAgICAgIC8vIFRoaXMgVVggaXMgbm90IGRlc2lyYWJsZSBiZWNhdXNlIGNsaWNrIHNob3VsZCBub3QgY2F1c2Ugc2Nyb2xsLlxuICAgICAgICBpZiAoYWN0aXZlRGVzY2VuZGFudEVsZW1lbnQgJiYgIWFjdGl2ZURlc2NlbmRhbnRFbGVtZW50LmNvbnRhaW5zKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpKSB7XG4gICAgICAgICAgc2Nyb2xsSW50b1ZpZXdXaXRoQmxvY2tOZWFyZXN0KGFjdGl2ZURlc2NlbmRhbnRFbGVtZW50KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgW1xuICAgICAgZ2V0RGVzY2VuZGFudElkQnlBY3Rpdml0eUtleSxcbiAgICAgIGNvbnRhaW5lclJlZixcbiAgICAgIGZvY3VzZWRBY3Rpdml0eUtleVJlZixcbiAgICAgIHJlbmRlcmluZ0FjdGl2aXR5S2V5c1JlZixcbiAgICAgIHJhd0ZvY3VzZWRBY3Rpdml0eUtleVJlZixcbiAgICAgIHNldFJhd0ZvY3VzZWRBY3Rpdml0eUtleVxuICAgIF1cbiAgKTtcblxuICBjb25zdCBmb2N1c1JlbGF0aXZlQWN0aXZpdHkgPSB1c2VDYWxsYmFjayhcbiAgICAoZGVsdGE6IG51bWJlcikgPT4ge1xuICAgICAgY29uc3QgeyBjdXJyZW50OiBvcmRlcmVkQWN0aXZpdHlLZXlzIH0gPSByZW5kZXJpbmdBY3Rpdml0eUtleXNSZWY7XG5cbiAgICAgIGlmIChpc05hTihkZWx0YSkgfHwgIW9yZGVyZWRBY3Rpdml0eUtleXMubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiBmb2N1c0J5QWN0aXZpdHlLZXkoZmFsc2UsIHRydWUpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCB7IGN1cnJlbnQ6IGZvY3VzZWRBY3Rpdml0eUtleSB9ID0gZm9jdXNlZEFjdGl2aXR5S2V5UmVmO1xuXG4gICAgICBjb25zdCBpbmRleCA9IG9yZGVyZWRBY3Rpdml0eUtleXMuaW5kZXhPZihmb2N1c2VkQWN0aXZpdHlLZXkpO1xuICAgICAgY29uc3QgbmV4dEluZGV4ID0gfmluZGV4XG4gICAgICAgID8gTWF0aC5tYXgoMCwgTWF0aC5taW4ob3JkZXJlZEFjdGl2aXR5S2V5cy5sZW5ndGggLSAxLCBpbmRleCArIGRlbHRhKSlcbiAgICAgICAgOiBvcmRlcmVkQWN0aXZpdHlLZXlzLmxlbmd0aCAtIDE7XG5cbiAgICAgIGZvY3VzQnlBY3Rpdml0eUtleShvcmRlcmVkQWN0aXZpdHlLZXlzWytuZXh0SW5kZXhdLCB0cnVlKTtcbiAgICB9LFxuICAgIFtmb2N1c2VkQWN0aXZpdHlLZXlSZWYsIHJlbmRlcmluZ0FjdGl2aXR5S2V5c1JlZiwgZm9jdXNCeUFjdGl2aXR5S2V5XVxuICApO1xuXG4gIGNvbnN0IGNvbnRleHRWYWx1ZSA9IHVzZU1lbW88VHJhbnNjcmlwdEZvY3VzQ29udGV4dFR5cGU+KFxuICAgICgpID0+ICh7XG4gICAgICBhY3RpdmVEZXNjZW5kYW50SWRTdGF0ZTogT2JqZWN0LmZyZWV6ZShbYWN0aXZlRGVzY2VuZGFudElkXSkgYXMgcmVhZG9ubHkgW3N0cmluZ10sXG4gICAgICBnZXREZXNjZW5kYW50SWRCeUFjdGl2aXR5S2V5LFxuICAgICAgZm9jdXNCeUFjdGl2aXR5S2V5LFxuICAgICAgZm9jdXNlZEFjdGl2aXR5S2V5U3RhdGU6IE9iamVjdC5mcmVlemUoW2ZvY3VzZWRBY3Rpdml0eUtleV0pIGFzIHJlYWRvbmx5IFtzdHJpbmddLFxuICAgICAgZm9jdXNlZEV4cGxpY2l0bHlTdGF0ZTogT2JqZWN0LmZyZWV6ZShbISFyYXdGb2N1c2VkQWN0aXZpdHlLZXldKSBhcyByZWFkb25seSBbYm9vbGVhbl0sXG4gICAgICBmb2N1c1JlbGF0aXZlQWN0aXZpdHlcbiAgICB9KSxcbiAgICBbXG4gICAgICBhY3RpdmVEZXNjZW5kYW50SWQsXG4gICAgICBnZXREZXNjZW5kYW50SWRCeUFjdGl2aXR5S2V5LFxuICAgICAgZm9jdXNCeUFjdGl2aXR5S2V5LFxuICAgICAgZm9jdXNlZEFjdGl2aXR5S2V5LFxuICAgICAgZm9jdXNSZWxhdGl2ZUFjdGl2aXR5LFxuICAgICAgcmF3Rm9jdXNlZEFjdGl2aXR5S2V5XG4gICAgXVxuICApO1xuXG4gIHJldHVybiA8VHJhbnNjcmlwdEZvY3VzQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17Y29udGV4dFZhbHVlfT57Y2hpbGRyZW59PC9UcmFuc2NyaXB0Rm9jdXNDb250ZXh0LlByb3ZpZGVyPjtcbn07XG5cblRyYW5zY3JpcHRGb2N1c0NvbXBvc2VyLnByb3BUeXBlcyA9IHtcbiAgLy8gUHJvcFR5cGVzIGlzIG5vdCBmdWxseSBjb21wYXRpYmxlIHdpdGggVHlwZVNjcmlwdC5cbiAgLy8gQHRzLWlnbm9yZVxuICBjb250YWluZXJSZWY6IFByb3BUeXBlcy5zaGFwZSh7XG4gICAgY3VycmVudDogUHJvcFR5cGVzLmluc3RhbmNlT2YoSFRNTEVsZW1lbnQpXG4gIH0pLmlzUmVxdWlyZWRcbn07XG5cbmV4cG9ydCBkZWZhdWx0IFRyYW5zY3JpcHRGb2N1c0NvbXBvc2VyO1xuIl19
@@ -0,0 +1,12 @@
1
+ declare type TranscriptFocusContextType = {
2
+ activeDescendantIdState: readonly [string];
3
+ focusByActivityKey: (activityKey: boolean | string | undefined, withFocus: boolean | undefined) => void;
4
+ focusedActivityKeyState: readonly [string];
5
+ focusedExplicitlyState: readonly [boolean];
6
+ focusRelativeActivity: (delta: number) => void;
7
+ getDescendantIdByActivityKey: (activityKey?: string) => string | undefined;
8
+ };
9
+ declare const TranscriptFocusContext: import("react").Context<TranscriptFocusContextType>;
10
+ export default TranscriptFocusContext;
11
+ export type { TranscriptFocusContextType };
12
+ //# sourceMappingURL=Context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../../src/providers/TranscriptFocus/private/Context.ts"],"names":[],"mappings":"AAEA,aAAK,0BAA0B,GAAG;IAChC,uBAAuB,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAC3C,kBAAkB,EAAE,CAAC,WAAW,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,EAAE,SAAS,EAAE,OAAO,GAAG,SAAS,KAAK,IAAI,CAAC;IACxG,uBAAuB,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAC3C,sBAAsB,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IAC3C,qBAAqB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,4BAA4B,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;CAC5E,CAAC;AAEF,QAAA,MAAM,sBAAsB,qDAAuD,CAAC;AAEpF,eAAe,sBAAsB,CAAC;AAEtC,YAAY,EAAE,0BAA0B,EAAE,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _react = require("react");
9
+
10
+ var TranscriptFocusContext = /*#__PURE__*/(0, _react.createContext)(undefined);
11
+ var _default = TranscriptFocusContext;
12
+ exports.default = _default;
13
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvVHJhbnNjcmlwdEZvY3VzL3ByaXZhdGUvQ29udGV4dC50cyJdLCJuYW1lcyI6WyJUcmFuc2NyaXB0Rm9jdXNDb250ZXh0IiwidW5kZWZpbmVkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBV0EsSUFBTUEsc0JBQXNCLGdCQUFHLDBCQUEwQ0MsU0FBMUMsQ0FBL0I7ZUFFZUQsc0IiLCJzb3VyY2VSb290IjoiY29tcG9uZW50Oi8vLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUNvbnRleHQgfSBmcm9tICdyZWFjdCc7XG5cbnR5cGUgVHJhbnNjcmlwdEZvY3VzQ29udGV4dFR5cGUgPSB7XG4gIGFjdGl2ZURlc2NlbmRhbnRJZFN0YXRlOiByZWFkb25seSBbc3RyaW5nXTtcbiAgZm9jdXNCeUFjdGl2aXR5S2V5OiAoYWN0aXZpdHlLZXk6IGJvb2xlYW4gfCBzdHJpbmcgfCB1bmRlZmluZWQsIHdpdGhGb2N1czogYm9vbGVhbiB8IHVuZGVmaW5lZCkgPT4gdm9pZDtcbiAgZm9jdXNlZEFjdGl2aXR5S2V5U3RhdGU6IHJlYWRvbmx5IFtzdHJpbmddO1xuICBmb2N1c2VkRXhwbGljaXRseVN0YXRlOiByZWFkb25seSBbYm9vbGVhbl07XG4gIGZvY3VzUmVsYXRpdmVBY3Rpdml0eTogKGRlbHRhOiBudW1iZXIpID0+IHZvaWQ7XG4gIGdldERlc2NlbmRhbnRJZEJ5QWN0aXZpdHlLZXk6IChhY3Rpdml0eUtleT86IHN0cmluZykgPT4gc3RyaW5nIHwgdW5kZWZpbmVkO1xufTtcblxuY29uc3QgVHJhbnNjcmlwdEZvY3VzQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQ8VHJhbnNjcmlwdEZvY3VzQ29udGV4dFR5cGU+KHVuZGVmaW5lZCk7XG5cbmV4cG9ydCBkZWZhdWx0IFRyYW5zY3JpcHRGb2N1c0NvbnRleHQ7XG5cbmV4cG9ydCB0eXBlIHsgVHJhbnNjcmlwdEZvY3VzQ29udGV4dFR5cGUgfTtcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export default function useTranscriptFocusContext(throwOnUndefined?: boolean): import("./Context").TranscriptFocusContextType;
2
+ //# sourceMappingURL=useContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useContext.d.ts","sourceRoot":"","sources":["../../../../src/providers/TranscriptFocus/private/useContext.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,gBAAgB,UAAO,kDAQxE"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useTranscriptFocusContext;
7
+
8
+ var _react = require("react");
9
+
10
+ var _Context = _interopRequireDefault(require("./Context"));
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+
14
+ function useTranscriptFocusContext() {
15
+ var throwOnUndefined = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
16
+ var contextValue = (0, _react.useContext)(_Context.default);
17
+
18
+ if (throwOnUndefined && !contextValue) {
19
+ throw new Error('botframework-webchat internal: This hook can only be used under <TranscriptFocusComposer>.');
20
+ }
21
+
22
+ return contextValue;
23
+ }
24
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvVHJhbnNjcmlwdEZvY3VzL3ByaXZhdGUvdXNlQ29udGV4dC50cyJdLCJuYW1lcyI6WyJ1c2VUcmFuc2NyaXB0Rm9jdXNDb250ZXh0IiwidGhyb3dPblVuZGVmaW5lZCIsImNvbnRleHRWYWx1ZSIsIlRyYW5zY3JpcHRGb2N1c0NvbnRleHQiLCJFcnJvciJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUVBOzs7O0FBRWUsU0FBU0EseUJBQVQsR0FBNEQ7QUFBQSxNQUF6QkMsZ0JBQXlCLHVFQUFOLElBQU07QUFDekUsTUFBTUMsWUFBWSxHQUFHLHVCQUFXQyxnQkFBWCxDQUFyQjs7QUFFQSxNQUFJRixnQkFBZ0IsSUFBSSxDQUFDQyxZQUF6QixFQUF1QztBQUNyQyxVQUFNLElBQUlFLEtBQUosQ0FBVSw0RkFBVixDQUFOO0FBQ0Q7O0FBRUQsU0FBT0YsWUFBUDtBQUNEIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VDb250ZXh0IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgVHJhbnNjcmlwdEZvY3VzQ29udGV4dCBmcm9tICcuL0NvbnRleHQnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1c2VUcmFuc2NyaXB0Rm9jdXNDb250ZXh0KHRocm93T25VbmRlZmluZWQgPSB0cnVlKSB7XG4gIGNvbnN0IGNvbnRleHRWYWx1ZSA9IHVzZUNvbnRleHQoVHJhbnNjcmlwdEZvY3VzQ29udGV4dCk7XG5cbiAgaWYgKHRocm93T25VbmRlZmluZWQgJiYgIWNvbnRleHRWYWx1ZSkge1xuICAgIHRocm93IG5ldyBFcnJvcignYm90ZnJhbWV3b3JrLXdlYmNoYXQgaW50ZXJuYWw6IFRoaXMgaG9vayBjYW4gb25seSBiZSB1c2VkIHVuZGVyIDxUcmFuc2NyaXB0Rm9jdXNDb21wb3Nlcj4uJyk7XG4gIH1cblxuICByZXR1cm4gY29udGV4dFZhbHVlO1xufVxuIl19
@@ -0,0 +1,2 @@
1
+ export default function useActiveDescendantId(): readonly [string];
2
+ //# sourceMappingURL=useActiveDescendantId.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useActiveDescendantId.d.ts","sourceRoot":"","sources":["../../../src/providers/TranscriptFocus/useActiveDescendantId.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,qBAAqB,IAAI,SAAS,CAAC,MAAM,CAAC,CAEjE"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useActiveDescendantId;
7
+
8
+ var _useContext = _interopRequireDefault(require("./private/useContext"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function useActiveDescendantId() {
13
+ return (0, _useContext.default)().activeDescendantIdState;
14
+ }
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm92aWRlcnMvVHJhbnNjcmlwdEZvY3VzL3VzZUFjdGl2ZURlc2NlbmRhbnRJZC50cyJdLCJuYW1lcyI6WyJ1c2VBY3RpdmVEZXNjZW5kYW50SWQiLCJhY3RpdmVEZXNjZW5kYW50SWRTdGF0ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7O0FBRWUsU0FBU0EscUJBQVQsR0FBb0Q7QUFDakUsU0FBTywyQkFBNEJDLHVCQUFuQztBQUNEIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdXNlVHJhbnNjcmlwdEZvY3VzQ29udGV4dCBmcm9tICcuL3ByaXZhdGUvdXNlQ29udGV4dCc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVzZUFjdGl2ZURlc2NlbmRhbnRJZCgpOiByZWFkb25seSBbc3RyaW5nXSB7XG4gIHJldHVybiB1c2VUcmFuc2NyaXB0Rm9jdXNDb250ZXh0KCkuYWN0aXZlRGVzY2VuZGFudElkU3RhdGU7XG59XG4iXX0=
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Put the focus on an activity based on its activity key.
3
+ *
4
+ * @param {boolean | string | undefined} activityKey - The activity key to focus on, `false` to reset focus to most recent activity, `true` to focus on anything, `undefined` for not changing the focus.
5
+ * @param {boolean} withFocus - `true` if the user agent focus should be sent to the transcript, otherwise, `false`.
6
+ */
7
+ export default function useFocusByActivityKey(): (activityKey: boolean | string | undefined, withFocus?: boolean) => void;
8
+ //# sourceMappingURL=useFocusByActivityKey.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFocusByActivityKey.d.ts","sourceRoot":"","sources":["../../../src/providers/TranscriptFocus/useFocusByActivityKey.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB,IAAI,CAC/C,WAAW,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,EACzC,SAAS,CAAC,EAAE,OAAO,KAChB,IAAI,CAER"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useFocusByActivityKey;
7
+
8
+ var _useContext = _interopRequireDefault(require("./private/useContext"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ /**
13
+ * Put the focus on an activity based on its activity key.
14
+ *
15
+ * @param {boolean | string | undefined} activityKey - The activity key to focus on, `false` to reset focus to most recent activity, `true` to focus on anything, `undefined` for not changing the focus.
16
+ * @param {boolean} withFocus - `true` if the user agent focus should be sent to the transcript, otherwise, `false`.
17
+ */
18
+ function useFocusByActivityKey() {
19
+ return (0, _useContext.default)().focusByActivityKey;
20
+ }
21
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm92aWRlcnMvVHJhbnNjcmlwdEZvY3VzL3VzZUZvY3VzQnlBY3Rpdml0eUtleS50cyJdLCJuYW1lcyI6WyJ1c2VGb2N1c0J5QWN0aXZpdHlLZXkiLCJmb2N1c0J5QWN0aXZpdHlLZXkiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7OztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNlLFNBQVNBLHFCQUFULEdBR0w7QUFDUixTQUFPLDJCQUE0QkMsa0JBQW5DO0FBQ0QiLCJzb3VyY2VSb290IjoiY29tcG9uZW50Oi8vLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB1c2VUcmFuc2NyaXB0Rm9jdXNDb250ZXh0IGZyb20gJy4vcHJpdmF0ZS91c2VDb250ZXh0JztcblxuLyoqXG4gKiBQdXQgdGhlIGZvY3VzIG9uIGFuIGFjdGl2aXR5IGJhc2VkIG9uIGl0cyBhY3Rpdml0eSBrZXkuXG4gKlxuICogQHBhcmFtIHtib29sZWFuIHwgc3RyaW5nIHwgdW5kZWZpbmVkfSBhY3Rpdml0eUtleSAtIFRoZSBhY3Rpdml0eSBrZXkgdG8gZm9jdXMgb24sIGBmYWxzZWAgdG8gcmVzZXQgZm9jdXMgdG8gbW9zdCByZWNlbnQgYWN0aXZpdHksIGB0cnVlYCB0byBmb2N1cyBvbiBhbnl0aGluZywgYHVuZGVmaW5lZGAgZm9yIG5vdCBjaGFuZ2luZyB0aGUgZm9jdXMuXG4gKiBAcGFyYW0ge2Jvb2xlYW59IHdpdGhGb2N1cyAtIGB0cnVlYCBpZiB0aGUgdXNlciBhZ2VudCBmb2N1cyBzaG91bGQgYmUgc2VudCB0byB0aGUgdHJhbnNjcmlwdCwgb3RoZXJ3aXNlLCBgZmFsc2VgLlxuICovXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1c2VGb2N1c0J5QWN0aXZpdHlLZXkoKTogKFxuICBhY3Rpdml0eUtleTogYm9vbGVhbiB8IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgd2l0aEZvY3VzPzogYm9vbGVhblxuKSA9PiB2b2lkIHtcbiAgcmV0dXJuIHVzZVRyYW5zY3JpcHRGb2N1c0NvbnRleHQoKS5mb2N1c0J5QWN0aXZpdHlLZXk7XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export default function useFocusByActivityKey(): (delta: number) => void;
2
+ //# sourceMappingURL=useFocusRelativeActivity.d.ts.map