botframework-webchat-api 4.14.1 → 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 (308) hide show
  1. package/.eslintrc.yml +4 -105
  2. package/.prettierrc.yml +1 -1
  3. package/lib/StyleOptions.d.ts +242 -12
  4. package/lib/StyleOptions.d.ts.map +1 -1
  5. package/lib/defaultStyleOptions.d.ts.map +1 -1
  6. package/lib/defaultStyleOptions.js +67 -14
  7. package/lib/hooks/Composer.d.ts +1 -1
  8. package/lib/hooks/Composer.d.ts.map +1 -1
  9. package/lib/hooks/Composer.js +24 -8
  10. package/lib/hooks/index.d.ts +11 -1
  11. package/lib/hooks/index.d.ts.map +1 -1
  12. package/lib/hooks/index.js +81 -1
  13. package/lib/hooks/internal/useCreateActivityRendererInternal.d.ts.map +1 -1
  14. package/lib/hooks/internal/useCreateActivityRendererInternal.js +1 -1
  15. package/lib/hooks/internal/useDebugDeps.js +10 -4
  16. package/lib/hooks/internal/usePrevious.d.ts +2 -0
  17. package/lib/hooks/internal/usePrevious.d.ts.map +1 -0
  18. package/lib/hooks/internal/usePrevious.js +17 -0
  19. package/lib/hooks/internal/useValueRef.d.ts +3 -0
  20. package/lib/hooks/internal/useValueRef.d.ts.map +1 -0
  21. package/lib/hooks/internal/useValueRef.js +24 -0
  22. package/lib/hooks/middleware/concatMiddleware.d.ts.map +1 -1
  23. package/lib/hooks/middleware/concatMiddleware.js +2 -2
  24. package/lib/hooks/middleware/createDefaultCardActionMiddleware.d.ts.map +1 -1
  25. package/lib/hooks/middleware/createDefaultCardActionMiddleware.js +1 -1
  26. package/lib/hooks/useActivityKeys.d.ts +3 -0
  27. package/lib/hooks/useActivityKeys.d.ts.map +1 -0
  28. package/lib/hooks/useActivityKeys.js +14 -0
  29. package/lib/hooks/useActivityKeysByRead.d.ts +3 -0
  30. package/lib/hooks/useActivityKeysByRead.d.ts.map +1 -0
  31. package/lib/hooks/useActivityKeysByRead.js +14 -0
  32. package/lib/hooks/useCreateActivityStatusRenderer.d.ts.map +1 -1
  33. package/lib/hooks/useCreateActivityStatusRenderer.js +1 -1
  34. package/lib/hooks/useCreateAvatarRenderer.d.ts +4 -2
  35. package/lib/hooks/useCreateAvatarRenderer.d.ts.map +1 -1
  36. package/lib/hooks/useCreateAvatarRenderer.js +1 -1
  37. package/lib/hooks/useDateFormatter.d.ts.map +1 -1
  38. package/lib/hooks/useDateFormatter.js +1 -1
  39. package/lib/hooks/useDebouncedNotifications.js +1 -1
  40. package/lib/hooks/useGetActivityByKey.d.ts +3 -0
  41. package/lib/hooks/useGetActivityByKey.d.ts.map +1 -0
  42. package/lib/hooks/useGetActivityByKey.js +14 -0
  43. package/lib/hooks/useGetHasAcknowledgedByActivityKey.d.ts +3 -0
  44. package/lib/hooks/useGetHasAcknowledgedByActivityKey.d.ts.map +1 -0
  45. package/lib/hooks/useGetHasAcknowledgedByActivityKey.js +14 -0
  46. package/lib/hooks/useGetKeyByActivity.d.ts +3 -0
  47. package/lib/hooks/useGetKeyByActivity.d.ts.map +1 -0
  48. package/lib/hooks/useGetKeyByActivity.js +14 -0
  49. package/lib/hooks/useGetKeyByActivityId.d.ts +3 -0
  50. package/lib/hooks/useGetKeyByActivityId.d.ts.map +1 -0
  51. package/lib/hooks/useGetKeyByActivityId.js +14 -0
  52. package/lib/hooks/useGetSendTimeoutForActivity.d.ts.map +1 -1
  53. package/lib/hooks/useGetSendTimeoutForActivity.js +1 -1
  54. package/lib/hooks/useGroupActivities.d.ts.map +1 -1
  55. package/lib/hooks/useGroupActivities.js +1 -1
  56. package/lib/hooks/useLastAcknowledgedActivityKey.d.ts +3 -0
  57. package/lib/hooks/useLastAcknowledgedActivityKey.d.ts.map +1 -0
  58. package/lib/hooks/useLastAcknowledgedActivityKey.js +14 -0
  59. package/lib/hooks/useLastReadActivityKey.d.ts +3 -0
  60. package/lib/hooks/useLastReadActivityKey.d.ts.map +1 -0
  61. package/lib/hooks/useLastReadActivityKey.js +14 -0
  62. package/lib/hooks/useLocalizer.d.ts +1 -1
  63. package/lib/hooks/useLocalizer.d.ts.map +1 -1
  64. package/lib/hooks/useLocalizer.js +8 -2
  65. package/lib/hooks/useMarkActivityKeyAsRead.d.ts +3 -0
  66. package/lib/hooks/useMarkActivityKeyAsRead.d.ts.map +1 -0
  67. package/lib/hooks/useMarkActivityKeyAsRead.js +14 -0
  68. package/lib/hooks/useMarkAllAsAcknowledged.d.ts +3 -0
  69. package/lib/hooks/useMarkAllAsAcknowledged.d.ts.map +1 -0
  70. package/lib/hooks/useMarkAllAsAcknowledged.js +14 -0
  71. package/lib/hooks/usePerformCardAction.d.ts +2 -2
  72. package/lib/hooks/usePerformCardAction.d.ts.map +1 -1
  73. package/lib/hooks/usePerformCardAction.js +1 -1
  74. package/lib/hooks/useSubmitSendBox.d.ts.map +1 -1
  75. package/lib/hooks/useSubmitSendBox.js +8 -5
  76. package/lib/hooks/utils/ErrorBoundary.js +1 -1
  77. package/lib/index.js +7 -7
  78. package/lib/localization/Localize.d.ts.map +1 -1
  79. package/lib/localization/Localize.js +12 -6
  80. package/lib/localization/ar-SA.json +23 -4
  81. package/lib/localization/bg-BG.json +23 -4
  82. package/lib/localization/ca-ES.json +23 -4
  83. package/lib/localization/cs-CZ.json +23 -4
  84. package/lib/localization/da-DK.json +23 -4
  85. package/lib/localization/de-DE.json +23 -4
  86. package/lib/localization/el-GR.json +23 -4
  87. package/lib/localization/en-US.json +29 -7
  88. package/lib/localization/es-ES.json +23 -4
  89. package/lib/localization/et-EE.json +23 -4
  90. package/lib/localization/eu-ES.json +23 -4
  91. package/lib/localization/fi-FI.json +23 -4
  92. package/lib/localization/fr-FR.json +23 -4
  93. package/lib/localization/gl-ES.json +23 -4
  94. package/lib/localization/he-IL.json +23 -4
  95. package/lib/localization/hi-IN.json +23 -4
  96. package/lib/localization/hr-HR.json +23 -4
  97. package/lib/localization/hu-HU.json +23 -4
  98. package/lib/localization/id-ID.json +23 -4
  99. package/lib/localization/it-IT.json +23 -4
  100. package/lib/localization/ja-JP.json +23 -4
  101. package/lib/localization/kk-KZ.json +23 -4
  102. package/lib/localization/ko-KR.json +23 -4
  103. package/lib/localization/lt-LT.json +23 -4
  104. package/lib/localization/lv-LV.json +23 -4
  105. package/lib/localization/mergeLocalizedStrings.d.ts.map +1 -1
  106. package/lib/localization/mergeLocalizedStrings.js +11 -4
  107. package/lib/localization/ms-MY.json +23 -4
  108. package/lib/localization/nb-NO.json +23 -4
  109. package/lib/localization/nl-NL.json +23 -4
  110. package/lib/localization/pl-PL.json +23 -4
  111. package/lib/localization/pt-BR.json +23 -4
  112. package/lib/localization/pt-PT.json +23 -4
  113. package/lib/localization/ro-RO.json +23 -4
  114. package/lib/localization/ru-RU.json +23 -4
  115. package/lib/localization/sk-SK.json +23 -4
  116. package/lib/localization/sl-SI.json +23 -4
  117. package/lib/localization/sr-Cyrl-CS.json +23 -4
  118. package/lib/localization/sr-Latn-CS.json +23 -4
  119. package/lib/localization/sv-SE.json +23 -4
  120. package/lib/localization/th-TH.json +23 -4
  121. package/lib/localization/tr-TR.json +23 -4
  122. package/lib/localization/uk-UA.json +23 -4
  123. package/lib/localization/vi-VN.json +23 -4
  124. package/lib/localization/yue.json +26 -7
  125. package/lib/localization/zh-CN.json +23 -4
  126. package/lib/localization/zh-HK.json +23 -4
  127. package/lib/localization/zh-TW.json +23 -4
  128. package/lib/normalizeStyleOptions.d.ts.map +1 -1
  129. package/lib/normalizeStyleOptions.js +47 -2
  130. package/lib/patchStyleOptionsFromDeprecatedProps.js +1 -2
  131. package/lib/providers/ActivityAcknowledgement/ActivityAcknowledgementComposer.d.ts +5 -0
  132. package/lib/providers/ActivityAcknowledgement/ActivityAcknowledgementComposer.d.ts.map +1 -0
  133. package/lib/providers/ActivityAcknowledgement/ActivityAcknowledgementComposer.js +184 -0
  134. package/lib/providers/ActivityAcknowledgement/private/Context.d.ts +13 -0
  135. package/lib/providers/ActivityAcknowledgement/private/Context.d.ts.map +1 -0
  136. package/lib/providers/ActivityAcknowledgement/private/Context.js +13 -0
  137. package/lib/providers/ActivityAcknowledgement/private/types.d.ts +6 -0
  138. package/lib/providers/ActivityAcknowledgement/private/types.d.ts.map +1 -0
  139. package/lib/providers/ActivityAcknowledgement/private/types.js +2 -0
  140. package/lib/providers/ActivityAcknowledgement/private/useContext.d.ts +3 -0
  141. package/lib/providers/ActivityAcknowledgement/private/useContext.d.ts.map +1 -0
  142. package/lib/providers/ActivityAcknowledgement/private/useContext.js +24 -0
  143. package/lib/providers/ActivityAcknowledgement/useActivityKeysByRead.d.ts +5 -0
  144. package/lib/providers/ActivityAcknowledgement/useActivityKeysByRead.d.ts.map +1 -0
  145. package/lib/providers/ActivityAcknowledgement/useActivityKeysByRead.js +18 -0
  146. package/lib/providers/ActivityAcknowledgement/useGetHasAcknowledgedByActivityKey.d.ts +2 -0
  147. package/lib/providers/ActivityAcknowledgement/useGetHasAcknowledgedByActivityKey.d.ts.map +1 -0
  148. package/lib/providers/ActivityAcknowledgement/useGetHasAcknowledgedByActivityKey.js +15 -0
  149. package/lib/providers/ActivityAcknowledgement/useLastAcknowledgedActivityKey.d.ts +2 -0
  150. package/lib/providers/ActivityAcknowledgement/useLastAcknowledgedActivityKey.d.ts.map +1 -0
  151. package/lib/providers/ActivityAcknowledgement/useLastAcknowledgedActivityKey.js +15 -0
  152. package/lib/providers/ActivityAcknowledgement/useLastReadActivityKey.d.ts +2 -0
  153. package/lib/providers/ActivityAcknowledgement/useLastReadActivityKey.d.ts.map +1 -0
  154. package/lib/providers/ActivityAcknowledgement/useLastReadActivityKey.js +15 -0
  155. package/lib/providers/ActivityAcknowledgement/useMarkActivityKeyAsRead.d.ts +2 -0
  156. package/lib/providers/ActivityAcknowledgement/useMarkActivityKeyAsRead.d.ts.map +1 -0
  157. package/lib/providers/ActivityAcknowledgement/useMarkActivityKeyAsRead.js +15 -0
  158. package/lib/providers/ActivityAcknowledgement/useMarkAllAsAcknowledged.d.ts +2 -0
  159. package/lib/providers/ActivityAcknowledgement/useMarkAllAsAcknowledged.d.ts.map +1 -0
  160. package/lib/providers/ActivityAcknowledgement/useMarkAllAsAcknowledged.js +15 -0
  161. package/lib/providers/ActivityKeyer/ActivityKeyerComposer.d.ts +18 -0
  162. package/lib/providers/ActivityKeyer/ActivityKeyerComposer.d.ts.map +1 -0
  163. package/lib/providers/ActivityKeyer/ActivityKeyerComposer.js +153 -0
  164. package/lib/providers/ActivityKeyer/private/Context.d.ts +12 -0
  165. package/lib/providers/ActivityKeyer/private/Context.d.ts.map +1 -0
  166. package/lib/providers/ActivityKeyer/private/Context.js +13 -0
  167. package/lib/providers/ActivityKeyer/private/getActivityId.d.ts +3 -0
  168. package/lib/providers/ActivityKeyer/private/getActivityId.d.ts.map +1 -0
  169. package/lib/providers/ActivityKeyer/private/getActivityId.js +11 -0
  170. package/lib/providers/ActivityKeyer/private/getClientActivityId.d.ts +3 -0
  171. package/lib/providers/ActivityKeyer/private/getClientActivityId.d.ts.map +1 -0
  172. package/lib/providers/ActivityKeyer/private/getClientActivityId.js +13 -0
  173. package/lib/providers/ActivityKeyer/private/uniqueId.d.ts +2 -0
  174. package/lib/providers/ActivityKeyer/private/uniqueId.d.ts.map +1 -0
  175. package/lib/providers/ActivityKeyer/private/uniqueId.js +18 -0
  176. package/lib/providers/ActivityKeyer/private/useContext.d.ts +3 -0
  177. package/lib/providers/ActivityKeyer/private/useContext.d.ts.map +1 -0
  178. package/lib/providers/ActivityKeyer/private/useContext.js +24 -0
  179. package/lib/providers/ActivityKeyer/useActivityKeys.d.ts +2 -0
  180. package/lib/providers/ActivityKeyer/useActivityKeys.d.ts.map +1 -0
  181. package/lib/providers/ActivityKeyer/useActivityKeys.js +15 -0
  182. package/lib/providers/ActivityKeyer/useGetActivityByKey.d.ts +3 -0
  183. package/lib/providers/ActivityKeyer/useGetActivityByKey.d.ts.map +1 -0
  184. package/lib/providers/ActivityKeyer/useGetActivityByKey.js +15 -0
  185. package/lib/providers/ActivityKeyer/useGetKeyByActivity.d.ts +3 -0
  186. package/lib/providers/ActivityKeyer/useGetKeyByActivity.d.ts.map +1 -0
  187. package/lib/providers/ActivityKeyer/useGetKeyByActivity.js +15 -0
  188. package/lib/providers/ActivityKeyer/useGetKeyByActivityId.d.ts +2 -0
  189. package/lib/providers/ActivityKeyer/useGetKeyByActivityId.d.ts.map +1 -0
  190. package/lib/providers/ActivityKeyer/useGetKeyByActivityId.js +15 -0
  191. package/lib/types/CardActionMiddleware.d.ts +3 -1
  192. package/lib/types/CardActionMiddleware.d.ts.map +1 -1
  193. package/lib/utils/createCustomEvent.d.ts.map +1 -1
  194. package/lib/utils/createCustomEvent.js +8 -2
  195. package/lib/utils/findLastIndex.d.ts +2 -0
  196. package/lib/utils/findLastIndex.d.ts.map +1 -0
  197. package/lib/utils/findLastIndex.js +32 -0
  198. package/lib/utils/findMin.js +1 -1
  199. package/lib/utils/mapMap.d.ts.map +1 -1
  200. package/lib/utils/mapMap.js +9 -2
  201. package/lib/utils/randomId.d.ts.map +1 -1
  202. package/lib/utils/randomId.js +1 -1
  203. package/package.json +13 -21
  204. package/src/StyleOptions.ts +293 -12
  205. package/src/defaultStyleOptions.ts +71 -13
  206. package/src/hooks/Composer.tsx +86 -49
  207. package/src/hooks/index.ts +20 -0
  208. package/src/hooks/internal/useCreateActivityRendererInternal.ts +21 -20
  209. package/src/hooks/internal/useDebugDeps.js +9 -2
  210. package/src/hooks/internal/usePrevious.ts +11 -0
  211. package/src/hooks/internal/useValueRef.ts +21 -0
  212. package/src/hooks/middleware/concatMiddleware.ts +6 -4
  213. package/src/hooks/middleware/createDefaultCardActionMiddleware.ts +29 -27
  214. package/src/hooks/useActivityKeys.ts +3 -0
  215. package/src/hooks/useActivityKeysByRead.ts +3 -0
  216. package/src/hooks/useCreateActivityStatusRenderer.tsx +10 -13
  217. package/src/hooks/useCreateAvatarRenderer.ts +23 -19
  218. package/src/hooks/useDateFormatter.ts +4 -3
  219. package/src/hooks/useGetActivityByKey.ts +3 -0
  220. package/src/hooks/useGetHasAcknowledgedByActivityKey.ts +3 -0
  221. package/src/hooks/useGetKeyByActivity.ts +3 -0
  222. package/src/hooks/useGetKeyByActivityId.ts +3 -0
  223. package/src/hooks/useGetSendTimeoutForActivity.ts +7 -6
  224. package/src/hooks/useGroupActivities.ts +1 -5
  225. package/src/hooks/useLastAcknowledgedActivityKey.ts +3 -0
  226. package/src/hooks/useLastReadActivityKey.ts +3 -0
  227. package/src/hooks/useLocalizer.ts +7 -2
  228. package/src/hooks/useMarkActivityKeyAsRead.ts +3 -0
  229. package/src/hooks/useMarkAllAsAcknowledged.ts +3 -0
  230. package/src/hooks/usePerformCardAction.ts +2 -3
  231. package/src/hooks/useSubmitSendBox.ts +2 -5
  232. package/src/localization/Localize.ts +9 -2
  233. package/src/localization/ar-SA.json +23 -4
  234. package/src/localization/bg-BG.json +23 -4
  235. package/src/localization/ca-ES.json +23 -4
  236. package/src/localization/cs-CZ.json +23 -4
  237. package/src/localization/da-DK.json +23 -4
  238. package/src/localization/de-DE.json +23 -4
  239. package/src/localization/el-GR.json +23 -4
  240. package/src/localization/en-US.json +29 -7
  241. package/src/localization/es-ES.json +23 -4
  242. package/src/localization/et-EE.json +23 -4
  243. package/src/localization/eu-ES.json +23 -4
  244. package/src/localization/fi-FI.json +23 -4
  245. package/src/localization/fr-FR.json +23 -4
  246. package/src/localization/gl-ES.json +23 -4
  247. package/src/localization/he-IL.json +23 -4
  248. package/src/localization/hi-IN.json +23 -4
  249. package/src/localization/hr-HR.json +23 -4
  250. package/src/localization/hu-HU.json +23 -4
  251. package/src/localization/id-ID.json +23 -4
  252. package/src/localization/it-IT.json +23 -4
  253. package/src/localization/ja-JP.json +23 -4
  254. package/src/localization/kk-KZ.json +23 -4
  255. package/src/localization/ko-KR.json +23 -4
  256. package/src/localization/lt-LT.json +23 -4
  257. package/src/localization/lv-LV.json +23 -4
  258. package/src/localization/mergeLocalizedStrings.ts +7 -1
  259. package/src/localization/ms-MY.json +23 -4
  260. package/src/localization/nb-NO.json +23 -4
  261. package/src/localization/nl-NL.json +23 -4
  262. package/src/localization/pl-PL.json +23 -4
  263. package/src/localization/pt-BR.json +23 -4
  264. package/src/localization/pt-PT.json +23 -4
  265. package/src/localization/ro-RO.json +23 -4
  266. package/src/localization/ru-RU.json +23 -4
  267. package/src/localization/sk-SK.json +23 -4
  268. package/src/localization/sl-SI.json +23 -4
  269. package/src/localization/sr-Cyrl-CS.json +23 -4
  270. package/src/localization/sr-Latn-CS.json +23 -4
  271. package/src/localization/sv-SE.json +23 -4
  272. package/src/localization/th-TH.json +23 -4
  273. package/src/localization/tr-TR.json +23 -4
  274. package/src/localization/uk-UA.json +23 -4
  275. package/src/localization/vi-VN.json +23 -4
  276. package/src/localization/yue.json +26 -7
  277. package/src/localization/zh-CN.json +23 -4
  278. package/src/localization/zh-HK.json +23 -4
  279. package/src/localization/zh-TW.json +23 -4
  280. package/src/normalizeStyleOptions.ts +70 -0
  281. package/src/patchStyleOptionsFromDeprecatedProps.js +0 -2
  282. package/src/providers/ActivityAcknowledgement/ActivityAcknowledgementComposer.tsx +180 -0
  283. package/src/providers/ActivityAcknowledgement/private/Context.ts +18 -0
  284. package/src/providers/ActivityAcknowledgement/private/types.ts +6 -0
  285. package/src/providers/ActivityAcknowledgement/private/useContext.ts +19 -0
  286. package/src/providers/ActivityAcknowledgement/useActivityKeysByRead.tsx +8 -0
  287. package/src/providers/ActivityAcknowledgement/useGetHasAcknowledgedByActivityKey.ts +5 -0
  288. package/src/providers/ActivityAcknowledgement/useLastAcknowledgedActivityKey.ts +5 -0
  289. package/src/providers/ActivityAcknowledgement/useLastReadActivityKey.ts +5 -0
  290. package/src/providers/ActivityAcknowledgement/useMarkActivityKeyAsRead.ts +5 -0
  291. package/src/providers/ActivityAcknowledgement/useMarkAllAsAcknowledged.ts +5 -0
  292. package/src/providers/ActivityKeyer/ActivityKeyerComposer.tsx +151 -0
  293. package/src/providers/ActivityKeyer/private/Context.ts +14 -0
  294. package/src/providers/ActivityKeyer/private/getActivityId.ts +5 -0
  295. package/src/providers/ActivityKeyer/private/getClientActivityId.ts +5 -0
  296. package/src/providers/ActivityKeyer/private/uniqueId.ts +8 -0
  297. package/src/providers/ActivityKeyer/private/useContext.ts +15 -0
  298. package/src/providers/ActivityKeyer/useActivityKeys.ts +5 -0
  299. package/src/providers/ActivityKeyer/useGetActivityByKey.ts +7 -0
  300. package/src/providers/ActivityKeyer/useGetKeyByActivity.ts +7 -0
  301. package/src/providers/ActivityKeyer/useGetKeyByActivityId.ts +5 -0
  302. package/src/types/CardActionMiddleware.ts +1 -1
  303. package/src/utils/createCustomEvent.ts +7 -1
  304. package/src/utils/findLastIndex.spec.js +31 -0
  305. package/src/utils/findLastIndex.ts +11 -0
  306. package/src/utils/mapMap.ts +7 -1
  307. package/src/utils/randomId.ts +1 -1
  308. package/.eslintignore +0 -1
@@ -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 _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _Context = _interopRequireDefault(require("./private/Context"));
13
+
14
+ var _findLastIndex = _interopRequireDefault(require("../../utils/findLastIndex"));
15
+
16
+ var _useActivities3 = _interopRequireDefault(require("../../hooks/useActivities"));
17
+
18
+ var _useActivityKeys3 = _interopRequireDefault(require("../ActivityKeyer/useActivityKeys"));
19
+
20
+ var _usePrevious = _interopRequireDefault(require("../../hooks/internal/usePrevious"));
21
+
22
+ var _useValueRef = _interopRequireDefault(require("../../hooks/internal/useValueRef"));
23
+
24
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
+
26
+ 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); }
27
+
28
+ 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; }
29
+
30
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
31
+
32
+ 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."); }
33
+
34
+ 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; }
35
+
36
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
37
+
38
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
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 findClosestActivityKeyIfNotExists(activityKey, keys, prevKeys) {
45
+ if (keys.includes(activityKey)) {
46
+ return activityKey;
47
+ } else if (!prevKeys || !activityKey) {
48
+ // Initially, when the transcript was empty, there should be nothing read.
49
+ return;
50
+ } // If the last activity key is no longer in this activities (say, deleted), we try to find the closest one.
51
+
52
+
53
+ var prevIndex = prevKeys.indexOf(activityKey);
54
+
55
+ if (~prevIndex) {
56
+ // List out all previously activity keys, find the closest one that is in the new transcript.
57
+ var acknowledgedActivityKeys = prevKeys.slice(0, prevIndex).reverse();
58
+
59
+ var _iterator = _createForOfIteratorHelper(acknowledgedActivityKeys),
60
+ _step;
61
+
62
+ try {
63
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
64
+ var prevAcknowledgedActivityKey = _step.value;
65
+
66
+ if (keys.includes(prevAcknowledgedActivityKey)) {
67
+ return prevAcknowledgedActivityKey;
68
+ }
69
+ }
70
+ } catch (err) {
71
+ _iterator.e(err);
72
+ } finally {
73
+ _iterator.f();
74
+ }
75
+ } // If nothing is found, return `undefined`.
76
+
77
+ }
78
+
79
+ var ActivityAcknowledgementComposer = function ActivityAcknowledgementComposer(_ref) {
80
+ var children = _ref.children;
81
+
82
+ var _useActivities = (0, _useActivities3.default)(),
83
+ _useActivities2 = _slicedToArray(_useActivities, 1),
84
+ activities = _useActivities2[0];
85
+
86
+ var _useActivityKeys = (0, _useActivityKeys3.default)(),
87
+ _useActivityKeys2 = _slicedToArray(_useActivityKeys, 1),
88
+ allActivityKeys = _useActivityKeys2[0];
89
+
90
+ var _useState = (0, _react.useState)(),
91
+ _useState2 = _slicedToArray(_useState, 2),
92
+ rawLastAcknowledgedActivityKey = _useState2[0],
93
+ setRawLastAcknowledgedActivityKey = _useState2[1];
94
+
95
+ var _useState3 = (0, _react.useState)(),
96
+ _useState4 = _slicedToArray(_useState3, 2),
97
+ rawLastReadActivityKey = _useState4[0],
98
+ setRawLastReadActivityKey = _useState4[1];
99
+
100
+ var allActivityKeysRef = (0, _useValueRef.default)(allActivityKeys);
101
+ var prevAllActivityKeys = (0, _usePrevious.default)(allActivityKeys);
102
+ var lastOutgoingActivityKeyIndex = (0, _react.useMemo)(function () {
103
+ return (0, _findLastIndex.default)(activities, function (activity) {
104
+ var _activity$from;
105
+
106
+ return ((_activity$from = activity.from) === null || _activity$from === void 0 ? void 0 : _activity$from.role) === 'user';
107
+ });
108
+ }, [activities]); // Make sure when we return "lastReadActivityKey" exists in the current transcript.
109
+
110
+ var lastReadActivityKey = (0, _react.useMemo)(function () {
111
+ rawLastReadActivityKey && !~prevAllActivityKeys.includes(rawLastReadActivityKey) && console.warn("botframework-webchat internal assertion: \"rawLastReadActivityKey\" of value ".concat(rawLastReadActivityKey, " should be in the \"prevAllActivityKeys\" array."));
112
+ return findClosestActivityKeyIfNotExists(rawLastReadActivityKey, allActivityKeys, prevAllActivityKeys);
113
+ }, [allActivityKeys, prevAllActivityKeys, rawLastReadActivityKey]);
114
+ var lastReadActivityKeyRef = (0, _useValueRef.default)(lastReadActivityKey); // Make sure when we return "lastAcknowledgedActivityKey" exists in the current transcript.
115
+
116
+ var lastAcknowledgedActivityKey = (0, _react.useMemo)(function () {
117
+ rawLastAcknowledgedActivityKey && !~prevAllActivityKeys.includes(rawLastAcknowledgedActivityKey) && console.warn("botframework-webchat internal assertion: \"rawLastAcknowledgedActivityKey\" of value ".concat(rawLastAcknowledgedActivityKey, " should be in the \"prevAllActivityKeys\" array."));
118
+ var lastAcknowledgedActivityKey = findClosestActivityKeyIfNotExists(rawLastAcknowledgedActivityKey, allActivityKeys, prevAllActivityKeys); // TODO: [P2] Since Direct Line may send history and does not have read receipt.
119
+ // Thus, if we don't assume everything is acknowledged initially, while displaying the history,
120
+ // the transcript would soon stop scrolling.
121
+ // Thus, before the first outgoing activity is detected, we need to assume everything is acknowledged.
122
+
123
+ return allActivityKeys[Math.max(allActivityKeys.indexOf(lastAcknowledgedActivityKey), lastOutgoingActivityKeyIndex)] || allActivityKeys[allActivityKeys.length - 1];
124
+ }, [allActivityKeys, lastOutgoingActivityKeyIndex, prevAllActivityKeys, rawLastAcknowledgedActivityKey]);
125
+ var activityAcknowledgements = (0, _react.useMemo)(function () {
126
+ var activityAcknowledgements = new Map();
127
+ var lastAcknowledgedIndex = allActivityKeys.indexOf(lastAcknowledgedActivityKey);
128
+ var lastReadIndex = allActivityKeys.indexOf(lastReadActivityKey);
129
+ allActivityKeys.forEach(function (activityKey, index) {
130
+ activityAcknowledgements.set(activityKey, {
131
+ acknowledged: index <= lastAcknowledgedIndex,
132
+ read: index <= lastReadIndex
133
+ });
134
+ });
135
+ return Object.freeze(activityAcknowledgements);
136
+ }, [allActivityKeys, lastAcknowledgedActivityKey, lastReadActivityKey]);
137
+ var activityAcknowledgementsRef = (0, _useValueRef.default)(activityAcknowledgements);
138
+ var getHasAcknowledgedByActivityKey = (0, _react.useCallback)(function (activityKey) {
139
+ var _activityAcknowledgem;
140
+
141
+ return (_activityAcknowledgem = activityAcknowledgementsRef.current.get(activityKey)) === null || _activityAcknowledgem === void 0 ? void 0 : _activityAcknowledgem.acknowledged;
142
+ }, [activityAcknowledgementsRef]); // TODO: [P2] Memoize with `useMemoWithPrevious` for better memoization of arrays.
143
+
144
+ var activityKeysByReadState = (0, _react.useMemo)(function () {
145
+ var index = allActivityKeys.indexOf(lastReadActivityKey);
146
+ return Object.freeze([Object.freeze(allActivityKeys.slice(0, index + 1)), Object.freeze(allActivityKeys.slice(index + 1))]);
147
+ }, [allActivityKeys, lastReadActivityKey]);
148
+ var markAllAsAcknowledged = (0, _react.useCallback)(function () {
149
+ var allActivityKeys = allActivityKeysRef.current;
150
+ setRawLastAcknowledgedActivityKey(allActivityKeys[allActivityKeys.length - 1]);
151
+ }, [allActivityKeysRef, setRawLastAcknowledgedActivityKey]);
152
+ var markActivityKeyAsRead = (0, _react.useCallback)(function (activityKey) {
153
+ var allActivityKeys = allActivityKeysRef.current;
154
+ var index = allActivityKeys.indexOf(activityKey);
155
+
156
+ if (!~index) {
157
+ return console.warn("botframework-webchat: Cannot mark activity with key ".concat(activityKey, " as read because it is not in the transcript."));
158
+ }
159
+
160
+ index > allActivityKeys.indexOf(lastReadActivityKeyRef.current) && setRawLastReadActivityKey(activityKey);
161
+ }, [allActivityKeysRef, lastReadActivityKeyRef, setRawLastReadActivityKey]);
162
+
163
+ if (activityKeysByReadState[0].length + activityKeysByReadState[1].length !== allActivityKeys.length) {
164
+ console.warn('botframework-webchat internal: Sum of count of read and unread activity keys MUST equals to total number of activity keys.');
165
+ }
166
+
167
+ var contextValue = (0, _react.useMemo)(function () {
168
+ return {
169
+ activityKeysByReadState: activityKeysByReadState,
170
+ getHasAcknowledgedByActivityKey: getHasAcknowledgedByActivityKey,
171
+ lastAcknowledgedActivityKeyState: Object.freeze([lastAcknowledgedActivityKey]),
172
+ lastReadActivityKeyState: Object.freeze([lastReadActivityKey]),
173
+ markActivityKeyAsRead: markActivityKeyAsRead,
174
+ markAllAsAcknowledged: markAllAsAcknowledged
175
+ };
176
+ }, [activityKeysByReadState, getHasAcknowledgedByActivityKey, lastAcknowledgedActivityKey, lastReadActivityKey, markActivityKeyAsRead, markAllAsAcknowledged]);
177
+ return /*#__PURE__*/_react.default.createElement(_Context.default.Provider, {
178
+ value: contextValue
179
+ }, children);
180
+ };
181
+
182
+ var _default = ActivityAcknowledgementComposer;
183
+ exports.default = _default;
184
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm92aWRlcnMvQWN0aXZpdHlBY2tub3dsZWRnZW1lbnQvQWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb21wb3Nlci50c3giXSwibmFtZXMiOlsiZmluZENsb3Nlc3RBY3Rpdml0eUtleUlmTm90RXhpc3RzIiwiYWN0aXZpdHlLZXkiLCJrZXlzIiwicHJldktleXMiLCJpbmNsdWRlcyIsInByZXZJbmRleCIsImluZGV4T2YiLCJhY2tub3dsZWRnZWRBY3Rpdml0eUtleXMiLCJzbGljZSIsInJldmVyc2UiLCJwcmV2QWNrbm93bGVkZ2VkQWN0aXZpdHlLZXkiLCJBY3Rpdml0eUFja25vd2xlZGdlbWVudENvbXBvc2VyIiwiY2hpbGRyZW4iLCJhY3Rpdml0aWVzIiwiYWxsQWN0aXZpdHlLZXlzIiwicmF3TGFzdEFja25vd2xlZGdlZEFjdGl2aXR5S2V5Iiwic2V0UmF3TGFzdEFja25vd2xlZGdlZEFjdGl2aXR5S2V5IiwicmF3TGFzdFJlYWRBY3Rpdml0eUtleSIsInNldFJhd0xhc3RSZWFkQWN0aXZpdHlLZXkiLCJhbGxBY3Rpdml0eUtleXNSZWYiLCJwcmV2QWxsQWN0aXZpdHlLZXlzIiwibGFzdE91dGdvaW5nQWN0aXZpdHlLZXlJbmRleCIsImFjdGl2aXR5IiwiZnJvbSIsInJvbGUiLCJsYXN0UmVhZEFjdGl2aXR5S2V5IiwiY29uc29sZSIsIndhcm4iLCJsYXN0UmVhZEFjdGl2aXR5S2V5UmVmIiwibGFzdEFja25vd2xlZGdlZEFjdGl2aXR5S2V5IiwiTWF0aCIsIm1heCIsImxlbmd0aCIsImFjdGl2aXR5QWNrbm93bGVkZ2VtZW50cyIsIk1hcCIsImxhc3RBY2tub3dsZWRnZWRJbmRleCIsImxhc3RSZWFkSW5kZXgiLCJmb3JFYWNoIiwiaW5kZXgiLCJzZXQiLCJhY2tub3dsZWRnZWQiLCJyZWFkIiwiT2JqZWN0IiwiZnJlZXplIiwiYWN0aXZpdHlBY2tub3dsZWRnZW1lbnRzUmVmIiwiZ2V0SGFzQWNrbm93bGVkZ2VkQnlBY3Rpdml0eUtleSIsImN1cnJlbnQiLCJnZXQiLCJhY3Rpdml0eUtleXNCeVJlYWRTdGF0ZSIsIm1hcmtBbGxBc0Fja25vd2xlZGdlZCIsIm1hcmtBY3Rpdml0eUtleUFzUmVhZCIsImNvbnRleHRWYWx1ZSIsImxhc3RBY2tub3dsZWRnZWRBY3Rpdml0eUtleVN0YXRlIiwibGFzdFJlYWRBY3Rpdml0eUtleVN0YXRlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFJQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU1BLFNBQVNBLGlDQUFULENBQ0VDLFdBREYsRUFFRUMsSUFGRixFQUdFQyxRQUhGLEVBSXNCO0FBQ3BCLE1BQUlELElBQUksQ0FBQ0UsUUFBTCxDQUFjSCxXQUFkLENBQUosRUFBZ0M7QUFDOUIsV0FBT0EsV0FBUDtBQUNELEdBRkQsTUFFTyxJQUFJLENBQUNFLFFBQUQsSUFBYSxDQUFDRixXQUFsQixFQUErQjtBQUNwQztBQUNBO0FBQ0QsR0FObUIsQ0FRcEI7OztBQUNBLE1BQU1JLFNBQVMsR0FBR0YsUUFBUSxDQUFDRyxPQUFULENBQWlCTCxXQUFqQixDQUFsQjs7QUFFQSxNQUFJLENBQUNJLFNBQUwsRUFBZ0I7QUFDZDtBQUNBLFFBQU1FLHdCQUF3QixHQUFHSixRQUFRLENBQUNLLEtBQVQsQ0FBZSxDQUFmLEVBQWtCSCxTQUFsQixFQUE2QkksT0FBN0IsRUFBakM7O0FBRmMsK0NBSTRCRix3QkFKNUI7QUFBQTs7QUFBQTtBQUlkLDBEQUFvRTtBQUFBLFlBQXpERywyQkFBeUQ7O0FBQ2xFLFlBQUlSLElBQUksQ0FBQ0UsUUFBTCxDQUFjTSwyQkFBZCxDQUFKLEVBQWdEO0FBQzlDLGlCQUFPQSwyQkFBUDtBQUNEO0FBQ0Y7QUFSYTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBU2YsR0FwQm1CLENBc0JwQjs7QUFDRDs7QUFFRCxJQUFNQywrQkFBeUUsR0FBRyxTQUE1RUEsK0JBQTRFLE9BQWtCO0FBQUEsTUFBZkMsUUFBZSxRQUFmQSxR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QUEsR0FEbUIsRUFTbkIsQ0FDRUQsdUJBREYsRUFFRUgsK0JBRkYsRUFHRWhCLDJCQUhGLEVBSUVKLG1CQUpGLEVBS0V5QixxQkFMRixFQU1FRCxxQkFORixDQVRtQixDQUFyQjtBQW1CQSxzQkFDRSw2QkFBQyxnQkFBRCxDQUFnQyxRQUFoQztBQUF5QyxJQUFBLEtBQUssRUFBRUU7QUFBaEQsS0FBK0R2QyxRQUEvRCxDQURGO0FBR0QsQ0FySUQ7O2VBdUllRCwrQiIsInNvdXJjZVJvb3QiOiJjb21wb25lbnQ6Ly8vIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUNhbGxiYWNrLCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHR5cGUgeyBGQywgUHJvcHNXaXRoQ2hpbGRyZW4gfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCBBY3Rpdml0eUFja25vd2xlZGdlbWVudENvbnRleHQsIHsgQWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb250ZXh0VHlwZSB9IGZyb20gJy4vcHJpdmF0ZS9Db250ZXh0JztcbmltcG9ydCBmaW5kTGFzdEluZGV4IGZyb20gJy4uLy4uL3V0aWxzL2ZpbmRMYXN0SW5kZXgnO1xuaW1wb3J0IHVzZUFjdGl2aXRpZXMgZnJvbSAnLi4vLi4vaG9va3MvdXNlQWN0aXZpdGllcyc7XG5pbXBvcnQgdXNlQWN0aXZpdHlLZXlzIGZyb20gJy4uL0FjdGl2aXR5S2V5ZXIvdXNlQWN0aXZpdHlLZXlzJztcbmltcG9ydCB1c2VQcmV2aW91cyBmcm9tICcuLi8uLi9ob29rcy9pbnRlcm5hbC91c2VQcmV2aW91cyc7XG5pbXBvcnQgdXNlVmFsdWVSZWYgZnJvbSAnLi4vLi4vaG9va3MvaW50ZXJuYWwvdXNlVmFsdWVSZWYnO1xuXG5pbXBvcnQgdHlwZSB7IEFjdGl2aXR5QWNrbm93bGVkZ2VtZW50IH0gZnJvbSAnLi9wcml2YXRlL3R5cGVzJztcblxudHlwZSBBY3Rpdml0eUFja25vd2xlZGdlbWVudENvbXBvc2VyUHJvcHMgPSBQcm9wc1dpdGhDaGlsZHJlbjx7fT47XG5cbmZ1bmN0aW9uIGZpbmRDbG9zZXN0QWN0aXZpdHlLZXlJZk5vdEV4aXN0cyhcbiAgYWN0aXZpdHlLZXk6IHN0cmluZyxcbiAga2V5czogcmVhZG9ubHkgc3RyaW5nW10sXG4gIHByZXZLZXlzOiByZWFkb25seSBzdHJpbmdbXVxuKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgaWYgKGtleXMuaW5jbHVkZXMoYWN0aXZpdHlLZXkpKSB7XG4gICAgcmV0dXJuIGFjdGl2aXR5S2V5O1xuICB9IGVsc2UgaWYgKCFwcmV2S2V5cyB8fCAhYWN0aXZpdHlLZXkpIHtcbiAgICAvLyBJbml0aWFsbHksIHdoZW4gdGhlIHRyYW5zY3JpcHQgd2FzIGVtcHR5LCB0aGVyZSBzaG91bGQgYmUgbm90aGluZyByZWFkLlxuICAgIHJldHVybjtcbiAgfVxuXG4gIC8vIElmIHRoZSBsYXN0IGFjdGl2aXR5IGtleSBpcyBubyBsb25nZXIgaW4gdGhpcyBhY3Rpdml0aWVzIChzYXksIGRlbGV0ZWQpLCB3ZSB0cnkgdG8gZmluZCB0aGUgY2xvc2VzdCBvbmUuXG4gIGNvbnN0IHByZXZJbmRleCA9IHByZXZLZXlzLmluZGV4T2YoYWN0aXZpdHlLZXkpO1xuXG4gIGlmICh+cHJldkluZGV4KSB7XG4gICAgLy8gTGlzdCBvdXQgYWxsIHByZXZpb3VzbHkgYWN0aXZpdHkga2V5cywgZmluZCB0aGUgY2xvc2VzdCBvbmUgdGhhdCBpcyBpbiB0aGUgbmV3IHRyYW5zY3JpcHQuXG4gICAgY29uc3QgYWNrbm93bGVkZ2VkQWN0aXZpdHlLZXlzID0gcHJldktleXMuc2xpY2UoMCwgcHJldkluZGV4KS5yZXZlcnNlKCk7XG5cbiAgICBmb3IgKGNvbnN0IHByZXZBY2tub3dsZWRnZWRBY3Rpdml0eUtleSBvZiBhY2tub3dsZWRnZWRBY3Rpdml0eUtleXMpIHtcbiAgICAgIGlmIChrZXlzLmluY2x1ZGVzKHByZXZBY2tub3dsZWRnZWRBY3Rpdml0eUtleSkpIHtcbiAgICAgICAgcmV0dXJuIHByZXZBY2tub3dsZWRnZWRBY3Rpdml0eUtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiBub3RoaW5nIGlzIGZvdW5kLCByZXR1cm4gYHVuZGVmaW5lZGAuXG59XG5cbmNvbnN0IEFjdGl2aXR5QWNrbm93bGVkZ2VtZW50Q29tcG9zZXI6IEZDPEFjdGl2aXR5QWNrbm93bGVkZ2VtZW50Q29tcG9zZXJQcm9wcz4gPSAoeyBjaGlsZHJlbiB9KSA9PiB7XG4gIGNvbnN0IFthY3Rpdml0aWVzXSA9IHVzZUFjdGl2aXRpZXMoKTtcbiAgY29uc3QgW2FsbEFjdGl2aXR5S2V5c10gPSB1c2VBY3Rpdml0eUtleXMoKTtcbiAgY29uc3QgW3Jhd0xhc3RBY2tub3dsZWRnZWRBY3Rpdml0eUtleSwgc2V0UmF3TGFzdEFja25vd2xlZGdlZEFjdGl2aXR5S2V5XSA9IHVzZVN0YXRlPHN0cmluZyB8IHVuZGVmaW5lZD4oKTtcbiAgY29uc3QgW3Jhd0xhc3RSZWFkQWN0aXZpdHlLZXksIHNldFJhd0xhc3RSZWFkQWN0aXZpdHlLZXldID0gdXNlU3RhdGU8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuXG4gIGNvbnN0IGFsbEFjdGl2aXR5S2V5c1JlZiA9IHVzZVZhbHVlUmVmKGFsbEFjdGl2aXR5S2V5cyk7XG4gIGNvbnN0IHByZXZBbGxBY3Rpdml0eUtleXMgPSB1c2VQcmV2aW91cyhhbGxBY3Rpdml0eUtleXMpO1xuXG4gIGNvbnN0IGxhc3RPdXRnb2luZ0FjdGl2aXR5S2V5SW5kZXggPSB1c2VNZW1vKFxuICAgICgpID0+IGZpbmRMYXN0SW5kZXgoYWN0aXZpdGllcywgYWN0aXZpdHkgPT4gYWN0aXZpdHkuZnJvbT8ucm9sZSA9PT0gJ3VzZXInKSxcbiAgICBbYWN0aXZpdGllc11cbiAgKTtcblxuICAvLyBNYWtlIHN1cmUgd2hlbiB3ZSByZXR1cm4gXCJsYXN0UmVhZEFjdGl2aXR5S2V5XCIgZXhpc3RzIGluIHRoZSBjdXJyZW50IHRyYW5zY3JpcHQuXG4gIGNvbnN0IGxhc3RSZWFkQWN0aXZpdHlLZXkgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByYXdMYXN0UmVhZEFjdGl2aXR5S2V5ICYmXG4gICAgICAhfnByZXZBbGxBY3Rpdml0eUtleXMuaW5jbHVkZXMocmF3TGFzdFJlYWRBY3Rpdml0eUtleSkgJiZcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgYGJvdGZyYW1ld29yay13ZWJjaGF0IGludGVybmFsIGFzc2VydGlvbjogXCJyYXdMYXN0UmVhZEFjdGl2aXR5S2V5XCIgb2YgdmFsdWUgJHtyYXdMYXN0UmVhZEFjdGl2aXR5S2V5fSBzaG91bGQgYmUgaW4gdGhlIFwicHJldkFsbEFjdGl2aXR5S2V5c1wiIGFycmF5LmBcbiAgICAgICk7XG5cbiAgICByZXR1cm4gZmluZENsb3Nlc3RBY3Rpdml0eUtleUlmTm90RXhpc3RzKHJhd0xhc3RSZWFkQWN0aXZpdHlLZXksIGFsbEFjdGl2aXR5S2V5cywgcHJldkFsbEFjdGl2aXR5S2V5cyk7XG4gIH0sIFthbGxBY3Rpdml0eUtleXMsIHByZXZBbGxBY3Rpdml0eUtleXMsIHJhd0xhc3RSZWFkQWN0aXZpdHlLZXldKTtcblxuICBjb25zdCBsYXN0UmVhZEFjdGl2aXR5S2V5UmVmID0gdXNlVmFsdWVSZWYobGFzdFJlYWRBY3Rpdml0eUtleSk7XG5cbiAgLy8gTWFrZSBzdXJlIHdoZW4gd2UgcmV0dXJuIFwibGFzdEFja25vd2xlZGdlZEFjdGl2aXR5S2V5XCIgZXhpc3RzIGluIHRoZSBjdXJyZW50IHRyYW5zY3JpcHQuXG4gIGNvbnN0IGxhc3RBY2tub3dsZWRnZWRBY3Rpdml0eUtleSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIHJhd0xhc3RBY2tub3dsZWRnZWRBY3Rpdml0eUtleSAmJlxuICAgICAgIX5wcmV2QWxsQWN0aXZpdHlLZXlzLmluY2x1ZGVzKHJhd0xhc3RBY2tub3dsZWRnZWRBY3Rpdml0eUtleSkgJiZcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgYGJvdGZyYW1ld29yay13ZWJjaGF0IGludGVybmFsIGFzc2VydGlvbjogXCJyYXdMYXN0QWNrbm93bGVkZ2VkQWN0aXZpdHlLZXlcIiBvZiB2YWx1ZSAke3Jhd0xhc3RBY2tub3dsZWRnZWRBY3Rpdml0eUtleX0gc2hvdWxkIGJlIGluIHRoZSBcInByZXZBbGxBY3Rpdml0eUtleXNcIiBhcnJheS5gXG4gICAgICApO1xuXG4gICAgY29uc3QgbGFzdEFja25vd2xlZGdlZEFjdGl2aXR5S2V5ID0gZmluZENsb3Nlc3RBY3Rpdml0eUtleUlmTm90RXhpc3RzKFxuICAgICAgcmF3TGFzdEFja25vd2xlZGdlZEFjdGl2aXR5S2V5LFxuICAgICAgYWxsQWN0aXZpdHlLZXlzLFxuICAgICAgcHJldkFsbEFjdGl2aXR5S2V5c1xuICAgICk7XG5cbiAgICAvLyBUT0RPOiBbUDJdIFNpbmNlIERpcmVjdCBMaW5lIG1heSBzZW5kIGhpc3RvcnkgYW5kIGRvZXMgbm90IGhhdmUgcmVhZCByZWNlaXB0LlxuICAgIC8vICAgICAgICAgICAgVGh1cywgaWYgd2UgZG9uJ3QgYXNzdW1lIGV2ZXJ5dGhpbmcgaXMgYWNrbm93bGVkZ2VkIGluaXRpYWxseSwgd2hpbGUgZGlzcGxheWluZyB0aGUgaGlzdG9yeSxcbiAgICAvLyAgICAgICAgICAgIHRoZSB0cmFuc2NyaXB0IHdvdWxkIHNvb24gc3RvcCBzY3JvbGxpbmcuXG4gICAgLy8gICAgICAgICAgICBUaHVzLCBiZWZvcmUgdGhlIGZpcnN0IG91dGdvaW5nIGFjdGl2aXR5IGlzIGRldGVjdGVkLCB3ZSBuZWVkIHRvIGFzc3VtZSBldmVyeXRoaW5nIGlzIGFja25vd2xlZGdlZC5cbiAgICByZXR1cm4gKFxuICAgICAgYWxsQWN0aXZpdHlLZXlzW01hdGgubWF4KGFsbEFjdGl2aXR5S2V5cy5pbmRleE9mKGxhc3RBY2tub3dsZWRnZWRBY3Rpdml0eUtleSksIGxhc3RPdXRnb2luZ0FjdGl2aXR5S2V5SW5kZXgpXSB8fFxuICAgICAgYWxsQWN0aXZpdHlLZXlzW2FsbEFjdGl2aXR5S2V5cy5sZW5ndGggLSAxXVxuICAgICk7XG4gIH0sIFthbGxBY3Rpdml0eUtleXMsIGxhc3RPdXRnb2luZ0FjdGl2aXR5S2V5SW5kZXgsIHByZXZBbGxBY3Rpdml0eUtleXMsIHJhd0xhc3RBY2tub3dsZWRnZWRBY3Rpdml0eUtleV0pO1xuXG4gIGNvbnN0IGFjdGl2aXR5QWNrbm93bGVkZ2VtZW50cyA9IHVzZU1lbW88UmVhZG9ubHk8TWFwPHN0cmluZywgQWN0aXZpdHlBY2tub3dsZWRnZW1lbnQ+Pj4oKCkgPT4ge1xuICAgIGNvbnN0IGFjdGl2aXR5QWNrbm93bGVkZ2VtZW50cyA9IG5ldyBNYXA8c3RyaW5nLCBBY3Rpdml0eUFja25vd2xlZGdlbWVudD4oKTtcbiAgICBjb25zdCBsYXN0QWNrbm93bGVkZ2VkSW5kZXggPSBhbGxBY3Rpdml0eUtleXMuaW5kZXhPZihsYXN0QWNrbm93bGVkZ2VkQWN0aXZpdHlLZXkpO1xuICAgIGNvbnN0IGxhc3RSZWFkSW5kZXggPSBhbGxBY3Rpdml0eUtleXMuaW5kZXhPZihsYXN0UmVhZEFjdGl2aXR5S2V5KTtcblxuICAgIGFsbEFjdGl2aXR5S2V5cy5mb3JFYWNoKChhY3Rpdml0eUtleSwgaW5kZXgpID0+IHtcbiAgICAgIGFjdGl2aXR5QWNrbm93bGVkZ2VtZW50cy5zZXQoYWN0aXZpdHlLZXksIHtcbiAgICAgICAgYWNrbm93bGVkZ2VkOiBpbmRleCA8PSBsYXN0QWNrbm93bGVkZ2VkSW5kZXgsXG4gICAgICAgIHJlYWQ6IGluZGV4IDw9IGxhc3RSZWFkSW5kZXhcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIE9iamVjdC5mcmVlemUoYWN0aXZpdHlBY2tub3dsZWRnZW1lbnRzKTtcbiAgfSwgW2FsbEFjdGl2aXR5S2V5cywgbGFzdEFja25vd2xlZGdlZEFjdGl2aXR5S2V5LCBsYXN0UmVhZEFjdGl2aXR5S2V5XSk7XG5cbiAgY29uc3QgYWN0aXZpdHlBY2tub3dsZWRnZW1lbnRzUmVmID0gdXNlVmFsdWVSZWYoYWN0aXZpdHlBY2tub3dsZWRnZW1lbnRzKTtcblxuICBjb25zdCBnZXRIYXNBY2tub3dsZWRnZWRCeUFjdGl2aXR5S2V5ID0gdXNlQ2FsbGJhY2s8KGFjdGl2aXR5S2V5OiBzdHJpbmcpID0+IGJvb2xlYW4+KFxuICAgIChhY3Rpdml0eUtleTogc3RyaW5nKSA9PiBhY3Rpdml0eUFja25vd2xlZGdlbWVudHNSZWYuY3VycmVudC5nZXQoYWN0aXZpdHlLZXkpPy5hY2tub3dsZWRnZWQsXG4gICAgW2FjdGl2aXR5QWNrbm93bGVkZ2VtZW50c1JlZl1cbiAgKTtcblxuICAvLyBUT0RPOiBbUDJdIE1lbW9pemUgd2l0aCBgdXNlTWVtb1dpdGhQcmV2aW91c2AgZm9yIGJldHRlciBtZW1vaXphdGlvbiBvZiBhcnJheXMuXG4gIGNvbnN0IGFjdGl2aXR5S2V5c0J5UmVhZFN0YXRlID0gdXNlTWVtbzxyZWFkb25seSBbcmVhZG9ubHkgc3RyaW5nW10sIHJlYWRvbmx5IHN0cmluZ1tdXT4oKCkgPT4ge1xuICAgIGNvbnN0IGluZGV4ID0gYWxsQWN0aXZpdHlLZXlzLmluZGV4T2YobGFzdFJlYWRBY3Rpdml0eUtleSk7XG5cbiAgICByZXR1cm4gT2JqZWN0LmZyZWV6ZShbXG4gICAgICBPYmplY3QuZnJlZXplKGFsbEFjdGl2aXR5S2V5cy5zbGljZSgwLCBpbmRleCArIDEpKSxcbiAgICAgIE9iamVjdC5mcmVlemUoYWxsQWN0aXZpdHlLZXlzLnNsaWNlKGluZGV4ICsgMSkpXG4gICAgXSkgYXMgcmVhZG9ubHkgW3JlYWRvbmx5IHN0cmluZ1tdLCByZWFkb25seSBzdHJpbmdbXV07XG4gIH0sIFthbGxBY3Rpdml0eUtleXMsIGxhc3RSZWFkQWN0aXZpdHlLZXldKTtcblxuICBjb25zdCBtYXJrQWxsQXNBY2tub3dsZWRnZWQgPSB1c2VDYWxsYmFjaygoKTogdm9pZCA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50OiBhbGxBY3Rpdml0eUtleXMgfSA9IGFsbEFjdGl2aXR5S2V5c1JlZjtcblxuICAgIHNldFJhd0xhc3RBY2tub3dsZWRnZWRBY3Rpdml0eUtleShhbGxBY3Rpdml0eUtleXNbYWxsQWN0aXZpdHlLZXlzLmxlbmd0aCAtIDFdKTtcbiAgfSwgW2FsbEFjdGl2aXR5S2V5c1JlZiwgc2V0UmF3TGFzdEFja25vd2xlZGdlZEFjdGl2aXR5S2V5XSk7XG5cbiAgY29uc3QgbWFya0FjdGl2aXR5S2V5QXNSZWFkID0gdXNlQ2FsbGJhY2soXG4gICAgKGFjdGl2aXR5S2V5OiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgICAgIGNvbnN0IHsgY3VycmVudDogYWxsQWN0aXZpdHlLZXlzIH0gPSBhbGxBY3Rpdml0eUtleXNSZWY7XG4gICAgICBjb25zdCBpbmRleCA9IGFsbEFjdGl2aXR5S2V5cy5pbmRleE9mKGFjdGl2aXR5S2V5KTtcblxuICAgICAgaWYgKCF+aW5kZXgpIHtcbiAgICAgICAgcmV0dXJuIGNvbnNvbGUud2FybihcbiAgICAgICAgICBgYm90ZnJhbWV3b3JrLXdlYmNoYXQ6IENhbm5vdCBtYXJrIGFjdGl2aXR5IHdpdGgga2V5ICR7YWN0aXZpdHlLZXl9IGFzIHJlYWQgYmVjYXVzZSBpdCBpcyBub3QgaW4gdGhlIHRyYW5zY3JpcHQuYFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBpbmRleCA+IGFsbEFjdGl2aXR5S2V5cy5pbmRleE9mKGxhc3RSZWFkQWN0aXZpdHlLZXlSZWYuY3VycmVudCkgJiYgc2V0UmF3TGFzdFJlYWRBY3Rpdml0eUtleShhY3Rpdml0eUtleSk7XG4gICAgfSxcbiAgICBbYWxsQWN0aXZpdHlLZXlzUmVmLCBsYXN0UmVhZEFjdGl2aXR5S2V5UmVmLCBzZXRSYXdMYXN0UmVhZEFjdGl2aXR5S2V5XVxuICApO1xuXG4gIGlmIChhY3Rpdml0eUtleXNCeVJlYWRTdGF0ZVswXS5sZW5ndGggKyBhY3Rpdml0eUtleXNCeVJlYWRTdGF0ZVsxXS5sZW5ndGggIT09IGFsbEFjdGl2aXR5S2V5cy5sZW5ndGgpIHtcbiAgICBjb25zb2xlLndhcm4oXG4gICAgICAnYm90ZnJhbWV3b3JrLXdlYmNoYXQgaW50ZXJuYWw6IFN1bSBvZiBjb3VudCBvZiByZWFkIGFuZCB1bnJlYWQgYWN0aXZpdHkga2V5cyBNVVNUIGVxdWFscyB0byB0b3RhbCBudW1iZXIgb2YgYWN0aXZpdHkga2V5cy4nXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0IGNvbnRleHRWYWx1ZSA9IHVzZU1lbW88QWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb250ZXh0VHlwZT4oXG4gICAgKCkgPT4gKHtcbiAgICAgIGFjdGl2aXR5S2V5c0J5UmVhZFN0YXRlLFxuICAgICAgZ2V0SGFzQWNrbm93bGVkZ2VkQnlBY3Rpdml0eUtleSxcbiAgICAgIGxhc3RBY2tub3dsZWRnZWRBY3Rpdml0eUtleVN0YXRlOiBPYmplY3QuZnJlZXplKFtsYXN0QWNrbm93bGVkZ2VkQWN0aXZpdHlLZXldKSBhcyByZWFkb25seSBbc3RyaW5nXSxcbiAgICAgIGxhc3RSZWFkQWN0aXZpdHlLZXlTdGF0ZTogT2JqZWN0LmZyZWV6ZShbbGFzdFJlYWRBY3Rpdml0eUtleV0pIGFzIHJlYWRvbmx5IFtzdHJpbmddLFxuICAgICAgbWFya0FjdGl2aXR5S2V5QXNSZWFkLFxuICAgICAgbWFya0FsbEFzQWNrbm93bGVkZ2VkXG4gICAgfSksXG4gICAgW1xuICAgICAgYWN0aXZpdHlLZXlzQnlSZWFkU3RhdGUsXG4gICAgICBnZXRIYXNBY2tub3dsZWRnZWRCeUFjdGl2aXR5S2V5LFxuICAgICAgbGFzdEFja25vd2xlZGdlZEFjdGl2aXR5S2V5LFxuICAgICAgbGFzdFJlYWRBY3Rpdml0eUtleSxcbiAgICAgIG1hcmtBY3Rpdml0eUtleUFzUmVhZCxcbiAgICAgIG1hcmtBbGxBc0Fja25vd2xlZGdlZFxuICAgIF1cbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxBY3Rpdml0eUFja25vd2xlZGdlbWVudENvbnRleHQuUHJvdmlkZXIgdmFsdWU9e2NvbnRleHRWYWx1ZX0+e2NoaWxkcmVufTwvQWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb250ZXh0LlByb3ZpZGVyPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgQWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb21wb3NlcjtcbiJdfQ==
@@ -0,0 +1,13 @@
1
+ /// <reference types="react" />
2
+ declare type ActivityAcknowledgementContextType = {
3
+ activityKeysByReadState: readonly [readonly string[], readonly string[]];
4
+ getHasAcknowledgedByActivityKey: (activityKey: string) => boolean | undefined;
5
+ lastAcknowledgedActivityKeyState: readonly [string];
6
+ lastReadActivityKeyState: readonly [string];
7
+ markActivityKeyAsRead: (activityKey: string) => void;
8
+ markAllAsAcknowledged: () => void;
9
+ };
10
+ declare const ActivityAcknowledgementContext: import("react").Context<ActivityAcknowledgementContextType>;
11
+ export default ActivityAcknowledgementContext;
12
+ export type { ActivityAcknowledgementContextType };
13
+ //# sourceMappingURL=Context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../../src/providers/ActivityAcknowledgement/private/Context.ts"],"names":[],"mappings":";AAIA,aAAK,kCAAkC,GAAG;IACxC,uBAAuB,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;IACzE,+BAA+B,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,CAAC;IAC9E,gCAAgC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACpD,wBAAwB,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAC5C,qBAAqB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,qBAAqB,EAAE,MAAM,IAAI,CAAC;CACnC,CAAC;AAEF,QAAA,MAAM,8BAA8B,6DAA+D,CAAC;AAEpG,eAAe,8BAA8B,CAAC;AAE9C,YAAY,EAAE,kCAAkC,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 ActivityAcknowledgementContext = /*#__PURE__*/(0, _react.createContext)(undefined);
11
+ var _default = ActivityAcknowledgementContext;
12
+ exports.default = _default;
13
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvQWN0aXZpdHlBY2tub3dsZWRnZW1lbnQvcHJpdmF0ZS9Db250ZXh0LnRzIl0sIm5hbWVzIjpbIkFjdGl2aXR5QWNrbm93bGVkZ2VtZW50Q29udGV4dCIsInVuZGVmaW5lZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQWFBLElBQU1BLDhCQUE4QixnQkFBRywwQkFBa0RDLFNBQWxELENBQXZDO2VBRWVELDhCIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVDb250ZXh0IH0gZnJvbSAncmVhY3QnO1xuXG4vLyBUT0RPOiBbUDFdIEl0IHNlZW1zIGFja25vd2xlZGdlbWVudCBpcyBvbmx5IGZvciB0cmFuc2NyaXB0IHNjcm9sbGluZyBhbmQgbm90IHZlcnkgYmVuZWZpY2lhbCB0byBldmVyeW9uZS5cbi8vICAgICAgICAgICAgV2Ugc2hvdWxkIG1vdmUgYWNrbm93bGVkZ2VtZW50IGxvZ2ljIHRvIHRyYW5zY3JpcHQuXG50eXBlIEFjdGl2aXR5QWNrbm93bGVkZ2VtZW50Q29udGV4dFR5cGUgPSB7XG4gIGFjdGl2aXR5S2V5c0J5UmVhZFN0YXRlOiByZWFkb25seSBbcmVhZG9ubHkgc3RyaW5nW10sIHJlYWRvbmx5IHN0cmluZ1tdXTtcbiAgZ2V0SGFzQWNrbm93bGVkZ2VkQnlBY3Rpdml0eUtleTogKGFjdGl2aXR5S2V5OiBzdHJpbmcpID0+IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gIGxhc3RBY2tub3dsZWRnZWRBY3Rpdml0eUtleVN0YXRlOiByZWFkb25seSBbc3RyaW5nXTtcbiAgbGFzdFJlYWRBY3Rpdml0eUtleVN0YXRlOiByZWFkb25seSBbc3RyaW5nXTtcbiAgbWFya0FjdGl2aXR5S2V5QXNSZWFkOiAoYWN0aXZpdHlLZXk6IHN0cmluZykgPT4gdm9pZDtcbiAgbWFya0FsbEFzQWNrbm93bGVkZ2VkOiAoKSA9PiB2b2lkO1xufTtcblxuY29uc3QgQWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb250ZXh0ID0gY3JlYXRlQ29udGV4dDxBY3Rpdml0eUFja25vd2xlZGdlbWVudENvbnRleHRUeXBlPih1bmRlZmluZWQpO1xuXG5leHBvcnQgZGVmYXVsdCBBY3Rpdml0eUFja25vd2xlZGdlbWVudENvbnRleHQ7XG5cbmV4cG9ydCB0eXBlIHsgQWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb250ZXh0VHlwZSB9O1xuIl19
@@ -0,0 +1,6 @@
1
+ declare type ActivityAcknowledgement = {
2
+ get acknowledged(): boolean;
3
+ get read(): boolean;
4
+ };
5
+ export type { ActivityAcknowledgement };
6
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/providers/ActivityAcknowledgement/private/types.ts"],"names":[],"mappings":"AAAA,aAAK,uBAAuB,GAAG;IAC7B,IAAI,YAAY,IAAI,OAAO,CAAC;IAC5B,IAAI,IAAI,IAAI,OAAO,CAAC;CACrB,CAAC;AAEF,YAAY,EAAE,uBAAuB,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 { ActivityAcknowledgementContextType } from './Context';
2
+ export default function useActivityAcknowledgementContext(thrownOnUndefined?: boolean): ActivityAcknowledgementContextType;
3
+ //# sourceMappingURL=useContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useContext.d.ts","sourceRoot":"","sources":["../../../../src/providers/ActivityAcknowledgement/private/useContext.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,WAAW,CAAC;AAEpE,MAAM,CAAC,OAAO,UAAU,iCAAiC,CACvD,iBAAiB,UAAO,GACvB,kCAAkC,CAUpC"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useActivityAcknowledgementContext;
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 useActivityAcknowledgementContext() {
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 <ActivityAcknowledgementContext>.');
20
+ }
21
+
22
+ return contextValue;
23
+ }
24
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvQWN0aXZpdHlBY2tub3dsZWRnZW1lbnQvcHJpdmF0ZS91c2VDb250ZXh0LnRzIl0sIm5hbWVzIjpbInVzZUFjdGl2aXR5QWNrbm93bGVkZ2VtZW50Q29udGV4dCIsInRocm93bk9uVW5kZWZpbmVkIiwiY29udGV4dFZhbHVlIiwiQWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb250ZXh0IiwiRXJyb3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFFQTs7OztBQUllLFNBQVNBLGlDQUFULEdBRXVCO0FBQUEsTUFEcENDLGlCQUNvQyx1RUFEaEIsSUFDZ0I7QUFDcEMsTUFBTUMsWUFBWSxHQUFHLHVCQUFXQyxnQkFBWCxDQUFyQjs7QUFFQSxNQUFJRixpQkFBaUIsSUFBSSxDQUFDQyxZQUExQixFQUF3QztBQUN0QyxVQUFNLElBQUlFLEtBQUosQ0FDSixtR0FESSxDQUFOO0FBR0Q7O0FBRUQsU0FBT0YsWUFBUDtBQUNEIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VDb250ZXh0IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgQWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb250ZXh0IGZyb20gJy4vQ29udGV4dCc7XG5cbmltcG9ydCB0eXBlIHsgQWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb250ZXh0VHlwZSB9IGZyb20gJy4vQ29udGV4dCc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVzZUFjdGl2aXR5QWNrbm93bGVkZ2VtZW50Q29udGV4dChcbiAgdGhyb3duT25VbmRlZmluZWQgPSB0cnVlXG4pOiBBY3Rpdml0eUFja25vd2xlZGdlbWVudENvbnRleHRUeXBlIHtcbiAgY29uc3QgY29udGV4dFZhbHVlID0gdXNlQ29udGV4dChBY3Rpdml0eUFja25vd2xlZGdlbWVudENvbnRleHQpO1xuXG4gIGlmICh0aHJvd25PblVuZGVmaW5lZCAmJiAhY29udGV4dFZhbHVlKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgJ2JvdGZyYW1ld29yay13ZWJjaGF0IGludGVybmFsOiBUaGlzIGhvb2sgY2FuIG9ubHkgYmUgdXNlZCB1bmRlciA8QWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb250ZXh0Pi4nXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBjb250ZXh0VmFsdWU7XG59XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Returns an arrays of two list of activity keys: read and unread.
3
+ */
4
+ export default function useActivityKeysByRead(): readonly [readonly string[], readonly string[]];
5
+ //# sourceMappingURL=useActivityKeysByRead.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useActivityKeysByRead.d.ts","sourceRoot":"","sources":["../../../src/providers/ActivityAcknowledgement/useActivityKeysByRead.tsx"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB,IAAI,SAAS,CAAC,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,EAAE,CAAC,CAE/F"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useActivityKeysByRead;
7
+
8
+ var _useContext = _interopRequireDefault(require("./private/useContext"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ /**
13
+ * Returns an arrays of two list of activity keys: read and unread.
14
+ */
15
+ function useActivityKeysByRead() {
16
+ return (0, _useContext.default)().activityKeysByReadState;
17
+ }
18
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm92aWRlcnMvQWN0aXZpdHlBY2tub3dsZWRnZW1lbnQvdXNlQWN0aXZpdHlLZXlzQnlSZWFkLnRzeCJdLCJuYW1lcyI6WyJ1c2VBY3Rpdml0eUtleXNCeVJlYWQiLCJhY3Rpdml0eUtleXNCeVJlYWRTdGF0ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7O0FBRUE7QUFDQTtBQUNBO0FBQ2UsU0FBU0EscUJBQVQsR0FBa0Y7QUFDL0YsU0FBTywyQkFBb0NDLHVCQUEzQztBQUNEIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdXNlQWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb250ZXh0IGZyb20gJy4vcHJpdmF0ZS91c2VDb250ZXh0JztcblxuLyoqXG4gKiBSZXR1cm5zIGFuIGFycmF5cyBvZiB0d28gbGlzdCBvZiBhY3Rpdml0eSBrZXlzOiByZWFkIGFuZCB1bnJlYWQuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVzZUFjdGl2aXR5S2V5c0J5UmVhZCgpOiByZWFkb25seSBbcmVhZG9ubHkgc3RyaW5nW10sIHJlYWRvbmx5IHN0cmluZ1tdXSB7XG4gIHJldHVybiB1c2VBY3Rpdml0eUFja25vd2xlZGdlbWVudENvbnRleHQoKS5hY3Rpdml0eUtleXNCeVJlYWRTdGF0ZTtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export default function useGetHasAcknoweledgedByActivityKey(): (activityKey: string) => boolean | undefined;
2
+ //# sourceMappingURL=useGetHasAcknowledgedByActivityKey.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useGetHasAcknowledgedByActivityKey.d.ts","sourceRoot":"","sources":["../../../src/providers/ActivityAcknowledgement/useGetHasAcknowledgedByActivityKey.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,mCAAmC,IAAI,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,CAE1G"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useGetHasAcknoweledgedByActivityKey;
7
+
8
+ var _useContext = _interopRequireDefault(require("./private/useContext"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function useGetHasAcknoweledgedByActivityKey() {
13
+ return (0, _useContext.default)().getHasAcknowledgedByActivityKey;
14
+ }
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm92aWRlcnMvQWN0aXZpdHlBY2tub3dsZWRnZW1lbnQvdXNlR2V0SGFzQWNrbm93bGVkZ2VkQnlBY3Rpdml0eUtleS50cyJdLCJuYW1lcyI6WyJ1c2VHZXRIYXNBY2tub3dlbGVkZ2VkQnlBY3Rpdml0eUtleSIsImdldEhhc0Fja25vd2xlZGdlZEJ5QWN0aXZpdHlLZXkiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7OztBQUVlLFNBQVNBLG1DQUFULEdBQTZGO0FBQzFHLFNBQU8sMkJBQW9DQywrQkFBM0M7QUFDRCIsInNvdXJjZVJvb3QiOiJjb21wb25lbnQ6Ly8vIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHVzZUFjdGl2aXR5QWNrbm93bGVkZ2VtZW50Q29udGV4dCBmcm9tICcuL3ByaXZhdGUvdXNlQ29udGV4dCc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVzZUdldEhhc0Fja25vd2VsZWRnZWRCeUFjdGl2aXR5S2V5KCk6IChhY3Rpdml0eUtleTogc3RyaW5nKSA9PiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIHVzZUFjdGl2aXR5QWNrbm93bGVkZ2VtZW50Q29udGV4dCgpLmdldEhhc0Fja25vd2xlZGdlZEJ5QWN0aXZpdHlLZXk7XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export default function useLastAcknowledgedActivityKey(): readonly [string];
2
+ //# sourceMappingURL=useLastAcknowledgedActivityKey.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLastAcknowledgedActivityKey.d.ts","sourceRoot":"","sources":["../../../src/providers/ActivityAcknowledgement/useLastAcknowledgedActivityKey.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,8BAA8B,IAAI,SAAS,CAAC,MAAM,CAAC,CAE1E"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useLastAcknowledgedActivityKey;
7
+
8
+ var _useContext = _interopRequireDefault(require("./private/useContext"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function useLastAcknowledgedActivityKey() {
13
+ return (0, _useContext.default)().lastAcknowledgedActivityKeyState;
14
+ }
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm92aWRlcnMvQWN0aXZpdHlBY2tub3dsZWRnZW1lbnQvdXNlTGFzdEFja25vd2xlZGdlZEFjdGl2aXR5S2V5LnRzIl0sIm5hbWVzIjpbInVzZUxhc3RBY2tub3dsZWRnZWRBY3Rpdml0eUtleSIsImxhc3RBY2tub3dsZWRnZWRBY3Rpdml0eUtleVN0YXRlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7Ozs7QUFFZSxTQUFTQSw4QkFBVCxHQUE2RDtBQUMxRSxTQUFPLDJCQUFvQ0MsZ0NBQTNDO0FBQ0QiLCJzb3VyY2VSb290IjoiY29tcG9uZW50Oi8vLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB1c2VBY3Rpdml0eUFja25vd2xlZGdlbWVudENvbnRleHQgZnJvbSAnLi9wcml2YXRlL3VzZUNvbnRleHQnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1c2VMYXN0QWNrbm93bGVkZ2VkQWN0aXZpdHlLZXkoKTogcmVhZG9ubHkgW3N0cmluZ10ge1xuICByZXR1cm4gdXNlQWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb250ZXh0KCkubGFzdEFja25vd2xlZGdlZEFjdGl2aXR5S2V5U3RhdGU7XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export default function useLastReadActivityKey(): readonly [string];
2
+ //# sourceMappingURL=useLastReadActivityKey.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLastReadActivityKey.d.ts","sourceRoot":"","sources":["../../../src/providers/ActivityAcknowledgement/useLastReadActivityKey.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,sBAAsB,IAAI,SAAS,CAAC,MAAM,CAAC,CAElE"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useLastReadActivityKey;
7
+
8
+ var _useContext = _interopRequireDefault(require("./private/useContext"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function useLastReadActivityKey() {
13
+ return (0, _useContext.default)().lastReadActivityKeyState;
14
+ }
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm92aWRlcnMvQWN0aXZpdHlBY2tub3dsZWRnZW1lbnQvdXNlTGFzdFJlYWRBY3Rpdml0eUtleS50cyJdLCJuYW1lcyI6WyJ1c2VMYXN0UmVhZEFjdGl2aXR5S2V5IiwibGFzdFJlYWRBY3Rpdml0eUtleVN0YXRlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7Ozs7QUFFZSxTQUFTQSxzQkFBVCxHQUFxRDtBQUNsRSxTQUFPLDJCQUFvQ0Msd0JBQTNDO0FBQ0QiLCJzb3VyY2VSb290IjoiY29tcG9uZW50Oi8vLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB1c2VBY3Rpdml0eUFja25vd2xlZGdlbWVudENvbnRleHQgZnJvbSAnLi9wcml2YXRlL3VzZUNvbnRleHQnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1c2VMYXN0UmVhZEFjdGl2aXR5S2V5KCk6IHJlYWRvbmx5IFtzdHJpbmddIHtcbiAgcmV0dXJuIHVzZUFjdGl2aXR5QWNrbm93bGVkZ2VtZW50Q29udGV4dCgpLmxhc3RSZWFkQWN0aXZpdHlLZXlTdGF0ZTtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export default function useMarkActivityKeyAsRead(): (activityKey: string) => void;
2
+ //# sourceMappingURL=useMarkActivityKeyAsRead.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMarkActivityKeyAsRead.d.ts","sourceRoot":"","sources":["../../../src/providers/ActivityAcknowledgement/useMarkActivityKeyAsRead.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,wBAAwB,IAAI,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAEhF"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useMarkActivityKeyAsRead;
7
+
8
+ var _useContext = _interopRequireDefault(require("./private/useContext"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function useMarkActivityKeyAsRead() {
13
+ return (0, _useContext.default)().markActivityKeyAsRead;
14
+ }
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm92aWRlcnMvQWN0aXZpdHlBY2tub3dsZWRnZW1lbnQvdXNlTWFya0FjdGl2aXR5S2V5QXNSZWFkLnRzIl0sIm5hbWVzIjpbInVzZU1hcmtBY3Rpdml0eUtleUFzUmVhZCIsIm1hcmtBY3Rpdml0eUtleUFzUmVhZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7O0FBRWUsU0FBU0Esd0JBQVQsR0FBbUU7QUFDaEYsU0FBTywyQkFBb0NDLHFCQUEzQztBQUNEIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdXNlQWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb250ZXh0IGZyb20gJy4vcHJpdmF0ZS91c2VDb250ZXh0JztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlTWFya0FjdGl2aXR5S2V5QXNSZWFkKCk6IChhY3Rpdml0eUtleTogc3RyaW5nKSA9PiB2b2lkIHtcbiAgcmV0dXJuIHVzZUFjdGl2aXR5QWNrbm93bGVkZ2VtZW50Q29udGV4dCgpLm1hcmtBY3Rpdml0eUtleUFzUmVhZDtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export default function useMarkAllAsAcknowledged(): () => void;
2
+ //# sourceMappingURL=useMarkAllAsAcknowledged.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMarkAllAsAcknowledged.d.ts","sourceRoot":"","sources":["../../../src/providers/ActivityAcknowledgement/useMarkAllAsAcknowledged.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,wBAAwB,IAAI,MAAM,IAAI,CAE7D"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useMarkAllAsAcknowledged;
7
+
8
+ var _useContext = _interopRequireDefault(require("./private/useContext"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function useMarkAllAsAcknowledged() {
13
+ return (0, _useContext.default)().markAllAsAcknowledged;
14
+ }
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm92aWRlcnMvQWN0aXZpdHlBY2tub3dsZWRnZW1lbnQvdXNlTWFya0FsbEFzQWNrbm93bGVkZ2VkLnRzIl0sIm5hbWVzIjpbInVzZU1hcmtBbGxBc0Fja25vd2xlZGdlZCIsIm1hcmtBbGxBc0Fja25vd2xlZGdlZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7O0FBRWUsU0FBU0Esd0JBQVQsR0FBZ0Q7QUFDN0QsU0FBTywyQkFBb0NDLHFCQUEzQztBQUNEIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdXNlQWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb250ZXh0IGZyb20gJy4vcHJpdmF0ZS91c2VDb250ZXh0JztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlTWFya0FsbEFzQWNrbm93bGVkZ2VkKCk6ICgpID0+IHZvaWQge1xuICByZXR1cm4gdXNlQWN0aXZpdHlBY2tub3dsZWRnZW1lbnRDb250ZXh0KCkubWFya0FsbEFzQWNrbm93bGVkZ2VkO1xufVxuIl19
@@ -0,0 +1,18 @@
1
+ import type { FC } from 'react';
2
+ /**
3
+ * React context composer component to assign a perma-key to every activity.
4
+ * This will support both `useGetActivityByKey` and `useGetKeyByActivity` custom hooks.
5
+ *
6
+ * Today, `activity.id` is only guaranteed for activity from others.
7
+ * Not all activities sent by the local user has `activity.id`.
8
+ *
9
+ * To track outgoing activities, we added `activity.channelData.clientActivityId`.
10
+ *
11
+ * This component will create a local key, which can be used to track both
12
+ * incoming and outgoing activities in a consistent way.
13
+ *
14
+ * Local key are only persisted in memory. On refresh, they will be a new random key.
15
+ */
16
+ declare const ActivityKeyerComposer: FC<{}>;
17
+ export default ActivityKeyerComposer;
18
+ //# sourceMappingURL=ActivityKeyerComposer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActivityKeyerComposer.d.ts","sourceRoot":"","sources":["../../../src/providers/ActivityKeyer/ActivityKeyerComposer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAchC;;;;;;;;;;;;;GAaG;AACH,QAAA,MAAM,qBAAqB,EAAE,EAAE,CAAC,EAAE,CA4GjC,CAAC;AAUF,eAAe,qBAAqB,CAAC"}